import setns
import os
+import sys
-from optparse import OptionParser
+#from optparse import OptionParser
drop_capabilities='cap_sys_admin,cap_net_admin,cap_sys_boot,cap_sys_module'.split(',')
+"""
parser = OptionParser()
parser.add_option("-n", "--net",
action="store_true", dest="netns", default=False,
help="Enter pid namespace")
(options, args) = parser.parse_args()
+"""
+args = sys.argv[1:]
try:
slice_name = args[0]
cap_args = map(lambda c:'--drop='+c, drop_capabilities)
if (pid == 0):
- os.execv('/usr/sbin/capsh',cap_args+['--'])
+ os.execv('/usr/sbin/capsh',cap_args+['--']+args[1:])
else:
os.waitpid(pid,0)
return argv2;
}
-#define NUM_LXCSU_EXEC_ARGS 3
+#define NUM_LXCSU_EXEC_ARGS 1
int main(int argc, char **argv, char **envp)
{
// Populate arguments
snprintf(slice_id_str, 255, "%u", slice_xid);
argv2[0] = strdup(LXCSU_PATH);
- argv2[1] = strdup("-n");
- argv2[2] = strdup("-m");
- argv2[3] = strdup(slice_name);
+ argv2[1] = strdup(slice_name);
if (setuid(geteuid())) goto out_exception;