From 30f28d4ac927c846148d77349769729cbd35ab5a Mon Sep 17 00:00:00 2001 From: Jason Plum Date: Tue, 10 Mar 2015 16:48:35 -0400 Subject: [PATCH] Fix case sensitive hostname comparison in tls To do this I've swapped _strnicmp with memcmp. Seemless, but does lock it to the restrictions of that function. Signed-off-by: Jason Plum --- libfreerdp/crypto/tls.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/libfreerdp/crypto/tls.c b/libfreerdp/crypto/tls.c index 4bf69b2..87f3005 100644 --- a/libfreerdp/crypto/tls.c +++ b/libfreerdp/crypto/tls.c @@ -22,6 +22,7 @@ #endif #include +#include #include #include @@ -924,7 +925,7 @@ BOOL tls_match_hostname(char *pattern, int pattern_length, char *hostname) { if (strlen(hostname) == pattern_length) { - if (memcmp((void*) hostname, (void*) pattern, pattern_length) == 0) + if (_strnicmp( hostname, pattern, pattern_length) == 0) return TRUE; } @@ -932,7 +933,7 @@ BOOL tls_match_hostname(char *pattern, int pattern_length, char *hostname) { char* check_hostname = &hostname[strlen(hostname) - pattern_length + 1]; - if (memcmp((void*) check_hostname, (void*) &pattern[1], pattern_length - 1) == 0) + if (_strnicmp( check_hostname, &pattern[1], pattern_length - 1) == 0) { return TRUE; } -- 2.7.4