Skip to main content

netsnmp_sys_nocrypto/
auto.rs

1use libc;
2use std::os::raw;
3
4extern "C" {
5    // manual additions - functions missing from public header files
6
7    /*
8     * Takes a session and a pdu and serializes the ASN PDU into the area
9     * pointed to by *pkt.  *pkt_len is the size of the data area available.
10     * Returns the length of the completed packet in *offset.  If any errors
11     * occur, -1 is returned.  If all goes well, 0 is returned.
12     */
13    pub fn snmp_build(pkt:     *mut *mut raw::c_uchar,
14                      pkt_len: *mut libc::size_t,
15                      offset:  *mut libc::size_t,
16                      pss:     *mut netsnmp_session,
17                      pdu:     *mut netsnmp_pdu)
18      -> raw::c_int;
19
20    pub fn snmp_create_sess_pdu(transport: *mut netsnmp_transport,
21                                opaque: *mut raw::c_void,
22                                olength: libc::size_t)
23      -> *mut netsnmp_pdu;
24}
25
26/* automatically generated by rust-bindgen and then gently massaged afterwards */
27
28pub type oid = raw::c_ulong;
29#[repr(C)]
30#[derive(Copy)]
31pub struct Union_netsnmp_vardata {
32    pub _bindgen_data_: [u64; 1usize],
33}
34impl Union_netsnmp_vardata {
35    pub unsafe fn integer(&mut self) -> *mut *mut raw::c_long {
36        let raw: *mut u8 = ::std::mem::transmute(&self._bindgen_data_);
37        ::std::mem::transmute(raw.offset(0))
38    }
39    pub unsafe fn string(&mut self) -> *mut *mut raw::c_uchar {
40        let raw: *mut u8 = ::std::mem::transmute(&self._bindgen_data_);
41        ::std::mem::transmute(raw.offset(0))
42    }
43    pub unsafe fn objid(&mut self) -> *mut *mut oid {
44        let raw: *mut u8 = ::std::mem::transmute(&self._bindgen_data_);
45        ::std::mem::transmute(raw.offset(0))
46    }
47    pub unsafe fn bitstring(&mut self) -> *mut *mut raw::c_uchar {
48        let raw: *mut u8 = ::std::mem::transmute(&self._bindgen_data_);
49        ::std::mem::transmute(raw.offset(0))
50    }
51    pub unsafe fn counter64(&mut self) -> *mut *mut Struct_counter64 {
52        let raw: *mut u8 = ::std::mem::transmute(&self._bindgen_data_);
53        ::std::mem::transmute(raw.offset(0))
54    }
55    pub unsafe fn floatVal(&mut self) -> *mut *mut raw::c_float {
56        let raw: *mut u8 = ::std::mem::transmute(&self._bindgen_data_);
57        ::std::mem::transmute(raw.offset(0))
58    }
59    pub unsafe fn doubleVal(&mut self) -> *mut *mut raw::c_double {
60        let raw: *mut u8 = ::std::mem::transmute(&self._bindgen_data_);
61        ::std::mem::transmute(raw.offset(0))
62    }
63}
64impl ::std::clone::Clone for Union_netsnmp_vardata {
65    fn clone(&self) -> Self { *self }
66}
67impl ::std::default::Default for Union_netsnmp_vardata {
68    fn default() -> Self { unsafe { ::std::mem::zeroed() } }
69}
70pub type netsnmp_vardata = Union_netsnmp_vardata;
71#[repr(C)]
72#[derive(Copy)]
73pub struct Struct_variable_list {
74    pub next_variable: *mut Struct_variable_list,
75    pub name: *mut oid,
76    pub name_length: libc::size_t,
77    pub _type: raw::c_uchar,
78    pub val: netsnmp_vardata,
79    pub val_len: libc::size_t,
80    pub name_loc: [oid; 128usize],
81    pub buf: [raw::c_uchar; 40usize],
82    pub data: *mut raw::c_void,
83    pub dataFreeHook: ::std::option::Option<unsafe extern "C" fn(arg1:
84                                                                     *mut raw::c_void)>,
85    pub index: raw::c_int,
86}
87impl ::std::clone::Clone for Struct_variable_list {
88    fn clone(&self) -> Self { *self }
89}
90impl ::std::default::Default for Struct_variable_list {
91    fn default() -> Self { unsafe { ::std::mem::zeroed() } }
92}
93pub type netsnmp_variable_list = Struct_variable_list;
94#[repr(C)]
95#[derive(Copy)]
96pub struct Struct_snmp_pdu {
97    pub version: raw::c_long,
98    pub command: raw::c_int,
99    pub reqid: raw::c_long,
100    pub msgid: raw::c_long,
101    pub transid: raw::c_long,
102    pub sessid: raw::c_long,
103    pub errstat: raw::c_long,
104    pub errindex: raw::c_long,
105    pub time: raw::c_ulong,
106    pub flags: raw::c_ulong,
107    pub securityModel: raw::c_int,
108    pub securityLevel: raw::c_int,
109    pub msgParseModel: raw::c_int,
110    pub transport_data: *mut raw::c_void,
111    pub transport_data_length: raw::c_int,
112    pub tDomain: *const oid,
113    pub tDomainLen: libc::size_t,
114    pub variables: *mut netsnmp_variable_list,
115    pub community: *mut raw::c_uchar,
116    pub community_len: libc::size_t,
117    pub enterprise: *mut oid,
118    pub enterprise_length: libc::size_t,
119    pub trap_type: raw::c_long,
120    pub specific_type: raw::c_long,
121    pub agent_addr: [raw::c_uchar; 4usize],
122    pub contextEngineID: *mut raw::c_uchar,
123    pub contextEngineIDLen: libc::size_t,
124    pub contextName: *mut raw::c_char,
125    pub contextNameLen: libc::size_t,
126    pub securityEngineID: *mut raw::c_uchar,
127    pub securityEngineIDLen: libc::size_t,
128    pub securityName: *mut raw::c_char,
129    pub securityNameLen: libc::size_t,
130    pub priority: raw::c_int,
131    pub range_subid: raw::c_int,
132    pub securityStateRef: *mut raw::c_void,
133}
134impl ::std::clone::Clone for Struct_snmp_pdu {
135    fn clone(&self) -> Self { *self }
136}
137impl ::std::default::Default for Struct_snmp_pdu {
138    fn default() -> Self { unsafe { ::std::mem::zeroed() } }
139}
140pub type netsnmp_pdu = Struct_snmp_pdu;
141pub type netsnmp_session = Struct_snmp_session;
142pub type snmp_callback =
143    ::std::option::Option<unsafe extern "C" fn(arg1: raw::c_int,
144                                               arg2: *mut netsnmp_session,
145                                               arg3: raw::c_int,
146                                               arg4: *mut netsnmp_pdu,
147                                               arg5:
148                                                   *mut raw::c_void)
149                              -> raw::c_int>;
150pub type netsnmp_callback =
151    ::std::option::Option<unsafe extern "C" fn(arg1: raw::c_int,
152                                               arg2: *mut netsnmp_session,
153                                               arg3: raw::c_int,
154                                               arg4: *mut netsnmp_pdu,
155                                               arg5:
156                                                   *mut raw::c_void)
157                              -> raw::c_int>;
158//pub enum Struct_netsnmp_container_s { }
159pub type netsnmp_container_mod_op =
160    unsafe extern "C" fn(arg1: *mut Struct_netsnmp_container_s,
161                         context: *mut raw::c_void, flags: raw::c_uint)
162        -> *mut Struct_netsnmp_container_s;
163pub type netsnmp_container_option =
164    unsafe extern "C" fn(arg1: *mut Struct_netsnmp_container_s,
165                         set: raw::c_int, flags: raw::c_uint)
166        -> raw::c_int;
167pub type netsnmp_container_rc =
168    unsafe extern "C" fn(arg1: *mut Struct_netsnmp_container_s)
169        -> raw::c_int;
170pub type netsnmp_container_it =
171    unsafe extern "C" fn(arg1: *mut Struct_netsnmp_container_s)
172        -> *mut Struct_netsnmp_iterator_s;
173pub type netsnmp_container_size =
174    unsafe extern "C" fn(arg1: *mut Struct_netsnmp_container_s)
175        -> raw::c_ulong;
176pub type netsnmp_container_op =
177    unsafe extern "C" fn(arg1: *mut Struct_netsnmp_container_s,
178                         data: *const raw::c_void)
179        -> raw::c_int;
180pub type netsnmp_container_rtn =
181    unsafe extern "C" fn(arg1: *mut Struct_netsnmp_container_s,
182                         data: *const raw::c_void)
183        -> *mut raw::c_void;
184pub type netsnmp_container_obj_func =
185    unsafe extern "C" fn(data: *mut raw::c_void,
186                         context: *mut raw::c_void);
187pub type netsnmp_container_func =
188    unsafe extern "C" fn(arg1: *mut Struct_netsnmp_container_s,
189                         arg2: *mut netsnmp_container_obj_func,
190                         context: *mut raw::c_void);
191pub type netsnmp_container_set =
192    unsafe extern "C" fn(arg1: *mut Struct_netsnmp_container_s,
193                         data: *mut raw::c_void)
194        -> *mut Struct_netsnmp_void_array_s;
195pub type netsnmp_container_compare =
196    unsafe extern "C" fn(lhs: *const raw::c_void,
197                         rhs: *const raw::c_void)
198        -> raw::c_int;
199
200#[repr(C)]
201#[derive(Copy)]
202pub struct Struct_netsnmp_container_s {
203    pub container_data: *mut raw::c_void,
204    pub get_size: *mut netsnmp_container_size,
205    pub init: *mut netsnmp_container_rc,
206    pub cfree: *mut netsnmp_container_rc,
207    pub insert: *mut netsnmp_container_op,
208    pub remove: *mut netsnmp_container_op,
209    pub release: *mut netsnmp_container_op,
210    pub free_item: *mut netsnmp_container_obj_func,
211    pub find: *mut netsnmp_container_rtn,
212    pub find_next: *mut netsnmp_container_rtn,
213    pub get_subset: *mut netsnmp_container_set,
214    pub get_iterator: *mut netsnmp_container_it,
215    pub for_each: *mut netsnmp_container_func,
216    pub clear: *mut netsnmp_container_func,
217    pub insert_filter: *mut netsnmp_container_op,
218    pub duplicate: *mut netsnmp_container_mod_op,
219    pub compare: *mut netsnmp_container_compare,
220    pub ncompare: *mut netsnmp_container_compare,
221    pub options: *mut netsnmp_container_option,
222    pub container_name: *mut raw::c_char,
223    pub sync: raw::c_ulong,
224    pub flags: raw::c_uint,
225    pub next: *mut Struct_netsnmp_container_s,
226    pub prev: *mut Struct_netsnmp_container_s,
227}
228impl ::std::clone::Clone for Struct_netsnmp_container_s {
229    fn clone(&self) -> Self { *self }
230}
231impl ::std::default::Default for Struct_netsnmp_container_s {
232    fn default() -> Self { unsafe { ::std::mem::zeroed() } }
233}
234pub type netsnmp_container = Struct_netsnmp_container_s;
235
236pub type netsnmp_iterator_rc =
237    unsafe extern "C" fn(arg1: *mut Struct_netsnmp_iterator_s)
238                         -> raw::c_int;
239pub type netsnmp_iterator_rtn =
240    unsafe extern "C" fn(arg1: *mut Struct_netsnmp_iterator_s)
241                         -> *mut raw::c_void;
242#[repr(C)]
243#[derive(Copy)]
244pub struct Struct_netsnmp_iterator_s {
245    pub container: *mut netsnmp_container,
246    pub sync: raw::c_ulong,
247    pub reset: *mut netsnmp_iterator_rc,
248    pub release: *mut netsnmp_iterator_rc,
249    pub first: *mut netsnmp_iterator_rtn,
250    pub curr: *mut netsnmp_iterator_rtn,
251    pub last: *mut netsnmp_iterator_rtn,
252    pub next: *mut netsnmp_iterator_rtn,
253    pub remove: *mut netsnmp_iterator_rc,
254}
255impl ::std::clone::Clone for Struct_netsnmp_iterator_s {
256    fn clone(&self) -> Self { *self }
257}
258impl ::std::default::Default for Struct_netsnmp_iterator_s {
259    fn default() -> Self { unsafe { ::std::mem::zeroed() } }
260}
261pub type netsnmp_iterator = Struct_netsnmp_iterator_s;
262
263
264#[repr(C)]
265#[derive(Copy)]
266pub struct Struct_snmp_session {
267    pub version: raw::c_long,
268    pub retries: raw::c_int,
269    pub timeout: raw::c_long,
270    pub flags: raw::c_ulong,
271    pub subsession: *mut Struct_snmp_session,
272    pub next: *mut Struct_snmp_session,
273    pub peername: *mut raw::c_char,
274    pub remote_port: raw::c_ushort,
275    pub localname: *mut raw::c_char,
276    pub local_port: raw::c_ushort,
277    pub authenticator: ::std::option::Option<unsafe extern "C" fn(arg1:
278                                                                      *mut raw::c_uchar,
279                                                                  arg2:
280                                                                      *mut libc::size_t,
281                                                                  arg3:
282                                                                      *mut raw::c_uchar,
283                                                                  arg4:
284                                                                      libc::size_t)
285                                                 -> *mut raw::c_uchar>,
286    pub callback: netsnmp_callback,
287    pub callback_magic: *mut raw::c_void,
288    pub s_errno: raw::c_int,
289    pub s_snmp_errno: raw::c_int,
290    pub sessid: raw::c_long,
291    pub community: *mut raw::c_uchar,
292    pub community_len: libc::size_t,
293    pub rcvMsgMaxSize: libc::size_t,
294    pub sndMsgMaxSize: libc::size_t,
295    pub isAuthoritative: raw::c_uchar,
296    pub contextEngineID: *mut raw::c_uchar,
297    pub contextEngineIDLen: libc::size_t,
298    pub engineBoots: raw::c_uint,
299    pub engineTime: raw::c_uint,
300    pub contextName: *mut raw::c_char,
301    pub contextNameLen: libc::size_t,
302    pub securityEngineID: *mut raw::c_uchar,
303    pub securityEngineIDLen: libc::size_t,
304    pub securityName: *mut raw::c_char,
305    pub securityNameLen: libc::size_t,
306    pub securityAuthProto: *mut oid,
307    pub securityAuthProtoLen: libc::size_t,
308    pub securityAuthKey: [raw::c_uchar; 32usize],
309    pub securityAuthKeyLen: libc::size_t,
310    pub securityAuthLocalKey: *mut raw::c_uchar,
311    pub securityAuthLocalKeyLen: libc::size_t,
312    pub securityPrivProto: *mut oid,
313    pub securityPrivProtoLen: libc::size_t,
314    pub securityPrivKey: [raw::c_uchar; 32usize],
315    pub securityPrivKeyLen: libc::size_t,
316    pub securityPrivLocalKey: *mut raw::c_uchar,
317    pub securityPrivLocalKeyLen: libc::size_t,
318    pub securityModel: raw::c_int,
319    pub securityLevel: raw::c_int,
320    pub paramName: *mut raw::c_char,
321    pub securityInfo: *mut raw::c_void,
322    pub transport_configuration: *mut Struct_netsnmp_container_s,
323    pub myvoid: *mut raw::c_void,
324}
325impl ::std::clone::Clone for Struct_snmp_session {
326    fn clone(&self) -> Self { *self }
327}
328impl ::std::default::Default for Struct_snmp_session {
329    fn default() -> Self { unsafe { ::std::mem::zeroed() } }
330}
331#[repr(C)]
332#[derive(Copy)]
333pub struct Struct_netsnmp_index_s {
334    pub len: libc::size_t,
335    pub oids: *mut oid,
336}
337impl ::std::clone::Clone for Struct_netsnmp_index_s {
338    fn clone(&self) -> Self { *self }
339}
340impl ::std::default::Default for Struct_netsnmp_index_s {
341    fn default() -> Self { unsafe { ::std::mem::zeroed() } }
342}
343pub type netsnmp_index = Struct_netsnmp_index_s;
344#[repr(C)]
345#[derive(Copy)]
346pub struct Struct_netsnmp_void_array_s {
347    pub size: libc::size_t,
348    pub array: *mut *mut raw::c_void,
349}
350impl ::std::clone::Clone for Struct_netsnmp_void_array_s {
351    fn clone(&self) -> Self { *self }
352}
353impl ::std::default::Default for Struct_netsnmp_void_array_s {
354    fn default() -> Self { unsafe { ::std::mem::zeroed() } }
355}
356pub type netsnmp_void_array = Struct_netsnmp_void_array_s;
357#[repr(C)]
358#[derive(Copy)]
359pub struct Struct_netsnmp_ref_void {
360    pub val: *mut raw::c_void,
361}
362impl ::std::clone::Clone for Struct_netsnmp_ref_void {
363    fn clone(&self) -> Self { *self }
364}
365impl ::std::default::Default for Struct_netsnmp_ref_void {
366    fn default() -> Self { unsafe { ::std::mem::zeroed() } }
367}
368pub type netsnmp_ref_void = Struct_netsnmp_ref_void;
369#[repr(C)]
370#[derive(Copy)]
371pub struct Union_netsnmp_cvalue {
372    pub _bindgen_data_: [u64; 1usize],
373}
374impl Union_netsnmp_cvalue {
375    pub unsafe fn ul(&mut self) -> *mut raw::c_ulong {
376        let raw: *mut u8 = ::std::mem::transmute(&self._bindgen_data_);
377        ::std::mem::transmute(raw.offset(0))
378    }
379    pub unsafe fn ui(&mut self) -> *mut raw::c_uint {
380        let raw: *mut u8 = ::std::mem::transmute(&self._bindgen_data_);
381        ::std::mem::transmute(raw.offset(0))
382    }
383    pub unsafe fn us(&mut self) -> *mut raw::c_ushort {
384        let raw: *mut u8 = ::std::mem::transmute(&self._bindgen_data_);
385        ::std::mem::transmute(raw.offset(0))
386    }
387    pub unsafe fn uc(&mut self) -> *mut raw::c_uchar {
388        let raw: *mut u8 = ::std::mem::transmute(&self._bindgen_data_);
389        ::std::mem::transmute(raw.offset(0))
390    }
391    pub unsafe fn sl(&mut self) -> *mut raw::c_long {
392        let raw: *mut u8 = ::std::mem::transmute(&self._bindgen_data_);
393        ::std::mem::transmute(raw.offset(0))
394    }
395    pub unsafe fn si(&mut self) -> *mut raw::c_int {
396        let raw: *mut u8 = ::std::mem::transmute(&self._bindgen_data_);
397        ::std::mem::transmute(raw.offset(0))
398    }
399    pub unsafe fn ss(&mut self) -> *mut raw::c_short {
400        let raw: *mut u8 = ::std::mem::transmute(&self._bindgen_data_);
401        ::std::mem::transmute(raw.offset(0))
402    }
403    pub unsafe fn sc(&mut self) -> *mut raw::c_char {
404        let raw: *mut u8 = ::std::mem::transmute(&self._bindgen_data_);
405        ::std::mem::transmute(raw.offset(0))
406    }
407    pub unsafe fn cp(&mut self) -> *mut *mut raw::c_char {
408        let raw: *mut u8 = ::std::mem::transmute(&self._bindgen_data_);
409        ::std::mem::transmute(raw.offset(0))
410    }
411    pub unsafe fn vp(&mut self) -> *mut *mut raw::c_void {
412        let raw: *mut u8 = ::std::mem::transmute(&self._bindgen_data_);
413        ::std::mem::transmute(raw.offset(0))
414    }
415}
416impl ::std::clone::Clone for Union_netsnmp_cvalue {
417    fn clone(&self) -> Self { *self }
418}
419impl ::std::default::Default for Union_netsnmp_cvalue {
420    fn default() -> Self { unsafe { ::std::mem::zeroed() } }
421}
422pub type netsnmp_cvalue = Union_netsnmp_cvalue;
423#[repr(C)]
424#[derive(Copy)]
425pub struct Struct_netsnmp_ref_size_t_s {
426    pub val: libc::size_t,
427}
428impl ::std::clone::Clone for Struct_netsnmp_ref_size_t_s {
429    fn clone(&self) -> Self { *self }
430}
431impl ::std::default::Default for Struct_netsnmp_ref_size_t_s {
432    fn default() -> Self { unsafe { ::std::mem::zeroed() } }
433}
434pub type netsnmp_ref_size_t = *mut Struct_netsnmp_ref_size_t_s;
435#[repr(C)]
436#[derive(Copy)]
437pub struct Struct_netsnmp_large_fd_set_s {
438    pub lfs_setsize: raw::c_uint,
439    pub lfs_setptr: *mut libc::fd_set,
440    pub lfs_set: libc::fd_set,
441}
442impl ::std::clone::Clone for Struct_netsnmp_large_fd_set_s {
443    fn clone(&self) -> Self { *self }
444}
445impl ::std::default::Default for Struct_netsnmp_large_fd_set_s {
446    fn default() -> Self { unsafe { ::std::mem::zeroed() } }
447}
448pub type netsnmp_large_fd_set = Struct_netsnmp_large_fd_set_s;
449#[repr(C)]
450#[derive(Copy)]
451pub struct Struct_counter64 {
452    pub high: raw::c_ulong,
453    pub low: raw::c_ulong,
454}
455impl ::std::clone::Clone for Struct_counter64 {
456    fn clone(&self) -> Self { *self }
457}
458impl ::std::default::Default for Struct_counter64 {
459    fn default() -> Self { unsafe { ::std::mem::zeroed() } }
460}
461pub type integer64 = Struct_counter64;
462pub type unsigned64 = Struct_counter64;
463#[repr(C)]
464#[derive(Copy)]
465pub struct Struct_netsnmp_token_descr_s {
466    pub token_name: *mut raw::c_char,
467    pub enabled: raw::c_char,
468}
469impl ::std::clone::Clone for Struct_netsnmp_token_descr_s {
470    fn clone(&self) -> Self { *self }
471}
472impl ::std::default::Default for Struct_netsnmp_token_descr_s {
473    fn default() -> Self { unsafe { ::std::mem::zeroed() } }
474}
475pub type netsnmp_token_descr = Struct_netsnmp_token_descr_s;
476#[repr(C)]
477#[derive(Copy)]
478pub struct Struct_snmp_log_message {
479    pub priority: raw::c_int,
480    pub msg: *const raw::c_char,
481}
482impl ::std::clone::Clone for Struct_snmp_log_message {
483    fn clone(&self) -> Self { *self }
484}
485impl ::std::default::Default for Struct_snmp_log_message {
486    fn default() -> Self { unsafe { ::std::mem::zeroed() } }
487}
488pub type netsnmp_log_handler = Struct_netsnmp_log_handler_s;
489pub type NetsnmpLogHandler =
490    unsafe extern "C" fn(arg1: *mut netsnmp_log_handler,
491                         arg2: raw::c_int,
492                         arg3: *const raw::c_char)
493        -> raw::c_int;
494#[repr(C)]
495#[derive(Copy)]
496pub struct Struct_netsnmp_log_handler_s {
497    pub enabled: raw::c_int,
498    pub priority: raw::c_int,
499    pub pri_max: raw::c_int,
500    pub _type: raw::c_int,
501    pub token: *const raw::c_char,
502    pub handler: *mut NetsnmpLogHandler,
503    pub imagic: raw::c_int,
504    pub magic: *mut raw::c_void,
505    pub next: *mut netsnmp_log_handler,
506    pub prev: *mut netsnmp_log_handler,
507}
508impl ::std::clone::Clone for Struct_netsnmp_log_handler_s {
509    fn clone(&self) -> Self { *self }
510}
511impl ::std::default::Default for Struct_netsnmp_log_handler_s {
512    fn default() -> Self { unsafe { ::std::mem::zeroed() } }
513}
514#[repr(C)]
515#[derive(Copy)]
516pub struct Struct_synch_state {
517    pub waiting: raw::c_int,
518    pub status: raw::c_int,
519    pub reqid: raw::c_int,
520    pub pdu: *mut netsnmp_pdu,
521}
522impl ::std::clone::Clone for Struct_synch_state {
523    fn clone(&self) -> Self { *self }
524}
525impl ::std::default::Default for Struct_synch_state {
526    fn default() -> Self { unsafe { ::std::mem::zeroed() } }
527}
528pub type netsnmp_state_machine_func =
529    unsafe extern "C" fn(input: *mut Struct_netsnmp_state_machine_input_s,
530                         step: *mut Struct_netsnmp_state_machine_step_s)
531        -> raw::c_int;
532#[repr(C)]
533#[derive(Copy)]
534pub struct Struct_netsnmp_state_machine_step_s {
535    pub name: *const raw::c_char,
536    pub sm_flags: raw::c_uint,
537    pub run: *mut netsnmp_state_machine_func,
538    pub result: raw::c_int,
539    pub on_success: *mut Struct_netsnmp_state_machine_step_s,
540    pub on_error: *mut Struct_netsnmp_state_machine_step_s,
541    pub flags: raw::c_uint,
542    pub step_context: *mut raw::c_void,
543}
544impl ::std::clone::Clone for Struct_netsnmp_state_machine_step_s {
545    fn clone(&self) -> Self { *self }
546}
547impl ::std::default::Default for Struct_netsnmp_state_machine_step_s {
548    fn default() -> Self { unsafe { ::std::mem::zeroed() } }
549}
550pub type netsnmp_state_machine_step = Struct_netsnmp_state_machine_step_s;
551#[repr(C)]
552#[derive(Copy)]
553pub struct Struct_netsnmp_state_machine_input_s {
554    pub name: *const raw::c_char,
555    pub steps_so_far: raw::c_int,
556    pub steps: *mut netsnmp_state_machine_step,
557    pub cleanup: *mut netsnmp_state_machine_step,
558    pub last_run: *mut netsnmp_state_machine_step,
559    pub input_context: *mut raw::c_void,
560}
561impl ::std::clone::Clone for Struct_netsnmp_state_machine_input_s {
562    fn clone(&self) -> Self { *self }
563}
564impl ::std::default::Default for Struct_netsnmp_state_machine_input_s {
565    fn default() -> Self { unsafe { ::std::mem::zeroed() } }
566}
567pub type netsnmp_state_machine_input = Struct_netsnmp_state_machine_input_s;
568#[repr(C)]
569#[derive(Copy)]
570pub struct Struct_enum_list {
571    pub next: *mut Struct_enum_list,
572    pub value: raw::c_int,
573    pub label: *mut raw::c_char,
574}
575impl ::std::clone::Clone for Struct_enum_list {
576    fn clone(&self) -> Self { *self }
577}
578impl ::std::default::Default for Struct_enum_list {
579    fn default() -> Self { unsafe { ::std::mem::zeroed() } }
580}
581#[repr(C)]
582#[derive(Copy)]
583pub struct Struct_range_list {
584    pub next: *mut Struct_range_list,
585    pub low: raw::c_int,
586    pub high: raw::c_int,
587}
588impl ::std::clone::Clone for Struct_range_list {
589    fn clone(&self) -> Self { *self }
590}
591impl ::std::default::Default for Struct_range_list {
592    fn default() -> Self { unsafe { ::std::mem::zeroed() } }
593}
594#[repr(C)]
595#[derive(Copy)]
596pub struct Struct_index_list {
597    pub next: *mut Struct_index_list,
598    pub ilabel: *mut raw::c_char,
599    pub isimplied: raw::c_char,
600}
601impl ::std::clone::Clone for Struct_index_list {
602    fn clone(&self) -> Self { *self }
603}
604impl ::std::default::Default for Struct_index_list {
605    fn default() -> Self { unsafe { ::std::mem::zeroed() } }
606}
607#[repr(C)]
608#[derive(Copy)]
609pub struct Struct_varbind_list {
610    pub next: *mut Struct_varbind_list,
611    pub vblabel: *mut raw::c_char,
612}
613impl ::std::clone::Clone for Struct_varbind_list {
614    fn clone(&self) -> Self { *self }
615}
616impl ::std::default::Default for Struct_varbind_list {
617    fn default() -> Self { unsafe { ::std::mem::zeroed() } }
618}
619#[repr(C)]
620#[derive(Copy)]
621pub struct Struct_tree {
622    pub child_list: *mut Struct_tree,
623    pub next_peer: *mut Struct_tree,
624    pub next: *mut Struct_tree,
625    pub parent: *mut Struct_tree,
626    pub label: *mut raw::c_char,
627    pub subid: raw::c_ulong,
628    pub modid: raw::c_int,
629    pub number_modules: raw::c_int,
630    pub module_list: *mut raw::c_int,
631    pub tc_index: raw::c_int,
632    pub _type: raw::c_int,
633    pub access: raw::c_int,
634    pub status: raw::c_int,
635    pub enums: *mut Struct_enum_list,
636    pub ranges: *mut Struct_range_list,
637    pub indexes: *mut Struct_index_list,
638    pub augments: *mut raw::c_char,
639    pub varbinds: *mut Struct_varbind_list,
640    pub hint: *mut raw::c_char,
641    pub units: *mut raw::c_char,
642    pub printomat: ::std::option::Option<unsafe extern "C" fn(arg1:
643                                                                  *mut *mut raw::c_uchar,
644                                                              arg2:
645                                                                  *mut libc::size_t,
646                                                              arg3:
647                                                                  *mut libc::size_t,
648                                                              arg4:
649                                                                  raw::c_int,
650                                                              arg5:
651                                                                  *const netsnmp_variable_list,
652                                                              arg6:
653                                                                  *const Struct_enum_list,
654                                                              arg7:
655                                                                  *const raw::c_char,
656                                                              arg8:
657                                                                  *const raw::c_char)
658                                             -> raw::c_int>,
659    pub printer: ::std::option::Option<unsafe extern "C" fn(arg1:
660                                                                *mut raw::c_char,
661                                                            arg2:
662                                                                *const netsnmp_variable_list,
663                                                            arg3:
664                                                                *const Struct_enum_list,
665                                                            arg4:
666                                                                *const raw::c_char,
667                                                            arg5:
668                                                                *const raw::c_char)>,
669    pub description: *mut raw::c_char,
670    pub reference: *mut raw::c_char,
671    pub reported: raw::c_int,
672    pub defaultValue: *mut raw::c_char,
673}
674impl ::std::clone::Clone for Struct_tree {
675    fn clone(&self) -> Self { *self }
676}
677impl ::std::default::Default for Struct_tree {
678    fn default() -> Self { unsafe { ::std::mem::zeroed() } }
679}
680#[repr(C)]
681#[derive(Copy)]
682pub struct Struct_module_import {
683    pub label: *mut raw::c_char,
684    pub modid: raw::c_int,
685}
686impl ::std::clone::Clone for Struct_module_import {
687    fn clone(&self) -> Self { *self }
688}
689impl ::std::default::Default for Struct_module_import {
690    fn default() -> Self { unsafe { ::std::mem::zeroed() } }
691}
692#[repr(C)]
693#[derive(Copy)]
694pub struct Struct_module {
695    pub name: *mut raw::c_char,
696    pub file: *mut raw::c_char,
697    pub imports: *mut Struct_module_import,
698    pub no_imports: raw::c_int,
699    pub modid: raw::c_int,
700    pub next: *mut Struct_module,
701}
702impl ::std::clone::Clone for Struct_module {
703    fn clone(&self) -> Self { *self }
704}
705impl ::std::default::Default for Struct_module {
706    fn default() -> Self { unsafe { ::std::mem::zeroed() } }
707}
708#[repr(C)]
709#[derive(Copy)]
710pub struct Struct_module_compatability {
711    pub old_module: *const raw::c_char,
712    pub new_module: *const raw::c_char,
713    pub tag: *const raw::c_char,
714    pub tag_len: libc::size_t,
715    pub next: *mut Struct_module_compatability,
716}
717impl ::std::clone::Clone for Struct_module_compatability {
718    fn clone(&self) -> Self { *self }
719}
720impl ::std::default::Default for Struct_module_compatability {
721    fn default() -> Self { unsafe { ::std::mem::zeroed() } }
722}
723pub type SNMPCallback =
724    unsafe extern "C" fn(majorID: raw::c_int,
725                         minorID: raw::c_int,
726                         serverarg: *mut raw::c_void,
727                         clientarg: *mut raw::c_void)
728        -> raw::c_int;
729#[repr(C)]
730#[derive(Copy)]
731pub struct Struct_snmp_gen_callback {
732    pub sc_callback: *mut SNMPCallback,
733    pub sc_client_arg: *mut raw::c_void,
734    pub priority: raw::c_int,
735    pub next: *mut Struct_snmp_gen_callback,
736}
737impl ::std::clone::Clone for Struct_snmp_gen_callback {
738    fn clone(&self) -> Self { *self }
739}
740impl ::std::default::Default for Struct_snmp_gen_callback {
741    fn default() -> Self { unsafe { ::std::mem::zeroed() } }
742}
743pub type NetSNMPStashDump =
744    unsafe extern "C" fn(arg1: *mut raw::c_char, arg2: libc::size_t,
745                         arg3: *mut raw::c_void,
746                         arg4: *mut Struct_netsnmp_oid_stash_node_s)
747        -> raw::c_int;
748pub type NetSNMPStashFreeNode =
749    unsafe extern "C" fn(arg1: *mut raw::c_void);
750#[repr(C)]
751#[derive(Copy)]
752pub struct Struct_netsnmp_oid_stash_node_s {
753    pub value: oid,
754    pub children: *mut *mut Struct_netsnmp_oid_stash_node_s,
755    pub children_size: libc::size_t,
756    pub next_sibling: *mut Struct_netsnmp_oid_stash_node_s,
757    pub prev_sibling: *mut Struct_netsnmp_oid_stash_node_s,
758    pub parent: *mut Struct_netsnmp_oid_stash_node_s,
759    pub thedata: *mut raw::c_void,
760}
761impl ::std::clone::Clone for Struct_netsnmp_oid_stash_node_s {
762    fn clone(&self) -> Self { *self }
763}
764impl ::std::default::Default for Struct_netsnmp_oid_stash_node_s {
765    fn default() -> Self { unsafe { ::std::mem::zeroed() } }
766}
767pub type netsnmp_oid_stash_node = Struct_netsnmp_oid_stash_node_s;
768#[repr(C)]
769#[derive(Copy)]
770pub struct Struct_netsnmp_oid_stash_save_info_s {
771    pub token: *const raw::c_char,
772    pub root: *mut *mut netsnmp_oid_stash_node,
773    pub dumpfn: *mut NetSNMPStashDump,
774}
775impl ::std::clone::Clone for Struct_netsnmp_oid_stash_save_info_s {
776    fn clone(&self) -> Self { *self }
777}
778impl ::std::default::Default for Struct_netsnmp_oid_stash_save_info_s {
779    fn default() -> Self { unsafe { ::std::mem::zeroed() } }
780}
781pub type netsnmp_oid_stash_save_info = Struct_netsnmp_oid_stash_save_info_s;
782#[repr(C)]
783#[derive(Copy)]
784pub struct Struct_netsnmp_addr_pair_s {
785    pub remote_addr: libc::sockaddr_in,
786    pub local_addr: libc::sockaddr_in,
787}
788impl ::std::clone::Clone for Struct_netsnmp_addr_pair_s {
789    fn clone(&self) -> Self { *self }
790}
791impl ::std::default::Default for Struct_netsnmp_addr_pair_s {
792    fn default() -> Self { unsafe { ::std::mem::zeroed() } }
793}
794pub type netsnmp_addr_pair = Struct_netsnmp_addr_pair_s;
795#[repr(C)]
796#[derive(Copy)]
797pub struct Struct_netsnmp_indexed_addr_pair_s {
798    pub remote_addr: libc::sockaddr_in,
799    pub local_addr: libc::sockaddr_in,
800    pub if_index: raw::c_int,
801}
802impl ::std::clone::Clone for Struct_netsnmp_indexed_addr_pair_s {
803    fn clone(&self) -> Self { *self }
804}
805impl ::std::default::Default for Struct_netsnmp_indexed_addr_pair_s {
806    fn default() -> Self { unsafe { ::std::mem::zeroed() } }
807}
808pub type netsnmp_indexed_addr_pair = Struct_netsnmp_indexed_addr_pair_s;
809#[repr(C)]
810#[derive(Copy)]
811pub struct Struct_netsnmp_tmStateReference_s {
812    pub transportDomain: [oid; 128usize],
813    pub transportDomainLen: libc::size_t,
814    pub securityName: [raw::c_char; 256usize],
815    pub securityNameLen: libc::size_t,
816    pub requestedSecurityLevel: raw::c_int,
817    pub transportSecurityLevel: raw::c_int,
818    pub sameSecurity: raw::c_char,
819    pub sessionID: [raw::c_char; 8usize],
820    pub have_addresses: raw::c_char,
821    pub addresses: netsnmp_indexed_addr_pair,
822    pub otherTransportOpaque: *mut raw::c_void,
823}
824impl ::std::clone::Clone for Struct_netsnmp_tmStateReference_s {
825    fn clone(&self) -> Self { *self }
826}
827impl ::std::default::Default for Struct_netsnmp_tmStateReference_s {
828    fn default() -> Self { unsafe { ::std::mem::zeroed() } }
829}
830pub type netsnmp_tmStateReference = Struct_netsnmp_tmStateReference_s;
831#[repr(C)]
832#[derive(Copy)]
833pub struct Struct_netsnmp_transport_s {
834    pub domain: *const oid,
835    pub domain_length: raw::c_int,
836    pub local: *mut raw::c_uchar,
837    pub local_length: raw::c_int,
838    pub remote: *mut raw::c_uchar,
839    pub remote_length: raw::c_int,
840    pub sock: raw::c_int,
841    pub flags: raw::c_uint,
842    pub data: *mut raw::c_void,
843    pub data_length: raw::c_int,
844    pub msgMaxSize: libc::size_t,
845    pub tmStateRef: *mut netsnmp_tmStateReference,
846    pub f_recv: ::std::option::Option<unsafe extern "C" fn(arg1:
847                                                               *mut Struct_netsnmp_transport_s,
848                                                           arg2:
849                                                               *mut raw::c_void,
850                                                           arg3:
851                                                               raw::c_int,
852                                                           arg4:
853                                                               *mut *mut raw::c_void,
854                                                           arg5:
855                                                               *mut raw::c_int)
856                                          -> raw::c_int>,
857    pub f_send: ::std::option::Option<unsafe extern "C" fn(arg1:
858                                                               *mut Struct_netsnmp_transport_s,
859                                                           arg2:
860                                                               *mut raw::c_void,
861                                                           arg3:
862                                                               raw::c_int,
863                                                           arg4:
864                                                               *mut *mut raw::c_void,
865                                                           arg5:
866                                                               *mut raw::c_int)
867                                          -> raw::c_int>,
868    pub f_close: ::std::option::Option<unsafe extern "C" fn(arg1:
869                                                                *mut Struct_netsnmp_transport_s)
870                                           -> raw::c_int>,
871    pub f_open: ::std::option::Option<unsafe extern "C" fn(arg1:
872                                                               *mut Struct_netsnmp_transport_s)
873                                          -> *mut Struct_netsnmp_transport_s>,
874    pub f_accept: ::std::option::Option<unsafe extern "C" fn(arg1:
875                                                                 *mut Struct_netsnmp_transport_s)
876                                            -> raw::c_int>,
877    pub f_fmtaddr: ::std::option::Option<unsafe extern "C" fn(arg1:
878                                                                  *mut Struct_netsnmp_transport_s,
879                                                              arg2:
880                                                                  *mut raw::c_void,
881                                                              arg3:
882                                                                  raw::c_int)
883                                             -> *mut raw::c_char>,
884    pub f_config: ::std::option::Option<unsafe extern "C" fn(arg1:
885                                                                 *mut Struct_netsnmp_transport_s,
886                                                             arg2:
887                                                                 *const raw::c_char,
888                                                             arg3:
889                                                                 *const raw::c_char)
890                                            -> raw::c_int>,
891    pub f_copy: ::std::option::Option<unsafe extern "C" fn(arg1:
892                                                               *mut Struct_netsnmp_transport_s,
893                                                           arg2:
894                                                               *mut Struct_netsnmp_transport_s)
895                                          -> raw::c_int>,
896    pub f_setup_session: ::std::option::Option<unsafe extern "C" fn(arg1:
897                                                                        *mut Struct_netsnmp_transport_s,
898                                                                    arg2:
899                                                                        *mut Struct_snmp_session)
900                                                   -> raw::c_int>,
901    pub identifier: *mut raw::c_uchar,
902}
903impl ::std::clone::Clone for Struct_netsnmp_transport_s {
904    fn clone(&self) -> Self { *self }
905}
906impl ::std::default::Default for Struct_netsnmp_transport_s {
907    fn default() -> Self { unsafe { ::std::mem::zeroed() } }
908}
909pub type netsnmp_transport = Struct_netsnmp_transport_s;
910#[repr(C)]
911#[derive(Copy)]
912pub struct Struct_netsnmp_transport_list_s {
913    pub transport: *mut netsnmp_transport,
914    pub next: *mut Struct_netsnmp_transport_list_s,
915}
916impl ::std::clone::Clone for Struct_netsnmp_transport_list_s {
917    fn clone(&self) -> Self { *self }
918}
919impl ::std::default::Default for Struct_netsnmp_transport_list_s {
920    fn default() -> Self { unsafe { ::std::mem::zeroed() } }
921}
922pub type netsnmp_transport_list = Struct_netsnmp_transport_list_s;
923#[repr(C)]
924#[derive(Copy)]
925pub struct Struct_netsnmp_tdomain_s {
926    pub name: *const oid,
927    pub name_length: libc::size_t,
928    pub prefix: *mut *const raw::c_char,
929    pub f_create_from_tstring: ::std::option::Option<unsafe extern "C" fn(arg1:
930                                                                              *const raw::c_char,
931                                                                          arg2:
932                                                                              raw::c_int)
933                                                         ->
934                                                             *mut netsnmp_transport>,
935    pub f_create_from_ostring: ::std::option::Option<unsafe extern "C" fn(arg1:
936                                                                              *const raw::c_uchar,
937                                                                          arg2:
938                                                                              libc::size_t,
939                                                                          arg3:
940                                                                              raw::c_int)
941                                                         ->
942                                                             *mut netsnmp_transport>,
943    pub next: *mut Struct_netsnmp_tdomain_s,
944    pub f_create_from_tstring_new: ::std::option::Option<unsafe extern "C" fn(arg1:
945                                                                                  *const raw::c_char,
946                                                                              arg2:
947                                                                                  raw::c_int,
948                                                                              arg3:
949                                                                                  *const raw::c_char)
950                                                             ->
951                                                                 *mut netsnmp_transport>,
952}
953impl ::std::clone::Clone for Struct_netsnmp_tdomain_s {
954    fn clone(&self) -> Self { *self }
955}
956impl ::std::default::Default for Struct_netsnmp_tdomain_s {
957    fn default() -> Self { unsafe { ::std::mem::zeroed() } }
958}
959pub type netsnmp_tdomain = Struct_netsnmp_tdomain_s;
960#[repr(C)]
961#[derive(Copy)]
962pub struct Struct_netsnmp_transport_config_s {
963    pub key: *mut raw::c_char,
964    pub value: *mut raw::c_char,
965}
966impl ::std::clone::Clone for Struct_netsnmp_transport_config_s {
967    fn clone(&self) -> Self { *self }
968}
969impl ::std::default::Default for Struct_netsnmp_transport_config_s {
970    fn default() -> Self { unsafe { ::std::mem::zeroed() } }
971}
972pub type netsnmp_transport_config = Struct_netsnmp_transport_config_s;
973#[repr(C)]
974#[derive(Copy)]
975pub struct Struct_netsnmp_callback_pass_s {
976    pub return_transport_num: raw::c_int,
977    pub pdu: *mut netsnmp_pdu,
978    pub next: *mut Struct_netsnmp_callback_pass_s,
979}
980impl ::std::clone::Clone for Struct_netsnmp_callback_pass_s {
981    fn clone(&self) -> Self { *self }
982}
983impl ::std::default::Default for Struct_netsnmp_callback_pass_s {
984    fn default() -> Self { unsafe { ::std::mem::zeroed() } }
985}
986pub type netsnmp_callback_pass = Struct_netsnmp_callback_pass_s;
987#[repr(C)]
988#[derive(Copy)]
989pub struct Struct_netsnmp_callback_info_s {
990    pub linkedto: raw::c_int,
991    pub parent_data: *mut raw::c_void,
992    pub data: *mut netsnmp_callback_pass,
993    pub callback_num: raw::c_int,
994    pub pipefds: [raw::c_int; 2usize],
995}
996impl ::std::clone::Clone for Struct_netsnmp_callback_info_s {
997    fn clone(&self) -> Self { *self }
998}
999impl ::std::default::Default for Struct_netsnmp_callback_info_s {
1000    fn default() -> Self { unsafe { ::std::mem::zeroed() } }
1001}
1002pub type netsnmp_callback_info = Struct_netsnmp_callback_info_s;
1003#[repr(C)]
1004#[derive(Copy)]
1005pub struct Struct_config_files {
1006    pub fileHeader: *mut raw::c_char,
1007    pub start: *mut Struct_config_line,
1008    pub next: *mut Struct_config_files,
1009}
1010impl ::std::clone::Clone for Struct_config_files {
1011    fn clone(&self) -> Self { *self }
1012}
1013impl ::std::default::Default for Struct_config_files {
1014    fn default() -> Self { unsafe { ::std::mem::zeroed() } }
1015}
1016#[repr(C)]
1017#[derive(Copy)]
1018pub struct Struct_config_line {
1019    pub config_token: *mut raw::c_char,
1020    pub parse_line: ::std::option::Option<unsafe extern "C" fn(arg1:
1021                                                                   *const raw::c_char,
1022                                                               arg2:
1023                                                                   *mut raw::c_char)>,
1024    pub free_func: ::std::option::Option<extern "C" fn()>,
1025    pub next: *mut Struct_config_line,
1026    pub config_time: raw::c_char,
1027    pub help: *mut raw::c_char,
1028}
1029impl ::std::clone::Clone for Struct_config_line {
1030    fn clone(&self) -> Self { *self }
1031}
1032impl ::std::default::Default for Struct_config_line {
1033    fn default() -> Self { unsafe { ::std::mem::zeroed() } }
1034}
1035#[repr(C)]
1036#[derive(Copy)]
1037pub struct Struct_read_config_memory {
1038    pub line: *mut raw::c_char,
1039    pub next: *mut Struct_read_config_memory,
1040}
1041impl ::std::clone::Clone for Struct_read_config_memory {
1042    fn clone(&self) -> Self { *self }
1043}
1044impl ::std::default::Default for Struct_read_config_memory {
1045    fn default() -> Self { unsafe { ::std::mem::zeroed() } }
1046}
1047#[repr(C)]
1048#[derive(Copy)]
1049pub struct Struct_snmp_enum_list {
1050    pub next: *mut Struct_snmp_enum_list,
1051    pub value: raw::c_int,
1052    pub label: *mut raw::c_char,
1053}
1054impl ::std::clone::Clone for Struct_snmp_enum_list {
1055    fn clone(&self) -> Self { *self }
1056}
1057impl ::std::default::Default for Struct_snmp_enum_list {
1058    fn default() -> Self { unsafe { ::std::mem::zeroed() } }
1059}
1060#[repr(C)]
1061#[derive(Copy)]
1062pub struct Struct_vacm_groupEntry {
1063    pub securityModel: raw::c_int,
1064    pub securityName: [raw::c_char; 34usize],
1065    pub groupName: [raw::c_char; 34usize],
1066    pub storageType: raw::c_int,
1067    pub status: raw::c_int,
1068    pub bitMask: raw::c_ulong,
1069    pub reserved: *mut Struct_vacm_groupEntry,
1070    pub next: *mut Struct_vacm_groupEntry,
1071}
1072impl ::std::clone::Clone for Struct_vacm_groupEntry {
1073    fn clone(&self) -> Self { *self }
1074}
1075impl ::std::default::Default for Struct_vacm_groupEntry {
1076    fn default() -> Self { unsafe { ::std::mem::zeroed() } }
1077}
1078#[repr(C)]
1079#[derive(Copy)]
1080pub struct Struct_vacm_accessEntry {
1081    pub groupName: [raw::c_char; 34usize],
1082    pub contextPrefix: [raw::c_char; 34usize],
1083    pub securityModel: raw::c_int,
1084    pub securityLevel: raw::c_int,
1085    pub contextMatch: raw::c_int,
1086    pub views: [[raw::c_char; 34usize]; 8usize],
1087    pub storageType: raw::c_int,
1088    pub status: raw::c_int,
1089    pub bitMask: raw::c_ulong,
1090    pub reserved: *mut Struct_vacm_accessEntry,
1091    pub next: *mut Struct_vacm_accessEntry,
1092}
1093impl ::std::clone::Clone for Struct_vacm_accessEntry {
1094    fn clone(&self) -> Self { *self }
1095}
1096impl ::std::default::Default for Struct_vacm_accessEntry {
1097    fn default() -> Self { unsafe { ::std::mem::zeroed() } }
1098}
1099#[repr(C)]
1100#[derive(Copy)]
1101pub struct Struct_vacm_viewEntry {
1102    pub viewName: [raw::c_char; 34usize],
1103    pub viewSubtree: [oid; 128usize],
1104    pub viewSubtreeLen: libc::size_t,
1105    pub viewMask: [raw::c_uchar; 34usize],
1106    pub viewMaskLen: libc::size_t,
1107    pub viewType: raw::c_int,
1108    pub viewStorageType: raw::c_int,
1109    pub viewStatus: raw::c_int,
1110    pub bitMask: raw::c_ulong,
1111    pub reserved: *mut Struct_vacm_viewEntry,
1112    pub next: *mut Struct_vacm_viewEntry,
1113}
1114impl ::std::clone::Clone for Struct_vacm_viewEntry {
1115    fn clone(&self) -> Self { *self }
1116}
1117impl ::std::default::Default for Struct_vacm_viewEntry {
1118    fn default() -> Self { unsafe { ::std::mem::zeroed() } }
1119}
1120pub enum Struct_vacm_securityEntry { }
1121#[repr(C)]
1122#[derive(Copy)]
1123pub struct Struct_enginetime_struct {
1124    pub engineID: *mut raw::c_uchar,
1125    pub engineID_len: raw::c_uint,
1126    pub engineTime: raw::c_uint,
1127    pub engineBoot: raw::c_uint,
1128    pub lastReceivedEngineTime: libc::time_t,
1129    pub authenticatedFlag: raw::c_uint,
1130    pub next: *mut Struct_enginetime_struct,
1131}
1132impl ::std::clone::Clone for Struct_enginetime_struct {
1133    fn clone(&self) -> Self { *self }
1134}
1135impl ::std::default::Default for Struct_enginetime_struct {
1136    fn default() -> Self { unsafe { ::std::mem::zeroed() } }
1137}
1138pub type enginetime = Struct_enginetime_struct;
1139pub type Enginetime = *mut Struct_enginetime_struct;
1140#[repr(C)]
1141#[derive(Copy)]
1142pub struct Struct_snmp_secmod_outgoing_params {
1143    pub msgProcModel: raw::c_int,
1144    pub globalData: *mut raw::c_uchar,
1145    pub globalDataLen: libc::size_t,
1146    pub maxMsgSize: raw::c_int,
1147    pub secModel: raw::c_int,
1148    pub secEngineID: *mut raw::c_uchar,
1149    pub secEngineIDLen: libc::size_t,
1150    pub secName: *mut raw::c_char,
1151    pub secNameLen: libc::size_t,
1152    pub secLevel: raw::c_int,
1153    pub scopedPdu: *mut raw::c_uchar,
1154    pub scopedPduLen: libc::size_t,
1155    pub secStateRef: *mut raw::c_void,
1156    pub secParams: *mut raw::c_uchar,
1157    pub secParamsLen: *mut libc::size_t,
1158    pub wholeMsg: *mut *mut raw::c_uchar,
1159    pub wholeMsgLen: *mut libc::size_t,
1160    pub wholeMsgOffset: *mut libc::size_t,
1161    pub pdu: *mut netsnmp_pdu,
1162    pub session: *mut netsnmp_session,
1163}
1164impl ::std::clone::Clone for Struct_snmp_secmod_outgoing_params {
1165    fn clone(&self) -> Self { *self }
1166}
1167impl ::std::default::Default for Struct_snmp_secmod_outgoing_params {
1168    fn default() -> Self { unsafe { ::std::mem::zeroed() } }
1169}
1170#[repr(C)]
1171#[derive(Copy)]
1172pub struct Struct_snmp_secmod_incoming_params {
1173    pub msgProcModel: raw::c_int,
1174    pub maxMsgSize: libc::size_t,
1175    pub secParams: *mut raw::c_uchar,
1176    pub secModel: raw::c_int,
1177    pub secLevel: raw::c_int,
1178    pub wholeMsg: *mut raw::c_uchar,
1179    pub wholeMsgLen: libc::size_t,
1180    pub secEngineID: *mut raw::c_uchar,
1181    pub secEngineIDLen: *mut libc::size_t,
1182    pub secName: *mut raw::c_char,
1183    pub secNameLen: *mut libc::size_t,
1184    pub scopedPdu: *mut *mut raw::c_uchar,
1185    pub scopedPduLen: *mut libc::size_t,
1186    pub maxSizeResponse: *mut libc::size_t,
1187    pub secStateRef: *mut *mut raw::c_void,
1188    pub sess: *mut netsnmp_session,
1189    pub pdu: *mut netsnmp_pdu,
1190    pub msg_flags: raw::c_uchar,
1191}
1192impl ::std::clone::Clone for Struct_snmp_secmod_incoming_params {
1193    fn clone(&self) -> Self { *self }
1194}
1195impl ::std::default::Default for Struct_snmp_secmod_incoming_params {
1196    fn default() -> Self { unsafe { ::std::mem::zeroed() } }
1197}
1198pub type SecmodSessionCallback =
1199    unsafe extern "C" fn(arg1: *mut netsnmp_session) -> raw::c_int;
1200pub type SecmodPduCallback =
1201    unsafe extern "C" fn(arg1: *mut netsnmp_pdu) -> raw::c_int;
1202pub type Secmod2PduCallback =
1203    unsafe extern "C" fn(arg1: *mut netsnmp_pdu, arg2: *mut netsnmp_pdu)
1204        -> raw::c_int;
1205pub type SecmodOutMsg =
1206    unsafe extern "C" fn(arg1: *mut Struct_snmp_secmod_outgoing_params)
1207        -> raw::c_int;
1208pub type SecmodInMsg =
1209    unsafe extern "C" fn(arg1: *mut Struct_snmp_secmod_incoming_params)
1210        -> raw::c_int;
1211pub type SecmodFreeState =
1212    unsafe extern "C" fn(arg1: *mut raw::c_void);
1213pub type SecmodHandleReport =
1214    unsafe extern "C" fn(sessp: *mut raw::c_void,
1215                         transport: *mut netsnmp_transport,
1216                         arg1: *mut netsnmp_session,
1217                         result: raw::c_int,
1218                         origpdu: *mut netsnmp_pdu);
1219pub type SecmodDiscoveryMethod =
1220    unsafe extern "C" fn(slp: *mut raw::c_void,
1221                         session: *mut netsnmp_session)
1222        -> raw::c_int;
1223pub type SecmodSessionSetup =
1224    unsafe extern "C" fn(in_session: *mut netsnmp_session,
1225                         out_session: *mut netsnmp_session)
1226        -> raw::c_int;
1227#[repr(C)]
1228#[derive(Copy)]
1229pub struct Struct_snmp_secmod_def {
1230    pub session_open: *mut SecmodSessionCallback,
1231    pub session_close: *mut SecmodSessionCallback,
1232    pub session_setup: *mut SecmodSessionSetup,
1233    pub pdu_free: *mut SecmodPduCallback,
1234    pub pdu_clone: *mut Secmod2PduCallback,
1235    pub pdu_timeout: *mut SecmodPduCallback,
1236    pub pdu_free_state_ref: *mut SecmodFreeState,
1237    pub encode_reverse: *mut SecmodOutMsg,
1238    pub encode_forward: *mut SecmodOutMsg,
1239    pub decode: *mut SecmodInMsg,
1240    pub handle_report: *mut SecmodHandleReport,
1241    pub probe_engineid: *mut SecmodDiscoveryMethod,
1242}
1243impl ::std::clone::Clone for Struct_snmp_secmod_def {
1244    fn clone(&self) -> Self { *self }
1245}
1246impl ::std::default::Default for Struct_snmp_secmod_def {
1247    fn default() -> Self { unsafe { ::std::mem::zeroed() } }
1248}
1249#[repr(C)]
1250#[derive(Copy)]
1251pub struct Struct_snmp_secmod_list {
1252    pub securityModel: raw::c_int,
1253    pub secDef: *mut Struct_snmp_secmod_def,
1254    pub next: *mut Struct_snmp_secmod_list,
1255}
1256impl ::std::clone::Clone for Struct_snmp_secmod_list {
1257    fn clone(&self) -> Self { *self }
1258}
1259impl ::std::default::Default for Struct_snmp_secmod_list {
1260    fn default() -> Self { unsafe { ::std::mem::zeroed() } }
1261}
1262#[repr(C)]
1263#[derive(Copy)]
1264pub struct Struct_usmStateReference {
1265    pub usr_name: *mut raw::c_char,
1266    pub usr_name_length: libc::size_t,
1267    pub usr_engine_id: *mut raw::c_uchar,
1268    pub usr_engine_id_length: libc::size_t,
1269    pub usr_auth_protocol: *mut oid,
1270    pub usr_auth_protocol_length: libc::size_t,
1271    pub usr_auth_key: *mut raw::c_uchar,
1272    pub usr_auth_key_length: libc::size_t,
1273    pub usr_priv_protocol: *mut oid,
1274    pub usr_priv_protocol_length: libc::size_t,
1275    pub usr_priv_key: *mut raw::c_uchar,
1276    pub usr_priv_key_length: libc::size_t,
1277    pub usr_sec_level: raw::c_uint,
1278}
1279impl ::std::clone::Clone for Struct_usmStateReference {
1280    fn clone(&self) -> Self { *self }
1281}
1282impl ::std::default::Default for Struct_usmStateReference {
1283    fn default() -> Self { unsafe { ::std::mem::zeroed() } }
1284}
1285#[repr(C)]
1286#[derive(Copy)]
1287pub struct Struct_usmUser {
1288    pub engineID: *mut raw::c_uchar,
1289    pub engineIDLen: libc::size_t,
1290    pub name: *mut raw::c_char,
1291    pub secName: *mut raw::c_char,
1292    pub cloneFrom: *mut oid,
1293    pub cloneFromLen: libc::size_t,
1294    pub authProtocol: *mut oid,
1295    pub authProtocolLen: libc::size_t,
1296    pub authKey: *mut raw::c_uchar,
1297    pub authKeyLen: libc::size_t,
1298    pub privProtocol: *mut oid,
1299    pub privProtocolLen: libc::size_t,
1300    pub privKey: *mut raw::c_uchar,
1301    pub privKeyLen: libc::size_t,
1302    pub userPublicString: *mut raw::c_uchar,
1303    pub userPublicStringLen: libc::size_t,
1304    pub userStatus: raw::c_int,
1305    pub userStorageType: raw::c_int,
1306    pub usmDHUserAuthKeyChange: *mut raw::c_void,
1307    pub usmDHUserPrivKeyChange: *mut raw::c_void,
1308    pub next: *mut Struct_usmUser,
1309    pub prev: *mut Struct_usmUser,
1310}
1311impl ::std::clone::Clone for Struct_usmUser {
1312    fn clone(&self) -> Self { *self }
1313}
1314impl ::std::default::Default for Struct_usmUser {
1315    fn default() -> Self { unsafe { ::std::mem::zeroed() } }
1316}
1317extern "C" {
1318    pub static mut debug_num_tokens: raw::c_int;
1319    pub static mut dbg_tokens: [netsnmp_token_descr; 256usize];
1320    pub static mut sid: *mut raw::c_uchar;
1321    pub static mut snmp_errno: raw::c_int;
1322    pub static mut netsnmpUDPDomain: *mut oid;
1323    pub static mut netsnmpCLNSDomain: *mut oid;
1324    pub static mut netsnmpCONSDomain: *mut oid;
1325    pub static mut netsnmpDDPDomain: *mut oid;
1326    pub static mut netsnmpIPXDomain: *mut oid;
1327    pub static mut netsnmpUDPDomain_len: libc::size_t;
1328    pub static mut netsnmpCLNSDomain_len: libc::size_t;
1329    pub static mut netsnmpCONSDomain_len: libc::size_t;
1330    pub static mut netsnmpDDPDomain_len: libc::size_t;
1331    pub static mut netsnmpIPXDomain_len: libc::size_t;
1332    pub static mut netsnmp_UnixDomain: *mut oid;
1333    pub static mut netsnmp_snmpTCPDomain: *mut oid;
1334    pub static mut netsnmp_UDPIPv6Domain: *mut oid;
1335    pub static mut netsnmp_TCPIPv6Domain: *mut oid;
1336    pub static mut usmNoAuthProtocol: [oid; 10usize];
1337    pub static mut usmHMACMD5AuthProtocol: [oid; 10usize];
1338    pub static mut usmHMACSHA1AuthProtocol: [oid; 10usize];
1339    pub static mut usmNoPrivProtocol: [oid; 10usize];
1340    pub static mut usmDESPrivProtocol: [oid; 10usize];
1341    pub static mut usmAESPrivProtocol: [oid; 10usize];
1342    pub static mut usmAES128PrivProtocol: *mut oid;
1343}
1344extern "C" {
1345    pub fn snmp_pdu_add_variable(pdu: *mut netsnmp_pdu, name: *const oid,
1346                                 name_length: libc::size_t, _type: raw::c_uchar,
1347                                 value: *const raw::c_void,
1348                                 len: libc::size_t) -> *mut netsnmp_variable_list;
1349    pub fn snmp_varlist_add_variable(varlist: *mut *mut netsnmp_variable_list,
1350                                     name: *const oid, name_length: libc::size_t,
1351                                     _type: raw::c_uchar,
1352                                     value: *const raw::c_void,
1353                                     len: libc::size_t)
1354     -> *mut netsnmp_variable_list;
1355    pub fn snmp_add_null_var(pdu: *mut netsnmp_pdu, name: *const oid,
1356                             name_length: libc::size_t)
1357     -> *mut netsnmp_variable_list;
1358    pub fn snmp_clone_varbind(varlist: *mut netsnmp_variable_list)
1359     -> *mut netsnmp_variable_list;
1360    pub fn snmp_set_var_objid(var: *mut netsnmp_variable_list,
1361                              name: *const oid, name_length: libc::size_t)
1362     -> raw::c_int;
1363    pub fn snmp_set_var_value(var: *mut netsnmp_variable_list,
1364                              value: *const raw::c_void,
1365                              len: libc::size_t) -> raw::c_int;
1366    pub fn snmp_set_var_typed_value(var: *mut netsnmp_variable_list,
1367                                    _type: raw::c_uchar,
1368                                    value: *const raw::c_void,
1369                                    len: libc::size_t) -> raw::c_int;
1370    pub fn snmp_set_var_typed_integer(var: *mut netsnmp_variable_list,
1371                                      _type: raw::c_uchar,
1372                                      val: raw::c_long)
1373     -> raw::c_int;
1374    pub fn print_variable(objid: *const oid, objidlen: libc::size_t,
1375                          variable: *const netsnmp_variable_list);
1376    pub fn fprint_variable(fp: *mut libc::FILE, objid: *const oid, objidlen: libc::size_t,
1377                           variable: *const netsnmp_variable_list);
1378    pub fn snprint_variable(buf: *mut raw::c_char, buf_len: libc::size_t,
1379                            objid: *const oid, objidlen: libc::size_t,
1380                            variable: *const netsnmp_variable_list)
1381     -> raw::c_int;
1382    pub fn print_value(objid: *const oid, objidlen: libc::size_t,
1383                       variable: *const netsnmp_variable_list);
1384    pub fn fprint_value(fp: *mut libc::FILE, objid: *const oid, objidlen: libc::size_t,
1385                        variable: *const netsnmp_variable_list);
1386    pub fn snprint_value(buf: *mut raw::c_char, buf_len: libc::size_t,
1387                         objid: *const oid, objidlen: libc::size_t,
1388                         variable: *const netsnmp_variable_list)
1389     -> raw::c_int;
1390    pub fn snmp_free_var(var: *mut netsnmp_variable_list);
1391    pub fn snmp_free_varbind(varlist: *mut netsnmp_variable_list);
1392    pub fn snmp_pdu_create(_type: raw::c_int) -> *mut netsnmp_pdu;
1393    pub fn snmp_clone_pdu(pdu: *mut netsnmp_pdu) -> *mut netsnmp_pdu;
1394    pub fn snmp_fix_pdu(pdu: *mut netsnmp_pdu, idx: raw::c_int)
1395     -> *mut netsnmp_pdu;
1396    pub fn snmp_free_pdu(pdu: *mut netsnmp_pdu);
1397    pub fn asn_check_packet(arg1: *mut raw::c_uchar, arg2: libc::size_t)
1398     -> raw::c_int;
1399    pub fn asn_parse_int(arg1: *mut raw::c_uchar, arg2: *mut libc::size_t,
1400                         arg3: *mut raw::c_uchar, arg4: *mut raw::c_long,
1401                         arg5: libc::size_t) -> *mut raw::c_uchar;
1402    pub fn asn_build_int(arg1: *mut raw::c_uchar, arg2: *mut libc::size_t, arg3: raw::c_uchar,
1403                         arg4: *const raw::c_long, arg5: libc::size_t)
1404     -> *mut raw::c_uchar;
1405    pub fn asn_parse_unsigned_int(arg1: *mut raw::c_uchar, arg2: *mut libc::size_t,
1406                                  arg3: *mut raw::c_uchar, arg4: *mut raw::c_ulong,
1407                                  arg5: libc::size_t) -> *mut raw::c_uchar;
1408    pub fn asn_build_unsigned_int(arg1: *mut raw::c_uchar, arg2: *mut libc::size_t,
1409                                  arg3: raw::c_uchar, arg4: *const raw::c_ulong,
1410                                  arg5: libc::size_t) -> *mut raw::c_uchar;
1411    pub fn asn_parse_string(arg1: *mut raw::c_uchar, arg2: *mut libc::size_t,
1412                            arg3: *mut raw::c_uchar, arg4: *mut raw::c_uchar,
1413                            arg5: *mut libc::size_t) -> *mut raw::c_uchar;
1414    pub fn asn_build_string(arg1: *mut raw::c_uchar, arg2: *mut libc::size_t,
1415                            arg3: raw::c_uchar, arg4: *const raw::c_uchar, arg5: libc::size_t)
1416     -> *mut raw::c_uchar;
1417    pub fn asn_parse_header(arg1: *mut raw::c_uchar, arg2: *mut libc::size_t,
1418                            arg3: *mut raw::c_uchar) -> *mut raw::c_uchar;
1419    pub fn asn_parse_sequence(arg1: *mut raw::c_uchar, arg2: *mut libc::size_t,
1420                              arg3: *mut raw::c_uchar, expected_type: raw::c_uchar,
1421                              estr: *const raw::c_char)
1422     -> *mut raw::c_uchar;
1423    pub fn asn_build_header(arg1: *mut raw::c_uchar, arg2: *mut libc::size_t,
1424                            arg3: raw::c_uchar, arg4: libc::size_t) -> *mut raw::c_uchar;
1425    pub fn asn_build_sequence(arg1: *mut raw::c_uchar, arg2: *mut libc::size_t,
1426                              arg3: raw::c_uchar, arg4: libc::size_t) -> *mut raw::c_uchar;
1427    pub fn asn_parse_length(arg1: *mut raw::c_uchar, arg2: *mut raw::c_ulong)
1428     -> *mut raw::c_uchar;
1429    pub fn asn_build_length(arg1: *mut raw::c_uchar, arg2: *mut libc::size_t,
1430                            arg3: libc::size_t) -> *mut raw::c_uchar;
1431    pub fn asn_parse_objid(arg1: *mut raw::c_uchar, arg2: *mut libc::size_t,
1432                           arg3: *mut raw::c_uchar, arg4: *mut oid,
1433                           arg5: *mut libc::size_t) -> *mut raw::c_uchar;
1434    pub fn asn_build_objid(arg1: *mut raw::c_uchar, arg2: *mut libc::size_t, arg3: raw::c_uchar,
1435                           arg4: *mut oid, arg5: libc::size_t) -> *mut raw::c_uchar;
1436    pub fn asn_parse_null(arg1: *mut raw::c_uchar, arg2: *mut libc::size_t,
1437                          arg3: *mut raw::c_uchar) -> *mut raw::c_uchar;
1438    pub fn asn_build_null(arg1: *mut raw::c_uchar, arg2: *mut libc::size_t, arg3: raw::c_uchar)
1439     -> *mut raw::c_uchar;
1440    pub fn asn_parse_bitstring(arg1: *mut raw::c_uchar, arg2: *mut libc::size_t,
1441                               arg3: *mut raw::c_uchar, arg4: *mut raw::c_uchar,
1442                               arg5: *mut libc::size_t) -> *mut raw::c_uchar;
1443    pub fn asn_build_bitstring(arg1: *mut raw::c_uchar, arg2: *mut libc::size_t,
1444                               arg3: raw::c_uchar, arg4: *const raw::c_uchar,
1445                               arg5: libc::size_t) -> *mut raw::c_uchar;
1446    pub fn asn_parse_unsigned_int64(arg1: *mut raw::c_uchar, arg2: *mut libc::size_t,
1447                                    arg3: *mut raw::c_uchar,
1448                                    arg4: *mut Struct_counter64, arg5: libc::size_t)
1449     -> *mut raw::c_uchar;
1450    pub fn asn_build_unsigned_int64(arg1: *mut raw::c_uchar, arg2: *mut libc::size_t,
1451                                    arg3: raw::c_uchar,
1452                                    arg4: *const Struct_counter64,
1453                                    arg5: libc::size_t) -> *mut raw::c_uchar;
1454    pub fn asn_parse_signed_int64(arg1: *mut raw::c_uchar, arg2: *mut libc::size_t,
1455                                  arg3: *mut raw::c_uchar,
1456                                  arg4: *mut Struct_counter64, arg5: libc::size_t)
1457     -> *mut raw::c_uchar;
1458    pub fn asn_build_signed_int64(arg1: *mut raw::c_uchar, arg2: *mut libc::size_t,
1459                                  arg3: raw::c_uchar, arg4: *const Struct_counter64,
1460                                  arg5: libc::size_t) -> *mut raw::c_uchar;
1461    pub fn asn_build_float(arg1: *mut raw::c_uchar, arg2: *mut libc::size_t, arg3: raw::c_uchar,
1462                           arg4: *const raw::c_float, arg5: libc::size_t)
1463     -> *mut raw::c_uchar;
1464    pub fn asn_parse_float(arg1: *mut raw::c_uchar, arg2: *mut libc::size_t,
1465                           arg3: *mut raw::c_uchar,
1466                           arg4: *mut raw::c_float, arg5: libc::size_t)
1467     -> *mut raw::c_uchar;
1468    pub fn asn_build_double(arg1: *mut raw::c_uchar, arg2: *mut libc::size_t,
1469                            arg3: raw::c_uchar,
1470                            arg4: *const raw::c_double,
1471                            arg5: libc::size_t) -> *mut raw::c_uchar;
1472    pub fn asn_parse_double(arg1: *mut raw::c_uchar, arg2: *mut libc::size_t,
1473                            arg3: *mut raw::c_uchar,
1474                            arg4: *mut raw::c_double, arg5: libc::size_t)
1475     -> *mut raw::c_uchar;
1476    pub fn asn_realloc(arg1: *mut *mut raw::c_uchar, arg2: *mut libc::size_t)
1477     -> raw::c_int;
1478    pub fn asn_realloc_rbuild_int(pkt: *mut *mut raw::c_uchar, pkt_len: *mut libc::size_t,
1479                                  offset: *mut libc::size_t,
1480                                  allow_realloc: raw::c_int,
1481                                  _type: raw::c_uchar,
1482                                  data: *const raw::c_long,
1483                                  data_size: libc::size_t) -> raw::c_int;
1484    pub fn asn_realloc_rbuild_string(pkt: *mut *mut raw::c_uchar,
1485                                     pkt_len: *mut libc::size_t,
1486                                     offset: *mut libc::size_t,
1487                                     allow_realloc: raw::c_int,
1488                                     _type: raw::c_uchar, data: *const raw::c_uchar,
1489                                     data_size: libc::size_t)
1490     -> raw::c_int;
1491    pub fn asn_realloc_rbuild_unsigned_int(pkt: *mut *mut raw::c_uchar,
1492                                           pkt_len: *mut libc::size_t,
1493                                           offset: *mut libc::size_t,
1494                                           allow_realloc:
1495                                               raw::c_int,
1496                                           _type: raw::c_uchar, data: *const raw::c_ulong,
1497                                           data_size: libc::size_t)
1498     -> raw::c_int;
1499    pub fn asn_realloc_rbuild_header(pkt: *mut *mut raw::c_uchar,
1500                                     pkt_len: *mut libc::size_t,
1501                                     offset: *mut libc::size_t,
1502                                     allow_realloc: raw::c_int,
1503                                     _type: raw::c_uchar, data_size: libc::size_t)
1504     -> raw::c_int;
1505    pub fn asn_realloc_rbuild_sequence(pkt: *mut *mut raw::c_uchar,
1506                                       pkt_len: *mut libc::size_t,
1507                                       offset: *mut libc::size_t,
1508                                       allow_realloc: raw::c_int,
1509                                       _type: raw::c_uchar, data_size: libc::size_t)
1510     -> raw::c_int;
1511    pub fn asn_realloc_rbuild_length(pkt: *mut *mut raw::c_uchar,
1512                                     pkt_len: *mut libc::size_t,
1513                                     offset: *mut libc::size_t,
1514                                     allow_realloc: raw::c_int,
1515                                     data_size: libc::size_t)
1516     -> raw::c_int;
1517    pub fn asn_realloc_rbuild_objid(pkt: *mut *mut raw::c_uchar,
1518                                    pkt_len: *mut libc::size_t, offset: *mut libc::size_t,
1519                                    allow_realloc: raw::c_int,
1520                                    _type: raw::c_uchar, arg1: *const oid,
1521                                    arg2: libc::size_t) -> raw::c_int;
1522    pub fn asn_realloc_rbuild_null(pkt: *mut *mut raw::c_uchar,
1523                                   pkt_len: *mut libc::size_t, offset: *mut libc::size_t,
1524                                   allow_realloc: raw::c_int,
1525                                   _type: raw::c_uchar) -> raw::c_int;
1526    pub fn asn_realloc_rbuild_bitstring(pkt: *mut *mut raw::c_uchar,
1527                                        pkt_len: *mut libc::size_t,
1528                                        offset: *mut libc::size_t,
1529                                        allow_realloc: raw::c_int,
1530                                        _type: raw::c_uchar, data: *const raw::c_uchar,
1531                                        data_size: libc::size_t)
1532     -> raw::c_int;
1533    pub fn asn_realloc_rbuild_unsigned_int64(pkt: *mut *mut raw::c_uchar,
1534                                             pkt_len: *mut libc::size_t,
1535                                             offset: *mut libc::size_t,
1536                                             allow_realloc:
1537                                                 raw::c_int,
1538                                             _type: raw::c_uchar,
1539                                             data: *const Struct_counter64,
1540                                             arg1: libc::size_t)
1541     -> raw::c_int;
1542    pub fn asn_realloc_rbuild_signed_int64(pkt: *mut *mut raw::c_uchar,
1543                                           pkt_len: *mut libc::size_t,
1544                                           offset: *mut libc::size_t,
1545                                           allow_realloc:
1546                                               raw::c_int,
1547                                           _type: raw::c_uchar,
1548                                           data: *const Struct_counter64,
1549                                           arg1: libc::size_t)
1550     -> raw::c_int;
1551    pub fn asn_realloc_rbuild_float(pkt: *mut *mut raw::c_uchar,
1552                                    pkt_len: *mut libc::size_t, offset: *mut libc::size_t,
1553                                    allow_realloc: raw::c_int,
1554                                    _type: raw::c_uchar,
1555                                    data: *const raw::c_float,
1556                                    data_size: libc::size_t)
1557     -> raw::c_int;
1558    pub fn asn_realloc_rbuild_double(pkt: *mut *mut raw::c_uchar,
1559                                     pkt_len: *mut libc::size_t,
1560                                     offset: *mut libc::size_t,
1561                                     allow_realloc: raw::c_int,
1562                                     _type: raw::c_uchar,
1563                                     data: *const raw::c_double,
1564                                     data_size: libc::size_t)
1565     -> raw::c_int;
1566    pub fn snmp_error(sess: *mut netsnmp_session,
1567                      clib_errorno: *mut raw::c_int,
1568                      snmp_errorno: *mut raw::c_int,
1569                      errstring: *mut *mut raw::c_char);
1570    pub fn snmp_sess_error(sess: *mut raw::c_void,
1571                           clib_errorno: *mut raw::c_int,
1572                           snmp_errorno: *mut raw::c_int,
1573                           errstring: *mut *mut raw::c_char);
1574    pub fn snmp_api_errstring(snmp_errorno: raw::c_int)
1575     -> *const raw::c_char;
1576    pub fn snmp_errstring(snmp_errorno: raw::c_int)
1577     -> *const raw::c_char;
1578    pub fn snmp_perror(msg: *const raw::c_char);
1579    pub fn snmp_sess_perror(msg: *const raw::c_char,
1580                            sess: *mut netsnmp_session);
1581    pub fn snmp_log_perror(msg: *const raw::c_char);
1582    pub fn snmp_log(priority: raw::c_int,
1583                    format: *const raw::c_char, ...)
1584     -> raw::c_int;
1585    // pub fn snmp_vlog(priority: raw::c_int,
1586    //                  format: *const raw::c_char, ap: va_list)
1587     // -> raw::c_int;
1588    pub fn snmp_get_do_logging() -> raw::c_int;
1589    pub fn netsnmp_logging_restart();
1590    pub fn snmp_disable_log();
1591    pub fn shutdown_snmp_logging();
1592    pub fn debugmsg(token: *const raw::c_char,
1593                    format: *const raw::c_char, ...);
1594    pub fn debugmsgtoken(token: *const raw::c_char,
1595                         format: *const raw::c_char, ...);
1596    pub fn debug_combo_nc(token: *const raw::c_char,
1597                          format: *const raw::c_char, ...);
1598    pub fn debugmsg_oid(token: *const raw::c_char,
1599                        theoid: *const oid, len: libc::size_t);
1600    pub fn debugmsg_suboid(token: *const raw::c_char,
1601                           theoid: *const oid, len: libc::size_t);
1602    pub fn debugmsg_var(token: *const raw::c_char,
1603                        var: *mut netsnmp_variable_list);
1604    pub fn debugmsg_oidrange(token: *const raw::c_char,
1605                             theoid: *const oid, len: libc::size_t,
1606                             var_subid: libc::size_t, range_ubound: oid);
1607    pub fn debugmsg_hex(token: *const raw::c_char,
1608                        thedata: *const raw::c_uchar, len: libc::size_t);
1609    pub fn debugmsg_hextli(token: *const raw::c_char,
1610                           thedata: *const raw::c_uchar, len: libc::size_t);
1611    pub fn debug_indent_add(amount: raw::c_int);
1612    pub fn debug_indent_get() -> raw::c_int;
1613    pub fn debug_indent() -> *const raw::c_char;
1614    pub fn snmp_debug_init();
1615    pub fn debug_register_tokens(tokens: *const raw::c_char);
1616    pub fn debug_is_token_registered(token: *const raw::c_char)
1617     -> raw::c_int;
1618    pub fn snmp_set_do_debugging(arg1: raw::c_int);
1619    pub fn snmp_get_do_debugging() -> raw::c_int;
1620    pub fn init_snmp_logging();
1621    pub fn snmp_disable_syslog();
1622    pub fn snmp_disable_filelog();
1623    pub fn snmp_disable_stderrlog();
1624    pub fn snmp_disable_calllog();
1625    pub fn snmp_enable_syslog();
1626    pub fn snmp_enable_syslog_ident(ident: *const raw::c_char,
1627                                    facility: raw::c_int);
1628    pub fn snmp_enable_filelog(logfilename: *const raw::c_char,
1629                               dont_zero_log: raw::c_int);
1630    pub fn snmp_enable_stderrlog();
1631    pub fn snmp_enable_calllog();
1632    pub fn snmp_stderrlog_status() -> raw::c_int;
1633    pub fn netsnmp_set_line_buffering(stream: *mut libc::FILE);
1634    pub fn snmp_log_options(optarg: *mut raw::c_char,
1635                            argc: raw::c_int,
1636                            argv: *const *mut raw::c_char)
1637     -> raw::c_int;
1638    pub fn snmp_log_options_usage(lead: *const raw::c_char,
1639                                  outf: *mut libc::FILE);
1640    pub fn snmp_log_syslogname(syslogname: *const raw::c_char)
1641     -> *mut raw::c_char;
1642    pub fn log_handler_stdouterr(arg1: *mut netsnmp_log_handler,
1643                                 arg2: raw::c_int,
1644                                 arg3: *const raw::c_char)
1645     -> raw::c_int;
1646    pub fn log_handler_file(arg1: *mut netsnmp_log_handler,
1647                            arg2: raw::c_int,
1648                            arg3: *const raw::c_char)
1649     -> raw::c_int;
1650    pub fn log_handler_syslog(arg1: *mut netsnmp_log_handler,
1651                              arg2: raw::c_int,
1652                              arg3: *const raw::c_char)
1653     -> raw::c_int;
1654    pub fn log_handler_callback(arg1: *mut netsnmp_log_handler,
1655                                arg2: raw::c_int,
1656                                arg3: *const raw::c_char)
1657     -> raw::c_int;
1658    pub fn log_handler_null(arg1: *mut netsnmp_log_handler,
1659                            arg2: raw::c_int,
1660                            arg3: *const raw::c_char)
1661     -> raw::c_int;
1662    pub fn get_logh_head() -> *mut netsnmp_log_handler;
1663    pub fn netsnmp_register_loghandler(_type: raw::c_int,
1664                                       pri: raw::c_int)
1665     -> *mut netsnmp_log_handler;
1666    pub fn netsnmp_find_loghandler(token: *const raw::c_char)
1667     -> *mut netsnmp_log_handler;
1668    pub fn netsnmp_add_loghandler(logh: *mut netsnmp_log_handler)
1669     -> raw::c_int;
1670    pub fn netsnmp_remove_loghandler(logh: *mut netsnmp_log_handler)
1671     -> raw::c_int;
1672    pub fn netsnmp_enable_loghandler(token: *const raw::c_char)
1673     -> raw::c_int;
1674    pub fn netsnmp_disable_loghandler(token: *const raw::c_char)
1675     -> raw::c_int;
1676    pub fn netsnmp_enable_this_loghandler(logh: *mut netsnmp_log_handler);
1677    pub fn netsnmp_disable_this_loghandler(logh: *mut netsnmp_log_handler);
1678    pub fn snmp_replace_var_types(vbl: *mut netsnmp_variable_list,
1679                                  old_type: raw::c_uchar, new_type: raw::c_uchar);
1680    pub fn snmp_reset_var_buffers(var: *mut netsnmp_variable_list);
1681    pub fn snmp_reset_var_types(vbl: *mut netsnmp_variable_list,
1682                                new_type: raw::c_uchar);
1683    pub fn count_varbinds(var_ptr: *mut netsnmp_variable_list)
1684     -> raw::c_int;
1685    pub fn count_varbinds_of_type(var_ptr: *mut netsnmp_variable_list,
1686                                  _type: raw::c_uchar) -> raw::c_int;
1687    pub fn find_varbind_of_type(var_ptr: *mut netsnmp_variable_list,
1688                                _type: raw::c_uchar) -> *mut netsnmp_variable_list;
1689    pub fn find_varbind_in_list(vblist: *mut netsnmp_variable_list,
1690                                name: *const oid, len: libc::size_t)
1691     -> *mut netsnmp_variable_list;
1692    pub fn snmp_split_pdu(arg1: *mut netsnmp_pdu,
1693                          skipCount: raw::c_int,
1694                          copyCount: raw::c_int)
1695     -> *mut netsnmp_pdu;
1696    pub fn snmp_varbind_len(pdu: *mut netsnmp_pdu) -> raw::c_ulong;
1697    pub fn snmp_clone_var(arg1: *mut netsnmp_variable_list,
1698                          arg2: *mut netsnmp_variable_list)
1699     -> raw::c_int;
1700    pub fn snmp_synch_response_cb(arg1: *mut netsnmp_session,
1701                                  arg2: *mut netsnmp_pdu,
1702                                  arg3: *mut *mut netsnmp_pdu,
1703                                  arg4: snmp_callback)
1704     -> raw::c_int;
1705    pub fn snmp_clone_mem(arg1: *mut *mut raw::c_void,
1706                          arg2: *const raw::c_void,
1707                          arg3: raw::c_uint)
1708     -> raw::c_int;
1709    pub fn netsnmp_query_set_default_session(arg1: *mut netsnmp_session);
1710    pub fn netsnmp_query_get_default_session_unchecked()
1711     -> *mut netsnmp_session;
1712    pub fn netsnmp_query_get_default_session() -> *mut netsnmp_session;
1713    pub fn netsnmp_query_get(arg1: *mut netsnmp_variable_list,
1714                             arg2: *mut netsnmp_session)
1715     -> raw::c_int;
1716    pub fn netsnmp_query_getnext(arg1: *mut netsnmp_variable_list,
1717                                 arg2: *mut netsnmp_session)
1718     -> raw::c_int;
1719    pub fn netsnmp_query_walk(arg1: *mut netsnmp_variable_list,
1720                              arg2: *mut netsnmp_session)
1721     -> raw::c_int;
1722    pub fn netsnmp_query_set(arg1: *mut netsnmp_variable_list,
1723                             arg2: *mut netsnmp_session)
1724     -> raw::c_int;
1725    pub fn netsnmp_state_machine_run(input: *mut netsnmp_state_machine_input)
1726     -> raw::c_int;
1727    pub fn netsnmp_row_create(sess: *mut netsnmp_session,
1728                              vars: *mut netsnmp_variable_list,
1729                              row_status_index: raw::c_int)
1730     -> raw::c_int;
1731    pub fn add_mibdir(arg1: *const raw::c_char)
1732     -> raw::c_int;
1733    pub fn netsnmp_init_mib();
1734    pub fn shutdown_mib();
1735    pub fn netsnmp_read_module(arg1: *const raw::c_char)
1736     -> *mut Struct_tree;
1737    pub fn read_mib(arg1: *const raw::c_char) -> *mut Struct_tree;
1738    pub fn read_all_mibs() -> *mut Struct_tree;
1739    pub fn add_module_replacement(arg1: *const raw::c_char,
1740                                  arg2: *const raw::c_char,
1741                                  arg3: *const raw::c_char,
1742                                  arg4: raw::c_int);
1743    pub fn snmp_set_mib_warnings(arg1: raw::c_int);
1744    pub fn snmp_set_mib_errors(arg1: raw::c_int);
1745    pub fn snmp_set_save_descriptions(arg1: raw::c_int);
1746    pub fn read_objid(arg1: *const raw::c_char, arg2: *mut oid,
1747                      arg3: *mut libc::size_t) -> raw::c_int;
1748    pub fn snmp_parse_oid(arg1: *const raw::c_char, arg2: *mut oid,
1749                          arg3: *mut libc::size_t) -> *mut oid;
1750    pub fn get_module_node(arg1: *const raw::c_char,
1751                           arg2: *const raw::c_char,
1752                           arg3: *mut oid, arg4: *mut libc::size_t)
1753     -> raw::c_int;
1754    pub fn print_mib(arg1: *mut libc::FILE);
1755    pub fn print_objid(objid: *const oid, objidlen: libc::size_t);
1756    pub fn fprint_objid(fp: *mut libc::FILE, objid: *const oid, objidlen: libc::size_t);
1757    pub fn snprint_objid(buf: *mut raw::c_char, buf_len: libc::size_t,
1758                         objid: *const oid, objidlen: libc::size_t)
1759     -> raw::c_int;
1760    pub fn print_description(objid: *mut oid, objidlen: libc::size_t,
1761                             width: raw::c_int);
1762    pub fn fprint_description(fp: *mut libc::FILE, objid: *mut oid,
1763                              objidlen: libc::size_t, width: raw::c_int);
1764    pub fn snprint_description(buf: *mut raw::c_char,
1765                               buf_len: libc::size_t, objid: *mut oid,
1766                               objidlen: libc::size_t, width: raw::c_int)
1767     -> raw::c_int;
1768    pub fn netsnmp_unload_module(name: *const raw::c_char)
1769     -> raw::c_int;
1770    pub fn netsnmp_init_mib_internals();
1771    pub fn unload_all_mibs();
1772    pub fn add_mibfile(arg1: *const raw::c_char,
1773                       arg2: *const raw::c_char, arg3: *mut libc::FILE)
1774     -> raw::c_int;
1775    pub fn which_module(arg1: *const raw::c_char)
1776     -> raw::c_int;
1777    pub fn module_name(arg1: raw::c_int,
1778                       arg2: *mut raw::c_char)
1779     -> *mut raw::c_char;
1780    pub fn print_subtree(arg1: *mut libc::FILE, arg2: *mut Struct_tree,
1781                         arg3: raw::c_int);
1782    pub fn print_ascii_dump_tree(arg1: *mut libc::FILE, arg2: *mut Struct_tree,
1783                                 arg3: raw::c_int);
1784    pub fn find_tree_node(arg1: *const raw::c_char,
1785                          arg2: raw::c_int) -> *mut Struct_tree;
1786    pub fn get_tc_descriptor(arg1: raw::c_int)
1787     -> *const raw::c_char;
1788    pub fn get_tc_description(arg1: raw::c_int)
1789     -> *const raw::c_char;
1790    pub fn find_best_tree_node(name: *const raw::c_char,
1791                               tree_top: *mut Struct_tree, _match: *mut raw::c_uint)
1792     -> *mut Struct_tree;
1793    pub fn find_node(arg1: *const raw::c_char,
1794                     arg2: *mut Struct_tree) -> *mut Struct_tree;
1795    pub fn find_node2(arg1: *const raw::c_char,
1796                      arg2: *const raw::c_char)
1797     -> *mut Struct_tree;
1798    pub fn find_module(arg1: raw::c_int) -> *mut Struct_module;
1799    pub fn adopt_orphans();
1800    pub fn snmp_mib_toggle_options(options: *mut raw::c_char)
1801     -> *mut raw::c_char;
1802    pub fn snmp_mib_toggle_options_usage(lead: *const raw::c_char,
1803                                         outf: *mut libc::FILE);
1804    pub fn print_mib_tree(arg1: *mut libc::FILE, arg2: *mut Struct_tree,
1805                          arg3: raw::c_int);
1806    pub fn get_mib_parse_error_count() -> raw::c_int;
1807    pub fn snmp_get_token(fp: *mut libc::FILE, token: *mut raw::c_char,
1808                          maxtlen: raw::c_int)
1809     -> raw::c_int;
1810    pub fn init_callbacks();
1811    pub fn netsnmp_register_callback(major: raw::c_int,
1812                                     minor: raw::c_int,
1813                                     new_callback: *mut SNMPCallback,
1814                                     arg: *mut raw::c_void,
1815                                     priority: raw::c_int)
1816     -> raw::c_int;
1817    pub fn snmp_register_callback(major: raw::c_int,
1818                                  minor: raw::c_int,
1819                                  new_callback: *mut SNMPCallback,
1820                                  arg: *mut raw::c_void)
1821     -> raw::c_int;
1822    pub fn snmp_call_callbacks(major: raw::c_int,
1823                               minor: raw::c_int,
1824                               caller_arg: *mut raw::c_void)
1825     -> raw::c_int;
1826    pub fn snmp_callback_available(major: raw::c_int,
1827                                   minor: raw::c_int)
1828     -> raw::c_int;
1829    pub fn snmp_count_callbacks(major: raw::c_int,
1830                                minor: raw::c_int)
1831     -> raw::c_int;
1832    pub fn snmp_unregister_callback(major: raw::c_int,
1833                                    minor: raw::c_int,
1834                                    new_callback: *mut SNMPCallback,
1835                                    arg: *mut raw::c_void,
1836                                    matchargs: raw::c_int)
1837     -> raw::c_int;
1838    pub fn clear_callback();
1839    pub fn netsnmp_callback_clear_client_arg(arg1:
1840                                                 *mut raw::c_void,
1841                                             i: raw::c_int,
1842                                             j: raw::c_int)
1843     -> raw::c_int;
1844    pub fn snmp_callback_list(major: raw::c_int,
1845                              minor: raw::c_int)
1846     -> *mut Struct_snmp_gen_callback;
1847    pub fn netsnmp_oid_stash_add_data(root: *mut *mut netsnmp_oid_stash_node,
1848                                      lookup: *const oid, lookup_len: libc::size_t,
1849                                      mydata: *mut raw::c_void)
1850     -> raw::c_int;
1851    pub fn netsnmp_oid_stash_store_all(arg1: raw::c_int,
1852                                       arg2: raw::c_int,
1853                                       arg3: *mut raw::c_void,
1854                                       arg4: *mut raw::c_void)
1855     -> raw::c_int;
1856    pub fn netsnmp_oid_stash_get_node(root: *mut netsnmp_oid_stash_node,
1857                                      lookup: *const oid, lookup_len: libc::size_t)
1858     -> *mut netsnmp_oid_stash_node;
1859    pub fn netsnmp_oid_stash_get_data(root: *mut netsnmp_oid_stash_node,
1860                                      lookup: *const oid, lookup_len: libc::size_t)
1861     -> *mut raw::c_void;
1862    pub fn netsnmp_oid_stash_getnext_node(root: *mut netsnmp_oid_stash_node,
1863                                          lookup: *mut oid,
1864                                          lookup_len: libc::size_t)
1865     -> *mut netsnmp_oid_stash_node;
1866    pub fn netsnmp_oid_stash_create_sized_node(mysize: libc::size_t)
1867     -> *mut netsnmp_oid_stash_node;
1868    pub fn netsnmp_oid_stash_create_node() -> *mut netsnmp_oid_stash_node;
1869    pub fn netsnmp_oid_stash_store(root: *mut netsnmp_oid_stash_node,
1870                                   tokenname: *const raw::c_char,
1871                                   dumpfn: *mut NetSNMPStashDump,
1872                                   curoid: *mut oid, curoid_len: libc::size_t);
1873    pub fn netsnmp_oid_stash_free(root: *mut *mut netsnmp_oid_stash_node,
1874                                  freefn: *mut NetSNMPStashFreeNode);
1875    pub fn netsnmp_oid_stash_no_free(arg1: *mut raw::c_void);
1876    pub fn snmp_set_dump_packet(arg1: raw::c_int);
1877    pub fn snmp_get_dump_packet() -> raw::c_int;
1878    pub fn snmp_set_quick_print(arg1: raw::c_int);
1879    pub fn snmp_get_quick_print() -> raw::c_int;
1880    pub fn snmp_set_suffix_only(arg1: raw::c_int);
1881    pub fn snmp_get_suffix_only() -> raw::c_int;
1882    pub fn snmp_set_full_objid(arg1: raw::c_int);
1883    pub fn snmp_get_full_objid() -> raw::c_int;
1884    pub fn snmp_set_random_access(arg1: raw::c_int);
1885    pub fn snmp_get_random_access() -> raw::c_int;
1886    pub fn snmp_set_mib_comment_term(arg1: raw::c_int);
1887    pub fn snmp_set_mib_parse_label(arg1: raw::c_int);
1888    pub fn print_ascii_dump(arg1: *mut libc::FILE);
1889    pub fn register_mib_handlers();
1890    pub fn netsnmp_set_mib_directory(dir: *const raw::c_char);
1891    pub fn netsnmp_get_mib_directory() -> *mut raw::c_char;
1892    pub fn netsnmp_fixup_mib_directory();
1893    pub fn netsnmp_mibindex_load();
1894    pub fn netsnmp_mibindex_lookup(arg1: *const raw::c_char)
1895     -> *mut raw::c_char;
1896    pub fn netsnmp_mibindex_new(arg1: *const raw::c_char)
1897     -> *mut libc::FILE;
1898    pub fn sprint_realloc_description(buf: *mut *mut raw::c_uchar,
1899                                      buf_len: *mut libc::size_t,
1900                                      out_len: *mut libc::size_t,
1901                                      allow_realloc: raw::c_int,
1902                                      objid: *mut oid, objidlen: libc::size_t,
1903                                      width: raw::c_int)
1904     -> raw::c_int;
1905    pub fn get_wild_node(arg1: *const raw::c_char, arg2: *mut oid,
1906                         arg3: *mut libc::size_t) -> raw::c_int;
1907    pub fn get_node(arg1: *const raw::c_char, arg2: *mut oid,
1908                    arg3: *mut libc::size_t) -> raw::c_int;
1909    pub fn get_tree(arg1: *const oid, arg2: libc::size_t, arg3: *mut Struct_tree)
1910     -> *mut Struct_tree;
1911    pub fn get_tree_head() -> *mut Struct_tree;
1912    pub fn set_function(arg1: *mut Struct_tree);
1913    pub fn parse_one_oid_index(oidStart: *mut *mut oid, oidLen: *mut libc::size_t,
1914                               data: *mut netsnmp_variable_list,
1915                               complete: raw::c_int)
1916     -> raw::c_int;
1917    pub fn parse_oid_indexes(oidIndex: *mut oid, oidLen: libc::size_t,
1918                             data: *mut netsnmp_variable_list)
1919     -> raw::c_int;
1920    pub fn build_oid_noalloc(_in: *mut oid, in_len: libc::size_t,
1921                             out_len: *mut libc::size_t, prefix: *mut oid,
1922                             prefix_len: libc::size_t,
1923                             indexes: *mut netsnmp_variable_list)
1924     -> raw::c_int;
1925    pub fn build_oid(out: *mut *mut oid, out_len: *mut libc::size_t,
1926                     prefix: *mut oid, prefix_len: libc::size_t,
1927                     indexes: *mut netsnmp_variable_list)
1928     -> raw::c_int;
1929    pub fn build_oid_segment(var: *mut netsnmp_variable_list)
1930     -> raw::c_int;
1931    pub fn sprint_realloc_variable(buf: *mut *mut raw::c_uchar,
1932                                   buf_len: *mut libc::size_t, out_len: *mut libc::size_t,
1933                                   allow_realloc: raw::c_int,
1934                                   objid: *const oid, objidlen: libc::size_t,
1935                                   variable: *const netsnmp_variable_list)
1936     -> raw::c_int;
1937    pub fn netsnmp_sprint_realloc_objid_tree(buf: *mut *mut raw::c_uchar,
1938                                             buf_len: *mut libc::size_t,
1939                                             out_len: *mut libc::size_t,
1940                                             allow_realloc:
1941                                                 raw::c_int,
1942                                             buf_overflow:
1943                                                 *mut raw::c_int,
1944                                             objid: *const oid,
1945                                             objidlen: libc::size_t)
1946     -> *mut Struct_tree;
1947    pub fn netsnmp_sprint_realloc_objid(buf: *mut *mut raw::c_uchar,
1948                                        buf_len: *mut libc::size_t,
1949                                        out_len: *mut libc::size_t,
1950                                        allow_realloc: raw::c_int,
1951                                        buf_overflow:
1952                                            *mut raw::c_int,
1953                                        objid: *const oid, objidlen: libc::size_t);
1954    pub fn sprint_realloc_value(buf: *mut *mut raw::c_uchar, buf_len: *mut libc::size_t,
1955                                out_len: *mut libc::size_t,
1956                                allow_realloc: raw::c_int,
1957                                objid: *const oid, objidlen: libc::size_t,
1958                                variable: *const netsnmp_variable_list)
1959     -> raw::c_int;
1960    pub fn sprint_realloc_objid(buf: *mut *mut raw::c_uchar, buf_len: *mut libc::size_t,
1961                                out_len: *mut libc::size_t,
1962                                allow_realloc: raw::c_int,
1963                                objid: *const oid, objidlen: libc::size_t)
1964     -> raw::c_int;
1965    pub fn sprint_realloc_by_type(buf: *mut *mut raw::c_uchar, buf_len: *mut libc::size_t,
1966                                  out_len: *mut libc::size_t,
1967                                  allow_realloc: raw::c_int,
1968                                  var: *const netsnmp_variable_list,
1969                                  enums: *const Struct_enum_list,
1970                                  hint: *const raw::c_char,
1971                                  units: *const raw::c_char)
1972     -> raw::c_int;
1973    pub fn sprint_realloc_hexstring(buf: *mut *mut raw::c_uchar,
1974                                    buf_len: *mut libc::size_t,
1975                                    out_len: *mut libc::size_t,
1976                                    allow_realloc: raw::c_int,
1977                                    arg1: *const raw::c_uchar, arg2: libc::size_t)
1978     -> raw::c_int;
1979    pub fn sprint_realloc_asciistring(buf: *mut *mut raw::c_uchar,
1980                                      buf_len: *mut libc::size_t,
1981                                      out_len: *mut libc::size_t,
1982                                      allow_realloc: raw::c_int,
1983                                      cp: *const raw::c_uchar, len: libc::size_t)
1984     -> raw::c_int;
1985    pub fn sprint_realloc_octet_string(buf: *mut *mut raw::c_uchar,
1986                                       buf_len: *mut libc::size_t,
1987                                       out_len: *mut libc::size_t,
1988                                       allow_realloc: raw::c_int,
1989                                       arg1: *const netsnmp_variable_list,
1990                                       arg2: *const Struct_enum_list,
1991                                       arg3: *const raw::c_char,
1992                                       arg4: *const raw::c_char)
1993     -> raw::c_int;
1994    pub fn sprint_realloc_opaque(buf: *mut *mut raw::c_uchar, buf_len: *mut libc::size_t,
1995                                 out_len: *mut libc::size_t,
1996                                 allow_realloc: raw::c_int,
1997                                 arg1: *const netsnmp_variable_list,
1998                                 arg2: *const Struct_enum_list,
1999                                 arg3: *const raw::c_char,
2000                                 arg4: *const raw::c_char)
2001     -> raw::c_int;
2002    pub fn sprint_realloc_object_identifier(buf: *mut *mut raw::c_uchar,
2003                                            buf_len: *mut libc::size_t,
2004                                            out_len: *mut libc::size_t,
2005                                            allow_realloc:
2006                                                raw::c_int,
2007                                            arg1:
2008                                                *const netsnmp_variable_list,
2009                                            arg2: *const Struct_enum_list,
2010                                            arg3:
2011                                                *const raw::c_char,
2012                                            arg4:
2013                                                *const raw::c_char)
2014     -> raw::c_int;
2015    pub fn sprint_realloc_timeticks(buf: *mut *mut raw::c_uchar,
2016                                    buf_len: *mut libc::size_t,
2017                                    out_len: *mut libc::size_t,
2018                                    allow_realloc: raw::c_int,
2019                                    arg1: *const netsnmp_variable_list,
2020                                    arg2: *const Struct_enum_list,
2021                                    arg3: *const raw::c_char,
2022                                    arg4: *const raw::c_char)
2023     -> raw::c_int;
2024    pub fn sprint_realloc_hinted_integer(buf: *mut *mut raw::c_uchar,
2025                                         buf_len: *mut libc::size_t,
2026                                         out_len: *mut libc::size_t,
2027                                         allow_realloc: raw::c_int,
2028                                         arg1: raw::c_long,
2029                                         arg2: raw::c_char,
2030                                         arg3: *const raw::c_char,
2031                                         arg4: *const raw::c_char)
2032     -> raw::c_int;
2033    pub fn sprint_realloc_integer(buf: *mut *mut raw::c_uchar, buf_len: *mut libc::size_t,
2034                                  out_len: *mut libc::size_t,
2035                                  allow_realloc: raw::c_int,
2036                                  arg1: *const netsnmp_variable_list,
2037                                  arg2: *const Struct_enum_list,
2038                                  arg3: *const raw::c_char,
2039                                  arg4: *const raw::c_char)
2040     -> raw::c_int;
2041    pub fn sprint_realloc_uinteger(buf: *mut *mut raw::c_uchar,
2042                                   buf_len: *mut libc::size_t, out_len: *mut libc::size_t,
2043                                   allow_realloc: raw::c_int,
2044                                   arg1: *const netsnmp_variable_list,
2045                                   arg2: *const Struct_enum_list,
2046                                   arg3: *const raw::c_char,
2047                                   arg4: *const raw::c_char)
2048     -> raw::c_int;
2049    pub fn sprint_realloc_gauge(buf: *mut *mut raw::c_uchar, buf_len: *mut libc::size_t,
2050                                out_len: *mut libc::size_t,
2051                                allow_realloc: raw::c_int,
2052                                arg1: *const netsnmp_variable_list,
2053                                arg2: *const Struct_enum_list,
2054                                arg3: *const raw::c_char,
2055                                arg4: *const raw::c_char)
2056     -> raw::c_int;
2057    pub fn sprint_realloc_counter(buf: *mut *mut raw::c_uchar, buf_len: *mut libc::size_t,
2058                                  out_len: *mut libc::size_t,
2059                                  allow_realloc: raw::c_int,
2060                                  arg1: *const netsnmp_variable_list,
2061                                  arg2: *const Struct_enum_list,
2062                                  arg3: *const raw::c_char,
2063                                  arg4: *const raw::c_char)
2064     -> raw::c_int;
2065    pub fn sprint_realloc_networkaddress(buf: *mut *mut raw::c_uchar,
2066                                         buf_len: *mut libc::size_t,
2067                                         out_len: *mut libc::size_t,
2068                                         allow_realloc: raw::c_int,
2069                                         arg1: *const netsnmp_variable_list,
2070                                         arg2: *const Struct_enum_list,
2071                                         arg3: *const raw::c_char,
2072                                         arg4: *const raw::c_char)
2073     -> raw::c_int;
2074    pub fn sprint_realloc_ipaddress(buf: *mut *mut raw::c_uchar,
2075                                    buf_len: *mut libc::size_t,
2076                                    out_len: *mut libc::size_t,
2077                                    allow_realloc: raw::c_int,
2078                                    arg1: *const netsnmp_variable_list,
2079                                    arg2: *const Struct_enum_list,
2080                                    arg3: *const raw::c_char,
2081                                    arg4: *const raw::c_char)
2082     -> raw::c_int;
2083    pub fn sprint_realloc_null(buf: *mut *mut raw::c_uchar, buf_len: *mut libc::size_t,
2084                               out_len: *mut libc::size_t,
2085                               allow_realloc: raw::c_int,
2086                               arg1: *const netsnmp_variable_list,
2087                               arg2: *const Struct_enum_list,
2088                               arg3: *const raw::c_char,
2089                               arg4: *const raw::c_char)
2090     -> raw::c_int;
2091    pub fn sprint_realloc_bitstring(buf: *mut *mut raw::c_uchar,
2092                                    buf_len: *mut libc::size_t,
2093                                    out_len: *mut libc::size_t,
2094                                    allow_realloc: raw::c_int,
2095                                    arg1: *const netsnmp_variable_list,
2096                                    arg2: *const Struct_enum_list,
2097                                    arg3: *const raw::c_char,
2098                                    arg4: *const raw::c_char)
2099     -> raw::c_int;
2100    pub fn sprint_realloc_nsapaddress(buf: *mut *mut raw::c_uchar,
2101                                      buf_len: *mut libc::size_t,
2102                                      out_len: *mut libc::size_t,
2103                                      allow_realloc: raw::c_int,
2104                                      arg1: *const netsnmp_variable_list,
2105                                      arg2: *const Struct_enum_list,
2106                                      arg3: *const raw::c_char,
2107                                      arg4: *const raw::c_char)
2108     -> raw::c_int;
2109    pub fn sprint_realloc_counter64(buf: *mut *mut raw::c_uchar,
2110                                    buf_len: *mut libc::size_t,
2111                                    out_len: *mut libc::size_t,
2112                                    allow_realloc: raw::c_int,
2113                                    arg1: *const netsnmp_variable_list,
2114                                    arg2: *const Struct_enum_list,
2115                                    arg3: *const raw::c_char,
2116                                    arg4: *const raw::c_char)
2117     -> raw::c_int;
2118    pub fn sprint_realloc_badtype(buf: *mut *mut raw::c_uchar, buf_len: *mut libc::size_t,
2119                                  out_len: *mut libc::size_t,
2120                                  allow_realloc: raw::c_int,
2121                                  arg1: *const netsnmp_variable_list,
2122                                  arg2: *const Struct_enum_list,
2123                                  arg3: *const raw::c_char,
2124                                  arg4: *const raw::c_char)
2125     -> raw::c_int;
2126    pub fn sprint_realloc_float(buf: *mut *mut raw::c_uchar, buf_len: *mut libc::size_t,
2127                                out_len: *mut libc::size_t,
2128                                allow_realloc: raw::c_int,
2129                                arg1: *const netsnmp_variable_list,
2130                                arg2: *const Struct_enum_list,
2131                                arg3: *const raw::c_char,
2132                                arg4: *const raw::c_char)
2133     -> raw::c_int;
2134    pub fn sprint_realloc_double(buf: *mut *mut raw::c_uchar, buf_len: *mut libc::size_t,
2135                                 out_len: *mut libc::size_t,
2136                                 allow_realloc: raw::c_int,
2137                                 arg1: *const netsnmp_variable_list,
2138                                 arg2: *const Struct_enum_list,
2139                                 arg3: *const raw::c_char,
2140                                 arg4: *const raw::c_char)
2141     -> raw::c_int;
2142    pub fn snprint_by_type(buf: *mut raw::c_char, buf_len: libc::size_t,
2143                           var: *mut netsnmp_variable_list,
2144                           enums: *const Struct_enum_list,
2145                           hint: *const raw::c_char,
2146                           units: *const raw::c_char)
2147     -> raw::c_int;
2148    pub fn snprint_hexstring(buf: *mut raw::c_char,
2149                             buf_len: libc::size_t, arg1: *const raw::c_uchar,
2150                             arg2: libc::size_t) -> raw::c_int;
2151    pub fn snprint_asciistring(buf: *mut raw::c_char,
2152                               buf_len: libc::size_t, cp: *const raw::c_uchar,
2153                               len: libc::size_t) -> raw::c_int;
2154    pub fn snprint_octet_string(buf: *mut raw::c_char,
2155                                buf_len: libc::size_t,
2156                                arg1: *const netsnmp_variable_list,
2157                                arg2: *const Struct_enum_list,
2158                                arg3: *const raw::c_char,
2159                                arg4: *const raw::c_char)
2160     -> raw::c_int;
2161    pub fn snprint_opaque(buf: *mut raw::c_char, buf_len: libc::size_t,
2162                          arg1: *const netsnmp_variable_list,
2163                          arg2: *const Struct_enum_list,
2164                          arg3: *const raw::c_char,
2165                          arg4: *const raw::c_char)
2166     -> raw::c_int;
2167    pub fn snprint_object_identifier(buf: *mut raw::c_char,
2168                                     buf_len: libc::size_t,
2169                                     arg1: *const netsnmp_variable_list,
2170                                     arg2: *const Struct_enum_list,
2171                                     arg3: *const raw::c_char,
2172                                     arg4: *const raw::c_char)
2173     -> raw::c_int;
2174    pub fn snprint_timeticks(buf: *mut raw::c_char,
2175                             buf_len: libc::size_t,
2176                             arg1: *const netsnmp_variable_list,
2177                             arg2: *const Struct_enum_list,
2178                             arg3: *const raw::c_char,
2179                             arg4: *const raw::c_char)
2180     -> raw::c_int;
2181    pub fn snprint_hinted_integer(buf: *mut raw::c_char,
2182                                  buf_len: libc::size_t,
2183                                  arg1: raw::c_long,
2184                                  arg2: *const raw::c_char,
2185                                  arg3: *const raw::c_char)
2186     -> raw::c_int;
2187    pub fn snprint_integer(buf: *mut raw::c_char, buf_len: libc::size_t,
2188                           arg1: *const netsnmp_variable_list,
2189                           arg2: *const Struct_enum_list,
2190                           arg3: *const raw::c_char,
2191                           arg4: *const raw::c_char)
2192     -> raw::c_int;
2193    pub fn snprint_uinteger(buf: *mut raw::c_char, buf_len: libc::size_t,
2194                            arg1: *const netsnmp_variable_list,
2195                            arg2: *const Struct_enum_list,
2196                            arg3: *const raw::c_char,
2197                            arg4: *const raw::c_char)
2198     -> raw::c_int;
2199    pub fn snprint_gauge(buf: *mut raw::c_char, buf_len: libc::size_t,
2200                         arg1: *const netsnmp_variable_list,
2201                         arg2: *const Struct_enum_list,
2202                         arg3: *const raw::c_char,
2203                         arg4: *const raw::c_char)
2204     -> raw::c_int;
2205    pub fn snprint_counter(buf: *mut raw::c_char, buf_len: libc::size_t,
2206                           arg1: *const netsnmp_variable_list,
2207                           arg2: *const Struct_enum_list,
2208                           arg3: *const raw::c_char,
2209                           arg4: *const raw::c_char)
2210     -> raw::c_int;
2211    pub fn snprint_networkaddress(buf: *mut raw::c_char,
2212                                  buf_len: libc::size_t,
2213                                  arg1: *const netsnmp_variable_list,
2214                                  arg2: *const Struct_enum_list,
2215                                  arg3: *const raw::c_char,
2216                                  arg4: *const raw::c_char)
2217     -> raw::c_int;
2218    pub fn snprint_ipaddress(buf: *mut raw::c_char,
2219                             buf_len: libc::size_t,
2220                             arg1: *const netsnmp_variable_list,
2221                             arg2: *const Struct_enum_list,
2222                             arg3: *const raw::c_char,
2223                             arg4: *const raw::c_char)
2224     -> raw::c_int;
2225    pub fn snprint_null(buf: *mut raw::c_char, buf_len: libc::size_t,
2226                        arg1: *const netsnmp_variable_list,
2227                        arg2: *const Struct_enum_list,
2228                        arg3: *const raw::c_char,
2229                        arg4: *const raw::c_char)
2230     -> raw::c_int;
2231    pub fn snprint_bitstring(buf: *mut raw::c_char,
2232                             buf_len: libc::size_t,
2233                             arg1: *const netsnmp_variable_list,
2234                             arg2: *const Struct_enum_list,
2235                             arg3: *const raw::c_char,
2236                             arg4: *const raw::c_char)
2237     -> raw::c_int;
2238    pub fn snprint_nsapaddress(buf: *mut raw::c_char,
2239                               buf_len: libc::size_t,
2240                               arg1: *const netsnmp_variable_list,
2241                               arg2: *const Struct_enum_list,
2242                               arg3: *const raw::c_char,
2243                               arg4: *const raw::c_char)
2244     -> raw::c_int;
2245    pub fn snprint_counter64(buf: *mut raw::c_char,
2246                             buf_len: libc::size_t,
2247                             arg1: *const netsnmp_variable_list,
2248                             arg2: *const Struct_enum_list,
2249                             arg3: *const raw::c_char,
2250                             arg4: *const raw::c_char)
2251     -> raw::c_int;
2252    pub fn snprint_badtype(buf: *mut raw::c_char, buf_len: libc::size_t,
2253                           arg1: *const netsnmp_variable_list,
2254                           arg2: *const Struct_enum_list,
2255                           arg3: *const raw::c_char,
2256                           arg4: *const raw::c_char)
2257     -> raw::c_int;
2258    pub fn snprint_float(buf: *mut raw::c_char, buf_len: libc::size_t,
2259                         arg1: *const netsnmp_variable_list,
2260                         arg2: *const Struct_enum_list,
2261                         arg3: *const raw::c_char,
2262                         arg4: *const raw::c_char)
2263     -> raw::c_int;
2264    pub fn snprint_double(buf: *mut raw::c_char, buf_len: libc::size_t,
2265                          arg1: *const netsnmp_variable_list,
2266                          arg2: *const Struct_enum_list,
2267                          arg3: *const raw::c_char,
2268                          arg4: *const raw::c_char)
2269     -> raw::c_int;
2270    pub fn print_oid_report(arg1: *mut libc::FILE);
2271    pub fn print_oid_report_enable_labeledoid();
2272    pub fn print_oid_report_enable_oid();
2273    pub fn print_oid_report_enable_suffix();
2274    pub fn print_oid_report_enable_symbolic();
2275    pub fn print_oid_report_enable_mibchildoid();
2276    pub fn parse_octet_hint(hint: *const raw::c_char,
2277                            value: *const raw::c_char,
2278                            new_val: *mut *mut raw::c_uchar,
2279                            new_val_len: *mut raw::c_int)
2280     -> *const raw::c_char;
2281    pub fn clear_tree_flags(tp: *mut Struct_tree);
2282    pub fn snmp_out_toggle_options(arg1: *mut raw::c_char)
2283     -> *mut raw::c_char;
2284    pub fn snmp_out_toggle_options_usage(arg1: *const raw::c_char,
2285                                         arg2: *mut libc::FILE);
2286    pub fn snmp_in_toggle_options(arg1: *mut raw::c_char)
2287     -> *mut raw::c_char;
2288    pub fn snmp_in_options(arg1: *mut raw::c_char,
2289                           arg2: raw::c_int,
2290                           arg3: *const *mut raw::c_char)
2291     -> *mut raw::c_char;
2292    pub fn snmp_in_toggle_options_usage(arg1: *const raw::c_char,
2293                                        arg2: *mut libc::FILE);
2294    pub fn mib_to_asn_type(mib_type: raw::c_int) -> raw::c_uchar;
2295    pub fn netsnmp_str2oid(S: *const raw::c_char, O: *mut oid,
2296                           L: raw::c_int) -> raw::c_int;
2297    pub fn snmp_set_detail(arg1: *const raw::c_char);
2298    pub fn netsnmp_malloc(size: libc::size_t) -> *mut raw::c_void;
2299    pub fn netsnmp_calloc(nelem: libc::size_t, elsize: libc::size_t)
2300     -> *mut raw::c_void;
2301    pub fn netsnmp_realloc(ptr: *mut raw::c_void, size: libc::size_t)
2302     -> *mut raw::c_void;
2303    pub fn netsnmp_free(ptr: *mut raw::c_void);
2304    pub fn netsnmp_strdup(s1: *const raw::c_char)
2305     -> *mut raw::c_char;
2306    pub fn snmp_free_var_internals(arg1: *mut netsnmp_variable_list);
2307    pub fn snmp_get_next_msgid() -> raw::c_long;
2308    pub fn snmp_get_next_reqid() -> raw::c_long;
2309    pub fn snmp_get_next_sessid() -> raw::c_long;
2310    pub fn snmp_get_next_transid() -> raw::c_long;
2311    pub fn snmp_oid_compare(arg1: *const oid, arg2: libc::size_t, arg3: *const oid,
2312                            arg4: libc::size_t) -> raw::c_int;
2313    pub fn snmp_oid_ncompare(arg1: *const oid, arg2: libc::size_t, arg3: *const oid,
2314                             arg4: libc::size_t, arg5: libc::size_t)
2315     -> raw::c_int;
2316    pub fn snmp_oidtree_compare(arg1: *const oid, arg2: libc::size_t,
2317                                arg3: *const oid, arg4: libc::size_t)
2318     -> raw::c_int;
2319    pub fn snmp_oidsubtree_compare(arg1: *const oid, arg2: libc::size_t,
2320                                   arg3: *const oid, arg4: libc::size_t)
2321     -> raw::c_int;
2322    pub fn netsnmp_oid_compare_ll(in_name1: *const oid, len1: libc::size_t,
2323                                  in_name2: *const oid, len2: libc::size_t,
2324                                  offpt: *mut libc::size_t)
2325     -> raw::c_int;
2326    pub fn netsnmp_oid_equals(arg1: *const oid, arg2: libc::size_t,
2327                              arg3: *const oid, arg4: libc::size_t)
2328     -> raw::c_int;
2329    pub fn netsnmp_oid_tree_equals(arg1: *const oid, arg2: libc::size_t,
2330                                   arg3: *const oid, arg4: libc::size_t)
2331     -> raw::c_int;
2332    pub fn netsnmp_oid_is_subtree(arg1: *const oid, arg2: libc::size_t,
2333                                  arg3: *const oid, arg4: libc::size_t)
2334     -> raw::c_int;
2335    pub fn netsnmp_oid_find_prefix(in_name1: *const oid, len1: libc::size_t,
2336                                   in_name2: *const oid, len2: libc::size_t)
2337     -> raw::c_int;
2338    pub fn init_snmp(arg1: *const raw::c_char);
2339    pub fn snmp_pdu_build(arg1: *mut netsnmp_pdu, arg2: *mut raw::c_uchar,
2340                          arg3: *mut libc::size_t) -> *mut raw::c_uchar;
2341    pub fn snmp_pdu_rbuild(arg1: *mut netsnmp_pdu, arg2: *mut raw::c_uchar,
2342                           arg3: *mut libc::size_t) -> *mut raw::c_uchar;
2343    pub fn snmpv3_parse(arg1: *mut netsnmp_pdu, arg2: *mut raw::c_uchar,
2344                        arg3: *mut libc::size_t, arg4: *mut *mut raw::c_uchar,
2345                        arg5: *mut netsnmp_session) -> raw::c_int;
2346    pub fn snmpv3_packet_build(arg1: *mut netsnmp_session,
2347                               pdu: *mut netsnmp_pdu, packet: *mut raw::c_uchar,
2348                               out_length: *mut libc::size_t, pdu_data: *mut raw::c_uchar,
2349                               pdu_data_len: libc::size_t) -> raw::c_int;
2350    pub fn snmpv3_packet_rbuild(arg1: *mut netsnmp_session,
2351                                pdu: *mut netsnmp_pdu, packet: *mut raw::c_uchar,
2352                                out_length: *mut libc::size_t,
2353                                pdu_data: *mut raw::c_uchar, pdu_data_len: libc::size_t)
2354     -> raw::c_int;
2355    pub fn snmpv3_make_report(pdu: *mut netsnmp_pdu,
2356                              error: raw::c_int)
2357     -> raw::c_int;
2358    pub fn snmpv3_get_report_type(pdu: *mut netsnmp_pdu)
2359     -> raw::c_int;
2360    pub fn snmp_pdu_parse(pdu: *mut netsnmp_pdu, data: *mut raw::c_uchar,
2361                          length: *mut libc::size_t) -> raw::c_int;
2362    pub fn snmpv3_scopedPDU_parse(pdu: *mut netsnmp_pdu, cp: *mut raw::c_uchar,
2363                                  length: *mut libc::size_t) -> *mut raw::c_uchar;
2364    pub fn snmp_store_needed(_type: *const raw::c_char);
2365    pub fn snmp_store_if_needed();
2366    pub fn snmp_store(_type: *const raw::c_char);
2367    pub fn snmp_shutdown(_type: *const raw::c_char);
2368    pub fn snmp_add_var(arg1: *mut netsnmp_pdu, arg2: *const oid,
2369                        arg3: libc::size_t, arg4: raw::c_char,
2370                        arg5: *const raw::c_char)
2371     -> raw::c_int;
2372    pub fn snmp_duplicate_objid(objToCopy: *const oid, arg1: libc::size_t)
2373     -> *mut oid;
2374    pub fn snmp_increment_statistic(which: raw::c_int) -> raw::c_uint;
2375    pub fn snmp_increment_statistic_by(which: raw::c_int,
2376                                       count: raw::c_int) -> raw::c_uint;
2377    pub fn snmp_get_statistic(which: raw::c_int) -> raw::c_uint;
2378    pub fn snmp_init_statistics();
2379    pub fn create_user_from_session(session: *mut netsnmp_session)
2380     -> raw::c_int;
2381    pub fn snmp_get_fd_for_session(sessp: *mut Struct_snmp_session)
2382     -> raw::c_int;
2383    pub fn snmpv3_probe_contextEngineID_rfc5343(slp:
2384                                                    *mut raw::c_void,
2385                                                session: *mut netsnmp_session)
2386     -> raw::c_int;
2387    pub fn snmpv3_packet_realloc_rbuild(pkt: *mut *mut raw::c_uchar,
2388                                        pkt_len: *mut libc::size_t,
2389                                        offset: *mut libc::size_t,
2390                                        session: *mut netsnmp_session,
2391                                        pdu: *mut netsnmp_pdu,
2392                                        pdu_data: *mut raw::c_uchar,
2393                                        pdu_data_len: libc::size_t)
2394     -> raw::c_int;
2395    pub fn snmp_pdu_realloc_rbuild(pkt: *mut *mut raw::c_uchar,
2396                                   pkt_len: *mut libc::size_t, offset: *mut libc::size_t,
2397                                   pdu: *mut netsnmp_pdu)
2398     -> raw::c_int;
2399    pub fn snmp_open_ex(arg1: *mut netsnmp_session,
2400                        fpre_parse:
2401                            ::std::option::Option<unsafe extern "C" fn(arg1:
2402                                                                           *mut netsnmp_session,
2403                                                                       arg2:
2404                                                                           *mut Struct_netsnmp_transport_s,
2405                                                                       arg3:
2406                                                                           *mut raw::c_void,
2407                                                                       arg4:
2408                                                                           raw::c_int)
2409                                                      ->
2410                                                          raw::c_int>,
2411                        fparse:
2412                            ::std::option::Option<unsafe extern "C" fn(arg1:
2413                                                                           *mut netsnmp_session,
2414                                                                       arg2:
2415                                                                           *mut netsnmp_pdu,
2416                                                                       arg3:
2417                                                                           *mut raw::c_uchar,
2418                                                                       arg4:
2419                                                                           libc::size_t)
2420                                                      ->
2421                                                          raw::c_int>,
2422                        fpost_parse:
2423                            ::std::option::Option<unsafe extern "C" fn(arg1:
2424                                                                           *mut netsnmp_session,
2425                                                                       arg2:
2426                                                                           *mut netsnmp_pdu,
2427                                                                       arg3:
2428                                                                           raw::c_int)
2429                                                      ->
2430                                                          raw::c_int>,
2431                        fbuild:
2432                            ::std::option::Option<unsafe extern "C" fn(arg1:
2433                                                                           *mut netsnmp_session,
2434                                                                       arg2:
2435                                                                           *mut netsnmp_pdu,
2436                                                                       arg3:
2437                                                                           *mut raw::c_uchar,
2438                                                                       arg4:
2439                                                                           *mut libc::size_t)
2440                                                      ->
2441                                                          raw::c_int>,
2442                        frbuild:
2443                            ::std::option::Option<unsafe extern "C" fn(arg1:
2444                                                                           *mut netsnmp_session,
2445                                                                       arg2:
2446                                                                           *mut netsnmp_pdu,
2447                                                                       arg3:
2448                                                                           *mut *mut raw::c_uchar,
2449                                                                       arg4:
2450                                                                           *mut libc::size_t,
2451                                                                       arg5:
2452                                                                           *mut libc::size_t)
2453                                                      ->
2454                                                          raw::c_int>,
2455                        fcheck:
2456                            ::std::option::Option<unsafe extern "C" fn(arg1:
2457                                                                           *mut raw::c_uchar,
2458                                                                       arg2:
2459                                                                           libc::size_t)
2460                                                      ->
2461                                                          raw::c_int>)
2462     -> *mut netsnmp_session;
2463    pub fn netsnmp_sess_log_error(priority: raw::c_int,
2464                                  prog_string: *const raw::c_char,
2465                                  ss: *mut netsnmp_session);
2466    pub fn snmp_pdu_type(_type: raw::c_int)
2467     -> *const raw::c_char;
2468    pub fn snmp_sess_transport(arg1: *mut raw::c_void)
2469     -> *mut Struct_netsnmp_transport_s;
2470    pub fn snmp_sess_transport_set(arg1: *mut raw::c_void,
2471                                   arg2: *mut Struct_netsnmp_transport_s);
2472    pub fn netsnmp_sess_config_transport(transport_configuration:
2473                                             *mut Struct_netsnmp_container_s,
2474                                         transport:
2475                                             *mut Struct_netsnmp_transport_s)
2476     -> raw::c_int;
2477    pub fn netsnmp_sess_config_and_open_transport(in_session:
2478                                                      *mut netsnmp_session,
2479                                                  transport:
2480                                                      *mut Struct_netsnmp_transport_s)
2481     -> raw::c_int;
2482    pub fn snmp_sess_add_ex(arg1: *mut netsnmp_session,
2483                            arg2: *mut Struct_netsnmp_transport_s,
2484                            fpre_parse:
2485                                ::std::option::Option<unsafe extern "C" fn(arg1:
2486                                                                               *mut netsnmp_session,
2487                                                                           arg2:
2488                                                                               *mut Struct_netsnmp_transport_s,
2489                                                                           arg3:
2490                                                                               *mut raw::c_void,
2491                                                                           arg4:
2492                                                                               raw::c_int)
2493                                                          ->
2494                                                              raw::c_int>,
2495                            fparse:
2496                                ::std::option::Option<unsafe extern "C" fn(arg1:
2497                                                                               *mut netsnmp_session,
2498                                                                           arg2:
2499                                                                               *mut Struct_snmp_pdu,
2500                                                                           arg3:
2501                                                                               *mut raw::c_uchar,
2502                                                                           arg4:
2503                                                                               libc::size_t)
2504                                                          ->
2505                                                              raw::c_int>,
2506                            fpost_parse:
2507                                ::std::option::Option<unsafe extern "C" fn(arg1:
2508                                                                               *mut netsnmp_session,
2509                                                                           arg2:
2510                                                                               *mut Struct_snmp_pdu,
2511                                                                           arg3:
2512                                                                               raw::c_int)
2513                                                          ->
2514                                                              raw::c_int>,
2515                            fbuild:
2516                                ::std::option::Option<unsafe extern "C" fn(arg1:
2517                                                                               *mut netsnmp_session,
2518                                                                           arg2:
2519                                                                               *mut Struct_snmp_pdu,
2520                                                                           arg3:
2521                                                                               *mut raw::c_uchar,
2522                                                                           arg4:
2523                                                                               *mut libc::size_t)
2524                                                          ->
2525                                                              raw::c_int>,
2526                            frbuild:
2527                                ::std::option::Option<unsafe extern "C" fn(arg1:
2528                                                                               *mut netsnmp_session,
2529                                                                           arg2:
2530                                                                               *mut Struct_snmp_pdu,
2531                                                                           arg3:
2532                                                                               *mut *mut raw::c_uchar,
2533                                                                           arg4:
2534                                                                               *mut libc::size_t,
2535                                                                           arg5:
2536                                                                               *mut libc::size_t)
2537                                                          ->
2538                                                              raw::c_int>,
2539                            fcheck:
2540                                ::std::option::Option<unsafe extern "C" fn(arg1:
2541                                                                               *mut raw::c_uchar,
2542                                                                           arg2:
2543                                                                               libc::size_t)
2544                                                          ->
2545                                                              raw::c_int>,
2546                            fcreate_pdu:
2547                                ::std::option::Option<unsafe extern "C" fn(arg1:
2548                                                                               *mut Struct_netsnmp_transport_s,
2549                                                                           arg2:
2550                                                                               *mut raw::c_void,
2551                                                                           arg3:
2552                                                                               libc::size_t)
2553                                                          ->
2554                                                              *mut netsnmp_pdu>)
2555     -> *mut raw::c_void;
2556    pub fn snmp_sess_add(arg1: *mut netsnmp_session,
2557                         arg2: *mut Struct_netsnmp_transport_s,
2558                         fpre_parse:
2559                             ::std::option::Option<unsafe extern "C" fn(arg1:
2560                                                                            *mut netsnmp_session,
2561                                                                        arg2:
2562                                                                            *mut Struct_netsnmp_transport_s,
2563                                                                        arg3:
2564                                                                            *mut raw::c_void,
2565                                                                        arg4:
2566                                                                            raw::c_int)
2567                                                       ->
2568                                                           raw::c_int>,
2569                         fpost_parse:
2570                             ::std::option::Option<unsafe extern "C" fn(arg1:
2571                                                                            *mut netsnmp_session,
2572                                                                        arg2:
2573                                                                            *mut netsnmp_pdu,
2574                                                                        arg3:
2575                                                                            raw::c_int)
2576                                                       ->
2577                                                           raw::c_int>)
2578     -> *mut raw::c_void;
2579    pub fn snmp_add(arg1: *mut netsnmp_session,
2580                    arg2: *mut Struct_netsnmp_transport_s,
2581                    fpre_parse:
2582                        ::std::option::Option<unsafe extern "C" fn(arg1:
2583                                                                       *mut netsnmp_session,
2584                                                                   arg2:
2585                                                                       *mut Struct_netsnmp_transport_s,
2586                                                                   arg3:
2587                                                                       *mut raw::c_void,
2588                                                                   arg4:
2589                                                                       raw::c_int)
2590                                                  -> raw::c_int>,
2591                    fpost_parse:
2592                        ::std::option::Option<unsafe extern "C" fn(arg1:
2593                                                                       *mut netsnmp_session,
2594                                                                   arg2:
2595                                                                       *mut netsnmp_pdu,
2596                                                                   arg3:
2597                                                                       raw::c_int)
2598                                                  -> raw::c_int>)
2599     -> *mut netsnmp_session;
2600    pub fn snmp_add_full(in_session: *mut netsnmp_session,
2601                         transport: *mut Struct_netsnmp_transport_s,
2602                         fpre_parse:
2603                             ::std::option::Option<unsafe extern "C" fn(arg1:
2604                                                                            *mut netsnmp_session,
2605                                                                        arg2:
2606                                                                            *mut Struct_netsnmp_transport_s,
2607                                                                        arg3:
2608                                                                            *mut raw::c_void,
2609                                                                        arg4:
2610                                                                            raw::c_int)
2611                                                       ->
2612                                                           raw::c_int>,
2613                         fparse:
2614                             ::std::option::Option<unsafe extern "C" fn(arg1:
2615                                                                            *mut netsnmp_session,
2616                                                                        arg2:
2617                                                                            *mut netsnmp_pdu,
2618                                                                        arg3:
2619                                                                            *mut raw::c_uchar,
2620                                                                        arg4:
2621                                                                            libc::size_t)
2622                                                       ->
2623                                                           raw::c_int>,
2624                         fpost_parse:
2625                             ::std::option::Option<unsafe extern "C" fn(arg1:
2626                                                                            *mut netsnmp_session,
2627                                                                        arg2:
2628                                                                            *mut netsnmp_pdu,
2629                                                                        arg3:
2630                                                                            raw::c_int)
2631                                                       ->
2632                                                           raw::c_int>,
2633                         fbuild:
2634                             ::std::option::Option<unsafe extern "C" fn(arg1:
2635                                                                            *mut netsnmp_session,
2636                                                                        arg2:
2637                                                                            *mut netsnmp_pdu,
2638                                                                        arg3:
2639                                                                            *mut raw::c_uchar,
2640                                                                        arg4:
2641                                                                            *mut libc::size_t)
2642                                                       ->
2643                                                           raw::c_int>,
2644                         frbuild:
2645                             ::std::option::Option<unsafe extern "C" fn(arg1:
2646                                                                            *mut netsnmp_session,
2647                                                                        arg2:
2648                                                                            *mut netsnmp_pdu,
2649                                                                        arg3:
2650                                                                            *mut *mut raw::c_uchar,
2651                                                                        arg4:
2652                                                                            *mut libc::size_t,
2653                                                                        arg5:
2654                                                                            *mut libc::size_t)
2655                                                       ->
2656                                                           raw::c_int>,
2657                         fcheck:
2658                             ::std::option::Option<unsafe extern "C" fn(arg1:
2659                                                                            *mut raw::c_uchar,
2660                                                                        arg2:
2661                                                                            libc::size_t)
2662                                                       ->
2663                                                           raw::c_int>,
2664                         fcreate_pdu:
2665                             ::std::option::Option<unsafe extern "C" fn(arg1:
2666                                                                            *mut Struct_netsnmp_transport_s,
2667                                                                        arg2:
2668                                                                            *mut raw::c_void,
2669                                                                        arg3:
2670                                                                            libc::size_t)
2671                                                       -> *mut netsnmp_pdu>)
2672     -> *mut netsnmp_session;
2673    pub fn snmp_comstr_parse(arg1: *mut raw::c_uchar, arg2: *mut libc::size_t,
2674                             arg3: *mut raw::c_uchar, arg4: *mut libc::size_t,
2675                             arg5: *mut raw::c_long)
2676     -> *mut raw::c_uchar;
2677    pub fn snmp_comstr_build(arg1: *mut raw::c_uchar, arg2: *mut libc::size_t,
2678                             arg3: *mut raw::c_uchar, arg4: *mut libc::size_t,
2679                             arg5: *mut raw::c_long, arg6: libc::size_t)
2680     -> *mut raw::c_uchar;
2681    pub fn has_access(arg1: raw::c_uchar, arg2: raw::c_int,
2682                      arg3: raw::c_int,
2683                      arg4: raw::c_int) -> raw::c_int;
2684    pub fn uptime_string(arg1: raw::c_ulong, arg2: *mut raw::c_char)
2685     -> *mut raw::c_char;
2686    pub fn uptime_string_n(arg1: raw::c_ulong, arg2: *mut raw::c_char,
2687                           arg3: libc::size_t) -> *mut raw::c_char;
2688    pub fn xdump(arg1: *const raw::c_void, arg2: libc::size_t,
2689                 arg3: *const raw::c_char);
2690    pub fn snmp_parse_var_op(arg1: *mut raw::c_uchar, arg2: *mut oid,
2691                             arg3: *mut libc::size_t, arg4: *mut raw::c_uchar,
2692                             arg5: *mut libc::size_t, arg6: *mut *mut raw::c_uchar,
2693                             arg7: *mut libc::size_t) -> *mut raw::c_uchar;
2694    pub fn snmp_build_var_op(arg1: *mut raw::c_uchar, arg2: *mut oid,
2695                             arg3: *mut libc::size_t, arg4: raw::c_uchar, arg5: libc::size_t,
2696                             arg6: *mut raw::c_uchar, arg7: *mut libc::size_t)
2697     -> *mut raw::c_uchar;
2698    pub fn snmp_realloc_rbuild_var_op(pkt: *mut *mut raw::c_uchar,
2699                                      pkt_len: *mut libc::size_t,
2700                                      offset: *mut libc::size_t,
2701                                      allow_realloc: raw::c_int,
2702                                      name: *const oid, name_len: *mut libc::size_t,
2703                                      value_type: raw::c_uchar, value: *mut raw::c_uchar,
2704                                      value_length: libc::size_t)
2705     -> raw::c_int;
2706    pub fn netsnmp_dateandtime_set_buf_from_vars(buf: *mut raw::c_uchar,
2707                                                 bufsize: *mut libc::size_t,
2708                                                 y: raw::c_ushort, mon: raw::c_uchar,
2709                                                 d: raw::c_uchar, h: raw::c_uchar,
2710                                                 min: raw::c_uchar, s: raw::c_uchar,
2711                                                 deci_seconds: raw::c_uchar,
2712                                                 utc_offset_direction:
2713                                                     raw::c_int,
2714                                                 utc_offset_hours: raw::c_uchar,
2715                                                 utc_offset_minutes: raw::c_uchar)
2716     -> raw::c_int;
2717    pub fn date_n_time(arg1: *const libc::time_t, arg2: *mut libc::size_t) -> *mut raw::c_uchar;
2718    pub fn ctime_to_timet(arg1: *const raw::c_char) -> libc::time_t;
2719    pub fn check_rowstatus_transition(old_val: raw::c_int,
2720                                      new_val: raw::c_int)
2721     -> raw::c_char;
2722    pub fn check_rowstatus_with_storagetype_transition(old_val:
2723                                                           raw::c_int,
2724                                                       new_val:
2725                                                           raw::c_int,
2726                                                       old_storage:
2727                                                           raw::c_int)
2728     -> raw::c_char;
2729    pub fn check_storage_transition(old_val: raw::c_int,
2730                                    new_val: raw::c_int)
2731     -> raw::c_char;
2732    pub fn snmp_sess_init(arg1: *mut netsnmp_session);
2733    pub fn snmp_open(arg1: *mut netsnmp_session) -> *mut netsnmp_session;
2734    pub fn snmp_close(arg1: *mut netsnmp_session) -> raw::c_int;
2735    pub fn snmp_close_sessions() -> raw::c_int;
2736    pub fn snmp_send(arg1: *mut netsnmp_session, arg2: *mut netsnmp_pdu)
2737     -> raw::c_int;
2738    pub fn snmp_async_send(arg1: *mut netsnmp_session, arg2: *mut netsnmp_pdu,
2739                           arg3: netsnmp_callback,
2740                           arg4: *mut raw::c_void)
2741     -> raw::c_int;
2742    pub fn snmp_read(arg1: *mut libc::fd_set);
2743    pub fn snmp_read2(arg1: *mut netsnmp_large_fd_set);
2744    pub fn snmp_synch_response(arg1: *mut netsnmp_session,
2745                               arg2: *mut netsnmp_pdu,
2746                               arg3: *mut *mut netsnmp_pdu)
2747     -> raw::c_int;
2748    pub fn snmp_select_info(arg1: *mut raw::c_int,
2749                            arg2: *mut libc::fd_set, arg3: *mut libc::timeval,
2750                            arg4: *mut raw::c_int)
2751     -> raw::c_int;
2752    pub fn snmp_select_info2(arg1: *mut raw::c_int,
2753                             arg2: *mut netsnmp_large_fd_set,
2754                             arg3: *mut libc::timeval,
2755                             arg4: *mut raw::c_int)
2756     -> raw::c_int;
2757    pub fn snmp_sess_select_info_flags(arg1: *mut raw::c_void,
2758                                       arg2: *mut raw::c_int,
2759                                       arg3: *mut libc::fd_set,
2760                                       arg4: *mut libc::timeval,
2761                                       arg5: *mut raw::c_int,
2762                                       arg6: raw::c_int)
2763     -> raw::c_int;
2764    pub fn snmp_sess_select_info2_flags(arg1: *mut raw::c_void,
2765                                        arg2: *mut raw::c_int,
2766                                        arg3: *mut netsnmp_large_fd_set,
2767                                        arg4: *mut libc::timeval,
2768                                        arg5: *mut raw::c_int,
2769                                        arg6: raw::c_int)
2770     -> raw::c_int;
2771    pub fn snmp_timeout();
2772    pub fn snmp_sess_open(arg1: *mut netsnmp_session)
2773     -> *mut raw::c_void;
2774    pub fn snmp_sess_pointer(arg1: *mut netsnmp_session)
2775     -> *mut raw::c_void;
2776    pub fn snmp_sess_session(arg1: *mut raw::c_void)
2777     -> *mut netsnmp_session;
2778    pub fn snmp_sess_session_lookup(arg1: *mut raw::c_void)
2779     -> *mut netsnmp_session;
2780    pub fn snmp_sess_send(arg1: *mut raw::c_void,
2781                          arg2: *mut netsnmp_pdu) -> raw::c_int;
2782    pub fn snmp_sess_async_send(arg1: *mut raw::c_void,
2783                                arg2: *mut netsnmp_pdu,
2784                                arg3: netsnmp_callback,
2785                                arg4: *mut raw::c_void)
2786     -> raw::c_int;
2787    pub fn snmp_sess_select_info(arg1: *mut raw::c_void,
2788                                 arg2: *mut raw::c_int,
2789                                 arg3: *mut libc::fd_set, arg4: *mut libc::timeval,
2790                                 arg5: *mut raw::c_int)
2791     -> raw::c_int;
2792    pub fn snmp_sess_select_info2(arg1: *mut raw::c_void,
2793                                  arg2: *mut raw::c_int,
2794                                  arg3: *mut netsnmp_large_fd_set,
2795                                  arg4: *mut libc::timeval,
2796                                  arg5: *mut raw::c_int)
2797     -> raw::c_int;
2798    pub fn snmp_sess_read(arg1: *mut raw::c_void,
2799                          arg2: *mut libc::fd_set) -> raw::c_int;
2800    pub fn snmp_sess_read2(arg1: *mut raw::c_void,
2801                           arg2: *mut netsnmp_large_fd_set)
2802     -> raw::c_int;
2803    pub fn snmp_sess_timeout(arg1: *mut raw::c_void);
2804    pub fn snmp_sess_close(arg1: *mut raw::c_void)
2805     -> raw::c_int;
2806    pub fn snmp_sess_synch_response(arg1: *mut raw::c_void,
2807                                    arg2: *mut netsnmp_pdu,
2808                                    arg3: *mut *mut netsnmp_pdu)
2809     -> raw::c_int;
2810    pub fn init_snmp_transport();
2811    pub fn netsnmp_transport_peer_string(t: *mut netsnmp_transport,
2812                                         data: *mut raw::c_void,
2813                                         len: raw::c_int)
2814     -> *mut raw::c_char;
2815    pub fn netsnmp_transport_send(t: *mut netsnmp_transport,
2816                                  data: *mut raw::c_void,
2817                                  len: raw::c_int,
2818                                  opaque: *mut *mut raw::c_void,
2819                                  olength: *mut raw::c_int)
2820     -> raw::c_int;
2821    pub fn netsnmp_transport_recv(t: *mut netsnmp_transport,
2822                                  data: *mut raw::c_void,
2823                                  len: raw::c_int,
2824                                  opaque: *mut *mut raw::c_void,
2825                                  olength: *mut raw::c_int)
2826     -> raw::c_int;
2827    pub fn netsnmp_transport_add_to_list(transport_list:
2828                                             *mut *mut netsnmp_transport_list,
2829                                         transport: *mut netsnmp_transport)
2830     -> raw::c_int;
2831    pub fn netsnmp_transport_remove_from_list(transport_list:
2832                                                  *mut *mut netsnmp_transport_list,
2833                                              transport:
2834                                                  *mut netsnmp_transport)
2835     -> raw::c_int;
2836    pub fn netsnmp_transport_copy(t: *mut netsnmp_transport)
2837     -> *mut netsnmp_transport;
2838    pub fn netsnmp_transport_free(t: *mut netsnmp_transport);
2839    pub fn netsnmp_tdomain_support(in_oid: *const oid, in_len: libc::size_t,
2840                                   out_oid: *mut *const oid,
2841                                   out_len: *mut libc::size_t)
2842     -> raw::c_int;
2843    pub fn netsnmp_tdomain_register(domain: *mut netsnmp_tdomain)
2844     -> raw::c_int;
2845    pub fn netsnmp_tdomain_unregister(domain: *mut netsnmp_tdomain)
2846     -> raw::c_int;
2847    pub fn netsnmp_clear_tdomain_list();
2848    pub fn netsnmp_tdomain_init();
2849    pub fn netsnmp_tdomain_transport(str: *const raw::c_char,
2850                                     local: raw::c_int,
2851                                     default_domain:
2852                                         *const raw::c_char)
2853     -> *mut netsnmp_transport;
2854    pub fn netsnmp_tdomain_transport_full(application:
2855                                              *const raw::c_char,
2856                                          str: *const raw::c_char,
2857                                          local: raw::c_int,
2858                                          default_domain:
2859                                              *const raw::c_char,
2860                                          default_target:
2861                                              *const raw::c_char)
2862     -> *mut netsnmp_transport;
2863    pub fn netsnmp_tdomain_transport_oid(dom: *const oid, dom_len: libc::size_t,
2864                                         o: *const raw::c_uchar, o_len: libc::size_t,
2865                                         local: raw::c_int)
2866     -> *mut netsnmp_transport;
2867    pub fn netsnmp_transport_open_client(application:
2868                                             *const raw::c_char,
2869                                         str: *const raw::c_char)
2870     -> *mut netsnmp_transport;
2871    pub fn netsnmp_transport_open_server(application:
2872                                             *const raw::c_char,
2873                                         str: *const raw::c_char)
2874     -> *mut netsnmp_transport;
2875    pub fn netsnmp_transport_open(application: *const raw::c_char,
2876                                  str: *const raw::c_char,
2877                                  local: raw::c_int)
2878     -> *mut netsnmp_transport;
2879    pub fn netsnmp_transport_config_compare(left:
2880                                                *mut netsnmp_transport_config,
2881                                            right:
2882                                                *mut netsnmp_transport_config)
2883     -> raw::c_int;
2884    pub fn netsnmp_transport_create_config(key: *mut raw::c_char,
2885                                           value: *mut raw::c_char)
2886     -> *mut netsnmp_transport_config;
2887    pub fn netsnmp_register_default_domain(application:
2888                                               *const raw::c_char,
2889                                           domain:
2890                                               *const raw::c_char)
2891     -> raw::c_int;
2892    pub fn netsnmp_lookup_default_domain(application:
2893                                             *const raw::c_char)
2894     -> *const raw::c_char;
2895    pub fn netsnmp_lookup_default_domains(application:
2896                                              *const raw::c_char)
2897     -> *const *const raw::c_char;
2898    pub fn netsnmp_clear_default_domain();
2899    pub fn netsnmp_register_default_target(application:
2900                                               *const raw::c_char,
2901                                           domain:
2902                                               *const raw::c_char,
2903                                           target:
2904                                               *const raw::c_char)
2905     -> raw::c_int;
2906    pub fn netsnmp_lookup_default_target(application:
2907                                             *const raw::c_char,
2908                                         domain:
2909                                             *const raw::c_char)
2910     -> *const raw::c_char;
2911    pub fn netsnmp_clear_default_target();
2912    pub fn netsnmp_register_service_handlers();
2913    pub fn netsnmp_callback_transport(arg1: raw::c_int)
2914     -> *mut netsnmp_transport;
2915    pub fn netsnmp_callback_hook_parse(sp: *mut netsnmp_session,
2916                                       pdu: *mut netsnmp_pdu,
2917                                       packetptr: *mut raw::c_uchar, len: libc::size_t)
2918     -> raw::c_int;
2919    pub fn netsnmp_callback_hook_build(sp: *mut netsnmp_session,
2920                                       pdu: *mut netsnmp_pdu,
2921                                       ptk: *mut raw::c_uchar, len: *mut libc::size_t)
2922     -> raw::c_int;
2923    pub fn netsnmp_callback_check_packet(pkt: *mut raw::c_uchar, len: libc::size_t)
2924     -> raw::c_int;
2925    pub fn netsnmp_callback_create_pdu(transport: *mut netsnmp_transport,
2926                                       opaque: *mut raw::c_void,
2927                                       olength: libc::size_t) -> *mut netsnmp_pdu;
2928    pub fn netsnmp_callback_open(attach_to: raw::c_int,
2929                                 return_func:
2930                                     ::std::option::Option<unsafe extern "C" fn(op:
2931                                                                                    raw::c_int,
2932                                                                                session:
2933                                                                                    *mut netsnmp_session,
2934                                                                                reqid:
2935                                                                                    raw::c_int,
2936                                                                                pdu:
2937                                                                                    *mut netsnmp_pdu,
2938                                                                                magic:
2939                                                                                    *mut raw::c_void)
2940                                                               ->
2941                                                                   raw::c_int>,
2942                                 fpre_parse:
2943                                     ::std::option::Option<unsafe extern "C" fn(arg1:
2944                                                                                    *mut netsnmp_session,
2945                                                                                arg2:
2946                                                                                    *mut Struct_netsnmp_transport_s,
2947                                                                                arg3:
2948                                                                                    *mut raw::c_void,
2949                                                                                arg4:
2950                                                                                    raw::c_int)
2951                                                               ->
2952                                                                   raw::c_int>,
2953                                 fpost_parse:
2954                                     ::std::option::Option<unsafe extern "C" fn(arg1:
2955                                                                                    *mut netsnmp_session,
2956                                                                                arg2:
2957                                                                                    *mut netsnmp_pdu,
2958                                                                                arg3:
2959                                                                                    raw::c_int)
2960                                                               ->
2961                                                                   raw::c_int>)
2962     -> *mut netsnmp_session;
2963    pub fn netsnmp_clear_callback_list();
2964    pub fn netsnmp_unix_transport(addr: *mut libc::sockaddr_un,
2965                                  local: raw::c_int)
2966     -> *mut netsnmp_transport;
2967    pub fn netsnmp_unix_agent_config_tokens_register();
2968    pub fn netsnmp_unix_parse_security(token: *const raw::c_char,
2969                                       param: *mut raw::c_char);
2970    pub fn netsnmp_unix_getSecName(opaque: *mut raw::c_void,
2971                                   olength: raw::c_int,
2972                                   community: *const raw::c_char,
2973                                   community_len: libc::size_t,
2974                                   secName:
2975                                       *mut *const raw::c_char,
2976                                   contextName:
2977                                       *mut *const raw::c_char)
2978     -> raw::c_int;
2979    pub fn netsnmp_unix_ctor();
2980    pub fn netsnmp_unix_create_path_with_mode(mode: raw::c_int);
2981    pub fn netsnmp_unix_dont_create_path();
2982    pub fn netsnmp_ipv4_fmtaddr(prefix: *const raw::c_char,
2983                                t: *mut netsnmp_transport,
2984                                data: *mut raw::c_void,
2985                                len: raw::c_int)
2986     -> *mut raw::c_char;
2987    pub fn netsnmp_sockaddr_in(addr: *mut libc::sockaddr_in,
2988                               peername: *const raw::c_char,
2989                               remote_port: raw::c_int)
2990     -> raw::c_int;
2991    pub fn netsnmp_sockaddr_in2(addr: *mut libc::sockaddr_in,
2992                                inpeername: *const raw::c_char,
2993                                default_target: *const raw::c_char)
2994     -> raw::c_int;
2995    pub fn _netsnmp_udp_sockopt_set(fd: raw::c_int,
2996                                    local: raw::c_int);
2997    pub fn netsnmp_udpbase_recv(t: *mut netsnmp_transport,
2998                                buf: *mut raw::c_void,
2999                                size: raw::c_int,
3000                                opaque: *mut *mut raw::c_void,
3001                                olength: *mut raw::c_int)
3002     -> raw::c_int;
3003    pub fn netsnmp_udpbase_send(t: *mut netsnmp_transport,
3004                                buf: *mut raw::c_void,
3005                                size: raw::c_int,
3006                                opaque: *mut *mut raw::c_void,
3007                                olength: *mut raw::c_int)
3008     -> raw::c_int;
3009    pub fn netsnmp_udpbase_recvfrom(s: raw::c_int,
3010                                    buf: *mut raw::c_void,
3011                                    len: raw::c_int,
3012                                    from: *mut libc::sockaddr,
3013                                    fromlen: *mut libc::socklen_t,
3014                                    dstip: *mut libc::sockaddr,
3015                                    dstlen: *mut libc::socklen_t,
3016                                    if_index: *mut raw::c_int)
3017     -> raw::c_int;
3018    pub fn netsnmp_udpbase_sendto(fd: raw::c_int,
3019                                  srcip: *mut libc::in_addr,
3020                                  if_index: raw::c_int,
3021                                  remote: *mut libc::sockaddr,
3022                                  data: *mut raw::c_void,
3023                                  len: raw::c_int)
3024     -> raw::c_int;
3025    pub fn netsnmp_udpipv4base_transport(addr: *mut libc::sockaddr_in,
3026                                         local: raw::c_int)
3027     -> *mut netsnmp_transport;
3028    pub fn netsnmp_udpipv4_recvfrom(s: raw::c_int,
3029                                    buf: *mut raw::c_void,
3030                                    len: raw::c_int,
3031                                    from: *mut libc::sockaddr,
3032                                    fromlen: *mut libc::socklen_t,
3033                                    dstip: *mut libc::sockaddr,
3034                                    dstlen: *mut libc::socklen_t,
3035                                    if_index: *mut raw::c_int)
3036     -> raw::c_int;
3037    pub fn netsnmp_udpipv4_sendto(fd: raw::c_int,
3038                                  srcip: *mut libc::in_addr,
3039                                  if_index: raw::c_int,
3040                                  remote: *mut libc::sockaddr,
3041                                  data: *mut raw::c_void,
3042                                  len: raw::c_int)
3043     -> raw::c_int;
3044    pub fn netsnmp_udp_transport(addr: *mut libc::sockaddr_in,
3045                                 local: raw::c_int)
3046     -> *mut netsnmp_transport;
3047    pub fn netsnmp_udp_agent_config_tokens_register();
3048    pub fn netsnmp_udp_parse_security(token: *const raw::c_char,
3049                                      param: *mut raw::c_char);
3050    pub fn netsnmp_udp_getSecName(opaque: *mut raw::c_void,
3051                                  olength: raw::c_int,
3052                                  community: *const raw::c_char,
3053                                  community_len: libc::size_t,
3054                                  secname: *mut *const raw::c_char,
3055                                  contextName:
3056                                      *mut *const raw::c_char)
3057     -> raw::c_int;
3058    pub fn netsnmp_udp_ctor();
3059    pub fn netsnmp_udp_fmtaddr(t: *mut netsnmp_transport,
3060                               data: *mut raw::c_void,
3061                               len: raw::c_int)
3062     -> *mut raw::c_char;
3063    pub fn netsnmp_udp_recvfrom(s: raw::c_int,
3064                                buf: *mut raw::c_void,
3065                                len: raw::c_int,
3066                                from: *mut libc::sockaddr,
3067                                fromlen: *mut libc::socklen_t,
3068                                dstip: *mut libc::sockaddr,
3069                                dstlen: *mut libc::socklen_t,
3070                                if_index: *mut raw::c_int)
3071     -> raw::c_int;
3072    pub fn netsnmp_udp_sendto(fd: raw::c_int,
3073                              srcip: *mut libc::in_addr,
3074                              if_index: raw::c_int,
3075                              remote: *mut libc::sockaddr,
3076                              data: *mut raw::c_void,
3077                              len: raw::c_int)
3078     -> raw::c_int;
3079    pub fn netsnmp_tcp_transport(addr: *mut libc::sockaddr_in,
3080                                 local: raw::c_int)
3081     -> *mut netsnmp_transport;
3082    pub fn netsnmp_tcp_ctor();
3083    pub fn netsnmp_ipv6_fmtaddr(prefix: *const raw::c_char,
3084                                t: *mut netsnmp_transport,
3085                                data: *mut raw::c_void,
3086                                len: raw::c_int)
3087     -> *mut raw::c_char;
3088    pub fn netsnmp_sockaddr_in6_2(addr: *mut libc::sockaddr_in6,
3089                                  inpeername: *const raw::c_char,
3090                                  default_target:
3091                                      *const raw::c_char)
3092     -> raw::c_int;
3093    pub fn netsnmp_sockaddr_in6(addr: *mut libc::sockaddr_in6,
3094                                peername: *const raw::c_char,
3095                                remote_port: raw::c_int)
3096     -> raw::c_int;
3097    pub fn snmp_udp6_transport(addr: *mut libc::sockaddr_in6,
3098                               local: raw::c_int)
3099     -> *mut netsnmp_transport;
3100    pub fn netsnmp_udp6_agent_config_tokens_register();
3101    pub fn netsnmp_udp6_parse_security(token: *const raw::c_char,
3102                                       param: *mut raw::c_char);
3103    pub fn netsnmp_udp6_getSecName(opaque: *mut raw::c_void,
3104                                   olength: raw::c_int,
3105                                   community: *const raw::c_char,
3106                                   community_len: raw::c_int,
3107                                   secname:
3108                                       *mut *const raw::c_char,
3109                                   contextName:
3110                                       *mut *const raw::c_char)
3111     -> raw::c_int;
3112    pub fn netsnmp_udpipv6_ctor();
3113    pub fn netsnmp_tcp6_transport(addr: *mut libc::sockaddr_in6,
3114                                  local: raw::c_int)
3115     -> *mut netsnmp_transport;
3116    pub fn netsnmp_tcpipv6_ctor();
3117    pub fn register_config_handler(filePrefix: *const raw::c_char,
3118                                   token: *const raw::c_char,
3119                                   parser:
3120                                       ::std::option::Option<unsafe extern "C" fn(arg1:
3121                                                                                      *const raw::c_char,
3122                                                                                  arg2:
3123                                                                                      *mut raw::c_char)>,
3124                                   releaser:
3125                                       ::std::option::Option<extern "C" fn()>,
3126                                   usageLine: *const raw::c_char)
3127     -> *mut Struct_config_line;
3128    pub fn register_const_config_handler(filePrefix:
3129                                             *const raw::c_char,
3130                                         token: *const raw::c_char,
3131                                         parser:
3132                                             ::std::option::Option<unsafe extern "C" fn(arg1:
3133                                                                                            *const raw::c_char,
3134                                                                                        arg2:
3135                                                                                            *const raw::c_char)>,
3136                                         releaser:
3137                                             ::std::option::Option<extern "C" fn()>,
3138                                         usageLine:
3139                                             *const raw::c_char)
3140     -> *mut Struct_config_line;
3141    pub fn register_prenetsnmp_mib_handler(filePrefix:
3142                                               *const raw::c_char,
3143                                           token:
3144                                               *const raw::c_char,
3145                                           parser:
3146                                               ::std::option::Option<unsafe extern "C" fn(arg1:
3147                                                                                              *const raw::c_char,
3148                                                                                          arg2:
3149                                                                                              *mut raw::c_char)>,
3150                                           releaser:
3151                                               ::std::option::Option<extern "C" fn()>,
3152                                           usageLine:
3153                                               *const raw::c_char)
3154     -> *mut Struct_config_line;
3155    pub fn unregister_config_handler(filePrefix:
3156                                         *const raw::c_char,
3157                                     token: *const raw::c_char);
3158    pub fn unregister_all_config_handlers();
3159    pub fn register_app_config_handler(token: *const raw::c_char,
3160                                       parser:
3161                                           ::std::option::Option<unsafe extern "C" fn(arg1:
3162                                                                                          *const raw::c_char,
3163                                                                                      arg2:
3164                                                                                          *mut raw::c_char)>,
3165                                       releaser:
3166                                           ::std::option::Option<extern "C" fn()>,
3167                                       usageLine:
3168                                           *const raw::c_char)
3169     -> *mut Struct_config_line;
3170    pub fn register_app_prenetsnmp_mib_handler(token:
3171                                                   *const raw::c_char,
3172                                               parser:
3173                                                   ::std::option::Option<unsafe extern "C" fn(arg1:
3174                                                                                                  *const raw::c_char,
3175                                                                                              arg2:
3176                                                                                                  *mut raw::c_char)>,
3177                                               releaser:
3178                                                   ::std::option::Option<extern "C" fn()>,
3179                                               usageLine:
3180                                                   *const raw::c_char)
3181     -> *mut Struct_config_line;
3182    pub fn unregister_app_config_handler(token:
3183                                             *const raw::c_char);
3184    pub fn read_configs();
3185    pub fn read_premib_configs();
3186    pub fn read_config_print_usage(lead: *const raw::c_char);
3187    pub fn config_perror(arg1: *const raw::c_char);
3188    pub fn config_pwarn(arg1: *const raw::c_char);
3189    pub fn netsnmp_config(arg1: *mut raw::c_char)
3190     -> raw::c_int;
3191    pub fn netsnmp_config_remember(arg1: *mut raw::c_char);
3192    pub fn netsnmp_config_process_memories();
3193    pub fn read_config(arg1: *const raw::c_char,
3194                       arg2: *mut Struct_config_line,
3195                       arg3: raw::c_int) -> raw::c_int;
3196    pub fn read_config_files(arg1: raw::c_int)
3197     -> raw::c_int;
3198    pub fn free_config();
3199    pub fn netsnmp_config_error(arg1: *const raw::c_char, ...);
3200    pub fn netsnmp_config_warn(arg1: *const raw::c_char, ...);
3201    pub fn skip_white(arg1: *mut raw::c_char)
3202     -> *mut raw::c_char;
3203    pub fn skip_white_const(arg1: *const raw::c_char)
3204     -> *const raw::c_char;
3205    pub fn skip_not_white(arg1: *mut raw::c_char)
3206     -> *mut raw::c_char;
3207    pub fn skip_not_white_const(arg1: *const raw::c_char)
3208     -> *const raw::c_char;
3209    pub fn skip_token(arg1: *mut raw::c_char)
3210     -> *mut raw::c_char;
3211    pub fn skip_token_const(arg1: *const raw::c_char)
3212     -> *const raw::c_char;
3213    pub fn copy_nword(arg1: *mut raw::c_char,
3214                      arg2: *mut raw::c_char,
3215                      arg3: raw::c_int)
3216     -> *mut raw::c_char;
3217    pub fn copy_nword_const(arg1: *const raw::c_char,
3218                            arg2: *mut raw::c_char,
3219                            arg3: raw::c_int)
3220     -> *const raw::c_char;
3221    pub fn copy_word(arg1: *mut raw::c_char,
3222                     arg2: *mut raw::c_char)
3223     -> *mut raw::c_char;
3224    pub fn read_config_with_type(arg1: *const raw::c_char,
3225                                 arg2: *const raw::c_char)
3226     -> raw::c_int;
3227    pub fn read_config_save_octet_string(saveto: *mut raw::c_char,
3228                                         str: *mut raw::c_uchar, len: libc::size_t)
3229     -> *mut raw::c_char;
3230    pub fn read_config_read_octet_string(readfrom:
3231                                             *const raw::c_char,
3232                                         str: *mut *mut raw::c_uchar,
3233                                         len: *mut libc::size_t)
3234     -> *mut raw::c_char;
3235    pub fn read_config_read_octet_string_const(readfrom:
3236                                                   *const raw::c_char,
3237                                               str: *mut *mut raw::c_uchar,
3238                                               len: *mut libc::size_t)
3239     -> *const raw::c_char;
3240    pub fn read_config_read_objid(readfrom: *mut raw::c_char,
3241                                  objid: *mut *mut oid, len: *mut libc::size_t)
3242     -> *mut raw::c_char;
3243    pub fn read_config_read_objid_const(readfrom:
3244                                            *const raw::c_char,
3245                                        objid: *mut *mut oid,
3246                                        len: *mut libc::size_t)
3247     -> *const raw::c_char;
3248    pub fn read_config_save_objid(saveto: *mut raw::c_char,
3249                                  objid: *mut oid, len: libc::size_t)
3250     -> *mut raw::c_char;
3251    pub fn read_config_read_data(_type: raw::c_int,
3252                                 readfrom: *mut raw::c_char,
3253                                 dataptr: *mut raw::c_void,
3254                                 len: *mut libc::size_t)
3255     -> *mut raw::c_char;
3256    pub fn read_config_read_memory(_type: raw::c_int,
3257                                   readfrom: *mut raw::c_char,
3258                                   dataptr: *mut raw::c_char,
3259                                   len: *mut libc::size_t)
3260     -> *mut raw::c_char;
3261    pub fn read_config_store_data(_type: raw::c_int,
3262                                  storeto: *mut raw::c_char,
3263                                  dataptr: *mut raw::c_void,
3264                                  len: *mut libc::size_t)
3265     -> *mut raw::c_char;
3266    pub fn read_config_store_data_prefix(prefix: raw::c_char,
3267                                         _type: raw::c_int,
3268                                         storeto: *mut raw::c_char,
3269                                         dataptr: *mut raw::c_void,
3270                                         len: libc::size_t)
3271     -> *mut raw::c_char;
3272    pub fn read_config_files_of_type(when: raw::c_int,
3273                                     ctmp: *mut Struct_config_files)
3274     -> raw::c_int;
3275    pub fn read_config_store(_type: *const raw::c_char,
3276                             line: *const raw::c_char);
3277    pub fn read_app_config_store(line: *const raw::c_char);
3278    pub fn snmp_save_persistent(_type: *const raw::c_char);
3279    pub fn snmp_clean_persistent(_type: *const raw::c_char);
3280    pub fn read_config_get_handlers(_type: *const raw::c_char)
3281     -> *mut Struct_config_line;
3282    pub fn snmp_config_remember_in_list(line: *mut raw::c_char,
3283                                        mem:
3284                                            *mut *mut Struct_read_config_memory);
3285    pub fn snmp_config_process_memory_list(mem:
3286                                               *mut *mut Struct_read_config_memory,
3287                                           arg1: raw::c_int,
3288                                           arg2: raw::c_int);
3289    pub fn snmp_config_remember_free_list(mem:
3290                                              *mut *mut Struct_read_config_memory);
3291    pub fn set_configuration_directory(dir: *const raw::c_char);
3292    pub fn get_configuration_directory() -> *const raw::c_char;
3293    pub fn set_persistent_directory(dir: *const raw::c_char);
3294    pub fn get_persistent_directory() -> *const raw::c_char;
3295    pub fn set_temp_file_pattern(pattern: *const raw::c_char);
3296    pub fn get_temp_file_pattern() -> *const raw::c_char;
3297    pub fn handle_long_opt(myoptarg: *const raw::c_char);
3298    pub fn netsnmp_ds_set_boolean(storeid: raw::c_int,
3299                                  which: raw::c_int,
3300                                  value: raw::c_int)
3301     -> raw::c_int;
3302    pub fn netsnmp_ds_get_boolean(storeid: raw::c_int,
3303                                  which: raw::c_int)
3304     -> raw::c_int;
3305    pub fn netsnmp_ds_toggle_boolean(storeid: raw::c_int,
3306                                     which: raw::c_int)
3307     -> raw::c_int;
3308    pub fn netsnmp_ds_set_int(storeid: raw::c_int,
3309                              which: raw::c_int,
3310                              value: raw::c_int)
3311     -> raw::c_int;
3312    pub fn netsnmp_ds_get_int(storeid: raw::c_int,
3313                              which: raw::c_int)
3314     -> raw::c_int;
3315    pub fn netsnmp_ds_set_string(storeid: raw::c_int,
3316                                 which: raw::c_int,
3317                                 value: *const raw::c_char)
3318     -> raw::c_int;
3319    pub fn netsnmp_ds_get_string(storeid: raw::c_int,
3320                                 which: raw::c_int)
3321     -> *mut raw::c_char;
3322    pub fn netsnmp_ds_set_void(storeid: raw::c_int,
3323                               which: raw::c_int,
3324                               value: *mut raw::c_void)
3325     -> raw::c_int;
3326    pub fn netsnmp_ds_get_void(storeid: raw::c_int,
3327                               which: raw::c_int)
3328     -> *mut raw::c_void;
3329    pub fn netsnmp_ds_register_config(_type: raw::c_uchar,
3330                                      ftype: *const raw::c_char,
3331                                      token: *const raw::c_char,
3332                                      storeid: raw::c_int,
3333                                      which: raw::c_int)
3334     -> raw::c_int;
3335    pub fn netsnmp_ds_register_premib(_type: raw::c_uchar,
3336                                      ftype: *const raw::c_char,
3337                                      token: *const raw::c_char,
3338                                      storeid: raw::c_int,
3339                                      which: raw::c_int)
3340     -> raw::c_int;
3341    pub fn netsnmp_ds_parse_boolean(line: *mut raw::c_char)
3342     -> raw::c_int;
3343    pub fn netsnmp_ds_shutdown();
3344    pub fn netsnmp_parse_args(argc: raw::c_int,
3345                              argv: *mut *mut raw::c_char,
3346                              session: *mut netsnmp_session,
3347                              localOpts: *const raw::c_char,
3348                              _proc:
3349                                  ::std::option::Option<unsafe extern "C" fn(arg1:
3350                                                                                 raw::c_int,
3351                                                                             arg2:
3352                                                                                 *const *mut raw::c_char,
3353                                                                             arg3:
3354                                                                                 raw::c_int)>,
3355                              flags: raw::c_int)
3356     -> raw::c_int;
3357    pub fn snmp_parse_args(argc: raw::c_int,
3358                           argv: *mut *mut raw::c_char,
3359                           session: *mut netsnmp_session,
3360                           localOpts: *const raw::c_char,
3361                           _proc:
3362                               ::std::option::Option<unsafe extern "C" fn(arg1:
3363                                                                              raw::c_int,
3364                                                                          arg2:
3365                                                                              *const *mut raw::c_char,
3366                                                                          arg3:
3367                                                                              raw::c_int)>)
3368     -> raw::c_int;
3369    pub fn snmp_parse_args_descriptions(arg1: *mut libc::FILE);
3370    pub fn snmp_parse_args_usage(arg1: *mut libc::FILE);
3371    pub fn init_snmp_enum(_type: *const raw::c_char)
3372     -> raw::c_int;
3373    pub fn se_find_list(major: raw::c_uint,
3374                        minor: raw::c_uint)
3375     -> *mut Struct_snmp_enum_list;
3376    pub fn se_find_slist(listname: *const raw::c_char)
3377     -> *mut Struct_snmp_enum_list;
3378    pub fn se_store_in_list(arg1: *mut Struct_snmp_enum_list,
3379                            major: raw::c_uint,
3380                            minor: raw::c_uint)
3381     -> raw::c_int;
3382    pub fn se_find_value(major: raw::c_uint,
3383                         minor: raw::c_uint,
3384                         label: *const raw::c_char)
3385     -> raw::c_int;
3386    pub fn se_find_free_value(major: raw::c_uint,
3387                              minor: raw::c_uint)
3388     -> raw::c_int;
3389    pub fn se_find_label(major: raw::c_uint,
3390                         minor: raw::c_uint,
3391                         value: raw::c_int)
3392     -> *mut raw::c_char;
3393    pub fn se_add_pair(major: raw::c_uint,
3394                       minor: raw::c_uint,
3395                       label: *mut raw::c_char,
3396                       value: raw::c_int) -> raw::c_int;
3397    pub fn se_find_label_in_slist(listname: *const raw::c_char,
3398                                  value: raw::c_int)
3399     -> *mut raw::c_char;
3400    pub fn se_find_value_in_slist(listname: *const raw::c_char,
3401                                  label: *const raw::c_char)
3402     -> raw::c_int;
3403    pub fn se_find_free_value_in_slist(listname:
3404                                           *const raw::c_char)
3405     -> raw::c_int;
3406    pub fn se_add_pair_to_slist(listname: *const raw::c_char,
3407                                label: *mut raw::c_char,
3408                                value: raw::c_int)
3409     -> raw::c_int;
3410    pub fn se_find_label_in_list(list: *mut Struct_snmp_enum_list,
3411                                 value: raw::c_int)
3412     -> *mut raw::c_char;
3413    pub fn se_find_value_in_list(list: *mut Struct_snmp_enum_list,
3414                                 label: *const raw::c_char)
3415     -> raw::c_int;
3416    pub fn se_find_free_value_in_list(list: *mut Struct_snmp_enum_list)
3417     -> raw::c_int;
3418    pub fn se_add_pair_to_list(list: *mut *mut Struct_snmp_enum_list,
3419                               label: *mut raw::c_char,
3420                               value: raw::c_int)
3421     -> raw::c_int;
3422    pub fn se_store_enum_list(new_list: *mut Struct_snmp_enum_list,
3423                              token: *const raw::c_char,
3424                              _type: *const raw::c_char);
3425    pub fn se_store_list(major: raw::c_uint,
3426                         minor: raw::c_uint,
3427                         _type: *const raw::c_char);
3428    pub fn se_clear_slist(listname: *const raw::c_char);
3429    pub fn se_store_slist(listname: *const raw::c_char,
3430                          _type: *const raw::c_char);
3431    pub fn se_store_slist_callback(majorID: raw::c_int,
3432                                   minorID: raw::c_int,
3433                                   serverargs: *mut raw::c_void,
3434                                   clientargs: *mut raw::c_void)
3435     -> raw::c_int;
3436    pub fn se_read_conf(word: *const raw::c_char,
3437                        cptr: *mut raw::c_char);
3438    pub fn clear_snmp_enum();
3439    pub fn init_vacm();
3440    pub fn vacm_destroyViewEntry(arg1: *const raw::c_char,
3441                                 arg2: *mut oid, arg3: libc::size_t);
3442    pub fn vacm_destroyAllViewEntries();
3443    pub fn vacm_getViewEntry(arg1: *const raw::c_char,
3444                             arg2: *mut oid, arg3: libc::size_t,
3445                             arg4: raw::c_int)
3446     -> *mut Struct_vacm_viewEntry;
3447    pub fn vacm_checkSubtree(arg1: *const raw::c_char,
3448                             arg2: *mut oid, arg3: libc::size_t)
3449     -> raw::c_int;
3450    pub fn vacm_scanViewInit();
3451    pub fn vacm_scanViewNext() -> *mut Struct_vacm_viewEntry;
3452    pub fn vacm_createViewEntry(arg1: *const raw::c_char,
3453                                arg2: *mut oid, arg3: libc::size_t)
3454     -> *mut Struct_vacm_viewEntry;
3455    pub fn vacm_destroyGroupEntry(arg1: raw::c_int,
3456                                  arg2: *const raw::c_char);
3457    pub fn vacm_destroyAllGroupEntries();
3458    pub fn vacm_createGroupEntry(arg1: raw::c_int,
3459                                 arg2: *const raw::c_char)
3460     -> *mut Struct_vacm_groupEntry;
3461    pub fn vacm_getGroupEntry(arg1: raw::c_int,
3462                              arg2: *const raw::c_char)
3463     -> *mut Struct_vacm_groupEntry;
3464    pub fn vacm_scanGroupInit();
3465    pub fn vacm_scanGroupNext() -> *mut Struct_vacm_groupEntry;
3466    pub fn vacm_destroyAccessEntry(arg1: *const raw::c_char,
3467                                   arg2: *const raw::c_char,
3468                                   arg3: raw::c_int,
3469                                   arg4: raw::c_int);
3470    pub fn vacm_destroyAllAccessEntries();
3471    pub fn vacm_createAccessEntry(arg1: *const raw::c_char,
3472                                  arg2: *const raw::c_char,
3473                                  arg3: raw::c_int,
3474                                  arg4: raw::c_int)
3475     -> *mut Struct_vacm_accessEntry;
3476    pub fn vacm_getAccessEntry(arg1: *const raw::c_char,
3477                               arg2: *const raw::c_char,
3478                               arg3: raw::c_int,
3479                               arg4: raw::c_int)
3480     -> *mut Struct_vacm_accessEntry;
3481    pub fn vacm_scanAccessInit();
3482    pub fn vacm_scanAccessNext() -> *mut Struct_vacm_accessEntry;
3483    pub fn vacm_destroySecurityEntry(arg1: *const raw::c_char);
3484    pub fn vacm_createSecurityEntry(arg1: *const raw::c_char)
3485     -> *mut Struct_vacm_securityEntry;
3486    pub fn vacm_getSecurityEntry(arg1: *const raw::c_char)
3487     -> *mut Struct_vacm_securityEntry;
3488    pub fn vacm_scanSecurityInit();
3489    pub fn vacm_scanSecurityEntry() -> *mut Struct_vacm_securityEntry;
3490    pub fn vacm_is_configured() -> raw::c_int;
3491    pub fn vacm_save(token: *const raw::c_char,
3492                     _type: *const raw::c_char);
3493    pub fn vacm_save_view(view: *mut Struct_vacm_viewEntry,
3494                          token: *const raw::c_char,
3495                          _type: *const raw::c_char);
3496    pub fn vacm_save_access(access_entry: *mut Struct_vacm_accessEntry,
3497                            token: *const raw::c_char,
3498                            _type: *const raw::c_char);
3499    pub fn vacm_save_auth_access(access_entry: *mut Struct_vacm_accessEntry,
3500                                 token: *const raw::c_char,
3501                                 _type: *const raw::c_char,
3502                                 authtype: raw::c_int);
3503    pub fn vacm_save_group(group_entry: *mut Struct_vacm_groupEntry,
3504                           token: *const raw::c_char,
3505                           _type: *const raw::c_char);
3506    pub fn vacm_parse_config_view(token: *const raw::c_char,
3507                                  line: *const raw::c_char);
3508    pub fn vacm_parse_config_group(token: *const raw::c_char,
3509                                   line: *const raw::c_char);
3510    pub fn vacm_parse_config_access(token: *const raw::c_char,
3511                                    line: *const raw::c_char);
3512    pub fn vacm_parse_config_auth_access(token: *const raw::c_char,
3513                                         line: *const raw::c_char);
3514    pub fn store_vacm(majorID: raw::c_int,
3515                      minorID: raw::c_int,
3516                      serverarg: *mut raw::c_void,
3517                      clientarg: *mut raw::c_void)
3518     -> raw::c_int;
3519    pub fn netsnmp_view_get(head: *mut Struct_vacm_viewEntry,
3520                            viewName: *const raw::c_char,
3521                            viewSubtree: *mut oid, viewSubtreeLen: libc::size_t,
3522                            mode: raw::c_int)
3523     -> *mut Struct_vacm_viewEntry;
3524    pub fn setup_engineID(eidp: *mut *mut raw::c_uchar,
3525                          text: *const raw::c_char)
3526     -> raw::c_int;
3527    pub fn engineID_conf(word: *const raw::c_char,
3528                         cptr: *mut raw::c_char);
3529    pub fn engineBoots_conf(arg1: *const raw::c_char,
3530                            arg2: *mut raw::c_char);
3531    pub fn engineIDType_conf(arg1: *const raw::c_char,
3532                             arg2: *mut raw::c_char);
3533    pub fn engineIDNic_conf(arg1: *const raw::c_char,
3534                            arg2: *mut raw::c_char);
3535    pub fn snmpv3_authtype_conf(word: *const raw::c_char,
3536                                cptr: *mut raw::c_char);
3537    pub fn snmpv3_privtype_conf(word: *const raw::c_char,
3538                                cptr: *mut raw::c_char);
3539    pub fn usm_parse_create_usmUser(token: *const raw::c_char,
3540                                    line: *mut raw::c_char);
3541    pub fn init_snmpv3(arg1: *const raw::c_char);
3542    pub fn init_snmpv3_post_config(majorid: raw::c_int,
3543                                   minorid: raw::c_int,
3544                                   serverarg: *mut raw::c_void,
3545                                   clientarg: *mut raw::c_void)
3546     -> raw::c_int;
3547    pub fn init_snmpv3_post_premib_config(majorid: raw::c_int,
3548                                          minorid: raw::c_int,
3549                                          serverarg:
3550                                              *mut raw::c_void,
3551                                          clientarg:
3552                                              *mut raw::c_void)
3553     -> raw::c_int;
3554    pub fn shutdown_snmpv3(_type: *const raw::c_char);
3555    pub fn snmpv3_store(majorID: raw::c_int,
3556                        minorID: raw::c_int,
3557                        serverarg: *mut raw::c_void,
3558                        clientarg: *mut raw::c_void)
3559     -> raw::c_int;
3560    pub fn snmpv3_local_snmpEngineBoots() -> raw::c_ulong;
3561    pub fn snmpv3_clone_engineID(arg1: *mut *mut raw::c_uchar, arg2: *mut libc::size_t,
3562                                 arg3: *mut raw::c_uchar, arg4: libc::size_t)
3563     -> raw::c_int;
3564    pub fn snmpv3_get_engineID(buf: *mut raw::c_uchar, buflen: libc::size_t) -> libc::size_t;
3565    pub fn snmpv3_generate_engineID(arg1: *mut libc::size_t) -> *mut raw::c_uchar;
3566    pub fn snmpv3_local_snmpEngineTime() -> raw::c_ulong;
3567    pub fn get_default_secLevel() -> raw::c_int;
3568    pub fn get_default_authtype(arg1: *mut libc::size_t) -> *const oid;
3569    pub fn get_default_privtype(arg1: *mut libc::size_t) -> *const oid;
3570    pub fn snmpv3_set_engineBootsAndTime(boots: raw::c_int,
3571                                         ttime: raw::c_int);
3572    pub fn free_engineID(majorid: raw::c_int,
3573                         minorid: raw::c_int,
3574                         serverarg: *mut raw::c_void,
3575                         clientarg: *mut raw::c_void)
3576     -> raw::c_int;
3577    pub fn parse_secLevel_conf(word: *const raw::c_char,
3578                               cptr: *mut raw::c_char)
3579     -> raw::c_int;
3580    pub fn generate_Ku(hashtype: *const oid, hashtype_len: raw::c_uint,
3581                       P: *const raw::c_uchar, pplen: libc::size_t, Ku: *mut raw::c_uchar,
3582                       kulen: *mut libc::size_t) -> raw::c_int;
3583    pub fn generate_kul(hashtype: *const oid, hashtype_len: raw::c_uint,
3584                        engineID: *const raw::c_uchar, engineID_len: libc::size_t,
3585                        Ku: *const raw::c_uchar, ku_len: libc::size_t, Kul: *mut raw::c_uchar,
3586                        kul_len: *mut libc::size_t) -> raw::c_int;
3587    pub fn encode_keychange(hashtype: *const oid, hashtype_len: raw::c_uint,
3588                            oldkey: *mut raw::c_uchar, oldkey_len: libc::size_t,
3589                            newkey: *mut raw::c_uchar, newkey_len: libc::size_t,
3590                            kcstring: *mut raw::c_uchar, kcstring_len: *mut libc::size_t)
3591     -> raw::c_int;
3592    pub fn decode_keychange(hashtype: *const oid, hashtype_len: raw::c_uint,
3593                            oldkey: *mut raw::c_uchar, oldkey_len: libc::size_t,
3594                            kcstring: *mut raw::c_uchar, kcstring_len: libc::size_t,
3595                            newkey: *mut raw::c_uchar, newkey_len: *mut libc::size_t)
3596     -> raw::c_int;
3597    pub fn sc_get_properlength(hashtype: *const oid, hashtype_len: raw::c_uint)
3598     -> raw::c_int;
3599    pub fn sc_get_proper_priv_length(privtype: *const oid,
3600                                     privtype_len: raw::c_uint)
3601     -> raw::c_int;
3602    pub fn sc_init() -> raw::c_int;
3603    pub fn sc_shutdown(majorID: raw::c_int,
3604                       minorID: raw::c_int,
3605                       serverarg: *mut raw::c_void,
3606                       clientarg: *mut raw::c_void)
3607     -> raw::c_int;
3608    pub fn sc_random(buf: *mut raw::c_uchar, buflen: *mut libc::size_t)
3609     -> raw::c_int;
3610    pub fn sc_generate_keyed_hash(authtype: *const oid, authtypelen: libc::size_t,
3611                                  key: *const raw::c_uchar, keylen: raw::c_uint,
3612                                  message: *const raw::c_uchar, msglen: raw::c_uint,
3613                                  MAC: *mut raw::c_uchar, maclen: *mut libc::size_t)
3614     -> raw::c_int;
3615    pub fn sc_check_keyed_hash(authtype: *const oid, authtypelen: libc::size_t,
3616                               key: *const raw::c_uchar, keylen: raw::c_uint,
3617                               message: *const raw::c_uchar, msglen: raw::c_uint,
3618                               MAC: *const raw::c_uchar, maclen: raw::c_uint)
3619     -> raw::c_int;
3620    pub fn sc_encrypt(privtype: *const oid, privtypelen: libc::size_t,
3621                      key: *mut raw::c_uchar, keylen: raw::c_uint, iv: *mut raw::c_uchar,
3622                      ivlen: raw::c_uint, plaintext: *const raw::c_uchar, ptlen: raw::c_uint,
3623                      ciphertext: *mut raw::c_uchar, ctlen: *mut libc::size_t)
3624     -> raw::c_int;
3625    pub fn sc_decrypt(privtype: *const oid, privtypelen: libc::size_t,
3626                      key: *mut raw::c_uchar, keylen: raw::c_uint, iv: *mut raw::c_uchar,
3627                      ivlen: raw::c_uint, ciphertext: *mut raw::c_uchar, ctlen: raw::c_uint,
3628                      plaintext: *mut raw::c_uchar, ptlen: *mut libc::size_t)
3629     -> raw::c_int;
3630    pub fn sc_hash(hashtype: *const oid, hashtypelen: libc::size_t,
3631                   buf: *const raw::c_uchar, buf_len: libc::size_t, MAC: *mut raw::c_uchar,
3632                   MAC_len: *mut libc::size_t) -> raw::c_int;
3633    pub fn sc_get_transform_type(hashtype: *mut oid, hashtype_len: raw::c_uint,
3634                                 hash_fn:
3635                                     *mut ::std::option::Option<unsafe extern "C" fn(mode:
3636                                                                                         raw::c_int,
3637                                                                                     context:
3638                                                                                         *mut *mut raw::c_void,
3639                                                                                     data:
3640                                                                                         *const raw::c_uchar,
3641                                                                                     data_len:
3642                                                                                         raw::c_int,
3643                                                                                     digest:
3644                                                                                         *mut *mut raw::c_uchar,
3645                                                                                     digest_len:
3646                                                                                         *mut libc::size_t)
3647                                                                    ->
3648                                                                        raw::c_int>)
3649     -> raw::c_int;
3650    pub fn get_enginetime(engineID: *const raw::c_uchar, engineID_len: raw::c_uint,
3651                          engine_boot: *mut raw::c_uint, engine_time: *mut raw::c_uint,
3652                          authenticated: raw::c_uint) -> raw::c_int;
3653    pub fn get_enginetime_ex(engineID: *mut raw::c_uchar, engineID_len: raw::c_uint,
3654                             engine_boot: *mut raw::c_uint, engine_time: *mut raw::c_uint,
3655                             last_engine_time: *mut raw::c_uint,
3656                             authenticated: raw::c_uint) -> raw::c_int;
3657    pub fn set_enginetime(engineID: *const raw::c_uchar, engineID_len: raw::c_uint,
3658                          engine_boot: raw::c_uint, engine_time: raw::c_uint,
3659                          authenticated: raw::c_uint) -> raw::c_int;
3660    pub fn search_enginetime_list(engineID: *const raw::c_uchar,
3661                                  engineID_len: raw::c_uint) -> Enginetime;
3662    pub fn hash_engineID(engineID: *const raw::c_uchar, engineID_len: raw::c_uint)
3663     -> raw::c_int;
3664    pub fn dump_etimelist_entry(e: Enginetime, count: raw::c_int);
3665    pub fn dump_etimelist();
3666    pub fn free_etimelist();
3667    pub fn free_enginetime(engineID: *mut raw::c_uchar,
3668                           engineID_len: libc::size_t);
3669    pub fn register_sec_mod(arg1: raw::c_int,
3670                            arg2: *const raw::c_char,
3671                            arg3: *mut Struct_snmp_secmod_def)
3672     -> raw::c_int;
3673    pub fn find_sec_mod(arg1: raw::c_int)
3674     -> *mut Struct_snmp_secmod_def;
3675    pub fn unregister_sec_mod(arg1: raw::c_int)
3676     -> raw::c_int;
3677    pub fn init_secmod();
3678    pub fn clear_sec_mod();
3679    pub fn usm_malloc_usmStateReference() -> *mut Struct_usmStateReference;
3680    pub fn usm_free_usmStateReference(old: *mut raw::c_void);
3681    pub fn usm_set_usmStateReference_name(_ref: *mut Struct_usmStateReference,
3682                                          name: *mut raw::c_char,
3683                                          name_len: libc::size_t)
3684     -> raw::c_int;
3685    pub fn usm_set_usmStateReference_engine_id(_ref:
3686                                                   *mut Struct_usmStateReference,
3687                                               engine_id: *mut raw::c_uchar,
3688                                               engine_id_len: libc::size_t)
3689     -> raw::c_int;
3690    pub fn usm_set_usmStateReference_auth_protocol(_ref:
3691                                                       *mut Struct_usmStateReference,
3692                                                   auth_protocol: *mut oid,
3693                                                   auth_protocol_len: libc::size_t)
3694     -> raw::c_int;
3695    pub fn usm_set_usmStateReference_auth_key(_ref:
3696                                                  *mut Struct_usmStateReference,
3697                                              auth_key: *mut raw::c_uchar,
3698                                              auth_key_len: libc::size_t)
3699     -> raw::c_int;
3700    pub fn usm_set_usmStateReference_priv_protocol(_ref:
3701                                                       *mut Struct_usmStateReference,
3702                                                   priv_protocol: *mut oid,
3703                                                   priv_protocol_len: libc::size_t)
3704     -> raw::c_int;
3705    pub fn usm_set_usmStateReference_priv_key(_ref:
3706                                                  *mut Struct_usmStateReference,
3707                                              priv_key: *mut raw::c_uchar,
3708                                              priv_key_len: libc::size_t)
3709     -> raw::c_int;
3710    pub fn usm_set_usmStateReference_sec_level(_ref:
3711                                                   *mut Struct_usmStateReference,
3712                                               sec_level:
3713                                                   raw::c_int)
3714     -> raw::c_int;
3715    pub fn usm_clone_usmStateReference(from: *mut Struct_usmStateReference,
3716                                       to: *mut *mut Struct_usmStateReference)
3717     -> raw::c_int;
3718    pub fn asn_predict_int_length(_type: raw::c_int,
3719                                  number: raw::c_long, len: libc::size_t)
3720     -> raw::c_int;
3721    pub fn asn_predict_length(_type: raw::c_int, ptr: *mut raw::c_uchar,
3722                              u_char_len: libc::size_t) -> raw::c_int;
3723    pub fn usm_set_salt(iv: *mut raw::c_uchar, iv_length: *mut libc::size_t,
3724                        priv_salt: *mut raw::c_uchar, priv_salt_length: libc::size_t,
3725                        msgSalt: *mut raw::c_uchar) -> raw::c_int;
3726    pub fn usm_parse_security_parameters(secParams: *mut raw::c_uchar,
3727                                         remaining: libc::size_t,
3728                                         secEngineID: *mut raw::c_uchar,
3729                                         secEngineIDLen: *mut libc::size_t,
3730                                         boots_uint: *mut raw::c_uint,
3731                                         time_uint: *mut raw::c_uint,
3732                                         secName: *mut raw::c_char,
3733                                         secNameLen: *mut libc::size_t,
3734                                         signature: *mut raw::c_uchar,
3735                                         signature_length: *mut libc::size_t,
3736                                         salt: *mut raw::c_uchar,
3737                                         salt_length: *mut libc::size_t,
3738                                         data_ptr: *mut *mut raw::c_uchar)
3739     -> raw::c_int;
3740    pub fn usm_check_and_update_timeliness(secEngineID: *mut raw::c_uchar,
3741                                           secEngineIDLen: libc::size_t,
3742                                           boots_uint: raw::c_uint,
3743                                           time_uint: raw::c_uint,
3744                                           error: *mut raw::c_int)
3745     -> raw::c_int;
3746    pub fn usm_open_session(arg1: *mut netsnmp_session)
3747     -> raw::c_int;
3748    pub fn usm_secmod_generate_out_msg(arg1:
3749                                           *mut Struct_snmp_secmod_outgoing_params)
3750     -> raw::c_int;
3751    pub fn usm_secmod_process_in_msg(arg1:
3752                                         *mut Struct_snmp_secmod_incoming_params)
3753     -> raw::c_int;
3754    pub fn usm_generate_out_msg(arg1: raw::c_int,
3755                                arg2: *mut raw::c_uchar, arg3: libc::size_t,
3756                                arg4: raw::c_int,
3757                                arg5: raw::c_int,
3758                                arg6: *mut raw::c_uchar, arg7: libc::size_t,
3759                                arg8: *mut raw::c_char,
3760                                arg9: libc::size_t, arg10: raw::c_int,
3761                                arg11: *mut raw::c_uchar, arg12: libc::size_t,
3762                                arg13: *mut raw::c_void,
3763                                arg14: *mut raw::c_uchar, arg15: *mut libc::size_t,
3764                                arg16: *mut *mut raw::c_uchar, arg17: *mut libc::size_t)
3765     -> raw::c_int;
3766    pub fn usm_rgenerate_out_msg(arg1: raw::c_int,
3767                                 arg2: *mut raw::c_uchar, arg3: libc::size_t,
3768                                 arg4: raw::c_int,
3769                                 arg5: raw::c_int,
3770                                 arg6: *mut raw::c_uchar, arg7: libc::size_t,
3771                                 arg8: *mut raw::c_char,
3772                                 arg9: libc::size_t, arg10: raw::c_int,
3773                                 arg11: *mut raw::c_uchar, arg12: libc::size_t,
3774                                 arg13: *mut raw::c_void,
3775                                 arg14: *mut *mut raw::c_uchar, arg15: *mut libc::size_t,
3776                                 arg16: *mut libc::size_t) -> raw::c_int;
3777    pub fn usm_process_in_msg(arg1: raw::c_int, arg2: libc::size_t,
3778                              arg3: *mut raw::c_uchar, arg4: raw::c_int,
3779                              arg5: raw::c_int, arg6: *mut raw::c_uchar,
3780                              arg7: libc::size_t, arg8: *mut raw::c_uchar,
3781                              arg9: *mut libc::size_t,
3782                              arg10: *mut raw::c_char,
3783                              arg11: *mut libc::size_t, arg12: *mut *mut raw::c_uchar,
3784                              arg13: *mut libc::size_t, arg14: *mut libc::size_t,
3785                              arg15: *mut *mut raw::c_void,
3786                              arg16: *mut netsnmp_session, arg17: raw::c_uchar)
3787     -> raw::c_int;
3788    pub fn usm_check_secLevel(level: raw::c_int,
3789                              user: *mut Struct_usmUser)
3790     -> raw::c_int;
3791    pub fn usm_get_userList() -> *mut Struct_usmUser;
3792    pub fn usm_get_user(engineID: *mut raw::c_uchar, engineIDLen: libc::size_t,
3793                        name: *mut raw::c_char)
3794     -> *mut Struct_usmUser;
3795    pub fn usm_get_user_from_list(engineID: *mut raw::c_uchar, engineIDLen: libc::size_t,
3796                                  name: *mut raw::c_char,
3797                                  userList: *mut Struct_usmUser,
3798                                  use_default: raw::c_int)
3799     -> *mut Struct_usmUser;
3800    pub fn usm_add_user(user: *mut Struct_usmUser) -> *mut Struct_usmUser;
3801    pub fn usm_add_user_to_list(user: *mut Struct_usmUser,
3802                                userList: *mut Struct_usmUser)
3803     -> *mut Struct_usmUser;
3804    pub fn usm_free_user(user: *mut Struct_usmUser) -> *mut Struct_usmUser;
3805    pub fn usm_create_user() -> *mut Struct_usmUser;
3806    pub fn usm_create_initial_user(name: *const raw::c_char,
3807                                   authProtocol: *const oid,
3808                                   authProtocolLen: libc::size_t,
3809                                   privProtocol: *const oid,
3810                                   privProtocolLen: libc::size_t)
3811     -> *mut Struct_usmUser;
3812    pub fn usm_cloneFrom_user(from: *mut Struct_usmUser,
3813                              to: *mut Struct_usmUser) -> *mut Struct_usmUser;
3814    pub fn usm_remove_user(user: *mut Struct_usmUser) -> *mut Struct_usmUser;
3815    pub fn usm_remove_user_from_list(user: *mut Struct_usmUser,
3816                                     userList: *mut *mut Struct_usmUser)
3817     -> *mut Struct_usmUser;
3818    pub fn get_objid(line: *mut raw::c_char, optr: *mut *mut oid,
3819                     len: *mut libc::size_t) -> *mut raw::c_char;
3820    pub fn usm_save_users(token: *const raw::c_char,
3821                          _type: *const raw::c_char);
3822    pub fn usm_save_users_from_list(user: *mut Struct_usmUser,
3823                                    token: *const raw::c_char,
3824                                    _type: *const raw::c_char);
3825    pub fn usm_save_user(user: *mut Struct_usmUser,
3826                         token: *const raw::c_char,
3827                         _type: *const raw::c_char);
3828    pub fn usm_store_users(arg1: raw::c_int,
3829                           arg2: raw::c_int,
3830                           arg3: *mut raw::c_void,
3831                           arg4: *mut raw::c_void)
3832     -> raw::c_int;
3833    pub fn usm_read_user(line: *const raw::c_char)
3834     -> *mut Struct_usmUser;
3835    pub fn usm_parse_config_usmUser(token: *const raw::c_char,
3836                                    line: *mut raw::c_char);
3837    pub fn usm_set_password(token: *const raw::c_char,
3838                            line: *mut raw::c_char);
3839    pub fn usm_set_user_password(user: *mut Struct_usmUser,
3840                                 token: *const raw::c_char,
3841                                 line: *mut raw::c_char);
3842    pub fn init_usm();
3843    pub fn init_usm_conf(app: *const raw::c_char);
3844    pub fn init_usm_post_config(majorid: raw::c_int,
3845                                minorid: raw::c_int,
3846                                serverarg: *mut raw::c_void,
3847                                clientarg: *mut raw::c_void)
3848     -> raw::c_int;
3849    pub fn deinit_usm_post_config(majorid: raw::c_int,
3850                                  minorid: raw::c_int,
3851                                  serverarg: *mut raw::c_void,
3852                                  clientarg: *mut raw::c_void)
3853     -> raw::c_int;
3854    pub fn clear_user_list();
3855}