Ignore:
Timestamp:
2010-03-27T01:00:33+01:00 (7 years ago)
Author:
jow
Message:

[package] uhttpd:

  • make script timeout configurable
  • catch SIGCHLD to properly interrupt select()
  • flag listen and client sockets as close-on-exec
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/package/uhttpd/src/uhttpd-lua.c

    r20428 r20500  
    449449                                FD_SET(wfd[1], &writer); 
    450450 
    451                                 timeout.tv_sec = 15; 
     451                                timeout.tv_sec = cl->server->conf->script_timeout; 
    452452                                timeout.tv_usec = 0; 
    453453 
     
    513513                                } 
    514514 
    515                                 /* no activity for 15 seconds... looks dead */ 
     515                                /* timeout exceeded or interrupted by SIGCHLD */ 
    516516                                else 
    517517                                { 
    518                                         ensure(uh_http_sendhf(cl, 504, "Gateway Timeout", 
    519                                                 "The Lua handler took too long to produce a response")); 
     518                                        if( (errno != EINTR) && ! data_sent ) 
     519                                        { 
     520                                                ensure(uh_http_sendhf(cl, 504, "Gateway Timeout", 
     521                                                        "The Lua script took too long to produce " 
     522                                                        "a response")); 
     523                                        } 
    520524 
    521525                                        break; 
Note: See TracChangeset for help on using the changeset viewer.