mirror of
https://gitlab.isc.org/isc-projects/bind9
synced 2025-09-01 15:05:23 +00:00
use NULL (not 0) for null pointers; use size_t (not unsigned int) in
sysctl() arguments
This commit is contained in:
@@ -66,6 +66,8 @@ isc_interfaceiter_create(isc_mem_t *mctx, isc_interfaceiter_t **iterp)
|
|||||||
{
|
{
|
||||||
isc_interfaceiter_t *iter;
|
isc_interfaceiter_t *iter;
|
||||||
isc_result_t result;
|
isc_result_t result;
|
||||||
|
size_t bufsize;
|
||||||
|
size_t bufused;
|
||||||
REQUIRE(mctx != NULL);
|
REQUIRE(mctx != NULL);
|
||||||
REQUIRE(iterp != NULL);
|
REQUIRE(iterp != NULL);
|
||||||
REQUIRE(*iterp == NULL);
|
REQUIRE(*iterp == NULL);
|
||||||
@@ -78,13 +80,15 @@ isc_interfaceiter_create(isc_mem_t *mctx, isc_interfaceiter_t **iterp)
|
|||||||
iter->buf = 0;
|
iter->buf = 0;
|
||||||
|
|
||||||
/* Determine the amount of memory needed. */
|
/* Determine the amount of memory needed. */
|
||||||
if (sysctl(mib, 6, 0, &iter->bufsize, 0, 0) < 0) {
|
bufsize = 0;
|
||||||
|
if (sysctl(mib, 6, NULL, &bufsize, NULL, (size_t) 0) < 0) {
|
||||||
UNEXPECTED_ERROR(__FILE__, __LINE__,
|
UNEXPECTED_ERROR(__FILE__, __LINE__,
|
||||||
"getting interface list size: sysctl: %s",
|
"getting interface list size: sysctl: %s",
|
||||||
strerror(errno));
|
strerror(errno));
|
||||||
result = ISC_R_UNEXPECTED;
|
result = ISC_R_UNEXPECTED;
|
||||||
goto failure;
|
goto failure;
|
||||||
}
|
}
|
||||||
|
iter->bufsize = bufsize;
|
||||||
|
|
||||||
iter->buf = isc_mem_get(iter->mctx, iter->bufsize);
|
iter->buf = isc_mem_get(iter->mctx, iter->bufsize);
|
||||||
if (iter->buf == NULL) {
|
if (iter->buf == NULL) {
|
||||||
@@ -92,14 +96,15 @@ isc_interfaceiter_create(isc_mem_t *mctx, isc_interfaceiter_t **iterp)
|
|||||||
goto failure;
|
goto failure;
|
||||||
}
|
}
|
||||||
|
|
||||||
iter->bufused = iter->bufsize;
|
bufused = bufsize;
|
||||||
if (sysctl(mib, 6, iter->buf, &iter->bufused, 0, 0) < 0) {
|
if (sysctl(mib, 6, iter->buf, &bufused, NULL, (size_t) 0) < 0) {
|
||||||
UNEXPECTED_ERROR(__FILE__, __LINE__,
|
UNEXPECTED_ERROR(__FILE__, __LINE__,
|
||||||
"getting interface list: sysctl: %s",
|
"getting interface list: sysctl: %s",
|
||||||
strerror(errno));
|
strerror(errno));
|
||||||
result = ISC_R_UNEXPECTED;
|
result = ISC_R_UNEXPECTED;
|
||||||
goto failure;
|
goto failure;
|
||||||
}
|
}
|
||||||
|
iter->bufused = bufused;
|
||||||
INSIST(iter->bufused <= iter->bufsize);
|
INSIST(iter->bufused <= iter->bufsize);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
Reference in New Issue
Block a user