|
Packit |
fcad23 |
/*
|
|
Packit |
fcad23 |
* util_funcs.h: utilitiy functions for extensible groups.
|
|
Packit |
fcad23 |
*/
|
|
Packit |
fcad23 |
#ifndef _MIBGROUP_UTIL_FUNCS_H
|
|
Packit |
fcad23 |
#define _MIBGROUP_UTIL_FUNCS_H
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
config_require(util_funcs/header_generic)
|
|
Packit |
fcad23 |
config_require(util_funcs/header_simple_table)
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
#ifdef HAVE_SYS_TYPES_H
|
|
Packit |
fcad23 |
#include <sys/types.h>
|
|
Packit |
fcad23 |
#endif
|
|
Packit |
fcad23 |
#include "util_funcs/header_generic.h"
|
|
Packit |
fcad23 |
#include "util_funcs/header_simple_table.h"
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
#ifdef __cplusplus
|
|
Packit |
fcad23 |
extern "C" {
|
|
Packit |
fcad23 |
#endif
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
#include "struct.h"
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
typedef struct prefix_info
|
|
Packit |
fcad23 |
{
|
|
Packit |
fcad23 |
struct prefix_info *next_info;
|
|
Packit |
fcad23 |
unsigned long ipAddressPrefixOnLinkFlag;
|
|
Packit |
fcad23 |
unsigned long ipAddressPrefixAutonomousFlag;
|
|
Packit |
fcad23 |
char in6p[40];
|
|
Packit |
fcad23 |
}prefix_cbx;
|
|
Packit |
fcad23 |
#ifndef WIN32
|
|
Packit |
fcad23 |
typedef struct
|
|
Packit |
fcad23 |
{
|
|
Packit |
fcad23 |
prefix_cbx **list_head;
|
|
Packit |
fcad23 |
}netsnmp_prefix_listen_info;
|
|
Packit |
fcad23 |
#endif
|
|
Packit |
fcad23 |
int shell_command(struct extensible *);
|
|
Packit |
fcad23 |
int exec_command(struct extensible *);
|
|
Packit |
fcad23 |
struct extensible *get_exten_instance(struct extensible *, size_t);
|
|
Packit |
fcad23 |
int get_exec_output(struct extensible *);
|
|
Packit |
fcad23 |
#if defined(WIN32) && !defined(cygwin)
|
|
Packit |
fcad23 |
int get_exec_pipes(char *cmd, int *fdIn, int *fdOut, HANDLE *pid);
|
|
Packit |
fcad23 |
#else
|
|
Packit |
fcad23 |
int get_exec_pipes(char *cmd, int *fdIn, int *fdOut, pid_t *pid);
|
|
Packit |
fcad23 |
#endif
|
|
Packit |
fcad23 |
WriteMethod clear_cache;
|
|
Packit |
fcad23 |
void print_mib_oid(oid *, size_t);
|
|
Packit |
fcad23 |
void sprint_mib_oid(char *, const oid *, size_t);
|
|
Packit |
fcad23 |
int checkmib(struct variable *, oid *, size_t *, int, size_t *,
|
|
Packit |
fcad23 |
WriteMethod ** write_method, int);
|
|
Packit |
fcad23 |
char *find_field(char *, int);
|
|
Packit |
fcad23 |
int parse_miboid(const char *, oid *);
|
|
Packit |
fcad23 |
void string_append_int(char *, int);
|
|
Packit |
fcad23 |
void wait_on_exec(struct extensible *);
|
|
Packit |
fcad23 |
const char *make_tempfile(void);
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
prefix_cbx *net_snmp_create_prefix_info(unsigned long OnLinkFlag,
|
|
Packit |
fcad23 |
unsigned long AutonomousFlag,
|
|
Packit |
fcad23 |
char *in6ptr);
|
|
Packit |
fcad23 |
#ifndef WIN32
|
|
Packit |
fcad23 |
int net_snmp_find_prefix_info(prefix_cbx **head,
|
|
Packit |
fcad23 |
char *address,
|
|
Packit |
fcad23 |
prefix_cbx *node_to_find);
|
|
Packit |
fcad23 |
int net_snmp_update_prefix_info(prefix_cbx **head,
|
|
Packit |
fcad23 |
prefix_cbx *node_to_update);
|
|
Packit |
fcad23 |
int net_snmp_search_update_prefix_info(prefix_cbx **head,
|
|
Packit |
fcad23 |
prefix_cbx *node_to_use,
|
|
Packit |
fcad23 |
int functionality);
|
|
Packit |
fcad23 |
int net_snmp_delete_prefix_info(prefix_cbx **head,
|
|
Packit |
fcad23 |
char *address);
|
|
Packit |
fcad23 |
#endif
|
|
Packit |
fcad23 |
#define NIP6(addr) \
|
|
Packit |
fcad23 |
ntohs((addr).s6_addr16[0]), \
|
|
Packit |
fcad23 |
ntohs((addr).s6_addr16[1]), \
|
|
Packit |
fcad23 |
ntohs((addr).s6_addr16[2]), \
|
|
Packit |
fcad23 |
ntohs((addr).s6_addr16[3]), \
|
|
Packit |
fcad23 |
ntohs((addr).s6_addr16[4]), \
|
|
Packit |
fcad23 |
ntohs((addr).s6_addr16[5]), \
|
|
Packit |
fcad23 |
ntohs((addr).s6_addr16[6]), \
|
|
Packit |
fcad23 |
ntohs((addr).s6_addr16[7])
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
#define satosin(x) ((struct sockaddr_in *) &(x))
|
|
Packit |
fcad23 |
#define SOCKADDR(x) (satosin(x)->sin_addr.s_addr)
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
#include "util_funcs/MIB_STATS_CACHE_TIMEOUT.h"
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
typedef void *mib_table_t;
|
|
Packit |
fcad23 |
typedef int (RELOAD) (mib_table_t);
|
|
Packit |
fcad23 |
typedef int (COMPARE) (const void *, const void *);
|
|
Packit |
fcad23 |
mib_table_t Initialise_Table(int, int, RELOAD*, COMPARE*);
|
|
Packit |
fcad23 |
int Search_Table(mib_table_t, void *, int);
|
|
Packit |
fcad23 |
int Add_Entry(mib_table_t, void *);
|
|
Packit |
fcad23 |
void *Retrieve_Table_Data(mib_table_t, int *);
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
#ifdef __cplusplus
|
|
Packit |
fcad23 |
}
|
|
Packit |
fcad23 |
#endif
|
|
Packit |
fcad23 |
|
|
Packit |
fcad23 |
#endif /* _MIBGROUP_UTIL_FUNCS_H */
|