diff options
Diffstat (limited to 'debian/patches/make-zsh-static-really-static-#993843.patch')
-rw-r--r-- | debian/patches/make-zsh-static-really-static-#993843.patch | 168 |
1 files changed, 0 insertions, 168 deletions
diff --git a/debian/patches/make-zsh-static-really-static-#993843.patch b/debian/patches/make-zsh-static-really-static-#993843.patch deleted file mode 100644 index 60b7b8bc9..000000000 --- a/debian/patches/make-zsh-static-really-static-#993843.patch +++ /dev/null @@ -1,168 +0,0 @@ -Description: Fix dynamic linking with zsh-static and resulting segfaults on libc updates -Origin: https://zsh.org/workers/49422 -Bug-Debian: https://bugs.debian.org/993843 -Bug: https://zsh.org/workers/49392 -Author: Axel Beckert <abe@debian.org> -Author: Jun T <takimoto-j@kba.biglobe.ne.jp> - ---- a/Src/Modules/parameter.c -+++ b/Src/Modules/parameter.c -@@ -2011,6 +2011,9 @@ - /**/ - static Groupset get_all_groups(void) - { -+#ifdef DISABLE_DYNAMIC_NSS -+ return NULL; -+#else - Groupset gs = zhalloc(sizeof(*gs)); - Groupmap gaptr; - gid_t *list, *lptr, egid; -@@ -2063,6 +2066,7 @@ - } - - return gs; -+#endif /* DISABLE_DYNAMIC_NSS */ - } - - /* Standard hash element lookup. */ -@@ -2081,7 +2085,11 @@ - pm->gsu.s = &nullsetscalar_gsu; - - if (!gs) { -+#ifdef DISABLE_DYNAMIC_NSS -+ zerr("parameter 'usergroups' not available: NSS is disabled"); -+#else - zerr("failed to retrieve groups for user: %e", errno); -+#endif - pm->u.str = dupstring(""); - pm->node.flags |= (PM_UNSET|PM_SPECIAL); - return &pm->node; -@@ -2113,7 +2121,11 @@ - Groupmap gaptr; - - if (!gs) { -+#ifdef DISABLE_DYNAMIC_NSS -+ zerr("parameter 'usergroups' not available: NSS is disabled"); -+#else - zerr("failed to retrieve groups for user: %e", errno); -+#endif - return; - } - ---- a/Src/hashnameddir.c -+++ b/Src/hashnameddir.c -@@ -178,7 +178,7 @@ - /* Using NIS or NIS+ didn't add any user directories. This seems - * fishy, so we fall back to using getpwent(). If we don't have - * that, we only use the passwd file. */ --#ifdef HAVE_GETPWENT -+#ifdef USE_GETPWENT - struct passwd *pw; - - setpwent(); -@@ -190,7 +190,7 @@ - - endpwent(); - usepwf = 0; --#endif /* HAVE_GETPWENT */ -+#endif /* USE_GETPWENT */ - } - if (usepwf) { - /* Don't forget the non-NIS matches from the flat passwd file */ -@@ -229,7 +229,7 @@ - adduserdir(pw->pw_name, pw->pw_dir, ND_USERNAME, 1); - - endpwent(); --#endif /* HAVE_GETPWENT */ -+#endif /* USE_GETPWENT */ - #endif - allusersadded = 1; - } ---- a/Src/options.c -+++ b/Src/options.c -@@ -807,7 +807,7 @@ - return -1; - } - --# ifdef HAVE_INITGROUPS -+# ifdef USE_INITGROUPS - /* Set the supplementary groups list. - * - * Note that on macOS, FreeBSD, and possibly some other platforms, ---- a/Src/params.c -+++ b/Src/params.c -@@ -841,9 +841,12 @@ - setsparam("HOST", ztrdup_metafy(hostnam)); - zfree(hostnam, 256); - -- setsparam("LOGNAME", -- ztrdup_metafy((str = getlogin()) && *str ? -- str : cached_username)); -+ setsparam("LOGNAME", ztrdup_metafy( -+#ifndef DISABLE_DYNAMIC_NSS -+ (str = getlogin()) && *str ? str : -+#endif -+ cached_username -+ )); - - #if !defined(HAVE_PUTENV) && !defined(USE_SET_UNSET_ENV) - /* Copy the environment variables we are inheriting to dynamic * -@@ -4414,7 +4417,7 @@ - void - usernamesetfn(UNUSED(Param pm), char *x) - { --#if defined(HAVE_SETUID) && defined(HAVE_GETPWNAM) -+#if defined(HAVE_SETUID) && defined(USE_GETPWNAM) - struct passwd *pswd; - - if (x && (pswd = getpwnam(x)) && (pswd->pw_uid != cached_uid)) { -@@ -4431,7 +4434,7 @@ - cached_uid = pswd->pw_uid; - } - } --#endif /* HAVE_SETUID && HAVE_GETPWNAM */ -+#endif /* HAVE_SETUID && USE_GETPWNAM */ - zsfree(x); - } - ---- a/Src/utils.c -+++ b/Src/utils.c -@@ -1115,7 +1115,7 @@ - char * - get_username(void) - { --#ifdef HAVE_GETPWUID -+#ifdef USE_GETPWUID - struct passwd *pswd; - uid_t current_uid; - -@@ -1128,9 +1128,9 @@ - else - cached_username = ztrdup(""); - } --#else /* !HAVE_GETPWUID */ -+#else /* !USE_GETPWUID */ - cached_uid = getuid(); --#endif /* !HAVE_GETPWUID */ -+#endif /* !USE_GETPWUID */ - return cached_username; - } - -@@ -1306,7 +1306,7 @@ - return str; - } - --#ifdef HAVE_GETPWNAM -+#ifdef USE_GETPWNAM - { - /* Retrieve an entry from the password table/database for this user. */ - struct passwd *pw; -@@ -1322,7 +1322,7 @@ - return dupstring(pw->pw_dir); - } - } --#endif /* HAVE_GETPWNAM */ -+#endif /* USE_GETPWNAM */ - - /* There are no more possible sources of directory names, so give up. */ - return NULL; |