BSD 4_3_Net_2 development
[unix-history] / usr / src / contrib / isode / snmp / gawk-2.11 / s-gawk / mib.connections
function socket(t,a,p, s1,s2) {
s1 = a == "0.0.0.0" ? "*" : a;
if (p == 0)
s2 = "*";
else
if ((p, t) in services)
s2 = services[p, t];
else
s2 = p;
return (s1 "." s2);
}
function tt_type(f) {
if (f in types)
return types[f];
return (f ? f : "unknown");
}
BEGIN {
types[1] = "CLOSED";
types[2] = "LISTEN";
types[3] = "SYN_SENT";
types[4] = "SYN_RCVD";
types[5] = "ESTABLISHED";
types[6] = "FIN_WAIT_1";
types[7] = "FIN_WAIT_2";
types[8] = "CLOSE_WAIT";
types[9] = "LAST_ACK";
types[10] = "CLOSING";
types[11] = "TIME_WAIT";
services[7, "udp"] = "echo";
services[9, "udp"] = "discard";
services[11, "tcp"] = "systat";
services[13, "tcp"] = "daytime";
services[15, "tcp"] = "netstat";
services[20, "tcp"] = "ftp-data";
services[21, "tcp"] = "ftp";
services[23, "tcp"] = "telnet";
services[25, "tcp"] = "smtp";
services[37, "tcp"] = "time";
services[37, "udp"] = "time";
services[42, "udp"] = "name";
services[43, "tcp"] = "whois";
services[53, "udp"] = "domain";
services[53, "tcp"] = "domain";
services[101, "tcp"] = "hostnames";
services[102, "tcp"] = "tsap";
services[109, "tcp"] = "pop";
services[111, "udp"] = "sunrpc";
services[111, "tcp"] = "sunrpc";
services[69, "udp"] = "tftp";
services[77, "tcp"] = "rje";
services[79, "tcp"] = "finger";
services[87, "tcp"] = "link";
services[95, "tcp"] = "supdup";
services[105, "tcp"] = "csnet-ns";
services[117, "tcp"] = "uucp-path";
services[119, "tcp"] = "untp";
services[123, "tcp"] = "ntp";
services[161, "udp"] = "snmp";
services[162, "udp"] = "snmp-trap";
services[199, "tcp"] = "smux";
services[1524, "tcp"] = "ingreslock";
services[512, "tcp"] = "exec";
services[513, "tcp"] = "login";
services[514, "tcp"] = "shell";
services[515, "tcp"] = "printer";
services[530, "tcp"] = "courier";
services[512, "udp"] = "biff";
services[513, "udp"] = "who";
services[514, "udp"] = "syslog";
services[517, "udp"] = "talk";
services[520, "udp"] = "route";
services[550, "udp"] = "new-rwho";
services[560, "udp"] = "rmonitor";
services[561, "udp"] = "monitor";
printf "Active connections%s\n", aflag ? " (including servers)" : "";
printf "%-5s %-6s %-6s %-20s %-20s %s\n",
"Proto",
"Recv-Q",
"Send-Q",
"Local Address",
"Foreign Address",
"(state)";
hasunix = unixNetstat == 1;
didone = 0;
for (i in tcpConnState) {
didone = 1;
if (!aflag && tcpConnLocalAddress == "0.0.0.0")
continue;
printf "%-5s %6s %6s %-20s %-20s %s\n",
"tcp",
hasunix ? unixTcpConnRecvQ[i] : "",
hasunix ? unixTcpConnSendQ[i] : "",
socket("tcp",tcpConnLocalAddress,tcpConnLocalPort),
socket("tcp",tcpConnRemAddress,tcpConnRemPort),
tt_type(tcpConnState);
}
if (!didone && DIAGNOSTIC)
printf "tcpConnTable: %s\n", DIAGNOSTIC;
didone = 0;
for (i in udpLocalAddress) {
didone = 1;
if (!aflag && udpLocalAddress == "0.0.0.0")
continue;
printf "%-5s %6s %6s %-20s %-20s %s\n",
"udp",
hasunix ? unixUdpRecvQ[i] : "",
hasunix ? unixUdpSendQ[i] : "",
socket("udp",udpLocalAddress,udpLocalPort),
hasunix ? socket("udp",unixUdpRemAddress[i],unixUdpRemPort[i]) : "",
"";
}
if (!didone && DIAGNOSTIC)
printf "udpTable: %s\n", DIAGNOSTIC;
}