X-Git-Url: https://code.citadel.org/?a=blobdiff_plain;f=citadel%2Fevent_client.c;h=1d1ca925c722663a33d19566cfcf0ea08a511394;hb=0690ea880b4aeccb537702e5a363633bde2de724;hp=2ffc1c6e5e1970759d84326eab57b3ce2558b759;hpb=635b123f22097bbb920b18e3850b0bb6faf532cc;p=citadel.git diff --git a/citadel/event_client.c b/citadel/event_client.c index 2ffc1c6e5..1d1ca925c 100644 --- a/citadel/event_client.c +++ b/citadel/event_client.c @@ -121,6 +121,8 @@ void FreeAsyncIOContents(AsyncIO *IO) FreeStrBuf(&IO->IOBuf); FreeStrBuf(&IO->SendBuf.Buf); FreeStrBuf(&IO->RecvBuf.Buf); + FreeStrBuf(&IO->ErrMsg); + ares_destroy(IO->DNSChannel); } @@ -355,11 +357,11 @@ set_start_callback(struct ev_loop *loop, AsyncIO *IO, int revents) int event_connect_socket(AsyncIO *IO) { + struct sockaddr_in saddr; int fdflags; int rc = -1; - IO->SendBuf.fd = - IO->RecvBuf.fd = + IO->SendBuf.fd = IO->RecvBuf.fd = IO->sock = socket(PF_INET, SOCK_STREAM, IPPROTO_TCP); /* IO->curr_ai->ai_family, @@ -397,8 +399,6 @@ IO->curr_ai->ai_family, ev_io_init(&IO->send_event, IO_send_callback, IO->sock, EV_WRITE); IO->send_event.data = IO; - unsigned short dport = atoi("25"); ///todo - struct sockaddr_in saddr; memset( (struct sockaddr_in *)&saddr, '\0', sizeof( saddr ) ); memcpy(&saddr.sin_addr, @@ -407,7 +407,7 @@ IO->curr_ai->ai_family, // saddr.sin_addr.s_addr = inet_addr("85.88.5.80"); saddr.sin_family = AF_INET; - saddr.sin_port = htons(dport);/// TODO + saddr.sin_port = htons(IO->dport); rc = connect(IO->sock, (struct sockaddr *) &saddr, /// TODO: ipv6?? (IO->HEnt->h_addrtype == AF_INET6)? @@ -453,7 +453,7 @@ void InitEventIO(AsyncIO *IO, else { IO->NextState = eSendReply; } -// IO->IP6 = IO->HEnt->h_addrtype == AF_INET6; + IO->IP6 = IO->HEnt->h_addrtype == AF_INET6; // IO->res = HEnt->h_addr_list[0]; event_connect_socket(IO); }