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

📄 tiname.c

📁 关于linux 网络编程的一些代码 关于linux 网络编程的一些代码
💻 C
字号:
#include	"unpxti.h"/* * See what the netbuf{} looks like for loopback addresses. * argv[1] must be from /etc/net/ticotsord/hosts and * argv[2] must be from /etc/net/ticotsord/services. */intmain(int argc, char **argv){	int					fd;	if (argc != 3)		err_quit("usage: tiname <hostname> <service-name>");	fd = do_connect(argv[1], argv[2]);	exit(0);}intdo_connect(const char *host, const char *serv){	int					tfd, i;	void				*handle;	struct t_call		tcall;	struct t_discon		tdiscon;	struct netconfig	*ncp;	struct nd_hostserv	hs;	struct nd_addrlist	*alp;	struct netbuf		*np;	handle = Setnetpath();	hs.h_host = (char *) host;	hs.h_serv = (char *) serv;	while ( (ncp = getnetpath(handle)) != NULL) {		if (strcmp(ncp->nc_netid, "ticotsord") != 0)			continue;		if (netdir_getbyname(ncp, &hs, &alp) != 0)			continue;				/* try each server address */		for (i = 0, np = alp->n_addrs; i < alp->n_cnt; i++, np++) {			printf("device = %s\n", ncp->nc_device);			if ( (tfd = t_open(ncp->nc_device, O_RDWR, NULL)) < 0)				err_xti("t_open error for %s", ncp->nc_device);					if (t_bind(tfd, NULL, NULL) < 0)				err_xti("t_bind error");			tcall.addr.len  = np->len;			tcall.addr.buf  = np->buf;	/* pointer copy */			printf("addr.len = %d\n", tcall.addr.len);			printf("addr.buf = %02x %02x %02x %02x %02x %02x %02x %02x %02x %02x %02x\n",					tcall.addr.buf[0], tcall.addr.buf[1],					tcall.addr.buf[2], tcall.addr.buf[3],					tcall.addr.buf[4], tcall.addr.buf[5],					tcall.addr.buf[6], tcall.addr.buf[7],					tcall.addr.buf[8], tcall.addr.buf[9],					tcall.addr.buf[10]);		}		netdir_free(alp, ND_ADDRLIST);	}	endnetpath(handle);	return(-1);}

⌨️ 快捷键说明

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