From: Amos Jeffries Date: Mon, 27 May 2024 19:46:44 +0000 (+0000) Subject: MinGW: fix error: cannot convert 'size_t*' to 'int*' (#1822) X-Git-Tag: SQUID_7_0_1~116 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=1800e254070002fc7ee3f4848e06fdbea00fd2fb;p=thirdparty%2Fsquid.git MinGW: fix error: cannot convert 'size_t*' to 'int*' (#1822) Remove struct addrinfo as we do. --- diff --git a/src/comm/ConnOpener.cc b/src/comm/ConnOpener.cc index 4473fe41a1..a6bc51b341 100644 --- a/src/comm/ConnOpener.cc +++ b/src/comm/ConnOpener.cc @@ -429,18 +429,15 @@ Comm::ConnOpener::cancelSleep() void Comm::ConnOpener::lookupLocalAddress() { - struct addrinfo *addr = nullptr; - Ip::Address::InitAddr(addr); - - if (getsockname(conn_->fd, addr->ai_addr, &(addr->ai_addrlen)) != 0) { + struct sockaddr_storage addr = {}; + socklen_t len = sizeof(addr); + if (getsockname(conn_->fd, reinterpret_cast(&addr), &len) != 0) { int xerrno = errno; debugs(50, DBG_IMPORTANT, "ERROR: Failed to retrieve TCP/UDP details for socket: " << conn_ << ": " << xstrerr(xerrno)); - Ip::Address::FreeAddr(addr); return; } - conn_->local = *addr; - Ip::Address::FreeAddr(addr); + conn_->local = addr; debugs(5, 6, conn_); }