|BINDAT(2)||FreeBSD System Calls Manual||BINDAT(2)|
NAMEbindat — assign a local protocol address to a socket
LIBRARYStandard C Library (libc, -lc)
SYNOPSIS#include < sys/types.h>
#include < sys/socket.h>
#include < fcntl.h>
bindat( int fd, int s, const struct sockaddr *addr, socklen_t addrlen);
DESCRIPTIONThe bindat() system call assigns the local protocol address to a socket. It works just like the bind(2) system call with two exceptions:
- It is limited to sockets in the PF_LOCAL domain.
- If the file path stored in the sun_path field of the sockaddr_un structure is a relative path, it is located relative to the directory associated with the file descriptor fd. If bindat() is passed the special value AT_FDCWD in the fd parameter, the current working directory is used and the behavior is identical to a call to bind(2).
RETURN VALUESThe bindat() function returns the value 0 if successful; otherwise the value -1 is returned and the global variable errno is set to indicate the error.
ERRORSThe bindat() system call may fail with the same errors as the bind(2) system call for a UNIX domain socket or with the following errors:
- [ EBADF]
- The sun_path field does not specify an absolute path and the fd argument is neither AT_FDCWD nor a valid file descriptor.
- [ ENOTDIR]
- The sun_path field is not an absolute path and fd is neither AT_FDCWD nor a file descriptor associated with a directory.
AUTHORSThe bindat was developed by <email@example.com> under sponsorship from the FreeBSD Foundation.
|February 13, 2013||FreeBSD|