diff options
author | Ted Gould <ted@gould.cx> | 2012-09-19 15:52:24 -0500 |
---|---|---|
committer | Ted Gould <ted@gould.cx> | 2012-09-19 15:52:24 -0500 |
commit | e6057a3d8492702fb5aeffd286f1b6cde1e04f6b (patch) | |
tree | 5ae9c9e90d8fda96ceeec4f7792849cf9895e9da | |
parent | b7d9fbfb09f346f8d597b00daca797b2812de5ac (diff) | |
download | libpam-freerdp2-e6057a3d8492702fb5aeffd286f1b6cde1e04f6b.tar.gz libpam-freerdp2-e6057a3d8492702fb5aeffd286f1b6cde1e04f6b.tar.bz2 libpam-freerdp2-e6057a3d8492702fb5aeffd286f1b6cde1e04f6b.zip |
Check for spaces in the username, block them
-rw-r--r-- | src/pam-freerdp.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/pam-freerdp.c b/src/pam-freerdp.c index ebc98af..607e215 100644 --- a/src/pam-freerdp.c +++ b/src/pam-freerdp.c @@ -126,6 +126,18 @@ get_item (pam_handle_t * pamh, int type) } } + /* The way that xfreerdp does parsing means that we can't handle + spaces in the username. Let's block them as early as possible. + Though, if the xfreerdp part gets fixed, we want this to disappear + http://launchpad.net/bugs/1053102 + */ + if (type == PAM_RUSER) { + if (strstr(promptval, " ") != NULL) { + free(promptval); + return NULL; + } + } + if (type == PAM_RHOST) { char * subloc = strstr(promptval, "://"); if (subloc != NULL) { |