The branch main has been updated by jamie:

URL: 
https://cgit.FreeBSD.org/src/commit/?id=6000d46fc3c18c72bd09f7f4134c7293b62f3416

commit 6000d46fc3c18c72bd09f7f4134c7293b62f3416
Author:     Jamie Gritton <ja...@freebsd.org>
AuthorDate: 2023-11-18 20:47:50 +0000
Commit:     Jamie Gritton <ja...@freebsd.org>
CommitDate: 2023-11-18 20:47:50 +0000

    Move "jail -e" out of the rest of jail(8) flow.
---
 usr.sbin/jail/jail.c  | 25 ++++++++++++++-----------
 usr.sbin/jail/jailp.h |  1 -
 2 files changed, 14 insertions(+), 12 deletions(-)

diff --git a/usr.sbin/jail/jail.c b/usr.sbin/jail/jail.c
index 9e443c9f3f1d..fcff0d485682 100644
--- a/usr.sbin/jail/jail.c
+++ b/usr.sbin/jail/jail.c
@@ -139,7 +139,7 @@ main(int argc, char **argv)
        size_t sysvallen;
        unsigned op, pi;
        int ch, docf, error, i, oldcl, sysval;
-       int dflag, Rflag;
+       int dflag, eflag, Rflag;
 #if defined(INET) || defined(INET6)
        char *cs, *ncs;
 #endif
@@ -148,7 +148,7 @@ main(int argc, char **argv)
 #endif
 
        op = 0;
-       dflag = Rflag = 0;
+       dflag = eflag = Rflag = 0;
        docf = 1;
        cfname = CONF_FILE;
        JidFile = NULL;
@@ -162,7 +162,7 @@ main(int argc, char **argv)
                        dflag = 1;
                        break;
                case 'e':
-                       op |= JF_SHOW;
+                       eflag = 1;
                        separator = optarg;
                        break;
                case 'f':
@@ -232,7 +232,16 @@ main(int argc, char **argv)
        argc -= optind;
        argv += optind;
 
-       /* Find out which of the four command line styles this is. */
+       if (eflag) {
+               /* Just print list of all configured non-wildcard jails */
+               if (op || argc > 0)
+                       usage();
+               load_config(cfname);
+               show_jails();
+               exit(0);
+       }
+
+       /* Find out which of the command line styles this is. */
        oldcl = 0;
        if (!op) {
                /* Old-style command line with four fixed parameters */
@@ -282,13 +291,7 @@ main(int argc, char **argv)
                                            ? NULL : "false");
                        }
                }
-       } else if (op == JF_STOP || op == JF_SHOW) {
-               /* Just print list of all configured non-wildcard jails */
-               if (op == JF_SHOW) {
-                       load_config(cfname);
-                       show_jails();
-                       exit(0);
-               }
+       } else if (op == JF_STOP) {
                /* Jail remove, perhaps using the config file */
                if (!docf || argc == 0)
                        usage();
diff --git a/usr.sbin/jail/jailp.h b/usr.sbin/jail/jailp.h
index f371a92b82ec..c064da09d7a5 100644
--- a/usr.sbin/jail/jailp.h
+++ b/usr.sbin/jail/jailp.h
@@ -67,7 +67,6 @@
 #define JF_TIMEOUT     0x0200  /* A command (or process kill) timed out */
 #define JF_SLEEPQ      0x0400  /* Waiting on a command and/or timeout */
 #define JF_FROM_RUNQ   0x0800  /* Has already been on the run queue */
-#define JF_SHOW                0x1000  /* -e Exhibit list of configured jails 
*/
 
 #define JF_OP_MASK             (JF_START | JF_SET | JF_STOP)
 #define JF_RESTART             (JF_START | JF_STOP)

Reply via email to