2
0
mirror of https://gitlab.isc.org/isc-projects/bind9 synced 2025-08-31 06:25:31 +00:00

4466. [bug] Interface scanning didn't work on a Windows system

without a non local IPv6 addresses. [RT #43130]
This commit is contained in:
Mark Andrews
2016-09-08 14:25:20 +10:00
parent f1977af0d3
commit 61ca100b80
2 changed files with 7 additions and 4 deletions

View File

@@ -1,3 +1,6 @@
4466. [bug] Interface scanning didn't work on a Windows system
without a non local IPv6 addresses. [RT #43130]
4465. [bug] Don't use "%z" as Windows doesn't support it. 4465. [bug] Don't use "%z" as Windows doesn't support it.
[RT #43131] [RT #43131]

View File

@@ -375,7 +375,7 @@ internal_current6(isc_interfaceiter_t *iter) {
memset(&iter->current, 0, sizeof(iter->current)); memset(&iter->current, 0, sizeof(iter->current));
iter->current.af = AF_INET6; iter->current.af = AF_INET6;
if (iter->pos6 != 0U || !iter->pos6zero) { if (!iter->pos6zero) {
if (iter->pos6 == 0U) if (iter->pos6 == 0U)
iter->pos6zero = ISC_TRUE; iter->pos6zero = ISC_TRUE;
get_addr(AF_INET6, &iter->current.address, get_addr(AF_INET6, &iter->current.address,
@@ -466,9 +466,9 @@ internal_next(isc_interfaceiter_t *iter) {
static isc_result_t static isc_result_t
internal_next6(isc_interfaceiter_t *iter) { internal_next6(isc_interfaceiter_t *iter) {
if (iter->pos6 == 0 && iter->v6loop) if (iter->pos6 == 0U && iter->v6loop)
return (ISC_R_NOMORE); return (ISC_R_NOMORE);
if (iter->pos6 != 0) if (iter->pos6 != 0U)
iter->pos6--; iter->pos6--;
return (ISC_R_SUCCESS); return (ISC_R_SUCCESS);
} }
@@ -489,7 +489,7 @@ isc_interfaceiter_first(isc_interfaceiter_t *iter) {
if (iter->buf6 != NULL) { if (iter->buf6 != NULL) {
iter->pos6 = iter->buf6->iAddressCount; iter->pos6 = iter->buf6->iAddressCount;
iter->v6loop = ISC_FALSE; iter->v6loop = ISC_FALSE;
iter->pos6zero = ISC_FALSE; iter->pos6zero = ISC_TF(iter->pos6 == 0U);
} }
iter->result = ISC_R_SUCCESS; iter->result = ISC_R_SUCCESS;
return (isc_interfaceiter_next(iter)); return (isc_interfaceiter_next(iter));