and added files
[bcm963xx.git] / userapps / opensource / net-snmp / include / net-snmp / library / snmpCallbackDomain.h
1 #ifndef _SNMPCALLBACKDOMAIN_H
2 #define _SNMPCALLBACKDOMAIN_H
3
4 #ifdef __cplusplus
5 extern          "C" {
6 #endif
7
8 #include <net-snmp/library/snmp_transport.h>
9
10 typedef struct netsnmp_callback_pass_s {
11     int             return_transport_num;
12     netsnmp_pdu    *pdu;
13     struct netsnmp_callback_pass_s *next;
14 } netsnmp_callback_pass;
15
16 typedef struct netsnmp_callback_info_s {
17     int             linkedto;
18     void           *parent_data;
19     netsnmp_callback_pass *data;
20     int             callback_num;
21     int             pipefds[2];
22 } netsnmp_callback_info;
23
24 netsnmp_transport *netsnmp_callback_transport(int);
25 int             netsnmp_callback_hook_parse(netsnmp_session * sp,
26                                             netsnmp_pdu *pdu,
27                                             u_char * packetptr,
28                                             size_t len);
29 int             netsnmp_callback_hook_build(netsnmp_session * sp,
30                                             netsnmp_pdu *pdu,
31                                             u_char * ptk, size_t * len);
32 int             netsnmp_callback_check_packet(u_char * pkt, size_t len);
33 netsnmp_pdu    *netsnmp_callback_create_pdu(netsnmp_transport *transport,
34                                             void *opaque, size_t olength);
35 netsnmp_session *netsnmp_callback_open(int attach_to,
36                                        int (*return_func) (int op,
37                                                            netsnmp_session
38                                                            * session,
39                                                            int reqid,
40                                                            netsnmp_pdu
41                                                            *pdu,
42                                                            void *magic),
43                                        int (*fpre_parse) (netsnmp_session
44                                                           *,
45                                                           struct
46                                                           netsnmp_transport_s
47                                                           *, void *, int),
48                                        int (*fpost_parse) (netsnmp_session
49                                                            *,
50                                                            netsnmp_pdu *,
51                                                            int));
52
53 #ifdef __cplusplus
54 }
55 #endif
56 #endif/*_SNMPCALLBACKDOMAIN_H*/