rtnew.c

来自「TCP-IP红宝书源代码」· C语言 代码 · 共 34 行

C
34
字号
/* rtnew.c - rtnew */

#include <conf.h>
#include <kernel.h>
#include <network.h>

/*------------------------------------------------------------------------
 *  rtnew  -  create a route structure
 *------------------------------------------------------------------------
 */
struct route *
rtnew(IPaddr net, IPaddr mask, IPaddr gw, unsigned metric,
	unsigned ifnum, unsigned ttl)
{
	struct	route *prt;

	prt = (struct route *)getbuf(Route.ri_bpool);
	if (prt == (struct route *)SYSERR) {
		IpRoutingDiscards++;
		return (struct route *)SYSERR;
	}

	prt->rt_net = net;
	prt->rt_mask = mask;
	prt->rt_gw = gw;
	prt->rt_metric = metric;
	prt->rt_ifnum = ifnum;
	prt->rt_ttl = ttl;
	prt->rt_refcnt = 1;	/* our caller */
	prt->rt_usecnt = 0;
	prt->rt_next = NULL;
	return prt;
}

⌨️ 快捷键说明

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