The attached patch fixes various minor issues:

1) The "des_" type names have been long deprecated in OpenSSL and in
   the latest OpenSSL are finally removed.  Replace them with "DES_".

2) A number of source files are missing their config.h inclusions, which
   breaks builds on platforms that aren't enough like Linux to work without
   any settings from config.h.

3) A few libraries are missing from dependency lines in the generated
   Makefiles.

4) The user is incorrectly presented with an alarming warning if NLA is
   in use and the peer's name in its certificate is not a byte-for-byte
   match of the hostname supplied on the command line.  The byte-for-byte
   comparison technique is itself a bug (the strings really need to be
   converted to the same character set, then compared) but this patch at
   least makes it a little better by doing a case-insensitive comparison
   before alarming the user.

   Important as users will generally supply lowercase names for hosts,
   but Windows systems will often put the host part of their names into
   their self-signed certificates as uppercase.

-- 
 Thor Lancelot Simon                                          t...@panix.com
   But as he knew no bad language, he had called him all the names of common
 objects that he could think of, and had screamed: "You lamp!  You towel!  You
 plate!" and so on.              --Sigmund Freud
diff -u -r freerdp-1.0.1/channels/drdynvc/tsmf/ffmpeg/CMakeLists.txt 
freerdp-1.0.1-patched/channels/drdynvc/tsmf/ffmpeg/CMakeLists.txt
--- freerdp-1.0.1/channels/drdynvc/tsmf/ffmpeg/CMakeLists.txt   2012-02-10 
02:01:42.000000000 +0000
+++ freerdp-1.0.1-patched/channels/drdynvc/tsmf/ffmpeg/CMakeLists.txt   
2012-08-22 19:17:29.000000000 +0000
@@ -22,7 +22,7 @@
 )
 
 include_directories(..)
-include_directories(${FFMPEG_INCLUDE_DIRS})
+include_directories(${FFMPEG_INCLUDE_DIRS} ${AVCODEC_INCLUDE_DIRS})
 
 add_library(tsmf_ffmpeg ${TSMF_FFMPEG_SRCS})
 set_target_properties(tsmf_ffmpeg PROPERTIES PREFIX "")
diff -u -r freerdp-1.0.1/libfreerdp-core/listener.h 
freerdp-1.0.1-patched/libfreerdp-core/listener.h
--- freerdp-1.0.1/libfreerdp-core/listener.h    2012-02-10 02:01:42.000000000 
+0000
+++ freerdp-1.0.1-patched/libfreerdp-core/listener.h    2012-08-22 
17:03:55.000000000 +0000
@@ -22,6 +22,7 @@
 
 typedef struct rdp_listener rdpListener;
 
+#include "config.h"
 #include "rdp.h"
 #include <freerdp/listener.h>
 
diff -u -r freerdp-1.0.1/libfreerdp-core/ntlmssp.c 
freerdp-1.0.1-patched/libfreerdp-core/ntlmssp.c
--- freerdp-1.0.1/libfreerdp-core/ntlmssp.c     2012-02-10 02:01:42.000000000 
+0000
+++ freerdp-1.0.1-patched/libfreerdp-core/ntlmssp.c     2012-08-22 
15:23:43.000000000 +0000
@@ -456,7 +456,7 @@
        char text[14];
        char des_key1[8];
        char des_key2[8];
-       des_key_schedule ks;
+       DES_key_schedule ks;
 
        /* LM("password") = E52CAC67419A9A224A3B108F3FA6CB6D */
 
@@ -530,7 +530,7 @@
        char des_key1[8];
        char des_key2[8];
        char des_key3[8];
-       des_key_schedule ks;
+       DES_key_schedule ks;
 
        /* A LM hash is 16-bytes long, but the LM response uses a LM hash 
null-padded to 21 bytes */
        memset(hash, '\0', 21);
diff -u -r freerdp-1.0.1/libfreerdp-core/tcp.c 
freerdp-1.0.1-patched/libfreerdp-core/tcp.c
--- freerdp-1.0.1/libfreerdp-core/tcp.c 2012-02-10 02:01:42.000000000 +0000
+++ freerdp-1.0.1-patched/libfreerdp-core/tcp.c 2012-08-22 16:59:41.000000000 
+0000
@@ -18,6 +18,8 @@
  * limitations under the License.
  */
 
+#include "config.h"
+
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
diff -u -r freerdp-1.0.1/libfreerdp-core/tls.c 
freerdp-1.0.1-patched/libfreerdp-core/tls.c
--- freerdp-1.0.1/libfreerdp-core/tls.c 2012-02-10 02:01:42.000000000 +0000
+++ freerdp-1.0.1-patched/libfreerdp-core/tls.c 2012-08-22 19:07:48.000000000 
+0000
@@ -266,6 +266,8 @@
                {
                        if (memcmp((void*) hostname, (void*) common_name, 
common_name_length) == 0)
                                hostname_match = true;
+                       else if (strncasecmp(hostname, common_name, 
common_name_length) == 0)
+                               hostname_match = true;
                }
        }
 
@@ -279,6 +281,8 @@
                        {
                                if (memcmp((void*) hostname, (void*) 
alt_names[index], alt_names_lengths[index]) == 0)
                                        hostname_match = true;
+                               else if (strncasecmp(hostname, 
alt_names[index], alt_names_lengths[index]) == 0)
+                                       hostname_match = true;
                        }
                }
        }
------------------------------------------------------------------------------
Got visibility?
Most devs has no idea what their production app looks like.
Find out how fast your code is with AppDynamics Lite.
http://ad.doubleclick.net/clk;262219671;13503038;y?
http://info.appdynamics.com/FreeJavaPerformanceDownload.html
_______________________________________________
Freerdp-devel mailing list
Freerdp-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freerdp-devel

Reply via email to