version 1.24, 1996/07/02 22:52:04
|
version 1.25, 1996/07/04 18:40:44
|
Line 61 typedef struct _Robot {
|
Line 61 typedef struct _Robot {
|
struct timeval * tv; /* Timeout on socket */ |
struct timeval * tv; /* Timeout on socket */ |
char * cwd; /* Current dir URL */ |
char * cwd; /* Current dir URL */ |
HTList * converters; |
HTList * converters; |
|
HTList * encoders; |
char * rules; |
char * rules; |
char * logfile; |
char * logfile; |
char * outputfile; |
char * outputfile; |
Line 161 PRIVATE Robot * Robot_new (void)
|
Line 162 PRIVATE Robot * Robot_new (void)
|
me->hyperdoc = HTList_new(); |
me->hyperdoc = HTList_new(); |
me->htext = HTList_new(); |
me->htext = HTList_new(); |
me->tv->tv_sec = DEFAULT_TIMEOUT; |
me->tv->tv_sec = DEFAULT_TIMEOUT; |
me->cwd = HTFindRelatedName(); |
me->cwd = HTGetCurrentDirectoryURL(); |
me->output = OUTPUT; |
me->output = OUTPUT; |
|
|
/* We keep an extra timeout request object for the timeout_handler */ |
/* We keep an extra timeout request object for the timeout_handler */ |
Line 194 PRIVATE BOOL Robot_delete (Robot * me)
|
Line 195 PRIVATE BOOL Robot_delete (Robot * me)
|
HText_free(pres); |
HText_free(pres); |
HTList_delete(me->htext); |
HTList_delete(me->htext); |
} |
} |
|
HTConversion_deleteAll(me->converters); |
|
HTCoding_deleteAll(me->encoders); |
if (me->logfile) HTLog_close(); |
if (me->logfile) HTLog_close(); |
if (me->output && me->output != STDOUT) fclose(me->output); |
if (me->output && me->output != STDOUT) fclose(me->output); |
if (me->flags & MR_TIME) { |
if (me->flags & MR_TIME) { |
Line 299 PRIVATE int terminate_handler (HTRequest
|
Line 302 PRIVATE int terminate_handler (HTRequest
|
PRIVATE int timeout_handler (HTRequest * request) |
PRIVATE int timeout_handler (HTRequest * request) |
{ |
{ |
Robot * mr = (Robot *) HTRequest_context(request); |
Robot * mr = (Robot *) HTRequest_context(request); |
if (SHOW_MSG) HTTrace("Robot....... Request timeout...\n"); |
if (SHOW_MSG) HTTrace("Robot....... We don't know how to handle timeout...\n"); |
#if 0 |
#if 0 |
HTRequest_kill(request); |
HTRequest_kill(request); |
Thread_delete(mr, request); |
Thread_delete(mr, request); |
#endif |
#endif |
Cleanup(mr, -1); |
|
return HT_OK; |
return HT_OK; |
} |
} |
|
|
Line 484 int main (int argc, char ** argv)
|
Line 486 int main (int argc, char ** argv)
|
HTTransportInit(); |
HTTransportInit(); |
|
|
/* Initialize the protocol modules */ |
/* Initialize the protocol modules */ |
HTAccessInit(); |
HTProtocolInit(); |
|
|
/* Initialize set of converters */ |
/* Initialize set of converters */ |
mr->converters = HTList_new(); |
mr->converters = HTList_new(); |
Line 492 int main (int argc, char ** argv)
|
Line 494 int main (int argc, char ** argv)
|
HTMLInit(mr->converters); |
HTMLInit(mr->converters); |
HTFormat_setConversion(mr->converters); |
HTFormat_setConversion(mr->converters); |
|
|
|
/* Set up encoders and decoders */ |
|
mr->encoders = HTList_new(); |
|
HTEncoderInit(mr->encoders); |
|
HTFormat_setTransferCoding(mr->encoders); |
|
|
/* Initialize bindings between file suffixes and media types */ |
/* Initialize bindings between file suffixes and media types */ |
HTFileInit(); |
HTFileInit(); |
|
|