pam_logind: skip leading /dev/ from PAM_TTY field before passing it on
Apparently, PAM documents that the PAM_TTY should come with a /dev prefix, but we don't expect it so far, except that Wayland ends up setting it after all, the way the docs suggest. Hence, let's simply drop the /dev prefix if it is there. Fixes: #6516
This commit is contained in:
@@ -46,6 +46,7 @@
|
||||
#include "strv.h"
|
||||
#include "terminal-util.h"
|
||||
#include "util.h"
|
||||
#include "path-util.h"
|
||||
|
||||
static int parse_argv(
|
||||
pam_handle_t *handle,
|
||||
@@ -335,7 +336,9 @@ _public_ PAM_EXTERN int pam_sm_open_session(
|
||||
type ="tty";
|
||||
class = "user";
|
||||
tty = NULL;
|
||||
}
|
||||
} else
|
||||
/* Chop off leading /dev prefix that some clients specify, but others do not. */
|
||||
tty = skip_dev_prefix(tty);
|
||||
|
||||
/* If this fails vtnr will be 0, that's intended */
|
||||
if (!isempty(cvtnr))
|
||||
|
||||
Reference in New Issue
Block a user