Socket API

The io-sock networking stack provides socket functions ported from FreeBSD as well as io-sock-specific ones.

The FreeBSD documentation provides reference and other information about socket functions. For example: https://docs.freebsd.org/en_US.ISO8859-1/books/developers-handbook/sockets-essential-functions.html.

The io-sock networking stack supports all the routines that application programmers would expect, including (but not limited to) the functions listed below. The FreeBSD 13.5 manual pages at https://www.freebsd.org/cgi/man.cgi are the best guide to their use:

accept()
              accept4()
              bind()
              bindresvport()
              bindresvport_sa()
              connect()
              dn_comp()
              dn_expand()
              endnetent()
              endnetgrent()
              endprotoent()
              endservent()
              ether_aton()
              ether_hostton()
              ether_line()
              ether_ntoa()
              ether_ntohost()
              feature_present()
              freeaddrinfo()
              freeifaddrs()
              freeifmaddrs()
              gai_strerror()
              getaddrinfo()
              getdomainname()
              getifaddrs()
              getifmaddrs()
              getnameinfo()
              getnetbyaddr()
              getnetbyname()
              getnetent()
              getnetgrent()
              getpeereid()
              getpeername()
              getprotobyname()
              getprotobyname_r()
              getprotobynumber()
            
getprotobynumber_r()
              getprotoent()
              getprotoent_r()
              getservbyname_r()
              getservbyport()
              getservbyport_r()
              getservent()
              getservent_r()
              getsockname()
              getsockopt()
              htonl()
              htons()
              if_freenameindex()
              if_indextoname()
              if_nameindex()
              if_nametoindex()
              inet_addr()
              inet_aton()
              inet_net_ntop()
              inet_net_pton()
              inet_network()
              inet_ntoa()
              inet_ntoa_r()
              inet_ntop()
              inet_pton()
              inet6_opt_append()
              inet6_opt_find()
              inet6_opt_finish()
              inet6_opt_get_val()
              inet6_opt_init()
              inet6_opt_next()
              inet6_opt_set_val()
              inet6_rth_add()
              inet6_rth_getaddr()
              inet6_rth_init()
              inet6_rth_reverse()
inet6_rth_segments()
              inet6_rth_space()
              innetgr()
              link_addr()
              link_ntoa()
              listen()
              nsdispatch()
              ntohl()
              ntohs()
              recv()
              recvfrom()
              recvmmsg()
              recvmsg()
              res_init()
              res_mkquery()
              res_query()
              res_querydomain()
              res_search()
              res_send()
              send()
              sendto()
              sendmmsg()
              sendmsg()
              setdomainname()
              setnetent()
              setnetgrent()
              setprotoent()
              setservent()
              setsockopt()
              shutdown()
              sockatmark()
              socket()
              sysctl()
              sysctlbynamefb()
              sysctlnametomib()
              sysctlnametomibfd()
Page updated: