Once a server-side end-point is bound to an address, it does not listen to connection requests by default. A call to listen is needed to make an end-point start to listen to incoming connection requests.
The listen call (man 2 listen) needs two parameters. The first to specify the end-point FD from the socket call. The second parameter, backlog, defines how many pending requests the system should queue up. Any requests beyond this queue limit may be dropped, causing an error on the client side.
listen, like bind, returns 0 when it is successful.