| Current File : //usr/share/doc/net-snmp/html/group__tdata.html |
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<title>net-snmp: tdata</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td style="padding-left: 0.5em;">
<div id="projectname">net-snmp
 <span id="projectnumber">5.4.1</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- Generated by Doxygen 1.7.6.1 -->
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main Page</span></a></li>
<li><a href="pages.html"><span>Related Pages</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li><a href="annotated.html"><span>Data Structures</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li><a href="examples.html"><span>Examples</span></a></li>
</ul>
</div>
</div>
<div class="header">
<div class="summary">
<a href="#func-members">Functions</a> |
<a href="#var-members">Variables</a> </div>
<div class="headertitle">
<div class="title">tdata</div> </div>
<div class="ingroups"><a class="el" href="group__table.html">table</a></div></div><!--header-->
<div class="contents">
<p>Implement a table with datamatted storage.
<a href="#details">More...</a></p>
<table class="memberdecls">
<tr><td colspan="2"><h2><a name="func-members"></a>
Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga8690d93432d15696e4a064fae24d144f"></a><!-- doxytag: member="tdata::_netsnmp_tdata_generate_index_oid" ref="ga8690d93432d15696e4a064fae24d144f" args="(netsnmp_tdata_row *row)" -->
void </td><td class="memItemRight" valign="bottom"><b>_netsnmp_tdata_generate_index_oid</b> (<a class="el" href="structnetsnmp__tdata__row__s.html">netsnmp_tdata_row</a> *row)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="structnetsnmp__tdata__s.html">netsnmp_tdata</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__tdata.html#gacfad47aa528f6189c0005b5e905f40d2">netsnmp_tdata_create_table</a> (const char *name, long flags)</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">creates and returns a 'tdata' table data structure <a href="#gacfad47aa528f6189c0005b5e905f40d2"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__tdata.html#gac4fcb6937bee001a265e2d215d5efddb">netsnmp_tdata_delete_table</a> (<a class="el" href="structnetsnmp__tdata__s.html">netsnmp_tdata</a> *table)</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">creates and returns a 'tdata' table data structure <a href="#gac4fcb6937bee001a265e2d215d5efddb"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="structnetsnmp__tdata__row__s.html">netsnmp_tdata_row</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__tdata.html#ga82741b230d287e65b746a97c2f4d4d3d">netsnmp_tdata_create_row</a> (void)</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">creates and returns a pointer to new row data structure <a href="#ga82741b230d287e65b746a97c2f4d4d3d"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="structnetsnmp__tdata__row__s.html">netsnmp_tdata_row</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__tdata.html#ga55e263f21d752af90fc11aef2df5d3a5">netsnmp_tdata_clone_row</a> (<a class="el" href="structnetsnmp__tdata__row__s.html">netsnmp_tdata_row</a> *row)</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">clones a 'tdata' row. <a href="#ga55e263f21d752af90fc11aef2df5d3a5"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__tdata.html#ga93afd3a95dd2f05bc0621115da44aca1">netsnmp_tdata_copy_row</a> (<a class="el" href="structnetsnmp__tdata__row__s.html">netsnmp_tdata_row</a> *dst_row, <a class="el" href="structnetsnmp__tdata__row__s.html">netsnmp_tdata_row</a> *src_row)</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">copy the contents of a 'tdata' row. <a href="#ga93afd3a95dd2f05bc0621115da44aca1"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__tdata.html#ga3a8c09b15b62dae89b897551147a15f4">netsnmp_tdata_delete_row</a> (<a class="el" href="structnetsnmp__tdata__row__s.html">netsnmp_tdata_row</a> *row)</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">deletes the memory used by the specified row returns the table-specific entry data (that it doesn't know how to delete) <a href="#ga3a8c09b15b62dae89b897551147a15f4"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__tdata.html#gaf23857985d7a1844c1a6fcbd9a46cbb0">netsnmp_tdata_add_row</a> (<a class="el" href="structnetsnmp__tdata__s.html">netsnmp_tdata</a> *table, <a class="el" href="structnetsnmp__tdata__row__s.html">netsnmp_tdata_row</a> *row)</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Adds a row to the given table (stored in proper lexographical order). <a href="#gaf23857985d7a1844c1a6fcbd9a46cbb0"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__tdata.html#ga2a95b40f9b45c8e1c0d41bf8ff90df98">netsnmp_tdata_replace_row</a> (<a class="el" href="structnetsnmp__tdata__s.html">netsnmp_tdata</a> *table, <a class="el" href="structnetsnmp__tdata__row__s.html">netsnmp_tdata_row</a> *origrow, <a class="el" href="structnetsnmp__tdata__row__s.html">netsnmp_tdata_row</a> *newrow)</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">swaps out origrow with newrow. <a href="#ga2a95b40f9b45c8e1c0d41bf8ff90df98"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="structnetsnmp__tdata__row__s.html">netsnmp_tdata_row</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__tdata.html#gaf9ffb841d7bc13aee1236fa0fd826e66">netsnmp_tdata_remove_row</a> (<a class="el" href="structnetsnmp__tdata__s.html">netsnmp_tdata</a> *table, <a class="el" href="structnetsnmp__tdata__row__s.html">netsnmp_tdata_row</a> *row)</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">removes a row from the given table and returns it (no free's called) <a href="#gaf9ffb841d7bc13aee1236fa0fd826e66"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__tdata.html#ga188d513e71f2d92d9bdfdd6bbf681618">netsnmp_tdata_remove_and_delete_row</a> (<a class="el" href="structnetsnmp__tdata__s.html">netsnmp_tdata</a> *table, <a class="el" href="structnetsnmp__tdata__row__s.html">netsnmp_tdata_row</a> *row)</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">removes and frees a row of the given table and returns the table-specific entry data <a href="#ga188d513e71f2d92d9bdfdd6bbf681618"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__handler.html#ga77f4225c0e0c1d549e634f58dba3de3d">netsnmp_mib_handler</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__tdata.html#gae30423b26be87f59f54b1d257afcbfe6">netsnmp_get_tdata_handler</a> (<a class="el" href="structnetsnmp__tdata__s.html">netsnmp_tdata</a> *table)</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Creates a tdata handler and returns it. <a href="#gae30423b26be87f59f54b1d257afcbfe6"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga8b01d4518bcf3d8636a52600c1c7d353"></a><!-- doxytag: member="tdata::_netsnmp_tdata_helper_handler" ref="ga8b01d4518bcf3d8636a52600c1c7d353" args="(netsnmp_mib_handler *handler, netsnmp_handler_registration *reginfo, netsnmp_agent_request_info *reqinfo, netsnmp_request_info *requests)" -->
int </td><td class="memItemRight" valign="bottom"><b>_netsnmp_tdata_helper_handler</b> (<a class="el" href="group__handler.html#ga77f4225c0e0c1d549e634f58dba3de3d">netsnmp_mib_handler</a> *handler, <a class="el" href="group__handler.html#gac475ff73806c2d76ebfc78a87d921b8b">netsnmp_handler_registration</a> *reginfo, <a class="el" href="structnetsnmp__agent__request__info__s.html">netsnmp_agent_request_info</a> *reqinfo, <a class="el" href="structnetsnmp__request__info__s.html">netsnmp_request_info</a> *requests)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__tdata.html#gae93291e10d8d00e78a8d055d599f7728">netsnmp_tdata_register</a> (<a class="el" href="group__handler.html#gac475ff73806c2d76ebfc78a87d921b8b">netsnmp_handler_registration</a> *reginfo, <a class="el" href="structnetsnmp__tdata__s.html">netsnmp_tdata</a> *table, <a class="el" href="structnetsnmp__table__registration__info__s.html">netsnmp_table_registration_info</a> *table_info)</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">registers a tdata-based MIB table <a href="#gae93291e10d8d00e78a8d055d599f7728"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="structnetsnmp__tdata__s.html">netsnmp_tdata</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__tdata.html#ga8d97e4c8e1d003a2ce855780ee3e801c">netsnmp_tdata_extract_table</a> (<a class="el" href="structnetsnmp__request__info__s.html">netsnmp_request_info</a> *request)</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">extracts the tdata table from the request structure <a href="#ga8d97e4c8e1d003a2ce855780ee3e801c"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="structnetsnmp__container__s.html">netsnmp_container</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__tdata.html#gae9ad0139d0db555ceab382549cbd5119">netsnmp_tdata_extract_container</a> (<a class="el" href="structnetsnmp__request__info__s.html">netsnmp_request_info</a> *request)</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">extracts the tdata container from the request structure <a href="#gae9ad0139d0db555ceab382549cbd5119"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="structnetsnmp__tdata__row__s.html">netsnmp_tdata_row</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__tdata.html#ga7f7d01bd01e5e85935922db737b59b58">netsnmp_tdata_extract_row</a> (<a class="el" href="structnetsnmp__request__info__s.html">netsnmp_request_info</a> *request)</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">extracts the tdata row being accessed from the request structure <a href="#ga7f7d01bd01e5e85935922db737b59b58"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__tdata.html#gad37fb86feb914c0d9c7f20a71d1beedc">netsnmp_tdata_extract_entry</a> (<a class="el" href="structnetsnmp__request__info__s.html">netsnmp_request_info</a> *request)</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">extracts the (table-specific) entry being accessed from the request structure <a href="#gad37fb86feb914c0d9c7f20a71d1beedc"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">NETSNMP_INLINE void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__tdata.html#ga1d5551e29d3a8229f88ed26e6f19cfcc">netsnmp_insert_tdata_row</a> (<a class="el" href="structnetsnmp__request__info__s.html">netsnmp_request_info</a> *request, <a class="el" href="structnetsnmp__tdata__row__s.html">netsnmp_tdata_row</a> *row)</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">inserts a newly created tdata row into a request <a href="#ga1d5551e29d3a8229f88ed26e6f19cfcc"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__tdata.html#ga95d3098f5812d6b3ccc3fbe063a63677">netsnmp_tdata_row_entry</a> (<a class="el" href="structnetsnmp__tdata__row__s.html">netsnmp_tdata_row</a> *row)</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">returns the (table-specific) entry data for a given row <a href="#ga95d3098f5812d6b3ccc3fbe063a63677"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="structnetsnmp__tdata__row__s.html">netsnmp_tdata_row</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__tdata.html#gac24a7545850520c5262ac44a18e433b8">netsnmp_tdata_row_first</a> (<a class="el" href="structnetsnmp__tdata__s.html">netsnmp_tdata</a> *table)</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">returns the first row in the table <a href="#gac24a7545850520c5262ac44a18e433b8"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="structnetsnmp__tdata__row__s.html">netsnmp_tdata_row</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__tdata.html#ga17aa6e226131aae52f0fe81724d5256b">netsnmp_tdata_row_get</a> (<a class="el" href="structnetsnmp__tdata__s.html">netsnmp_tdata</a> *table, <a class="el" href="structnetsnmp__tdata__row__s.html">netsnmp_tdata_row</a> *row)</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">finds a row in the 'tdata' table given another row <a href="#ga17aa6e226131aae52f0fe81724d5256b"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="structnetsnmp__tdata__row__s.html">netsnmp_tdata_row</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__tdata.html#gabe9a6029800e0870ae993bf313223aec">netsnmp_tdata_row_next</a> (<a class="el" href="structnetsnmp__tdata__s.html">netsnmp_tdata</a> *table, <a class="el" href="structnetsnmp__tdata__row__s.html">netsnmp_tdata_row</a> *row)</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">returns the next row in the table <a href="#gabe9a6029800e0870ae993bf313223aec"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="structnetsnmp__tdata__row__s.html">netsnmp_tdata_row</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__tdata.html#gad818d4f7d6268ac869dffbfd497aec8f">netsnmp_tdata_row_get_byidx</a> (<a class="el" href="structnetsnmp__tdata__s.html">netsnmp_tdata</a> *table, <a class="el" href="structvariable__list.html">netsnmp_variable_list</a> *indexes)</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">finds a row in the 'tdata' table given the index values <a href="#gad818d4f7d6268ac869dffbfd497aec8f"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="structnetsnmp__tdata__row__s.html">netsnmp_tdata_row</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__tdata.html#ga166de58a9d4625e6ce59f99f7199bdd5">netsnmp_tdata_row_get_byoid</a> (<a class="el" href="structnetsnmp__tdata__s.html">netsnmp_tdata</a> *table, oid *searchfor, size_t searchfor_len)</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">finds a row in the 'tdata' table given the index OID <a href="#ga166de58a9d4625e6ce59f99f7199bdd5"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="structnetsnmp__tdata__row__s.html">netsnmp_tdata_row</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__tdata.html#ga9d7c7348c9af889ae81dfa5eda4eae80">netsnmp_tdata_row_next_byidx</a> (<a class="el" href="structnetsnmp__tdata__s.html">netsnmp_tdata</a> *table, <a class="el" href="structvariable__list.html">netsnmp_variable_list</a> *indexes)</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">finds the lexically next row in the 'tdata' table given the index values <a href="#ga9d7c7348c9af889ae81dfa5eda4eae80"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="structnetsnmp__tdata__row__s.html">netsnmp_tdata_row</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__tdata.html#ga78ab48599a37a2b5e7d8e954a1618c39">netsnmp_tdata_row_next_byoid</a> (<a class="el" href="structnetsnmp__tdata__s.html">netsnmp_tdata</a> *table, oid *searchfor, size_t searchfor_len)</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">finds the lexically next row in the 'tdata' table given the index OID <a href="#ga78ab48599a37a2b5e7d8e954a1618c39"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaf35099adddad492f610adedc5fdb8dee"></a><!-- doxytag: member="tdata::netsnmp_tdata_row_count" ref="gaf35099adddad492f610adedc5fdb8dee" args="(netsnmp_tdata *table)" -->
int </td><td class="memItemRight" valign="bottom"><b>netsnmp_tdata_row_count</b> (<a class="el" href="structnetsnmp__tdata__s.html">netsnmp_tdata</a> *table)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__tdata.html#ga36137a5d1298b66a7096422201ebeb3f">netsnmp_tdata_compare_idx</a> (<a class="el" href="structnetsnmp__tdata__row__s.html">netsnmp_tdata_row</a> *row, <a class="el" href="structvariable__list.html">netsnmp_variable_list</a> *indexes)</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">compare a row with the given index values <a href="#ga36137a5d1298b66a7096422201ebeb3f"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__tdata.html#gab3622eddefa66962814927606b21cc2c">netsnmp_tdata_compare_oid</a> (<a class="el" href="structnetsnmp__tdata__row__s.html">netsnmp_tdata_row</a> *row, oid *compareto, size_t compareto_len)</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">compare a row with the given index OID <a href="#gab3622eddefa66962814927606b21cc2c"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga310b1fbdedf92c3da4870daa76ef9cb4"></a><!-- doxytag: member="tdata::netsnmp_tdata_compare_subtree_idx" ref="ga310b1fbdedf92c3da4870daa76ef9cb4" args="(netsnmp_tdata_row *row, netsnmp_variable_list *indexes)" -->
int </td><td class="memItemRight" valign="bottom"><b>netsnmp_tdata_compare_subtree_idx</b> (<a class="el" href="structnetsnmp__tdata__row__s.html">netsnmp_tdata_row</a> *row, <a class="el" href="structvariable__list.html">netsnmp_variable_list</a> *indexes)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaf29603fd5e48b3f4597333e1e0cb2017"></a><!-- doxytag: member="tdata::netsnmp_tdata_compare_subtree_oid" ref="gaf29603fd5e48b3f4597333e1e0cb2017" args="(netsnmp_tdata_row *row, oid *compareto, size_t compareto_len)" -->
int </td><td class="memItemRight" valign="bottom"><b>netsnmp_tdata_compare_subtree_oid</b> (<a class="el" href="structnetsnmp__tdata__row__s.html">netsnmp_tdata_row</a> *row, oid *compareto, size_t compareto_len)</td></tr>
<tr><td colspan="2"><h2><a name="var-members"></a>
Variables</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga9ed8a5fa0cef0fb6df777c2d33015371"></a><!-- doxytag: member="tdata::_netsnmp_tdata_helper_handler" ref="ga9ed8a5fa0cef0fb6df777c2d33015371" args="" -->
Netsnmp_Node_Handler </td><td class="memItemRight" valign="bottom"><b>_netsnmp_tdata_helper_handler</b></td></tr>
</table>
<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
<p>Implement a table with datamatted storage. </p>
<p>This helper helps you implement a table where all the rows are expected to be stored within the agent itself and not in some external storage location. It can be used to store a list of rows, where a row consists of the indexes to the table and a generic data pointer. You can then implement a subhandler which is passed the exact row definition and data it must return data for or accept data for. Complex GETNEXT handling is greatly simplified in this case. </p>
<hr/><h2>Function Documentation</h2>
<a class="anchor" id="gae30423b26be87f59f54b1d257afcbfe6"></a><!-- doxytag: member="table_tdata.c::netsnmp_get_tdata_handler" ref="gae30423b26be87f59f54b1d257afcbfe6" args="(netsnmp_tdata *table)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="group__handler.html#ga77f4225c0e0c1d549e634f58dba3de3d">netsnmp_mib_handler</a>* <a class="el" href="group__tdata.html#gae30423b26be87f59f54b1d257afcbfe6">netsnmp_get_tdata_handler</a> </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structnetsnmp__tdata__s.html">netsnmp_tdata</a> * </td>
<td class="paramname"><em>table</em></td><td>)</td>
<td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Creates a tdata handler and returns it. </p>
<p>Definition at line <a class="el" href="table__tdata_8c_source.html#l00293">293</a> of file <a class="el" href="table__tdata_8c_source.html">table_tdata.c</a>.</p>
</div>
</div>
<a class="anchor" id="ga1d5551e29d3a8229f88ed26e6f19cfcc"></a><!-- doxytag: member="table_tdata.c::netsnmp_insert_tdata_row" ref="ga1d5551e29d3a8229f88ed26e6f19cfcc" args="(netsnmp_request_info *request, netsnmp_tdata_row *row)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">NETSNMP_INLINE void <a class="el" href="group__tdata.html#ga1d5551e29d3a8229f88ed26e6f19cfcc">netsnmp_insert_tdata_row</a> </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structnetsnmp__request__info__s.html">netsnmp_request_info</a> * </td>
<td class="paramname"><em>request</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="structnetsnmp__tdata__row__s.html">netsnmp_tdata_row</a> * </td>
<td class="paramname"><em>row</em> </td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>inserts a newly created tdata row into a request </p>
<p>Definition at line <a class="el" href="table__tdata_8c_source.html#l00408">408</a> of file <a class="el" href="table__tdata_8c_source.html">table_tdata.c</a>.</p>
</div>
</div>
<a class="anchor" id="gaf23857985d7a1844c1a6fcbd9a46cbb0"></a><!-- doxytag: member="table_tdata.c::netsnmp_tdata_add_row" ref="gaf23857985d7a1844c1a6fcbd9a46cbb0" args="(netsnmp_tdata *table, netsnmp_tdata_row *row)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int <a class="el" href="group__tdata.html#gaf23857985d7a1844c1a6fcbd9a46cbb0">netsnmp_tdata_add_row</a> </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structnetsnmp__tdata__s.html">netsnmp_tdata</a> * </td>
<td class="paramname"><em>table</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="structnetsnmp__tdata__row__s.html">netsnmp_tdata_row</a> * </td>
<td class="paramname"><em>row</em> </td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Adds a row to the given table (stored in proper lexographical order). </p>
<p>returns SNMPERR_SUCCESS on successful addition. or SNMPERR_GENERR on failure (E.G., indexes already existed) </p>
<p>Definition at line <a class="el" href="table__tdata_8c_source.html#l00195">195</a> of file <a class="el" href="table__tdata_8c_source.html">table_tdata.c</a>.</p>
</div>
</div>
<a class="anchor" id="ga55e263f21d752af90fc11aef2df5d3a5"></a><!-- doxytag: member="table_tdata.c::netsnmp_tdata_clone_row" ref="ga55e263f21d752af90fc11aef2df5d3a5" args="(netsnmp_tdata_row *row)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structnetsnmp__tdata__row__s.html">netsnmp_tdata_row</a>* <a class="el" href="group__tdata.html#ga55e263f21d752af90fc11aef2df5d3a5">netsnmp_tdata_clone_row</a> </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structnetsnmp__tdata__row__s.html">netsnmp_tdata_row</a> * </td>
<td class="paramname"><em>row</em></td><td>)</td>
<td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>clones a 'tdata' row. </p>
<p>DOES NOT CLONE THE TABLE-SPECIFIC ENTRY DATA. </p>
<p>Definition at line <a class="el" href="table__tdata_8c_source.html#l00101">101</a> of file <a class="el" href="table__tdata_8c_source.html">table_tdata.c</a>.</p>
</div>
</div>
<a class="anchor" id="ga36137a5d1298b66a7096422201ebeb3f"></a><!-- doxytag: member="table_tdata.c::netsnmp_tdata_compare_idx" ref="ga36137a5d1298b66a7096422201ebeb3f" args="(netsnmp_tdata_row *row, netsnmp_variable_list *indexes)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int <a class="el" href="group__tdata.html#ga36137a5d1298b66a7096422201ebeb3f">netsnmp_tdata_compare_idx</a> </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structnetsnmp__tdata__row__s.html">netsnmp_tdata_row</a> * </td>
<td class="paramname"><em>row</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="structvariable__list.html">netsnmp_variable_list</a> * </td>
<td class="paramname"><em>indexes</em> </td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>compare a row with the given index values </p>
<p>Definition at line <a class="el" href="table__tdata_8c_source.html#l00527">527</a> of file <a class="el" href="table__tdata_8c_source.html">table_tdata.c</a>.</p>
</div>
</div>
<a class="anchor" id="gab3622eddefa66962814927606b21cc2c"></a><!-- doxytag: member="table_tdata.c::netsnmp_tdata_compare_oid" ref="gab3622eddefa66962814927606b21cc2c" args="(netsnmp_tdata_row *row, oid *compareto, size_t compareto_len)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int <a class="el" href="group__tdata.html#gab3622eddefa66962814927606b21cc2c">netsnmp_tdata_compare_oid</a> </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structnetsnmp__tdata__row__s.html">netsnmp_tdata_row</a> * </td>
<td class="paramname"><em>row</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">oid * </td>
<td class="paramname"><em>compareto</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">size_t </td>
<td class="paramname"><em>compareto_len</em> </td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>compare a row with the given index OID </p>
<p>Definition at line <a class="el" href="table__tdata_8c_source.html#l00540">540</a> of file <a class="el" href="table__tdata_8c_source.html">table_tdata.c</a>.</p>
</div>
</div>
<a class="anchor" id="ga93afd3a95dd2f05bc0621115da44aca1"></a><!-- doxytag: member="table_tdata.c::netsnmp_tdata_copy_row" ref="ga93afd3a95dd2f05bc0621115da44aca1" args="(netsnmp_tdata_row *dst_row, netsnmp_tdata_row *src_row)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int <a class="el" href="group__tdata.html#ga93afd3a95dd2f05bc0621115da44aca1">netsnmp_tdata_copy_row</a> </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structnetsnmp__tdata__row__s.html">netsnmp_tdata_row</a> * </td>
<td class="paramname"><em>dst_row</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="structnetsnmp__tdata__row__s.html">netsnmp_tdata_row</a> * </td>
<td class="paramname"><em>src_row</em> </td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>copy the contents of a 'tdata' row. </p>
<p>DOES NOT COPY THE TABLE-SPECIFIC ENTRY DATA. </p>
<p>Definition at line <a class="el" href="table__tdata_8c_source.html#l00138">138</a> of file <a class="el" href="table__tdata_8c_source.html">table_tdata.c</a>.</p>
</div>
</div>
<a class="anchor" id="ga82741b230d287e65b746a97c2f4d4d3d"></a><!-- doxytag: member="table_tdata.c::netsnmp_tdata_create_row" ref="ga82741b230d287e65b746a97c2f4d4d3d" args="(void)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structnetsnmp__tdata__row__s.html">netsnmp_tdata_row</a>* <a class="el" href="group__tdata.html#ga82741b230d287e65b746a97c2f4d4d3d">netsnmp_tdata_create_row</a> </td>
<td>(</td>
<td class="paramtype">void </td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>creates and returns a pointer to new row data structure </p>
<p>Definition at line <a class="el" href="table__tdata_8c_source.html#l00093">93</a> of file <a class="el" href="table__tdata_8c_source.html">table_tdata.c</a>.</p>
</div>
</div>
<a class="anchor" id="gacfad47aa528f6189c0005b5e905f40d2"></a><!-- doxytag: member="table_tdata.c::netsnmp_tdata_create_table" ref="gacfad47aa528f6189c0005b5e905f40d2" args="(const char *name, long flags)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structnetsnmp__tdata__s.html">netsnmp_tdata</a>* <a class="el" href="group__tdata.html#gacfad47aa528f6189c0005b5e905f40d2">netsnmp_tdata_create_table</a> </td>
<td>(</td>
<td class="paramtype">const char * </td>
<td class="paramname"><em>name</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">long </td>
<td class="paramname"><em>flags</em> </td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>creates and returns a 'tdata' table data structure </p>
<p>Definition at line <a class="el" href="table__tdata_8c_source.html#l00054">54</a> of file <a class="el" href="table__tdata_8c_source.html">table_tdata.c</a>.</p>
</div>
</div>
<a class="anchor" id="ga3a8c09b15b62dae89b897551147a15f4"></a><!-- doxytag: member="table_tdata.c::netsnmp_tdata_delete_row" ref="ga3a8c09b15b62dae89b897551147a15f4" args="(netsnmp_tdata_row *row)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void* <a class="el" href="group__tdata.html#ga3a8c09b15b62dae89b897551147a15f4">netsnmp_tdata_delete_row</a> </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structnetsnmp__tdata__row__s.html">netsnmp_tdata_row</a> * </td>
<td class="paramname"><em>row</em></td><td>)</td>
<td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>deletes the memory used by the specified row returns the table-specific entry data (that it doesn't know how to delete) </p>
<p>Definition at line <a class="el" href="table__tdata_8c_source.html#l00166">166</a> of file <a class="el" href="table__tdata_8c_source.html">table_tdata.c</a>.</p>
</div>
</div>
<a class="anchor" id="gac4fcb6937bee001a265e2d215d5efddb"></a><!-- doxytag: member="table_tdata.c::netsnmp_tdata_delete_table" ref="gac4fcb6937bee001a265e2d215d5efddb" args="(netsnmp_tdata *table)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="group__tdata.html#gac4fcb6937bee001a265e2d215d5efddb">netsnmp_tdata_delete_table</a> </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structnetsnmp__tdata__s.html">netsnmp_tdata</a> * </td>
<td class="paramname"><em>table</em></td><td>)</td>
<td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>creates and returns a 'tdata' table data structure </p>
<p>Definition at line <a class="el" href="table__tdata_8c_source.html#l00077">77</a> of file <a class="el" href="table__tdata_8c_source.html">table_tdata.c</a>.</p>
</div>
</div>
<a class="anchor" id="gae9ad0139d0db555ceab382549cbd5119"></a><!-- doxytag: member="table_tdata.c::netsnmp_tdata_extract_container" ref="gae9ad0139d0db555ceab382549cbd5119" args="(netsnmp_request_info *request)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structnetsnmp__container__s.html">netsnmp_container</a>* <a class="el" href="group__tdata.html#gae9ad0139d0db555ceab382549cbd5119">netsnmp_tdata_extract_container</a> </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structnetsnmp__request__info__s.html">netsnmp_request_info</a> * </td>
<td class="paramname"><em>request</em></td><td>)</td>
<td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>extracts the tdata container from the request structure </p>
<p>Definition at line <a class="el" href="table__tdata_8c_source.html#l00379">379</a> of file <a class="el" href="table__tdata_8c_source.html">table_tdata.c</a>.</p>
</div>
</div>
<a class="anchor" id="gad37fb86feb914c0d9c7f20a71d1beedc"></a><!-- doxytag: member="table_tdata.c::netsnmp_tdata_extract_entry" ref="gad37fb86feb914c0d9c7f20a71d1beedc" args="(netsnmp_request_info *request)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void* <a class="el" href="group__tdata.html#gad37fb86feb914c0d9c7f20a71d1beedc">netsnmp_tdata_extract_entry</a> </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structnetsnmp__request__info__s.html">netsnmp_request_info</a> * </td>
<td class="paramname"><em>request</em></td><td>)</td>
<td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>extracts the (table-specific) entry being accessed from the request structure </p>
<p>Definition at line <a class="el" href="table__tdata_8c_source.html#l00396">396</a> of file <a class="el" href="table__tdata_8c_source.html">table_tdata.c</a>.</p>
</div>
</div>
<a class="anchor" id="ga7f7d01bd01e5e85935922db737b59b58"></a><!-- doxytag: member="table_tdata.c::netsnmp_tdata_extract_row" ref="ga7f7d01bd01e5e85935922db737b59b58" args="(netsnmp_request_info *request)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structnetsnmp__tdata__row__s.html">netsnmp_tdata_row</a>* <a class="el" href="group__tdata.html#ga7f7d01bd01e5e85935922db737b59b58">netsnmp_tdata_extract_row</a> </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structnetsnmp__request__info__s.html">netsnmp_request_info</a> * </td>
<td class="paramname"><em>request</em></td><td>)</td>
<td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>extracts the tdata row being accessed from the request structure </p>
<p>Definition at line <a class="el" href="table__tdata_8c_source.html#l00388">388</a> of file <a class="el" href="table__tdata_8c_source.html">table_tdata.c</a>.</p>
</div>
</div>
<a class="anchor" id="ga8d97e4c8e1d003a2ce855780ee3e801c"></a><!-- doxytag: member="table_tdata.c::netsnmp_tdata_extract_table" ref="ga8d97e4c8e1d003a2ce855780ee3e801c" args="(netsnmp_request_info *request)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structnetsnmp__tdata__s.html">netsnmp_tdata</a>* <a class="el" href="group__tdata.html#ga8d97e4c8e1d003a2ce855780ee3e801c">netsnmp_tdata_extract_table</a> </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structnetsnmp__request__info__s.html">netsnmp_request_info</a> * </td>
<td class="paramname"><em>request</em></td><td>)</td>
<td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>extracts the tdata table from the request structure </p>
<p>Definition at line <a class="el" href="table__tdata_8c_source.html#l00371">371</a> of file <a class="el" href="table__tdata_8c_source.html">table_tdata.c</a>.</p>
</div>
</div>
<a class="anchor" id="gae93291e10d8d00e78a8d055d599f7728"></a><!-- doxytag: member="table_tdata.c::netsnmp_tdata_register" ref="gae93291e10d8d00e78a8d055d599f7728" args="(netsnmp_handler_registration *reginfo, netsnmp_tdata *table, netsnmp_table_registration_info *table_info)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int <a class="el" href="group__tdata.html#gae93291e10d8d00e78a8d055d599f7728">netsnmp_tdata_register</a> </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group__handler.html#gac475ff73806c2d76ebfc78a87d921b8b">netsnmp_handler_registration</a> * </td>
<td class="paramname"><em>reginfo</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="structnetsnmp__tdata__s.html">netsnmp_tdata</a> * </td>
<td class="paramname"><em>table</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="structnetsnmp__table__registration__info__s.html">netsnmp_table_registration_info</a> * </td>
<td class="paramname"><em>table_info</em> </td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>registers a tdata-based MIB table </p>
<p>Definition at line <a class="el" href="table__tdata_8c_source.html#l00360">360</a> of file <a class="el" href="table__tdata_8c_source.html">table_tdata.c</a>.</p>
</div>
</div>
<a class="anchor" id="ga188d513e71f2d92d9bdfdd6bbf681618"></a><!-- doxytag: member="table_tdata.c::netsnmp_tdata_remove_and_delete_row" ref="ga188d513e71f2d92d9bdfdd6bbf681618" args="(netsnmp_tdata *table, netsnmp_tdata_row *row)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void* <a class="el" href="group__tdata.html#ga188d513e71f2d92d9bdfdd6bbf681618">netsnmp_tdata_remove_and_delete_row</a> </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structnetsnmp__tdata__s.html">netsnmp_tdata</a> * </td>
<td class="paramname"><em>table</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="structnetsnmp__tdata__row__s.html">netsnmp_tdata_row</a> * </td>
<td class="paramname"><em>row</em> </td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>removes and frees a row of the given table and returns the table-specific entry data </p>
<p>returns the void * pointer on successful deletion. or NULL on failure (bad arguments) </p>
<p>Definition at line <a class="el" href="table__tdata_8c_source.html#l00269">269</a> of file <a class="el" href="table__tdata_8c_source.html">table_tdata.c</a>.</p>
</div>
</div>
<a class="anchor" id="gaf9ffb841d7bc13aee1236fa0fd826e66"></a><!-- doxytag: member="table_tdata.c::netsnmp_tdata_remove_row" ref="gaf9ffb841d7bc13aee1236fa0fd826e66" args="(netsnmp_tdata *table, netsnmp_tdata_row *row)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structnetsnmp__tdata__row__s.html">netsnmp_tdata_row</a>* <a class="el" href="group__tdata.html#gaf9ffb841d7bc13aee1236fa0fd826e66">netsnmp_tdata_remove_row</a> </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structnetsnmp__tdata__s.html">netsnmp_tdata</a> * </td>
<td class="paramname"><em>table</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="structnetsnmp__tdata__row__s.html">netsnmp_tdata_row</a> * </td>
<td class="paramname"><em>row</em> </td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>removes a row from the given table and returns it (no free's called) </p>
<p>returns the row pointer itself on successful removing. or NULL on failure (bad arguments) </p>
<p>Definition at line <a class="el" href="table__tdata_8c_source.html#l00251">251</a> of file <a class="el" href="table__tdata_8c_source.html">table_tdata.c</a>.</p>
</div>
</div>
<a class="anchor" id="ga2a95b40f9b45c8e1c0d41bf8ff90df98"></a><!-- doxytag: member="table_tdata.c::netsnmp_tdata_replace_row" ref="ga2a95b40f9b45c8e1c0d41bf8ff90df98" args="(netsnmp_tdata *table, netsnmp_tdata_row *origrow, netsnmp_tdata_row *newrow)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="group__tdata.html#ga2a95b40f9b45c8e1c0d41bf8ff90df98">netsnmp_tdata_replace_row</a> </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structnetsnmp__tdata__s.html">netsnmp_tdata</a> * </td>
<td class="paramname"><em>table</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="structnetsnmp__tdata__row__s.html">netsnmp_tdata_row</a> * </td>
<td class="paramname"><em>origrow</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="structnetsnmp__tdata__row__s.html">netsnmp_tdata_row</a> * </td>
<td class="paramname"><em>newrow</em> </td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>swaps out origrow with newrow. </p>
<p>This does *not* delete/free anything! </p>
<p>Definition at line <a class="el" href="table__tdata_8c_source.html#l00236">236</a> of file <a class="el" href="table__tdata_8c_source.html">table_tdata.c</a>.</p>
</div>
</div>
<a class="anchor" id="ga95d3098f5812d6b3ccc3fbe063a63677"></a><!-- doxytag: member="table_tdata.c::netsnmp_tdata_row_entry" ref="ga95d3098f5812d6b3ccc3fbe063a63677" args="(netsnmp_tdata_row *row)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void* <a class="el" href="group__tdata.html#ga95d3098f5812d6b3ccc3fbe063a63677">netsnmp_tdata_row_entry</a> </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structnetsnmp__tdata__row__s.html">netsnmp_tdata_row</a> * </td>
<td class="paramname"><em>row</em></td><td>)</td>
<td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>returns the (table-specific) entry data for a given row </p>
<p>Definition at line <a class="el" href="table__tdata_8c_source.html#l00423">423</a> of file <a class="el" href="table__tdata_8c_source.html">table_tdata.c</a>.</p>
</div>
</div>
<a class="anchor" id="gac24a7545850520c5262ac44a18e433b8"></a><!-- doxytag: member="table_tdata.c::netsnmp_tdata_row_first" ref="gac24a7545850520c5262ac44a18e433b8" args="(netsnmp_tdata *table)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structnetsnmp__tdata__row__s.html">netsnmp_tdata_row</a>* <a class="el" href="group__tdata.html#gac24a7545850520c5262ac44a18e433b8">netsnmp_tdata_row_first</a> </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structnetsnmp__tdata__s.html">netsnmp_tdata</a> * </td>
<td class="paramname"><em>table</em></td><td>)</td>
<td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>returns the first row in the table </p>
<p>Definition at line <a class="el" href="table__tdata_8c_source.html#l00433">433</a> of file <a class="el" href="table__tdata_8c_source.html">table_tdata.c</a>.</p>
</div>
</div>
<a class="anchor" id="ga17aa6e226131aae52f0fe81724d5256b"></a><!-- doxytag: member="table_tdata.c::netsnmp_tdata_row_get" ref="ga17aa6e226131aae52f0fe81724d5256b" args="(netsnmp_tdata *table, netsnmp_tdata_row *row)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structnetsnmp__tdata__row__s.html">netsnmp_tdata_row</a>* <a class="el" href="group__tdata.html#ga17aa6e226131aae52f0fe81724d5256b">netsnmp_tdata_row_get</a> </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structnetsnmp__tdata__s.html">netsnmp_tdata</a> * </td>
<td class="paramname"><em>table</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="structnetsnmp__tdata__row__s.html">netsnmp_tdata_row</a> * </td>
<td class="paramname"><em>row</em> </td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>finds a row in the 'tdata' table given another row </p>
<p>Definition at line <a class="el" href="table__tdata_8c_source.html#l00440">440</a> of file <a class="el" href="table__tdata_8c_source.html">table_tdata.c</a>.</p>
</div>
</div>
<a class="anchor" id="gad818d4f7d6268ac869dffbfd497aec8f"></a><!-- doxytag: member="table_tdata.c::netsnmp_tdata_row_get_byidx" ref="gad818d4f7d6268ac869dffbfd497aec8f" args="(netsnmp_tdata *table, netsnmp_variable_list *indexes)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structnetsnmp__tdata__row__s.html">netsnmp_tdata_row</a>* <a class="el" href="group__tdata.html#gad818d4f7d6268ac869dffbfd497aec8f">netsnmp_tdata_row_get_byidx</a> </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structnetsnmp__tdata__s.html">netsnmp_tdata</a> * </td>
<td class="paramname"><em>table</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="structvariable__list.html">netsnmp_variable_list</a> * </td>
<td class="paramname"><em>indexes</em> </td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>finds a row in the 'tdata' table given the index values </p>
<p>Definition at line <a class="el" href="table__tdata_8c_source.html#l00456">456</a> of file <a class="el" href="table__tdata_8c_source.html">table_tdata.c</a>.</p>
</div>
</div>
<a class="anchor" id="ga166de58a9d4625e6ce59f99f7199bdd5"></a><!-- doxytag: member="table_tdata.c::netsnmp_tdata_row_get_byoid" ref="ga166de58a9d4625e6ce59f99f7199bdd5" args="(netsnmp_tdata *table, oid *searchfor, size_t searchfor_len)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structnetsnmp__tdata__row__s.html">netsnmp_tdata_row</a>* <a class="el" href="group__tdata.html#ga166de58a9d4625e6ce59f99f7199bdd5">netsnmp_tdata_row_get_byoid</a> </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structnetsnmp__tdata__s.html">netsnmp_tdata</a> * </td>
<td class="paramname"><em>table</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">oid * </td>
<td class="paramname"><em>searchfor</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">size_t </td>
<td class="paramname"><em>searchfor_len</em> </td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>finds a row in the 'tdata' table given the index OID </p>
<p>Definition at line <a class="el" href="table__tdata_8c_source.html#l00469">469</a> of file <a class="el" href="table__tdata_8c_source.html">table_tdata.c</a>.</p>
</div>
</div>
<a class="anchor" id="gabe9a6029800e0870ae993bf313223aec"></a><!-- doxytag: member="table_tdata.c::netsnmp_tdata_row_next" ref="gabe9a6029800e0870ae993bf313223aec" args="(netsnmp_tdata *table, netsnmp_tdata_row *row)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structnetsnmp__tdata__row__s.html">netsnmp_tdata_row</a>* <a class="el" href="group__tdata.html#gabe9a6029800e0870ae993bf313223aec">netsnmp_tdata_row_next</a> </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structnetsnmp__tdata__s.html">netsnmp_tdata</a> * </td>
<td class="paramname"><em>table</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="structnetsnmp__tdata__row__s.html">netsnmp_tdata_row</a> * </td>
<td class="paramname"><em>row</em> </td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>returns the next row in the table </p>
<p>Definition at line <a class="el" href="table__tdata_8c_source.html#l00448">448</a> of file <a class="el" href="table__tdata_8c_source.html">table_tdata.c</a>.</p>
</div>
</div>
<a class="anchor" id="ga9d7c7348c9af889ae81dfa5eda4eae80"></a><!-- doxytag: member="table_tdata.c::netsnmp_tdata_row_next_byidx" ref="ga9d7c7348c9af889ae81dfa5eda4eae80" args="(netsnmp_tdata *table, netsnmp_variable_list *indexes)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structnetsnmp__tdata__row__s.html">netsnmp_tdata_row</a>* <a class="el" href="group__tdata.html#ga9d7c7348c9af889ae81dfa5eda4eae80">netsnmp_tdata_row_next_byidx</a> </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structnetsnmp__tdata__s.html">netsnmp_tdata</a> * </td>
<td class="paramname"><em>table</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="structvariable__list.html">netsnmp_variable_list</a> * </td>
<td class="paramname"><em>indexes</em> </td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>finds the lexically next row in the 'tdata' table given the index values </p>
<p>Definition at line <a class="el" href="table__tdata_8c_source.html#l00484">484</a> of file <a class="el" href="table__tdata_8c_source.html">table_tdata.c</a>.</p>
</div>
</div>
<a class="anchor" id="ga78ab48599a37a2b5e7d8e954a1618c39"></a><!-- doxytag: member="table_tdata.c::netsnmp_tdata_row_next_byoid" ref="ga78ab48599a37a2b5e7d8e954a1618c39" args="(netsnmp_tdata *table, oid *searchfor, size_t searchfor_len)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structnetsnmp__tdata__row__s.html">netsnmp_tdata_row</a>* <a class="el" href="group__tdata.html#ga78ab48599a37a2b5e7d8e954a1618c39">netsnmp_tdata_row_next_byoid</a> </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structnetsnmp__tdata__s.html">netsnmp_tdata</a> * </td>
<td class="paramname"><em>table</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">oid * </td>
<td class="paramname"><em>searchfor</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">size_t </td>
<td class="paramname"><em>searchfor_len</em> </td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>finds the lexically next row in the 'tdata' table given the index OID </p>
<p>Definition at line <a class="el" href="table__tdata_8c_source.html#l00498">498</a> of file <a class="el" href="table__tdata_8c_source.html">table_tdata.c</a>.</p>
</div>
</div>
</div><!-- contents -->
<hr class="footer"/><address class="footer"><small>
Generated by  <a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.7.6.1
</small></address>
</body>
</html>