⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ospfd_browser.c

📁 BCAST Implementation for NS2
💻 C
📖 第 1 页 / 共 3 页
字号:
Descriptions of configurable values can also\n\be found in Appendix C of\n\<a href=\"http://www.ietf.org/rfc/rfc2328.txt\">the OSPF specification.</a>\n\</td>\n\</tr>\n\</table>\n\</td>\n\\n\<!-- Right hand column -->\n\<td>\n\n";/* This one just asks for address and port to connect * to. */ char *query_attach = "\    <table cellpadding=0 cellspacing=0 border=0 width=400>\n\    <tr>\n\    <td>\n\    <center>\n\    Enter the IP address and port to which you wish to connect:\n\    </center>\n\    </td>\n\    </tr>\n\    </table>\n\    <table width=400>\n\    <tr>\n\    <td align=\"right\">\n\    IP Address:\n\    </td>\n\    <td align=\"left\">\n\    <form action=\"/cgi-bin/ospfd_browser\">\n\    <input name=\"command\" value=\"stat\" type=hidden>\n\    <input name=\"addr\" value=\"$addr$\" size=16>\n\    </td>\n\    </tr>\n\    <tr>\n\    <td align=\"right\">\n\    Port:\n\    </td>\n\    <td align=\"left\">\n\    <input name=\"port\" value=\"$port$\" size=5>\n\    </td>\n\    </tr>\n\    </table>\n\    <table width=400>\n\    <tr>\n\    <td>\n\    <center>\n\    <input type=\"submit\">\n\    </center>\n\    </td>\n\    </tr>\n\    </form>\n\    </table>\n";/* The statistics page. */char *statistics_page = "\<table cellpadding=0 cellspacing=0 border=0>\n\<tr>\n\<td>Router ID</td>\n\<td>$router_id$</td>\n\</tr>\n\<tr>\n\<td># AS-external-LSAs</td>\n\<td>$n_ases$</td>\n\</tr>\n\<tr>\n\<td>ASE checksum</td>\n\<td>$ase_xsum$</td>\n\</tr>\n\<tr>\n\<td># ASEs originated</td>\n\<td>$n_ase_orig$</td>\n\</tr>\n\<tr>\n\<td>ASEs allowed</td>\n\<td>$ase_ceiling$</td>\n\</tr>\n\<tr>\n\<td># Dijkstras</td>\n\<td>$n_dijkstra$</td>\n\</tr>\n\<tr>\n\<td># Areas</td>\n\<td>$n_areas$</td>\n\</tr>\n\<tr>\n\<td># Nbrs in Exchange</td>\n\<td>$n_exchange$</td>\n\</tr>\n\<tr>\n\<td>MOSPF enabled</td>\n\<td>$mospf$</td>\n\</tr>\n\<tr>\n\<td>Inter-area multicast</td>\n\<td>$ia_multicast$</td>\n\</tr>\n\<tr>\n\<td>Inter-AS multicast</td>\n\<td>$as_multicast$</td>\n\</tr>\n\<tr>\n\<td>In overflow state</td>\n\<td>$overflow$</td>\n\</tr>\n\<tr>\n\<td>ospfd version</td>\n\<td>$sw_vers$</td>\n\</tr>\n\</table>\n";/* The areas page. */char *area_header ="\<table border=1>\n\<caption>Router $router_id$'s attached OSPF areas.</caption>\n\<tr>\n\<th>Area</th>\n\<th>#Ifcs</th>\n\<th>#Routers</th>\n\<th>#LSAs</th>\n\<th>Xsum</th>\n\<th>Comments</th>\n\</tr>\n";char *area_row ="\<tr>\n\<td>$area_id$</td>\n\<td>$n_ifcs$</td>\n\<td>$n_rtrs$</td>\n\<td>$n_lsas$</td>\n\<td>$area_xsum$</td>\n\<td>$comments$</td>\n\</tr>\n";char *area_footer ="\</table>\n";/* The select area page. First print the top, then the * list of areas in <opton> tags, and the the * bottom. */char *select_area_top = "\    <table cellpadding=0 cellspacing=0 border=0 width=400>\n\    <tr>\n\    <td>\n\    <center>\n\    Please select the area whose link-state database\n\    you want displayed.\n\    </center>\n\    </td>\n\    </tr>\n\    </table>\n\    <table width=400>\n\    <tr>\n\    <td align=\"right\">\n\    Area ID:\n\    </td>\n\    <td align=\"left\">\n\    <form action=\"/cgi-bin/ospfd_browser\">\n\    <input name=\"command\" value=\"database\" type=hidden>\n\    <input name=\"addr\" value=\"$addr$\" type=hidden>\n\    <input name=\"port\" value=\"$port$\" type=hidden>\n\    <select name=\"area_id\">\n";char *select_area_bottom ="\    </select>\n\    </td>\n\    </tr>\n\    </table>\n\    <table width=400>\n\    <tr>\n\    <td>\n\    <center>\n\    <input type=\"submit\">\n\    </center>\n\    </td>\n\    </tr>\n\    </form>\n\    </table>\n\  </td>\n\  </tr>\n\  </table>\n";/* The pages used to display an area's link-state database */char *database_page_top = "\<table>\n\<tr>\n\<td width=200>\n\Router $router_id$'s link-state database for OSPF\n\Area $area_id$. AS-external-LSAs are not included.\n\</td>\n\</tr>\n\<tr>\n\<td>\n\</center>\n\<table border=1>\n\<tr>\n\<th>LSA Type</th>\n\<th>LS ID</th>\n\<th>Adv. Rtr.</th>\n\<th>LS Seqno</th>\n\<th>Xsum</th>\n\<th>Length</th>\n\<th>Age</th>\n\</tr>\n";char *ase_page_top = "\<table>\n\<tr>\n\<td width=200>\n\Router $router_id$'s database of AS-external-LSAs.\n\</td>\n\</tr>\n\<tr>\n\<td>\n\</center>\n\<table border=1>\n\<tr>\n\<th>LSA Type</th>\n\<th>LS ID</th>\n\<th>Adv. Rtr.</th>\n\<th>LS Seqno</th>\n\<th>Xsum</th>\n\<th>length</th>\n\<th>Age</th>\n\</tr>\n";char *database_row = "\<tr>\n\<td><a href=\"/cgi-bin/ospfd_browser?command=adv&addr=$addr$&port=$port$&area_id=$area_id$&ls_type=$ls_typeno$&ls_id=$ls_id$&adv_rtr=$adv_rtr$\">$ls_type$</a></td>\n\<td>$ls_id$</td>\n\<td>$adv_rtr$</td>\n\<td>$seqno$</td>\n\<td>$lsa_xsum$</td>\n\<td>$lsa_len$</td>\n\<td>$ls_age$</td>\n\</tr>\n";char *database_page_bottom = "\</table>\n\</td>\n\</tr>\n\<tr>\n\<td>\n\<table border=0>\n\<tr>\n\<td><b>#LSAs:</b></td>\n\<td>$n_lsas$</td>\n\</tr>\n\<tr>\n\<td><b>Xsum:</b></td>\n\<td>$area_xsum$</td>\n\</tr>\n\</table>\n\</table>\n";/* The pages used to display the Opaque-LSAs */char *opaque_page_top = "\<table>\n\<tr>\n\<td width=200>\n\Router $router_id$'s link-state database for OSPF\n\Area $area_id$. AS-external-LSAs are not included.\n\</td>\n\</tr>\n\<tr>\n\<td>\n\</center>\n\<table border=1>\n\<tr>\n\<th>Phyint</th>\n\<th>If Address</th>\n\<th>Area</th>\n\<th>LS type</th>\n\<th>LS ID</th>\n\<th>Adv. Rtr.</th>\n\<th>LS Seqno</th>\n\<th>Xsum</th>\n\<th>Length</th>\n\<th>Age</th>\n\</tr>\n";char *opaque_row = "\<tr>\n\<td>$phyint$</a></td>\n\<td>$if_addr$</a></td>\n\<td>$area_id$</a></td>\n\<td>$ls_type$</a></td>\n\<td>$ls_id$</td>\n\<td>$adv_rtr$</td>\n\<td>$seqno$</td>\n\<td>$lsa_xsum$</td>\n\<td>$lsa_len$</td>\n\<td>$ls_age$</td>\n\</tr>\n";/* Pages used to select a given LSA for display. * Top is followed by "<option>area" fields, * and then the bottom. */char *select_lsa_top = "\    <table cellpadding=0 cellspacing=0 border=0 width=400>\n\    <tr>\n\    <td>\n\    <center>\n\    Please select the link-state advertisement that\n\    you want displayed.\n\    </center>\n\    </td>\n\    </tr>\n\    </table>\n\    <table width=400>\n\    <form action=\"/cgi-bin/ospfd_browser\">\n\    <input name=\"command\" value=\"adv\" type=hidden>\n\    <input name=\"addr\" value=\"$addr$\" type=hidden>\n\    <input name=\"port\" value=\"$port$\" type=hidden>\n\    <tr>\n\    <td align=right>Area ID:</td>\n\    <td>\n\    <select name=\"area_id\">\n";char *select_lsa_bottom = "\    </select>\n\    </td>\n\    </tr>\n\    <tr>\n\    <td align=right>LS Type:</td>\n\    <td>\n\    <select name=\"ls_type\">\n\    <option value=\"1\">router-LSA\n\    <option value=\"2\">network-LSA\n\    <option value=\"3\">summary-LSA\n\    <option value=\"4\">ASBR-summary-LSA\n\    <option value=\"5\">AS-external-LSA\n\    <option value=\"6\">group-membership-LSA\n\    </select>\n\    </td>\n\    </tr>\n\    <tr>\n\    <td align=right>LS ID:</td>\n\    <td><input name=\"ls_id\" size=16></td>\n\    </tr>\n\    <tr>\n\    <td align=right>Adv Rtr:</td>\n\    <td><input name=\"adv_rtr\" size=16></td>\n\    </tr>\n\    </table>\n\    <table width=400>\n\    <tr>\n\    <td>\n\    <center>\n\    <input type=\"submit\">\n\    </center>\n\    </td>\n\    </tr>\n\    </form>\n\    </table>\n";/* Pages used to expand a given LSA. */char *expand_lsa_top = "\<table cellpadding=0 border=0>\n\<tr>\n\<td>\n\The following LSA was found in the Area\n\$area_id$ link-state database:\n\<hr>\n\<pre>\n";char *expand_lsa_bottom = "\</pre>\n\</td>\n\</tr>\n\</table>\n";/* Pages used to display the list of interfaces. */char *interface_page_top = "\<table border=1>\n\<caption>Router $router_id$'s OSPF interfaces.</caption>\n\<tr>\n\<th>Phy</th>\n\<th>Addr</th>\n\<th>Area</th>\n\<th>Type</th>\n\<th>State</th>\n\<th>#Nbr</th>\n\<th>#Adj</th>\n\<th>Cost</th>\n\</tr>\n";char *interface_row = "\<tr>\n\<td>$phyname$</td>\n\<td>$if_addr$</td>\n\<td>$if_area$</td>\n\<td>$if_type$</td>\n\<td>$if_state$</td>\n\<td>$if_nnbrs$</td>\n\<td>$if_nfull$</td>\n\<td>$if_cost$</td>\n\</tr>\n";char *interface_page_bottom = "\</table>\n";/* Pages used to display the list of neighbors. */char *neighbor_page_top = "\<table border=1>\n\<caption>Router $router_id$'s OSPF neighbors.</caption>\n\<tr>\n\<th>Phy</th>\n\<th>Addr</th>\n\<th>ID</th>\n\<th>State</th>\n\<th>#DD</th>\n\<th>#Req</th>\n\<th>#Rxmt</th>\n\</tr>\n";char *neighbor_row = "\<tr>\n\<td>$phyname$</td>\n\<td>$n_addr$</td>\n\<td>$n_id$</td>\n\<td>$n_state$</td>\n\<td>$n_ddlst$</td>\n\<td>$n_rqlst$</td>\n\<td>$rxmt_count$</td>\n\</tr>\n";char *neighbor_page_bottom = "\</table>\n";/* Pages used to display the routing table. */char *rttbl_page_top = "\<table border=1>\n\<caption>Router $router_id$'s OSPF routing table.\n\This is the OSPF protocol's internal routing table,\n\and does not necessarily match the routing\n\table in the kernel.</caption>\n\<tr>\n\<th>Prefix</th>\n\<th>Type</th>\n\<th>Cost</th>\n\<th>Ifc</th>\n\<th>Next-hop</th>\n\<th>#Paths</th>\n\</tr>\n";char *rttbl_row = "\<tr>\n\<td>$prefix$</td>\n\<td>$rt_type$</td>\n\<td>$rt_cost$</td>\n\<td>$rt_ifc$</td>\n\<td>$rt_nh$</td>\n\<td>$rt_paths$</td>\n\</tr>\n";char *rttbl_page_bottom = "\</table>\n";/* The footer that is printed with every page. */char *page_footer = "\</td>\n\</tr>\n\</table>\n\\n\<!-- Bottom of the page -->\n\<tr>\n\<td>\n\\n\<center>\n\<table cellpadding=0 cellspacing=0 border=0>\n\<tr>\n\<td width=420 valign=top>\n\<font face=\"Geneva, Arial, Helvetica\" >\n\<p><center>\n\<a href=\"/cgi-bin/ospfd_browser?command=area&addr=$addr$&port=$port$\">Areas</a> |\n\<a href=\"/cgi-bin/ospfd_browser?command=database&addr=$addr$&port=$port$\">Database</a> |\n\<a href=\"/cgi-bin/ospfd_browser?command=interface&addr=$addr$&port=$port$\">Interfaces</a> |\n\<a href=\"/cgi-bin/ospfd_browser?command=neighbor&addr=$addr$&port=$port$\">Neighbors</a> |\n\<a href=\"/cgi-bin/ospfd_browser?command=statistics&addr=$addr$&port=$port$\">Statistics</a> |\n\<a href=\"/cgi-bin/ospfd_browser?command=lsa&addr=$addr$&port=$port$\">LSA expansion</a> |\n\<a href=\"/cgi-bin/ospfd_browser?command=ases&addr=$addr$&port=$port$\">AS externals</a> |\n\<a href=\"/cgi-bin/ospfd_browser?command=route&addr=$addr$&port=$port$\">Routing table</a> |\n\<a href=\"/cgi-bin/ospfd_browser?command=opqs&addr=$addr$&port=$port$\">Opaque-LSAs</a>\n\</center>\n\</td>\n\</tr>\n\</table>\n\</center>\n\\n\</td>\n\</tr>\n\</table>\n\</center>\n\\n\</body>\n\</html>";/* The error page. */ char *error_page = "\    <table cellpadding=0 cellspacing=0 border=0 width=400>\n\    <center>    <tr>\n\    <td align=\"center\">\n\    Data connection error:\n\    <br>    $operation$: $errno$\n\    </td>\n\    </tr>\n\    </center>\n\    </table>\n";/* Display the error page, converting errno to * a string first. */void display_error(char *operation){    if (!header_printed) {        display_html(page_header);	header_printed = true;    }    addVP(&pairs, "operation", operation);    addVP(&pairs, "errno", strerror(errno));    display_html(error_page);    display_html(page_footer);}/* Non-zero values signal enabled. */const char *yesorno(byte val){    return((val != 0) ? "yes" : "no");}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -