From: Gerald Pfeifer gerald@pfeifer.com
commit 5261811d471 revamped the code around pcblist structures, alas assumes a variable mib is always present on non-Apple, non-Linux systems when it is not. And in any case, ARRAY_SIZE should be used for the actual structure it applies to, not a similar one. --- dlls/nsiproxy.sys/tcp.c | 2 +- dlls/nsiproxy.sys/udp.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/dlls/nsiproxy.sys/tcp.c b/dlls/nsiproxy.sys/tcp.c index 67dcfed19f3..dd8c9d1102a 100644 --- a/dlls/nsiproxy.sys/tcp.c +++ b/dlls/nsiproxy.sys/tcp.c @@ -645,7 +645,7 @@ static NTSTATUS tcp_conns_enumerate_all( UINT filter, struct nsi_tcp_conn_key *k pthread_once( &mib_init_once, init_pcblist64_mib ); #else int pcblist_mib[] = { CTL_NET, PF_INET, IPPROTO_TCP, TCPCTL_PCBLIST }; - size_t pcblist_mib_len = ARRAY_SIZE(mib); + size_t pcblist_mib_len = ARRAY_SIZE(pcblist_mib); #endif
if (sysctl( pcblist_mib, pcblist_mib_len, NULL, &len, NULL, 0 ) < 0) diff --git a/dlls/nsiproxy.sys/udp.c b/dlls/nsiproxy.sys/udp.c index 3cb215c1c58..80d6d1aa89f 100644 --- a/dlls/nsiproxy.sys/udp.c +++ b/dlls/nsiproxy.sys/udp.c @@ -316,7 +316,7 @@ static NTSTATUS udp_endpoint_enumerate_all( void *key_data, UINT key_size, void pthread_once( &mib_init_once, init_pcblist64_mib ); #else int pcblist_mib[] = { CTL_NET, PF_INET, IPPROTO_UDP, UDPCTL_PCBLIST }; - size_t pcblist_mib_len = ARRAY_SIZE(mib); + size_t pcblist_mib_len = ARRAY_SIZE(pcblist_mib); #endif
if (sysctl( pcblist_mib, pcblist_mib_len, NULL, &len, NULL, 0 ) < 0)