}
} else {
char buf[256];
- isc_result_t result = named_os_gethostname(buf, sizeof(buf));
- if (result != ISC_R_SUCCESS) {
- return (result);
+ if (gethostname(buf, sizeof(buf)) != 0) {
+ return (ISC_R_FAILURE);
}
return (put_txt(lookup, buf));
}
static isc_result_t
do_id_lookup(dns_sdblookup_t *lookup) {
- if (named_g_server->sctx->gethostname != NULL) {
+ if (named_g_server->sctx->usehostname) {
char buf[256];
- isc_result_t result;
-
- result = named_g_server->sctx->gethostname(buf, sizeof(buf));
- if (result != ISC_R_SUCCESS) {
- return (result);
+ if (gethostname(buf, sizeof(buf)) != 0) {
+ return (ISC_R_FAILURE);
}
return (put_txt(lookup, buf));
} else if (named_g_server->sctx->server_id != NULL) {
void
named_os_shutdown(void);
-isc_result_t
-named_os_gethostname(char *buf, size_t len);
-
void
named_os_shutdownmsg(char *command, isc_buffer_t *text);
cleanup_lockfile();
}
-isc_result_t
-named_os_gethostname(char *buf, size_t len) {
- int n;
-
- n = gethostname(buf, len);
- return ((n == 0) ? ISC_R_SUCCESS : ISC_R_FAILURE);
-}
-
void
named_os_shutdownmsg(char *command, isc_buffer_t *text) {
char *last, *ptr;
if (result == ISC_R_SUCCESS && cfg_obj_isboolean(obj)) {
/* "hostname" is interpreted as boolean true */
char buf[256];
- result = named_os_gethostname(buf, sizeof(buf));
- if (result == ISC_R_SUCCESS) {
+ if (gethostname(buf, sizeof(buf)) == 0) {
dns_dt_setidentity(named_g_server->dtenv, buf);
}
} else if (result == ISC_R_SUCCESS && !cfg_obj_isvoid(obj)) {
obj = NULL;
result = named_config_get(maps, "server-id", &obj);
- server->sctx->gethostname = NULL;
+ server->sctx->usehostname = false;
if (result == ISC_R_SUCCESS && cfg_obj_isboolean(obj)) {
/* The parser translates "hostname" to true */
- server->sctx->gethostname = named_os_gethostname;
+ server->sctx->usehostname = true;
result = ns_server_setserverid(server->sctx, NULL);
} else if (result == ISC_R_SUCCESS && !cfg_obj_isvoid(obj)) {
/* Found a quoted string */
cb);
CHECK(putstr(text, line));
- result = named_os_gethostname(hostname, sizeof(hostname));
- if (result != ISC_R_SUCCESS) {
+ if (gethostname(hostname, sizeof(hostname)) == 0) {
strlcpy(hostname, "localhost", sizeof(hostname));
}
snprintf(line, sizeof(line), "running on %s: %s\n", hostname,
if (WANTNSID(client)) {
if (client->manager->sctx->server_id != NULL) {
nsidp = client->manager->sctx->server_id;
- } else if (client->manager->sctx->gethostname != NULL) {
- result = client->manager->sctx->gethostname(
- nsid, sizeof(nsid));
- if (result != ISC_R_SUCCESS) {
+ } else if (client->manager->sctx->usehostname) {
+ if (gethostname(nsid, sizeof(nsid)) != 0) {
goto no_nsid;
}
nsidp = nsid;
dns_tkeyctx_t *tkeyctx;
/*% Server id for NSID */
- char *server_id;
- ns_hostnamecb_t gethostname;
+ char *server_id;
+ bool usehostname;
/*% Fuzzer callback */
isc_fuzztype_t fuzztype;