From: Jeff Hostetler <jeffhost@xxxxxxxxxxxxx> Change the public initialization of `struct unix_stream_listen_opts` to be all zeroes. Hide the default values for the timeout and backlog values inside `unix-socket.c`. Signed-off-by: Jeff Hostetler <jeffhost@xxxxxxxxxxxxx> --- unix-socket.c | 11 +++++++++-- unix-socket.h | 7 ++----- 2 files changed, 11 insertions(+), 7 deletions(-) diff --git a/unix-socket.c b/unix-socket.c index 647bbde37f97..c9ea1de43bd2 100644 --- a/unix-socket.c +++ b/unix-socket.c @@ -2,6 +2,9 @@ #include "lockfile.h" #include "unix-socket.h" +#define DEFAULT_UNIX_STREAM_LISTEN_TIMEOUT (100) +#define DEFAULT_UNIX_STREAM_LISTEN_BACKLOG (5) + static int chdir_len(const char *orig, int len) { char *path = xmemdupz(orig, len); @@ -165,14 +168,18 @@ struct unix_stream_server_socket *unix_stream_server__listen_with_lock( const struct unix_stream_listen_opts *opts) { struct lock_file lock = LOCK_INIT; + long timeout; int fd_socket; struct unix_stream_server_socket *server_socket; + timeout = opts->timeout_ms; + if (opts->timeout_ms <= 0) + timeout = DEFAULT_UNIX_STREAM_LISTEN_TIMEOUT; + /* * Create a lock at "<path>.lock" if we can. */ - if (hold_lock_file_for_update_timeout(&lock, path, 0, - opts->timeout_ms) < 0) { + if (hold_lock_file_for_update_timeout(&lock, path, 0, timeout) < 0) { error_errno(_("could not lock listener socket '%s'"), path); return NULL; } diff --git a/unix-socket.h b/unix-socket.h index 8faf5b692f90..bec925ee0213 100644 --- a/unix-socket.h +++ b/unix-socket.h @@ -7,13 +7,10 @@ struct unix_stream_listen_opts { unsigned int disallow_chdir:1; }; -#define DEFAULT_UNIX_STREAM_LISTEN_TIMEOUT (100) -#define DEFAULT_UNIX_STREAM_LISTEN_BACKLOG (5) - #define UNIX_STREAM_LISTEN_OPTS_INIT \ { \ - .timeout_ms = DEFAULT_UNIX_STREAM_LISTEN_TIMEOUT, \ - .listen_backlog_size = DEFAULT_UNIX_STREAM_LISTEN_BACKLOG, \ + .timeout_ms = 0, \ + .listen_backlog_size = 0, \ .disallow_chdir = 0, \ } -- gitgitgadget