GUACAMOLE-446: Add settings for drive name.
diff --git a/src/protocols/rdp/rdp_settings.c b/src/protocols/rdp/rdp_settings.c
index 62fa1e2..258ca62 100644
--- a/src/protocols/rdp/rdp_settings.c
+++ b/src/protocols/rdp/rdp_settings.c
@@ -54,6 +54,7 @@
"enable-printing",
"printer-name",
"enable-drive",
+ "drive-name",
"drive-path",
"create-drive-path",
"console",
@@ -198,6 +199,12 @@
* otherwise.
*/
IDX_ENABLE_DRIVE,
+
+ /**
+ * The name of the virtual driver that will be passed through to the
+ * RDP connection.
+ */
+ IDX_DRIVE_NAME,
/**
* The local system path which will be used to persist the
@@ -809,6 +816,11 @@
settings->drive_enabled =
guac_user_parse_args_boolean(user, GUAC_RDP_CLIENT_ARGS, argv,
IDX_ENABLE_DRIVE, 0);
+
+ /* Name of the drive being passed through */
+ settings->drive_name =
+ guac_user_parse_args_string(user, GUAC_RDP_CLIENT_ARGS, argv,
+ IDX_DRIVE_NAME, 0);
settings->drive_path =
guac_user_parse_args_string(user, GUAC_RDP_CLIENT_ARGS, argv,
@@ -990,6 +1002,7 @@
/* Free settings strings */
free(settings->client_name);
free(settings->domain);
+ free(settings->drive_name);
free(settings->drive_path);
free(settings->hostname);
free(settings->initial_program);
diff --git a/src/protocols/rdp/rdp_settings.h b/src/protocols/rdp/rdp_settings.h
index 5caffe9..d521a87 100644
--- a/src/protocols/rdp/rdp_settings.h
+++ b/src/protocols/rdp/rdp_settings.h
@@ -186,6 +186,11 @@
* Whether the virtual drive is enabled.
*/
int drive_enabled;
+
+ /**
+ * The name of the virtual drive to pass through to the RDP connection.
+ */
+ char* drive_name;
/**
* The local system path which will be used to persist the