X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Flogin%2Fpam-module.c;fp=src%2Flogin%2Fpam-module.c;h=ea606b7fc9447a89b6b365f49704144489df6b5a;hb=9130f2128b64de19a3b7d6db7e0d371adfd296c2;hp=e76fef8001586cc02d7673b08d4ae752be3f2011;hpb=06150d9039296a6c37aa300463e9bd0c7f296542;p=elogind.git diff --git a/src/login/pam-module.c b/src/login/pam-module.c index e76fef800..ea606b7fc 100644 --- a/src/login/pam-module.c +++ b/src/login/pam-module.c @@ -169,22 +169,28 @@ static int export_legacy_dbus_address( uid_t uid, const char *runtime) { -#ifdef ENABLE_KDBUS _cleanup_free_ char *s = NULL; int r; +#ifdef ENABLE_KDBUS if (asprintf(&s, KERNEL_USER_BUS_FMT ";" UNIX_USER_BUS_FMT, (unsigned long) uid, runtime) < 0) { pam_syslog(handle, LOG_ERR, "Failed to set bus variable."); return PAM_BUF_ERR; } +#else + if (asprintf(&s, UNIX_USER_BUS_FMT, runtime) < 0) { + pam_syslog(handle, LOG_ERR, "Failed to set bus variable."); + return PAM_BUF_ERR; + } +#endif r = pam_misc_setenv(handle, "DBUS_SESSION_BUS_ADDRESS", s, 0); if (r != PAM_SUCCESS) { pam_syslog(handle, LOG_ERR, "Failed to set bus variable."); return r; } -#endif + return PAM_SUCCESS; }