[squid-users] Problem with running squid 3.5 on windows 7
Amos Jeffries
squid3 at treenet.co.nz
Sun Jan 25 04:05:43 UTC 2015
On 25/01/2015 4:16 p.m., Eldar Akchurin wrote:
> Hi Amos,
>
> Sorry to disturb you again, I have changed the ModSelectWin32 for now, it seems it kind of works.
> I will collect all the patches and will send you after I have the first version running :)
>
Yay. Sorry for not having time for this, got flooded under with 3.5.1
feedback but things are settling down again now.
> The next issue is in the mswindows.h
>
> inline ssize_t
> recvfrom(int s, void * b, size_t l, int f, struct sockaddr * fr, socklen_t * fl)
> {
> ssize_t result;
> int ifl=*fl;
> if ((result = ::recvfrom(_get_osfhandle(s), (char *)b, l, f, fr, &ifl)) == SOCKET_ERROR) {
> errno = WSAGetLastError();
> return -1;
> } else
> return result;
> }
>
> ::recvfrom changes the size, but you kind of forgetting it inside ifl, not passing it out.Why not simply pass fl? why do you need ifl? socklen_t is declared as int. Or can this be changed in the future?
> At least it is necessary to copy the value returned by ifl into the fl again after the call.
>
> The next problem I'm having is that only squid -N works. As soon as I run it in the daemon mode (without -N) none of the workers is created. Could you please point me to the part of the code that is responsible for spawning workers?
>
src/ipc/* does most of the SMP related stuff. I was expecting issues
from UDS TypedMessage needing special Windows code to pass handles
between the processes.
It may also be related to the main.cc code forking initial daemon/worker.
Amos
More information about the squid-users
mailing list