rc

[fork] interactive rc shell
Log | Files | Refs | README | LICENSE

commit 3173fedfe4988d304bebf0e598384cab76fe94e9
parent 51620813cfe54910ece7d9d1164d0806c7fc513f
Author: tgoodwin <tgoodwin>
Date:   Wed,  8 Jul 1998 10:47:26 +0000

Initial revision

Diffstat:
Aaddon.c | 22++++++++++++++++++++++
Aaddon.h | 38++++++++++++++++++++++++++++++++++++++
2 files changed, 60 insertions(+), 0 deletions(-)

diff --git a/addon.c b/addon.c @@ -0,0 +1,22 @@ +/* + This file contains the implementations of any locally defined + builtins. +*/ + +#ifdef DWS + +/* + This is what DaviD Sanderson (dws@cs.wisc.edu) uses. +*/ + +#include <sys/types.h> +#include <sys/file.h> +#include <sys/stat.h> + +#include "rc.h" /* for bool TRUE, FALSE */ +#include "addon.h" + +#include "addon/access.c" +#include "addon/test.c" + +#endif diff --git a/addon.h b/addon.h @@ -0,0 +1,38 @@ +/* + This file is the interface to the rest of rc for any locally + defined addon builtins. By default there are none. + The interface consists of the following macro. + + ADDONS A comma-separated list of pairs of function pointers + and string literals. + + The addon functions must also have proper prototypes in this file. + The builtins all have the form: + + void b_NAME(char **av); + + Builtins report their exit status using set(TRUE) or set(FALSE). + + Example: + + #define ADDONS { b_test, "test" }, + extern void b_test(char **av); +*/ + +#define ADDONS /* no addons by default */ + +#ifdef DWS + +/* + This is what DaviD Sanderson (dws@cs.wisc.edu) uses. +*/ + +#undef ADDONS +#define ADDONS { b_access, "access" },\ + { b_test, "test" },\ + { b_test, "[" }, + +extern void b_access(char **av); +extern void b_test(char **av); + +#endif