diff options
Diffstat (limited to 'sys/kern')
-rw-r--r-- | sys/kern/kern_jail.c | 62 | ||||
-rw-r--r-- | sys/kern/kern_mib.c | 6 | ||||
-rw-r--r-- | sys/kern/kern_shutdown.c | 2 |
3 files changed, 37 insertions, 33 deletions
diff --git a/sys/kern/kern_jail.c b/sys/kern/kern_jail.c index 6abf8a3..c13b7d4 100644 --- a/sys/kern/kern_jail.c +++ b/sys/kern/kern_jail.c @@ -80,7 +80,7 @@ struct prison prison0 = { .pr_uref = 1, .pr_path = "/", .pr_securelevel = -1, - .pr_uuid = "00000000-0000-0000-0000-000000000000", + .pr_hostuuid = "00000000-0000-0000-0000-000000000000", .pr_children = LIST_HEAD_INITIALIZER(&prison0.pr_children), .pr_flags = PR_HOST, .pr_allow = PR_ALLOW_ALL, @@ -1073,11 +1073,11 @@ kern_jail_set(struct thread *td, struct uio *optuio, int flags) name = ""; if (host != NULL || domain != NULL || uuid != NULL || gothid) { if (host == NULL) - host = ppr->pr_host; + host = ppr->pr_hostname; if (domain == NULL) - domain = ppr->pr_domain; + domain = ppr->pr_domainname; if (uuid == NULL) - uuid = ppr->pr_uuid; + uuid = ppr->pr_hostuuid; if (!gothid) hid = ppr->pr_hostid; } @@ -1525,22 +1525,23 @@ kern_jail_set(struct thread *td, struct uio *optuio, int flags) * it is always set with allprison_lock at least * shared, and is held exclusively here. */ - strlcpy(pr->pr_host, pr->pr_parent->pr_host, - sizeof(pr->pr_host)); - strlcpy(pr->pr_domain, pr->pr_parent->pr_domain, - sizeof(pr->pr_domain)); - strlcpy(pr->pr_uuid, pr->pr_parent->pr_uuid, - sizeof(pr->pr_uuid)); + strlcpy(pr->pr_hostname, pr->pr_parent->pr_hostname, + sizeof(pr->pr_hostname)); + strlcpy(pr->pr_domainname, pr->pr_parent->pr_domainname, + sizeof(pr->pr_domainname)); + strlcpy(pr->pr_hostuuid, pr->pr_parent->pr_hostuuid, + sizeof(pr->pr_hostuuid)); pr->pr_hostid = pr->pr_parent->pr_hostid; } } else if (host != NULL || domain != NULL || uuid != NULL || gothid) { /* Set this prison, and any descendants without PR_HOST. */ if (host != NULL) - strlcpy(pr->pr_host, host, sizeof(pr->pr_host)); + strlcpy(pr->pr_hostname, host, sizeof(pr->pr_hostname)); if (domain != NULL) - strlcpy(pr->pr_domain, domain, sizeof(pr->pr_domain)); + strlcpy(pr->pr_domainname, domain, + sizeof(pr->pr_domainname)); if (uuid != NULL) - strlcpy(pr->pr_uuid, uuid, sizeof(pr->pr_uuid)); + strlcpy(pr->pr_hostuuid, uuid, sizeof(pr->pr_hostuuid)); if (gothid) pr->pr_hostid = hid; FOREACH_PRISON_DESCENDANT_LOCKED(pr, tpr, descend) { @@ -1548,14 +1549,17 @@ kern_jail_set(struct thread *td, struct uio *optuio, int flags) descend = 0; else { if (host != NULL) - strlcpy(tpr->pr_host, pr->pr_host, - sizeof(tpr->pr_host)); + strlcpy(tpr->pr_hostname, + pr->pr_hostname, + sizeof(tpr->pr_hostname)); if (domain != NULL) - strlcpy(tpr->pr_domain, pr->pr_domain, - sizeof(tpr->pr_domain)); + strlcpy(tpr->pr_domainname, + pr->pr_domainname, + sizeof(tpr->pr_domainname)); if (uuid != NULL) - strlcpy(tpr->pr_uuid, pr->pr_uuid, - sizeof(tpr->pr_uuid)); + strlcpy(tpr->pr_hostuuid, + pr->pr_hostuuid, + sizeof(tpr->pr_hostuuid)); if (gothid) tpr->pr_hostid = hid; } @@ -1873,13 +1877,13 @@ kern_jail_get(struct thread *td, struct uio *optuio, int flags) sizeof(pr->pr_securelevel)); if (error != 0 && error != ENOENT) goto done_deref; - error = vfs_setopts(opts, "host.hostname", pr->pr_host); + error = vfs_setopts(opts, "host.hostname", pr->pr_hostname); if (error != 0 && error != ENOENT) goto done_deref; - error = vfs_setopts(opts, "host.domainname", pr->pr_domain); + error = vfs_setopts(opts, "host.domainname", pr->pr_domainname); if (error != 0 && error != ENOENT) goto done_deref; - error = vfs_setopts(opts, "host.hostuuid", pr->pr_uuid); + error = vfs_setopts(opts, "host.hostuuid", pr->pr_hostuuid); if (error != 0 && error != ENOENT) goto done_deref; #ifdef COMPAT_IA32 @@ -3220,7 +3224,7 @@ getcredhostname(struct ucred *cred, char *buf, size_t size) */ pr = (cred != NULL) ? cred->cr_prison : &prison0; mtx_lock(&pr->pr_mtx); - strlcpy(buf, pr->pr_host, size); + strlcpy(buf, pr->pr_hostname, size); mtx_unlock(&pr->pr_mtx); } @@ -3229,7 +3233,7 @@ getcreddomainname(struct ucred *cred, char *buf, size_t size) { mtx_lock(&cred->cr_prison->pr_mtx); - strlcpy(buf, cred->cr_prison->pr_domain, size); + strlcpy(buf, cred->cr_prison->pr_domainname, size); mtx_unlock(&cred->cr_prison->pr_mtx); } @@ -3238,7 +3242,7 @@ getcredhostuuid(struct ucred *cred, char *buf, size_t size) { mtx_lock(&cred->cr_prison->pr_mtx); - strlcpy(buf, cred->cr_prison->pr_uuid, size); + strlcpy(buf, cred->cr_prison->pr_hostuuid, size); mtx_unlock(&cred->cr_prison->pr_mtx); } @@ -3650,7 +3654,7 @@ sysctl_jail_list(SYSCTL_HANDLER_ARGS) xp->pr_state = cpr->pr_uref > 0 ? PRISON_STATE_ALIVE : PRISON_STATE_DYING; strlcpy(xp->pr_path, prison_path(pr, cpr), sizeof(xp->pr_path)); - strlcpy(xp->pr_host, cpr->pr_host, sizeof(xp->pr_host)); + strlcpy(xp->pr_host, cpr->pr_hostname, sizeof(xp->pr_host)); strlcpy(xp->pr_name, prison_name(pr, cpr), sizeof(xp->pr_name)); #ifdef INET xp->pr_ip4s = cpr->pr_ip4s; @@ -3935,9 +3939,9 @@ db_show_prison(struct prison *pr) db_printf(" %s", pr_allow_names[fi]); db_printf("\n"); db_printf(" enforce_statfs = %d\n", pr->pr_enforce_statfs); - db_printf(" host.hostname = %s\n", pr->pr_host); - db_printf(" host.domainname = %s\n", pr->pr_domain); - db_printf(" host.hostuuid = %s\n", pr->pr_uuid); + db_printf(" host.hostname = %s\n", pr->pr_hostname); + db_printf(" host.domainname = %s\n", pr->pr_domainname); + db_printf(" host.hostuuid = %s\n", pr->pr_hostuuid); db_printf(" host.hostid = %lu\n", pr->pr_hostid); #ifdef INET db_printf(" ip4s = %d\n", pr->pr_ip4s); diff --git a/sys/kern/kern_mib.c b/sys/kern/kern_mib.c index 823df6b..d42d31d 100644 --- a/sys/kern/kern_mib.c +++ b/sys/kern/kern_mib.c @@ -261,15 +261,15 @@ sysctl_hostname(SYSCTL_HANDLER_ARGS) SYSCTL_PROC(_kern, KERN_HOSTNAME, hostname, CTLTYPE_STRING | CTLFLAG_RW | CTLFLAG_PRISON | CTLFLAG_MPSAFE, - (void *)(offsetof(struct prison, pr_host)), MAXHOSTNAMELEN, + (void *)(offsetof(struct prison, pr_hostname)), MAXHOSTNAMELEN, sysctl_hostname, "A", "Hostname"); SYSCTL_PROC(_kern, KERN_NISDOMAINNAME, domainname, CTLTYPE_STRING | CTLFLAG_RW | CTLFLAG_PRISON | CTLFLAG_MPSAFE, - (void *)(offsetof(struct prison, pr_domain)), MAXHOSTNAMELEN, + (void *)(offsetof(struct prison, pr_domainname)), MAXHOSTNAMELEN, sysctl_hostname, "A", "Name of the current YP/NIS domain"); SYSCTL_PROC(_kern, KERN_HOSTUUID, hostuuid, CTLTYPE_STRING | CTLFLAG_RW | CTLFLAG_PRISON | CTLFLAG_MPSAFE, - (void *)(offsetof(struct prison, pr_uuid)), HOSTUUIDLEN, + (void *)(offsetof(struct prison, pr_hostuuid)), HOSTUUIDLEN, sysctl_hostname, "A", "Host UUID"); static int regression_securelevel_nonmonotonic = 0; diff --git a/sys/kern/kern_shutdown.c b/sys/kern/kern_shutdown.c index 158b92a..80dda97 100644 --- a/sys/kern/kern_shutdown.c +++ b/sys/kern/kern_shutdown.c @@ -692,7 +692,7 @@ mkdumpheader(struct kerneldumpheader *kdh, char *magic, uint32_t archver, kdh->dumplength = htod64(dumplen); kdh->dumptime = htod64(time_second); kdh->blocksize = htod32(blksz); - strncpy(kdh->hostname, prison0.pr_host, sizeof(kdh->hostname)); + strncpy(kdh->hostname, prison0.pr_hostname, sizeof(kdh->hostname)); strncpy(kdh->versionstring, version, sizeof(kdh->versionstring)); if (panicstr != NULL) strncpy(kdh->panicstring, panicstr, sizeof(kdh->panicstring)); |