"Ray Satiro" <[email protected]> wrote:
I'm pretty sure I wrote that code. I would not edit it out, if you are seeing it there is likely a problem with your build.
Probably, or with gnulib on MingW.
You say *almost* any URL? Can you give an example? What happens if you try to get google's page: wget http://www.google.com wget --ca-certificate=c:\wget\root\bin\cacert.pem https://encrypted.google.com
I've built Wget (for many years) with all protocols enabled. And I already have a 'ca-certificate' in my wgetrc-file. https works fine:
wget -d https://encrypted.google.com DEBUG output created by Wget 1.15.00 (MingW) on Windows_NT. ... Initiating SSL handshake. seconds 900.00, Winsock error: 0 << !! this annoying stuff seems to be caused by gnulib too. Handshake successful; connected socket 3 to SSL handle 0x00e336e8 certificate: subject: /C=US/ST=California/L=Mountain View/O=Google Inc/CN=*.google.com issuer: /C=US/O=Google Inc/CN=Google Internet Authority G2 X509 certificate successfully verified and matches host encrypted.google.com ------------- It's only the problem with ioctl(). I think I figured out why. Somehow I built gnulib w/o 'WINDOWS_SOCKETS=1'. So that seems to be sorted now. FYI. The errno set by the failing ioctl() was off-course ENOSYS since it didn't handle sockets.
Well, there probably should be an error. The error you are seeing has come up before because when gnulib is built there could be some erroneous mixing of select and ioctl; one is native and the other is a gnu wrapper or something like that. Really they both should be gnulib wrappers, I think.
I know. Running "depends wget.exe" shows that libgnulib.dll has wrappers for select + ioctl etc. Wget only imports these directly from ws2_32.dll: freeaddrinfo getaddrinfo htons ntohs WSAAddressToStringA WSACleanup WSAGetLastError WSASetLastError WSAStartup So the rest of the socket stuff is handled in gnulib.dll. But I don't see how close-a-socket is imported from gnulib. There is no rpl_close imported from the gnulib DLL. Only rpl_fclose?! --gv
