[squid-users] Problem with running squid 3.5 on windows 7

Amos Jeffries squid3 at treenet.co.nz
Sun Dec 21 03:43:35 UTC 2014


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On 21/12/2014 11:58 a.m., Eldar Akchurin wrote:
> Hi Amos,
> 
> Hmm, after checking I found out that this fix works only for 64
> bit. When I try this on 32, both mingw on Cygwin and Ubuntu cannot
> identify presence of getaddrinfo.
> 
> It seems the 32 bit version of libws2_32 is compiled with
> "stdcall", i.e. the following works:
> 
> #ifdef __cplusplus extern "C" #endif char
> __attribute__((__stdcall__)) getaddrinfo(int, int, int, int); //
> 
> // AUTOCONF tries out the below one (which does not mingle @16) //
> char getaddrinfo(); // return getaddrinfo();
> 
> int main () { return getaddrinfo(0,0,0,0); ; return 0; }
> 
> I also found the following report, which kind of confirms what I
> see (https://patches.libav.org/patch/545/): This moves
> network_extralibs setup before use so that the link test works
> correctly on mingw-w64.  mingw32 still fails to detect it due to
> calling convention differences; getaddrinfo() is STDCALL, so it is
> mangled as getaddrinfo at 16 on x86.
> 
> Unfortunately, my background is windows, so I'm new to autoconf and
> all unix business. What do you think will be the right approach
> here? Maybe AC_CECK_DECL instead of AC_REPLACE_FUNC for getaddrinfo
> (and maybe some other funcs declared in the same lib)?
> 


Aha. That explains it, my build VM is an old 32-bit.

AC_CECK_DECL might work. getaddrinfo/getnameinfo/inet_ntop/inet_pton
are the key ones for IP parsing. If not a full replacement lookup macro.

I am going to be delving into the configure.ac logics to add some new
definitions for Solaris IP-Filter after the holidays. Might as well
write a new one for Windows getaddrinfo() while I'm doing that.


> Thank you very much for all your help, really appreciate it!
> 
> --e

No, thank you for yours. I have been procrastinating a bit much on
this project.

Amos
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.22 (MingW32)

iQEcBAEBAgAGBQJUlkHnAAoJELJo5wb/XPRjYoMH/RmApzGhNDemo6x+MXmVzUsf
a8M+JY2OFminwNAJ3SNoz7SBmO6Kmi0fvh6f7LeJfmG6utr0M0/lqCFL9MZ8RDUs
a9COhruK0Mwrs25z0kgzXSaZ6c4qV0mbCEeuUMGTnNKIkSkCflkljt1PMJ3O1+ou
A+8EKWaMlXLXGOpVSqctwzkJex0B+cDOnaQ1j6cpioW7TZK+OyRGqj+BYB/GmVt4
sxZX0UmsTmcTgFvKx1TbbUJPHpYy3PdJcIWlKRiMbL3FJQh4VmAc64g96qiOSXYF
72N9jQ8NTYVc/Gns0c8vse2kN/BSJk8uSFfvS9FXeFjtCvzjvBEFEQ7TUKhXaxs=
=Hs2Z
-----END PGP SIGNATURE-----


More information about the squid-users mailing list