| Server IP : 20.75.53.88 / Your IP : 216.73.217.72 [ Web Server : Apache System : Linux VMRALP-3 4.4.0-256-generic #290~14.04.1-Ubuntu SMP Thu Jun 20 09:24:50 UTC 2024 x86_64 User : www-data ( 33) PHP Version : 5.5.9-1ubuntu4.29+esm15 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority, Domains : 3 Domains MySQL : ON | cURL : OFF | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /usr/include/net-snmp/library/ |
Upload File : |
#ifndef NETSNMP_TEXT_UTILS_H
#define NETSNMP_TEXT_UTILS_H
#ifdef __cplusplus
extern "C" {
#endif
/*------------------------------------------------------------------
*
* text file processing
*
*/
netsnmp_container *
netsnmp_file_text_parse(netsnmp_file *f, netsnmp_container *cin,
int parse_mode, u_int flags, void *context);
#define PM_SAVE_EVERYTHING 1
#define PM_INDEX_STRING_STRING 2
#define PM_USER_FUNCTION 3
#define PM_FLAG_NO_CONTAINER 0x00000001
#define PM_FLAG_SKIP_WHITESPACE 0x00000002
/*
* line processing user function
*/
struct netsnmp_line_process_info_s; /* fwd decl */
typedef struct netsnmp_line_info_s {
size_t index;
char *line;
size_t line_len;
size_t line_max;
char *start;
size_t start_len;
} netsnmp_line_info;
typedef int (Netsnmp_Process_Text_Line)
(netsnmp_line_info *line_info, void *mem,
struct netsnmp_line_process_info_s* lpi);
typedef struct netsnmp_line_process_info_s {
size_t line_max; /* defaults to STRINGMAX if 0 */
size_t mem_size;
u_int flags;
Netsnmp_Process_Text_Line *process;
void *user_context;
} netsnmp_line_process_info;
/*
* user function return codes
*/
#define PMLP_RC_STOP_PROCESSING -1
#define PMLP_RC_MEMORY_USED 0
#define PMLP_RC_MEMORY_UNUSED 1
/** ALLOC_LINE: wasteful, but fast */
#define PMLP_FLAG_ALLOC_LINE 0x00000001
/** STRDUP_LINE: slower if you don't keep memory in most cases */
#define PMLP_FLAG_STRDUP_LINE 0x00000002
/** don't strip trailing newlines */
#define PMLP_FLAG_LEAVE_NEWLINE 0x00000004
/** don't skip blank or comment lines */
#define PMLP_FLAG_PROCESS_WHITESPACE 0x00000008
/** just process line, don't save it */
#define PMLP_FLAG_NO_CONTAINER 0x00000010
/*
* a few useful pre-defined helpers
*/
typedef struct netsnmp_token_value_index_s {
char *token;
netsnmp_cvalue value;
size_t index;
} netsnmp_token_value_index;
netsnmp_container *netsnmp_text_token_container_from_file(const char *file,
u_int flags,
netsnmp_container *c,
void *context);
/*
* flags
*/
#define NSTTC_FLAG_TYPE_CONTEXT_DIRECT 0x00000001
#define PMLP_TYPE_UNSIGNED 1
#define PMLP_TYPE_INTEGER 2
#define PMLP_TYPE_STRING 3
#define PMLP_TYPE_BOOLEAN 4
#ifdef __cplusplus
}
#endif
#endif /* NETSNMP_TEXT_UTILS_H */