netsnmp_sys/
auto.rs

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