libfreerdp-core: added --no-auth option to skip authentication entirely
authorMarc-André Moreau <marcandre.moreau@gmail.com>
Thu, 18 Aug 2011 17:07:52 +0000 (13:07 -0400)
committerMarc-André Moreau <marcandre.moreau@gmail.com>
Thu, 18 Aug 2011 17:07:52 +0000 (13:07 -0400)
include/freerdp/settings.h
libfreerdp-core/settings.c
libfreerdp-core/transport.c
libfreerdp-utils/args.c

index 9ea1896..926f6a9 100644 (file)
@@ -173,6 +173,7 @@ struct rdp_settings
        uint32 selected_protocol;
        uint32 encryption_method;
        uint32 encryption_level;
+       boolean authentication;
 
        rdpBlob server_random;
        rdpBlob server_certificate;
index 16f26b6..8c6b05e 100644 (file)
@@ -64,6 +64,8 @@ rdpSettings* settings_new()
                settings->encryption_method = ENCRYPTION_METHOD_NONE;
                settings->encryption_level = ENCRYPTION_LEVEL_NONE;
 
+               settings->authentication = True;
+
                /*
                settings->order_support[NEG_DSTBLT_INDEX] = True;
                settings->order_support[NEG_PATBLT_INDEX] = True;
index 3631a82..6688f3e 100644 (file)
@@ -106,6 +106,9 @@ boolean transport_connect_nla(rdpTransport* transport)
 
        /* Network Level Authentication */
 
+       if (transport->settings->authentication != True)
+               return True;
+
        if (transport->credssp == NULL)
                transport->credssp = credssp_new(transport);
 
index 4dfaf11..925a3da 100644 (file)
@@ -188,6 +188,10 @@ int freerdp_parse_args(rdpSettings* settings, int argc, char** argv,
                {
                        settings->offscreen_bitmap_cache = 0;
                }
+               else if (strcmp("--no-auth", argv[index]) == 0)
+               {
+                       settings->authentication = False;
+               }
                else if (strcmp("--no-fastpath", argv[index]) == 0)
                {
                        settings->fastpath_input = False;