Howdy, I notice there is an undocumented behaviour in xrdp to change the module for automatic login by setting your RDP domain to be that of the module's section name in the xrdp.ini file. I found this out by accident while trying to implement this functionality myself to help with the provisioning of some Wyse thin clients which support setting the domain as the MAC address.
However, it only applies for automatic logins, and does not change the active module when an interactive module is initiated. To that end, I wrote a patch to fix this behaviour and make xrdp change the active module for interactive logins where the domain is specified. There is a problem where if you specify an unknown domain the connection will simply hang and not display any error. This applies even without my patch. I'd like if there was an option in xrdp to not display the login screen again after an automatic login session has ended, and also to simply drop the RDP connection entirely after an error. I also notice in CVS there was a recent change which fixed a problem I was having with Wyse WinTerm 1125SEs where xrdp would always display a light blue instead of grey in 256 colour mode, and the colour palette was entirely wrong in 16-bit (high) colour mode. Thanks! I'm not on-list (due to the large amount of spam on it) so please CC me in any replies. Cheers, Michael --- xrdp/xrdp/xrdp_login_wnd.c.orig 2009-05-21 22:53:54.027081915 +0930 +++ xrdp/xrdp/xrdp_login_wnd.c 2009-05-21 22:52:15.000000000 +0930 @@ -386,6 +386,7 @@ int fd; int i; int j; + int k = 0; // real number of the items in the list char* p; char* q; char* r; @@ -429,8 +430,20 @@ list_add_item(mod_data->names, (long)g_strdup(q)); list_add_item(mod_data->values, (long)g_strdup(r)); } + list_add_item(b->string_list, (long)g_strdup(name)); list_add_item(b->data_list, (long)mod_data); + + if (g_strncmp(self->session->client_info->domain, p, 255) == 0) { + // "domain" matches this module's name. change the default selected item to this. + // normally this only applies to autologin. now this applies it in non-auto mode + // + // we can't use (i) here as that is the index of the section in the ini, not the index of + // the current item in the combobox. + b->item_index = k; + } + + k++; } } g_file_close(fd); ------------------------------------------------------------------------------ Register Now for Creativity and Technology (CaT), June 3rd, NYC. CaT is a gathering of tech-side developers & brand creativity professionals. Meet the minds behind Google Creative Lab, Visual Complexity, Processing, & iPhoneDevCamp asthey present alongside digital heavyweights like Barbarian Group, R/GA, & Big Spaceship. http://www.creativitycat.com _______________________________________________ xrdp-devel mailing list xrdp-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/xrdp-devel