Hello Lukas, On 05/13/2018 03:21 PM, Lucas Werkmeister wrote: > Linux returns ENXIO when attempting to open() a UNIX domain socket. > Kernel-wise, I believe this happens in fs/inode.c [1], where a constant > `no_open` function returning -ENXIO is registered as the default open() > handler for inodes in inode_init_always(), and is not specialized in > nit_special_inode() as it is for other types. > > Seen in the systemd v238 source code [2]. > > [1]: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/fs/inode.c?h=v4.16 > [2]: https://github.com/systemd/systemd/blob/v238/src/core/execute.c#L412 Thanks! Applied. Cheers, Michael > --- > man2/open.2 | 3 +++ > 1 file changed, 3 insertions(+) > > diff --git a/man2/open.2 b/man2/open.2 > index eea14f195..0c70e2b14 100644 > --- a/man2/open.2 > +++ b/man2/open.2 > @@ -1112,6 +1112,9 @@ no process has the FIFO open for reading. > .B ENXIO > The file is a device special file and no corresponding device exists. > .TP > +.B ENXIO > +The file is a socket. > +.TP > .BR EOPNOTSUPP > The filesystem containing > .I pathname > -- Michael Kerrisk Linux man-pages maintainer; http://www.kernel.org/doc/man-pages/ Linux/UNIX System Programming Training: http://man7.org/training/ -- To unsubscribe from this list: send the line "unsubscribe linux-man" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html