| #ifndef UNIX_STREAM_SERVER_H | |
| #define UNIX_STREAM_SERVER_H | |
| #include "unix-socket.h" | |
| struct unix_ss_socket { | |
| char *path_socket; | |
| struct stat st_socket; | |
| int fd_socket; | |
| }; | |
| /* | |
| * Create a Unix Domain Socket at the given path under the protection | |
| * of a '.lock' lockfile. | |
| * | |
| * Returns 0 on success, -1 on error, -2 if socket is in use. | |
| */ | |
| int unix_ss_create(const char *path, | |
| const struct unix_stream_listen_opts *opts, | |
| long timeout_ms, | |
| struct unix_ss_socket **server_socket); | |
| /* | |
| * Close and delete the socket. | |
| */ | |
| void unix_ss_free(struct unix_ss_socket *server_socket); | |
| /* | |
| * Return 1 if the inode of the pathname to our socket changes. | |
| */ | |
| int unix_ss_was_stolen(struct unix_ss_socket *server_socket); | |
| #endif /* UNIX_STREAM_SERVER_H */ |