From 732c70a0d9d8db6a2fd77a52185f9a76743b05a9 Mon Sep 17 00:00:00 2001 From: Paul Eggert Date: Sun, 3 Oct 2021 11:42:20 -0700 Subject: [PATCH] Simplify socket symlink-attack checking This is a minor bugfix cleanup (Bug#33847#161). * lib-src/emacsclient.c: Move "#include " to inside "#ifdef SOCKETS_IN_FILE_SYSTEM", which is more accurate and simpler than having a separate "#ifndef WINDOWSNT". (O_PATH): Likewise. --- lib-src/emacsclient.c | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/lib-src/emacsclient.c b/lib-src/emacsclient.c index 018e81e4222..cff3cec2a79 100644 --- a/lib-src/emacsclient.c +++ b/lib-src/emacsclient.c @@ -80,9 +80,6 @@ char *w32_getenv (const char *); #include #include -#ifndef WINDOWSNT -# include -#endif #include #include #include @@ -94,10 +91,6 @@ char *w32_getenv (const char *); # pragma GCC diagnostic ignored "-Wformat-truncation=2" #endif -#if !defined O_PATH && !defined WINDOWSNT -# define O_PATH O_SEARCH -#endif - /* Name used to invoke this program. */ static char const *progname; @@ -1135,6 +1128,12 @@ process_grouping (void) #ifdef SOCKETS_IN_FILE_SYSTEM +# include + +# ifndef O_PATH +# define O_PATH O_SEARCH +# endif + /* A local socket address. The union avoids the need to cast. */ union local_sockaddr {