[2.4.14] wrong IPv4 listen syscall return code

From: Francois-Xavier KOWALSKI (francois-xavier_kowalski@hp.com)
Date: Wed Nov 21 2001 - 08:28:26 EST


Hello kernel developpers,

(please Cc: me in reply, since I am not on the ML).

I am puzzled my a problem around the listen(2) system call.

The man page states the following item, which make sense:

ERRORS
       EADDRINUSE
              Another socket is already listening on the same
              port.

       EBADF The argument s is not a valid descriptor.

       ENOTSOCK
              The argument s is not a socket.

       EOPNOTSUPP
              The socket is not of a type that supports the lis­
              ten operation.

But when I go within the source code of listen implementation for STREAM
protocol (as specified for TCL in net/ipv4/af_inet.c) in the function
inet_listen() the default return code is EINVAL instead of EOPNOTSUPP.

Who holds the truth? I believe source code is wrong, since EOPNOTSUPP is
much more explicit.

BTW, where is the official & as much up-to-date as possible source for
kernel syscalls man pages?

-- 
Francois-Xavier "FiX" KOWALSKI

- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Fri Nov 23 2001 - 21:00:27 EST