make indent
authorRobert Swiecki <robert@swiecki.net>
Sun, 8 Oct 2017 21:00:45 +0000 (23:00 +0200)
committerRobert Swiecki <robert@swiecki.net>
Sun, 8 Oct 2017 21:00:45 +0000 (23:00 +0200)
34 files changed:
Makefile
caps.c
caps.h
cgroup.c
cgroup.h
cmdline.c
cmdline.h
common.h
config.cc
config.h
contain.c
contain.h
cpu.c
cpu.h
log.c
log.h
mount.c
mount.h
net.c
net.h
nsjail.c
nsjail.h
pid.c
pid.h
sandbox.c
sandbox.h
subproc.c
subproc.h
user.c
user.h
util.c
util.h
uts.c
uts.h

index a3d7fffb41a6a35310b3c062144754e2e98c1e97..71b69198245be9952dedf1abf550b85a6e65dcd5 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -92,7 +92,7 @@ depend:
        makedepend -Y -Ykafel/include -- -- $(SRCS_C) $(SRCS_CXX) $(SRCS_PB_CXX)
 
 indent:
-       clang-format --style=WebKit -i -sort-includes *.c *.h $(SRCS_CXX)
+       clang-format -style="{BasedOnStyle: webkit, IndentWidth: 8, UseTab: Always, IndentCaseLabels: false}" -i -sort-includes *.c *.h $(SRCS_CXX)
 
 # DO NOT DELETE THIS LINE -- make depend depends on it.
 
diff --git a/caps.c b/caps.c
index 82c23526cffdcbadb754ec007264fd79d2ff0143..b647d00c035a98748e9c958af6c7ed1fae5e1d4d 100644 (file)
--- a/caps.c
+++ b/caps.c
 #include "util.h"
 
 #define VALSTR_STRUCT(x) \
-    {                    \
-        x, #x            \
-    }
+       {                \
+               x, #x    \
+       }
 
 #if !defined(CAP_AUDIT_READ)
 #define CAP_AUDIT_READ 37
-#endif                         /* !defined(CAP_AUDIT_READ) */
+#endif /* !defined(CAP_AUDIT_READ) */
 
 // clang-format off
 static struct {
@@ -86,7 +86,7 @@ static struct {
 };
 // clang-format on
 
-int capsNameToVal(const char *name)
+int capsNameToVal(const charname)
 {
        for (size_t i = 0; i < ARRAYSIZE(capNames); i++) {
                if (strcmp(name, capNames[i].name) == 0) {
@@ -97,7 +97,7 @@ int capsNameToVal(const char *name)
        return -1;
 }
 
-static const char *capsValToStr(int val)
+static const charcapsValToStr(int val)
 {
        static __thread char capsStr[1024];
        for (size_t i = 0; i < ARRAYSIZE(capNames); i++) {
@@ -177,7 +177,7 @@ static void capsSetInheritable(cap_user_data_t cap_data, unsigned int cap)
 #define PR_CAP_AMBIENT 47
 #define PR_CAP_AMBIENT_RAISE 2
 #define PR_CAP_AMBIENT_CLEAR_ALL 4
-#endif                         /* !defined(PR_CAP_AMBIENT) */
+#endif /* !defined(PR_CAP_AMBIENT) */
 static bool CapsInitNsKeepCaps(cap_user_data_t cap_data)
 {
        char dbgmsg[4096];
@@ -203,7 +203,7 @@ static bool CapsInitNsKeepCaps(cap_user_data_t cap_data)
                        continue;
                }
                if (prctl(PR_CAP_AMBIENT, PR_CAP_AMBIENT_RAISE, (unsigned long)capNames[i].val, 0UL,
-                         0UL)
+                       0UL)
                    == -1) {
                        PLOG_W("prctl(PR_CAP_AMBIENT, PR_CAP_AMBIENT_RAISE, %s)", capNames[i].name);
                } else {
@@ -215,10 +215,10 @@ static bool CapsInitNsKeepCaps(cap_user_data_t cap_data)
        return true;
 }
 
-bool capsInitNs(struct nsjconf_t * nsjconf)
+bool capsInitNs(struct nsjconf_t* nsjconf)
 {
        char dbgmsg[4096];
-       struct ints_t *p;
+       struct ints_tp;
 
        cap_user_data_t cap_data = capsGet();
        if (cap_data == NULL) {
@@ -241,10 +241,11 @@ bool capsInitNs(struct nsjconf_t * nsjconf)
 
        /* Set all requested caps in the inheritable set if these are present in the permitted set */
        dbgmsg[0] = '\0';
-       TAILQ_FOREACH(p, &nsjconf->caps, pointers) {
+       TAILQ_FOREACH(p, &nsjconf->caps, pointers)
+       {
                if (capsGetPermitted(cap_data, p->val) == false) {
                        LOG_W("Capability %s is not permitted in the namespace",
-                             capsValToStr(p->val));
+                           capsValToStr(p->val));
                        return false;
                }
                utilSSnPrintf(dbgmsg, sizeof(dbgmsg), " %s", capsValToStr(p->val));
@@ -267,8 +268,7 @@ bool capsInitNs(struct nsjconf_t * nsjconf)
                                continue;
                        }
                        utilSSnPrintf(dbgmsg, sizeof(dbgmsg), " %s", capNames[i].name);
-                       if (prctl(PR_CAPBSET_DROP, (unsigned long)capNames[i].val, 0UL, 0UL, 0UL) ==
-                           -1) {
+                       if (prctl(PR_CAPBSET_DROP, (unsigned long)capNames[i].val, 0UL, 0UL, 0UL) == -1) {
                                PLOG_W("prctl(PR_CAPBSET_DROP, %s)", capNames[i].name);
                                return false;
                        }
@@ -278,11 +278,11 @@ bool capsInitNs(struct nsjconf_t * nsjconf)
 
        /* Make sure inheritable set is preserved across execve via the modified ambient set */
        dbgmsg[0] = '\0';
-       TAILQ_FOREACH(p, &nsjconf->caps, pointers) {
-               if (prctl(PR_CAP_AMBIENT, PR_CAP_AMBIENT_RAISE, (unsigned long)p->val, 0UL, 0UL) ==
-                   -1) {
+       TAILQ_FOREACH(p, &nsjconf->caps, pointers)
+       {
+               if (prctl(PR_CAP_AMBIENT, PR_CAP_AMBIENT_RAISE, (unsigned long)p->val, 0UL, 0UL) == -1) {
                        PLOG_W("prctl(PR_CAP_AMBIENT, PR_CAP_AMBIENT_RAISE, %s)",
-                              capsValToStr(p->val));
+                           capsValToStr(p->val));
                } else {
                        utilSSnPrintf(dbgmsg, sizeof(dbgmsg), " %s", capsValToStr(p->val));
                }
diff --git a/caps.h b/caps.h
index a268cb725b12dea17f41b760ab42b5772e6845b9..6c68687f7fc4631240d9f8e89e5439d07e872a1c 100644 (file)
--- a/caps.h
+++ b/caps.h
@@ -24,7 +24,7 @@
 
 #include "common.h"
 
-int capsNameToVal(const char *name);
-bool capsInitNs(struct nsjconf_t *nsjconf);
+int capsNameToVal(const charname);
+bool capsInitNs(struct nsjconf_tnsjconf);
 
-#endif                         /* NS_CAPS_H */
+#endif /* NS_CAPS_H */
index aeee42d87bbed7814cb2223c6925d20a6cea4512..9439c35e5ab01484f01b07ec9b22aa082e123d05 100644 (file)
--- a/cgroup.c
+++ b/cgroup.c
 #include "log.h"
 #include "util.h"
 
-static bool cgroupInitNsFromParentMem(struct nsjconf_t *nsjconf, pid_t pid)
+static bool cgroupInitNsFromParentMem(struct nsjconf_tnsjconf, pid_t pid)
 {
-       if (nsjconf->cgroup_mem_max == (size_t) 0) {
+       if (nsjconf->cgroup_mem_max == (size_t)0) {
                return true;
        }
 
        char mem_cgroup_path[PATH_MAX];
        snprintf(mem_cgroup_path, sizeof(mem_cgroup_path), "%s/%s/NSJAIL.%d",
-                nsjconf->cgroup_mem_mount, nsjconf->cgroup_mem_parent, (int)pid);
+           nsjconf->cgroup_mem_mount, nsjconf->cgroup_mem_parent, (int)pid);
        LOG_D("Create '%s' for PID=%d", mem_cgroup_path, (int)pid);
        if (mkdir(mem_cgroup_path, 0700) == -1 && errno != EEXIST) {
                PLOG_E("mkdir('%s', 0711) failed", mem_cgroup_path);
@@ -52,7 +52,7 @@ static bool cgroupInitNsFromParentMem(struct nsjconf_t *nsjconf, pid_t pid)
        }
 
        char fname[PATH_MAX];
-       if (nsjconf->cgroup_mem_max != (size_t) 0) {
+       if (nsjconf->cgroup_mem_max != (size_t)0) {
                char mem_max_str[512];
                snprintf(mem_max_str, sizeof(mem_max_str), "%zu", nsjconf->cgroup_mem_max);
                snprintf(fname, sizeof(fname), "%s/memory.limit_in_bytes", mem_cgroup_path);
@@ -85,15 +85,15 @@ static bool cgroupInitNsFromParentMem(struct nsjconf_t *nsjconf, pid_t pid)
        return true;
 }
 
-static bool cgroupInitNsFromParentPids(struct nsjconf_t *nsjconf, pid_t pid)
+static bool cgroupInitNsFromParentPids(struct nsjconf_tnsjconf, pid_t pid)
 {
-       if (nsjconf->cgroup_pids_max == (size_t) 0) {
+       if (nsjconf->cgroup_pids_max == (size_t)0) {
                return true;
        }
 
        char pids_cgroup_path[PATH_MAX];
        snprintf(pids_cgroup_path, sizeof(pids_cgroup_path), "%s/%s/NSJAIL.%d",
-                nsjconf->cgroup_pids_mount, nsjconf->cgroup_pids_parent, (int)pid);
+           nsjconf->cgroup_pids_mount, nsjconf->cgroup_pids_parent, (int)pid);
        LOG_D("Create '%s' for PID=%d", pids_cgroup_path, (int)pid);
        if (mkdir(pids_cgroup_path, 0700) == -1 && errno != EEXIST) {
                PLOG_E("mkdir('%s', 0711) failed", pids_cgroup_path);
@@ -101,13 +101,12 @@ static bool cgroupInitNsFromParentPids(struct nsjconf_t *nsjconf, pid_t pid)
        }
 
        char fname[PATH_MAX];
-       if (nsjconf->cgroup_pids_max != (size_t) 0) {
+       if (nsjconf->cgroup_pids_max != (size_t)0) {
                char pids_max_str[512];
                snprintf(pids_max_str, sizeof(pids_max_str), "%zu", nsjconf->cgroup_pids_max);
                snprintf(fname, sizeof(fname), "%s/pids.max", pids_cgroup_path);
                LOG_D("Setting '%s' to '%s'", fname, pids_max_str);
-               if (utilWriteBufToFile(fname, pids_max_str, strlen(pids_max_str), O_WRONLY) ==
-                   false) {
+               if (utilWriteBufToFile(fname, pids_max_str, strlen(pids_max_str), O_WRONLY) == false) {
                        LOG_E("Could not update pids cgroup max limit");
                        return false;
                }
@@ -125,7 +124,7 @@ static bool cgroupInitNsFromParentPids(struct nsjconf_t *nsjconf, pid_t pid)
        return true;
 }
 
-bool cgroupInitNsFromParent(struct nsjconf_t * nsjconf, pid_t pid)
+bool cgroupInitNsFromParent(struct nsjconf_t* nsjconf, pid_t pid)
 {
        if (cgroupInitNsFromParentMem(nsjconf, pid) == false) {
                return false;
@@ -136,14 +135,14 @@ bool cgroupInitNsFromParent(struct nsjconf_t * nsjconf, pid_t pid)
        return true;
 }
 
-void cgroupFinishFromParentMem(struct nsjconf_t *nsjconf, pid_t pid)
+void cgroupFinishFromParentMem(struct nsjconf_tnsjconf, pid_t pid)
 {
-       if (nsjconf->cgroup_mem_max == (size_t) 0) {
+       if (nsjconf->cgroup_mem_max == (size_t)0) {
                return;
        }
        char mem_cgroup_path[PATH_MAX];
        snprintf(mem_cgroup_path, sizeof(mem_cgroup_path), "%s/%s/NSJAIL.%d",
-                nsjconf->cgroup_mem_mount, nsjconf->cgroup_mem_parent, (int)pid);
+           nsjconf->cgroup_mem_mount, nsjconf->cgroup_mem_parent, (int)pid);
        LOG_D("Remove '%s'", mem_cgroup_path);
        if (rmdir(mem_cgroup_path) == -1) {
                PLOG_W("rmdir('%s') failed", mem_cgroup_path);
@@ -151,14 +150,14 @@ void cgroupFinishFromParentMem(struct nsjconf_t *nsjconf, pid_t pid)
        return;
 }
 
-void cgroupFinishFromParentPids(struct nsjconf_t *nsjconf, pid_t pid)
+void cgroupFinishFromParentPids(struct nsjconf_tnsjconf, pid_t pid)
 {
-       if (nsjconf->cgroup_pids_max == (size_t) 0) {
+       if (nsjconf->cgroup_pids_max == (size_t)0) {
                return;
        }
        char pids_cgroup_path[PATH_MAX];
        snprintf(pids_cgroup_path, sizeof(pids_cgroup_path), "%s/%s/NSJAIL.%d",
-                nsjconf->cgroup_pids_mount, nsjconf->cgroup_pids_parent, (int)pid);
+           nsjconf->cgroup_pids_mount, nsjconf->cgroup_pids_parent, (int)pid);
        LOG_D("Remove '%s'", pids_cgroup_path);
        if (rmdir(pids_cgroup_path) == -1) {
                PLOG_W("rmdir('%s') failed", pids_cgroup_path);
@@ -166,7 +165,7 @@ void cgroupFinishFromParentPids(struct nsjconf_t *nsjconf, pid_t pid)
        return;
 }
 
-void cgroupFinishFromParent(struct nsjconf_t *nsjconf, pid_t pid)
+void cgroupFinishFromParent(struct nsjconf_tnsjconf, pid_t pid)
 {
        cgroupFinishFromParentMem(nsjconf, pid);
        cgroupFinishFromParentPids(nsjconf, pid);
index 9a76e26e216a60a9e15c2a892b558e3ab4c32bbe..91aba86a814fac4eb91466bc9f7d0fe660053e22 100644 (file)
--- a/cgroup.h
+++ b/cgroup.h
@@ -27,8 +27,8 @@
 
 #include "common.h"
 
-bool cgroupInitNsFromParent(struct nsjconf_t *nsjconf, pid_t pid);
+bool cgroupInitNsFromParent(struct nsjconf_tnsjconf, pid_t pid);
 bool cgroupInitNs(void);
-void cgroupFinishFromParent(struct nsjconf_t *nsjconf, pid_t pid);
+void cgroupFinishFromParent(struct nsjconf_tnsjconf, pid_t pid);
 
-#endif                         /* _CGROUP_H */
+#endif /* _CGROUP_H */
index 5abcbc0215ea808ab19b81e76a0f0c2b2d63c5d7..13652362a78e51990a59e9ce9ff25039d5f282b5 100644 (file)
--- a/cmdline.c
+++ b/cmdline.c
@@ -50,7 +50,7 @@
 
 struct custom_option {
        struct option opt;
-       const char *descr;
+       const chardescr;
 };
 
 // clang-format off
@@ -140,24 +140,24 @@ struct custom_option deprecated_opts[] = {
 };
 // clang-format on
 
-static const char *logYesNo(bool yes)
+static const charlogYesNo(bool yes)
 {
        return (yes ? "true" : "false");
 }
 
-static void cmdlineOptUsage(struct custom_option *option)
+static void cmdlineOptUsage(struct custom_optionoption)
 {
        if (option->opt.val < 0x80) {
                LOG_HELP_BOLD(" --%s%s%c %s", option->opt.name, "|-", option->opt.val,
-                             option->opt.has_arg == required_argument ? "VALUE" : "");
+                   option->opt.has_arg == required_argument ? "VALUE" : "");
        } else {
                LOG_HELP_BOLD(" --%s %s", option->opt.name,
-                             option->opt.has_arg == required_argument ? "VALUE" : "");
+                   option->opt.has_arg == required_argument ? "VALUE" : "");
        }
        LOG_HELP("\t%s", option->descr);
 }
 
-static void cmdlineUsage(const char *pname)
+static void cmdlineUsage(const charpname)
 {
        LOG_HELP_BOLD("Usage: %s [options] -- path_to_command [args]", pname);
        LOG_HELP_BOLD("Options:");
@@ -171,7 +171,7 @@ static void cmdlineUsage(const char *pname)
                for (size_t j = 0; j < ARRAYSIZE(custom_opts); j++) {
                        if (custom_opts[j].opt.val == deprecated_opts[i].opt.val) {
                                LOG_HELP_BOLD("\tDEPRECATED: Use %s instead.",
-                                             custom_opts[j].opt.name);
+                                   custom_opts[j].opt.name);
                                break;
                        }
                }
@@ -187,7 +187,7 @@ static void cmdlineUsage(const char *pname)
        LOG_HELP_BOLD("  nsjail -Me --chroot / --disable_proc -- /bin/echo \"ABC\"");
 }
 
-void cmdlineLogParams(struct nsjconf_t *nsjconf)
+void cmdlineLogParams(struct nsjconf_tnsjconf)
 {
        switch (nsjconf->mode) {
        case MODE_LISTEN_TCP:
@@ -213,46 +213,47 @@ void cmdlineLogParams(struct nsjconf_t *nsjconf)
              "clone_newnet:%s, clone_newuser:%s, clone_newns:%s, clone_newpid:%s, "
              "clone_newipc:%s, clonew_newuts:%s, clone_newcgroup:%s, keep_caps:%s, "
              "tmpfs_size:%zu, disable_no_new_privs:%s, max_cpus:%zu",
-             nsjconf->hostname, nsjconf->chroot ? nsjconf->chroot : "[NULL]", nsjconf->argv[0],
-             nsjconf->bindhost, nsjconf->port, nsjconf->max_conns_per_ip, nsjconf->tlimit,
-             nsjconf->personality, logYesNo(nsjconf->daemonize), logYesNo(nsjconf->clone_newnet),
-             logYesNo(nsjconf->clone_newuser), logYesNo(nsjconf->clone_newns),
-             logYesNo(nsjconf->clone_newpid), logYesNo(nsjconf->clone_newipc),
-             logYesNo(nsjconf->clone_newuts), logYesNo(nsjconf->clone_newcgroup),
-             logYesNo(nsjconf->keep_caps), nsjconf->tmpfs_size,
-             logYesNo(nsjconf->disable_no_new_privs), nsjconf->max_cpus);
+           nsjconf->hostname, nsjconf->chroot ? nsjconf->chroot : "[NULL]", nsjconf->argv[0],
+           nsjconf->bindhost, nsjconf->port, nsjconf->max_conns_per_ip, nsjconf->tlimit,
+           nsjconf->personality, logYesNo(nsjconf->daemonize), logYesNo(nsjconf->clone_newnet),
+           logYesNo(nsjconf->clone_newuser), logYesNo(nsjconf->clone_newns),
+           logYesNo(nsjconf->clone_newpid), logYesNo(nsjconf->clone_newipc),
+           logYesNo(nsjconf->clone_newuts), logYesNo(nsjconf->clone_newcgroup),
+           logYesNo(nsjconf->keep_caps), nsjconf->tmpfs_size,
+           logYesNo(nsjconf->disable_no_new_privs), nsjconf->max_cpus);
 
        {
-               struct mounts_t *p;
-               TAILQ_FOREACH(p, &nsjconf->mountpts, pointers) {
+               struct mounts_t* p;
+               TAILQ_FOREACH(p, &nsjconf->mountpts, pointers)
+               {
                        LOG_I("%s: %s", p->isSymlink ? "Symlink" : "Mount point",
-                             mountDescribeMountPt(p));
+                           mountDescribeMountPt(p));
                }
        }
        {
-               struct idmap_t *p;
-               TAILQ_FOREACH(p, &nsjconf->uids, pointers) {
+               struct idmap_t* p;
+               TAILQ_FOREACH(p, &nsjconf->uids, pointers)
+               {
                        LOG_I("Uid map: inside_uid:%lu outside_uid:%lu count:%zu newuidmap:%s",
-                             (unsigned long)p->inside_id, (unsigned long)p->outside_id, p->count,
-                             p->is_newidmap ? "true" : "false");
+                           (unsigned long)p->inside_id, (unsigned long)p->outside_id, p->count,
+                           p->is_newidmap ? "true" : "false");
                        if (p->outside_id == 0 && nsjconf->clone_newuser) {
-                               LOG_W
-                                   ("Process will be UID/EUID=0 in the global user namespace, and will have user root-level access to files");
+                               LOG_W("Process will be UID/EUID=0 in the global user namespace, and will have user root-level access to files");
                        }
                }
-               TAILQ_FOREACH(p, &nsjconf->gids, pointers) {
+               TAILQ_FOREACH(p, &nsjconf->gids, pointers)
+               {
                        LOG_I("Gid map: inside_gid:%lu outside_gid:%lu count:%zu newgidmap:%s",
-                             (unsigned long)p->inside_id, (unsigned long)p->outside_id, p->count,
-                             p->is_newidmap ? "true" : "false");
+                           (unsigned long)p->inside_id, (unsigned long)p->outside_id, p->count,
+                           p->is_newidmap ? "true" : "false");
                        if (p->outside_id == 0 && nsjconf->clone_newuser) {
-                               LOG_W
-                                   ("Process will be GID/EGID=0 in the global user namespace, and will have group root-level access to files");
+                               LOG_W("Process will be GID/EGID=0 in the global user namespace, and will have group root-level access to files");
                        }
                }
        }
 }
 
-__rlim64_t cmdlineParseRLimit(int res, const char *optarg, unsigned long mul)
+__rlim64_t cmdlineParseRLimit(int res, const charoptarg, unsigned long mul)
 {
        if (strcasecmp(optarg, "inf") == 0) {
                return RLIM64_INFINITY;
@@ -268,9 +269,8 @@ __rlim64_t cmdlineParseRLimit(int res, const char *optarg, unsigned long mul)
                return cur.rlim_max;
        }
        if (utilIsANumber(optarg) == false) {
-               LOG_F
-                   ("RLIMIT %d needs a numeric or 'max'/'hard'/'def'/'soft'/'inf' value ('%s' provided)",
-                    res, optarg);
+               LOG_F("RLIMIT %d needs a numeric or 'max'/'hard'/'def'/'soft'/'inf' value ('%s' provided)",
+                   res, optarg);
        }
        __rlim64_t val = strtoull(optarg, NULL, 0) * mul;
        if (val == ULLONG_MAX && errno != 0) {
@@ -282,13 +282,13 @@ __rlim64_t cmdlineParseRLimit(int res, const char *optarg, unsigned long mul)
 /* findSpecDestination mutates spec (source:dest) to have a null byte instead
  * of ':' in between source and dest, then returns a pointer to the dest
  * string. */
-static char *cmdlineSplitStrByColon(char *spec)
+static char* cmdlineSplitStrByColon(char* spec)
 {
        if (spec == NULL) {
                return NULL;
        }
 
-       char *dest = spec;
+       chardest = spec;
        while (*dest != ':' && *dest != '\0') {
                dest++;
        }
@@ -305,9 +305,9 @@ static char *cmdlineSplitStrByColon(char *spec)
        }
 }
 
-bool cmdlineParse(int argc, char *argv[], struct nsjconf_t * nsjconf)
+bool cmdlineParse(int argc, char* argv[], struct nsjconf_t* nsjconf)
 {
-// clang-format off
+       // clang-format off
     (*nsjconf) = (const struct nsjconf_t){
         .exec_file = NULL,
         .hostname = "NSJAIL",
@@ -361,7 +361,7 @@ bool cmdlineParse(int argc, char *argv[], struct nsjconf_t * nsjconf)
         .kafel_string = NULL,
         .num_cpus = sysconf(_SC_NPROCESSORS_ONLN),
     };
-// clang-format on
+       // clang-format on
 
        TAILQ_INIT(&nsjconf->pids);
        TAILQ_INIT(&nsjconf->mountpts);
@@ -373,7 +373,7 @@ bool cmdlineParse(int argc, char *argv[], struct nsjconf_t * nsjconf)
 
        static char cmdlineTmpfsSz[PATH_MAX] = "size=4194304";
 
-       struct ints_t *f;
+       struct ints_tf;
        f = utilMalloc(sizeof(struct ints_t));
        f->val = STDIN_FILENO;
        TAILQ_INSERT_HEAD(&nsjconf->open_fds, f, pointers);
@@ -400,8 +400,8 @@ bool cmdlineParse(int argc, char *argv[], struct nsjconf_t * nsjconf)
        int opt_index = 0;
        for (;;) {
                int c = getopt_long(argc, argv,
-                                   "x:H:D:C:c:p:i:u:g:l:L:t:M:NdvqQeh?E:R:B:T:P:I:U:G:", opts,
-                                   &opt_index);
+                   "x:H:D:C:c:p:i:u:g:l:L:t:M:NdvqQeh?E:R:B:T:P:I:U:G:", opts,
+                   &opt_index);
                if (c == -1) {
                        break;
                }
@@ -472,7 +472,7 @@ bool cmdlineParse(int argc, char *argv[], struct nsjconf_t * nsjconf)
                case 't':
                        nsjconf->tlimit = strtol(optarg, NULL, 0);
                        break;
-               case 'h':       /* help */
+               case 'h': /* help */
                        cmdlineUsage(argv[0]);
                        exit(0);
                        break;
@@ -542,138 +542,134 @@ bool cmdlineParse(int argc, char *argv[], struct nsjconf_t * nsjconf)
                case 0x0504:
                        nsjconf->skip_setsid = true;
                        break;
-               case 0x0505:{
-                               struct ints_t *f;
-                               f = utilMalloc(sizeof(struct ints_t));
-                               f->val = (int)strtol(optarg, NULL, 0);
-                               TAILQ_INSERT_HEAD(&nsjconf->open_fds, f, pointers);
-                       } break;
+               case 0x0505: {
+                       struct ints_t* f;
+                       f = utilMalloc(sizeof(struct ints_t));
+                       f->val = (int)strtol(optarg, NULL, 0);
+                       TAILQ_INSERT_HEAD(&nsjconf->open_fds, f, pointers);
+               } break;
                case 0x0507:
                        nsjconf->disable_no_new_privs = true;
                        break;
                case 0x0508:
                        nsjconf->max_cpus = strtoul(optarg, NULL, 0);
                        break;
-               case 0x509:{
-                               struct ints_t *f = utilMalloc(sizeof(struct ints_t));
-                               f->val = capsNameToVal(optarg);
-                               if (f->val == -1) {
-                                       return false;
-                               }
-                               TAILQ_INSERT_HEAD(&nsjconf->caps, f, pointers);
+               case 0x509: {
+                       struct ints_t* f = utilMalloc(sizeof(struct ints_t));
+                       f->val = capsNameToVal(optarg);
+                       if (f->val == -1) {
+                               return false;
                        }
-                       break;
+                       TAILQ_INSERT_HEAD(&nsjconf->caps, f, pointers);
+               } break;
                case 0x0601:
                        nsjconf->is_root_rw = true;
                        break;
                case 0x0602:
                        nsjconf->tmpfs_size = strtoull(optarg, NULL, 0);
                        snprintf(cmdlineTmpfsSz, sizeof(cmdlineTmpfsSz), "size=%zu",
-                                nsjconf->tmpfs_size);
+                           nsjconf->tmpfs_size);
                        break;
                case 0x0603:
                        nsjconf->mount_proc = false;
                        break;
-               case 'E':{
-                               struct charptr_t *p = utilMalloc(sizeof(struct charptr_t));
-                               p->val = optarg;
-                               TAILQ_INSERT_TAIL(&nsjconf->envs, p, pointers);
-                       } break;
-               case 'u':{
-                               char *i_id = optarg;
-                               char *o_id = cmdlineSplitStrByColon(i_id);
-                               char *cnt = cmdlineSplitStrByColon(o_id);
-                               size_t count = (cnt == NULL || strlen(cnt) == 0)
-                                   ? 1U : (size_t) strtoull(cnt,
-                                                            NULL,
-                                                            0);
-                               if (userParseId(nsjconf, i_id, o_id, count, false /* is_gid */ ,
-                                               false /* is_newidmap */ )
-                                   == false) {
-                                       return false;
-                               }
+               case 'E': {
+                       struct charptr_t* p = utilMalloc(sizeof(struct charptr_t));
+                       p->val = optarg;
+                       TAILQ_INSERT_TAIL(&nsjconf->envs, p, pointers);
+               } break;
+               case 'u': {
+                       char* i_id = optarg;
+                       char* o_id = cmdlineSplitStrByColon(i_id);
+                       char* cnt = cmdlineSplitStrByColon(o_id);
+                       size_t count = (cnt == NULL || strlen(cnt) == 0)
+                           ? 1U
+                           : (size_t)strtoull(cnt,
+                                 NULL,
+                                 0);
+                       if (userParseId(nsjconf, i_id, o_id, count, false /* is_gid */,
+                               false /* is_newidmap */)
+                           == false) {
+                               return false;
                        }
-                       break;
-               case 'g':{
-                               char *i_id = optarg;
-                               char *o_id = cmdlineSplitStrByColon(i_id);
-                               char *cnt = cmdlineSplitStrByColon(o_id);
-                               size_t count = (cnt == NULL || strlen(cnt) == 0)
-                                   ? 1U : (size_t) strtoull(cnt,
-                                                            NULL,
-                                                            0);
-                               if (userParseId(nsjconf, i_id, o_id, count, true /* is_gid */ ,
-                                               false /* is_newidmap */ )
-                                   == false) {
-                                       return false;
-                               }
+               } break;
+               case 'g': {
+                       char* i_id = optarg;
+                       char* o_id = cmdlineSplitStrByColon(i_id);
+                       char* cnt = cmdlineSplitStrByColon(o_id);
+                       size_t count = (cnt == NULL || strlen(cnt) == 0)
+                           ? 1U
+                           : (size_t)strtoull(cnt,
+                                 NULL,
+                                 0);
+                       if (userParseId(nsjconf, i_id, o_id, count, true /* is_gid */,
+                               false /* is_newidmap */)
+                           == false) {
+                               return false;
                        }
-                       break;
-               case 'U':{
-                               char *i_id = optarg;
-                               char *o_id = cmdlineSplitStrByColon(i_id);
-                               char *cnt = cmdlineSplitStrByColon(o_id);
-                               size_t count = (cnt == NULL || strlen(cnt) == 0)
-                                   ? 1U : (size_t) strtoull(cnt,
-                                                            NULL,
-                                                            0);
-                               if (userParseId(nsjconf, i_id, o_id, count, false /* is_gid */ ,
-                                               true /* is_newidmap */ )
-                                   == false) {
-                                       return false;
-                               }
+               } break;
+               case 'U': {
+                       char* i_id = optarg;
+                       char* o_id = cmdlineSplitStrByColon(i_id);
+                       char* cnt = cmdlineSplitStrByColon(o_id);
+                       size_t count = (cnt == NULL || strlen(cnt) == 0)
+                           ? 1U
+                           : (size_t)strtoull(cnt,
+                                 NULL,
+                                 0);
+                       if (userParseId(nsjconf, i_id, o_id, count, false /* is_gid */,
+                               true /* is_newidmap */)
+                           == false) {
+                               return false;
                        }
-                       break;
-               case 'G':{
-                               char *i_id = optarg;
-                               char *o_id = cmdlineSplitStrByColon(i_id);
-                               char *cnt = cmdlineSplitStrByColon(o_id);
-                               size_t count = (cnt == NULL || strlen(cnt) == 0)
-                                   ? 1U : (size_t) strtoull(cnt,
-                                                            NULL,
-                                                            0);
-                               if (userParseId(nsjconf, i_id, o_id, count, true /* is_gid */ ,
-                                               true /* is_newidmap */ )
-                                   == false) {
-                                       return false;
-                               }
+               } break;
+               case 'G': {
+                       char* i_id = optarg;
+                       char* o_id = cmdlineSplitStrByColon(i_id);
+                       char* cnt = cmdlineSplitStrByColon(o_id);
+                       size_t count = (cnt == NULL || strlen(cnt) == 0)
+                           ? 1U
+                           : (size_t)strtoull(cnt,
+                                 NULL,
+                                 0);
+                       if (userParseId(nsjconf, i_id, o_id, count, true /* is_gid */,
+                               true /* is_newidmap */)
+                           == false) {
+                               return false;
                        }
-                       break;
-               case 'R':{
-                               const char *dst = cmdlineSplitStrByColon(optarg);
-                               dst = dst ? dst : optarg;
-                               if (!mountAddMountPtTail
-                                   (nsjconf, /* src= */ optarg, dst, /* fs_type= */ "",
-                                    /* options= */ "", MS_BIND | MS_REC | MS_RDONLY,
-                                    /* isDir= */
-                                    NS_DIR_MAYBE, /* mandatory= */ true, NULL, NULL, NULL, 0,
-                                    /* is_symlink= */ false)) {
-                                       return false;
-                               }
-                       };
-                       break;
-               case 'B':{
-                               const char *dst = cmdlineSplitStrByColon(optarg);
-                               dst = dst ? dst : optarg;
-                               if (!mountAddMountPtTail
-                                   (nsjconf, /* src= */ optarg, dst, /* fs_type= */ "",
-                                    /* options= */ "", MS_BIND | MS_REC, /* isDir= */ NS_DIR_MAYBE,
-                                    /* mandatory= */ true, NULL, NULL, NULL, 0,
-                                    /* is_symlink= */
-                                    false)) {
-                                       return false;
-                               }
-                       };
-                       break;
-               case 'T':{
-                               if (!mountAddMountPtTail
-                                   (nsjconf, /* src= */ NULL, optarg, "tmpfs", /* options= */ "",
-                                    /* flags= */ 0, /* isDir= */ true, /* mandatory= */ true, NULL,
-                                    NULL, NULL, 0, /* is_symlink= */ false)) {
-                                       return false;
-                               }
-                       };
-                       break;
+               } break;
+               case 'R': {
+                       const char* dst = cmdlineSplitStrByColon(optarg);
+                       dst = dst ? dst : optarg;
+                       if (!mountAddMountPtTail(nsjconf, /* src= */ optarg, dst, /* fs_type= */ "",
+                               /* options= */ "", MS_BIND | MS_REC | MS_RDONLY,
+                               /* isDir= */
+                               NS_DIR_MAYBE, /* mandatory= */ true, NULL, NULL, NULL, 0,
+                               /* is_symlink= */ false)) {
+                               return false;
+                       }
+               };
+                   break;
+               case 'B': {
+                       const char* dst = cmdlineSplitStrByColon(optarg);
+                       dst = dst ? dst : optarg;
+                       if (!mountAddMountPtTail(nsjconf, /* src= */ optarg, dst, /* fs_type= */ "",
+                               /* options= */ "", MS_BIND | MS_REC, /* isDir= */ NS_DIR_MAYBE,
+                               /* mandatory= */ true, NULL, NULL, NULL, 0,
+                               /* is_symlink= */
+                               false)) {
+                               return false;
+                       }
+               };
+                   break;
+               case 'T': {
+                       if (!mountAddMountPtTail(nsjconf, /* src= */ NULL, optarg, "tmpfs", /* options= */ "",
+                               /* flags= */ 0, /* isDir= */ true, /* mandatory= */ true, NULL,
+                               NULL, NULL, 0, /* is_symlink= */ false)) {
+                               return false;
+                       }
+               };
+                   break;
                case 'M':
                        switch (optarg[0]) {
                        case 'l':
@@ -714,7 +710,7 @@ bool cmdlineParse(int argc, char *argv[], struct nsjconf_t * nsjconf)
                        nsjconf->iface_vs_gw = optarg;
                        break;
                case 0x801:
-                       nsjconf->cgroup_mem_max = (size_t) strtoull(optarg, NULL, 0);
+                       nsjconf->cgroup_mem_max = (size_t)strtoull(optarg, NULL, 0);
                        break;
                case 0x802:
                        nsjconf->cgroup_mem_mount = optarg;
@@ -723,7 +719,7 @@ bool cmdlineParse(int argc, char *argv[], struct nsjconf_t * nsjconf)
                        nsjconf->cgroup_mem_parent = optarg;
                        break;
                case 0x811:
-                       nsjconf->cgroup_pids_max = (size_t) strtoull(optarg, NULL, 0);
+                       nsjconf->cgroup_pids_max = (size_t)strtoull(optarg, NULL, 0);
                        break;
                case 0x812:
                        nsjconf->cgroup_pids_mount = optarg;
@@ -748,31 +744,30 @@ bool cmdlineParse(int argc, char *argv[], struct nsjconf_t * nsjconf)
 
        if (nsjconf->mount_proc == true) {
                if (!mountAddMountPtHead(nsjconf, /* src= */ NULL, "/proc", "proc", "",
-                                        nsjconf->is_root_rw ? 0 : MS_RDONLY, /* isDir= */ true,
-                                        /* mandatory= */ true,
-                                        NULL, NULL, NULL, 0, /* is_symlink= */ false)) {
+                       nsjconf->is_root_rw ? 0 : MS_RDONLY, /* isDir= */ true,
+                       /* mandatory= */ true,
+                       NULL, NULL, NULL, 0, /* is_symlink= */ false)) {
                        return false;
                }
        }
        if (nsjconf->chroot != NULL) {
-               if (!mountAddMountPtHead
-                   (nsjconf, nsjconf->chroot, "/", /* fs_type= */ "", /* options= */ "",
-                    nsjconf->is_root_rw ? (MS_BIND | MS_REC) : (MS_BIND | MS_REC | MS_RDONLY),
-                    /* isDir= */ true, /* mandatory= */ true, NULL, NULL, NULL, 0,
-                    /* is_symlink= */ false)) {
+               if (!mountAddMountPtHead(nsjconf, nsjconf->chroot, "/", /* fs_type= */ "", /* options= */ "",
+                       nsjconf->is_root_rw ? (MS_BIND | MS_REC) : (MS_BIND | MS_REC | MS_RDONLY),
+                       /* isDir= */ true, /* mandatory= */ true, NULL, NULL, NULL, 0,
+                       /* is_symlink= */ false)) {
                        return false;
                }
        } else {
                if (!mountAddMountPtHead(nsjconf, /* src= */ NULL, "/", "tmpfs", /* options= */ "",
-                                        nsjconf->is_root_rw ? 0 : MS_RDONLY, /* isDir= */ true,
-                                        /* mandatory= */ true,
-                                        NULL, NULL, NULL, 0, /* is_symlink= */ false)) {
+                       nsjconf->is_root_rw ? 0 : MS_RDONLY, /* isDir= */ true,
+                       /* mandatory= */ true,
+                       NULL, NULL, NULL, 0, /* is_symlink= */ false)) {
                        return false;
                }
        }
 
        if (TAILQ_EMPTY(&nsjconf->uids)) {
-               struct idmap_t *p = utilMalloc(sizeof(struct idmap_t));
+               struct idmap_tp = utilMalloc(sizeof(struct idmap_t));
                p->inside_id = getuid();
                p->outside_id = getuid();
                p->count = 1U;
@@ -780,7 +775,7 @@ bool cmdlineParse(int argc, char *argv[], struct nsjconf_t * nsjconf)
                TAILQ_INSERT_HEAD(&nsjconf->uids, p, pointers);
        }
        if (TAILQ_EMPTY(&nsjconf->gids)) {
-               struct idmap_t *p = utilMalloc(sizeof(struct idmap_t));
+               struct idmap_tp = utilMalloc(sizeof(struct idmap_t));
                p->inside_id = getgid();
                p->outside_id = getgid();
                p->count = 1U;
@@ -793,7 +788,7 @@ bool cmdlineParse(int argc, char *argv[], struct nsjconf_t * nsjconf)
        }
 
        if (argv[optind]) {
-               nsjconf->argv = (const char **)&argv[optind];
+               nsjconf->argv = (const char**)&argv[optind];
        }
        if (nsjconf->argv == NULL || nsjconf->argv[0] == NULL) {
                cmdlineUsage(argv[0]);
index 51dc09a70ac9b9607e3ee6ef7fdb24d25f775cef..cf4d13791b28855daec187f997c8de975101d9e2 100644 (file)
--- a/cmdline.h
+++ b/cmdline.h
@@ -27,8 +27,8 @@
 
 #include "common.h"
 
-__rlim64_t cmdlineParseRLimit(int res, const char *optarg, unsigned long mul);
-void cmdlineLogParams(struct nsjconf_t *nsjconf);
-bool cmdlineParse(int argc, char *argv[], struct nsjconf_t *nsjconf);
+__rlim64_t cmdlineParseRLimit(int res, const charoptarg, unsigned long mul);
+void cmdlineLogParams(struct nsjconf_tnsjconf);
+bool cmdlineParse(int argc, char* argv[], struct nsjconf_t* nsjconf);
 
-#endif                         /* _CMDLINE_H */
+#endif /* _CMDLINE_H */
index bba57b1dd328185984c6058800b43ab6ec085e58..4bfe9f5c62399bd9e3caa7d05f0afd49f024c719 100644 (file)
--- a/common.h
+++ b/common.h
@@ -33,7 +33,7 @@
 #define ARRAYSIZE(array) (sizeof(array) / sizeof(*array))
 #define UNUSED __attribute__((unused))
 
-#if 0                          /* Works, but needs -fblocks and libBlocksRuntime with clang */
+#if 0 /* Works, but needs -fblocks and libBlocksRuntime with clang */
 /* Go-style defer implementation */
 #define __STRMERGE(a, b) a##b
 #define _STRMERGE(a, b) __STRMERGE(a, b)
@@ -47,10 +47,10 @@ static void __attribute__ ((unused)) __clang_cleanup_func(void (^*dfunc) (void))
 #define defer void (^_STRMERGE(__defer_f_, __COUNTER__))(void) __attribute__((cleanup(__clang_cleanup_func))) __attribute__((unused)) = ^
 #else
 #define __block
-#define _DEFER(a, count)                                                                                               \
-    auto void _STRMERGE(__defer_f_, count)(void* _defer_arg __attribute__((unused)));                                  \
-    int _STRMERGE(__defer_var_, count) __attribute__((cleanup(_STRMERGE(__defer_f_, count)))) __attribute__((unused)); \
-    void _STRMERGE(__defer_f_, count)(void* _defer_arg __attribute__((unused)))
+#define _DEFER(a, count)                                                                                                   \
+       auto void _STRMERGE(__defer_f_, count)(void* _defer_arg __attribute__((unused)));                                  \
+       int _STRMERGE(__defer_var_, count) __attribute__((cleanup(_STRMERGE(__defer_f_, count)))) __attribute__((unused)); \
+       void _STRMERGE(__defer_f_, count)(void* _defer_arg __attribute__((unused)))
 #define defer _DEFER(a, __COUNTER__)
 #endif
 #endif
@@ -61,24 +61,24 @@ struct pids_t {
        char remote_txt[64];
        struct sockaddr_in6 remote_addr;
        int pid_syscall_fd;
-        TAILQ_ENTRY(pids_t)
-        pointers;
+       TAILQ_ENTRY(pids_t)
+       pointers;
 };
 
 struct mounts_t {
-       const char *src;
-       const uint8_t *src_content;
+       const charsrc;
+       const uint8_tsrc_content;
        size_t src_content_len;
-       const char *dst;
-       const char *fs_type;
-       const char *options;
+       const chardst;
+       const charfs_type;
+       const charoptions;
        uintptr_t flags;
        bool isDir;
        bool isSymlink;
        bool mandatory;
        bool mounted;
-        TAILQ_ENTRY(mounts_t)
-        pointers;
+       TAILQ_ENTRY(mounts_t)
+       pointers;
 };
 
 struct idmap_t {
@@ -86,14 +86,14 @@ struct idmap_t {
        uid_t outside_id;
        size_t count;
        bool is_newidmap;
-        TAILQ_ENTRY(idmap_t)
-        pointers;
+       TAILQ_ENTRY(idmap_t)
+       pointers;
 };
 
 struct ints_t {
        int val;
-        TAILQ_ENTRY(ints_t)
-        pointers;
+       TAILQ_ENTRY(ints_t)
+       pointers;
 };
 
 enum ns_mode_t {
@@ -104,9 +104,9 @@ enum ns_mode_t {
 };
 
 struct charptr_t {
-       const char *val;
-        TAILQ_ENTRY(charptr_t)
-        pointers;
+       const charval;
+       TAILQ_ENTRY(charptr_t)
+       pointers;
 };
 
 enum llevel_t {
@@ -120,14 +120,14 @@ enum llevel_t {
 };
 
 struct nsjconf_t {
-       const char *exec_file;
-       const char *hostname;
-       const char *cwd;
-       const char **argv;
+       const charexec_file;
+       const charhostname;
+       const charcwd;
+       const char** argv;
        int port;
-       const char *bindhost;
+       const charbindhost;
        int log_fd;
-       const char *logfile;
+       const charlogfile;
        enum llevel_t loglevel;
        bool daemonize;
        time_t tlimit;
@@ -151,7 +151,7 @@ struct nsjconf_t {
        bool clone_newuts;
        bool clone_newcgroup;
        enum ns_mode_t mode;
-       const char *chroot;
+       const charchroot;
        bool is_root_rw;
        bool is_silent;
        bool skip_setsid;
@@ -159,34 +159,34 @@ struct nsjconf_t {
        size_t tmpfs_size;
        bool mount_proc;
        bool iface_no_lo;
-       const char *iface_vs;
-       const char *iface_vs_ip;
-       const char *iface_vs_nm;
-       const char *iface_vs_gw;
-       const char *cgroup_mem_mount;
-       const char *cgroup_mem_parent;
+       const chariface_vs;
+       const chariface_vs_ip;
+       const chariface_vs_nm;
+       const chariface_vs_gw;
+       const charcgroup_mem_mount;
+       const charcgroup_mem_parent;
        size_t cgroup_mem_max;
-       const char *cgroup_pids_mount;
-       const char *cgroup_pids_parent;
+       const charcgroup_pids_mount;
+       const charcgroup_pids_parent;
        size_t cgroup_pids_max;
-       FILE *kafel_file;
-       char *kafel_string;
+       FILEkafel_file;
+       charkafel_string;
        uid_t orig_euid;
        long num_cpus;
-        TAILQ_HEAD(udmaplist, idmap_t)
-        uids;
-        TAILQ_HEAD(gdmaplist, idmap_t)
-        gids;
-        TAILQ_HEAD(envlist, charptr_t)
-        envs;
-        TAILQ_HEAD(pidslist, pids_t)
-        pids;
-        TAILQ_HEAD(mountptslist, mounts_t)
-        mountpts;
-        TAILQ_HEAD(fdslistt, ints_t)
-        open_fds;
-        TAILQ_HEAD(capslistt, ints_t)
-        caps;
+       TAILQ_HEAD(udmaplist, idmap_t)
+       uids;
+       TAILQ_HEAD(gdmaplist, idmap_t)
+       gids;
+       TAILQ_HEAD(envlist, charptr_t)
+       envs;
+       TAILQ_HEAD(pidslist, pids_t)
+       pids;
+       TAILQ_HEAD(mountptslist, mounts_t)
+       mountpts;
+       TAILQ_HEAD(fdslistt, ints_t)
+       open_fds;
+       TAILQ_HEAD(capslistt, ints_t)
+       caps;
 };
 
-#endif                         /* NS_COMMON_H */
+#endif /* NS_COMMON_H */
index 7097165b791c5962b5d326f60c81f52ad80136e3..23e826b2b09e4a3ac32abf4bad441cc4b252428f 100644 (file)
--- a/config.cc
+++ b/config.cc
@@ -50,276 +50,276 @@ extern "C" {
 
 static __rlim64_t configRLimit(int res, const nsjail::RLimit& rl, const uint64_t val, unsigned long mul = 1UL)
 {
-    if (rl == nsjail::RLimit::VALUE) {
-        return (val * mul);
-    }
-    if (rl == nsjail::RLimit::SOFT) {
-        return cmdlineParseRLimit(res, "soft", mul);
-    }
-    if (rl == nsjail::RLimit::HARD) {
-        return cmdlineParseRLimit(res, "hard", mul);
-    }
-    if (rl == nsjail::RLimit::INF) {
-        return RLIM64_INFINITY;
-    }
-    LOG_F("Unknown rlimit value type for rlimit:%d", res);
-    abort();
+       if (rl == nsjail::RLimit::VALUE) {
+               return (val * mul);
+       }
+       if (rl == nsjail::RLimit::SOFT) {
+               return cmdlineParseRLimit(res, "soft", mul);
+       }
+       if (rl == nsjail::RLimit::HARD) {
+               return cmdlineParseRLimit(res, "hard", mul);
+       }
+       if (rl == nsjail::RLimit::INF) {
+               return RLIM64_INFINITY;
+       }
+       LOG_F("Unknown rlimit value type for rlimit:%d", res);
+       abort();
 }
 
 static bool configParseInternal(struct nsjconf_t* nsjconf,
     const nsjail::NsJailConfig& njc)
 {
-    switch (njc.mode()) {
-    case nsjail::Mode::LISTEN:
-        nsjconf->mode = MODE_LISTEN_TCP;
-        break;
-    case nsjail::Mode::ONCE:
-        nsjconf->mode = MODE_STANDALONE_ONCE;
-        break;
-    case nsjail::Mode::RERUN:
-        nsjconf->mode = MODE_STANDALONE_RERUN;
-        break;
-    case nsjail::Mode::EXECVE:
-        nsjconf->mode = MODE_STANDALONE_EXECVE;
-        break;
-    default:
-        LOG_E("Uknown running mode: %d", njc.mode());
-        return false;
-    }
-    nsjconf->chroot = DUP_IF_SET(njc, chroot_dir);
-    nsjconf->is_root_rw = njc.is_root_rw();
-    nsjconf->hostname = njc.hostname().c_str();
-    nsjconf->cwd = njc.cwd().c_str();
-    nsjconf->port = njc.port();
-    nsjconf->bindhost = njc.bindhost().c_str();
-    nsjconf->max_conns_per_ip = njc.max_conns_per_ip();
-    nsjconf->tlimit = njc.time_limit();
-    nsjconf->max_cpus = njc.max_cpus();
-    nsjconf->daemonize = njc.daemon();
-
-    if (njc.has_log_fd()) {
-        nsjconf->log_fd = njc.log_fd();
-    }
-    nsjconf->logfile = DUP_IF_SET(njc, log_file);
-    if (njc.has_log_level()) {
-        switch (njc.log_level()) {
-        case nsjail::LogLevel::DEBUG:
-            nsjconf->loglevel = DEBUG;
-            break;
-        case nsjail::LogLevel::INFO:
-            nsjconf->loglevel = INFO;
-            break;
-        case nsjail::LogLevel::WARNING:
-            nsjconf->loglevel = WARNING;
-            break;
-        case nsjail::LogLevel::ERROR:
-            nsjconf->loglevel = ERROR;
-            break;
-        case nsjail::LogLevel::FATAL:
-            nsjconf->loglevel = FATAL;
-            break;
-        default:
-            LOG_E("Unknown log_level: %d", njc.log_level());
-            return false;
-        }
-    }
-
-    if (njc.has_log_fd() || njc.has_log_file() || njc.has_log_level()) {
-        if (logInitLogFile(nsjconf) == false) {
-            return false;
-        }
-    }
-
-    nsjconf->keep_env = njc.keep_env();
-    for (ssize_t i = 0; i < njc.envar_size(); i++) {
-        struct charptr_t* p = reinterpret_cast<charptr_t*>(utilMalloc(sizeof(struct charptr_t)));
-        p->val = njc.envar(i).c_str();
-        TAILQ_INSERT_TAIL(&nsjconf->envs, p, pointers);
-    }
-
-    nsjconf->keep_caps = njc.keep_caps();
-    for (ssize_t i = 0; i < njc.cap_size(); i++) {
-        struct ints_t* f = reinterpret_cast<struct ints_t*>(utilMalloc(sizeof(struct ints_t)));
-        f->val = capsNameToVal(njc.cap(i).c_str());
-        if (f->val == -1) {
-            return false;
-        }
-        TAILQ_INSERT_HEAD(&nsjconf->caps, f, pointers);
-    }
-
-    nsjconf->is_silent = njc.silent();
-    nsjconf->skip_setsid = njc.skip_setsid();
-
-    for (ssize_t i = 0; i < njc.pass_fd_size(); i++) {
-        struct ints_t* f = reinterpret_cast<struct ints_t*>(utilMalloc(sizeof(struct ints_t)));
-        f->val = njc.pass_fd(i);
-        TAILQ_INSERT_HEAD(&nsjconf->open_fds, f, pointers);
-    }
-
-    nsjconf->disable_no_new_privs = njc.disable_no_new_privs();
-
-    nsjconf->rl_as = configRLimit(RLIMIT_AS, njc.rlimit_as_type(), njc.rlimit_as(), 1024UL * 1024UL);
-    nsjconf->rl_core = configRLimit(RLIMIT_CORE, njc.rlimit_core_type(), njc.rlimit_core(), 1024UL * 1024UL);
-    nsjconf->rl_cpu = configRLimit(RLIMIT_CPU, njc.rlimit_cpu_type(), njc.rlimit_cpu());
-    nsjconf->rl_fsize = configRLimit(RLIMIT_FSIZE, njc.rlimit_fsize_type(), njc.rlimit_fsize(), 1024UL * 1024UL);
-    nsjconf->rl_nofile = configRLimit(RLIMIT_NOFILE, njc.rlimit_nofile_type(), njc.rlimit_nofile());
-    nsjconf->rl_nproc = configRLimit(RLIMIT_NPROC, njc.rlimit_nproc_type(), njc.rlimit_nproc());
-    nsjconf->rl_stack = configRLimit(RLIMIT_STACK, njc.rlimit_stack_type(), njc.rlimit_stack(), 1024UL * 1024UL);
-
-    if (njc.persona_addr_compat_layout()) {
-        nsjconf->personality |= ADDR_COMPAT_LAYOUT;
-    }
-    if (njc.persona_mmap_page_zero()) {
-        nsjconf->personality |= MMAP_PAGE_ZERO;
-    }
-    if (njc.persona_read_implies_exec()) {
-        nsjconf->personality |= READ_IMPLIES_EXEC;
-    }
-    if (njc.persona_addr_limit_3gb()) {
-        nsjconf->personality |= ADDR_LIMIT_3GB;
-    }
-    if (njc.persona_addr_no_randomize()) {
-        nsjconf->personality |= ADDR_NO_RANDOMIZE;
-    }
-
-    nsjconf->clone_newnet = njc.clone_newnet();
-    nsjconf->clone_newuser = njc.clone_newuser();
-    nsjconf->clone_newns = njc.clone_newns();
-    nsjconf->clone_newpid = njc.clone_newpid();
-    nsjconf->clone_newipc = njc.clone_newipc();
-    nsjconf->clone_newuts = njc.clone_newuts();
-    nsjconf->clone_newcgroup = njc.clone_newcgroup();
-
-    for (ssize_t i = 0; i < njc.uidmap_size(); i++) {
-        if (userParseId(nsjconf, DUP_IF_SET(njc.uidmap(i), inside_id), DUP_IF_SET(njc.uidmap(i), outside_id),
-                njc.uidmap(i).count(), false /* is_gid */,
-                njc.uidmap(i).use_newidmap())
-            == false) {
-            return false;
-        }
-    }
-    for (ssize_t i = 0; i < njc.gidmap_size(); i++) {
-        if (userParseId(nsjconf, DUP_IF_SET(njc.gidmap(i), inside_id), DUP_IF_SET(njc.gidmap(i), outside_id),
-                njc.gidmap(i).count(), true /* is_gid */,
-                njc.gidmap(i).use_newidmap())
-            == false) {
-            return false;
-        }
-    }
-
-    nsjconf->mount_proc = njc.mount_proc();
-    for (ssize_t i = 0; i < njc.mount_size(); i++) {
-        const char* src = (njc.mount(i).has_src()) ? njc.mount(i).src().c_str() : NULL;
-        const char* src_env = (njc.mount(i).has_prefix_src_env()) ? njc.mount(i).prefix_src_env().c_str() : NULL;
-        const char* dst = (njc.mount(i).has_dst()) ? njc.mount(i).dst().c_str() : NULL;
-        const char* dst_env = (njc.mount(i).has_prefix_dst_env()) ? njc.mount(i).prefix_dst_env().c_str() : NULL;
-        const char* fstype = (njc.mount(i).has_fstype()) ? njc.mount(i).fstype().c_str() : NULL;
-        const char* options = (njc.mount(i).has_options()) ? njc.mount(i).options().c_str() : NULL;
-
-        uintptr_t flags = (njc.mount(i).rw() == false) ? MS_RDONLY : 0;
-        flags |= njc.mount(i).is_bind() ? (MS_BIND | MS_REC) : 0;
-        bool mandatory = njc.mount(i).mandatory();
-
-        isDir_t isDir = NS_DIR_MAYBE;
-        if (njc.mount(i).has_is_dir()) {
-            isDir = njc.mount(i).is_dir() ? NS_DIR_YES : NS_DIR_NO;
-        }
-
-        const char* src_content = NULL;
-        size_t src_content_len = 0;
-        if (njc.mount(i).has_src_content()) {
-            src_content = njc.mount(i).src_content().data();
-            src_content_len = njc.mount(i).src_content().size();
-        }
-
-        if (mountAddMountPtTail(nsjconf, src, dst, fstype, options, flags, isDir,
-                mandatory, src_env, dst_env, src_content,
-                src_content_len, njc.mount(i).is_symlink())
-            == false) {
-            LOG_E("Couldn't add mountpoint for src:'%s' dst:'%s'", src, dst);
-            return false;
-        }
-    }
-
-    if (njc.has_seccomp_policy_file()) {
-        if ((nsjconf->kafel_file = fopen(njc.seccomp_policy_file().c_str(), "rb")) == NULL) {
-            PLOG_W("Couldn't open file with seccomp policy '%s'",
-                njc.seccomp_policy_file().c_str());
-            return false;
-        }
-    }
-
-    std::string kafel_string;
-    for (ssize_t i = 0; i < njc.seccomp_string().size(); i++) {
-        kafel_string += njc.seccomp_string(i);
-    }
-    nsjconf->kafel_string = njc.seccomp_string().size() > 0
-        ? utilStrDup(kafel_string.c_str())
-        : NULL;
-
-    nsjconf->cgroup_mem_max = njc.cgroup_mem_max();
-    nsjconf->cgroup_mem_mount = njc.cgroup_mem_mount().c_str();
-    nsjconf->cgroup_mem_parent = njc.cgroup_mem_parent().c_str();
-    nsjconf->cgroup_pids_max = njc.cgroup_pids_max();
-    nsjconf->cgroup_pids_mount = njc.cgroup_pids_mount().c_str();
-    nsjconf->cgroup_pids_parent = njc.cgroup_pids_parent().c_str();
-
-    nsjconf->iface_no_lo = njc.iface_no_lo();
-    nsjconf->iface_vs = DUP_IF_SET(njc, macvlan_iface);
-    nsjconf->iface_vs_ip = njc.macvlan_vs_ip().c_str();
-    nsjconf->iface_vs_nm = njc.macvlan_vs_nm().c_str();
-    nsjconf->iface_vs_gw = njc.macvlan_vs_gw().c_str();
-
-    if (njc.has_exec_bin()) {
-        static std::vector<const char*> argv;
-        if (njc.exec_bin().has_arg0()) {
-            argv.push_back(njc.exec_bin().arg0().c_str());
-        } else {
-            argv.push_back(njc.exec_bin().path().c_str());
-        }
-        for (ssize_t i = 0; i < njc.exec_bin().arg().size(); i++) {
-            argv.push_back(njc.exec_bin().arg(i).c_str());
-        }
-        argv.push_back(nullptr);
-        nsjconf->exec_file = DUP_IF_SET(njc.exec_bin(), path);
-        nsjconf->argv = argv.data();
-    }
-
-    return true;
+       switch (njc.mode()) {
+       case nsjail::Mode::LISTEN:
+               nsjconf->mode = MODE_LISTEN_TCP;
+               break;
+       case nsjail::Mode::ONCE:
+               nsjconf->mode = MODE_STANDALONE_ONCE;
+               break;
+       case nsjail::Mode::RERUN:
+               nsjconf->mode = MODE_STANDALONE_RERUN;
+               break;
+       case nsjail::Mode::EXECVE:
+               nsjconf->mode = MODE_STANDALONE_EXECVE;
+               break;
+       default:
+               LOG_E("Uknown running mode: %d", njc.mode());
+               return false;
+       }
+       nsjconf->chroot = DUP_IF_SET(njc, chroot_dir);
+       nsjconf->is_root_rw = njc.is_root_rw();
+       nsjconf->hostname = njc.hostname().c_str();
+       nsjconf->cwd = njc.cwd().c_str();
+       nsjconf->port = njc.port();
+       nsjconf->bindhost = njc.bindhost().c_str();
+       nsjconf->max_conns_per_ip = njc.max_conns_per_ip();
+       nsjconf->tlimit = njc.time_limit();
+       nsjconf->max_cpus = njc.max_cpus();
+       nsjconf->daemonize = njc.daemon();
+
+       if (njc.has_log_fd()) {
+               nsjconf->log_fd = njc.log_fd();
+       }
+       nsjconf->logfile = DUP_IF_SET(njc, log_file);
+       if (njc.has_log_level()) {
+               switch (njc.log_level()) {
+               case nsjail::LogLevel::DEBUG:
+                       nsjconf->loglevel = DEBUG;
+                       break;
+               case nsjail::LogLevel::INFO:
+                       nsjconf->loglevel = INFO;
+                       break;
+               case nsjail::LogLevel::WARNING:
+                       nsjconf->loglevel = WARNING;
+                       break;
+               case nsjail::LogLevel::ERROR:
+                       nsjconf->loglevel = ERROR;
+                       break;
+               case nsjail::LogLevel::FATAL:
+                       nsjconf->loglevel = FATAL;
+                       break;
+               default:
+                       LOG_E("Unknown log_level: %d", njc.log_level());
+                       return false;
+               }
+       }
+
+       if (njc.has_log_fd() || njc.has_log_file() || njc.has_log_level()) {
+               if (logInitLogFile(nsjconf) == false) {
+                       return false;
+               }
+       }
+
+       nsjconf->keep_env = njc.keep_env();
+       for (ssize_t i = 0; i < njc.envar_size(); i++) {
+               struct charptr_t* p = reinterpret_cast<charptr_t*>(utilMalloc(sizeof(struct charptr_t)));
+               p->val = njc.envar(i).c_str();
+               TAILQ_INSERT_TAIL(&nsjconf->envs, p, pointers);
+       }
+
+       nsjconf->keep_caps = njc.keep_caps();
+       for (ssize_t i = 0; i < njc.cap_size(); i++) {
+               struct ints_t* f = reinterpret_cast<struct ints_t*>(utilMalloc(sizeof(struct ints_t)));
+               f->val = capsNameToVal(njc.cap(i).c_str());
+               if (f->val == -1) {
+                       return false;
+               }
+               TAILQ_INSERT_HEAD(&nsjconf->caps, f, pointers);
+       }
+
+       nsjconf->is_silent = njc.silent();
+       nsjconf->skip_setsid = njc.skip_setsid();
+
+       for (ssize_t i = 0; i < njc.pass_fd_size(); i++) {
+               struct ints_t* f = reinterpret_cast<struct ints_t*>(utilMalloc(sizeof(struct ints_t)));
+               f->val = njc.pass_fd(i);
+               TAILQ_INSERT_HEAD(&nsjconf->open_fds, f, pointers);
+       }
+
+       nsjconf->disable_no_new_privs = njc.disable_no_new_privs();
+
+       nsjconf->rl_as = configRLimit(RLIMIT_AS, njc.rlimit_as_type(), njc.rlimit_as(), 1024UL * 1024UL);
+       nsjconf->rl_core = configRLimit(RLIMIT_CORE, njc.rlimit_core_type(), njc.rlimit_core(), 1024UL * 1024UL);
+       nsjconf->rl_cpu = configRLimit(RLIMIT_CPU, njc.rlimit_cpu_type(), njc.rlimit_cpu());
+       nsjconf->rl_fsize = configRLimit(RLIMIT_FSIZE, njc.rlimit_fsize_type(), njc.rlimit_fsize(), 1024UL * 1024UL);
+       nsjconf->rl_nofile = configRLimit(RLIMIT_NOFILE, njc.rlimit_nofile_type(), njc.rlimit_nofile());
+       nsjconf->rl_nproc = configRLimit(RLIMIT_NPROC, njc.rlimit_nproc_type(), njc.rlimit_nproc());
+       nsjconf->rl_stack = configRLimit(RLIMIT_STACK, njc.rlimit_stack_type(), njc.rlimit_stack(), 1024UL * 1024UL);
+
+       if (njc.persona_addr_compat_layout()) {
+               nsjconf->personality |= ADDR_COMPAT_LAYOUT;
+       }
+       if (njc.persona_mmap_page_zero()) {
+               nsjconf->personality |= MMAP_PAGE_ZERO;
+       }
+       if (njc.persona_read_implies_exec()) {
+               nsjconf->personality |= READ_IMPLIES_EXEC;
+       }
+       if (njc.persona_addr_limit_3gb()) {
+               nsjconf->personality |= ADDR_LIMIT_3GB;
+       }
+       if (njc.persona_addr_no_randomize()) {
+               nsjconf->personality |= ADDR_NO_RANDOMIZE;
+       }
+
+       nsjconf->clone_newnet = njc.clone_newnet();
+       nsjconf->clone_newuser = njc.clone_newuser();
+       nsjconf->clone_newns = njc.clone_newns();
+       nsjconf->clone_newpid = njc.clone_newpid();
+       nsjconf->clone_newipc = njc.clone_newipc();
+       nsjconf->clone_newuts = njc.clone_newuts();
+       nsjconf->clone_newcgroup = njc.clone_newcgroup();
+
+       for (ssize_t i = 0; i < njc.uidmap_size(); i++) {
+               if (userParseId(nsjconf, DUP_IF_SET(njc.uidmap(i), inside_id), DUP_IF_SET(njc.uidmap(i), outside_id),
+                       njc.uidmap(i).count(), false /* is_gid */,
+                       njc.uidmap(i).use_newidmap())
+                   == false) {
+                       return false;
+               }
+       }
+       for (ssize_t i = 0; i < njc.gidmap_size(); i++) {
+               if (userParseId(nsjconf, DUP_IF_SET(njc.gidmap(i), inside_id), DUP_IF_SET(njc.gidmap(i), outside_id),
+                       njc.gidmap(i).count(), true /* is_gid */,
+                       njc.gidmap(i).use_newidmap())
+                   == false) {
+                       return false;
+               }
+       }
+
+       nsjconf->mount_proc = njc.mount_proc();
+       for (ssize_t i = 0; i < njc.mount_size(); i++) {
+               const char* src = (njc.mount(i).has_src()) ? njc.mount(i).src().c_str() : NULL;
+               const char* src_env = (njc.mount(i).has_prefix_src_env()) ? njc.mount(i).prefix_src_env().c_str() : NULL;
+               const char* dst = (njc.mount(i).has_dst()) ? njc.mount(i).dst().c_str() : NULL;
+               const char* dst_env = (njc.mount(i).has_prefix_dst_env()) ? njc.mount(i).prefix_dst_env().c_str() : NULL;
+               const char* fstype = (njc.mount(i).has_fstype()) ? njc.mount(i).fstype().c_str() : NULL;
+               const char* options = (njc.mount(i).has_options()) ? njc.mount(i).options().c_str() : NULL;
+
+               uintptr_t flags = (njc.mount(i).rw() == false) ? MS_RDONLY : 0;
+               flags |= njc.mount(i).is_bind() ? (MS_BIND | MS_REC) : 0;
+               bool mandatory = njc.mount(i).mandatory();
+
+               isDir_t isDir = NS_DIR_MAYBE;
+               if (njc.mount(i).has_is_dir()) {
+                       isDir = njc.mount(i).is_dir() ? NS_DIR_YES : NS_DIR_NO;
+               }
+
+               const char* src_content = NULL;
+               size_t src_content_len = 0;
+               if (njc.mount(i).has_src_content()) {
+                       src_content = njc.mount(i).src_content().data();
+                       src_content_len = njc.mount(i).src_content().size();
+               }
+
+               if (mountAddMountPtTail(nsjconf, src, dst, fstype, options, flags, isDir,
+                       mandatory, src_env, dst_env, src_content,
+                       src_content_len, njc.mount(i).is_symlink())
+                   == false) {
+                       LOG_E("Couldn't add mountpoint for src:'%s' dst:'%s'", src, dst);
+                       return false;
+               }
+       }
+
+       if (njc.has_seccomp_policy_file()) {
+               if ((nsjconf->kafel_file = fopen(njc.seccomp_policy_file().c_str(), "rb")) == NULL) {
+                       PLOG_W("Couldn't open file with seccomp policy '%s'",
+                           njc.seccomp_policy_file().c_str());
+                       return false;
+               }
+       }
+
+       std::string kafel_string;
+       for (ssize_t i = 0; i < njc.seccomp_string().size(); i++) {
+               kafel_string += njc.seccomp_string(i);
+       }
+       nsjconf->kafel_string = njc.seccomp_string().size() > 0
+           ? utilStrDup(kafel_string.c_str())
+           : NULL;
+
+       nsjconf->cgroup_mem_max = njc.cgroup_mem_max();
+       nsjconf->cgroup_mem_mount = njc.cgroup_mem_mount().c_str();
+       nsjconf->cgroup_mem_parent = njc.cgroup_mem_parent().c_str();
+       nsjconf->cgroup_pids_max = njc.cgroup_pids_max();
+       nsjconf->cgroup_pids_mount = njc.cgroup_pids_mount().c_str();
+       nsjconf->cgroup_pids_parent = njc.cgroup_pids_parent().c_str();
+
+       nsjconf->iface_no_lo = njc.iface_no_lo();
+       nsjconf->iface_vs = DUP_IF_SET(njc, macvlan_iface);
+       nsjconf->iface_vs_ip = njc.macvlan_vs_ip().c_str();
+       nsjconf->iface_vs_nm = njc.macvlan_vs_nm().c_str();
+       nsjconf->iface_vs_gw = njc.macvlan_vs_gw().c_str();
+
+       if (njc.has_exec_bin()) {
+               static std::vector<const char*> argv;
+               if (njc.exec_bin().has_arg0()) {
+                       argv.push_back(njc.exec_bin().arg0().c_str());
+               } else {
+                       argv.push_back(njc.exec_bin().path().c_str());
+               }
+               for (ssize_t i = 0; i < njc.exec_bin().arg().size(); i++) {
+                       argv.push_back(njc.exec_bin().arg(i).c_str());
+               }
+               argv.push_back(nullptr);
+               nsjconf->exec_file = DUP_IF_SET(njc.exec_bin(), path);
+               nsjconf->argv = argv.data();
+       }
+
+       return true;
 }
 
 static void LogHandler(google::protobuf::LogLevel level, const char* filename, int line, const std::string& message)
 {
-    LOG_W("config.cc: '%s'", message.c_str());
+       LOG_W("config.cc: '%s'", message.c_str());
 }
 
 extern "C" bool configParse(struct nsjconf_t* nsjconf, const char* file)
 {
-    LOG_I("Parsing configuration from '%s'", file);
-
-    int fd = open(file, O_RDONLY);
-    if (fd == -1) {
-        PLOG_W("Couldn't open config file '%s'", file);
-        return false;
-    }
-
-    SetLogHandler(LogHandler);
-    google::protobuf::io::FileInputStream input(fd);
-    input.SetCloseOnDelete(true);
-
-    /* Use static so we can get c_str() pointers, and copy them into the nsjconf struct */
-    static nsjail::NsJailConfig nsc;
-
-    auto parser = google::protobuf::TextFormat::Parser();
-    if (!parser.Parse(&input, &nsc)) {
-        LOG_W("Couldn't parse file '%s' from Text into ProtoBuf", file);
-        return false;
-    }
-    if (!configParseInternal(nsjconf, nsc)) {
-        LOG_W("Couldn't parse the ProtoBuf");
-        return false;
-    }
-    LOG_D("Parsed config:\n'%s'", nsc.DebugString().c_str());
-
-    return true;
+       LOG_I("Parsing configuration from '%s'", file);
+
+       int fd = open(file, O_RDONLY);
+       if (fd == -1) {
+               PLOG_W("Couldn't open config file '%s'", file);
+               return false;
+       }
+
+       SetLogHandler(LogHandler);
+       google::protobuf::io::FileInputStream input(fd);
+       input.SetCloseOnDelete(true);
+
+       /* Use static so we can get c_str() pointers, and copy them into the nsjconf struct */
+       static nsjail::NsJailConfig nsc;
+
+       auto parser = google::protobuf::TextFormat::Parser();
+       if (!parser.Parse(&input, &nsc)) {
+               LOG_W("Couldn't parse file '%s' from Text into ProtoBuf", file);
+               return false;
+       }
+       if (!configParseInternal(nsjconf, nsc)) {
+               LOG_W("Couldn't parse the ProtoBuf");
+               return false;
+       }
+       LOG_D("Parsed config:\n'%s'", nsc.DebugString().c_str());
+
+       return true;
 }
index 4b00bc34a6ce9b2a7261168e1fc439161adb5a24..e88f62e41e3678267e91a2bdc8808b7fb28a0ef8 100644 (file)
--- a/config.h
+++ b/config.h
@@ -27,9 +27,9 @@ extern "C" {
 #endif
 
 #include "common.h"
-       bool configParse(struct nsjconf_t *nsjconf, const char *file);
+bool configParse(struct nsjconf_t* nsjconf, const char* file);
 
 #ifdef __cplusplus
-}                              // extern "C"
+} // extern "C"
 #endif
-#endif                         /*  NS_CONFIG_H */
+#endif /*  NS_CONFIG_H */
index 7f909caf56869ed1270a72a3df9d7a112649554a..ad4a07c7130975ecff02fbf1b48c02ebd43c62cc 100644 (file)
--- a/contain.c
+++ b/contain.c
 #include "util.h"
 #include "uts.h"
 
-static bool containUserNs(struct nsjconf_t *nsjconf)
+static bool containUserNs(struct nsjconf_tnsjconf)
 {
        return userInitNsFromChild(nsjconf);
 }
 
-static bool containInitPidNs(struct nsjconf_t *nsjconf)
+static bool containInitPidNs(struct nsjconf_tnsjconf)
 {
        return pidInitNs(nsjconf);
 }
 
-static bool containInitNetNs(struct nsjconf_t *nsjconf)
+static bool containInitNetNs(struct nsjconf_tnsjconf)
 {
        return netInitNsFromChild(nsjconf);
 }
 
-static bool containInitUtsNs(struct nsjconf_t *nsjconf)
+static bool containInitUtsNs(struct nsjconf_tnsjconf)
 {
        return utsInitNs(nsjconf);
 }
@@ -72,7 +72,7 @@ static bool containInitCgroupNs(void)
        return cgroupInitNs();
 }
 
-static bool containDropPrivs(struct nsjconf_t *nsjconf)
+static bool containDropPrivs(struct nsjconf_tnsjconf)
 {
 #ifndef PR_SET_NO_NEW_PRIVS
 #define PR_SET_NO_NEW_PRIVS 38
@@ -91,7 +91,7 @@ static bool containDropPrivs(struct nsjconf_t *nsjconf)
        return true;
 }
 
-static bool containPrepareEnv(struct nsjconf_t *nsjconf)
+static bool containPrepareEnv(struct nsjconf_tnsjconf)
 {
        if (prctl(PR_SET_PDEATHSIG, SIGKILL, 0, 0, 0) == -1) {
                PLOG_E("prctl(PR_SET_PDEATHSIG, SIGKILL)");
@@ -111,17 +111,17 @@ static bool containPrepareEnv(struct nsjconf_t *nsjconf)
        return true;
 }
 
-static bool containInitMountNs(struct nsjconf_t *nsjconf)
+static bool containInitMountNs(struct nsjconf_tnsjconf)
 {
        return mountInitNs(nsjconf);
 }
 
-static bool containCPU(struct nsjconf_t *nsjconf)
+static bool containCPU(struct nsjconf_tnsjconf)
 {
        return cpuInit(nsjconf);
 }
 
-static bool containSetLimits(struct nsjconf_t *nsjconf)
+static bool containSetLimits(struct nsjconf_tnsjconf)
 {
        struct rlimit64 rl;
        rl.rlim_cur = rl.rlim_max = nsjconf->rl_as;
@@ -162,10 +162,11 @@ static bool containSetLimits(struct nsjconf_t *nsjconf)
        return true;
 }
 
-static bool containPassFd(struct nsjconf_t *nsjconf, int fd)
+static bool containPassFd(struct nsjconf_tnsjconf, int fd)
 {
-       struct ints_t *p;
-       TAILQ_FOREACH(p, &nsjconf->open_fds, pointers) {
+       struct ints_t* p;
+       TAILQ_FOREACH(p, &nsjconf->open_fds, pointers)
+       {
                if (p->val == fd) {
                        return true;
                }
@@ -173,7 +174,7 @@ static bool containPassFd(struct nsjconf_t *nsjconf, int fd)
        return false;
 }
 
-static bool containMakeFdsCOENaive(struct nsjconf_t *nsjconf)
+static bool containMakeFdsCOENaive(struct nsjconf_tnsjconf)
 {
        /*
         * Don't use getrlimit(RLIMIT_NOFILE) here, as it can return an artifically small value
@@ -201,14 +202,14 @@ static bool containMakeFdsCOENaive(struct nsjconf_t *nsjconf)
        return true;
 }
 
-static bool containMakeFdsCOEProc(struct nsjconf_t *nsjconf)
+static bool containMakeFdsCOEProc(struct nsjconf_tnsjconf)
 {
        int dirfd = open("/proc/self/fd", O_DIRECTORY | O_RDONLY | O_CLOEXEC);
        if (dirfd == -1) {
                PLOG_D("open('/proc/self/fd', O_DIRECTORY|O_RDONLY)");
                return false;
        }
-       DIR *dir = fdopendir(dirfd);
+       DIRdir = fdopendir(dirfd);
        if (dir == NULL) {
                PLOG_W("fdopendir(fd=%d)", dirfd);
                close(dirfd);
@@ -217,7 +218,7 @@ static bool containMakeFdsCOEProc(struct nsjconf_t *nsjconf)
        /* Make all fds above stderr close-on-exec */
        for (;;) {
                errno = 0;
-               struct dirent *entry = readdir(dir);
+               struct dirententry = readdir(dir);
                if (entry == NULL && errno != 0) {
                        PLOG_D("readdir('/proc/self/fd')");
                        closedir(dir);
@@ -263,7 +264,7 @@ static bool containMakeFdsCOEProc(struct nsjconf_t *nsjconf)
        return true;
 }
 
-static bool containMakeFdsCOE(struct nsjconf_t *nsjconf)
+static bool containMakeFdsCOE(struct nsjconf_tnsjconf)
 {
        if (containMakeFdsCOEProc(nsjconf) == true) {
                return true;
@@ -275,7 +276,7 @@ static bool containMakeFdsCOE(struct nsjconf_t *nsjconf)
        return false;
 }
 
-bool containSetupFD(struct nsjconf_t * nsjconf, int fd_in, int fd_out, int fd_err)
+bool containSetupFD(struct nsjconf_t* nsjconf, int fd_in, int fd_out, int fd_err)
 {
        if (nsjconf->mode != MODE_LISTEN_TCP) {
                if (nsjconf->is_silent == false) {
@@ -302,7 +303,7 @@ bool containSetupFD(struct nsjconf_t * nsjconf, int fd_in, int fd_out, int fd_er
        return true;
 }
 
-bool containContain(struct nsjconf_t * nsjconf)
+bool containContain(struct nsjconf_t* nsjconf)
 {
        if (containUserNs(nsjconf) == false) {
                return false;
index edba108cc362850dd01c305132d0457356fea549..4a1525602d77be648db641a89e271da898bbd6ae 100644 (file)
--- a/contain.h
+++ b/contain.h
@@ -26,7 +26,7 @@
 
 #include "common.h"
 
-bool containSetupFD(struct nsjconf_t *nsjconf, int fd_in, int fd_out, int fd_err);
-bool containContain(struct nsjconf_t *nsjconf);
+bool containSetupFD(struct nsjconf_tnsjconf, int fd_in, int fd_out, int fd_err);
+bool containContain(struct nsjconf_tnsjconf);
 
-#endif                         /* NS_CONTAIN_H */
+#endif /* NS_CONTAIN_H */
diff --git a/cpu.c b/cpu.c
index 97b0a649afb380b7a6b2699119ebfc9cdbaad6d6..d9a02cfa57d19af84d1f99e92352330e3056d1b6 100644 (file)
--- a/cpu.c
+++ b/cpu.c
 #include "log.h"
 #include "util.h"
 
-static void cpuSetRandomCpu(cpu_set_t * mask, size_t mask_size, size_t cpu_num)
+static void cpuSetRandomCpu(cpu_set_t* mask, size_t mask_size, size_t cpu_num)
 {
-       if ((size_t) CPU_COUNT_S(mask_size, mask) >= cpu_num) {
-               LOG_F
-                   ("Number of CPUs in the mask '%d' is bigger than number of available CPUs '%zu'",
-                    CPU_COUNT(mask), cpu_num);
+       if ((size_t)CPU_COUNT_S(mask_size, mask) >= cpu_num) {
+               LOG_F("Number of CPUs in the mask '%d' is bigger than number of available CPUs '%zu'",
+                   CPU_COUNT(mask), cpu_num);
        }
 
        for (;;) {
@@ -46,18 +45,18 @@ static void cpuSetRandomCpu(cpu_set_t * mask, size_t mask_size, size_t cpu_num)
        }
 }
 
-bool cpuInit(struct nsjconf_t *nsjconf)
+bool cpuInit(struct nsjconf_tnsjconf)
 {
        if (nsjconf->num_cpus < 0) {
                PLOG_W("sysconf(_SC_NPROCESSORS_ONLN) returned %ld", nsjconf->num_cpus);
                return false;
        }
-       if (nsjconf->max_cpus > (size_t) nsjconf->num_cpus) {
+       if (nsjconf->max_cpus > (size_t)nsjconf->num_cpus) {
                LOG_W("Requested number of CPUs:%zu is bigger than CPUs online:%ld",
-                     nsjconf->max_cpus, nsjconf->num_cpus);
+                   nsjconf->max_cpus, nsjconf->num_cpus);
                return true;
        }
-       if (nsjconf->max_cpus == (size_t) nsjconf->num_cpus) {
+       if (nsjconf->max_cpus == (size_t)nsjconf->num_cpus) {
                LOG_D("All CPUs requested (%zu of %ld)", nsjconf->max_cpus, nsjconf->num_cpus);
                return true;
        }
@@ -66,7 +65,7 @@ bool cpuInit(struct nsjconf_t *nsjconf)
                return true;
        }
 
-       cpu_set_t *mask = CPU_ALLOC(nsjconf->num_cpus);
+       cpu_set_tmask = CPU_ALLOC(nsjconf->num_cpus);
        if (mask == NULL) {
                PLOG_W("Failure allocating cpu_set_t for %ld CPUs", nsjconf->num_cpus);
                return false;
diff --git a/cpu.h b/cpu.h
index 13d9ed6db0a110ac60f381e9141eeeef3aef44bf..e58cd03e8dcbdd94c4277b858fc710ef7d10e4da 100644 (file)
--- a/cpu.h
+++ b/cpu.h
@@ -27,6 +27,6 @@
 
 #include "common.h"
 
-bool cpuInit(struct nsjconf_t *nsjconf);
+bool cpuInit(struct nsjconf_tnsjconf);
 
-#endif                         /* NS_CPU_H */
+#endif /* NS_CPU_H */
diff --git a/log.c b/log.c
index e50fa89d855eba3a37f0f26acec1d1d8524570a2..4ff34e66dc549187ab8a3c916540d9d48f939be7 100644 (file)
--- a/log.c
+++ b/log.c
@@ -44,7 +44,7 @@ static enum llevel_t log_level = INFO;
  * Log to stderr by default. Use a dup()d fd, because in the future we'll associate the
  * connection socket with fd (0, 1, 2).
  */
-bool logInitLogFile(struct nsjconf_t *nsjconf)
+bool logInitLogFile(struct nsjconf_tnsjconf)
 {
        /* Close previous log_fd */
        if (log_fd > STDERR_FILENO) {
@@ -60,8 +60,7 @@ bool logInitLogFile(struct nsjconf_t *nsjconf)
        if (nsjconf->logfile == NULL) {
                log_fd = fcntl(log_fd, F_DUPFD_CLOEXEC, 0);
        } else {
-               if (TEMP_FAILURE_RETRY
-                   (log_fd = open(nsjconf->logfile, O_CREAT | O_RDWR | O_APPEND, 0640)) == -1) {
+               if (TEMP_FAILURE_RETRY(log_fd = open(nsjconf->logfile, O_CREAT | O_RDWR | O_APPEND, 0640)) == -1) {
                        log_fd = STDERR_FILENO;
                        PLOG_E("Couldn't open logfile open('%s')", nsjconf->logfile);
                        return false;
@@ -71,7 +70,7 @@ bool logInitLogFile(struct nsjconf_t *nsjconf)
        return true;
 }
 
-void logLog(enum llevel_t ll, const char *fn, int ln, bool perr, const char *fmt, ...)
+void logLog(enum llevel_t ll, const char* fn, int ln, bool perr, const char* fmt, ...)
 {
        if (ll < log_level) {
                return;
@@ -82,19 +81,19 @@ void logLog(enum llevel_t ll, const char *fn, int ln, bool perr, const char *fmt
                snprintf(strerr, sizeof(strerr), "%s", strerror(errno));
        }
        struct ll_t {
-               const char *const descr;
-               const char *const prefix;
+               const charconst descr;
+               const charconst prefix;
                const bool print_funcline;
                const bool print_time;
        };
        static struct ll_t const logLevels[] = {
-               {"D", "\033[0;4m", true, true},
-               {"I", "\033[1m", false, true},
-               {"W", "\033[0;33m", true, true},
-               {"E", "\033[1;31m", true, true},
-               {"F", "\033[7;35m", true, true},
-               {"HR", "\033[0m", false, false},
-               {"HB", "\033[1m", false, false},
+               { "D", "\033[0;4m", true, true },
+               { "I", "\033[1m", false, true },
+               { "W", "\033[0;33m", true, true },
+               { "E", "\033[1;31m", true, true },
+               { "F", "\033[7;35m", true, true },
+               { "HR", "\033[0m", false, false },
+               { "HB", "\033[1m", false, false },
        };
 
        time_t ltstamp = time(NULL);
diff --git a/log.h b/log.h
index f34b572d976462fcb19b862cf624cb5999f47a3e..ea459a00dc692ee2fb4495926c74a29244483b41 100644 (file)
--- a/log.h
+++ b/log.h
@@ -42,9 +42,9 @@
 #define PLOG_E(...) logLog(ERROR, __func__, __LINE__, true, __VA_ARGS__);
 #define PLOG_F(...) logLog(FATAL, __func__, __LINE__, true, __VA_ARGS__);
 
-bool logInitLogFile(struct nsjconf_t *nsjconf);
-void logLog(enum llevel_t ll, const char *fn, int ln, bool perr, const char *fmt, ...)
-    __attribute__ ((format(printf, 5, 6)));
+bool logInitLogFile(struct nsjconf_tnsjconf);
+void logLog(enum llevel_t ll, const char* fn, int ln, bool perr, const char* fmt, ...)
+    __attribute__((format(printf, 5, 6)));
 void logStop(int sig);
 
-#endif                         /* NS_LOG_H */
+#endif /* NS_LOG_H */
diff --git a/mount.c b/mount.c
index 65d54484a36c7ce90b39ebf2090c3d9bf41391a3..052699516888b826ff6251827523b098153687af 100644 (file)
--- a/mount.c
+++ b/mount.c
 #include "util.h"
 
 #define VALSTR_STRUCT(x) \
-    {                    \
-        x, #x            \
-    }
+       {                \
+               x, #x    \
+       }
 
 #if !defined(MS_LAZYTIME)
 #define MS_LAZYTIME (1 << 25)
-#endif                         /* if !defined(MS_LAZYTIME) */
+#endif /* if !defined(MS_LAZYTIME) */
 
-const char *mountFlagsToStr(uintptr_t flags)
+const charmountFlagsToStr(uintptr_t flags)
 {
        static __thread char mountFlagsStr[1024];
        mountFlagsStr[0] = '\0';
 
-// clang-format off
+       // clang-format off
     static struct {
         const uintptr_t flag;
         const char* const name;
@@ -84,12 +84,12 @@ const char *mountFlagsToStr(uintptr_t flags)
         VALSTR_STRUCT(MS_STRICTATIME),
         VALSTR_STRUCT(MS_LAZYTIME),
     };
-// clang-format on
+       // clang-format on
 
        for (size_t i = 0; i < ARRAYSIZE(mountFlags); i++) {
                if (flags & mountFlags[i].flag) {
                        utilSSnPrintf(mountFlagsStr, sizeof(mountFlagsStr), "%s|",
-                                     mountFlags[i].name);
+                           mountFlags[i].name);
                }
        }
 
@@ -101,7 +101,7 @@ const char *mountFlagsToStr(uintptr_t flags)
        return mountFlagsStr;
 }
 
-static bool mountIsDir(const char *path)
+static bool mountIsDir(const charpath)
 {
        /*
         *  If the source dir is NULL, we assume it's a dir (for /proc and tmpfs)
@@ -120,7 +120,7 @@ static bool mountIsDir(const char *path)
        return false;
 }
 
-static bool mountMount(struct mounts_t *mpt, const char *newroot, const char *tmpdir)
+static bool mountMount(struct mounts_t* mpt, const char* newroot, const char* tmpdir)
 {
        char dst[PATH_MAX];
        snprintf(dst, sizeof(dst), "%s/%s", newroot, mpt->dst);
@@ -168,7 +168,7 @@ static bool mountMount(struct mounts_t *mpt, const char *newroot, const char *tm
                                return false;
                        } else {
                                PLOG_W("symlink('%s', '%s'), but it's not mandatory, continuing",
-                                      srcpath, dst);
+                                   srcpath, dst);
                        }
                }
                return true;
@@ -177,10 +177,8 @@ static bool mountMount(struct mounts_t *mpt, const char *newroot, const char *tm
        if (mpt->src_content) {
                static uint64_t df_counter = 0;
                snprintf(srcpath, sizeof(srcpath), "%s/dynamic_file.%" PRIu64, tmpdir,
-                        ++df_counter);
-               int fd =
-                   TEMP_FAILURE_RETRY(open
-                                      (srcpath, O_CREAT | O_EXCL | O_CLOEXEC | O_WRONLY, 0644));
+                   ++df_counter);
+               int fd = TEMP_FAILURE_RETRY(open(srcpath, O_CREAT | O_EXCL | O_CLOEXEC | O_WRONLY, 0644));
                if (fd < 0) {
                        PLOG_W("open(srcpath, O_CREAT|O_EXCL|O_CLOEXEC|O_WRONLY, 0644) failed");
                        return false;
@@ -202,10 +200,11 @@ static bool mountMount(struct mounts_t *mpt, const char *newroot, const char *tm
                if (errno == EACCES) {
                        PLOG_W("mount('%s') src:'%s' dst:'%s' failed. "
                               "Try fixing this problem by applying 'chmod o+x' to the '%s' directory and "
-                              "its ancestors", mountDescribeMountPt(mpt), srcpath, dst, srcpath);
+                              "its ancestors",
+                           mountDescribeMountPt(mpt), srcpath, dst, srcpath);
                } else {
                        PLOG_W("mount('%s') src:'%s' dst:'%s' failed", mountDescribeMountPt(mpt),
-                              srcpath, dst);
+                           srcpath, dst);
                }
        } else {
                mpt->mounted = true;
@@ -217,7 +216,7 @@ static bool mountMount(struct mounts_t *mpt, const char *newroot, const char *tm
        return true;
 }
 
-static bool mountRemountRO(struct mounts_t *mpt)
+static bool mountRemountRO(struct mounts_tmpt)
 {
        if (!mpt->mounted) {
                return true;
@@ -243,7 +242,7 @@ static bool mountRemountRO(struct mounts_t *mpt)
        unsigned long new_flags = MS_REMOUNT | MS_BIND | MS_RDONLY | vfs.f_flag;
 
        LOG_D("Re-mounting R/O '%s' (old_flags:%s, new_flags:%s)", mpt->dst,
-             mountFlagsToStr(vfs.f_flag), mountFlagsToStr(new_flags));
+           mountFlagsToStr(vfs.f_flag), mountFlagsToStr(new_flags));
 
        if (mount(mpt->dst, mpt->dst, NULL, new_flags, 0) == -1) {
                PLOG_W("mount('%s', flags:%s)", mpt->dst, mountFlagsToStr(new_flags));
@@ -253,7 +252,7 @@ static bool mountRemountRO(struct mounts_t *mpt)
        return true;
 }
 
-static bool mountMkdirAndTest(const char *dir)
+static bool mountMkdirAndTest(const chardir)
 {
        if (mkdir(dir, 0755) == -1 && errno != EEXIST) {
                PLOG_W("Couldn't create '%s' directory", dir);
@@ -267,7 +266,7 @@ static bool mountMkdirAndTest(const char *dir)
        return true;
 }
 
-static bool mountGetDir(char *dir, const char *name)
+static bool mountGetDir(char* dir, const char* name)
 {
        snprintf(dir, PATH_MAX, "/dev/shm/nsjail.%s", name);
        if (mountMkdirAndTest(dir)) {
@@ -277,7 +276,7 @@ static bool mountGetDir(char *dir, const char *name)
        if (mountMkdirAndTest(dir)) {
                return true;
        }
-       const char *tmp = getenv("TMPDIR");
+       const chartmp = getenv("TMPDIR");
        if (tmp) {
                snprintf(dir, PATH_MAX, "%s/nsjail.%s", name, tmp);
                if (mountMkdirAndTest(dir)) {
@@ -293,7 +292,7 @@ static bool mountGetDir(char *dir, const char *name)
        return false;
 }
 
-static bool mountInitNsInternal(struct nsjconf_t *nsjconf)
+static bool mountInitNsInternal(struct nsjconf_tnsjconf)
 {
        /*
         * If CLONE_NEWNS is not used, we would be changing the global mount namespace, so simply
@@ -301,8 +300,7 @@ static bool mountInitNsInternal(struct nsjconf_t *nsjconf)
         */
        if (nsjconf->clone_newns == false) {
                if (nsjconf->chroot == NULL) {
-                       PLOG_E
-                           ("--chroot was not specified, and it's required when not using CLONE_NEWNS");
+                       PLOG_E("--chroot was not specified, and it's required when not using CLONE_NEWNS");
                        return false;
                }
                if (chroot(nsjconf->chroot) == -1) {
@@ -347,8 +345,9 @@ static bool mountInitNsInternal(struct nsjconf_t *nsjconf)
                return false;
        }
 
-       struct mounts_t *p;
-       TAILQ_FOREACH(p, &nsjconf->mountpts, pointers) {
+       struct mounts_t* p;
+       TAILQ_FOREACH(p, &nsjconf->mountpts, pointers)
+       {
                if (mountMount(p, destdir, tmpdir) == false && p->mandatory) {
                        return false;
                }
@@ -379,7 +378,8 @@ static bool mountInitNsInternal(struct nsjconf_t *nsjconf)
                return false;
        }
 
-       TAILQ_FOREACH(p, &nsjconf->mountpts, pointers) {
+       TAILQ_FOREACH(p, &nsjconf->mountpts, pointers)
+       {
                if (mountRemountRO(p) == false && p->mandatory) {
                        return false;
                }
@@ -392,7 +392,7 @@ static bool mountInitNsInternal(struct nsjconf_t *nsjconf)
  * With mode MODE_STANDALONE_EXECVE it's required to mount /proc inside a new process,
  * as the current process is still in the original PID namespace (man pid_namespaces)
  */
-bool mountInitNs(struct nsjconf_t * nsjconf)
+bool mountInitNs(struct nsjconf_t* nsjconf)
 {
        if (nsjconf->mode != MODE_STANDALONE_EXECVE) {
                return mountInitNsInternal(nsjconf);
@@ -408,27 +408,28 @@ bool mountInitNs(struct nsjconf_t * nsjconf)
        }
 
        int status;
-       while (wait4(pid, &status, 0, NULL) != pid) ;
+       while (wait4(pid, &status, 0, NULL) != pid)
+               ;
        if (WIFEXITED(status) && WEXITSTATUS(status) == 0) {
                return true;
        }
        return false;
 }
 
-static bool mountAddMountPt(struct nsjconf_t *nsjconf, bool head, const char *src, const char *dst,
-                           const char *fstype, const char *options, uintptr_t flags, isDir_t isDir,
-                           bool mandatory, const char *src_env, const char *dst_env,
-                           const char *src_content, size_t src_content_len, bool is_symlink)
+static bool mountAddMountPt(struct nsjconf_t* nsjconf, bool head, const char* src, const char* dst,
+    const char* fstype, const char* options, uintptr_t flags, isDir_t isDir,
+    bool mandatory, const char* src_env, const char* dst_env,
+    const char* src_content, size_t src_content_len, bool is_symlink)
 {
-       struct mounts_t *p = utilCalloc(sizeof(struct mounts_t));
+       struct mounts_tp = utilCalloc(sizeof(struct mounts_t));
 
        if (src_env) {
-               const char *e = getenv(src_env);
+               const chare = getenv(src_env);
                if (e == NULL) {
                        LOG_W("No such envvar:'%s'", src_env);
                        return false;
                }
-               if (asprintf((char **)&p->src, "%s%s", e, src ? src : "") == -1) {
+               if (asprintf((char**)&p->src, "%s%s", e, src ? src : "") == -1) {
                        PLOG_W("asprintf() failed");
                        return false;
                }
@@ -437,12 +438,12 @@ static bool mountAddMountPt(struct nsjconf_t *nsjconf, bool head, const char *sr
        }
 
        if (dst_env) {
-               const char *e = getenv(dst_env);
+               const chare = getenv(dst_env);
                if (e == NULL) {
                        LOG_W("No such envvar:'%s'", dst_env);
                        return false;
                }
-               if (asprintf((char **)&p->dst, "%s%s", e, dst ? dst : "") == -1) {
+               if (asprintf((char**)&p->dst, "%s%s", e, dst ? dst : "") == -1) {
                        PLOG_W("asprintf() failed");
                        return false;
                }
@@ -465,24 +466,23 @@ static bool mountAddMountPt(struct nsjconf_t *nsjconf, bool head, const char *sr
        case NS_DIR_NO:
                p->isDir = false;
                break;
-       case NS_DIR_MAYBE:{
-                       if (src_content) {
-                               p->isDir = false;
-                       } else if (p->src == NULL) {
-                               p->isDir = true;
-                       } else if (p->flags & MS_BIND) {
-                               p->isDir = mountIsDir(p->src);
-                       } else {
-                               p->isDir = true;
-                       }
+       case NS_DIR_MAYBE: {
+               if (src_content) {
+                       p->isDir = false;
+               } else if (p->src == NULL) {
+                       p->isDir = true;
+               } else if (p->flags & MS_BIND) {
+                       p->isDir = mountIsDir(p->src);
+               } else {
+                       p->isDir = true;
                }
-               break;
+       } break;
        default:
                LOG_F("Unknown isDir value: %d", isDir);
                break;
        }
 
-       p->src_content = utilMemDup((const uint8_t *)src_content, src_content_len);
+       p->src_content = utilMemDup((const uint8_t*)src_content, src_content_len);
        p->src_content_len = src_content_len;
 
        if (head) {
@@ -494,42 +494,42 @@ static bool mountAddMountPt(struct nsjconf_t *nsjconf, bool head, const char *sr
        return true;
 }
 
-bool mountAddMountPtHead(struct nsjconf_t * nsjconf, const char *src, const char *dst,
-                        const char *fstype, const char *options, uintptr_t flags, isDir_t isDir,
-                        bool mandatory, const char *src_env, const char *dst_env,
-                        const char *src_content, size_t src_content_len, bool is_symlink)
+bool mountAddMountPtHead(struct nsjconf_t* nsjconf, const char* src, const char* dst,
+    const char* fstype, const char* options, uintptr_t flags, isDir_t isDir,
+    bool mandatory, const char* src_env, const char* dst_env,
+    const char* src_content, size_t src_content_len, bool is_symlink)
 {
        return mountAddMountPt(nsjconf, /* head= */ true, src, dst, fstype, options, flags, isDir,
-                              mandatory, src_env, dst_env, src_content, src_content_len,
-                              is_symlink);
+           mandatory, src_env, dst_env, src_content, src_content_len,
+           is_symlink);
 }
 
-bool mountAddMountPtTail(struct nsjconf_t * nsjconf, const char *src, const char *dst,
-                        const char *fstype, const char *options, uintptr_t flags, isDir_t isDir,
-                        bool mandatory, const char *src_env, const char *dst_env,
-                        const char *src_content, size_t src_content_len, bool is_symlink)
+bool mountAddMountPtTail(struct nsjconf_t* nsjconf, const char* src, const char* dst,
+    const char* fstype, const char* options, uintptr_t flags, isDir_t isDir,
+    bool mandatory, const char* src_env, const char* dst_env,
+    const char* src_content, size_t src_content_len, bool is_symlink)
 {
        return mountAddMountPt(nsjconf, /* head= */ false, src, dst, fstype, options, flags, isDir,
-                              mandatory, src_env, dst_env, src_content, src_content_len,
-                              is_symlink);
+           mandatory, src_env, dst_env, src_content, src_content_len,
+           is_symlink);
 }
 
-const char *mountDescribeMountPt(struct mounts_t *mpt)
+const char* mountDescribeMountPt(struct mounts_t* mpt)
 {
        static __thread char mount_pt_descr[4096];
 
        snprintf(mount_pt_descr, sizeof(mount_pt_descr),
-                "src:'%s' dst:'%s' type:'%s' flags:%s options:'%s' isDir:%s",
-                mpt->src ? mpt->src : "[NULL]", mpt->dst, mpt->fs_type ? mpt->fs_type : "[NULL]",
-                mountFlagsToStr(mpt->flags), mpt->options ? mpt->options : "[NULL]",
-                mpt->isDir ? "true" : "false");
+           "src:'%s' dst:'%s' type:'%s' flags:%s options:'%s' isDir:%s",
+           mpt->src ? mpt->src : "[NULL]", mpt->dst, mpt->fs_type ? mpt->fs_type : "[NULL]",
+           mountFlagsToStr(mpt->flags), mpt->options ? mpt->options : "[NULL]",
+           mpt->isDir ? "true" : "false");
 
        if (mpt->mandatory == false) {
                utilSSnPrintf(mount_pt_descr, sizeof(mount_pt_descr), " mandatory:false");
        }
        if (mpt->src_content) {
                utilSSnPrintf(mount_pt_descr, sizeof(mount_pt_descr), " src_content_len:%zu",
-                             mpt->src_content_len);
+                   mpt->src_content_len);
        }
        if (mpt->isSymlink) {
                utilSSnPrintf(mount_pt_descr, sizeof(mount_pt_descr), " symlink:true");
diff --git a/mount.h b/mount.h
index 4c8e9112f17b6269307320d0fd660673da50d936..9d38469b4bd4b1daf5dc2beff777824c2050ef0a 100644 (file)
--- a/mount.h
+++ b/mount.h
@@ -32,16 +32,16 @@ typedef enum {
        NS_DIR_MAYBE,
 } isDir_t;
 
-const char *mountFlagsToStr(uintptr_t flags);
-bool mountInitNs(struct nsjconf_t *nsjconf);
-bool mountAddMountPtHead(struct nsjconf_t *nsjconf, const char *src, const char *dst,
-                        const char *fstype, const char *options, uintptr_t flags, isDir_t isDir,
-                        bool mandatory, const char *src_env, const char *dst_env,
-                        const char *src_content, size_t src_content_len, bool is_symlink);
-bool mountAddMountPtTail(struct nsjconf_t *nsjconf, const char *src, const char *dst,
-                        const char *fstype, const char *options, uintptr_t flags, isDir_t isDir,
-                        bool mandatory, const char *src_env, const char *dst_env,
-                        const char *src_content, size_t src_content_len, bool is_symlink);
-const char *mountDescribeMountPt(struct mounts_t *mpt);
-
-#endif                         /* NS_MOUNT_H */
+const charmountFlagsToStr(uintptr_t flags);
+bool mountInitNs(struct nsjconf_tnsjconf);
+bool mountAddMountPtHead(struct nsjconf_t* nsjconf, const char* src, const char* dst,
+    const char* fstype, const char* options, uintptr_t flags, isDir_t isDir,
+    bool mandatory, const char* src_env, const char* dst_env,
+    const char* src_content, size_t src_content_len, bool is_symlink);
+bool mountAddMountPtTail(struct nsjconf_t* nsjconf, const char* src, const char* dst,
+    const char* fstype, const char* options, uintptr_t flags, isDir_t isDir,
+    bool mandatory, const char* src_env, const char* dst_env,
+    const char* src_content, size_t src_content_len, bool is_symlink);
+const char* mountDescribeMountPt(struct mounts_t* mpt);
+
+#endif /* NS_MOUNT_H */
diff --git a/net.c b/net.c
index 9b5c09e9c2978d1ccd673e2208fad3977746b1ca..d55baf4dbda7a99305cbecd2232b0a218abfd432 100644 (file)
--- a/net.c
+++ b/net.c
 
 #define IFACE_NAME "vs"
 
-extern char **environ;
+extern char** environ;
 
 #if defined(NSJAIL_NL3_WITH_MACVLAN)
 #include <netlink/route/link.h>
 #include <netlink/route/link/macvlan.h>
-bool netInitNsFromParent(struct nsjconf_t *nsjconf, int pid)
+bool netInitNsFromParent(struct nsjconf_tnsjconf, int pid)
 {
        if (nsjconf->clone_newnet == false) {
                return true;
@@ -61,7 +61,7 @@ bool netInitNsFromParent(struct nsjconf_t *nsjconf, int pid)
 
        LOG_D("Putting iface:'%s' into namespace of PID:%d (with libnl3)", nsjconf->iface_vs, pid);
 
-       struct nl_sock *sk = nl_socket_alloc();
+       struct nl_socksk = nl_socket_alloc();
        if (sk == NULL) {
                LOG_E("Could not allocate socket with nl_socket_alloc()");
                return false;
@@ -74,14 +74,14 @@ bool netInitNsFromParent(struct nsjconf_t *nsjconf, int pid)
                return false;
        }
 
-       struct rtnl_link *rmv = rtnl_link_macvlan_alloc();
+       struct rtnl_linkrmv = rtnl_link_macvlan_alloc();
        if (rmv == NULL) {
                LOG_E("rtnl_link_macvlan_alloc(): %s", nl_geterror(err));
                nl_socket_free(sk);
                return false;
        }
 
-       struct nl_cache *link_cache;
+       struct nl_cachelink_cache;
        if ((err = rtnl_link_alloc_cache(sk, AF_UNSPEC, &link_cache)) < 0) {
                LOG_E("rtnl_link_alloc_cache(): %s", nl_geterror(err));
                rtnl_link_put(rmv);
@@ -104,7 +104,7 @@ bool netInitNsFromParent(struct nsjconf_t *nsjconf, int pid)
 
        if ((err = rtnl_link_add(sk, rmv, NLM_F_CREATE)) < 0) {
                LOG_E("rtnl_link_add(name:'%s' link:'%s'): %s", IFACE_NAME, nsjconf->iface_vs,
-                     nl_geterror(err));
+                   nl_geterror(err));
                nl_cache_free(link_cache);
                rtnl_link_put(rmv);
                nl_socket_free(sk);
@@ -116,9 +116,9 @@ bool netInitNsFromParent(struct nsjconf_t *nsjconf, int pid)
        nl_socket_free(sk);
        return true;
 }
-#else                          // defined(NSJAIL_NL3_WITH_MACVLAN)
+#else // defined(NSJAIL_NL3_WITH_MACVLAN)
 
-bool netInitNsFromParent(struct nsjconf_t *nsjconf, int pid)
+bool netInitNsFromParent(struct nsjconf_tnsjconf, int pid)
 {
        if (nsjconf->clone_newnet == false) {
                return true;
@@ -128,13 +128,13 @@ bool netInitNsFromParent(struct nsjconf_t *nsjconf, int pid)
        }
 
        LOG_D("Putting iface:'%s' into namespace of PID:%d (with /sbin/ip)", nsjconf->iface_vs,
-             pid);
+           pid);
 
        char pid_str[256];
        snprintf(pid_str, sizeof(pid_str), "%d", pid);
 
-       const char *argv[] = {
-               "/sbin/ip", "link", "add", "link", (char *)nsjconf->iface_vs, "name", IFACE_NAME,
+       const charargv[] = {
+               "/sbin/ip", "link", "add", "link", (char*)nsjconf->iface_vs, "name", IFACE_NAME,
                "netns", pid_str, "type", "macvlan", "mode", "bridge", NULL
        };
        if (subprocSystem(argv, environ) != 0) {
@@ -144,7 +144,7 @@ bool netInitNsFromParent(struct nsjconf_t *nsjconf, int pid)
 
        return true;
 }
-#endif                         // defined(NSJAIL_NL3_WITH_MACVLAN)
+#endif // defined(NSJAIL_NL3_WITH_MACVLAN)
 
 static bool netIsSocket(int fd)
 {
@@ -157,7 +157,7 @@ static bool netIsSocket(int fd)
        return true;
 }
 
-bool netLimitConns(struct nsjconf_t * nsjconf, int connsock)
+bool netLimitConns(struct nsjconf_t* nsjconf, int connsock)
 {
        /* 0 means 'unlimited' */
        if (nsjconf->max_conns_per_ip == 0) {
@@ -166,13 +166,14 @@ bool netLimitConns(struct nsjconf_t * nsjconf, int connsock)
 
        struct sockaddr_in6 addr;
        char cs_addr[64];
-       netConnToText(connsock, true /* remote */ , cs_addr, sizeof(cs_addr), &addr);
+       netConnToText(connsock, true /* remote */, cs_addr, sizeof(cs_addr), &addr);
 
        unsigned int cnt = 0;
-       struct pids_t *p;
-       TAILQ_FOREACH(p, &nsjconf->pids, pointers) {
+       struct pids_t* p;
+       TAILQ_FOREACH(p, &nsjconf->pids, pointers)
+       {
                if (memcmp(addr.sin6_addr.s6_addr, p->remote_addr.sin6_addr.s6_addr,
-                          sizeof(*p->remote_addr.sin6_addr.s6_addr))
+                       sizeof(*p->remote_addr.sin6_addr.s6_addr))
                    == 0) {
                        cnt++;
                }
@@ -180,19 +181,18 @@ bool netLimitConns(struct nsjconf_t * nsjconf, int connsock)
 
        if (cnt >= nsjconf->max_conns_per_ip) {
                LOG_W("Rejecting connection from '%s', max_conns_per_ip limit reached: %u", cs_addr,
-                     nsjconf->max_conns_per_ip);
+                   nsjconf->max_conns_per_ip);
                return false;
        }
 
        return true;
 }
 
-int netGetRecvSocket(const char *bindhost, int port)
+int netGetRecvSocket(const charbindhost, int port)
 {
        if (port < 1 || port > 65535) {
-               LOG_F
-                   ("TCP port %d out of bounds (0 <= port <= 65535), specify one with --port <port>",
-                    port);
+               LOG_F("TCP port %d out of bounds (0 <= port <= 65535), specify one with --port <port>",
+                   port);
        }
 
        char bindaddr[128];
@@ -206,7 +206,7 @@ int netGetRecvSocket(const char *bindhost, int port)
        struct in6_addr in6a;
        if (inet_pton(AF_INET6, bindaddr, &in6a) != 1) {
                PLOG_E("Couldn't convert '%s' (orig:'%s') into AF_INET6 address", bindaddr,
-                      bindhost);
+                   bindhost);
                return -1;
        }
 
@@ -227,7 +227,7 @@ int netGetRecvSocket(const char *bindhost, int port)
                .sin6_addr = in6a,
                .sin6_scope_id = 0,
        };
-       if (bind(sockfd, (struct sockaddr *)&addr, sizeof(addr)) == -1) {
+       if (bind(sockfd, (struct sockaddr*)&addr, sizeof(addr)) == -1) {
                close(sockfd);
                PLOG_E("bind(host:[%s (orig:'%s')], port:%d)", bindaddr, bindhost, port);
                return -1;
@@ -239,7 +239,7 @@ int netGetRecvSocket(const char *bindhost, int port)
        }
 
        char ss_addr[64];
-       netConnToText(sockfd, false /* remote */ , ss_addr, sizeof(ss_addr), NULL);
+       netConnToText(sockfd, false /* remote */, ss_addr, sizeof(ss_addr), NULL);
        LOG_I("Listening on %s", ss_addr);
 
        return sockfd;
@@ -249,7 +249,7 @@ int netAcceptConn(int listenfd)
 {
        struct sockaddr_in6 cli_addr;
        socklen_t socklen = sizeof(cli_addr);
-       int connfd = accept(listenfd, (struct sockaddr *)&cli_addr, &socklen);
+       int connfd = accept(listenfd, (struct sockaddr*)&cli_addr, &socklen);
        if (connfd == -1) {
                if (errno != EINTR) {
                        PLOG_E("accept(%d)", listenfd);
@@ -258,14 +258,14 @@ int netAcceptConn(int listenfd)
        }
 
        char cs_addr[64], ss_addr[64];
-       netConnToText(connfd, true /* remote */ , cs_addr, sizeof(cs_addr), NULL);
-       netConnToText(connfd, false /* remote */ , ss_addr, sizeof(ss_addr), NULL);
+       netConnToText(connfd, true /* remote */, cs_addr, sizeof(cs_addr), NULL);
+       netConnToText(connfd, false /* remote */, ss_addr, sizeof(ss_addr), NULL);
        LOG_I("New connection from: %s on: %s", cs_addr, ss_addr);
 
        return connfd;
 }
 
-void netConnToText(int fd, bool remote, char *buf, size_t s, struct sockaddr_in6 *addr_or_null)
+void netConnToText(int fd, bool remote, char* buf, size_t s, struct sockaddr_in6* addr_or_null)
 {
        if (netIsSocket(fd) == false) {
                snprintf(buf, s, "[STANDALONE_MODE]");
@@ -275,13 +275,13 @@ void netConnToText(int fd, bool remote, char *buf, size_t s, struct sockaddr_in6
        struct sockaddr_in6 addr;
        socklen_t addrlen = sizeof(addr);
        if (remote) {
-               if (getpeername(fd, (struct sockaddr *)&addr, &addrlen) == -1) {
+               if (getpeername(fd, (struct sockaddr*)&addr, &addrlen) == -1) {
                        PLOG_W("getpeername(%d)", fd);
                        snprintf(buf, s, "[unknown]");
                        return;
                }
        } else {
-               if (getsockname(fd, (struct sockaddr *)&addr, &addrlen) == -1) {
+               if (getsockname(fd, (struct sockaddr*)&addr, &addrlen) == -1) {
                        PLOG_W("getsockname(%d)", fd);
                        snprintf(buf, s, "[unknown]");
                        return;
@@ -302,7 +302,7 @@ void netConnToText(int fd, bool remote, char *buf, size_t s, struct sockaddr_in6
        return;
 }
 
-static bool netIfaceUp(const char *ifacename)
+static bool netIfaceUp(const charifacename)
 {
        int sock = socket(AF_INET, SOCK_STREAM, IPPROTO_IP);
        if (sock == -1) {
@@ -332,7 +332,7 @@ static bool netIfaceUp(const char *ifacename)
        return true;
 }
 
-static bool netConfigureVs(struct nsjconf_t *nsjconf)
+static bool netConfigureVs(struct nsjconf_tnsjconf)
 {
        struct ifreq ifr;
        memset(&ifr, '\0', sizeof(ifr));
@@ -356,7 +356,7 @@ static bool netConfigureVs(struct nsjconf_t *nsjconf)
                return true;
        }
 
-       struct sockaddr_in *sa = (struct sockaddr_in *)(&ifr.ifr_addr);
+       struct sockaddr_in* sa = (struct sockaddr_in*)(&ifr.ifr_addr);
        sa->sin_family = AF_INET;
        sa->sin_addr = addr;
        if (ioctl(sock, SIOCSIFADDR, &ifr) == -1) {
@@ -397,9 +397,9 @@ static bool netConfigureVs(struct nsjconf_t *nsjconf)
        struct rtentry rt;
        memset(&rt, '\0', sizeof(rt));
 
-       struct sockaddr_in *sdest = (struct sockaddr_in *)(&rt.rt_dst);
-       struct sockaddr_in *smask = (struct sockaddr_in *)(&rt.rt_genmask);
-       struct sockaddr_in *sgate = (struct sockaddr_in *)(&rt.rt_gateway);
+       struct sockaddr_in* sdest = (struct sockaddr_in*)(&rt.rt_dst);
+       struct sockaddr_in* smask = (struct sockaddr_in*)(&rt.rt_genmask);
+       struct sockaddr_in* sgate = (struct sockaddr_in*)(&rt.rt_gateway);
        sdest->sin_family = AF_INET;
        sdest->sin_addr.s_addr = INADDR_ANY;
        smask->sin_family = AF_INET;
@@ -420,7 +420,7 @@ static bool netConfigureVs(struct nsjconf_t *nsjconf)
        return true;
 }
 
-bool netInitNsFromChild(struct nsjconf_t * nsjconf)
+bool netInitNsFromChild(struct nsjconf_t* nsjconf)
 {
        if (nsjconf->clone_newnet == false) {
                return true;
diff --git a/net.h b/net.h
index db1040f5e39d8f68219031e409633ff4788f78dd..5cd6ab2af221227a46392c56130473618b915107 100644 (file)
--- a/net.h
+++ b/net.h
 
 #include "common.h"
 
-bool netLimitConns(struct nsjconf_t *nsjconf, int connsock);
-int netGetRecvSocket(const char *bindhost, int port);
+bool netLimitConns(struct nsjconf_tnsjconf, int connsock);
+int netGetRecvSocket(const charbindhost, int port);
 int netAcceptConn(int listenfd);
-void netConnToText(int fd, bool remote, char *buf, size_t s, struct sockaddr_in6 *addr_or_null);
-bool netInitNsFromParent(struct nsjconf_t *nsjconf, int pid);
-bool netInitNsFromChild(struct nsjconf_t *nsjconf);
+void netConnToText(int fd, bool remote, char* buf, size_t s, struct sockaddr_in6* addr_or_null);
+bool netInitNsFromParent(struct nsjconf_tnsjconf, int pid);
+bool netInitNsFromChild(struct nsjconf_tnsjconf);
 
-#endif                         /* _NET_H */
+#endif /* _NET_H */
index 796dd927bfbad46857a2adbb01fce6bc6ee11ca4..ca57367752bbd9b5f1694252cb1b2315f01b7cd2 100644 (file)
--- a/nsjail.c
+++ b/nsjail.c
@@ -94,15 +94,15 @@ static bool nsjailSetSigHandlers(void)
        return true;
 }
 
-static bool nsjailSetTimer(struct nsjconf_t *nsjconf)
+static bool nsjailSetTimer(struct nsjconf_tnsjconf)
 {
        if (nsjconf->mode == MODE_STANDALONE_EXECVE) {
                return true;
        }
 
        struct itimerval it = {
-               .it_value = {.tv_sec = 1,.tv_usec = 0},
-               .it_interval = {.tv_sec = 1,.tv_usec = 0},
+               .it_value = {.tv_sec = 1, .tv_usec = 0 },
+               .it_interval = {.tv_sec = 1, .tv_usec = 0 },
        };
        if (setitimer(ITIMER_REAL, &it, NULL) == -1) {
                PLOG_E("setitimer(ITIMER_REAL)");
@@ -111,7 +111,7 @@ static bool nsjailSetTimer(struct nsjconf_t *nsjconf)
        return true;
 }
 
-static void nsjailListenMode(struct nsjconf_t *nsjconf)
+static void nsjailListenMode(struct nsjconf_tnsjconf)
 {
        int listenfd = netGetRecvSocket(nsjconf->bindhost, nsjconf->port);
        if (listenfd == -1) {
@@ -137,7 +137,7 @@ static void nsjailListenMode(struct nsjconf_t *nsjconf)
        }
 }
 
-static int nsjailStandaloneMode(struct nsjconf_t *nsjconf)
+static int nsjailStandaloneMode(struct nsjconf_tnsjconf)
 {
        subprocRunChild(nsjconf, STDIN_FILENO, STDOUT_FILENO, STDERR_FILENO);
        for (;;) {
@@ -165,7 +165,7 @@ static int nsjailStandaloneMode(struct nsjconf_t *nsjconf)
        // not reached
 }
 
-int main(int argc, char *argv[])
+int main(int argc, charargv[])
 {
        struct nsjconf_t nsjconf;
        if (!cmdlineParse(argc, argv, &nsjconf)) {
@@ -196,4 +196,4 @@ int main(int argc, char *argv[])
 /*
  * To satisfy requirement for BlocksRuntime in clang -fblocks
  */
-void *_NSConcreteStackBlock[32] = { 0 };
+void_NSConcreteStackBlock[32] = { 0 };
index 7c3d7b99ad69d6c69a051432f88c2cce4427a4d9..70de7c7b7f50af2f7c73bebd9d20a86e6fd79dd0 100644 (file)
--- a/nsjail.h
+++ b/nsjail.h
@@ -25,4 +25,4 @@
 
 #include "common.h"
 
-#endif                         /* _NSJAIL_H */
+#endif /* _NSJAIL_H */
diff --git a/pid.c b/pid.c
index 42efb83a0a69b63311b07c2ff8c404a20acba128..adb81ecc166995efa3f26f42b71e27b4b35fe225 100644 (file)
--- a/pid.c
+++ b/pid.c
@@ -31,7 +31,7 @@
 #include "log.h"
 #include "subproc.h"
 
-bool pidInitNs(struct nsjconf_t *nsjconf)
+bool pidInitNs(struct nsjconf_tnsjconf)
 {
        if (nsjconf->mode != MODE_STANDALONE_EXECVE) {
                return true;
diff --git a/pid.h b/pid.h
index 8943a647d480a4876c60f34aa1a99a3a7e66de2a..b8e30eb04c95a5497a2cd9ca0b4e2ed96a7c0580 100644 (file)
--- a/pid.h
+++ b/pid.h
@@ -26,6 +26,6 @@
 
 #include "common.h"
 
-bool pidInitNs(struct nsjconf_t *nsjconf);
+bool pidInitNs(struct nsjconf_tnsjconf);
 
-#endif                         /* NS_PID_H */
+#endif /* NS_PID_H */
index bbd81529260faf940be5a593ee7aec37b84e3b72..971555f32daa392c290e8a1b2195c83b082120ac 100644 (file)
--- a/sandbox.c
+++ b/sandbox.c
 #include "kafel.h"
 #include "log.h"
 
-#ifndef PR_SET_NO_NEW_PRIVS    /* in prctl.h since Linux 3.5 */
+#ifndef PR_SET_NO_NEW_PRIVS /* in prctl.h since Linux 3.5 */
 #define PR_SET_NO_NEW_PRIVS 38
-#endif                         /* PR_SET_NO_NEW_PRIVS */
+#endif /* PR_SET_NO_NEW_PRIVS */
 
-static bool sandboxPrepareAndCommit(struct nsjconf_t *nsjconf)
+static bool sandboxPrepareAndCommit(struct nsjconf_tnsjconf)
 {
        if (nsjconf->kafel_file == NULL && nsjconf->kafel_string == NULL) {
                return true;
@@ -66,7 +66,7 @@ static bool sandboxPrepareAndCommit(struct nsjconf_t *nsjconf)
        return true;
 }
 
-bool sandboxApply(struct nsjconf_t * nsjconf)
+bool sandboxApply(struct nsjconf_t* nsjconf)
 {
        return sandboxPrepareAndCommit(nsjconf);
 }
index b28cc14be19fa38ce9df2f8040c511993f0756de..e32b8d56930970843fe38d3a644e958980fd9be0 100644 (file)
--- a/sandbox.h
+++ b/sandbox.h
@@ -26,6 +26,6 @@
 
 #include "common.h"
 
-bool sandboxApply(struct nsjconf_t *nsjconf);
+bool sandboxApply(struct nsjconf_tnsjconf);
 
-#endif                         /* NS_SANDBOX_H */
+#endif /* NS_SANDBOX_H */
index 3e9e51ec8f316dc4d43cb2671d321a509e61bf66..0899d4b2e137ebfdd32cdd604e700fe98a131f88 100644 (file)
--- a/subproc.c
+++ b/subproc.c
 static const char subprocDoneChar = 'D';
 
 #define VALSTR_STRUCT(x) \
-    {                    \
-        x, #x            \
-    }
+       {                \
+               x, #x    \
+       }
 
 #if !defined(CLONE_NEWCGROUP)
 #define CLONE_NEWCGROUP 0x02000000
-#endif                         /* !defined(CLONE_NEWCGROUP) */
+#endif /* !defined(CLONE_NEWCGROUP) */
 
-static const char *subprocCloneFlagsToStr(uintptr_t flags)
+static const charsubprocCloneFlagsToStr(uintptr_t flags)
 {
        static __thread char cloneFlagName[1024];
        cloneFlagName[0] = '\0';
 
-// clang-format off
+       // clang-format off
     static struct {
         const uintptr_t flag;
         const char* const name;
@@ -95,12 +95,12 @@ static const char *subprocCloneFlagsToStr(uintptr_t flags)
         VALSTR_STRUCT(CLONE_NEWNET),
         VALSTR_STRUCT(CLONE_IO),
     };
-// clang-format on
+       // clang-format on
 
        for (size_t i = 0; i < ARRAYSIZE(cloneFlags); i++) {
                if (flags & cloneFlags[i].flag) {
                        utilSSnPrintf(cloneFlagName, sizeof(cloneFlagName), "%s|",
-                                     cloneFlags[i].name);
+                           cloneFlags[i].name);
                }
        }
 
@@ -110,13 +110,13 @@ static const char *subprocCloneFlagsToStr(uintptr_t flags)
        }
        if (flags & ~(knownFlagMask)) {
                utilSSnPrintf(cloneFlagName, sizeof(cloneFlagName), "%#tx|",
-                             flags & ~(knownFlagMask));
+                   flags & ~(knownFlagMask));
        }
        utilSSnPrintf(cloneFlagName, sizeof(cloneFlagName), "%s", utilSigName(flags & CSIGNAL));
        return cloneFlagName;
 }
 
-static int subprocNewProc(struct nsjconf_t *nsjconf, int fd_in, int fd_out, int fd_err, int pipefd)
+static int subprocNewProc(struct nsjconf_tnsjconf, int fd_in, int fd_out, int fd_err, int pipefd)
 {
        if (containSetupFD(nsjconf, fd_in, fd_out, fd_err) == false) {
                exit(0xff);
@@ -146,13 +146,14 @@ static int subprocNewProc(struct nsjconf_t *nsjconf, int fd_in, int fd_out, int
        if (nsjconf->keep_env == false) {
                clearenv();
        }
-       struct charptr_t *p;
-       TAILQ_FOREACH(p, &nsjconf->envs, pointers) {
-               putenv((char *)p->val);
+       struct charptr_t* p;
+       TAILQ_FOREACH(p, &nsjconf->envs, pointers)
+       {
+               putenv((char*)p->val);
        }
 
        char cs_addr[64];
-       netConnToText(fd_in, true /* remote */ , cs_addr, sizeof(cs_addr), NULL);
+       netConnToText(fd_in, true /* remote */, cs_addr, sizeof(cs_addr), NULL);
        LOG_I("Executing '%s' for '%s'", nsjconf->exec_file, cs_addr);
 
        for (size_t i = 0; nsjconf->argv[i]; i++) {
@@ -163,20 +164,20 @@ static int subprocNewProc(struct nsjconf_t *nsjconf, int fd_in, int fd_out, int
        if (sandboxApply(nsjconf) == false) {
                exit(0xff);
        }
-       execv(nsjconf->exec_file, (char *const *)&nsjconf->argv[0]);
+       execv(nsjconf->exec_file, (char* const*)&nsjconf->argv[0]);
 
        PLOG_E("execve('%s') failed", nsjconf->exec_file);
 
        _exit(0xff);
 }
 
-static void subprocAdd(struct nsjconf_t *nsjconf, pid_t pid, int sock)
+static void subprocAdd(struct nsjconf_tnsjconf, pid_t pid, int sock)
 {
-       struct pids_t *p = utilMalloc(sizeof(struct pids_t));
+       struct pids_tp = utilMalloc(sizeof(struct pids_t));
        p->pid = pid;
        p->start = time(NULL);
-       netConnToText(sock, true /* remote */ , p->remote_txt, sizeof(p->remote_txt),
-                     &p->remote_addr);
+       netConnToText(sock, true /* remote */, p->remote_txt, sizeof(p->remote_txt),
+           &p->remote_addr);
 
        char fname[PATH_MAX];
        snprintf(fname, sizeof(fname), "/proc/%d/syscall", (int)pid);
@@ -185,16 +186,17 @@ static void subprocAdd(struct nsjconf_t *nsjconf, pid_t pid, int sock)
        TAILQ_INSERT_HEAD(&nsjconf->pids, p, pointers);
 
        LOG_D("Added pid '%d' with start time '%u' to the queue for IP: '%s'", pid,
-             (unsigned int)p->start, p->remote_txt);
+           (unsigned int)p->start, p->remote_txt);
 }
 
-static void subprocRemove(struct nsjconf_t *nsjconf, pid_t pid)
+static void subprocRemove(struct nsjconf_tnsjconf, pid_t pid)
 {
-       struct pids_t *p;
-       TAILQ_FOREACH(p, &nsjconf->pids, pointers) {
+       struct pids_t* p;
+       TAILQ_FOREACH(p, &nsjconf->pids, pointers)
+       {
                if (p->pid == pid) {
                        LOG_D("Removing pid '%d' from the queue (IP:'%s', start time:'%s')", p->pid,
-                             p->remote_txt, utilTimeToStr(p->start));
+                           p->remote_txt, utilTimeToStr(p->start));
                        close(p->pid_syscall_fd);
                        TAILQ_REMOVE(&nsjconf->pids, p, pointers);
                        free(p);
@@ -204,33 +206,36 @@ static void subprocRemove(struct nsjconf_t *nsjconf, pid_t pid)
        LOG_W("PID: %d not found (?)", pid);
 }
 
-int subprocCount(struct nsjconf_t *nsjconf)
+int subprocCount(struct nsjconf_tnsjconf)
 {
        int cnt = 0;
-       struct pids_t *p;
-       TAILQ_FOREACH(p, &nsjconf->pids, pointers) {
+       struct pids_t* p;
+       TAILQ_FOREACH(p, &nsjconf->pids, pointers)
+       {
                cnt++;
        }
        return cnt;
 }
 
-void subprocDisplay(struct nsjconf_t *nsjconf)
+void subprocDisplay(struct nsjconf_tnsjconf)
 {
        LOG_I("Total number of spawned namespaces: %d", subprocCount(nsjconf));
        time_t now = time(NULL);
-       struct pids_t *p;
-       TAILQ_FOREACH(p, &nsjconf->pids, pointers) {
+       struct pids_t* p;
+       TAILQ_FOREACH(p, &nsjconf->pids, pointers)
+       {
                time_t diff = now - p->start;
                time_t left = nsjconf->tlimit ? nsjconf->tlimit - diff : 0;
                LOG_I("PID: %d, Remote host: %s, Run time: %ld sec. (time left: %ld sec.)", p->pid,
-                     p->remote_txt, (long)diff, (long)left);
+                   p->remote_txt, (long)diff, (long)left);
        }
 }
 
-static struct pids_t *subprocGetPidElem(struct nsjconf_t *nsjconf, pid_t pid)
+static struct pids_t* subprocGetPidElem(struct nsjconf_t* nsjconf, pid_t pid)
 {
-       struct pids_t *p;
-       TAILQ_FOREACH(p, &nsjconf->pids, pointers) {
+       struct pids_t* p;
+       TAILQ_FOREACH(p, &nsjconf->pids, pointers)
+       {
                if (p->pid == pid) {
                        return p;
                }
@@ -238,14 +243,14 @@ static struct pids_t *subprocGetPidElem(struct nsjconf_t *nsjconf, pid_t pid)
        return NULL;
 }
 
-static void subprocSeccompViolation(struct nsjconf_t *nsjconf, siginfo_t * si)
+static void subprocSeccompViolation(struct nsjconf_t* nsjconf, siginfo_t* si)
 {
        LOG_W("PID: %d commited a syscall/seccomp violation and exited with SIGSYS", si->si_pid);
 
-       struct pids_t *p = subprocGetPidElem(nsjconf, si->si_pid);
+       struct pids_tp = subprocGetPidElem(nsjconf, si->si_pid);
        if (p == NULL) {
                LOG_W("PID: %d, Syscall number: %d, Seccomp reason: %d", (int)si->si_pid,
-                     si->si_syscall, si->si_errno);
+                   si->si_syscall, si->si_errno);
                LOG_E("Couldn't find pid element in the subproc list for PID: %d", (int)si->si_pid);
                return;
        }
@@ -254,31 +259,29 @@ static void subprocSeccompViolation(struct nsjconf_t *nsjconf, siginfo_t * si)
        ssize_t rdsize = utilReadFromFd(p->pid_syscall_fd, buf, sizeof(buf) - 1);
        if (rdsize < 1) {
                LOG_W("PID: %d, Syscall number: %d, Seccomp reason: %d", (int)si->si_pid,
-                     si->si_syscall, si->si_errno);
+                   si->si_syscall, si->si_errno);
                return;
        }
        buf[rdsize - 1] = '\0';
 
        uintptr_t arg1, arg2, arg3, arg4, arg5, arg6, sp, pc;
        ptrdiff_t sc;
-       int ret =
-           sscanf(buf, "%td %tx %tx %tx %tx %tx %tx %tx %tx", &sc, &arg1, &arg2, &arg3, &arg4,
-                  &arg5, &arg6, &sp, &pc);
+       int ret = sscanf(buf, "%td %tx %tx %tx %tx %tx %tx %tx %tx", &sc, &arg1, &arg2, &arg3, &arg4,
+           &arg5, &arg6, &sp, &pc);
        if (ret == 9) {
-               LOG_W
-                   ("PID: %d, Syscall number: %td, Arguments: %#tx, %#tx, %#tx, %#tx, %#tx, %#tx, SP: %#tx, PC: %#tx, si_syscall: %d, si_errno: %#x",
-                    (int)si->si_pid, sc, arg1, arg2, arg3, arg4, arg5, arg6, sp, pc,
-                    si->si_syscall, si->si_errno);
+               LOG_W("PID: %d, Syscall number: %td, Arguments: %#tx, %#tx, %#tx, %#tx, %#tx, %#tx, SP: %#tx, PC: %#tx, si_syscall: %d, si_errno: %#x",
+                   (int)si->si_pid, sc, arg1, arg2, arg3, arg4, arg5, arg6, sp, pc,
+                   si->si_syscall, si->si_errno);
        } else if (ret == 3) {
                LOG_W("PID: %d, Syscall number: %d, Seccomp reason: %d, SP: %#tx, PC: %#tx",
-                     (int)si->si_pid, si->si_syscall, si->si_errno, arg1, arg2);
+                   (int)si->si_pid, si->si_syscall, si->si_errno, arg1, arg2);
        } else {
                LOG_W("PID: %d, Syscall number: %d, Seccomp reason: %d, Syscall string '%s'",
-                     (int)si->si_pid, si->si_syscall, si->si_errno, buf);
+                   (int)si->si_pid, si->si_syscall, si->si_errno, buf);
        }
 }
 
-int subprocReap(struct nsjconf_t *nsjconf)
+int subprocReap(struct nsjconf_tnsjconf)
 {
        int status;
        int rv = 0;
@@ -299,16 +302,16 @@ int subprocReap(struct nsjconf_t *nsjconf)
                if (wait4(si.si_pid, &status, WNOHANG, NULL) == si.si_pid) {
                        cgroupFinishFromParent(nsjconf, si.si_pid);
 
-                       const char *remote_txt = "[UNKNOWN]";
-                       struct pids_t *elem = subprocGetPidElem(nsjconf, si.si_pid);
+                       const charremote_txt = "[UNKNOWN]";
+                       struct pids_telem = subprocGetPidElem(nsjconf, si.si_pid);
                        if (elem) {
                                remote_txt = elem->remote_txt;
                        }
 
                        if (WIFEXITED(status)) {
                                LOG_I("PID: %d (%s) exited with status: %d, (PIDs left: %d)",
-                                     si.si_pid, remote_txt, WEXITSTATUS(status),
-                                     subprocCount(nsjconf) - 1);
+                                   si.si_pid, remote_txt, WEXITSTATUS(status),
+                                   subprocCount(nsjconf) - 1);
                                subprocRemove(nsjconf, si.si_pid);
                                rv = WEXITSTATUS(status) % 100;
                                if (rv == 0 && WEXITSTATUS(status) != 0) {
@@ -316,10 +319,9 @@ int subprocReap(struct nsjconf_t *nsjconf)
                                }
                        }
                        if (WIFSIGNALED(status)) {
-                               LOG_I
-                                   ("PID: %d (%s) terminated with signal: %s (%d), (PIDs left: %d)",
-                                    si.si_pid, remote_txt, utilSigName(WTERMSIG(status)),
-                                    WTERMSIG(status), subprocCount(nsjconf) - 1);
+                               LOG_I("PID: %d (%s) terminated with signal: %s (%d), (PIDs left: %d)",
+                                   si.si_pid, remote_txt, utilSigName(WTERMSIG(status)),
+                                   WTERMSIG(status), subprocCount(nsjconf) - 1);
                                subprocRemove(nsjconf, si.si_pid);
                                rv = 100 + WTERMSIG(status);
                        }
@@ -327,8 +329,9 @@ int subprocReap(struct nsjconf_t *nsjconf)
        }
 
        time_t now = time(NULL);
-       struct pids_t *p;
-       TAILQ_FOREACH(p, &nsjconf->pids, pointers) {
+       struct pids_t* p;
+       TAILQ_FOREACH(p, &nsjconf->pids, pointers)
+       {
                if (nsjconf->tlimit == 0) {
                        continue;
                }
@@ -336,7 +339,7 @@ int subprocReap(struct nsjconf_t *nsjconf)
                time_t diff = now - p->start;
                if (diff >= nsjconf->tlimit) {
                        LOG_I("PID: %d run time >= time limit (%ld >= %ld) (%s). Killing it", pid,
-                             (long)diff, (long)nsjconf->tlimit, p->remote_txt);
+                           (long)diff, (long)nsjconf->tlimit, p->remote_txt);
                        /*
                         * Probably a kernel bug - some processes cannot be killed with KILL if
                         * they're namespaced, and in a stopped state
@@ -350,15 +353,16 @@ int subprocReap(struct nsjconf_t *nsjconf)
        return rv;
 }
 
-void subprocKillAll(struct nsjconf_t *nsjconf)
+void subprocKillAll(struct nsjconf_tnsjconf)
 {
-       struct pids_t *p;
-       TAILQ_FOREACH(p, &nsjconf->pids, pointers) {
+       struct pids_t* p;
+       TAILQ_FOREACH(p, &nsjconf->pids, pointers)
+       {
                kill(p->pid, SIGKILL);
        }
 }
 
-static bool subprocInitParent(struct nsjconf_t *nsjconf, pid_t pid, int pipefd)
+static bool subprocInitParent(struct nsjconf_tnsjconf, pid_t pid, int pipefd)
 {
        if (netInitNsFromParent(nsjconf, pid) == false) {
                LOG_E("Couldn't create and put MACVTAP interface into NS of PID '%d'", pid);
@@ -372,8 +376,7 @@ static bool subprocInitParent(struct nsjconf_t *nsjconf, pid_t pid, int pipefd)
                LOG_E("Couldn't initialize user namespaces for pid %d", pid);
                return false;
        }
-       if (utilWriteToFd(pipefd, &subprocDoneChar, sizeof(subprocDoneChar)) !=
-           sizeof(subprocDoneChar)) {
+       if (utilWriteToFd(pipefd, &subprocDoneChar, sizeof(subprocDoneChar)) != sizeof(subprocDoneChar)) {
                LOG_E("Couldn't signal the new process via a socketpair");
                return false;
        }
@@ -381,11 +384,11 @@ static bool subprocInitParent(struct nsjconf_t *nsjconf, pid_t pid, int pipefd)
 }
 
 /* Will be used inside the child process only, so it's save to have it in BSS */
-static uint8_t subprocCloneStack[128 * 1024];  /* 128 KiB */
+static uint8_t subprocCloneStack[128 * 1024]; /* 128 KiB */
 /* Cannot be on the stack, as the child's stack pointer will change after clone() */
 static __thread jmp_buf env;
 
-static int subprocCloneFunc(void *arg __attribute__ ((unused)))
+static int subprocCloneFunc(void* arg __attribute__((unused)))
 {
        longjmp(env, 1);
        return 0;
@@ -409,7 +412,7 @@ pid_t subprocClone(uintptr_t flags)
                 * Avoid the problem of the stack growing up/down under different CPU architectures, by using
                 * middle of the static stack buffer (which is temporary, and used only inside of subprocCloneFunc
                 */
-               void *stack = &subprocCloneStack[sizeof(subprocCloneStack) / 2];
+               voidstack = &subprocCloneStack[sizeof(subprocCloneStack) / 2];
                /* Parent */
                return clone(subprocCloneFunc, stack, flags, NULL, NULL, NULL);
        }
@@ -417,7 +420,7 @@ pid_t subprocClone(uintptr_t flags)
        return 0;
 }
 
-void subprocRunChild(struct nsjconf_t *nsjconf, int fd_in, int fd_out, int fd_err)
+void subprocRunChild(struct nsjconf_tnsjconf, int fd_in, int fd_out, int fd_err)
 {
        if (netLimitConns(nsjconf, fd_in) == false) {
                return;
@@ -461,7 +464,8 @@ void subprocRunChild(struct nsjconf_t *nsjconf, int fd_in, int fd_out, int fd_er
                PLOG_E("clone(flags=%s) failed. You probably need root privileges if your system "
                       "doesn't support CLONE_NEWUSER. Alternatively, you might want to recompile your "
                       "kernel with support for namespaces or check the setting of the "
-                      "kernel.unprivileged_userns_clone sysctl", subprocCloneFlagsToStr(flags));
+                      "kernel.unprivileged_userns_clone sysctl",
+                   subprocCloneFlagsToStr(flags));
                close(parent_fd);
                return;
        }
@@ -474,10 +478,10 @@ void subprocRunChild(struct nsjconf_t *nsjconf, int fd_in, int fd_out, int fd_er
 
        close(parent_fd);
        char cs_addr[64];
-       netConnToText(fd_in, true /* remote */ , cs_addr, sizeof(cs_addr), NULL);
+       netConnToText(fd_in, true /* remote */, cs_addr, sizeof(cs_addr), NULL);
 }
 
-int subprocSystem(const char **argv, char **env)
+int subprocSystem(const char** argv, char** env)
 {
        bool exec_failed = false;
 
@@ -497,7 +501,7 @@ int subprocSystem(const char **argv, char **env)
 
        if (pid == 0) {
                close(sv[0]);
-               execve(argv[0], (char *const *)argv, (char *const *)env);
+               execve(argv[0], (char* const*)argv, (char* const*)env);
                PLOG_W("execve('%s')", argv[0]);
                utilWriteToFd(sv[1], "A", 1);
                exit(0);
@@ -535,7 +539,7 @@ int subprocSystem(const char **argv, char **env)
                if (WIFSIGNALED(status)) {
                        int exit_signal = WTERMSIG(status);
                        LOG_W("PID %d killed by signal: %d (%s)", pid, exit_signal,
-                             utilSigName(exit_signal));
+                           utilSigName(exit_signal));
                        return 2;
                }
                LOG_W("Unknown exit status: %d", status);
index a7fd328b1b124199171d75043c71749ea1256592..a4f64e797eee09c61f40e03ffd76e991be59af9f 100644 (file)
--- a/subproc.h
+++ b/subproc.h
 #include <inttypes.h>
 #include <unistd.h>
 
-void subprocRunChild(struct nsjconf_t *nsjconf, int fd_in, int fd_out, int fd_err);
-int subprocCount(struct nsjconf_t *nsjconf);
-void subprocDisplay(struct nsjconf_t *nsjconf);
-void subprocKillAll(struct nsjconf_t *nsjconf);
-int subprocSystem(const char **argv, char **env);
+void subprocRunChild(struct nsjconf_tnsjconf, int fd_in, int fd_out, int fd_err);
+int subprocCount(struct nsjconf_tnsjconf);
+void subprocDisplay(struct nsjconf_tnsjconf);
+void subprocKillAll(struct nsjconf_tnsjconf);
+int subprocSystem(const char** argv, char** env);
 pid_t subprocClone(uintptr_t flags);
-void subprocCloneFlags(struct nsjconf_t *nsjconf);
+void subprocCloneFlags(struct nsjconf_tnsjconf);
 
 /* Returns the exit code of the first failing subprocess, or 0 if none fail */
-int subprocReap(struct nsjconf_t *nsjconf);
+int subprocReap(struct nsjconf_tnsjconf);
 
-#endif                         /* NS_PROC_H */
+#endif /* NS_PROC_H */
diff --git a/user.c b/user.c
index 7fa2525599943a0380d3a13d5f7a2d912ee64ff9..9f5815a2a92796e538f270f1fc8dc8e1eb35e74f 100644 (file)
--- a/user.c
+++ b/user.c
@@ -52,7 +52,7 @@ static bool userSetGroups(pid_t pid)
 
        char fname[PATH_MAX];
        snprintf(fname, sizeof(fname), "/proc/%d/setgroups", pid);
-       const char *denystr = "deny";
+       const chardenystr = "deny";
        if (utilWriteBufToFile(fname, denystr, strlen(denystr), O_WRONLY) == false) {
                LOG_E("utilWriteBufToFile('%s', '%s') failed", fname, denystr);
                return false;
@@ -60,20 +60,21 @@ static bool userSetGroups(pid_t pid)
        return true;
 }
 
-static bool userUidMapSelf(struct nsjconf_t *nsjconf, pid_t pid)
+static bool userUidMapSelf(struct nsjconf_tnsjconf, pid_t pid)
 {
        char fname[PATH_MAX];
        snprintf(fname, sizeof(fname), "/proc/%d/uid_map", pid);
 
        char map[4096] = {[0] = '\0' };
 
-       struct idmap_t *p;
-       TAILQ_FOREACH(p, &nsjconf->uids, pointers) {
+       struct idmap_t* p;
+       TAILQ_FOREACH(p, &nsjconf->uids, pointers)
+       {
                if (p->is_newidmap) {
                        continue;
                }
                utilSSnPrintf(map, sizeof(map), "%lu %lu %zu\n", (unsigned long)p->inside_id,
-                             (unsigned long)p->outside_id, p->count);
+                   (unsigned long)p->outside_id, p->count);
        }
 
        if (strlen(map) == 0) {
@@ -89,20 +90,21 @@ static bool userUidMapSelf(struct nsjconf_t *nsjconf, pid_t pid)
        return true;
 }
 
-static bool userGidMapSelf(struct nsjconf_t *nsjconf, pid_t pid)
+static bool userGidMapSelf(struct nsjconf_tnsjconf, pid_t pid)
 {
        char fname[PATH_MAX];
        snprintf(fname, sizeof(fname), "/proc/%d/gid_map", pid);
 
        char map[4096] = {[0] = '\0' };
 
-       struct idmap_t *p;
-       TAILQ_FOREACH(p, &nsjconf->gids, pointers) {
+       struct idmap_t* p;
+       TAILQ_FOREACH(p, &nsjconf->gids, pointers)
+       {
                if (p->is_newidmap) {
                        continue;
                }
                utilSSnPrintf(map, sizeof(map), "%lu %lu %zu\n", (unsigned long)p->inside_id,
-                             (unsigned long)p->outside_id, p->count);
+                   (unsigned long)p->outside_id, p->count);
        }
 
        if (strlen(map) == 0) {
@@ -119,11 +121,11 @@ static bool userGidMapSelf(struct nsjconf_t *nsjconf, pid_t pid)
 }
 
 /* Use /usr/bin/newgidmap for writing the gid map */
-static bool userGidMapExternal(struct nsjconf_t *nsjconf, pid_t pid UNUSED)
+static bool userGidMapExternal(struct nsjconf_tnsjconf, pid_t pid UNUSED)
 {
        static size_t idx = 0;
 
-       const char *argv[1024];
+       const charargv[1024];
        char parms[1024][256];
 
        argv[idx++] = "/usr/bin/newgidmap";
@@ -132,9 +134,10 @@ static bool userGidMapExternal(struct nsjconf_t *nsjconf, pid_t pid UNUSED)
        argv[idx] = parms[idx];
        idx++;
 
-       struct idmap_t *p;
+       struct idmap_tp;
        bool use = false;
-       TAILQ_FOREACH(p, &nsjconf->gids, pointers) {
+       TAILQ_FOREACH(p, &nsjconf->gids, pointers)
+       {
                if (p->is_newidmap == false) {
                        continue;
                }
@@ -172,11 +175,11 @@ static bool userGidMapExternal(struct nsjconf_t *nsjconf, pid_t pid UNUSED)
 }
 
 /* Use /usr/bin/newuidmap for writing the uid map */
-static bool userUidMapExternal(struct nsjconf_t *nsjconf, pid_t pid UNUSED)
+static bool userUidMapExternal(struct nsjconf_tnsjconf, pid_t pid UNUSED)
 {
        static size_t idx = 0;
 
-       const char *argv[1024];
+       const charargv[1024];
        char parms[1024][256];
 
        argv[idx++] = "/usr/bin/newuidmap";
@@ -186,8 +189,9 @@ static bool userUidMapExternal(struct nsjconf_t *nsjconf, pid_t pid UNUSED)
        idx++;
 
        bool use = false;
-       struct idmap_t *p;
-       TAILQ_FOREACH(p, &nsjconf->uids, pointers) {
+       struct idmap_t* p;
+       TAILQ_FOREACH(p, &nsjconf->uids, pointers)
+       {
                if (p->is_newidmap == false) {
                        continue;
                }
@@ -224,7 +228,7 @@ static bool userUidMapExternal(struct nsjconf_t *nsjconf, pid_t pid UNUSED)
        return true;
 }
 
-static bool userUidGidMap(struct nsjconf_t *nsjconf, pid_t pid)
+static bool userUidGidMap(struct nsjconf_tnsjconf, pid_t pid)
 {
        if (!userGidMapSelf(nsjconf, pid)) {
                return false;
@@ -241,7 +245,7 @@ static bool userUidGidMap(struct nsjconf_t *nsjconf, pid_t pid)
        return true;
 }
 
-bool userInitNsFromParent(struct nsjconf_t * nsjconf, pid_t pid)
+bool userInitNsFromParent(struct nsjconf_t* nsjconf, pid_t pid)
 {
        if (userSetGroups(pid) == false) {
                return false;
@@ -255,13 +259,13 @@ bool userInitNsFromParent(struct nsjconf_t * nsjconf, pid_t pid)
        return true;
 }
 
-bool userInitNsFromChild(struct nsjconf_t * nsjconf)
+bool userInitNsFromChild(struct nsjconf_t* nsjconf)
 {
        /*
         * Best effort because of /proc/self/setgroups
         */
        LOG_D("setgroups(0, NULL)");
-       gid_t *group_list = NULL;
+       gid_tgroup_list = NULL;
        if (setgroups(0, group_list) == -1) {
                PLOG_D("setgroups(NULL) failed");
        }
@@ -270,24 +274,23 @@ bool userInitNsFromChild(struct nsjconf_t * nsjconf)
         * Make sure all capabilities are retained after the subsequent setuid/setgid, as they will be
         * needed for privileged operations: mounts, uts change etc.
         */
-       if (prctl(PR_SET_SECUREBITS, SECBIT_KEEP_CAPS | SECBIT_NO_SETUID_FIXUP, 0UL, 0UL, 0UL) ==
-           -1) {
+       if (prctl(PR_SET_SECUREBITS, SECBIT_KEEP_CAPS | SECBIT_NO_SETUID_FIXUP, 0UL, 0UL, 0UL) == -1) {
                PLOG_E("prctl(PR_SET_SECUREBITS, SECBIT_KEEP_CAPS | SECBIT_NO_SETUID_FIXUP)");
                return false;
        }
 
        LOG_D("setresgid(%d, %d, %d)", TAILQ_FIRST(&nsjconf->gids)->inside_id,
-             TAILQ_FIRST(&nsjconf->gids)->inside_id, TAILQ_FIRST(&nsjconf->gids)->inside_id);
+           TAILQ_FIRST(&nsjconf->gids)->inside_id, TAILQ_FIRST(&nsjconf->gids)->inside_id);
        if (syscall(__NR_setresgid, TAILQ_FIRST(&nsjconf->gids)->inside_id,
-                   TAILQ_FIRST(&nsjconf->gids)->inside_id, TAILQ_FIRST(&nsjconf->gids)->inside_id)
+               TAILQ_FIRST(&nsjconf->gids)->inside_id, TAILQ_FIRST(&nsjconf->gids)->inside_id)
            == -1) {
                PLOG_E("setresgid(%u)", TAILQ_FIRST(&nsjconf->gids)->inside_id);
                return false;
        }
        LOG_D("setresuid(%d, %d, %d)", TAILQ_FIRST(&nsjconf->uids)->inside_id,
-             TAILQ_FIRST(&nsjconf->uids)->inside_id, TAILQ_FIRST(&nsjconf->uids)->inside_id);
+           TAILQ_FIRST(&nsjconf->uids)->inside_id, TAILQ_FIRST(&nsjconf->uids)->inside_id);
        if (syscall(__NR_setresuid, TAILQ_FIRST(&nsjconf->uids)->inside_id,
-                   TAILQ_FIRST(&nsjconf->uids)->inside_id, TAILQ_FIRST(&nsjconf->uids)->inside_id)
+               TAILQ_FIRST(&nsjconf->uids)->inside_id, TAILQ_FIRST(&nsjconf->uids)->inside_id)
            == -1) {
                PLOG_E("setresuid(%u)", TAILQ_FIRST(&nsjconf->uids)->inside_id);
                return false;
@@ -296,67 +299,67 @@ bool userInitNsFromChild(struct nsjconf_t * nsjconf)
        return true;
 }
 
-static uid_t cmdParseUid(const char *id)
+static uid_t cmdParseUid(const charid)
 {
        if (id == NULL || strlen(id) == 0) {
                return getuid();
        }
-       struct passwd *pw = getpwnam(id);
+       struct passwdpw = getpwnam(id);
        if (pw != NULL) {
                return pw->pw_uid;
        }
        if (utilIsANumber(id)) {
-               return (uid_t) strtoull(id, NULL, 0);
+               return (uid_t)strtoull(id, NULL, 0);
        }
        return -1;
 }
 
-static gid_t cmdParseGid(const char *id)
+static gid_t cmdParseGid(const charid)
 {
        if (id == NULL || strlen(id) == 0) {
                return getgid();
        }
-       struct group *gr = getgrnam(id);
+       struct groupgr = getgrnam(id);
        if (gr != NULL) {
                return gr->gr_gid;
        }
        if (utilIsANumber(id)) {
-               return (gid_t) strtoull(id, NULL, 0);
+               return (gid_t)strtoull(id, NULL, 0);
        }
        return -1;
 }
 
-bool userParseId(struct nsjconf_t * nsjconf, const char *i_id, const char *o_id, size_t cnt,
-                bool is_gid, bool is_newidmap)
+bool userParseId(struct nsjconf_t* nsjconf, const char* i_id, const char* o_id, size_t cnt,
+    bool is_gid, bool is_newidmap)
 {
        uid_t inside_id;
        uid_t outside_id;
 
        if (is_gid) {
                inside_id = cmdParseGid(i_id);
-               if (inside_id == (uid_t) - 1) {
+               if (inside_id == (uid_t)-1) {
                        LOG_W("Cannot parse '%s' as GID", i_id);
                        return false;
                }
                outside_id = cmdParseGid(o_id);
-               if (inside_id == (uid_t) - 1) {
+               if (inside_id == (uid_t)-1) {
                        LOG_W("Cannot parse '%s' as GID", o_id);
                        return false;
                }
        } else {
                inside_id = cmdParseUid(i_id);
-               if (inside_id == (uid_t) - 1) {
+               if (inside_id == (uid_t)-1) {
                        LOG_W("Cannot parse '%s' as UID", i_id);
                        return false;
                }
                outside_id = cmdParseUid(o_id);
-               if (inside_id == (uid_t) - 1) {
+               if (inside_id == (uid_t)-1) {
                        LOG_W("Cannot parse '%s' as UID", o_id);
                        return false;
                }
        }
 
-       struct idmap_t *p = utilMalloc(sizeof(struct idmap_t));
+       struct idmap_tp = utilMalloc(sizeof(struct idmap_t));
        p->inside_id = inside_id;
        p->outside_id = outside_id;
        p->count = cnt;
diff --git a/user.h b/user.h
index 9f9f995811aa9af4d4badba36c0f79d6a6ca96a2..f02b65ba1f5c1469d25d577dab0eb6e9bb5bc677 100644 (file)
--- a/user.h
+++ b/user.h
 
 #include "common.h"
 
-bool userInitNsFromParent(struct nsjconf_t *nsjconf, pid_t pid);
-bool userInitNsFromChild(struct nsjconf_t *nsjconf);
+bool userInitNsFromParent(struct nsjconf_tnsjconf, pid_t pid);
+bool userInitNsFromChild(struct nsjconf_tnsjconf);
 
-bool userParseId(struct nsjconf_t *nsjconf, const char *i_id, const char *o_id, size_t cnt,
-                bool is_gid, bool is_newidmap);
+bool userParseId(struct nsjconf_t* nsjconf, const char* i_id, const char* o_id, size_t cnt,
+    bool is_gid, bool is_newidmap);
 
-#endif                         /* NS_USER_H */
+#endif /* NS_USER_H */
diff --git a/util.c b/util.c
index 18c17830a550f870c24fc166d7f4447f6de2846e..742a5ba268494bce3de39dacd77704813ebf47c4 100644 (file)
--- a/util.c
+++ b/util.c
 
 #include "log.h"
 
-void *utilMalloc(size_t sz)
+voidutilMalloc(size_t sz)
 {
-       void *ret = malloc(sz);
+       voidret = malloc(sz);
        if (ret == NULL) {
                LOG_F("malloc(sz=%zu) failed", sz);
        }
        return ret;
 }
 
-void *utilCalloc(size_t sz)
+voidutilCalloc(size_t sz)
 {
-       void *r = utilMalloc(sz);
+       voidr = utilMalloc(sz);
        memset(r, '\0', sz);
        return r;
 }
 
-char *utilStrDup(const char *str)
+char* utilStrDup(const char* str)
 {
        if (str == NULL) {
                return NULL;
        }
-       char *ret = strdup(str);
+       charret = strdup(str);
        if (ret == NULL) {
                LOG_E("Cannot allocate memory for strdup(sz=%zu)", strlen(str));
        }
        return ret;
 }
 
-uint8_t *utilMemDup(const uint8_t * src, size_t len)
+uint8_t* utilMemDup(const uint8_t* src, size_t len)
 {
        if (src == NULL) {
                return NULL;
        }
-       uint8_t *ret = utilMalloc(len);
+       uint8_tret = utilMalloc(len);
        memcpy(ret, src, len);
        return ret;
 }
 
-ssize_t utilReadFromFd(int fd, void *buf, size_t len)
+ssize_t utilReadFromFd(int fd, voidbuf, size_t len)
 {
-       uint8_t *charbuf = (uint8_t *) buf;
+       uint8_t* charbuf = (uint8_t*)buf;
 
        size_t readSz = 0;
        while (readSz < len) {
@@ -95,7 +95,7 @@ ssize_t utilReadFromFd(int fd, void *buf, size_t len)
        return readSz;
 }
 
-ssize_t utilReadFromFile(const char *fname, void *buf, size_t len)
+ssize_t utilReadFromFile(const char* fname, void* buf, size_t len)
 {
        int fd;
        TEMP_FAILURE_RETRY(fd = open(fname, O_RDONLY | O_CLOEXEC));
@@ -108,9 +108,9 @@ ssize_t utilReadFromFile(const char *fname, void *buf, size_t len)
        return ret;
 }
 
-ssize_t utilWriteToFd(int fd, const void *buf, size_t len)
+ssize_t utilWriteToFd(int fd, const voidbuf, size_t len)
 {
-       const uint8_t *charbuf = (const uint8_t *)buf;
+       const uint8_t* charbuf = (const uint8_t*)buf;
 
        size_t writtenSz = 0;
        while (writtenSz < len) {
@@ -126,7 +126,7 @@ ssize_t utilWriteToFd(int fd, const void *buf, size_t len)
        return true;
 }
 
-bool utilWriteBufToFile(const char *filename, const void *buf, size_t len, int open_flags)
+bool utilWriteBufToFile(const char* filename, const void* buf, size_t len, int open_flags)
 {
        int fd;
        TEMP_FAILURE_RETRY(fd = open(filename, open_flags, 0644));
@@ -148,7 +148,7 @@ bool utilWriteBufToFile(const char *filename, const void *buf, size_t len, int o
        return true;
 }
 
-bool utilCreateDirRecursively(const char *dir)
+bool utilCreateDirRecursively(const chardir)
 {
        if (dir[0] != '/') {
                LOG_W("The directory path must start with '/': '%s' provided", dir);
@@ -163,13 +163,13 @@ bool utilCreateDirRecursively(const char *dir)
 
        char path[PATH_MAX];
        snprintf(path, sizeof(path), "%s", dir);
-       char *curr = path;
+       charcurr = path;
        for (;;) {
                while (*curr == '/') {
                        curr++;
                }
 
-               char *next = strchr(curr, '/');
+               charnext = strchr(curr, '/');
                if (next == NULL) {
                        close(prev_dir_fd);
                        return true;
@@ -194,7 +194,7 @@ bool utilCreateDirRecursively(const char *dir)
        }
 }
 
-int utilSSnPrintf(char *str, size_t size, const char *format, ...)
+int utilSSnPrintf(char* str, size_t size, const char* format, ...)
 {
        char buf1[size];
        char buf2[size];
@@ -209,7 +209,7 @@ int utilSSnPrintf(char *str, size_t size, const char *format, ...)
        return snprintf(str, size, "%s%s", buf1, buf2);
 }
 
-bool utilIsANumber(const char *s)
+bool utilIsANumber(const chars)
 {
        for (int i = 0; s[i]; s++) {
                if (!isdigit(s[i]) && s[i] != 'x') {
@@ -232,16 +232,16 @@ static void utilRndInitThread(void)
        if (syscall(__NR_getrandom, &rndX, sizeof(rndX), 0) == sizeof(rndX)) {
                return;
        }
-#endif                         /* defined(__NR_getrandom) */
+#endif /* defined(__NR_getrandom) */
        int fd = open("/dev/urandom", O_RDONLY | O_CLOEXEC);
        if (fd == -1) {
                PLOG_D("Couldn't open /dev/urandom for reading. Using gettimeofday fall-back");
                struct timeval tv;
                gettimeofday(&tv, NULL);
-               rndX = tv.tv_usec + ((uint64_t) tv.tv_sec << 32);
+               rndX = tv.tv_usec + ((uint64_t)tv.tv_sec << 32);
                return;
        }
-       if (utilReadFromFd(fd, (uint8_t *) & rndX, sizeof(rndX)) != sizeof(rndX)) {
+       if (utilReadFromFd(fd, (uint8_t*)&rndX, sizeof(rndX)) != sizeof(rndX)) {
                PLOG_F("Couldn't read '%zu' bytes from /dev/urandom", sizeof(rndX));
                close(fd);
        }
@@ -256,15 +256,15 @@ uint64_t utilRnd64(void)
 }
 
 #define VALSTR_STRUCT(x) \
-    {                    \
-        x, #x            \
-    }
-const char *utilSigName(int signo)
+       {                \
+               x, #x    \
+       }
+const charutilSigName(int signo)
 {
        static __thread char sigstr[32];
        sigstr[0] = '\0';
 
-// clang-format off
+       // clang-format off
     static struct {
         const int signo;
         const char* const name;
@@ -299,7 +299,7 @@ const char *utilSigName(int signo)
         VALSTR_STRUCT(SIGUSR2),
         VALSTR_STRUCT(SIGWINCH),
     };
-// clang-format on
+       // clang-format on
 
        for (size_t i = 0; i < ARRAYSIZE(sigNames); i++) {
                if (signo == sigNames[i].signo) {
@@ -317,7 +317,7 @@ const char *utilSigName(int signo)
 }
 
 static __thread char timestr[64];
-const char *utilTimeToStr(time_t t)
+const charutilTimeToStr(time_t t)
 {
        struct tm utctime;
        localtime_r(&t, &utctime);
diff --git a/util.h b/util.h
index e21df5a365eca7cb8429d96339705bee9e01e366..4d509598545c0a516735d46554bf613dd82c8f44 100644 (file)
--- a/util.h
+++ b/util.h
 
 #include "common.h"
 
-void *utilMalloc(size_t sz);
-void *utilCalloc(size_t sz);
-char *utilStrDup(const char *str);
-uint8_t *utilMemDup(const uint8_t * src, size_t len);
-ssize_t utilReadFromFd(int fd, void *buf, size_t len);
-ssize_t utilReadFromFile(const char *fname, void *buf, size_t len);
-ssize_t utilWriteToFd(int fd, const void *buf, size_t len);
-bool utilWriteBufToFile(const char *filename, const void *buf, size_t len, int open_flags);
-bool utilCreateDirRecursively(const char *dir);
-int utilSSnPrintf(char *str, size_t size, const char *format, ...);
-bool utilIsANumber(const char *s);
+voidutilMalloc(size_t sz);
+voidutilCalloc(size_t sz);
+char* utilStrDup(const char* str);
+uint8_t* utilMemDup(const uint8_t* src, size_t len);
+ssize_t utilReadFromFd(int fd, voidbuf, size_t len);
+ssize_t utilReadFromFile(const char* fname, void* buf, size_t len);
+ssize_t utilWriteToFd(int fd, const voidbuf, size_t len);
+bool utilWriteBufToFile(const char* filename, const void* buf, size_t len, int open_flags);
+bool utilCreateDirRecursively(const chardir);
+int utilSSnPrintf(char* str, size_t size, const char* format, ...);
+bool utilIsANumber(const chars);
 uint64_t utilRnd64(void);
-const char *utilSigName(int signo);
-const char *utilTimeToStr(time_t t);
+const charutilSigName(int signo);
+const charutilTimeToStr(time_t t);
 
-#endif                         /* NS_UTIL_H */
+#endif /* NS_UTIL_H */
diff --git a/uts.c b/uts.c
index db0b357bd0e873f421fdf40bc399f6ce3105d98b..0e7fed13e1283b70db4fa1092a559aaf5e71fbbf 100644 (file)
--- a/uts.c
+++ b/uts.c
@@ -26,7 +26,7 @@
 
 #include "log.h"
 
-bool utsInitNs(struct nsjconf_t * nsjconf)
+bool utsInitNs(struct nsjconf_t* nsjconf)
 {
        if (nsjconf->clone_newuts == false) {
                return true;
diff --git a/uts.h b/uts.h
index 73b52becb348971b1f532a4ae0ad702e0525097a..9eca8b29ec08c5d45d8c8181d2dbadc840d44a84 100644 (file)
--- a/uts.h
+++ b/uts.h
@@ -27,6 +27,6 @@
 
 #include "common.h"
 
-bool utsInitNs(struct nsjconf_t *nsjconf);
+bool utsInitNs(struct nsjconf_tnsjconf);
 
-#endif                         /* NS_UTS_H */
+#endif /* NS_UTS_H */