diff options
author | Robby Workman <rworkman@slackbuilds.org> | 2014-02-01 10:20:13 -0600 |
---|---|---|
committer | Robby Workman <rworkman@slackbuilds.org> | 2014-02-01 10:20:13 -0600 |
commit | 351e1c44668c269c9da77c73ceeab9a10cbbfad4 (patch) | |
tree | 69162c0c0d68a81d45fc02658c4850323b255faa | |
parent | 40ec3c51deeab6d1c78c7acff6fad6d32b80b161 (diff) | |
download | slackbuilds-351e1c44668c269c9da77c73ceeab9a10cbbfad4.tar.gz slackbuilds-351e1c44668c269c9da77c73ceeab9a10cbbfad4.tar.xz |
system/gdm: Remove the (unneeded|faulty) crypt patch
This was originally added while the 14.0 tree was maintained,
and the intent was to allow users on -current (to be 14.1) to
use gdm without being a security risk. As it turned out, the
patch was a bit faulty, and while it helped one issue, it caused
another, so we'll just remove it now. If you're running 14.1
at this point, you should use the 14.1 repo, which has a fixed
patch in the gdm build.
Thanks again to mancha for all of his help with this.
Signed-off-by: Robby Workman <rworkman@slackbuilds.org>
-rw-r--r-- | system/gdm/gdm.SlackBuild | 5 | ||||
-rw-r--r-- | system/gdm/patches/gdm-2.20.11-crypt.diff | 134 |
2 files changed, 1 insertions, 138 deletions
diff --git a/system/gdm/gdm.SlackBuild b/system/gdm/gdm.SlackBuild index 7699068bd7..050ccdbd12 100644 --- a/system/gdm/gdm.SlackBuild +++ b/system/gdm/gdm.SlackBuild @@ -11,7 +11,7 @@ PRGNAM=gdm VERSION=${VERSION:-2.20.11} -BUILD=${BUILD:-5} +BUILD=${BUILD:-6} TAG=${TAG:-_SBo} if [ -z "$ARCH" ]; then @@ -60,9 +60,6 @@ find . \ # Don't automatically start ssh-agent -- this is the user's job patch -p1 < $CWD/patches/do_not_start_ssh-agent.diff -# Fix crypt() usage with glibc-2.17 and later -patch -p1 < $CWD/patches/gdm-2.20.11-crypt.diff - CFLAGS="$SLKCFLAGS" \ CXXFLAGS="$SLKCFLAGS" \ ./configure \ diff --git a/system/gdm/patches/gdm-2.20.11-crypt.diff b/system/gdm/patches/gdm-2.20.11-crypt.diff deleted file mode 100644 index d72bd80c46..0000000000 --- a/system/gdm/patches/gdm-2.20.11-crypt.diff +++ /dev/null @@ -1,134 +0,0 @@ -Correctly handle crypt() NULL returns when built against glibc 2.17+ - -Author: mancha - -======= - ---- gdm-2.20.11/daemon/verify-crypt.c.orig 2013-06-23 -+++ gdm-2.20.11/daemon/verify-crypt.c 2013-06-23 -@@ -104,7 +104,7 @@ gdm_verify_user (GdmDisplay *d, - const char *username, - gboolean allow_retry) - { -- gchar *login, *passwd, *ppasswd; -+ gchar *login, *passwd, *ppasswd, *cpasswd; - struct passwd *pwent; - #if defined (HAVE_PASSWDEXPIRED) && defined (HAVE_CHPASS) \ - || defined (HAVE_LOGINRESTRICTIONS) -@@ -190,8 +190,10 @@ gdm_verify_user (GdmDisplay *d, - } - - /* Check whether password is valid */ -- if (ppasswd == NULL || (ppasswd[0] != '\0' && -- strcmp (crypt (passwd, ppasswd), ppasswd) != 0)) { -+ cpasswd = ppasswd ? crypt (passwd, ppasswd) : NULL; -+ if (ppasswd == NULL || cpasswd == NULL || -+ (ppasswd[0] != '\0' && -+ strcmp (cpasswd, ppasswd) != 0)) { - gdm_sleep_no_signal (gdm_daemon_config_get_value_int (GDM_KEY_RETRY_DELAY)); - gdm_debug ("Couldn't authenticate user"); - -@@ -200,6 +202,7 @@ gdm_verify_user (GdmDisplay *d, - g_free (login); - g_free (passwd); - g_free (ppasswd); -+ g_free (cpasswd); - return NULL; - } - -@@ -217,6 +220,7 @@ gdm_verify_user (GdmDisplay *d, - g_free (login); - g_free (passwd); - g_free (ppasswd); -+ g_free (cpasswd); - return NULL; - } - -@@ -233,6 +237,7 @@ gdm_verify_user (GdmDisplay *d, - g_free (login); - g_free (passwd); - g_free (ppasswd); -+ g_free (cpasswd); - if (message != NULL) - free (message); - return NULL; -@@ -259,6 +264,7 @@ gdm_verify_user (GdmDisplay *d, - g_free (login); - g_free (passwd); - g_free (ppasswd); -+ g_free (cpasswd); - return NULL; - } - -@@ -266,6 +272,7 @@ gdm_verify_user (GdmDisplay *d, - - g_free (passwd); - g_free (ppasswd); -+ g_free (cpasswd); - - if ( ! gdm_slave_check_user_wants_to_log_in (login)) { - g_free (login); ---- gdm-2.20.11/daemon/verify-shadow.c.orig 2013-06-23 -+++ gdm-2.20.11/daemon/verify-shadow.c 2013-06-23 -@@ -105,7 +105,7 @@ gdm_verify_user (GdmDisplay *d, - const char *username, - gboolean allow_retry) - { -- gchar *login, *passwd, *ppasswd; -+ gchar *login, *passwd, *ppasswd, *cpasswd; - struct passwd *pwent; - struct spwd *sp; - #if defined (HAVE_PASSWDEXPIRED) && defined (HAVE_CHPASS) \ -@@ -211,8 +211,10 @@ gdm_verify_user (GdmDisplay *d, - } - - /* Check whether password is valid */ -- if (ppasswd == NULL || (ppasswd[0] != '\0' && -- strcmp (crypt (passwd, ppasswd), ppasswd) != 0)) { -+ cpasswd = ppasswd ? crypt (passwd, ppasswd) : NULL; -+ if (ppasswd == NULL || cpasswd == NULL || -+ (ppasswd[0] != '\0' && -+ strcmp (cpasswd, ppasswd) != 0)) { - gdm_sleep_no_signal (gdm_daemon_config_get_value_int (GDM_KEY_RETRY_DELAY)); - gdm_debug ("Couldn't authenticate user"); - -@@ -221,6 +223,7 @@ gdm_verify_user (GdmDisplay *d, - g_free (login); - g_free (passwd); - g_free (ppasswd); -+ g_free (cpasswd); - return NULL; - } - -@@ -238,6 +241,7 @@ gdm_verify_user (GdmDisplay *d, - g_free (login); - g_free (passwd); - g_free (ppasswd); -+ g_free (cpasswd); - return NULL; - } - -@@ -254,6 +258,7 @@ gdm_verify_user (GdmDisplay *d, - g_free (login); - g_free (passwd); - g_free (ppasswd); -+ g_free (cpasswd); - if (message != NULL) - free (message); - return NULL; -@@ -280,6 +285,7 @@ gdm_verify_user (GdmDisplay *d, - g_free (login); - g_free (passwd); - g_free (ppasswd); -+ g_free (cpasswd); - return NULL; - } - -@@ -287,6 +293,7 @@ gdm_verify_user (GdmDisplay *d, - - g_free (passwd); - g_free (ppasswd); -+ g_free (cpasswd); - - if ( ! gdm_slave_check_user_wants_to_log_in (login)) { - g_free (login); |