diff -u cntlm-0.91~rc6/debian/changelog cntlm-0.91~rc6/debian/changelog --- cntlm-0.91~rc6/debian/changelog +++ cntlm-0.91~rc6/debian/changelog @@ -1,3 +1,10 @@ +cntlm (0.91~rc6-0ubuntu2.12.04.1) precise-proposed; urgency=low + + * Cherry-pick r273 from 0.92 to fix a lockup with git clones over HTTPS. + (LP: #973288). Thanks Manuel Siggen. + + -- Stefano Rivera Wed, 02 May 2012 13:01:23 +0200 + cntlm (0.91~rc6-0ubuntu2) natty; urgency=low * When a network interface goes up, before starting cntlm check whether only in patch2: unchanged: --- cntlm-0.91~rc6.orig/ntlm.c +++ cntlm-0.91~rc6/ntlm.c @@ -19,6 +19,7 @@ * */ +#include #include #include #include @@ -78,7 +79,7 @@ #ifdef PRId64 printf("NTLMv2:\n\t Nonce: %s\n\tTimestamp: %"PRId64"\n", tmp, tw); #else - printf("NTLMv2:\n\t Nonce: %s\n\tTimestamp: %lld\n", tmp, tw); + printf("NTLMv2:\n\t Nonce: %s\n\tTimestamp: %ld\n", tmp, tw); #endif free(tmp); } only in patch2: unchanged: --- cntlm-0.91~rc6.orig/utils.c +++ cntlm-0.91~rc6/utils.c @@ -140,7 +140,7 @@ t = list; while (t) { - printf("List data: %lu => 0x%08x\n", (unsigned long int)t->key, (unsigned int)t->aux); + printf("List data: %lu => 0x%8p\n", (unsigned long int)t->key, t->aux); t = t->next; } } only in patch2: unchanged: --- cntlm-0.91~rc6.orig/config.c +++ cntlm-0.91~rc6/config.c @@ -28,6 +28,7 @@ #include "config.h" #include "utils.h" +/* static const char *globals[] = { "Allow", "Deny", @@ -37,6 +38,7 @@ "SOCKS5User", "NTLMToBasic", "Tunnel" }; +*/ config_t config_open(const char *fname) { config_t rc; only in patch2: unchanged: --- cntlm-0.91~rc6.orig/http.c +++ cntlm-0.91~rc6/http.c @@ -518,6 +518,9 @@ } else length = (tmp == NULL || nobody ? 0 : atol(tmp)); + if (current == request && length == -1) + length = 0; + return length; } only in patch2: unchanged: --- cntlm-0.91~rc6.orig/forward.c +++ cntlm-0.91~rc6/forward.c @@ -127,7 +127,7 @@ strcpy(buf, "NTLM "); len = ntlm_request(&tmp, credentials); if (len) { - to_base64(MEM(buf, unsigned char, 5), MEM(tmp, unsigned char, 0), len, BUFSIZE-5); + to_base64(MEM(buf, uint8_t, 5), MEM(tmp, uint8_t, 0), len, BUFSIZE-5); free(tmp); } @@ -215,7 +215,7 @@ len = ntlm_response(&tmp, challenge, len, credentials); if (len > 0) { strcpy(buf, "NTLM "); - to_base64(MEM(buf, unsigned char, 5), MEM(tmp, unsigned char, 0), len, BUFSIZE-5); + to_base64(MEM(buf, uint8_t, 5), MEM(tmp, uint8_t, 0), len, BUFSIZE-5); request->headers = hlist_mod(request->headers, "Proxy-Authorization", buf, 1); free(tmp); } else { only in patch2: unchanged: --- cntlm-0.91~rc6.orig/main.c +++ cntlm-0.91~rc6/main.c @@ -1437,7 +1437,7 @@ * after the first kill) and a "forced" one (user insists and * killed us twice). */ - while (quit < 1 || tc != tj) { + while (quit == 0 || (tc != tj && quit < 2)) { struct thread_arg_s *data; struct sockaddr_in caddr; struct timeval tv; only in patch2: unchanged: --- cntlm-0.91~rc6.orig/direct.c +++ cntlm-0.91~rc6/direct.c @@ -64,7 +64,7 @@ strcpy(buf, "NTLM "); len = ntlm_request(&tmp, creds); if (len) { - to_base64(MEM(buf, unsigned char, 5), MEM(tmp, unsigned char, 0), len, BUFSIZE-5); + to_base64(MEM(buf, uint8_t, 5), MEM(tmp, uint8_t, 0), len, BUFSIZE-5); free(tmp); } @@ -117,7 +117,7 @@ len = ntlm_response(&tmp, challenge, len, creds); if (len > 0) { strcpy(buf, "NTLM "); - to_base64(MEM(buf, unsigned char, 5), MEM(tmp, unsigned char, 0), len, BUFSIZE-5); + to_base64(MEM(buf, uint8_t, 5), MEM(tmp, uint8_t, 0), len, BUFSIZE-5); request->headers = hlist_mod(request->headers, "Authorization", buf, 1); free(tmp); } else {