On 07/15/2013 04:06 PM, Tim Rühsen wrote: > Am Montag, 15. Juli 2013, 13:07:08 schrieb Tom Merriam: >> On 07/15/2013 11:19 AM, Tim Rühsen wrote: >>> Am Montag, 15. Juli 2013, 09:50:27 schrieb Tom Merriam: >>>> On 07/13/2013 08:00 AM, Tim Rühsen wrote: >>>>> Am Mittwoch, 10. Juli 2013 schrieb Hrvoje Niksic: >>>>>> The NTLM code kindly donated by Daniel has always required OpenSSL. >>>>>> configure.ac says: >>>>>> >>>>>> Updating the code to also support GNU/TLS appears straightforward. >>>>> Here is a (quick) patch for testing using libnettle (which GnuTLS relies >>>>> on >>>>> anyway). >>>>> I can't test it myself since lack of an NTLM capable server. >>>>> >>>>> Please could anyone test it and review it, especially the configure.ac >>>>> stuff which is not one of my strengths. >>>>> Do we need to mention libnettle somewhere in the docs ? >>>>> >>>>> Regards, Tim >>>> I applied this patch to 1.13.4 and built with configure & make but it >>>> didn't work. I still get the same 'unknown authentication scheme' error. >>>> >>>> Does wget need to be built differently for this to work? >>> Thanks, Tom. >>> >>> src/config.h should contain the lines >>> >>> #define ENABLE_NTLM 1 >>> >>> and >>> >>> #define WITH_NETTLE 1 >>> >>> Maybe 1.13.4 ./configure needs explicitely --with-ssl=gnutls --with-ntlm. >>> >>> src/wget --version printout: >>> GNU Wget 1.14.61-5862-dirty built on linux-gnu. >>> >>> +digest +https +ipv6 +iri +large-file +nls +ntlm +opie +ssl/gnutls >>> ... >>> >>> should look similar to the above line. Important is +ntlm, +ssl/gnutls and >>> I guess +digest. >>> >>> Regards, Tim >> My mistake, I was building 1.14 above >> >> When built with configure & make (with that patch): >> >> GNU Wget 1.14 built on linux-gnu. >> >> +digest +https +ipv6 -iri +large-file +nls -ntlm +opie +ssl/gnutls >> >> Wgetrc: >> /usr/local/etc/wgetrc (system) >> Locale: /usr/local/share/locale >> Compile: gcc -DHAVE_CONFIG_H -DSYSTEM_WGETRC="/usr/local/etc/wgetrc" >> -DLOCALEDIR="/usr/local/share/locale" -I. -I../lib -I../lib -O2 >> -Wall >> Link: gcc -O2 -Wall -lgnutls -lgcrypt -lgpg-error -lz -lz -lrt ftp-opie.o >> gnutls.o ../lib/libgnu.a >> >> I downloaded 1.13.4 and applied the patch and built with configure >> --with-ssl=gnutls --enable-ntlm && make >> (configure doesn't accept --with-ntlm) >> >> I don't see WITH_NETTLE in config.h and the build fails with: >> >> configure: error: NTLM authorization requested and OpenSSL not found; >> aborting >> >> Am I applying the patch incorrectly or against the wrong version? > > Hi Tom, > > Wget 1.14 is perfect. > >> I don't see WITH_NETTLE in config.h and the build fails with: >> configure: error: NTLM authorization requested and OpenSSL not found; >> aborting > Sorry, I forgot to say: after patching, you should first call > autoreconf > to create a new version of configure. > After that you do a ./configure. > > > If it still does not work: > > Either this comes because you don't have libnettle-dev installed (ls -la > /usr/include/nettle should show up with a bunch of header files). > > Or you did not apply the first part of the patch (configure.ac). > > > Regards, Tim Okay, I installed nettle-dev and ran autoreconf. Now the build (1.14) fails with
gcc -DHAVE_CONFIG_H -DSYSTEM_WGETRC=\"/usr/local/etc/wgetrc\" -DLOCALEDIR=\"/usr/local/share/locale\" -I. -I../lib -I../lib -O2 -Wall -MT http-ntlm.o -MD -MP -MF .deps/http-ntlm.Tpo -c -o http-ntlm.o http-ntlm.c mv -f .deps/retr.Tpo .deps/retr.Po echo '#include "wget.h"' > css_.c cat css.c >> css_.c cat: css.c: No such file or directory make[3]: *** [css_.c] Error 1 make[3]: *** Waiting for unfinished jobs.... mv -f .deps/ftp-opie.Tpo .deps/ftp-opie.Po mv -f .deps/http-ntlm.Tpo .deps/http-ntlm.Po gnutls.c: In function 'ssl_connect_wget': gnutls.c:394:38: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] mv -f .deps/warc.Tpo .deps/warc.Po mv -f .deps/gnutls.Tpo .deps/gnutls.Po mv -f .deps/url.Tpo .deps/url.Po mv -f .deps/http.Tpo .deps/http.Po mv -f .deps/utils.Tpo .deps/utils.Po make[3]: Leaving directory `/home/tmerriam/src/wget-1.14/src' make[2]: *** [all] Error 2 make[2]: Leaving directory `/home/tmerriam/src/wget-1.14/src' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/home/tmerriam/src/wget-1.14' make: *** [all] Error 2 It looks like 'css.c' should be 'css.l' somewhere?