<!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"/> <title>libnl: Utilities</title> <link href="tabs.css" rel="stylesheet" type="text/css"/> <link href="doxygen.css" rel="stylesheet" type="text/css"/> </head> <body> <!-- Generated by Doxygen 1.7.3 --> <div id="top"> <div id="titlearea"> <table cellspacing="0" cellpadding="0"> <tbody> <tr style="height: 56px;"> <td style="padding-left: 0.5em;"> <div id="projectname">libnl <span id="projectnumber">1.1</span></div> </td> </tr> </tbody> </table> </div> <div id="navrow1" class="tabs"> <ul class="tablist"> <li><a href="index.html"><span>Main Page</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> </ul> </div> </div> <div class="header"> <div class="headertitle"> <h1>Utilities</h1> </div> <div class="ingroups"><a class="el" href="group__route.html">Routing</a></div></div> <div class="contents"> <p>Routing Utility Functions. <a href="#_details">More...</a></p> <table class="memberdecls"> <tr><td colspan="2"><h2><a name="member-group"></a> Routing Table Identifier Translations</h2></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga7a54c0141352b97b42af47b4024ef58e"></a><!-- doxytag: member="route_utils::rtnl_route_read_table_names" ref="ga7a54c0141352b97b42af47b4024ef58e" args="(const char *path)" --> int </td><td class="memItemRight" valign="bottom"><b>rtnl_route_read_table_names</b> (const char *path)</td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga9dded5a9de70370ac42f52c4cb45397a"></a><!-- doxytag: member="route_utils::rtnl_route_table2str" ref="ga9dded5a9de70370ac42f52c4cb45397a" args="(int table, char *buf, size_t size)" --> char * </td><td class="memItemRight" valign="bottom"><b>rtnl_route_table2str</b> (int table, char *buf, size_t size)</td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga1ab67cd975e41cf67d96e21312774f83"></a><!-- doxytag: member="route_utils::rtnl_route_str2table" ref="ga1ab67cd975e41cf67d96e21312774f83" args="(const char *name)" --> int </td><td class="memItemRight" valign="bottom"><b>rtnl_route_str2table</b> (const char *name)</td></tr> <tr><td colspan="2"><h2><a name="member-group"></a> Routing Protocol Translations</h2></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gac70618c94b538fdb4db9e1acee12e1c5"></a><!-- doxytag: member="route_utils::rtnl_route_read_protocol_names" ref="gac70618c94b538fdb4db9e1acee12e1c5" args="(const char *path)" --> int </td><td class="memItemRight" valign="bottom"><b>rtnl_route_read_protocol_names</b> (const char *path)</td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gac18b9972d94e1eb4bf51dabc21c89461"></a><!-- doxytag: member="route_utils::rtnl_route_proto2str" ref="gac18b9972d94e1eb4bf51dabc21c89461" args="(int proto, char *buf, size_t size)" --> char * </td><td class="memItemRight" valign="bottom"><b>rtnl_route_proto2str</b> (int proto, char *buf, size_t size)</td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gae1a9d017ca0c15a6b75145ec6e8856a2"></a><!-- doxytag: member="route_utils::rtnl_route_str2proto" ref="gae1a9d017ca0c15a6b75145ec6e8856a2" args="(const char *name)" --> int </td><td class="memItemRight" valign="bottom"><b>rtnl_route_str2proto</b> (const char *name)</td></tr> <tr><td colspan="2"><h2><a name="member-group"></a> Routing Metrices Translations</h2></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gae265969d1cfd065032f7e4ed15d518bf"></a><!-- doxytag: member="route_utils::rtnl_route_metric2str" ref="gae265969d1cfd065032f7e4ed15d518bf" args="(int metric, char *buf, size_t size)" --> char * </td><td class="memItemRight" valign="bottom"><b>rtnl_route_metric2str</b> (int metric, char *buf, size_t size)</td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gae3d95c5fa400ad29baaf1f32148639c9"></a><!-- doxytag: member="route_utils::rtnl_route_str2metric" ref="gae3d95c5fa400ad29baaf1f32148639c9" args="(const char *name)" --> int </td><td class="memItemRight" valign="bottom"><b>rtnl_route_str2metric</b> (const char *name)</td></tr> <tr><td colspan="2"><h2><a name="member-group"></a> Nexthop Flags Translations</h2></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gada6105d1f24156594bcaac139618fe70"></a><!-- doxytag: member="route_utils::rtnl_route_nh_flags2str" ref="gada6105d1f24156594bcaac139618fe70" args="(int flags, char *buf, size_t len)" --> char * </td><td class="memItemRight" valign="bottom"><b>rtnl_route_nh_flags2str</b> (int flags, char *buf, size_t len)</td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaac9a5a4e07f95deee4adb0491396a213"></a><!-- doxytag: member="route_utils::rtnl_route_nh_str2flags" ref="gaac9a5a4e07f95deee4adb0491396a213" args="(const char *name)" --> int </td><td class="memItemRight" valign="bottom"><b>rtnl_route_nh_str2flags</b> (const char *name)</td></tr> </table> <hr/><a name="_details"></a><h2>Detailed Description</h2> <dl class="user"><dt><b>1) Translating Routing Table Names</b></dt><dd><div class="fragment"><pre class="fragment"> <span class="comment">// libnl is only aware of the de facto standard routing table names.</span> <span class="comment">// Additional name <-> identifier associations have to be read in via</span> <span class="comment">// a configuration file, f.e. /etc/iproute2/rt_tables</span> err = rtnl_route_read_table_names(<span class="stringliteral">"/etc/iproute2/rt_tables"</span>); <span class="comment">// Translating a table name to its idenfier</span> <span class="keywordtype">int</span> table = rtnl_route_str2table(<span class="stringliteral">"main"</span>); <span class="comment">// ... and the other way around.</span> <span class="keywordtype">char</span> buf[32]; printf(<span class="stringliteral">"Name: %s\n"</span>, rtnl_route_table2str(table, buf, <span class="keyword">sizeof</span>(buf))); </pre></div> </dd></dl> </div> <hr class="footer"/><address class="footer"><small>Generated on Mon Mar 21 2011 for libnl by  <a href="http://www.doxygen.org/index.html"> <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.3 </small></address> </body> </html>