added files
[bcm963xx.git] / userapps / opensource / net-snmp / agent / mibgroup / util_funcs.h
1 /*
2  *  util_funcs.h:  utilitiy functions for extensible groups.
3  */
4 #ifndef _MIBGROUP_UTIL_FUNCS_H
5 #define _MIBGROUP_UTIL_FUNCS_H
6
7 #ifdef __cplusplus
8 extern "C" {
9 #endif
10
11 #include "struct.h"
12
13 void            Exit(int);
14 int             shell_command(struct extensible *);
15 int             exec_command(struct extensible *);
16 int             get_exec_output(struct extensible *);
17 int             get_exec_pipes(char *cmd, int *fdIn, int *fdOut, int *pid);
18 WriteMethod     clear_cache;
19 RETSIGTYPE      restart_doit(int);
20 WriteMethod     restart_hook;
21 void            print_mib_oid(oid *, size_t);
22 void            sprint_mib_oid(char *, oid *, size_t);
23 int             header_simple_table(struct variable *, oid *, size_t *,
24                                     int, size_t *,
25                                     WriteMethod ** write_method, int);
26 int             header_generic(struct variable *, oid *, size_t *, int,
27                                size_t *, WriteMethod **);
28 int             checkmib(struct variable *, oid *, size_t *, int, size_t *,
29                          WriteMethod ** write_method, int);
30 char           *find_field(char *, int);
31 int             parse_miboid(const char *, oid *);
32 void            string_append_int(char *, int);
33 void            wait_on_exec(struct extensible *);
34
35 #define     satosin(x)      ((struct sockaddr_in *) &(x))
36 #define     SOCKADDR(x)     (satosin(x)->sin_addr.s_addr)
37 #ifndef MIB_STATS_CACHE_TIMEOUT
38 #define MIB_STATS_CACHE_TIMEOUT 5
39 #endif
40
41 typedef void   *mib_table_t;
42 typedef int     (RELOAD) (mib_table_t);
43 typedef int     (COMPARE) (const void *, const void *);
44 mib_table_t     Initialise_Table(int, int, RELOAD, COMPARE);
45 int             Search_Table(mib_table_t, void *, int);
46 int             Add_Entry(mib_table_t, void *);
47 void           *Retrieve_Table_Data(mib_table_t, int *);
48
49 #ifdef __cplusplus
50 };
51 #endif
52
53 #endif                          /* _MIBGROUP_UTIL_FUNCS_H */