Add a define for the socket permissions check so it can be overridden
authornicm <nicm@openbsd.org>
Wed, 2 Oct 2024 11:48:16 +0000 (11:48 +0000)
committernicm <nicm@openbsd.org>
Wed, 2 Oct 2024 11:48:16 +0000 (11:48 +0000)
more easily (for Cgywin).

usr.bin/tmux/tmux.c
usr.bin/tmux/tmux.h

index 9514860..47cae7b 100644 (file)
@@ -1,4 +1,4 @@
-/* $OpenBSD: tmux.c,v 1.213 2024/09/29 20:05:42 nicm Exp $ */
+/* $OpenBSD: tmux.c,v 1.214 2024/10/02 11:48:16 nicm Exp $ */
 
 /*
  * Copyright (c) 2007 Nicholas Marriott <nicholas.marriott@gmail.com>
@@ -226,7 +226,7 @@ make_label(const char *label, char **cause)
                xasprintf(cause, "%s is not a directory", base);
                goto fail;
        }
-       if (sb.st_uid != uid || (sb.st_mode & S_IRWXO) != 0) {
+       if (sb.st_uid != uid || (sb.st_mode & TMUX_SOCK_PERM) != 0) {
                xasprintf(cause, "directory %s has unsafe permissions", base);
                goto fail;
        }
index 5a92786..e904e8e 100644 (file)
@@ -1,4 +1,4 @@
-/* $OpenBSD: tmux.h,v 1.1231 2024/10/01 08:01:19 nicm Exp $ */
+/* $OpenBSD: tmux.h,v 1.1232 2024/10/02 11:48:16 nicm Exp $ */
 
 /*
  * Copyright (c) 2007 Nicholas Marriott <nicholas.marriott@gmail.com>
@@ -78,6 +78,9 @@ struct winlink;
 #ifndef TMUX_SOCK
 #define TMUX_SOCK "$TMUX_TMPDIR:" _PATH_TMP
 #endif
+#ifndef TMUX_SOCK_PERM
+#define TMUX_SOCK_PERM (7 /* o+rwx */)
+#endif
 #ifndef TMUX_TERM
 #define TMUX_TERM "screen"
 #endif