aboutsummaryrefslogtreecommitdiff
path: root/src/pam-freerdp.c
diff options
context:
space:
mode:
authorTed Gould <ted@gould.cx>2012-08-28 08:11:57 +0000
committerTarmac <>2012-08-28 08:11:57 +0000
commit733fde7fe2415f983ed8f2045dffda16d30d1c14 (patch)
tree4fed2e6f3eab07c70c79ceb82b5f33d93130ca2c /src/pam-freerdp.c
parente3a8eb3f68140e51e972fde3e025e6d26157d12f (diff)
parent8a85c086263fda4baea7128592fefedb61f83aee (diff)
downloadlibpam-x2go-733fde7fe2415f983ed8f2045dffda16d30d1c14.tar.gz
libpam-x2go-733fde7fe2415f983ed8f2045dffda16d30d1c14.tar.bz2
libpam-x2go-733fde7fe2415f983ed8f2045dffda16d30d1c14.zip
Handle URLs as the remote host value. Approved by Albert Astals Cid, jenkins.
Diffstat (limited to 'src/pam-freerdp.c')
-rw-r--r--src/pam-freerdp.c17
1 files changed, 17 insertions, 0 deletions
diff --git a/src/pam-freerdp.c b/src/pam-freerdp.c
index 5295098..d1a6578 100644
--- a/src/pam-freerdp.c
+++ b/src/pam-freerdp.c
@@ -86,6 +86,23 @@ get_item (pam_handle_t * pamh, int type)
char * retval = responses->resp;
free(responses);
+
+ if (type == PAM_RHOST) {
+ char * subloc = strstr(retval, "://");
+ if (subloc != NULL) {
+ char * original = retval;
+ char * newish = subloc + strlen("://");
+ char * endslash = strstr(newish, "/");
+
+ if (endslash != NULL) {
+ endslash[0] = '\0';
+ }
+
+ retval = strdup(newish);
+ free(original);
+ }
+ }
+
return retval;
}