94ef2ca6a9
OBS-URL: https://build.opensuse.org/request/show/849367 OBS-URL: https://build.opensuse.org/package/show/Linux-PAM/pam?expand=0&rev=226
27 lines
965 B
Diff
27 lines
965 B
Diff
Index: Linux-PAM-1.4.0/modules/pam_xauth/pam_xauth.c
|
|
===================================================================
|
|
--- Linux-PAM-1.4.0.orig/modules/pam_xauth/pam_xauth.c
|
|
+++ Linux-PAM-1.4.0/modules/pam_xauth/pam_xauth.c
|
|
@@ -701,8 +701,9 @@ pam_sm_open_session (pam_handle_t *pamh,
|
|
pam_syslog(pamh, LOG_ERR,
|
|
"can't set environment variable '%s'",
|
|
xauthority);
|
|
- putenv (xauthority); /* The environment owns this string now. */
|
|
- /* Don't free environment variables nor set them to NULL. */
|
|
+ if (putenv (xauthority) == 0) /* The environment owns this string now. */
|
|
+ xauthority = NULL;
|
|
+ /* Don't free environment variables. */
|
|
|
|
/* set $DISPLAY in pam handle to make su - work */
|
|
{
|
|
@@ -765,7 +766,8 @@ cleanup:
|
|
unsetenv (XAUTHENV);
|
|
free(cookiefile);
|
|
free(cookie);
|
|
- free(xauthority);
|
|
+ if (xauthority != NULL) /* If it hasn't been successfully passed to putenv() ... */
|
|
+ free(xauthority);
|
|
return retval;
|
|
}
|
|
|