libjail, jls(8), jail(8): use the JAIL_PARAM_* constants

Replaced hardcoded jail parameter name strings in the base userland
consumers with the JAIL_PARAM_* constants.

No functional change.

Reviewed by:	jamie, adrian
Differential Revision:	https://reviews.freebsd.org/D59577
This commit is contained in:
Abdelkader Boudih committed 2026-09-10 20:55:04 +01:00
1 parent d4820dc1e6
commit 9ae680fcfd
5 files changed
+98 -86

No files matched your search

+15 -15
View File
@@ -174,7 +174,7 @@ jail_setv(int flags, ...)
goto error;
if (jailparam_import(jp + njp, value) < 0)
goto error;
if (!strcmp(name, "desc") &&
if (!strcmp(name, JAIL_PARAM_DESC) &&
(flags & (JAIL_GET_DESC | JAIL_OWN_DESC))) {
jp_desc = jp + njp;
desc_value = value;
@@ -224,17 +224,17 @@ jail_getv(int flags, ...)
va_end(tap);
goto error;
}
if (!strcmp(jp[njp].jp_name, "desc") &&
if (!strcmp(jp[njp].jp_name, JAIL_PARAM_DESC) &&
(flags & (JAIL_USE_DESC | JAIL_AT_DESC))) {
jp_desc = jp + njp;
desc_value = value;
} else if (!strcmp(jp[njp].jp_name, "lastjid")) {
} else if (!strcmp(jp[njp].jp_name, JAIL_PARAM_LASTJID)) {
jp_lastjid = jp + njp;
lastjid_value = value;
} else if (!strcmp(jp[njp].jp_name, "jid")) {
} else if (!strcmp(jp[njp].jp_name, JAIL_PARAM_JID)) {
jp_jid = jp + njp;
jid_value = value;
} if (!strcmp(jp[njp].jp_name, "name")) {
} if (!strcmp(jp[njp].jp_name, JAIL_PARAM_NAME)) {
jp_name = jp + njp;
name_value = value;
}
@@ -625,8 +625,8 @@ jailparam_set(struct jailparam *jp, unsigned njp, int flags)
}
i++;
}
jiov[i].iov_base = __DECONST(char *, "errmsg");
jiov[i].iov_len = sizeof("errmsg");
jiov[i].iov_base = __DECONST(char *, JAIL_PARAM_ERRMSG);
jiov[i].iov_len = sizeof(JAIL_PARAM_ERRMSG);
i++;
jiov[i].iov_base = jail_errmsg;
jiov[i].iov_len = JAIL_ERRMSGLEN;
@@ -663,14 +663,14 @@ jailparam_get(struct jailparam *jp, unsigned njp, int flags)
jp_desc = jp_lastjid = jp_jid = jp_name = NULL;
arrays = 0;
for (ai = j = 0; j < njp; j++) {
if (!strcmp(jp[j].jp_name, "desc") &&
if (!strcmp(jp[j].jp_name, JAIL_PARAM_DESC) &&
(flags & (JAIL_USE_DESC | JAIL_AT_DESC)))
jp_desc = jp + j;
else if (!strcmp(jp[j].jp_name, "lastjid"))
else if (!strcmp(jp[j].jp_name, JAIL_PARAM_LASTJID))
jp_lastjid = jp + j;
else if (!strcmp(jp[j].jp_name, "jid"))
else if (!strcmp(jp[j].jp_name, JAIL_PARAM_JID))
jp_jid = jp + j;
else if (!strcmp(jp[j].jp_name, "name"))
else if (!strcmp(jp[j].jp_name, JAIL_PARAM_NAME))
jp_name = jp + j;
else if (jp[j].jp_elemlen && !(jp[j].jp_flags & JP_RAWVALUE)) {
arrays = 1;
@@ -700,8 +700,8 @@ jailparam_get(struct jailparam *jp, unsigned njp, int flags)
jiov[ki].iov_len = (jp_key->jp_ctltype & CTLTYPE) == CTLTYPE_STRING
? strlen(jp_key->jp_value) + 1 : jp_key->jp_valuelen;
ki++;
jiov[ki].iov_base = __DECONST(char *, "errmsg");
jiov[ki].iov_len = sizeof("errmsg");
jiov[ki].iov_base = __DECONST(char *, JAIL_PARAM_ERRMSG);
jiov[ki].iov_len = sizeof(JAIL_PARAM_ERRMSG);
ki++;
jiov[ki].iov_base = jail_errmsg;
jiov[ki].iov_len = JAIL_ERRMSGLEN;
@@ -1014,12 +1014,12 @@ jailparam_type(struct jailparam *jp)
* parameter list.
*/
name = jp->jp_name;
if (!strcmp(name, "lastjid")) {
if (!strcmp(name, JAIL_PARAM_LASTJID)) {
jp->jp_valuelen = sizeof(int);
jp->jp_ctltype = CTLTYPE_INT | CTLFLAG_WR;
return (0);
}
if (!strcmp(name, "desc")) {
if (!strcmp(name, JAIL_PARAM_DESC)) {
jp->jp_valuelen = sizeof(int);
jp->jp_ctltype = CTLTYPE_INT | CTLFLAG_RW;
return (0);
+12 -12
View File
@@ -60,19 +60,19 @@ jail_getid(const char *name)
*/
if (jid == 0)
return jid;
jiov[0].iov_base = __DECONST(char *, "jid");
jiov[0].iov_len = sizeof("jid");
jiov[0].iov_base = __DECONST(char *, JAIL_PARAM_JID);
jiov[0].iov_len = sizeof(JAIL_PARAM_JID);
jiov[1].iov_base = &jid;
jiov[1].iov_len = sizeof(jid);
} else {
jiov[0].iov_base = __DECONST(char *, "name");
jiov[0].iov_len = sizeof("name");
jiov[0].iov_base = __DECONST(char *, JAIL_PARAM_NAME);
jiov[0].iov_len = sizeof(JAIL_PARAM_NAME);
jiov[1].iov_len = strlen(name) + 1;
jiov[1].iov_base = alloca(jiov[1].iov_len);
strcpy(jiov[1].iov_base, name);
}
jiov[2].iov_base = __DECONST(char *, "errmsg");
jiov[2].iov_len = sizeof("errmsg");
jiov[2].iov_base = __DECONST(char *, JAIL_PARAM_ERRMSG);
jiov[2].iov_len = sizeof(JAIL_PARAM_ERRMSG);
jiov[3].iov_base = jail_errmsg;
jiov[3].iov_len = JAIL_ERRMSGLEN;
jail_errmsg[0] = 0;
@@ -93,16 +93,16 @@ jail_getname(int jid)
char *name;
char namebuf[MAXHOSTNAMELEN];
jiov[0].iov_base = __DECONST(char *, "jid");
jiov[0].iov_len = sizeof("jid");
jiov[0].iov_base = __DECONST(char *, JAIL_PARAM_JID);
jiov[0].iov_len = sizeof(JAIL_PARAM_JID);
jiov[1].iov_base = &jid;
jiov[1].iov_len = sizeof(jid);
jiov[2].iov_base = __DECONST(char *, "name");
jiov[2].iov_len = sizeof("name");
jiov[2].iov_base = __DECONST(char *, JAIL_PARAM_NAME);
jiov[2].iov_len = sizeof(JAIL_PARAM_NAME);
jiov[3].iov_base = namebuf;
jiov[3].iov_len = sizeof(namebuf);
jiov[4].iov_base = __DECONST(char *, "errmsg");
jiov[4].iov_len = sizeof("errmsg");
jiov[4].iov_base = __DECONST(char *, JAIL_PARAM_ERRMSG);
jiov[4].iov_len = sizeof(JAIL_PARAM_ERRMSG);
jiov[5].iov_base = jail_errmsg;
jiov[5].iov_len = JAIL_ERRMSGLEN;
jail_errmsg[0] = 0;
+20 -18
View File
@@ -95,33 +95,35 @@ static const struct ipspec intparams[] = {
[IP_VNET_INTERFACE] = {"vnet.interface", PF_INTERNAL},
[IP_ZFS_DATASET] = {"zfs.dataset", PF_INTERNAL},
#ifdef INET
[IP__IP4_IFADDR] = {"ip4.addr", PF_INTERNAL | PF_CONV | PF_REV},
[IP__IP4_IFADDR] = {JAIL_PARAM_IP4_ADDR,
PF_INTERNAL | PF_CONV | PF_REV},
#endif
#ifdef INET6
[IP__IP6_IFADDR] = {"ip6.addr", PF_INTERNAL | PF_CONV | PF_REV},
[IP__IP6_IFADDR] = {JAIL_PARAM_IP6_ADDR,
PF_INTERNAL | PF_CONV | PF_REV},
#endif
[IP__MOUNT_FROM_FSTAB] = {"mount.fstab", PF_INTERNAL | PF_CONV | PF_REV},
[IP__OP] = {NULL, PF_CONV},
[KP_ALLOW_CHFLAGS] = {"allow.chflags", 0},
[KP_ALLOW_MOUNT] = {"allow.mount", 0},
[KP_ALLOW_RAW_SOCKETS] = {"allow.raw_sockets", 0},
[KP_ALLOW_SET_HOSTNAME]= {"allow.set_hostname", 0},
[KP_ALLOW_SOCKET_AF] = {"allow.socket_af", 0},
[KP_ALLOW_SYSVIPC] = {"allow.sysvipc", 0},
[KP_DEVFS_RULESET] = {"devfs_ruleset", 0},
[KP_HOST_HOSTNAME] = {"host.hostname", 0},
[KP_ALLOW_CHFLAGS] = {JAIL_PARAM_ALLOW_CHFLAGS, 0},
[KP_ALLOW_MOUNT] = {JAIL_PARAM_ALLOW_MOUNT, 0},
[KP_ALLOW_RAW_SOCKETS] = {JAIL_PARAM_ALLOW_RAW_SOCKETS, 0},
[KP_ALLOW_SET_HOSTNAME]= {JAIL_PARAM_ALLOW_SET_HOSTNAME, 0},
[KP_ALLOW_SOCKET_AF] = {JAIL_PARAM_ALLOW_SOCKET_AF, 0},
[KP_ALLOW_SYSVIPC] = {JAIL_PARAM_ALLOW_SYSVIPC, 0},
[KP_DEVFS_RULESET] = {JAIL_PARAM_DEVFS_RULESET, 0},
[KP_HOST_HOSTNAME] = {JAIL_PARAM_HOST_HOSTNAME, 0},
#ifdef INET
[KP_IP4_ADDR] = {"ip4.addr", 0},
[KP_IP4_ADDR] = {JAIL_PARAM_IP4_ADDR, 0},
#endif
#ifdef INET6
[KP_IP6_ADDR] = {"ip6.addr", 0},
[KP_IP6_ADDR] = {JAIL_PARAM_IP6_ADDR, 0},
#endif
[KP_JID] = {"jid", PF_IMMUTABLE},
[KP_NAME] = {"name", PF_IMMUTABLE},
[KP_PATH] = {"path", 0},
[KP_PERSIST] = {"persist", 0},
[KP_SECURELEVEL] = {"securelevel", 0},
[KP_VNET] = {"vnet", 0},
[KP_JID] = {JAIL_PARAM_JID, PF_IMMUTABLE},
[KP_NAME] = {JAIL_PARAM_NAME, PF_IMMUTABLE},
[KP_PATH] = {JAIL_PARAM_PATH, 0},
[KP_PERSIST] = {JAIL_PARAM_PERSIST, 0},
[KP_SECURELEVEL] = {JAIL_PARAM_SECURELEVEL, 0},
[KP_VNET] = {JAIL_PARAM_VNET, 0},
};
/*
+19 -18
View File
@@ -151,10 +151,10 @@ static const struct {
enum intparam param;
} listparams[] = {
#ifdef INET
{ "ip4.addr", KP_IP4_ADDR },
{ JAIL_PARAM_IP4_ADDR, KP_IP4_ADDR },
#endif
#ifdef INET6
{ "ip6.addr", KP_IP6_ADDR },
{ JAIL_PARAM_IP6_ADDR, KP_IP6_ADDR },
#endif
{ "vnet.interface", IP_VNET_INTERFACE },
{ "zfs.dataset", IP_ZFS_DATASET },
@@ -701,12 +701,12 @@ create_jail(struct cfjail *j)
j->intparams[IP_EXEC_POSTSTART]);
sjp = setparams =
alloca((j->njp + dopersist) * sizeof(struct jailparam));
if (dopersist && jailparam_init(sjp++, "persist") < 0) {
if (dopersist && jailparam_init(sjp++, JAIL_PARAM_PERSIST) < 0) {
jail_warnx(j, "%s", jail_errmsg);
return -1;
}
for (jp = j->jp; jp < j->jp + j->njp; jp++)
if (!dopersist || !equalopts(jp->jp_name, "persist"))
if (!dopersist || !equalopts(jp->jp_name, JAIL_PARAM_PERSIST))
*sjp++ = *jp;
ns = sjp - setparams;
@@ -735,12 +735,12 @@ clear_persist(struct cfjail *j)
if (!(j->flags & JF_PERSIST))
return;
j->flags &= ~JF_PERSIST;
jiov[0].iov_base = __DECONST(char *, "jid");
jiov[0].iov_len = sizeof("jid");
jiov[0].iov_base = __DECONST(char *, JAIL_PARAM_JID);
jiov[0].iov_len = sizeof(JAIL_PARAM_JID);
jiov[1].iov_base = &j->jid;
jiov[1].iov_len = sizeof(j->jid);
jiov[2].iov_base = __DECONST(char *, "nopersist");
jiov[2].iov_len = sizeof("nopersist");
jiov[2].iov_base = __DECONST(char *, JAIL_PARAM_NOPERSIST);
jiov[2].iov_len = sizeof(JAIL_PARAM_NOPERSIST);
jiov[3].iov_base = NULL;
jiov[3].iov_len = 0;
jid = jail_set(jiov, 4, JAIL_UPDATE);
@@ -766,7 +766,7 @@ update_jail(struct cfjail *j)
if (ns == 0)
return 0;
sjp = setparams = alloca(++ns * sizeof(struct jailparam));
if (jailparam_init(sjp, "jid") < 0 ||
if (jailparam_init(sjp, JAIL_PARAM_JID) < 0 ||
jailparam_import_raw(sjp, &j->jid, sizeof j->jid) < 0) {
jail_warnx(j, "%s", jail_errmsg);
failed(j);
@@ -801,18 +801,18 @@ rdtun_params(struct cfjail *j, int dofail)
j->flags |= JF_RDTUN;
nrt = 0;
for (jp = j->jp; jp < j->jp + j->njp; jp++)
if (JP_RDTUN(jp) && strcmp(jp->jp_name, "jid"))
if (JP_RDTUN(jp) && strcmp(jp->jp_name, JAIL_PARAM_JID))
nrt++;
if (nrt == 0)
return 0;
rtjp = rtparams = alloca(++nrt * sizeof(struct jailparam));
if (jailparam_init(rtjp, "jid") < 0 ||
if (jailparam_init(rtjp, JAIL_PARAM_JID) < 0 ||
jailparam_import_raw(rtjp, &j->jid, sizeof j->jid) < 0) {
jail_warnx(j, "%s", jail_errmsg);
exit(1);
}
for (jp = j->jp; jp < j->jp + j->njp; jp++)
if (JP_RDTUN(jp) && strcmp(jp->jp_name, "jid")) {
if (JP_RDTUN(jp) && strcmp(jp->jp_name, JAIL_PARAM_JID)) {
*++rtjp = *jp;
rtjp->jp_value = NULL;
}
@@ -820,7 +820,8 @@ rdtun_params(struct cfjail *j, int dofail)
if (jailparam_get(rtparams, nrt, 0) > 0) {
rtjp = rtparams + 1;
for (jp = j->jp; rtjp < rtparams + nrt; jp++) {
if (JP_RDTUN(jp) && strcmp(jp->jp_name, "jid")) {
if (JP_RDTUN(jp) &&
strcmp(jp->jp_name, JAIL_PARAM_JID)) {
jp_value = jp->jp_value;
jp_valuelen = jp->jp_valuelen;
if (jp_value == NULL && jp_valuelen > 0) {
@@ -876,13 +877,13 @@ running_jid(struct cfjail *j)
j->jid = -1;
return;
}
jiov[0].iov_base = __DECONST(char *, "jid");
jiov[0].iov_len = sizeof("jid");
jiov[0].iov_base = __DECONST(char *, JAIL_PARAM_JID);
jiov[0].iov_len = sizeof(JAIL_PARAM_JID);
jiov[1].iov_base = &jid;
jiov[1].iov_len = sizeof(jid);
} else if ((pval = string_param(j->intparams[KP_NAME]))) {
jiov[0].iov_base = __DECONST(char *, "name");
jiov[0].iov_len = sizeof("name");
jiov[0].iov_base = __DECONST(char *, JAIL_PARAM_NAME);
jiov[0].iov_len = sizeof(JAIL_PARAM_NAME);
jiov[1].iov_len = strlen(pval) + 1;
jiov[1].iov_base = alloca(jiov[1].iov_len);
strcpy(jiov[1].iov_base, pval);
@@ -985,7 +986,7 @@ print_jail(FILE *fp, struct cfjail *j, int oldcl, int running)
printsep = 1;
}
TAILQ_FOREACH(p, &j->params, tq)
if (strcmp(p->name, "jid")) {
if (strcmp(p->name, JAIL_PARAM_JID)) {
if (printsep)
fputs(separator, fp);
else
+32 -23
View File
@@ -178,37 +178,45 @@ main(int argc, char **argv)
if (pflags & (PRINT_HEADER | PRINT_NAMEVAL))
add_param("all", NULL, (size_t)0, NULL, JP_USER);
else if (pflags & PRINT_VERBOSE) {
add_param("jid", NULL, (size_t)0, NULL, JP_USER);
add_param("host.hostname", NULL, (size_t)0, NULL,
add_param(JAIL_PARAM_JID, NULL, (size_t)0, NULL,
JP_USER);
add_param(JAIL_PARAM_HOST_HOSTNAME, NULL, (size_t)0,
NULL, JP_USER);
add_param(JAIL_PARAM_PATH, NULL, (size_t)0, NULL,
JP_USER);
add_param(JAIL_PARAM_NAME, NULL, (size_t)0, NULL,
JP_USER);
add_param(JAIL_PARAM_DYING, NULL, (size_t)0, NULL,
JP_USER);
add_param(JAIL_PARAM_CPUSET_ID, NULL, (size_t)0, NULL,
JP_USER);
add_param("path", NULL, (size_t)0, NULL, JP_USER);
add_param("name", NULL, (size_t)0, NULL, JP_USER);
add_param("dying", NULL, (size_t)0, NULL, JP_USER);
add_param("cpuset.id", NULL, (size_t)0, NULL, JP_USER);
#ifdef INET
if (ip4_ok)
add_param("ip4.addr", NULL, (size_t)0, NULL,
JP_USER);
add_param(JAIL_PARAM_IP4_ADDR, NULL,
(size_t)0, NULL, JP_USER);
#endif
#ifdef INET6
if (ip6_ok)
add_param("ip6.addr", NULL, (size_t)0, NULL,
JP_USER | JP_OPT);
add_param(JAIL_PARAM_IP6_ADDR, NULL,
(size_t)0, NULL, JP_USER | JP_OPT);
#endif
} else {
pflags |= PRINT_DEFAULT;
if (pflags & PRINT_JAIL_NAME)
add_param("name", NULL, (size_t)0, NULL, JP_USER);
add_param(JAIL_PARAM_NAME, NULL, (size_t)0,
NULL, JP_USER);
else
add_param("jid", NULL, (size_t)0, NULL, JP_USER);
add_param(JAIL_PARAM_JID, NULL, (size_t)0,
NULL, JP_USER);
#ifdef INET
if (ip4_ok)
add_param("ip4.addr", NULL, (size_t)0, NULL,
JP_USER);
add_param(JAIL_PARAM_IP4_ADDR, NULL,
(size_t)0, NULL, JP_USER);
#endif
add_param("host.hostname", NULL, (size_t)0, NULL,
add_param(JAIL_PARAM_HOST_HOSTNAME, NULL, (size_t)0,
NULL, JP_USER);
add_param(JAIL_PARAM_PATH, NULL, (size_t)0, NULL,
JP_USER);
add_param("path", NULL, (size_t)0, NULL, JP_USER);
}
} else {
pflags &= ~PRINT_VERBOSE;
@@ -232,11 +240,12 @@ main(int argc, char **argv)
/* Add the index key parameters. */
if (jid != 0)
add_param("jid", &jid, sizeof(jid), NULL, 0);
add_param(JAIL_PARAM_JID, &jid, sizeof(jid), NULL, 0);
else if (jname != NULL)
add_param("name", jname, strlen(jname), NULL, 0);
add_param(JAIL_PARAM_NAME, jname, strlen(jname), NULL, 0);
else
add_param("lastjid", &lastjid, sizeof(lastjid), NULL, 0);
add_param(JAIL_PARAM_LASTJID, &lastjid, sizeof(lastjid),
NULL, 0);
/* Print a header line if requested. */
if (pflags & PRINT_VERBOSE) {
@@ -449,13 +458,13 @@ print_jail(int pflags, int jflags)
n = 6;
#endif
#ifdef INET
if (ip4_ok && !strcmp(params[n].jp_name, "ip4.addr")) {
if (ip4_ok && !strcmp(params[n].jp_name, JAIL_PARAM_IP4_ADDR)) {
emit_ip_addr_list(AF_INET, "ipv4_addrs", params + n);
n++;
}
#endif
#ifdef INET6
if (ip6_ok && !strcmp(params[n].jp_name, "ip6.addr")) {
if (ip6_ok && !strcmp(params[n].jp_name, JAIL_PARAM_IP6_ADDR)) {
emit_ip_addr_list(AF_INET6, "ipv6_addrs", params + n);
n++;
}
@@ -610,9 +619,9 @@ special_print(int pflags, struct jailparam *param)
xo_emit("{P:\"\"}");
else if (!(pflags & PRINT_NAMEVAL))
xo_emit("{P:-}");
} else if (ip_as_list && !strcmp(param->jp_name, "ip4.addr")) {
} else if (ip_as_list && !strcmp(param->jp_name, JAIL_PARAM_IP4_ADDR)) {
emit_ip_addr_list(AF_INET, param->jp_name, param);
} else if (ip_as_list && !strcmp(param->jp_name, "ip6.addr")) {
} else if (ip_as_list && !strcmp(param->jp_name, JAIL_PARAM_IP6_ADDR)) {
emit_ip_addr_list(AF_INET6, param->jp_name, param);
} else {
return 0;