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

📄 test-xnet.c

📁 OpenSS7 This the fourth public release of the OpenSS7 Master Package. See README in the release for
💻 C
📖 第 1 页 / 共 5 页
字号:
		return buf;	}	}}char *terrno_string(t_uscalar_t terr, t_scalar_t uerr){	switch (terr) {	case TBADADDR:		return ("[TBADADDR]");	case TBADOPT:		return ("[TBADOPT]");	case TACCES:		return ("[TACCES]");	case TBADF:		return ("[TBADF]");	case TNOADDR:		return ("[TNOADDR]");	case TOUTSTATE:		return ("[TOUTSTATE]");	case TBADSEQ:		return ("[TBADSEQ]");	case TSYSERR:		return errno_string(uerr);	case TLOOK:		return ("[TLOOK]");	case TBADDATA:		return ("[TBADDATA]");	case TBUFOVFLW:		return ("[TBUFOVFLW]");	case TFLOW:		return ("[TFLOW]");	case TNODATA:		return ("[TNODATA]");	case TNODIS:		return ("[TNODIS]");	case TNOUDERR:		return ("[TNOUDERR]");	case TBADFLAG:		return ("[TBADFLAG]");	case TNOREL:		return ("[TNOREL]");	case TNOTSUPPORT:		return ("[TNOTSUPPORT]");	case TSTATECHNG:		return ("[TSTATECHNG]");	case TNOSTRUCTYPE:		return ("[TNOSTRUCTYPE]");	case TBADNAME:		return ("[TBADNAME]");	case TBADQLEN:		return ("[TBADQLEN]");	case TADDRBUSY:		return ("[TADDRBUSY]");	case TINDOUT:		return ("[TINDOUT]");	case TPROVMISMATCH:		return ("[TPROVMISMATCH]");	case TRESQLEN:		return ("[TRESQLEN]");	case TRESADDR:		return ("[TRESADDR]");	case TQFULL:		return ("[TQFULL]");	case TPROTO:		return ("[TPROTO]");	default:	{		static char buf[32];		snprintf(buf, sizeof(buf), "[%lu]", (ulong) terr);		return buf;	}	}}const char *event_string(int event){	switch (event) {	case __EVENT_EOF:		return ("END OF FILE");	case __EVENT_NO_MSG:		return ("NO MESSAGE");	case __EVENT_TIMEOUT:		return ("TIMEOUT");	case __EVENT_UNKNOWN:		return ("UNKNOWN");	case __RESULT_DECODE_ERROR:		return ("DECODE ERROR");	case __RESULT_SCRIPT_ERROR:		return ("SCRIPT ERROR");	case __RESULT_INCONCLUSIVE:		return ("INCONCLUSIVE");	case __RESULT_SUCCESS:		return ("SUCCESS");	case __RESULT_FAILURE:		return ("FAILURE");	case __TEST_CONN_REQ:		return ("T_CONN_REQ");	case __TEST_CONN_RES:		return ("T_CONN_RES");	case __TEST_DISCON_REQ:		return ("T_DISCON_REQ");	case __TEST_DATA_REQ:		return ("T_DATA_REQ");	case __TEST_EXDATA_REQ:		return ("T_EXDATA_REQ");	case __TEST_OPTDATA_REQ:		return ("T_OPTDATA_REQ");	case __TEST_INFO_REQ:		return ("T_INFO_REQ");	case __TEST_BIND_REQ:		return ("T_BIND_REQ");	case __TEST_UNBIND_REQ:		return ("T_UNBIND_REQ");	case __TEST_UNITDATA_REQ:		return ("T_UNITDATA_REQ");	case __TEST_OPTMGMT_REQ:		return ("T_OPTMGMT_REQ");	case __TEST_ORDREL_REQ:		return ("T_ORDREL_REQ");	case __TEST_CONN_IND:		return ("T_CONN_IND");	case __TEST_CONN_CON:		return ("T_CONN_CON");	case __TEST_DISCON_IND:		return ("T_DISCON_IND");	case __TEST_DATA_IND:		return ("T_DATA_IND");	case __TEST_EXDATA_IND:		return ("T_EXDATA_IND");	case __TEST_NRM_OPTDATA_IND:		return ("T_OPTDATA_IND");	case __TEST_EXP_OPTDATA_IND:		return ("T_OPTDATA_IND");	case __TEST_INFO_ACK:		return ("T_INFO_ACK");	case __TEST_BIND_ACK:		return ("T_BIND_ACK");	case __TEST_ERROR_ACK:		return ("T_ERROR_ACK");	case __TEST_OK_ACK:		return ("T_OK_ACK");	case __TEST_UNITDATA_IND:		return ("T_UNITDATA_IND");	case __TEST_UDERROR_IND:		return ("T_UDERROR_IND");	case __TEST_OPTMGMT_ACK:		return ("T_OPTMGMT_ACK");	case __TEST_ORDREL_IND:		return ("T_ORDREL_IND");	case __TEST_ADDR_REQ:		return ("T_ADDR_REQ");	case __TEST_ADDR_ACK:		return ("T_ADDR_ACK");	case __TEST_CAPABILITY_REQ:		return ("T_CAPABILITY_REQ");	case __TEST_CAPABILITY_ACK:		return ("T_CAPABILITY_ACK");	default:		return ("(unexpected");	}}const char *ioctl_string(int cmd, intptr_t arg){	switch (cmd) {	case I_NREAD:		return ("I_NREAD");	case I_PUSH:		return ("I_PUSH");	case I_POP:		return ("I_POP");	case I_LOOK:		return ("I_LOOK");	case I_FLUSH:		return ("I_FLUSH");	case I_SRDOPT:		return ("I_SRDOPT");	case I_GRDOPT:		return ("I_GRDOPT");	case I_STR:		if (arg) {			struct strioctl *icp = (struct strioctl *) arg;			switch (icp->ic_cmd) {			case _O_TI_BIND:				return ("_O_TI_BIND");			case O_TI_BIND:				return ("O_TI_BIND");			case _O_TI_GETINFO:				return ("_O_TI_GETINFO");			case O_TI_GETINFO:				return ("O_TI_GETINFO");			case _O_TI_GETMYNAME:				return ("_O_TI_GETMYNAME");			case _O_TI_GETPEERNAME:				return ("_O_TI_GETPEERNAME");			case _O_TI_OPTMGMT:				return ("_O_TI_OPTMGMT");			case O_TI_OPTMGMT:				return ("O_TI_OPTMGMT");			case _O_TI_TLI_MODE:				return ("_O_TI_TLI_MODE");			case _O_TI_UNBIND:				return ("_O_TI_UNBIND");			case O_TI_UNBIND:				return ("O_TI_UNBIND");			case _O_TI_XTI_CLEAR_EVENT:				return ("_O_TI_XTI_CLEAR_EVENT");			case _O_TI_XTI_GET_STATE:				return ("_O_TI_XTI_GET_STATE");			case _O_TI_XTI_HELLO:				return ("_O_TI_XTI_HELLO");			case _O_TI_XTI_MODE:				return ("_O_TI_XTI_MODE");			case TI_BIND:				return ("TI_BIND");			case TI_CAPABILITY:				return ("TI_CAPABILITY");			case TI_GETADDRS:				return ("TI_GETADDRS");			case TI_GETINFO:				return ("TI_GETINFO");			case TI_GETMYNAME:				return ("TI_GETMYNAME");			case TI_GETPEERNAME:				return ("TI_GETPEERNAME");			case TI_OPTMGMT:				return ("TI_OPTMGMT");			case TI_SETMYNAME:				return ("TI_SETMYNAME");			case TI_SETPEERNAME:				return ("TI_SETPEERNAME");			case TI_SYNC:				return ("TI_SYNC");			case TI_UNBIND:				return ("TI_UNBIND");			}		}		return ("I_STR");	case I_SETSIG:		return ("I_SETSIG");	case I_GETSIG:		return ("I_GETSIG");	case I_FIND:		return ("I_FIND");	case I_LINK:		return ("I_LINK");	case I_UNLINK:		return ("I_UNLINK");	case I_RECVFD:		return ("I_RECVFD");	case I_PEEK:		return ("I_PEEK");	case I_FDINSERT:		return ("I_FDINSERT");	case I_SENDFD:		return ("I_SENDFD");#if 0	case I_E_RECVFD:		return ("I_E_RECVFD");#endif	case I_SWROPT:		return ("I_SWROPT");	case I_GWROPT:		return ("I_GWROPT");	case I_LIST:		return ("I_LIST");	case I_PLINK:		return ("I_PLINK");	case I_PUNLINK:		return ("I_PUNLINK");	case I_FLUSHBAND:		return ("I_FLUSHBAND");	case I_CKBAND:		return ("I_CKBAND");	case I_GETBAND:		return ("I_GETBAND");	case I_ATMARK:		return ("I_ATMARK");	case I_SETCLTIME:		return ("I_SETCLTIME");	case I_GETCLTIME:		return ("I_GETCLTIME");	case I_CANPUT:		return ("I_CANPUT");#if 0	case I_SERROPT:		return ("I_SERROPT");	case I_GERROPT:		return ("I_GERROPT");	case I_ANCHOR:		return ("I_ANCHOR");#endif#if 0	case I_S_RECVFD:		return ("I_S_RECVFD");	case I_STATS:		return ("I_STATS");	case I_BIGPIPE:		return ("I_BIGPIPE");#endif#if 0	case I_GETTP:		return ("I_GETTP");	case I_AUTOPUSH:		return ("I_AUTOPUSH");	case I_HEAP_REPORT:		return ("I_HEAP_REPORT");	case I_FIFO:		return ("I_FIFO");	case I_PUTPMSG:		return ("I_PUTPMSG");	case I_GETPMSG:		return ("I_GETPMSG");	case I_FATTACH:		return ("I_FATTACH");	case I_FDETACH:		return ("I_FDETACH");	case I_PIPE:		return ("I_PIPE");#endif	default:		return ("(unexpected)");	}}const char *signal_string(int signum){	switch (signum) {	case SIGHUP:		return ("SIGHUP");	case SIGINT:		return ("SIGINT");	case SIGQUIT:		return ("SIGQUIT");	case SIGILL:		return ("SIGILL");	case SIGABRT:		return ("SIGABRT");	case SIGFPE:		return ("SIGFPE");	case SIGKILL:		return ("SIGKILL");	case SIGSEGV:		return ("SIGSEGV");	case SIGPIPE:		return ("SIGPIPE");	case SIGALRM:		return ("SIGALRM");	case SIGTERM:		return ("SIGTERM");	case SIGUSR1:		return ("SIGUSR1");	case SIGUSR2:		return ("SIGUSR2");	case SIGCHLD:		return ("SIGCHLD");	case SIGCONT:		return ("SIGCONT");	case SIGSTOP:		return ("SIGSTOP");	case SIGTSTP:		return ("SIGTSTP");	case SIGTTIN:		return ("SIGTTIN");	case SIGTTOU:		return ("SIGTTOU");	case SIGBUS:		return ("SIGBUS");	case SIGPOLL:		return ("SIGPOLL");	case SIGPROF:		return ("SIGPROF");	case SIGSYS:		return ("SIGSYS");	case SIGTRAP:		return ("SIGTRAP");	case SIGURG:		return ("SIGURG");	case SIGVTALRM:		return ("SIGVTALRM");	case SIGXCPU:		return ("SIGXCPU");	case SIGXFSZ:		return ("SIGXFSZ");	default:		return ("unknown");	}}const char *poll_string(short events){	if (events & POLLIN)		return ("POLLIN");	if (events & POLLPRI)		return ("POLLPRI");	if (events & POLLOUT)		return ("POLLOUT");	if (events & POLLRDNORM)		return ("POLLRDNORM");	if (events & POLLRDBAND)		return ("POLLRDBAND");	if (events & POLLWRNORM)		return ("POLLWRNORM");	if (events & POLLWRBAND)		return ("POLLWRBAND");	if (events & POLLERR)		return ("POLLERR");	if (events & POLLHUP)		return ("POLLHUP");	if (events & POLLNVAL)		return ("POLLNVAL");	if (events & POLLMSG)		return ("POLLMSG");	return ("none");}const char *poll_events_string(short events){	static char string[256] = "";	int offset = 0, size = 256, len = 0;	if (events & POLLIN) {		len = snprintf(string + offset, size, "POLLIN|");		offset += len;		size -= len;	}	if (events & POLLPRI) {		len = snprintf(string + offset, size, "POLLPRI|");		offset += len;		size -= len;	}	if (events & POLLOUT) {		len = snprintf(string + offset, size, "POLLOUT|");		offset += len;		size -= len;	}	if (events & POLLRDNORM) {		len = snprintf(string + offset, size, "POLLRDNORM|");		offset += len;		size -= len;	}	if (events & POLLRDBAND) {		len = snprintf(string + offset, size, "POLLRDBAND|");		offset += len;		size -= len;	}	if (events & POLLWRNORM) {		len = snprintf(string + offset, size, "POLLWRNORM|");		offset += len;		size -= len;	}	if (events & POLLWRBAND) {		len = snprintf(string + offset, size, "POLLWRBAND|");		offset += len;		size -= len;	}	if (events & POLLERR) {		len = snprintf(string + offset, size, "POLLERR|");		offset += len;		size -= len;	}	if (events & POLLHUP) {		len = snprintf(string + offset, size, "POLLHUP|");		offset += len;		size -= len;	}	if (events & POLLNVAL) {		len = snprintf(string + offset, size, "POLLNVAL|");		offset += len;		size -= len;	}	if (events & POLLMSG) {		len = snprintf(string + offset, size, "POLLMSG|");		offset += len;		size -= len;	}	return (string);}const char *service_type(t_uscalar_t type){	switch (type) {	case T_CLTS:		return ("T_CLTS");	case T_COTS:		return ("T_COTS");	case T_COTS_ORD:		return ("T_COTS_ORD");	default:		return ("(unknown)");	}}const char *state_string(t_uscalar_t state){	switch (state) {	case TS_UNBND:		return ("TS_UNBND");	case TS_WACK_BREQ:		return ("TS_WACK_BREQ");	case TS_WACK_UREQ:		return ("TS_WACK_UREQ");	case TS_IDLE:		return ("TS_IDLE");	case TS_WACK_OPTREQ:		return ("TS_WACK_OPTREQ");	case TS_WACK_CREQ:		return ("TS_WACK_CREQ");	case TS_WCON_CREQ:		return ("TS_WCON_CREQ");	case TS_WRES_CIND:		return ("TS_WRES_CIND");	case TS_WACK_CRES:		return ("TS_WACK_CRES");	case TS_DATA_XFER:		return ("TS_DATA_XFER");

⌨️ 快捷键说明

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