Hi phk,

> In message <[email protected]>, Javi 
> Lavandei
> ra writes:
> 
> Can you check the manual pages and see if it mentions how long timeouts
> you can specify to setsockopt(SO_SNDTIMEO) ?
> 
>> Child (7681) died signal=6
>> Child (7681) Panic message: Assert error in VCA_Prep(), cache_acceptor.c 
>> line 185:
>> Condition(VTCP_Check(setsockopt(sp->fd, 0xffff, 0x1005, &tv_sndtimeo, sizeof 
>> tv_sndtimeo))) not true.

Let's see if this helps:

From setsockopt()'s manpage:

[...]
     Most socket-level options utilize an int parameter for option_value.  For 
setsockopt(), the
     parameter should be non-zero to enable a boolean option, or zero if the 
option is to be dis-
     abled.  SO_LINGER uses a struct linger parameter, defined in 
<sys/socket.h>, which specifies
     the desired state of the option and the linger interval (see below).  
SO_SNDTIMEO and
     SO_RCVTIMEO use a struct timeval parameter, defined in <sys/time.h>.
[...]
     SO_SNDTIMEO is an option to set a timeout value for output operations.  It 
accepts a struct
     timeval parameter with the number of seconds and microseconds used to 
limit waits for output
     operations to complete.  If a send operation has blocked for this much 
time, it returns with a
     partial count or with the error EWOULDBLOCK if no data were sent.  In the 
current implementa-
     tion, this timer is restarted each time additional data are delivered to 
the protocol, imply-
     ing that the limit applies to output portions ranging in size from the 
low-water mark to the
     high-water mark for output.
[...]

And I can see this in the header files:

/usr/include/sys/_structs.h:

#define _STRUCT_TIMEVAL struct timeval
_STRUCT_TIMEVAL
{
        __darwin_time_t         tv_sec; /* seconds */
        __darwin_suseconds_t    tv_usec;        /* and microseconds */
}; 

/usr/include/sys/types.h:
        
typedef __darwin_time_t         time_t;
typedef __darwin_suseconds_t    suseconds_t;

/usr/include/sys/_types.h:

typedef __int32_t       __darwin_suseconds_t;   /* [???] microseconds */

Hope it helps.

--
Javi Lavandeira 
Twitter: @javilm

Blog: http://www.lavandeira.net/blog/
Email and hosting: http://www.lavandeira.net/services/

_______________________________________________
varnish-misc mailing list
[email protected]
https://www.varnish-cache.org/lists/mailman/listinfo/varnish-misc

Reply via email to