netsnmp_callback.3
上传用户:wxp200602
上传日期:2007-10-30
资源大小:4028k
文件大小:6k
源码类别:

SNMP编程

开发平台:

Unix_Linux

  1. .TH "A generic callback mechanism" 3 "28 Nov 2005" "Version 5.2.1.rc3" "net-snmp" " -*- nroff -*-
  2. .ad l
  3. .nh
  4. .SH NAME
  5. A generic callback mechanism - 
  6. .SS "Functions"
  7. .in +1c
  8. .ti -1c
  9. .RI "void fBinit_callbacksfP (void)"
  10. .br
  11. .ti -1c
  12. .RI "int fBsnmp_register_callbackfP (int major, int minor, SNMPCallback *new_callback, void *arg)"
  13. .br
  14. .RI "fIThis function registers a generic callback function. fP"
  15. .ti -1c
  16. .RI "int fBnetsnmp_register_callbackfP (int major, int minor, SNMPCallback *new_callback, void *arg, int priority)"
  17. .br
  18. .ti -1c
  19. .RI "int fBsnmp_call_callbacksfP (int major, int minor, void *caller_arg)"
  20. .br
  21. .RI "fIThis function calls the callback function for each registered callback of type major and minor. fP"
  22. .ti -1c
  23. .RI "int fBsnmp_count_callbacksfP (int major, int minor)"
  24. .br
  25. .ti -1c
  26. .RI "int fBsnmp_callback_availablefP (int major, int minor)"
  27. .br
  28. .ti -1c
  29. .RI "int fBsnmp_unregister_callbackfP (int major, int minor, SNMPCallback *target, void *arg, int matchargs)"
  30. .br
  31. .RI "fIThis function unregisters a specified callback function given a major and minor type. fP"
  32. .ti -1c
  33. .RI "int fBnetsnmp_callback_clear_client_argfP (void *ptr, int i, int j)"
  34. .br
  35. .RI "fIfind and clear client args that match ptr fP"
  36. .ti -1c
  37. .RI "void fBclear_callbackfP (void)"
  38. .br
  39. .ti -1c
  40. .RI "fBsnmp_gen_callbackfP * fBsnmp_callback_listfP (int major, int minor)"
  41. .br
  42. .in -1c
  43. .SH "Function Documentation"
  44. .PP 
  45. .SS "int netsnmp_callback_clear_client_arg (void * ptr, int i, int j)"
  46. .PP
  47. find and clear client args that match ptr 
  48. .PP
  49. fBParameters:fP
  50. .RS 4
  51. fIptrfP pointer to search for 
  52. .br
  53. fIifP callback id to start at 
  54. .br
  55. fIjfP callback subid to start at
  56. .RE
  57. .PP
  58. .PP
  59. Definition at line 346 of file callback.c.
  60. .PP
  61. References snmp_gen_callback::next, NULL, snmp_gen_callback::sc_callback, and snmp_gen_callback::sc_client_arg.
  62. .PP
  63. Referenced by clear_callback().
  64. .SS "int snmp_call_callbacks (int major, int minor, void * caller_arg)"
  65. .PP
  66. This function calls the callback function for each registered callback of type major and minor. 
  67. .PP
  68. fBParameters:fP
  69. .RS 4
  70. fImajorfP is the SNMP callback major type used
  71. .br
  72. fIminorfP is the SNMP callback minor type used
  73. .br
  74. fIcaller_argfP is a void pointer which is sent in as the callback's serverarg parameter, if needed.
  75. .RE
  76. .PP
  77. fBReturns:fP
  78. .RS 4
  79. Returns SNMPERR_GENERR if major is >= MAX_CALLBACK_IDS or minor is >= MAX_CALLBACK_SUBIDS, otherwise SNMPERR_SUCCESS is returned.
  80. .RE
  81. .PP
  82. fBSee also:fP
  83. .RS 4
  84. fBsnmp_register_callbackfP 
  85. .PP
  86. fBsnmp_unregister_callbackfP
  87. .RE
  88. .PP
  89. .PP
  90. Definition at line 182 of file callback.c.
  91. .PP
  92. References snmp_gen_callback::next, NULL, snmp_gen_callback::sc_callback, snmp_gen_callback::sc_client_arg, and snmp_log().
  93. .PP
  94. Referenced by add_trap_session(), check_access(), in_a_view(), log_handler_callback(), netsnmp_acm_check_subtree(), netsnmp_register_mib(), netsnmp_register_mib_table_row(), netsnmp_send_traps(), netsnmp_unregister_mib_table_row(), read_configs(), read_premib_configs(), snmp_shutdown(), snmp_store(), unregister_mib_context(), and unregister_mibs_by_session().
  95. .SS "int snmp_register_callback (int major, int minor, SNMPCallback * new_callback, void * arg)"
  96. .PP
  97. This function registers a generic callback function. 
  98. .PP
  99. The major and minor values are used to set the new_callback function into a global static multi-dimensional array of type struct fBsnmp_gen_callbackfP. The function makes sure to append this callback function at the end of the link list, snmp_gen_callback->next.
  100. .PP
  101. fBParameters:fP
  102. .RS 4
  103. fImajorfP is the SNMP callback major type used
  104. .IP "(bu" 2
  105. SNMP_CALLBACK_LIBRARY
  106. .PP
  107. .RE
  108. .PP
  109. .IP "(bu" 2
  110. SNMP_CALLBACK_APPLICATION
  111. .PP
  112. .PP
  113. fBParameters:fP
  114. .RS 4
  115. fIminorfP is the SNMP callback minor type used
  116. .IP "(bu" 2
  117. SNMP_CALLBACK_POST_READ_CONFIG
  118. .IP "(bu" 2
  119. SNMP_CALLBACK_STORE_DATA
  120. .IP "(bu" 2
  121. SNMP_CALLBACK_SHUTDOWN
  122. .IP "(bu" 2
  123. SNMP_CALLBACK_POST_PREMIB_READ_CONFIG
  124. .IP "(bu" 2
  125. SNMP_CALLBACK_LOGGING
  126. .IP "(bu" 2
  127. SNMP_CALLBACK_SESSION_INIT
  128. .PP
  129. .br
  130. fInew_callbackfP is the callback function that is registered.
  131. .br
  132. fIargfP when not NULL is a void pointer used whenever new_callback function is exercised.
  133. .RE
  134. .PP
  135. fBReturns:fP
  136. .RS 4
  137. Returns SNMPERR_GENERR if major is >= MAX_CALLBACK_IDS or minor is >= MAX_CALLBACK_SUBIDS or a fBsnmp_gen_callbackfP pointer could not be allocated, otherwise SNMPERR_SUCCESS is returned.
  138. .IP "(bu" 2
  139. define MAX_CALLBACK_IDS 2
  140. .IP "(bu" 2
  141. define MAX_CALLBACK_SUBIDS 16
  142. .PP
  143. .RE
  144. .PP
  145. fBSee also:fP
  146. .RS 4
  147. fBsnmp_call_callbacksfP 
  148. .PP
  149. fBsnmp_unregister_callbackfP
  150. .RE
  151. .PP
  152. .PP
  153. Definition at line 115 of file callback.c.
  154. .PP
  155. References netsnmp_register_callback().
  156. .PP
  157. Referenced by init_snmp_alarm(), netsnmp_init_handler_conf(), and netsnmp_register_save_list().
  158. .SS "int snmp_unregister_callback (int major, int minor, SNMPCallback * target, void * arg, int matchargs)"
  159. .PP
  160. This function unregisters a specified callback function given a major and minor type. 
  161. .PP
  162. Note: no bound checking on major and minor.
  163. .PP
  164. fBParameters:fP
  165. .RS 4
  166. fImajorfP is the SNMP callback major type used
  167. .br
  168. fIminorfP is the SNMP callback minor type used
  169. .br
  170. fItargetfP is the callback function that will be unregistered.
  171. .br
  172. fIargfP is a void pointer used for comparison against the registered callback's sc_client_arg variable.
  173. .br
  174. fImatchargsfP is an integer used to bypass the comparison of arg and the callback's sc_client_arg variable only when matchargs is set to 0.
  175. .RE
  176. .PP
  177. fBReturns:fP
  178. .RS 4
  179. Returns the number of callbacks that were unregistered.
  180. .RE
  181. .PP
  182. fBSee also:fP
  183. .RS 4
  184. fBsnmp_register_callbackfP 
  185. .PP
  186. fBsnmp_call_callbacksfP
  187. .RE
  188. .PP
  189. set cleanup flag? 
  190. .PP
  191. Definition at line 295 of file callback.c.
  192. .PP
  193. References snmp_gen_callback::next, NULL, snmp_gen_callback::sc_callback, snmp_gen_callback::sc_client_arg, SNMP_FREE, and snmp_log().