callback_8h-source.html from net-snmp at Krugle
Show callback_8h-source.html syntax highlighted
<!--#set var="section" value="development" -->
<!--#include virtual="/page-top.html" -->
<!-- CONTENT START -->
<!-- Generated by Doxygen 1.3.9.1 -->
<div class="qindex">
<a class="qindex" href="index.html">Main Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class=
"qindex" href="annotated.html">Data Structures</a> | <a class="qindex" href="files.html">File List</a> | <a class=
"qindex" href="functions.html">Data Fields</a> | <a class="qindex" href="pages.html">Related Pages</a> | <a class=
"qindex" href="examples.html">Examples</a>
</div>
<div class="nav">
<a class="el" href="dir_000000.html">include</a> / <a class="el" href=
"dir_000001.html">net-snmp</a> / <a class="el" href="dir_000006.html">library</a>
</div>
<h1>callback.h</h1>
<div class="fragment">
<pre class="fragment">
00001 <span class="comment">/*</span>
00002 <span class="comment"> * callback.c: A generic callback mechanism </span>
00003 <span class="comment"> */</span>
00004
00005 <span class="preprocessor">#ifndef CALLBACK_H</span>
00006 <span class="preprocessor">#define CALLBACK_H</span>
00007
00008 <span class="preprocessor">#ifdef __cplusplus</span>
00009 <span class="keyword">extern</span> <span class="stringliteral">"C"</span> {
00010 <span class="preprocessor">#endif</span>
00011
00012 <span class="preprocessor">#define MAX_CALLBACK_IDS 2</span>
00013 <span class="preprocessor">#define MAX_CALLBACK_SUBIDS 16</span>
00014
00015 <span class="comment">/*</span>
00016 <span class="comment"> * Callback Major Types </span>
00017 <span class="comment"> */</span>
00018 <span class="preprocessor">#define SNMP_CALLBACK_LIBRARY 0</span>
00019 <span class="preprocessor">#define SNMP_CALLBACK_APPLICATION 1</span>
00020
00021 <span class="comment">/*</span>
00022 <span class="comment"> * SNMP_CALLBACK_LIBRARY minor types </span>
00023 <span class="comment"> */</span>
00024 <span class="preprocessor">#define SNMP_CALLBACK_POST_READ_CONFIG 0</span>
00025 <span class="preprocessor">#define SNMP_CALLBACK_STORE_DATA 1</span>
00026 <span class="preprocessor">#define SNMP_CALLBACK_SHUTDOWN 2</span>
00027 <span class="preprocessor">#define SNMP_CALLBACK_POST_PREMIB_READ_CONFIG 3</span>
00028 <span class="preprocessor">#define SNMP_CALLBACK_LOGGING 4</span>
00029 <span class="preprocessor">#define SNMP_CALLBACK_SESSION_INIT 5</span>
00030
00031
00032 <span class="comment">/*</span>
00033 <span class="comment"> * Callback priority (lower priority numbers called first(</span>
00034 <span class="comment"> */</span>
00035 <span class="preprocessor">#define NETSNMP_CALLBACK_HIGHEST_PRIORITY -1024 </span>
00036 <span class="preprocessor">#define NETSNMP_CALLBACK_DEFAULT_PRIORITY 0</span>
00037 <span class="preprocessor">#define NETSNMP_CALLBACK_LOWEST_PRIORITY 1024</span>
00038
00039 <span class="keyword">typedef</span> int (SNMPCallback) (<span class="keywordtype">int</span> majorID, <span class=
"keywordtype">int</span> minorID,
00040 <span class="keywordtype">void</span> *serverarg, <span class=
"keywordtype">void</span> *clientarg);
00041
00042 <span class="keyword">struct </span>snmp_gen_callback {
00043 SNMPCallback *sc_callback;
00044 <span class="keywordtype">void</span> *sc_client_arg;
00045 <span class="keywordtype">int</span> priority;
00046 <span class="keyword">struct </span>snmp_gen_callback *next;
00047 };
00048
00049 <span class="comment">/*</span>
00050 <span class="comment"> * function prototypes </span>
00051 <span class="comment"> */</span>
00052 <span class="keywordtype">void</span> init_callbacks(<span class="keywordtype">void</span>);
00053
00054 <span class="keywordtype">int</span> netsnmp_register_callback(<span class=
"keywordtype">int</span> major, <span class="keywordtype">int</span> minor,
00055 SNMPCallback * new_callback,
00056 <span class="keywordtype">void</span> *arg, <span class=
"keywordtype">int</span> priority);
00057 <span class="keywordtype">int</span> <a class="code" href=
"group__callback.html#ga8">snmp_register_callback</a>(<span class="keywordtype">int</span> major, <span class=
"keywordtype">int</span> minor,
00058 SNMPCallback * new_callback,
00059 <span class="keywordtype">void</span> *arg);
00060 <span class="keywordtype">int</span> <a class="code" href=
"group__callback.html#ga10">snmp_call_callbacks</a>(<span class="keywordtype">int</span> major, <span class=
"keywordtype">int</span> minor,
00061 <span class="keywordtype">void</span> *caller_arg);
00062 <span class="keywordtype">int</span> snmp_callback_available(<span class=
"keywordtype">int</span> major, <span class="keywordtype">int</span> minor); <span class=
"comment">/* is >1 available */</span>
00063 <span class="keywordtype">int</span> snmp_count_callbacks(<span class=
"keywordtype">int</span> major, <span class="keywordtype">int</span> minor); <span class=
"comment">/* ret the number registered */</span>
00064 <span class="keywordtype">int</span> <a class="code" href=
"group__callback.html#ga13">snmp_unregister_callback</a>(<span class="keywordtype">int</span> major, <span class=
"keywordtype">int</span> minor,
00065 SNMPCallback * new_callback,
00066 <span class="keywordtype">void</span> *arg, <span class=
"keywordtype">int</span> matchargs);
00067 <span class="keywordtype">void</span> clear_callback (<span class="keywordtype">void</span>);
00068 <span class="keywordtype">int</span> <a class="code" href=
"group__callback.html#ga14">netsnmp_callback_clear_client_arg</a>(<span class="keywordtype">void</span> *, <span class=
"keywordtype">int</span> i, <span class="keywordtype">int</span> j);
00069
00070 <span class="keyword">struct </span>snmp_gen_callback *snmp_callback_list(<span class=
"keywordtype">int</span> major, <span class="keywordtype">int</span> minor);
00071
00072 <span class="preprocessor">#ifdef __cplusplus</span>
00073 }
00074 <span class="preprocessor">#endif</span>
00075 <span class="preprocessor">#endif </span><span class="comment">/* CALLBACK_H */</span>
</pre>
</div>
<hr size="1" />
<address style="align: right;">
<small>Generated on Fri Dec 30 13:47:44 2005 for net-snmp by <a href="http://www.doxygen.org/index.html"><img src=
"doxygen.png" alt="doxygen" align="middle" border="0" /></a> 1.3.9.1</small>
</address>
<!-- CONTENT END -->
<!--#include virtual="/page-bottom.html" -->
See more files for this project here