# DO NOT DELETE THIS LINE -- make depend depends on it.
-caps.o: caps.h nsjail.h common.h log.h util.h
+caps.o: caps.h nsjail.h log.h macros.h util.h
cgroup.o: cgroup.h nsjail.h log.h util.h
-cmdline.o: cmdline.h nsjail.h caps.h common.h config.h log.h mnt.h sandbox.h
+cmdline.o: cmdline.h nsjail.h caps.h config.h log.h macros.h mnt.h sandbox.h
cmdline.o: user.h util.h
-config.o: caps.h nsjail.h cmdline.h common.h config.h log.h mnt.h user.h
+config.o: caps.h nsjail.h cmdline.h config.h log.h macros.h mnt.h user.h
config.o: util.h
contain.o: contain.h nsjail.h caps.h cgroup.h cpu.h log.h mnt.h net.h pid.h
contain.o: user.h uts.h
cpu.o: cpu.h nsjail.h log.h util.h
log.o: log.h nsjail.h
-mnt.o: mnt.h nsjail.h common.h log.h subproc.h util.h
+mnt.o: mnt.h nsjail.h log.h macros.h subproc.h util.h
net.o: net.h nsjail.h log.h subproc.h
-nsjail.o: nsjail.h cmdline.h common.h log.h net.h subproc.h util.h
+nsjail.o: nsjail.h cmdline.h log.h macros.h net.h subproc.h util.h
pid.o: pid.h nsjail.h log.h subproc.h
sandbox.o: sandbox.h nsjail.h kafel/include/kafel.h log.h
-subproc.o: subproc.h nsjail.h cgroup.h common.h contain.h log.h net.h
+subproc.o: subproc.h nsjail.h cgroup.h contain.h log.h macros.h net.h
subproc.o: sandbox.h user.h util.h
uts.o: uts.h nsjail.h log.h
-user.o: user.h nsjail.h common.h log.h subproc.h util.h
-util.o: util.h nsjail.h common.h log.h
+user.o: user.h nsjail.h log.h macros.h subproc.h util.h
+util.o: util.h nsjail.h log.h macros.h
#include <sys/types.h>
#include <unistd.h>
-#include "common.h"
#include "log.h"
+#include "macros.h"
#include "util.h"
namespace caps {
#include <memory>
#include "caps.h"
-#include "common.h"
#include "config.h"
#include "log.h"
+#include "macros.h"
#include "mnt.h"
#include "sandbox.h"
#include "user.h"
+++ /dev/null
-/*
-
- nsjail - common macros
- -----------------------------------------
-
- Copyright 2014 Google Inc. All Rights Reserved.
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
-*/
-
-#ifndef NS_COMMON_H
-#define NS_COMMON_H
-
-#define ARRAYSIZE(array) (sizeof(array) / sizeof(*array))
-#define UNUSED __attribute__((unused))
-
-#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)
-
-#ifdef __clang__
-static void __attribute__ ((unused)) __clang_cleanup_func(void (^*dfunc) (void))
-{
- (*dfunc) ();
-}
-
-#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 _DEFER(a, __COUNTER__)
-#endif
-#endif
-
-#define NS_VALSTR_STRUCT(x) \
- { x, #x }
-
-#endif /* NS_COMMON_H */
#include "caps.h"
#include "cmdline.h"
-#include "common.h"
#include "config.h"
#include "config.pb.h"
#include "log.h"
+#include "macros.h"
#include "mnt.h"
#include "user.h"
#include "util.h"
--- /dev/null
+/*
+
+ nsjail - common macros
+ -----------------------------------------
+
+ Copyright 2014 Google Inc. All Rights Reserved.
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+*/
+
+#ifndef NS_COMMON_H
+#define NS_COMMON_H
+
+#include <unistd.h>
+
+#if !defined(TEMP_FAILURE_RETRY)
+#define TEMP_FAILURE_RETRY(expression) \
+ (__extension__({ \
+ long int __result; \
+ do \
+ __result = (long int)(expression); \
+ while (__result == -1L && errno == EINTR); \
+ __result; \
+ }))
+#endif /* !defined(TEMP_FAILURE_RETRY) */
+
+#define ARRAYSIZE(array) (sizeof(array) / sizeof(*array))
+#define UNUSED __attribute__((unused))
+
+#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)
+
+#ifdef __clang__
+static void __attribute__ ((unused)) __clang_cleanup_func(void (^*dfunc) (void))
+{
+ (*dfunc) ();
+}
+
+#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 _DEFER(a, __COUNTER__)
+#endif
+#endif
+
+#define NS_VALSTR_STRUCT(x) \
+ { x, #x }
+
+#endif /* NS_COMMON_H */
#include <syscall.h>
#include <unistd.h>
-#include "common.h"
#include "log.h"
+#include "macros.h"
#include "subproc.h"
#include "util.h"
#include <unistd.h>
#include "cmdline.h"
-#include "common.h"
#include "log.h"
+#include "macros.h"
#include "net.h"
#include "subproc.h"
#include "util.h"
#include <string>
#include <vector>
-#if !defined(TEMP_FAILURE_RETRY)
-#define TEMP_FAILURE_RETRY(expression) \
- (__extension__({ \
- long int __result; \
- do \
- __result = (long int)(expression); \
- while (__result == -1L && errno == EINTR); \
- __result; \
- }))
-#endif /* !defined(TEMP_FAILURE_RETRY) */
-
static const int nssigs[] = {
SIGINT,
SIGQUIT,
char remote_txt[64];
struct sockaddr_in6 remote_addr;
int pid_syscall_fd;
- TAILQ_ENTRY(pids_t)
- pointers;
};
struct mounts_t {
bool isSymlink;
bool mandatory;
bool mounted;
- TAILQ_ENTRY(mounts_t)
- pointers;
+ TAILQ_ENTRY(mounts_t) pointers;
};
struct idmap_t {
uid_t outside_id;
size_t count;
bool is_newidmap;
- TAILQ_ENTRY(idmap_t)
- pointers;
};
enum ns_mode_t {
#include <unistd.h>
#include "cgroup.h"
-#include "common.h"
#include "contain.h"
#include "log.h"
+#include "macros.h"
#include "net.h"
#include "sandbox.h"
#include "user.h"
#include <sys/types.h>
#include <unistd.h>
-#include "common.h"
#include "log.h"
+#include "macros.h"
#include "subproc.h"
#include "util.h"
#include <time.h>
#include <unistd.h>
-#include "common.h"
#include "log.h"
+#include "macros.h"
namespace util {