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

📄 mib.fddi

📁 ftam等标准协议服务器和客户端的源代码。
💻 FDDI
字号:
function paths(i,j,		s) {    if (i >= j)	return i;    s = "";    if (j > 8) {	if (i >= 8) { s = s "I"; i -= 8; } else s = (s " ");    }    if (i >= 4) { s = s "L"; i -= 4; } else s = (s " ");    if (i >= 2) { s = s "S"; i -= 2; } else s = (s " ");    if (i >= 1) { s = s "P"; i -= 1; } else s = (s " ");    return s;}function config(i,		s) {    if (i >= 4)	return i;    s = "";    if (i >= 2) { s = s "W"; i -= 2; } else s = (s " ");    if (i >= 1) { s = s "H"; i -= 1; } else s = (s " ");    return s;}function connection(i,		f,s) {    if (i >= 65536) return i;    f = "%s%s"; s = "";    if (i >= 32768) { s = sprintf(f, s, "M-M"); f = "%s,%s"; i -= 32768; }    if (i >= 16384) { s = sprintf(f, s, "M-S"); f = "%s,%s"; i -= 16384; }    if (i >=  8192) { s = sprintf(f, s, "M-B"); f = "%s,%s"; i -=  8192; }    if (i >=  4096) { s = sprintf(f, s, "M-A"); f = "%s,%s"; i -=  4096; }    if (i >=  2048) { s = sprintf(f, s, "S-M"); f = "%s,%s"; i -=  2048; }    if (i >=  1024) { s = sprintf(f, s, "S-S"); f = "%s,%s"; i -=  1024; }    if (i >=   512) { s = sprintf(f, s, "S-B"); f = "%s,%s"; i -=   512; }    if (i >=   256) { s = sprintf(f, s, "S-A"); f = "%s,%s"; i -=   256; }    if (i >=   128) { s = sprintf(f, s, "B-M"); f = "%s,%s"; i -=   128; }    if (i >=    64) { s = sprintf(f, s, "B-S"); f = "%s,%s"; i -=    64; }    if (i >=    32) { s = sprintf(f, s, "B-B"); f = "%s,%s"; i -=    32; }    if (i >=    16) { s = sprintf(f, s, "B-A"); f = "%s,%s"; i -=    16; }    if (i >=     8) { s = sprintf(f, s, "A-M"); f = "%s,%s"; i -=     8; }    if (i >=     4) { s = sprintf(f, s, "A-S"); f = "%s,%s"; i -=     4; }    if (i >=     2) { s = sprintf(f, s, "A-B"); f = "%s,%s"; i -=     2; }    if (i >=     1) { s = sprintf(f, s, "A-A"); f = "%s,%s"; i -=     1; }    return s;}function binary_type(f) {    if (f in binary)	return binary[f];    return (f ? f : "unknown");}function ecm_type(f) {    if (f in ecm)	return ecm[f];    return (f ? f : "unknown");}function cf_type(f) {    if (f in cf)	return cf[f];    return (f ? f : "unknown");}function hold_type(f) {    if (f in hold)	return hold[f];    return (f ? f : "unknown");}function capability(i,j,	f,s) {    if (i >= j) return i;    f = "%s%s"; s = "";    if (j > 8) {	if (i >=  1024) { s = sprintf(f, s, "P2");  f = "%s,%s"; i -=  1024; }	if (i >=   512) { s = sprintf(f, s, "P1");  f = "%s,%s"; i -=   512; }	if (i >=   256) { s = sprintf(f, s, "P0");  f = "%s,%s"; i -=   256; }	if (i >=   128) { s = sprintf(f, s, "<7>"); f = "%s,%s"; i -=   128; }	if (i >=    64) { s = sprintf(f, s, "<6>"); f = "%s,%s"; i -=    64; }	if (i >=    32) { s = sprintf(f, s, "<5>"); f = "%s,%s"; i -=    32; }	if (i >=    16) { s = sprintf(f, s, "<4>"); f = "%s,%s"; i -=    16; }	if (i >=     8) { s = sprintf(f, s, "<3>"); f = "%s,%s"; i -=     8; }    }    if (i >=     4) { s = sprintf(f, s, "T2");  f = "%s,%s"; i -=     4; }    if (i >=     2) { s = sprintf(f, s, "T1");  f = "%s,%s"; i -=     2; }    if (i >=     1) { s = sprintf(f, s, "T0");  f = "%s,%s"; i -=     1; }    return s;}function cp_type(f) {    if (f in cp)	return cp[f];    return (f ? f : "unknown");}function dup_type(f) {    if (f in dup)	return dup[f];    return (f ? f : "unknown");}function port_type(f,s) {    if (f in port)	return port[f];    return (f ? f : s ? "U" : "unknown");}function rm_type(f) {    if (f in rm)	return rm[f];    return (f ? f : "unknown");}function class_type(f) {    if (f in class)	return class[f];    return (f ? f : "unknown");}function order_type(f) {    if (f in order)	return order[f];    return (f ? f : "unknown");}function status_type(f) {    if (f in status)	return status[f];    return (f ? f : "unknown");}function pcps(i,		s) {    if (i >= 8)	return i;    s = "";    if (i >= 4) { s = s "P"; i -= 4; } else s = (s " ");    if (i >= 2) { s = s "L"; i -= 2; } else s = (s " ");    if (i >= 1) { s = s "C"; i -= 1; } else s = (s " ");    return s;}function ce_type(f) {    if (f in ce)	return ce[f];    return (f ? f : "unknown");}function pcs_type(f) {    if (f in pcs)	return pcs[f];    return (f ? f : "unknown");}function pcm_type(f) {    if (f in pcm)	return pcm[f];    return (f ? f : "unknown");}function wh_type(f) {    if (f in wh)	return wh[f];    return (f ? f : "unknown");}function aclass_type(f) {    if (f in aclass)	return aclass[f];    return (f ? f : "unknown");}BEGIN {	binary[1] = "true";	binary[2] = "false";	ecm[1] = "out";	ecm[2] = "in";	ecm[3] = "trace";	ecm[4] = "leave";	ecm[5] = "path_test";	ecm[6] = "insert";	ecm[7] = "check";	ecm[8] = "deinsert";	cf[1] = "isolated";	cf[2] = "wrap_s";	cf[3] = "wrap_a";	cf[4] = "wrap_b";	cf[5] = "wrap_ab";	cf[6] = "thru";	hold[1] = "not-implemented";	hold[2] = "not-holding";	hold[3] = "holding-prm";	hold[4] = "holding-sec";	printf "%-10s%-17s|%-8s|%-11s|%-3s|%-7s|%s\n",		"smtNumber=",		     snmpFddiSMTNumber,			   "Versions",				"    MACs",				     "",  "Config",					       "";	printf "%-3s %-23s|%-8s|%-11s|%-3s|%-3s %-3s|%s\n",		"Idx",		     "Station ID",			   "Op Hi Lo",				"Tot Non Mas",				     "Pth",					  "Cap",						"Pol",						     "Connection Policy";	didone = 0;	for (i in snmpFddiSMTIndex) {	    if (didone)		printf "\n";	    else		didone = 1;	    printf "%-3s %-23s %2d %2d %2d %3d %3d %3d ",		    snmpFddiSMTIndex,			 snmpFddiSMTStationId,			       snmpFddiSMTOpVersionId,				   snmpFddiSMTHiVersionId,				       snmpFddiSMTLoVersionId,					   snmpFddiSMTMACCt,					       snmpFddiSMTNonMasterCt,						   snmpFddiSMTMasterCt;	    printf "%-3s %-3s %-3s %s\n",		    paths(snmpFddiSMTPathsAvailable,8),			 config(snmpFddiSMTConfigCapabilities),			       config(snmpFddiSMTConfigPolicy),				    connection(snmpFddiSMTConnectionPolicy);	    printf "\tnotify=%5d secs     reporting=%-7s remote-disconnect=%s\n",			     snmpFddiSMTTNotify,						    binary_type(snmpFddiSMTStatusReporting),									   binary_type(snmpFddiSMTRemoteDisconnectFlag);	    printf "\tstates: ecm=%-9s cf=%-8s       hold=%s\n",				  ecm_type(snmpFddiSMTECMState),					  cf_type(snmpFddiSMTCFState),							  hold_type(snmpFddiSMTHoldState);	}	if (!didone && DIAGNOSTIC)	    printf "smtTable: %s\n", DIAGNOSTIC;	printf "\n";	cp[1]  = "unknown";	cp[2]  = "primary";	cp[4]  = "secondary";	cp[8]  = "local";	cp[16] = "isolated";	dup[1]  = "none";	dup[2]  = "pass";	dup[3]  = "fail";	port[0]  = "A";	port[1]  = "B";	port[2]  = "S";	port[3]  = "M";	rm[1] = "isolated";	rm[2] = "non_op";	rm[3] = "ring_op";	rm[4] = "detect";	rm[5] = "non_op_dup";	rm[6] = "ring_op_dup";	rm[7] = "directed";	rm[8] = "trace";	printf "%-10s%-15s|%-26s|%-19s|%s\n",		"macNumber=",		     snmpFddiMACNumber,			   "         Frames",				 "        Paths",				       "";	printf "%-3s %-3s %-17s|%-8s %-8s %-8s|%-5s %-8s %-4s|%s\n",		"Idx",		     "SMT",			  "Address",				" Total",				     "Errors",					  "  Lost",						"Avail",						    " Current",							 "Req",							      "Cap";	didone = 0;	for (i in snmpFddiMACSMTIndex) {	    if (didone)		printf "\n";	    else		didone = 1;	    printf "%-3s %-3s %-17s %8d %8d %8d %-5s %-8s %-4s %s\n",		    snmpFddiMACIndex,			 snmpFddiMACSMTIndex,			      snmpFddiMACSMTAddress,				    snmpFddiMACFrameCts,					snmpFddiMACErrorCts,					     snmpFddiMACLostCts,						  paths(snmpFddiMACPathsAvailable,8),						       cp_type(snmpFddiMACCurrentPath),							paths(snmpFddiMACPathsRequested,16),							    capability(snmpFddiMACFrameStatusCapabilities,2048);	    printf "\tgreatest-lb: t_max=%-11s                tvx=%s\n",					 snmpFddiMACTMaxGreatestLowerBound,								  snmpFddiMACTVXGreatestLowerBound;	    printf "\tupstream:    cur=%-17s            old=%s\n",				       snmpFddiMACUpstreamNbr,							    snmpFddiMACOldUpstreamNbr;	    printf "\tdownstream:  port=%-7s                     rm-state=%s\n",					port_type(snmpFddiMACDownstreamPORTType,0),			rm_type(snmpFddiMACRMTState);	    printf "\ttimers:      req=%-11s  neg=%-11s tvx=%s\n",				       snmpFddiMACTReq,						 snmpFddiMACTNeg,							   snmpFddiMACTvxValue;	    printf "\t             max=%-11s  min=%s\n",					snmpFddiMACTMax,						  snmpFddiMACTMin;	    printf "\tdup-addrs:   test=%-7s     flag=%s una-flag=%s\n",					dup_type(snmpFddiMACDupAddrTest),						       binary_type(snmpFddiMACDaFlag),								  binary_type(snmpFddiMACUnaDaFlag);	    printf "\tframe errs:  threshold=%-5s  ratio=%s\n",				   	     snmpFddiMACFrameErrorThreshold,							 snmpFddiMACFrameErrorRatio;	    printf "\tmisc:        cf-status=%-21s  frame-cond=%s\n",					     capability(snmpFddiMACCurrentFrameStatus,8),							       binary_type(snmpFddiMACFrameCondition);	}	if (!didone && DIAGNOSTIC)	    printf "macTable: %s\n", DIAGNOSTIC;	printf "\n";	ce[1] = "isolated";	ce[2] = "insert_p";	ce[3] = "insert_s";	ce[4] = "insert_x";	ce[5] = "local";	pcs[1] = "disabled";	pcs[2] = "connecting";	pcs[3] = "standby";	pcs[4] = "active";	pcm[ 1] = "off";	pcm[ 2] = "break";	pcm[ 3] = "trace";	pcm[ 4] = "connect";	pcm[ 5] = "next";	pcm[ 6] = "signal";	pcm[ 7] = "join";	pcm[ 8] = "verify";	pcm[ 9] = "active";	pcm[10] = "maint";	wh[1] = "none";	wh[2] = "m-m";	wh[3] = "other";	printf "%-11s%-7s|%-8s|%-7s|%-8s|%-17s|%s\n",		"portNumber=",		     snmpFddiPORTNumber,			  "Connect",			       "Remote",				    "   CE",					 "      Paths",					       "";	printf "%-3s %-3s %-4s %-5s|%-8s|%-7s|%-8s|%-5s %-5s %-5s|%s\n",		"Idx",		     "SMT",			  "Type",			       "Neigh",				   "Policies",					 "  MAC",					      "  State",						   " Req",							"Place",							     "Avail",								   "Loop Time";	didone = 0;	for (i in snmpFddiPORTSMTIndex) {	    didone = 1;	    printf "%-3s %-3s %-4s %-5s %-8s %-7s %-8s %-5s %5d %-5s %10d\n",		    snmpFddiPORTIndex,			 snmpFddiPORTSMTIndex,			      port_type(snmpFddiPORTPCType,1),				   port_type(snmpFddiPORTPCNeighbor),					pcps(snmpFddiPORTConnectionPolicies),					     binary_type(snmpFddiPORTRemoteMACIndicated),						  ce_type(snmpFddiPORTCEState),							paths(snmpFddiPORTPathsRequested,16),							    snmpFddiPORTMACPlacement,								paths(snmpFddiPORTAvailablePaths,8),								     snmpFddiPORTMACLoopTime;	    printf "\tstates:   connect=%-10s pcm=%-7s             withhold=%s\n",					pcs_type(snmpFddiPORTConnectState),						pcm_type(snmpFddiPORTPCMState),							    wh_type(snmpFddiPORTPCWithhold);	    printf "\tlem:      count=%-10d   reject-count=%-10d\n",				      snmpFddiPORTLemCts,							   snmpFddiPORTLemRejectCts;	    printf "\tler:      cutoff=%02d          alarm=%02d                estimate=%02d\n",				       snmpFddiPORTLerCutoff,							   snmpFddiPORTLerAlarm,			snmpFddiPORTLerEstimate;	    printf "\t          condition=%s\n",					  binary_type(snmpFddiPORTLerCondition);	    printf "\tmisc:     bs_flag=%-7s    lct-fails=%-10d    tb_max=%s\n",					binary_type(snmpFddiPORTBSFlag),							  snmpFddiPORTLCTFailCts,									  snmpFddiPORTTBMax;	}	if (!didone && DIAGNOSTIC)	    printf "portTable: %s\n", DIAGNOSTIC;	printf "\n";	aclass[1] = "single";	aclass[2] = "dual";	aclass[3] = "concen";	printf "%-12s%-23s|  Insertion\n",		"Attachments=",		     snmpFddiATTACHMENTNumber;	printf "%-3s %-3s %-7s %-7s %-11s|%-7s %s\n",		"Idx",		     "SMT",			  "Class",			       "Bypass",				    "Expire",					 "Status",						"Policy";	didone = 0;	for (i in snmpFddiATTACHMENTSMTIndex) {	    didone = 1;	    printf "%-3s %-3s %-7s %-7s %-11s",		    snmpFddiATTACHMENTIndex,			 snmpFddiATTACHMENTSMTIndex,			      aclass_type(snmpFddiATTACHMENTClass),				   binary_type(snmpFddiATTACHMENTOpticalBypassPresent),					snmpFddiATTACHMENTIMaxExpiration;	    if (snmpFddiATTACHMENTOpticalBypassPresent)		printf " %-8s %s",			 binary_type(snmpFddiATTACHMENTInsertedStatus),			      binary_type(snmpFddiATTACHMENTInsertPolicy);	    printf "\n";	}	if (!didone && DIAGNOSTIC)	    printf "attachmentTable: %s\n", DIAGNOSTIC;	printf "\n";      }

⌨️ 快捷键说明

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