Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
TCP_LISTEN(3)		   libdill Library Functions		 TCP_LISTEN(3)

NAME
       tcp_listen - starts listening for incoming TCP connections

SYNOPSIS
	      #include <libdill.h>

	      int tcp_listen(
		  const	struct ipaddr* addr,
		  int backlog);

DESCRIPTION
       TCP  protocol  is  a reliable bytestream	protocol for transporting data
       over network.  It is defined in RFC 793.

       This function starts listening for incoming connections.	  The  connec-
       tions can be accepted using tcp_accept function.

       addr: IP	address	to listen on.

       backlog:	 Maximum  number  of connections that can be kept open without
       accepting them.

       The socket can be closed	either by hclose or tcp_close.	Both ways  are
       equivalent.

       This  function  is  not	available  if  libdill is compiled with	--dis-
       able-sockets option.

RETURN VALUE
       In case of success the function returns newly created socket.  In  case
       of error	it returns -1 and sets errno to	one of the values below.

ERRORS
       o EADDRINUSE: The specified address is already in use.

       o EADDRNOTAVAIL:	 The specified address is not available	from the local
	 machine.

       o EINVAL: Invalid argument.

       o EMFILE: The maximum number of file descriptors	in the process are al-
	 ready open.

       o ENFILE:  The maximum number of	file descriptors in the	system are al-
	 ready open.

       o ENOMEM: Not enough memory.

EXAMPLE
	      struct ipaddr addr;
	      ipaddr_local(&addr, NULL,	5555, 0);
	      int ls = tcp_listen(&addr, 10);
	      int s = tcp_accept(ls, NULL, -1);
	      bsend(s, "ABC", 3, -1);
	      char buf[3];
	      brecv(s, buf, sizeof(buf), -1);
	      tcp_close(s);
	      tcp_close(ls);

SEE ALSO
       brecv(3)	brecvl(3) bsend(3) bsendl(3) hclose(3)	tcp_accept(3)  tcp_ac-
       cept_mem(3)  tcp_close(3) tcp_connect(3)	tcp_connect_mem(3) tcp_done(3)
       tcp_fromfd(3)	tcp_fromfd_mem(3)    tcp_listen_mem(3)	   tcp_listen-
       er_fromfd(3) tcp_listener_fromfd_mem(3)

libdill								 TCP_LISTEN(3)

NAME | SYNOPSIS | DESCRIPTION | RETURN VALUE | ERRORS | EXAMPLE | SEE ALSO

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=tcp_listen&sektion=3&manpath=FreeBSD+12.1-RELEASE+and+Ports>

home | help