summaryrefslogtreecommitdiff
path: root/include/net-snmp/agent/instance.h
blob: 82f2edd16070f973cf990382aa526429f66f2d6d (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
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
/*
 * instance.h 
 */
#ifndef NETSNMP_INSTANCE_H
#define NETSNMP_INSTANCE_H

#ifdef __cplusplus
extern "C" {
#endif

/*
 * The instance helper is designed to simplify the task of adding simple
 * * instances to the mib tree.
 */

/*
 * GETNEXTs are auto-converted to a GET.
 * * non-valid GETs are dropped.
 * * The client can assume that if you're called for a GET, it shouldn't
 * * have to check the oid at all.  Just answer.
 */

int
netsnmp_register_instance(netsnmp_handler_registration * reginfo);

int            
netsnmp_register_read_only_instance(netsnmp_handler_registration *reginfo);

#define INSTANCE_HANDLER_NAME "instance"

netsnmp_mib_handler *netsnmp_get_instance_handler(void);

int
netsnmp_register_read_only_ulong_instance(const char * name,
                                          const oid * reg_oid,
                                          size_t reg_oid_len,
                                          u_long * it,
                                          Netsnmp_Node_Handler * subhandler);
int
netsnmp_register_ulong_instance(const char * name,
                                const oid * reg_oid,
                                size_t reg_oid_len,
                                u_long * it,
                                Netsnmp_Node_Handler * subhandler);
int
netsnmp_register_read_only_counter32_instance(const char *name,
                                              const oid * reg_oid,
                                              size_t reg_oid_len,
                                              u_long * it,
                                              Netsnmp_Node_Handler *subhandler);
int
netsnmp_register_read_only_long_instance(const char *name,
                                         const oid * reg_oid,
                                         size_t reg_oid_len,
                                         long *it,
                                         Netsnmp_Node_Handler * subhandler);
int
netsnmp_register_long_instance(const char *name,
                               const oid * reg_oid,
                               size_t reg_oid_len,
                               long *it,
                               Netsnmp_Node_Handler * subhandler);

int
netsnmp_register_read_only_int_instance(const char *name,
                                        const oid * reg_oid,
                                        size_t reg_oid_len, int *it,
                                        Netsnmp_Node_Handler * subhandler);

int
netsnmp_register_int_instance(const char *name,
                              const oid * reg_oid,
                              size_t reg_oid_len, int *it,
                              Netsnmp_Node_Handler * subhandler);

/* identical functions that register a in a particular context */
int
netsnmp_register_read_only_ulong_instance_context(const char *name,
                                                  const oid * reg_oid,
                                                  size_t reg_oid_len,
                                                  u_long * it,
                                                  Netsnmp_Node_Handler
                                                  * subhandler,
                                                  const char *contextName);
int
netsnmp_register_ulong_instance_context(const char *name,
                                        const oid * reg_oid,
                                        size_t reg_oid_len,
                                        u_long * it,
                                        Netsnmp_Node_Handler * subhandler,
                                        const char *contextName);
int
netsnmp_register_read_only_counter32_instance_context(const char *name,
                                                      const oid * reg_oid,
                                                      size_t reg_oid_len,
                                                      u_long * it,
                                                      Netsnmp_Node_Handler
                                                      * subhandler,
                                                      const char *contextName);
int
netsnmp_register_read_only_long_instance_context(const char *name,
                                                 const oid * reg_oid,
                                                 size_t reg_oid_len,
                                                 long *it,
                                                 Netsnmp_Node_Handler
                                                 * subhandler,
                                                 const char *contextName);
int
netsnmp_register_long_instance_context(const char *name,
                                       const oid * reg_oid,
                                       size_t reg_oid_len,
                                       long *it,
                                       Netsnmp_Node_Handler * subhandler,
                                       const char *contextName);

int
netsnmp_register_read_only_int_instance_context(const char *name,
                                                const oid * reg_oid,
                                                size_t reg_oid_len, int *it,
                                                Netsnmp_Node_Handler *
                                                subhandler,
                                                const char *contextName);

int
netsnmp_register_int_instance_context(const char *name,
                                      const oid * reg_oid,
                                      size_t reg_oid_len, int *it,
                                      Netsnmp_Node_Handler * subhandler,
                                      const char *contextName);

int
netsnmp_register_num_file_instance(const char *name,
                                   const oid * reg_oid, size_t reg_oid_len,
                                   const char *file_name, int asn_type, int mode,
                                   Netsnmp_Node_Handler * subhandler,
                                   const char *contextName);

Netsnmp_Node_Handler netsnmp_instance_helper_handler;
Netsnmp_Node_Handler netsnmp_instance_num_file_handler;

#ifdef __cplusplus
}
#endif

#endif /** NETSNMP_INSTANCE_H */