// Package netdb provides a Go interface for the protoent and servent// structures as defined in netdb.h//// A pure Go implementation is used by parsing /etc/protocols and// /etc/services//// All return values are pointers that point to the entries in the// original list of protocols and services. Manipulating the entries// would affect the entire program.
package netdb // import "modernc.org/libc/honnef.co/go/netdb"// Modifications Copyright 2020 The Libc Authors. All rights reserved.// Use of this source code is governed by a BSD-style// license that can be found in the LICENSE file.import ()const (protocols = `# Internet (IP) protocols## Updated from http://www.iana.org/assignments/protocol-numbers and other# sources.# New protocols will be added on request if they have been officially# assigned by IANA and are not historical.# If you need a huge list of used numbers please install the nmap package.ip 0 IP # internet protocol, pseudo protocol numberhopopt 0 HOPOPT # IPv6 Hop-by-Hop Option [RFC1883]icmp 1 ICMP # internet control message protocoligmp 2 IGMP # Internet Group Managementggp 3 GGP # gateway-gateway protocolipencap 4 IP-ENCAP # IP encapsulated in IP (officially "IP")st 5 ST # ST datagram modetcp 6 TCP # transmission control protocolegp 8 EGP # exterior gateway protocoligp 9 IGP # any private interior gateway (Cisco)pup 12 PUP # PARC universal packet protocoludp 17 UDP # user datagram protocolhmp 20 HMP # host monitoring protocolxns-idp 22 XNS-IDP # Xerox NS IDPrdp 27 RDP # "reliable datagram" protocoliso-tp4 29 ISO-TP4 # ISO Transport Protocol class 4 [RFC905]dccp 33 DCCP # Datagram Congestion Control Prot. [RFC4340]xtp 36 XTP # Xpress Transfer Protocolddp 37 DDP # Datagram Delivery Protocolidpr-cmtp 38 IDPR-CMTP # IDPR Control Message Transportipv6 41 IPv6 # Internet Protocol, version 6ipv6-route 43 IPv6-Route # Routing Header for IPv6ipv6-frag 44 IPv6-Frag # Fragment Header for IPv6idrp 45 IDRP # Inter-Domain Routing Protocolrsvp 46 RSVP # Reservation Protocolgre 47 GRE # General Routing Encapsulationesp 50 IPSEC-ESP # Encap Security Payload [RFC2406]ah 51 IPSEC-AH # Authentication Header [RFC2402]skip 57 SKIP # SKIPipv6-icmp 58 IPv6-ICMP # ICMP for IPv6ipv6-nonxt 59 IPv6-NoNxt # No Next Header for IPv6ipv6-opts 60 IPv6-Opts # Destination Options for IPv6rspf 73 RSPF CPHB # Radio Shortest Path First (officially CPHB)vmtp 81 VMTP # Versatile Message Transporteigrp 88 EIGRP # Enhanced Interior Routing Protocol (Cisco)ospf 89 OSPFIGP # Open Shortest Path First IGPax.25 93 AX.25 # AX.25 framesipip 94 IPIP # IP-within-IP Encapsulation Protocoletherip 97 ETHERIP # Ethernet-within-IP Encapsulation [RFC3378]encap 98 ENCAP # Yet Another IP encapsulation [RFC1241]# 99 # any private encryption schemepim 103 PIM # Protocol Independent Multicastipcomp 108 IPCOMP # IP Payload Compression Protocolvrrp 112 VRRP # Virtual Router Redundancy Protocol [RFC5798]l2tp 115 L2TP # Layer Two Tunneling Protocol [RFC2661]isis 124 ISIS # IS-IS over IPv4sctp 132 SCTP # Stream Control Transmission Protocolfc 133 FC # Fibre Channelmobility-header 135 Mobility-Header # Mobility Support for IPv6 [RFC3775]udplite 136 UDPLite # UDP-Lite [RFC3828]mpls-in-ip 137 MPLS-in-IP # MPLS-in-IP [RFC4023]manet 138 # MANET Protocols [RFC5498]hip 139 HIP # Host Identity Protocolshim6 140 Shim6 # Shim6 Protocol [RFC5533]wesp 141 WESP # Wrapped Encapsulating Security Payloadrohc 142 ROHC # Robust Header Compression`services = `# Network services, Internet style## Note that it is presently the policy of IANA to assign a single well-known# port number for both TCP and UDP; hence, officially ports have two entries# even if the protocol doesn't support UDP operations.## Updated from https://www.iana.org/assignments/service-names-port-numbers/service-names-port-numbers.xhtml .## New ports will be added on request if they have been officially assigned# by IANA and used in the real-world or are needed by a debian package.# If you need a huge list of used numbers please install the nmap package.tcpmux 1/tcp # TCP port service multiplexerecho 7/tcpecho 7/udpdiscard 9/tcp sink nulldiscard 9/udp sink nullsystat 11/tcp usersdaytime 13/tcpdaytime 13/udpnetstat 15/tcpqotd 17/tcp quotemsp 18/tcp # message send protocolmsp 18/udpchargen 19/tcp ttytst sourcechargen 19/udp ttytst sourceftp-data 20/tcpftp 21/tcpfsp 21/udp fspdssh 22/tcp # SSH Remote Login Protocoltelnet 23/tcpsmtp 25/tcp mailtime 37/tcp timservertime 37/udp timserverrlp 39/udp resource # resource locationnameserver 42/tcp name # IEN 116whois 43/tcp nicnametacacs 49/tcp # Login Host Protocol (TACACS)tacacs 49/udpdomain 53/tcp # Domain Name Serverdomain 53/udpbootps 67/udpbootpc 68/udptftp 69/udpgopher 70/tcp # Internet Gopherfinger 79/tcphttp 80/tcp www # WorldWideWeb HTTPlink 87/tcp ttylinkkerberos 88/tcp kerberos5 krb5 kerberos-sec # Kerberos v5kerberos 88/udp kerberos5 krb5 kerberos-sec # Kerberos v5iso-tsap 102/tcp tsap # part of ISODEacr-nema 104/tcp dicom # Digital Imag. & Comm. 300pop3 110/tcp pop-3 # POP version 3sunrpc 111/tcp portmapper # RPC 4.0 portmappersunrpc 111/udp portmapperauth 113/tcp authentication tap identsftp 115/tcpnntp 119/tcp readnews untp # USENET News Transfer Protocolntp 123/udp # Network Time Protocolepmap 135/tcp loc-srv # DCE endpoint resolutionepmap 135/udp loc-srvnetbios-ns 137/tcp # NETBIOS Name Servicenetbios-ns 137/udpnetbios-dgm 138/tcp # NETBIOS Datagram Servicenetbios-dgm 138/udpnetbios-ssn 139/tcp # NETBIOS session servicenetbios-ssn 139/udpimap2 143/tcp imap # Interim Mail Access P 2 and 4snmp 161/tcp # Simple Net Mgmt Protocolsnmp 161/udpsnmp-trap 162/tcp snmptrap # Traps for SNMPsnmp-trap 162/udp snmptrapcmip-man 163/tcp # ISO mgmt over IP (CMOT)cmip-man 163/udpcmip-agent 164/tcpcmip-agent 164/udpmailq 174/tcp # Mailer transport queue for Zmailermailq 174/udpxdmcp 177/tcp # X Display Mgr. Control Protoxdmcp 177/udpnextstep 178/tcp NeXTStep NextStep # NeXTStep windownextstep 178/udp NeXTStep NextStep # serverbgp 179/tcp # Border Gateway Protocolirc 194/tcp # Internet Relay Chatirc 194/udpsmux 199/tcp # SNMP Unix Multiplexersmux 199/udpat-rtmp 201/tcp # AppleTalk routingat-rtmp 201/udpat-nbp 202/tcp # AppleTalk name bindingat-nbp 202/udpat-echo 204/tcp # AppleTalk echoat-echo 204/udpat-zis 206/tcp # AppleTalk zone informationat-zis 206/udpqmtp 209/tcp # Quick Mail Transfer Protocolqmtp 209/udpz3950 210/tcp wais # NISO Z39.50 databasez3950 210/udp waisipx 213/tcp # IPXipx 213/udpptp-event 319/udpptp-general 320/udppawserv 345/tcp # Perf Analysis Workbenchpawserv 345/udpzserv 346/tcp # Zebra serverzserv 346/udpfatserv 347/tcp # Fatmen Serverfatserv 347/udprpc2portmap 369/tcprpc2portmap 369/udp # Coda portmappercodaauth2 370/tcpcodaauth2 370/udp # Coda authentication serverclearcase 371/tcp Clearcaseclearcase 371/udp Clearcaseulistserv 372/tcp # UNIX Listservulistserv 372/udpldap 389/tcp # Lightweight Directory Access Protocolldap 389/udpimsp 406/tcp # Interactive Mail Support Protocolimsp 406/udpsvrloc 427/tcp # Server Locationsvrloc 427/udphttps 443/tcp # http protocol over TLS/SSLsnpp 444/tcp # Simple Network Paging Protocolsnpp 444/udpmicrosoft-ds 445/tcp # Microsoft Naked CIFSmicrosoft-ds 445/udpkpasswd 464/tcpkpasswd 464/udpsubmissions 465/tcp ssmtp smtps urd # Submission over TLS [RFC8314]saft 487/tcp # Simple Asynchronous File Transfersaft 487/udpisakmp 500/tcp # IPsec - Internet Security Associationisakmp 500/udp # and Key Management Protocolrtsp 554/tcp # Real Time Stream Control Protocolrtsp 554/udpnqs 607/tcp # Network Queuing systemnqs 607/udpnpmp-local 610/tcp dqs313_qmaster # npmp-local / DQSnpmp-local 610/udp dqs313_qmasternpmp-gui 611/tcp dqs313_execd # npmp-gui / DQSnpmp-gui 611/udp dqs313_execdhmmp-ind 612/tcp dqs313_intercell # HMMP Indication / DQShmmp-ind 612/udp dqs313_intercellasf-rmcp 623/udp # ASF Remote Management and Control Protocolqmqp 628/tcpqmqp 628/udpipp 631/tcp # Internet Printing Protocolipp 631/udp## UNIX specific services#exec 512/tcpbiff 512/udp comsatlogin 513/tcpwho 513/udp whodshell 514/tcp cmd # no passwords usedsyslog 514/udpprinter 515/tcp spooler # line printer spoolertalk 517/udpntalk 518/udproute 520/udp router routed # RIPtimed 525/udp timeservertempo 526/tcp newdatecourier 530/tcp rpcconference 531/tcp chatnetnews 532/tcp readnewsnetwall 533/udp # for emergency broadcastsgdomap 538/tcp # GNUstep distributed objectsgdomap 538/udpuucp 540/tcp uucpd # uucp daemonklogin 543/tcp # Kerberized 'rlogin' (v5)kshell 544/tcp krcmd # Kerberized 'rsh' (v5)dhcpv6-client 546/tcpdhcpv6-client 546/udpdhcpv6-server 547/tcpdhcpv6-server 547/udpafpovertcp 548/tcp # AFP over TCPafpovertcp 548/udpidfp 549/tcpidfp 549/udpremotefs 556/tcp rfs_server rfs # Brunhoff remote filesystemnntps 563/tcp snntp # NNTP over SSLsubmission 587/tcp # Submission [RFC4409]ldaps 636/tcp # LDAP over SSLldaps 636/udptinc 655/tcp # tinc control porttinc 655/udpsilc 706/tcpsilc 706/udpkerberos-adm 749/tcp # Kerberos 'kadmin' (v5)#webster 765/tcp # Network dictionarywebster 765/udpdomain-s 853/tcp # DNS over TLS [RFC7858]domain-s 853/udp # DNS over DTLS [RFC8094]rsync 873/tcpftps-data 989/tcp # FTP over SSL (data)ftps 990/tcptelnets 992/tcp # Telnet over SSLimaps 993/tcp # IMAP over SSLpop3s 995/tcp # POP-3 over SSL## From "ssigned Numbers":##> The Registered Ports are not controlled by the IANA and on most systems#> can be used by ordinary user processes or programs executed by ordinary#> users.##> Ports are used in the TCP [45,106] to name the ends of logical#> connections which carry long term conversations. For the purpose of#> providing services to unknown callers, a service contact port is#> defined. This list specifies the port used by the server process as its#> contact port. While the IANA can not control uses of these ports it#> does register or list uses of these ports as a convienence to the#> community.#socks 1080/tcp # socks proxy serversocks 1080/udpproofd 1093/tcpproofd 1093/udprootd 1094/tcprootd 1094/udpopenvpn 1194/tcpopenvpn 1194/udprmiregistry 1099/tcp # Java RMI Registryrmiregistry 1099/udpkazaa 1214/tcpkazaa 1214/udpnessus 1241/tcp # Nessus vulnerabilitynessus 1241/udp # assessment scannerlotusnote 1352/tcp lotusnotes # Lotus Notelotusnote 1352/udp lotusnotesms-sql-s 1433/tcp # Microsoft SQL Serverms-sql-s 1433/udpms-sql-m 1434/tcp # Microsoft SQL Monitorms-sql-m 1434/udpingreslock 1524/tcpingreslock 1524/udpdatametrics 1645/tcp old-radiusdatametrics 1645/udp old-radiussa-msg-port 1646/tcp old-radacctsa-msg-port 1646/udp old-radacctkermit 1649/tcpkermit 1649/udpgroupwise 1677/tcpgroupwise 1677/udpl2f 1701/tcp l2tpl2f 1701/udp l2tpradius 1812/tcpradius 1812/udpradius-acct 1813/tcp radacct # Radius Accountingradius-acct 1813/udp radacctmsnp 1863/tcp # MSN Messengermsnp 1863/udpunix-status 1957/tcp # remstats unix-status serverlog-server 1958/tcp # remstats log serverremoteping 1959/tcp # remstats remoteping servercisco-sccp 2000/tcp # Cisco SCCPcisco-sccp 2000/udpsearch 2010/tcp ndtppipe-server 2010/tcp pipe_servernfs 2049/tcp # Network File Systemnfs 2049/udp # Network File Systemgnunet 2086/tcpgnunet 2086/udprtcm-sc104 2101/tcp # RTCM SC-104 IANA 1/29/99rtcm-sc104 2101/udpgsigatekeeper 2119/tcpgsigatekeeper 2119/udpgris 2135/tcp # Grid Resource Information Servergris 2135/udpcvspserver 2401/tcp # CVS client/server operationscvspserver 2401/udpvenus 2430/tcp # codacon portvenus 2430/udp # Venus callback/wbc interfacevenus-se 2431/tcp # tcp side effectsvenus-se 2431/udp # udp sftp side effectcodasrv 2432/tcp # not usedcodasrv 2432/udp # server portcodasrv-se 2433/tcp # tcp side effectscodasrv-se 2433/udp # udp sftp side effectmon 2583/tcp # MON trapsmon 2583/udpdict 2628/tcp # Dictionary serverdict 2628/udpf5-globalsite 2792/tcpf5-globalsite 2792/udpgsiftp 2811/tcpgsiftp 2811/udpgpsd 2947/tcpgpsd 2947/udpgds-db 3050/tcp gds_db # InterBase servergds-db 3050/udp gds_dbicpv2 3130/tcp icp # Internet Cache Protocolicpv2 3130/udp icpisns 3205/tcp # iSNS Server Portisns 3205/udp # iSNS Server Portiscsi-target 3260/tcpmysql 3306/tcpmysql 3306/udpnut 3493/tcp # Network UPS Toolsnut 3493/udpdistcc 3632/tcp # distributed compilerdistcc 3632/udpdaap 3689/tcp # Digital Audio Access Protocoldaap 3689/udpsvn 3690/tcp subversion # Subversion protocolsvn 3690/udp subversionsuucp 4031/tcp # UUCP over SSLsuucp 4031/udpsysrqd 4094/tcp # sysrq daemonsysrqd 4094/udpsieve 4190/tcp # ManageSieve Protocolepmd 4369/tcp # Erlang Port Mapper Daemonepmd 4369/udpremctl 4373/tcp # Remote Authenticated Command Serviceremctl 4373/udpf5-iquery 4353/tcp # F5 iQueryf5-iquery 4353/udpipsec-nat-t 4500/udp # IPsec NAT-Traversal [RFC3947]iax 4569/tcp # Inter-Asterisk eXchangeiax 4569/udpmtn 4691/tcp # monotone Netsync Protocolmtn 4691/udpradmin-port 4899/tcp # RAdmin Portradmin-port 4899/udprfe 5002/udp # Radio Free Ethernetrfe 5002/tcpmmcc 5050/tcp # multimedia conference control tool (Yahoo IM)mmcc 5050/udpsip 5060/tcp # Session Initiation Protocolsip 5060/udpsip-tls 5061/tcpsip-tls 5061/udpaol 5190/tcp # AIMaol 5190/udpxmpp-client 5222/tcp jabber-client # Jabber Client Connectionxmpp-client 5222/udp jabber-clientxmpp-server 5269/tcp jabber-server # Jabber Server Connectionxmpp-server 5269/udp jabber-servercfengine 5308/tcpcfengine 5308/udpmdns 5353/tcp # Multicast DNSmdns 5353/udppostgresql 5432/tcp postgres # PostgreSQL Databasepostgresql 5432/udp postgresfreeciv 5556/tcp rptp # Freeciv gameplayfreeciv 5556/udpamqps 5671/tcp # AMQP protocol over TLS/SSLamqp 5672/tcpamqp 5672/udpamqp 5672/sctpggz 5688/tcp # GGZ Gaming Zoneggz 5688/udpx11 6000/tcp x11-0 # X Window Systemx11 6000/udp x11-0x11-1 6001/tcpx11-1 6001/udpx11-2 6002/tcpx11-2 6002/udpx11-3 6003/tcpx11-3 6003/udpx11-4 6004/tcpx11-4 6004/udpx11-5 6005/tcpx11-5 6005/udpx11-6 6006/tcpx11-6 6006/udpx11-7 6007/tcpx11-7 6007/udpgnutella-svc 6346/tcp # gnutellagnutella-svc 6346/udpgnutella-rtr 6347/tcp # gnutellagnutella-rtr 6347/udpsge-qmaster 6444/tcp sge_qmaster # Grid Engine Qmaster Servicesge-qmaster 6444/udp sge_qmastersge-execd 6445/tcp sge_execd # Grid Engine Execution Servicesge-execd 6445/udp sge_execdmysql-proxy 6446/tcp # MySQL Proxymysql-proxy 6446/udpbabel 6696/udp # Babel Routing Protocolircs-u 6697/tcp # Internet Relay Chat via TLS/SSLafs3-fileserver 7000/tcp bbs # file server itselfafs3-fileserver 7000/udp bbsafs3-callback 7001/tcp # callbacks to cache managersafs3-callback 7001/udpafs3-prserver 7002/tcp # users & groups databaseafs3-prserver 7002/udpafs3-vlserver 7003/tcp # volume location databaseafs3-vlserver 7003/udpafs3-kaserver 7004/tcp # AFS/Kerberos authenticationafs3-kaserver 7004/udpafs3-volser 7005/tcp # volume managment serverafs3-volser 7005/udpafs3-errors 7006/tcp # error interpretation serviceafs3-errors 7006/udpafs3-bos 7007/tcp # basic overseer processafs3-bos 7007/udpafs3-update 7008/tcp # server-to-server updaterafs3-update 7008/udpafs3-rmtsys 7009/tcp # remote cache manager serviceafs3-rmtsys 7009/udpfont-service 7100/tcp xfs # X Font Servicefont-service 7100/udp xfshttp-alt 8080/tcp webcache # WWW caching servicehttp-alt 8080/udppuppet 8140/tcp # The Puppet master servicebacula-dir 9101/tcp # Bacula Directorbacula-dir 9101/udpbacula-fd 9102/tcp # Bacula File Daemonbacula-fd 9102/udpbacula-sd 9103/tcp # Bacula Storage Daemonbacula-sd 9103/udpxmms2 9667/tcp # Cross-platform Music Multiplexing Systemxmms2 9667/udpnbd 10809/tcp # Linux Network Block Devicezabbix-agent 10050/tcp # Zabbix Agentzabbix-agent 10050/udpzabbix-trapper 10051/tcp # Zabbix Trapperzabbix-trapper 10051/udpamanda 10080/tcp # amanda backup servicesamanda 10080/udpdicom 11112/tcphkp 11371/tcp # OpenPGP HTTP Keyserverhkp 11371/udpbprd 13720/tcp # VERITAS NetBackupbprd 13720/udpbpdbm 13721/tcp # VERITAS NetBackupbpdbm 13721/udpbpjava-msvc 13722/tcp # BP Java MSVC Protocolbpjava-msvc 13722/udpvnetd 13724/tcp # Veritas Network Utilityvnetd 13724/udpbpcd 13782/tcp # VERITAS NetBackupbpcd 13782/udpvopied 13783/tcp # VERITAS NetBackupvopied 13783/udpdb-lsp 17500/tcp # Dropbox LanSync Protocoldcap 22125/tcp # dCache Access Protocolgsidcap 22128/tcp # GSI dCache Access Protocolwnn6 22273/tcp # wnn6wnn6 22273/udp## Datagram Delivery Protocol services#rtmp 1/ddp # Routing Table Maintenance Protocolnbp 2/ddp # Name Binding Protocolecho 4/ddp # AppleTalk Echo Protocolzip 6/ddp # Zone Information Protocol#=========================================================================# The remaining port numbers are not as allocated by IANA.#=========================================================================# Kerberos (Project Athena/MIT) services# Note that these are for Kerberos v4, and are unofficial. Sites running# v4 should uncomment these and comment out the v5 entries above.#kerberos4 750/udp kerberos-iv kdc # Kerberos (server)kerberos4 750/tcp kerberos-iv kdckerberos-master 751/udp kerberos_master # Kerberos authenticationkerberos-master 751/tcppasswd-server 752/udp passwd_server # Kerberos passwd serverkrb-prop 754/tcp krb_prop krb5_prop hprop # Kerberos slave propagationkrbupdate 760/tcp kreg # Kerberos registrationswat 901/tcp # swatkpop 1109/tcp # Pop with Kerberosknetd 2053/tcp # Kerberos de-multiplexorzephyr-srv 2102/udp # Zephyr serverzephyr-clt 2103/udp # Zephyr serv-hm connectionzephyr-hm 2104/udp # Zephyr hostmanagereklogin 2105/tcp # Kerberos encrypted rlogin# Hmmm. Are we using Kv4 or Kv5 now? Worrying.# The following is probably Kerberos v5 --- ajt@debian.org (11/02/2000)kx 2111/tcp # X over Kerberosiprop 2121/tcp # incremental propagation## Unofficial but necessary (for NetBSD) services#supfilesrv 871/tcp # SUP serversupfiledbg 1127/tcp # SUP debugging## Services added for the Debian GNU/Linux distribution#poppassd 106/tcp # Eudorapoppassd 106/udpmoira-db 775/tcp moira_db # Moira databasemoira-update 777/tcp moira_update # Moira update protocolmoira-ureg 779/udp moira_ureg # Moira user registrationspamd 783/tcp # spamassassin daemonomirr 808/tcp omirrd # online mirroromirr 808/udp omirrdcustoms 1001/tcp # pmake customs servercustoms 1001/udpskkserv 1178/tcp # skk jisho server portpredict 1210/udp # predict -- satellite trackingrmtcfg 1236/tcp # Gracilis Packeten remote config serverwipld 1300/tcp # Wipl network monitorxtel 1313/tcp # french minitelxtelw 1314/tcp # french minitelsupport 1529/tcp # GNATScfinger 2003/tcp # GNU Fingerfrox 2121/tcp # frox: caching ftp proxyninstall 2150/tcp # ninstall serviceninstall 2150/udpzebrasrv 2600/tcp # zebra servicezebra 2601/tcp # zebra vtyripd 2602/tcp # ripd vty (zebra)ripngd 2603/tcp # ripngd vty (zebra)ospfd 2604/tcp # ospfd vty (zebra)bgpd 2605/tcp # bgpd vty (zebra)ospf6d 2606/tcp # ospf6d vty (zebra)ospfapi 2607/tcp # OSPF-APIisisd 2608/tcp # ISISd vty (zebra)afbackup 2988/tcp # Afbackup systemafbackup 2988/udpafmbackup 2989/tcp # Afmbackup systemafmbackup 2989/udpxtell 4224/tcp # xtell serverfax 4557/tcp # FAX transmission service (old)hylafax 4559/tcp # HylaFAX client-server protocol (new)distmp3 4600/tcp # distmp3host daemonmunin 4949/tcp lrrd # Muninenbd-cstatd 5051/tcp # ENBD client statdenbd-sstatd 5052/tcp # ENBD server statdpcrd 5151/tcp # PCR-1000 Daemonnoclog 5354/tcp # noclogd with TCP (nocol)noclog 5354/udp # noclogd with UDP (nocol)hostmon 5355/tcp # hostmon uses TCP (nocol)hostmon 5355/udp # hostmon uses UDP (nocol)rplay 5555/udp # RPlay audio servicenrpe 5666/tcp # Nagios Remote Plugin Executornsca 5667/tcp # Nagios Agent - NSCAmrtd 5674/tcp # MRT Routing Daemonbgpsim 5675/tcp # MRT Routing Simulatorcanna 5680/tcp # cannaserversyslog-tls 6514/tcp # Syslog over TLS [RFC5425]sane-port 6566/tcp sane saned # SANE network scanner daemonircd 6667/tcp # Internet Relay Chatzope-ftp 8021/tcp # zope management by ftptproxy 8081/tcp # Transparent Proxyomniorb 8088/tcp # OmniORBomniorb 8088/udpclc-build-daemon 8990/tcp # Common lisp build daemonxinetd 9098/tcpmandelspawn 9359/udp mandelbrot # network mandelbrotgit 9418/tcp # Git Version Control Systemzope 9673/tcp # zope serverwebmin 10000/tcpkamanda 10081/tcp # amanda backup services (Kerberos)kamanda 10081/udpamandaidx 10082/tcp # amanda backup servicesamidxtape 10083/tcp # amanda backup servicessmsqp 11201/tcp # Alamin SMS gatewaysmsqp 11201/udpxpilot 15345/tcp # XPilot Contact Portxpilot 15345/udpsgi-cmsd 17001/udp # Cluster membership services daemonsgi-crsd 17002/udpsgi-gcd 17003/udp # SGI Group membership daemonsgi-cad 17004/tcp # Cluster Admin daemonisdnlog 20011/tcp # isdn logging systemisdnlog 20011/udpvboxd 20012/tcp # voice box systemvboxd 20012/udpbinkp 24554/tcp # binkp fidonet protocolasp 27374/tcp # Address Search Protocolasp 27374/udpcsync2 30865/tcp # cluster synchronization tooldircproxy 57000/tcp # Detachable IRC Proxytfido 60177/tcp # fidonet EMSI over telnetfido 60179/tcp # fidonet EMSI over TCP# Local services`)typeProtoentstruct { Name string Aliases []string Number int}typeServentstruct { Name string Aliases []string Port int Protocol *Protoent}// These variables get populated from /etc/protocols and /etc/services// respectively.var (Protocols []*ProtoentServices []*Servent)func () { := make(map[string]*Protoent)// Load protocols , := ioutil.ReadFile("/etc/protocols")if != nil {if !os.IsNotExist() {panic() } = []byte(protocols) }for , := rangestrings.Split(string(), "\n") { = strings.TrimSpace() := strings.SplitN(, "#", 2) := strings.Fields([0])iflen() < 2 {continue } , := strconv.ParseInt([1], 10, 32)if != nil {panic() } := &Protoent{Name: [0],Aliases: [2:],Number: int(), }Protocols = append(Protocols, ) [[0]] = }// Load services , = ioutil.ReadFile("/etc/services")if != nil {if !os.IsNotExist() {panic() } = []byte(services) }for , := rangestrings.Split(string(), "\n") { = strings.TrimSpace() := strings.SplitN(, "#", 2) := strings.Fields([0])iflen() < 2 {continue } := [0] := strings.SplitN([1], "/", 2) , := strconv.ParseInt([0], 10, 32)if != nil {panic() } := [1] := [2:]Services = append(Services, &Servent{Name: ,Aliases: ,Port: int(),Protocol: [], }) }}// Equal checks if two Protoents are the same, which is the case if// their protocol numbers are identical or when both Protoents are// nil.func ( *Protoent) ( *Protoent) bool {if == nil && == nil {returntrue }if == nil || == nil {returnfalse }return .Number == .Number}// Equal checks if two Servents are the same, which is the case if// their port numbers and protocols are identical or when both// Servents are nil.func ( *Servent) ( *Servent) bool {if == nil && == nil {returntrue }if == nil || == nil {returnfalse }return .Port == .Port && .Protocol.Equal(.Protocol)}// GetProtoByNumber returns the Protoent for a given protocol number.func ( int) ( *Protoent) {for , := rangeProtocols {if .Number == {return } }returnnil}// GetProtoByName returns the Protoent whose name or any of its// aliases matches the argument.func ( string) ( *Protoent) {for , := rangeProtocols {if .Name == {return }for , := range .Aliases {if == {return } } }returnnil}// GetServByName returns the Servent for a given service name or alias// and protocol. If the protocol is nil, the first service matching// the service name is returned.func ( string, *Protoent) ( *Servent) {for , := rangeServices {if !.Protocol.Equal() {continue }if .Name == {return }for , := range .Aliases {if == {return } } }returnnil}// GetServByPort returns the Servent for a given port number and// protocol. If the protocol is nil, the first service matching the// port number is returned.func ( int, *Protoent) *Servent {for , := rangeServices {if .Port == && .Protocol.Equal() {return } }returnnil}
The pages are generated with Goldsv0.3.6. (GOOS=darwin GOARCH=amd64)
Golds is a Go 101 project developed by Tapir Liu.
PR and bug reports are welcome and can be submitted to the issue list.
Please follow @Go100and1 (reachable from the left QR code) to get the latest news of Golds.