2 * util_funcs.h: utilitiy functions for extensible groups.
4 #ifndef _MIBGROUP_UTIL_FUNCS_H
5 #define _MIBGROUP_UTIL_FUNCS_H
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 *,
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 *);
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
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 *);
53 #endif /* _MIBGROUP_UTIL_FUNCS_H */