IO->conn_fail.data = IO;
ev_timer_init(&IO->rw_timeout, IO_Timout_callback, first_rw_timeout, 0);
IO->rw_timeout.data = IO;
- ///struct sockaddr_in *addr = &IO->Addr;
+
if (IO->IP6)
- rc = connect(IO->sock, &IO->Addr, sizeof(struct in6_addr));
+ rc = connect(IO->sock, &IO->Addr, sizeof(struct sockaddr_in6));
else
rc = connect(IO->sock, (struct sockaddr_in *)&IO->Addr, sizeof(struct sockaddr_in));
if (SendMsg->pCurrRelay->Port != 0)
IO->dport = SendMsg->pCurrRelay->Port;
- memset(&IO->Addr, 0, sizeof(struct in6_addr));
+ memset(&IO->Addr, 0, sizeof(struct sockaddr_in6));
if (IO->IP6) {
memcpy(&IO->Addr.sin6_addr.s6_addr,
&SendMsg->pCurrRelay->Addr,
sizeof(struct in6_addr));
-
+
IO->Addr.sin6_family = AF_INET6;
IO->Addr.sin6_port = htons(IO->dport);
}