]> git.ipfire.org Git - thirdparty/squid.git/commitdiff
negotiate_sspi_auth: Portability fixes for MinGW
authorAmos Jeffries <squid3@treenet.co.nz>
Sun, 13 Jul 2014 08:32:17 +0000 (01:32 -0700)
committerAmos Jeffries <squid3@treenet.co.nz>
Sun, 13 Jul 2014 08:32:17 +0000 (01:32 -0700)
helpers/negotiate_auth/SSPI/Makefile.am
helpers/negotiate_auth/SSPI/negotiate_sspi_auth.cc

index d91a1660103e9eceb620e4615e9f7adcf3a392a5..8804f107d4ba8e648d112b358c196a68721eb715 100644 (file)
@@ -6,6 +6,7 @@ negotiate_sspi_auth_SOURCES = negotiate_sspi_auth.cc
 
 LDADD  = \
        -L$(top_builddir)/lib -lsspwin32 \
+       $(top_builddir)/lib/libmiscencoding.la \
        $(COMPAT_LIB) \
        -ladvapi32 \
        $(XTRA_LIBS)
index 035668052393a2f76801e1c1632e2c97f778fb10..72e3396310582a227a09bdef83c56bda00894ffa 100644 (file)
  *
  */
 #include "squid.h"
+#include "base64.h"
 #include "helpers/defines.h"
-#include "libntlmauth/support_bits.cci"
+#include "ntlmauth/ntlmauth.h"
+#include "ntlmauth/support_bits.cci"
 #include "sspwin32.h"
 #include "util.h"
 
@@ -135,7 +137,7 @@ try_again:
     if (fgets(buf, HELPER_INPUT_BUFFER, stdin))
         return 0;
 
-    c = memchr(buf, '\n', HELPER_INPUT_BUFFER);                /* safer against overrun than strchr */
+    c = static_cast<char*>(memchr(buf, '\n', HELPER_INPUT_BUFFER));
     if (c) {
         if (oversized) {
             SEND("BH illegal request received");
@@ -153,13 +155,13 @@ try_again:
         decodedLen = base64_decode(decoded, sizeof(decoded), buf+3);
         strncpy(helper_command, buf, 2);
         debug("Got '%s' from Squid with data:\n", helper_command);
-        hex_dump(decoded, decodedLen);
+        hex_dump(reinterpret_cast<unsigned char*>(decoded), decodedLen);
     } else
         debug("Got '%s' from Squid\n", buf);
 
     if (memcmp(buf, "YR ", 3) == 0) {  /* refresh-request */
         /* figure out what we got */
-        decoded = base64_decode(buf + 3);
+        decodedLen = base64_decode(decoded, sizeof(decoded), buf + 3);
         if ((size_t)decodedLen < sizeof(ntlmhdr)) {            /* decoding failure, return error */
             SEND("NA * Packet format error, couldn't base64-decode");
             return 1;
@@ -176,7 +178,7 @@ try_again:
                     decodedLen = base64_decode(decoded, sizeof(decoded), c);
                     debug("sending 'AF' %s to squid with data:\n", cred);
                     if (c != NULL)
-                        hex_dump(decoded, decodedLen);
+                        hex_dump(reinterpret_cast<unsigned char*>(decoded), decodedLen);
                     else
                         fprintf(stderr, "No data available.\n");
                     printf("AF %s %s\n", c, cred);
@@ -186,7 +188,7 @@ try_again:
                 if (Negotiate_packet_debug_enabled) {
                     decodedLen = base64_decode(decoded, sizeof(decoded), c);
                     debug("sending 'TT' to squid with data:\n");
-                    hex_dump(decoded, decodedLen);
+                    hex_dump(reinterpret_cast<unsigned char*>(decoded), decodedLen);
                     printf("TT %s\n", c);
                 } else {
                     SEND2("TT %s", c);
@@ -236,7 +238,7 @@ try_again:
                 decodedLen = base64_decode(decoded, sizeof(decoded), c);
                 debug("sending 'AF' %s to squid with data:\n", cred);
                 if (c != NULL)
-                    hex_dump(decoded, decodedLen);
+                    hex_dump(reinterpret_cast<unsigned char*>(decoded), decodedLen);
                 else
                     fprintf(stderr, "No data available.\n");
                 printf("AF %s %s\n", c, cred);
@@ -248,7 +250,7 @@ try_again:
             if (Negotiate_packet_debug_enabled) {
                 decodedLen = base64_decode(decoded, sizeof(decoded), c);
                 debug("sending 'TT' to squid with data:\n");
-                hex_dump(decoded, decodedLen);
+                hex_dump(reinterpret_cast<unsigned char*>(decoded), decodedLen);
                 printf("TT %s\n", c);
             } else
                 SEND2("TT %s", c);