mirror of
https://github.com/nmap/nmap.git
synced 2025-12-06 04:31:29 +00:00
Support names for all IP protocols in libnetutil. See #841
This commit is contained in:
@@ -1867,190 +1867,162 @@ char *nexthdrtoa(u8 nextheader, int acronym){
|
|||||||
static char buffer[129];
|
static char buffer[129];
|
||||||
memset(buffer, 0, 129);
|
memset(buffer, 0, 129);
|
||||||
|
|
||||||
|
#define HDRTOA(num, short_name, long_name) \
|
||||||
|
case num: \
|
||||||
|
strncpy(buffer, acronym ? short_name : long_name, 128);\
|
||||||
|
break;
|
||||||
|
|
||||||
switch(nextheader){
|
switch(nextheader){
|
||||||
|
/* Generate these lines from nmap-protocols using the following perl command:
|
||||||
case 0:
|
perl -lne'if(/^(\S+)\s*(\d+)\s*\#?\s*(.*)/){my$l=$3||$1;print qq{HDRTOA($2, "$1", "$l")}}'
|
||||||
if(acronym)
|
*/
|
||||||
strncpy(buffer, "HOPOPT", 128);
|
HDRTOA(0, "hopopt", "IPv6 Hop-by-Hop Option")
|
||||||
else
|
HDRTOA(1, "icmp", "Internet Control Message")
|
||||||
strncpy(buffer, "IPv6 Hop-by-Hop Option", 128);
|
HDRTOA(2, "igmp", "Internet Group Management")
|
||||||
break;
|
HDRTOA(3, "ggp", "Gateway-to-Gateway")
|
||||||
|
HDRTOA(4, "ipv4", "IP in IP (encapsulation)")
|
||||||
|
HDRTOA(5, "st", "Stream")
|
||||||
case 1:
|
HDRTOA(6, "tcp", "Transmission Control")
|
||||||
if(acronym)
|
HDRTOA(7, "cbt", "CBT")
|
||||||
strncpy(buffer, "ICMP", 128);
|
HDRTOA(8, "egp", "Exterior Gateway Protocol")
|
||||||
else
|
HDRTOA(9, "igp", "any private interior gateway")
|
||||||
strncpy(buffer, "Internet Control Message", 128);
|
HDRTOA(10, "bbn-rcc-mon", "BBN RCC Monitoring")
|
||||||
break;
|
HDRTOA(11, "nvp-ii", "Network Voice Protocol")
|
||||||
|
HDRTOA(12, "pup", "PARC universal packet protocol")
|
||||||
|
HDRTOA(13, "argus", "ARGUS")
|
||||||
case 2:
|
HDRTOA(14, "emcon", "EMCON")
|
||||||
if(acronym)
|
HDRTOA(15, "xnet", "Cross Net Debugger")
|
||||||
strncpy(buffer, "IGMP", 128);
|
HDRTOA(16, "chaos", "Chaos")
|
||||||
else
|
HDRTOA(17, "udp", "User Datagram")
|
||||||
strncpy(buffer, "Internet Group Management", 128);
|
HDRTOA(18, "mux", "Multiplexing")
|
||||||
break;
|
HDRTOA(19, "dcn-meas", "DCN Measurement Subsystems")
|
||||||
|
HDRTOA(20, "hmp", "Host Monitoring")
|
||||||
|
HDRTOA(21, "prm", "Packet Radio Measurement")
|
||||||
case 4:
|
HDRTOA(22, "xns-idp", "XEROX NS IDP")
|
||||||
if(acronym)
|
HDRTOA(23, "trunk-1", "Trunk-1")
|
||||||
strncpy(buffer, "IP", 128);
|
HDRTOA(24, "trunk-2", "Trunk-2")
|
||||||
else
|
HDRTOA(25, "leaf-1", "Leaf-1")
|
||||||
strncpy(buffer, "IP in IP (encapsulation)", 128);
|
HDRTOA(26, "leaf-2", "Leaf-2")
|
||||||
break;
|
HDRTOA(27, "rdp", "Reliable Data Protocol")
|
||||||
|
HDRTOA(28, "irtp", "Internet Reliable Transaction")
|
||||||
|
HDRTOA(29, "iso-tp4", "ISO Transport Protocol Class 4")
|
||||||
case 6:
|
HDRTOA(30, "netblt", "Bulk Data Transfer Protocol")
|
||||||
if(acronym)
|
HDRTOA(31, "mfe-nsp", "MFE Network Services Protocol")
|
||||||
strncpy(buffer, "TCP", 128);
|
HDRTOA(32, "merit-inp", "MERIT Internodal Protocol")
|
||||||
else
|
HDRTOA(33, "dccp", "Datagram Congestion Control Protocol")
|
||||||
strncpy(buffer, "Transmission Control Protocol", 128);
|
HDRTOA(34, "3pc", "Third Party Connect Protocol")
|
||||||
break;
|
HDRTOA(35, "idpr", "Inter-Domain Policy Routing Protocol")
|
||||||
|
HDRTOA(36, "xtp", "XTP")
|
||||||
|
HDRTOA(37, "ddp", "Datagram Delivery Protocol")
|
||||||
case 8:
|
HDRTOA(38, "idpr-cmtp", "IDPR Control Message Transport Proto")
|
||||||
if(acronym)
|
HDRTOA(39, "tp++", "TP+")
|
||||||
strncpy(buffer, "EGP", 128);
|
HDRTOA(40, "il", "IL Transport Protocol")
|
||||||
else
|
HDRTOA(41, "ipv6", "Ipv6")
|
||||||
strncpy(buffer, "Exterior Gateway Protocol", 128);
|
HDRTOA(42, "sdrp", "Source Demand Routing Protocol")
|
||||||
break;
|
HDRTOA(43, "ipv6-route", "Routing Header for IPv6")
|
||||||
|
HDRTOA(44, "ipv6-frag", "Fragment Header for IPv6")
|
||||||
|
HDRTOA(45, "idrp", "Inter-Domain Routing Protocol")
|
||||||
case 9:
|
HDRTOA(46, "rsvp", "Reservation Protocol")
|
||||||
if(acronym)
|
HDRTOA(47, "gre", "General Routing Encapsulation")
|
||||||
strncpy(buffer, "IGP", 128);
|
HDRTOA(48, "dsp", "Dynamic Source Routing Protocol. Historically MHRP")
|
||||||
else
|
HDRTOA(49, "bna", "BNA")
|
||||||
strncpy(buffer, "Interior Gateway Protocol", 128);
|
HDRTOA(50, "esp", "Encap Security Payload")
|
||||||
break;
|
HDRTOA(51, "ah", "Authentication Header")
|
||||||
|
HDRTOA(52, "i-nlsp", "Integrated Net Layer Security TUBA")
|
||||||
|
HDRTOA(53, "swipe", "IP with Encryption")
|
||||||
case 17:
|
HDRTOA(54, "narp", "NBMA Address Resolution Protocol")
|
||||||
if(acronym)
|
HDRTOA(55, "mobile", "IP Mobility")
|
||||||
strncpy(buffer, "UDP", 128);
|
HDRTOA(56, "tlsp", "Transport Layer Security Protocol using Kryptonet key management")
|
||||||
else
|
HDRTOA(57, "skip", "SKIP")
|
||||||
strncpy(buffer, "User Datagram", 128);
|
HDRTOA(58, "ipv6-icmp", "ICMP for IPv6")
|
||||||
break;
|
HDRTOA(59, "ipv6-nonxt", "No Next Header for IPv6")
|
||||||
|
HDRTOA(60, "ipv6-opts", "Destination Options for IPv6")
|
||||||
|
HDRTOA(61, "anyhost", "any host internal protocol")
|
||||||
case 41:
|
HDRTOA(62, "cftp", "CFTP")
|
||||||
if(acronym)
|
HDRTOA(63, "anylocalnet", "any local network")
|
||||||
strncpy(buffer, "IPv6", 128);
|
HDRTOA(64, "sat-expak", "SATNET and Backroom EXPAK")
|
||||||
else
|
HDRTOA(65, "kryptolan", "Kryptolan")
|
||||||
strncpy(buffer, "Internet Protocol version 6", 128);
|
HDRTOA(66, "rvd", "MIT Remote Virtual Disk Protocol")
|
||||||
break;
|
HDRTOA(67, "ippc", "Internet Pluribus Packet Core")
|
||||||
|
HDRTOA(68, "anydistribfs", "any distributed file system")
|
||||||
|
HDRTOA(69, "sat-mon", "SATNET Monitoring")
|
||||||
case 43:
|
HDRTOA(70, "visa", "VISA Protocol")
|
||||||
if(acronym)
|
HDRTOA(71, "ipcv", "Internet Packet Core Utility")
|
||||||
strncpy(buffer, "IPv6-Route", 128);
|
HDRTOA(72, "cpnx", "Computer Protocol Network Executive")
|
||||||
else
|
HDRTOA(73, "cphb", "Computer Protocol Heart Beat")
|
||||||
strncpy(buffer, "Routing Header for IPv6", 128);
|
HDRTOA(74, "wsn", "Wang Span Network")
|
||||||
break;
|
HDRTOA(75, "pvp", "Packet Video Protocol")
|
||||||
|
HDRTOA(76, "br-sat-mon", "Backroom SATNET Monitoring")
|
||||||
|
HDRTOA(77, "sun-nd", "SUN ND PROTOCOL-Temporary")
|
||||||
case 44:
|
HDRTOA(78, "wb-mon", "WIDEBAND Monitoring")
|
||||||
if(acronym)
|
HDRTOA(79, "wb-expak", "WIDEBAND EXPAK")
|
||||||
strncpy(buffer, "IPv6-Frag", 128);
|
HDRTOA(80, "iso-ip", "ISO Internet Protocol")
|
||||||
else
|
HDRTOA(81, "vmtp", "VMTP")
|
||||||
strncpy(buffer, "Fragment Header for IPv6", 128);
|
HDRTOA(82, "secure-vmtp", "SECURE-VMTP")
|
||||||
break;
|
HDRTOA(83, "vines", "VINES")
|
||||||
|
HDRTOA(84, "iptm", "Internet Protocol Traffic Manager. Historically TTP")
|
||||||
|
HDRTOA(85, "nsfnet-igp", "NSFNET-IGP")
|
||||||
case 50:
|
HDRTOA(86, "dgp", "Dissimilar Gateway Protocol")
|
||||||
if(acronym)
|
HDRTOA(87, "tcf", "TCF")
|
||||||
strncpy(buffer, "ESP", 128);
|
HDRTOA(88, "eigrp", "EIGRP")
|
||||||
else
|
HDRTOA(89, "ospfigp", "OSPFIGP")
|
||||||
strncpy(buffer, "Encap Security Payload", 128);
|
HDRTOA(90, "sprite-rpc", "Sprite RPC Protocol")
|
||||||
break;
|
HDRTOA(91, "larp", "Locus Address Resolution Protocol")
|
||||||
|
HDRTOA(92, "mtp", "Multicast Transport Protocol")
|
||||||
|
HDRTOA(93, "ax.25", "AX.")
|
||||||
case 51:
|
HDRTOA(94, "ipip", "IP-within-IP Encapsulation Protocol")
|
||||||
if(acronym)
|
HDRTOA(95, "micp", "Mobile Internetworking Control Pro.")
|
||||||
strncpy(buffer, "AH", 128);
|
HDRTOA(96, "scc-sp", "Semaphore Communications Sec.")
|
||||||
else
|
HDRTOA(97, "etherip", "Ethernet-within-IP Encapsulation")
|
||||||
strncpy(buffer, "Authentication Header", 128);
|
HDRTOA(98, "encap", "Encapsulation Header")
|
||||||
break;
|
HDRTOA(99, "anyencrypt", "any private encryption scheme")
|
||||||
|
HDRTOA(100, "gmtp", "GMTP")
|
||||||
|
HDRTOA(101, "ifmp", "Ipsilon Flow Management Protocol")
|
||||||
case 55:
|
HDRTOA(102, "pnni", "PNNI over IP")
|
||||||
if(acronym)
|
HDRTOA(103, "pim", "Protocol Independent Multicayst")
|
||||||
strncpy(buffer, "MOBILE", 128);
|
HDRTOA(104, "aris", "ARIS")
|
||||||
else
|
HDRTOA(105, "scps", "SCPS")
|
||||||
strncpy(buffer, "IP Mobility", 128);
|
HDRTOA(106, "qnx", "QNX")
|
||||||
break;
|
HDRTOA(107, "a/n", "Active Networks")
|
||||||
|
HDRTOA(108, "ipcomp", "IP Payload Compression Protocol")
|
||||||
|
HDRTOA(109, "snp", "Sitara Networks Protocol")
|
||||||
case 58:
|
HDRTOA(110, "compaq-peer", "Compaq Peer Protocol")
|
||||||
if(acronym)
|
HDRTOA(111, "ipx-in-ip", "IPX in IP")
|
||||||
strncpy(buffer, "IPv6-ICMP", 128);
|
HDRTOA(112, "vrrp", "Virtual Router Redundancy Protocol")
|
||||||
else
|
HDRTOA(113, "pgm", "PGM Reliable Transport Protocol")
|
||||||
strncpy(buffer, "ICMP for IPv6", 128);
|
HDRTOA(114, "any0hop", "any 0-hop protocol")
|
||||||
break;
|
HDRTOA(115, "l2tp", "Layer Two Tunneling Protocol")
|
||||||
|
HDRTOA(116, "ddx", "D-II Data Exchange (")
|
||||||
|
HDRTOA(117, "iatp", "Interactive Agent Transfer Protocol")
|
||||||
case 59:
|
HDRTOA(118, "stp", "Schedule Transfer Protocol")
|
||||||
if(acronym)
|
HDRTOA(119, "srp", "SpectraLink Radio Protocol")
|
||||||
strncpy(buffer, "IPv6-NoNxt", 128);
|
HDRTOA(120, "uti", "UTI")
|
||||||
else
|
HDRTOA(121, "smp", "Simple Message Protocol")
|
||||||
strncpy(buffer, "No Next Header for IPv6", 128);
|
HDRTOA(122, "sm", "Simple Multicast Protocol")
|
||||||
break;
|
HDRTOA(123, "ptp", "Performance Transparency Protocol")
|
||||||
|
HDRTOA(124, "isis-ipv4", "ISIS over IPv4")
|
||||||
|
HDRTOA(125, "fire", "fire")
|
||||||
case 60:
|
HDRTOA(126, "crtp", "Combat Radio Transport Protocol")
|
||||||
if(acronym)
|
HDRTOA(127, "crudp", "Combat Radio User Datagram")
|
||||||
strncpy(buffer, "IPv6-Opts", 128);
|
HDRTOA(128, "sscopmce", "sscopmce")
|
||||||
else
|
HDRTOA(129, "iplt", "iplt")
|
||||||
strncpy(buffer, "Destination Options for IPv6", 128);
|
HDRTOA(130, "sps", "Secure Packet Shield")
|
||||||
break;
|
HDRTOA(131, "pipe", "Private IP Encapsulation within IP")
|
||||||
|
HDRTOA(132, "sctp", "Stream Control Transmission Protocol")
|
||||||
|
HDRTOA(133, "fc", "Fibre Channel")
|
||||||
case 70:
|
HDRTOA(134, "rsvp-e2e-ignore", "rsvp-e2e-ignore")
|
||||||
if(acronym)
|
HDRTOA(135, "mobility-hdr", "Mobility Header")
|
||||||
strncpy(buffer, "VISA", 128);
|
HDRTOA(136, "udplite", "UDP-Lite [RFC3828]")
|
||||||
else
|
HDRTOA(137, "mpls-in-ip", "MPLS-in-IP [RFC4023]")
|
||||||
strncpy(buffer, "VISA Protocol", 128);
|
HDRTOA(138, "manet", "MANET Protocols [RFC5498]")
|
||||||
break;
|
HDRTOA(139, "hip", "Host Identity Protocol")
|
||||||
|
HDRTOA(140, "shim6", "Shim6 Protocol [RFC5533]")
|
||||||
|
HDRTOA(141, "wesp", "Wrapped Encapsulating Security Payload")
|
||||||
case 88:
|
HDRTOA(142, "rohc", "Robust Header Compression")
|
||||||
if(acronym)
|
HDRTOA(253, "experimental1", "Use for experimentation and testing")
|
||||||
strncpy(buffer, "EIGRP", 128);
|
HDRTOA(254, "experimental2", "Use for experimentation and testing")
|
||||||
else
|
default:
|
||||||
strncpy(buffer, "Enhanced Interior Gateway Routing Protocol ", 128);
|
strncpy(buffer, acronym ? "unknown" : "Unknown protocol", 128);\
|
||||||
break;
|
|
||||||
|
|
||||||
|
|
||||||
case 94:
|
|
||||||
if(acronym)
|
|
||||||
strncpy(buffer, "IPIP", 128);
|
|
||||||
else
|
|
||||||
strncpy(buffer, "IP-within-IP Encapsulation Protocol", 128);
|
|
||||||
break;
|
|
||||||
|
|
||||||
|
|
||||||
case 132:
|
|
||||||
if(acronym)
|
|
||||||
strncpy(buffer, "SCTP", 128);
|
|
||||||
else
|
|
||||||
strncpy(buffer, "Stream Control Transmission Protocol", 128);
|
|
||||||
break;
|
|
||||||
|
|
||||||
|
|
||||||
case 133:
|
|
||||||
if(acronym)
|
|
||||||
strncpy(buffer, "FC", 128);
|
|
||||||
else
|
|
||||||
strncpy(buffer, "Fibre Channel", 128);
|
|
||||||
break;
|
|
||||||
|
|
||||||
|
|
||||||
case 135:
|
|
||||||
if(acronym)
|
|
||||||
strncpy(buffer, "MH", 128);
|
|
||||||
else
|
|
||||||
strncpy(buffer, "Mobility Header", 128);
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
} /* End of switch */
|
} /* End of switch */
|
||||||
|
|||||||
Reference in New Issue
Block a user