X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=man%2Fsd_is_fifo.xml;h=17ecca833672be4c9c915eba1a9915ba14cf86cb;hp=a790c370e10652b8cf5c909ba36f8093b7980d98;hb=a09abc4ae0bdc0200324eaa0416f23ff2170ec4e;hpb=05cc726731c5cec952722f1c14acb08e3d4d5e98 diff --git a/man/sd_is_fifo.xml b/man/sd_is_fifo.xml index a790c370e..17ecca833 100644 --- a/man/sd_is_fifo.xml +++ b/man/sd_is_fifo.xml @@ -21,7 +21,8 @@ along with systemd; If not, see . --> - + sd_is_fifo @@ -48,6 +49,7 @@ sd_is_socket_inet sd_is_socket_unix sd_is_mq + sd_is_special Check the type of a file descriptor @@ -83,7 +85,7 @@ int fd int type int listening - const char* path + const char *path size_t length @@ -93,6 +95,12 @@ const char *path + + int sd_is_special + int fd + const char *path + + @@ -153,6 +161,16 @@ path parameter is not NULL, it is checked whether the message queue is bound to the specified name. + + sd_is_special() may be + called to check whether the specified file descriptor + refers to a special file. If the + path parameter is not + NULL, it is checked whether the file + descriptor is bound to the specified file + name. Special files in this context are character + device nodes and files in /proc + or /sys. @@ -160,7 +178,7 @@ On failure, these calls return a negative errno-style error code. If the file descriptor is of - the specified type and bound to the specified address + the specified type and bound to the specified address, a positive return value is returned, otherwise zero. @@ -168,41 +186,12 @@ Notes - These functions are provided by the reference - implementation of APIs for new-style daemons and - distributed with the systemd package. The algorithms - they implement are simple, and they can easily be - reimplemented in daemons if it is important to support - this interface without using the reference - implementation. + Internally, these function use a combination of fstat() and getsockname() to check the file descriptor type and where it is bound to. - - For details about the algorithms, check the - liberally licensed reference implementation sources: - - and - - sd_is_fifo() and the - related functions are implemented in the reference - implementation's sd-daemon.c and - sd-daemon.h files. These - interfaces are available as shared library, which can - be compiled and linked to with the - libsystemd-daemon pkg-config1 - file. Alternatively, applications consuming these APIs - may copy the implementation into their source - tree. For more details about the reference - implementation see - sd-daemon3. - - These functions continue to work as described, - even if -DDISABLE_SYSTEMD is set during - compilation.