summaryrefslogtreecommitdiff
path: root/src/commands.h
blob: 2c16c74cab0696682fefe7ac0d9d37825e6e6572 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
#ifndef    __COMMANDS_H
#define    __COMMANDS_H


#ifdef __cplusplus
extern "C" {
#endif

/*
   A structure which contains information on the commands
   this program can understand.
 */
typedef struct {
  char *name;     /* User printable name of the function. */
  rl_icpfunc_t *func; /* Function to call to do the job.      */
  char *doc;      /* Documentation for this function.     */
} COMMAND;

typedef struct {
  char *name;
  COMMAND *list;
} COMMAND_LIST;


extern COMMAND_LIST top;
extern COMMAND_LIST shell;
extern COMMAND_LIST users;

extern COMMAND_LIST *current;

extern void too_dangerous( char *caller );
extern int valid_argument( char *caller, char *arg );


extern int com_help( char *arg );
extern int com_quit( char *arg );

extern int com_shell( char *arg );
extern int com_users( char *arg );
extern int com_top( char *arg );


#ifdef __cplusplus
}
#endif

#endif  /* __COMMANDS_H */