… | |
… | |
344 | |
344 | |
345 | case REQ_SEQ_GET: |
345 | case REQ_SEQ_GET: |
346 | SvREADONLY_off (req->sv1); |
346 | SvREADONLY_off (req->sv1); |
347 | |
347 | |
348 | if (sizeof (IV) > 4) |
348 | if (sizeof (IV) > 4) |
349 | sv_setiv_mg (req->sv1, req->seq_t); |
349 | sv_setiv_mg (req->sv1, (IV)req->seq_t); |
350 | else |
350 | else |
351 | sv_setnv_mg (req->sv1, req->seq_t); |
351 | sv_setnv_mg (req->sv1, (NV)req->seq_t); |
352 | |
352 | |
353 | SvREFCNT_dec (req->sv1); |
353 | SvREFCNT_dec (req->sv1); |
354 | break; |
354 | break; |
355 | } |
355 | } |
356 | |
356 | |
… | |
… | |
381 | #endif |
381 | #endif |
382 | |
382 | |
383 | static void |
383 | static void |
384 | create_respipe () |
384 | create_respipe () |
385 | { |
385 | { |
|
|
386 | #ifdef _WIN32 |
|
|
387 | int arg; /* argg */ |
|
|
388 | #endif |
386 | int old_readfd = respipe [0]; |
389 | int old_readfd = respipe [0]; |
387 | |
390 | |
388 | if (respipe [1] >= 0) |
391 | if (respipe [1] >= 0) |
389 | respipe_close (TO_SOCKET (respipe [1])); |
392 | respipe_close (TO_SOCKET (respipe [1])); |
390 | |
393 | |
… | |
… | |
403 | respipe_close (respipe [0]); |
406 | respipe_close (respipe [0]); |
404 | respipe [0] = old_readfd; |
407 | respipe [0] = old_readfd; |
405 | } |
408 | } |
406 | |
409 | |
407 | #ifdef _WIN32 |
410 | #ifdef _WIN32 |
408 | int arg = 1; |
411 | arg = 1; |
409 | if (ioctlsocket (TO_SOCKET (respipe [0]), FIONBIO, &arg) |
412 | if (ioctlsocket (TO_SOCKET (respipe [0]), FIONBIO, &arg) |
410 | || ioctlsocket (TO_SOCKET (respipe [1]), FIONBIO, &arg)) |
413 | || ioctlsocket (TO_SOCKET (respipe [1]), FIONBIO, &arg)) |
411 | #else |
414 | #else |
412 | if (fcntl (respipe [0], F_SETFL, O_NONBLOCK) |
415 | if (fcntl (respipe [0], F_SETFL, O_NONBLOCK) |
413 | || fcntl (respipe [1], F_SETFL, O_NONBLOCK)) |
416 | || fcntl (respipe [1], F_SETFL, O_NONBLOCK)) |