Annotation of researchv9/ipc/src/mgrs/svcmgr/mgr.h, revision 1.1.1.1

1.1       root        1: #include <ipc.h>
                      2: #include <stdio.h>
                      3: #include <libc.h>
                      4: #include <regexp.h>
                      5: 
                      6: /*
                      7:  * table of user mappings
                      8:  * one per line in the mapping files
                      9:  */
                     10: 
                     11: typedef struct mapping{
                     12:        regexp *from;   /* originating machine */
                     13:        regexp *user;   /* originating user */
                     14:        regexp *serv;   /* service(s) requested */
                     15:        char *luser;    /* local user name to use */
                     16:        struct mapping *next;
                     17: } Mapping;
                     18: extern Mapping *newmap();
                     19: extern int freemap();
                     20: extern int addmap();
                     21: 
                     22: /*
                     23:  * action instances
                     24:  * a linked list of these exist for each service
                     25:  */
                     26: 
                     27: typedef struct action {
                     28:        int (*func)();  /* funciton to use for this action */
                     29:        char *arg;      /* arguments or NULL */
                     30:        int accept;     /* true if ipcaccept to be done by action */
                     31:        struct action *next;
                     32: } Action;
                     33: extern Action *newaction();
                     34: extern int freeaction();
                     35: 
                     36: /*
                     37:  * table of services
                     38:  * one per line in the file of services (hopefully)
                     39:  */
                     40: 
                     41: typedef struct service {
                     42:        char *name;     /* name of service (e.g. `uucp') */
                     43:        int listen;     /* fd for listening */
                     44:        Action *ap;     /* list of actions to perform */
                     45:        int accept;     /* true if ipcaccept to be done by the service */
                     46:        long lasttime;
                     47:        struct service *next;
                     48: } Service;
                     49: extern Service *newservice();
                     50: extern int freeservice();
                     51: extern int addservice();
                     52: 
                     53: /*
                     54:  * request returned by listen
                     55:  */
                     56: typedef struct {
                     57:        ipcinfo *i;     /* from the ipclisten */
                     58:        Service *s;     /* service requested */
                     59:        char *line;     /* password line from authentication */
                     60:        char *args;     /* args gotten by from getargs */
                     61:        char *term;     /* terminal type */
                     62:        int errfd;      /* standard error (if different from stdout) */
                     63: } Request;
                     64: extern Request *newrequest();
                     65: extern int freerequest();
                     66: 
                     67: extern regexp *nregcomp();
                     68: extern int logevent();
                     69: 
                     70: #define        ARB     150

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.