X-Git-Url: https://code.citadel.org/?a=blobdiff_plain;f=citadel%2Fmodules%2Fnetwork%2Fserv_networkclient.c;h=338425e760b8b17279dae18d1dbb02606ffff197;hb=5268c0a9bf8202336b9e3e8b86f45d9d010f2811;hp=0f1f856f6132b732389d85b094c5a4a9f34798b2;hpb=aab1bab5b2fb69f588df91896e4eb65bd5844bfd;p=citadel.git diff --git a/citadel/modules/network/serv_networkclient.c b/citadel/modules/network/serv_networkclient.c index 0f1f856f6..338425e76 100644 --- a/citadel/modules/network/serv_networkclient.c +++ b/citadel/modules/network/serv_networkclient.c @@ -135,6 +135,8 @@ void DeleteNetworker(void *vptr) FreeStrBuf(&NW->port); FreeStrBuf(&NW->secret); FreeStrBuf(&NW->Url); + ((struct CitContext*)NW->IO.CitContext)->state = CON_IDLE; + ((struct CitContext*)NW->IO.CitContext)->kill_me = 1; FreeAsyncIOContents(&NW->IO); free(NW); } @@ -805,7 +807,7 @@ void RunNetworker(AsyncNetworker *NW) NW->IO.Terminate = NWC_Terminate; NW->IO.LineReader = NWC_ReadServerStatus; NW->IO.ConnFail = NWC_ConnFail; - NW->IO.DNSFail = NWC_DNSFail; + NW->IO.DNS.Fail = NWC_DNSFail; NW->IO.Timeout = NWC_Timeout; NW->IO.ShutdownAbort = NWC_Shutdown; @@ -818,6 +820,10 @@ void RunNetworker(AsyncNetworker *NW) SubC->session_specific_data = (char*) NW; NW->IO.CitContext = SubC; + safestrncpy(SubC->cs_host, + ChrPtr(NW->host), + sizeof(SubC->cs_host)); + if (NW->IO.ConnectMe->IsIP) { QueueEventContext(&NW->IO, nwc_connect_ip);