--- licence.c.org	2003-10-29 15:13:59.000000000 +0100
+++ licence.c	2003-11-10 16:46:24.000000000 +0100
@@ -28,6 +28,7 @@
 
 extern char g_username[16];
 extern char hostname[16];
+extern BOOL g_built_in_licence;
 
 static uint8 g_licence_key[16];
 static uint8 g_licence_sign_key[16];
@@ -118,7 +119,7 @@
 
 	out_uint32_le(s, 1);
 	out_uint16(s, 0);
-	out_uint16_le(s, 0xff01);
+	out_uint16_le(s, (g_built_in_licence ? 0x0301 : 0xff01) );
 
 	out_uint8p(s, client_random, SEC_RANDOM_SIZE);
 	out_uint16(s, 0);
--- rdesktop.c.org	2003-10-29 15:13:59.000000000 +0100
+++ rdesktop.c	2003-11-10 16:40:37.000000000 +0100
@@ -66,6 +66,7 @@
 BOOL g_hide_decorations = False;
 BOOL g_use_rdp5 = True;
 BOOL g_console_session = False;
+BOOL g_built_in_licence = False;
 extern BOOL g_owncolmap;
 
 #ifdef WITH_RDPSND
@@ -115,6 +116,7 @@
 	fprintf(stderr, "   -0: attach to console\n");
 	fprintf(stderr, "   -4: use RDP version 4\n");
 	fprintf(stderr, "   -5: use RDP version 5 (default)\n");
+	fprintf(stderr, "   -l: use built-in licence\n");
 }
 
 static BOOL
@@ -229,7 +231,7 @@
 #define VNCOPT
 #endif
 
-	while ((c = getopt(argc, argv, VNCOPT "u:d:s:c:p:n:k:g:fbeEmCDKS:T:a:r:045h?")) != -1)
+	while ((c = getopt(argc, argv, VNCOPT "u:d:s:c:p:n:k:g:fbeEmCDKS:T:a:r:045lh?")) != -1)
 	{
 		switch (c)
 		{
@@ -397,7 +399,9 @@
 			case '5':
 				g_use_rdp5 = True;
 				break;
-
+			case 'l':
+				g_built_in_licence = True;
+				break;
 			case 'h':
 			case '?':
 			default:

