[Box Backup] Boxwin Client activity

Per Thomsen boxbackup@fluffy.co.uk
Thu, 21 Apr 2005 09:09:10 -0700


On 4/21/05 4:06 AM, Nick Knight wrote:

>Oh I see, I found a session timeout but that is different, perhaps there
>is a hack in the library some how.
>
>Perhaps you could send me your patch to include in the win32 version?
>
>Why does this not exist on the Unix variants though?
>  
>
That's because the setitimer() call  works with the ITIMER_VIRTUAL type 
of timer on Unix (man setitimer, again on Unix), but that doesn't work 
on cygwin, and probably not on Windows either.

To quote Gary:

>Namely, BackupStoreFileDiff.cpp uses setitimer() to get a signal when a
>file diff should terminate, due to MaximumDiffingTime in bbackupd.conf.
>Cygwin does not support ITIMER_VIRTUAL for setitimer() (returns EINVAL,
>not sure how Win32 native handles this), so the signal is never
>received (the error is ignored silently with a TRACE()). Effectively, a
>file diff continues for as long as it needs, and possibly longer than
>an SSL connection/session timeout, thus resulting in an error message
>mentioned before in this thread.
>
>To fix under Cygwin, patch BackupStoreFileDiff.cpp to use ITIMER_REAL
>in setitimer(), and SIGALRM in signal().
>  
>
Thanks,
Per

-- 
Per Reedtz Thomsen | Reedtz Consulting, LLC | F: 209 883 4119
V: 209 883 4102    |   pthomsen@reedtz.com  | C: 209 996 9561
GPG ID: 1209784F   |  Yahoo! Chat: pthomsen | AIM: pthomsen