Commit Graph

2861 Commits

Author SHA1 Message Date
Stéphane Graber
8525b5e51e
lxc-checkconfig: Fix parsing on vserver kernels
Signed-off-by: Stéphane Graber <stgraber@ubuntu.com>
2014-02-18 17:09:14 -05:00
Serge Hallyn
658979c5f9 Fix unprivileged networking
If we are unprivileged and have asked for a veth device, then create
a pipe over which to pass the veth names.

Network-related todos:
1. set mtu on the container side of veth device
2. set mtu in lxc-user-nic.  Note that this probably requires an
   update to the /etc/lxc/lxc-usernet file :(

Signed-off-by: Serge Hallyn <serge.hallyn@ubuntu.com>
Acked-by: Stéphane Graber <stgraber@ubuntu.com>
2014-02-18 16:36:34 -05:00
Serge Hallyn
4f1d50d114 cache whether 'optional' was in mntopts
after commit 4e4ca16158 we are
checking for optional in mntopts after we forcibly remove it.
Cache whether we had it before removing it.

Signed-off-by: Serge Hallyn <serge.hallyn@ubuntu.com>
2014-02-18 15:01:38 -06:00
Eivind Uggedal
60838413eb gentoo: fix typo in config cross-reference comment
Signed-off-by: Eivind Uggedal <eivind@uggedal.com>
Acked-by: Stéphane Graber <stgraber@ubuntu.com>
2014-02-18 14:22:41 -05:00
Dwight Engen
3a5ec236b7 doc: update for commit 69aa6655
Signed-off-by: Dwight Engen <dwight.engen@oracle.com>
Acked-by: Stéphane Graber <stgraber@ubuntu.com>
2014-02-18 14:21:32 -05:00
Serge Hallyn
4e4ca16158 drop create= from mount options (v2)
Otherwise mount may return -EINVAL if in-kernel super-block parser
objects (as is the case with ext4).

Changelog v2:
	also drop 'optional'
	specifically drop create=dir, not create=*
	fix order of arguments for memmove

Signed-off-by: Serge Hallyn <serge.hallyn@ubuntu.com>
Acked-by: Stéphane Graber <stgraber@ubuntu.com>
2014-02-18 14:09:21 -05:00
Stéphane Graber
b36db61d10
Add missing include
Signed-off-by: Stéphane Graber <stgraber@ubuntu.com>
2014-02-18 12:44:54 -05:00
Stéphane Graber
10f98e9982
coverity: Try to make it happier with our array handling
Signed-off-by: Stéphane Graber <stgraber@ubuntu.com>
2014-02-18 12:10:51 -05:00
Stéphane Graber
a262569cbf
upstart: Fix wrong stderr redirect
Signed-off-by: Stéphane Graber <stgraber@ubuntu.com>
2014-02-18 11:31:48 -05:00
KATOH Yasufumi
e8ea311657 doc: Update Japanese lxc-clone(1)
Update for commit f9ae4107f7

Signed-off-by: KATOH Yasufumi <karma@jazz.email.ne.jp>
Signed-off-by: Serge Hallyn <serge.hallyn@ubuntu.com>
2014-02-18 09:27:36 -06:00
Stéphane Graber
f9ae4107f7
doc: Fix broken grammar.
Signed-off-by: Stéphane Graber <stgraber@ubuntu.com>
2014-02-17 23:50:34 -05:00
Serge Hallyn
4079055377 don't skip setting network properties in unpriv case
Signed-off-by: Serge Hallyn <serge.hallyn@ubuntu.com>
Acked-by: Stéphane Graber <stgraber@ubuntu.com>
2014-02-17 23:40:01 -05:00
Stéphane Graber
f338fa89ef
change version to 1.0.0.rc3 in configure.ac
Signed-off-by: Stéphane Graber <stgraber@ubuntu.com>
2014-02-17 22:08:59 -05:00
Stéphane Graber
03fadd1656
Add some missing newlines
Signed-off-by: Stéphane Graber <stgraber@ubuntu.com>
2014-02-17 20:53:43 -05:00
Serge Hallyn
14a666b577 cgmanager: lock around cgmanager-client calls
Signed-off-by: Serge Hallyn <serge.hallyn@ubuntu.com>
2014-02-17 18:55:22 -06:00
Stéphane Graber
442f5c0fdf
Typo fix
Signed-off-by: Stéphane Graber <stgraber@ubuntu.com>
2014-02-17 17:45:10 -05:00
Stéphane Graber
e403a06423
tests: Use trusty instead of lucid
This is required so the tests actually have a chance of passing on arm64
and ppc64el.

Signed-off-by: Stéphane Graber <stgraber@ubuntu.com>
2014-02-17 17:44:20 -05:00
S.Çağlar Onur
fe1f672ff8 close correct side of the pipe and increase buffer size by one to handle \n
Signed-off-by: S.Çağlar Onur <caglar@10ur.org>
Acked-by: Stéphane Graber <stgraber@ubuntu.com>
2014-02-17 17:26:06 -05:00
Stéphane Graber
44bbab8cdf
configure.ac: Fix cgmanager detection
Signed-off-by: Stéphane Graber <stgraber@ubuntu.com>
2014-02-17 15:36:51 -05:00
Serge Hallyn
2c4ea790e3 attach: try to use the container's seccomp policy
We can't get the actual policy (in the case where the policy file
has changed) from the container, but at least we can use the
seccomp policy file listed in the container config file.

(If anyone wants to further improve this, it may be better to get
the seccomp policy over the cmd api;  not sure that's what we want,
and this seems simpler to hook into the existing code, so I went
this way for now)

Signed-off-by: Serge Hallyn <serge.hallyn@ubuntu.com>
Acked-by: Stéphane Graber <stgraber@ubuntu.com>
2014-02-17 13:52:21 -05:00
Serge Hallyn
58e0f57da4 support get_config_item(lxc.seccomp) and clear_config_item(lxc.seccomp)
Signed-off-by: Serge Hallyn <serge.hallyn@ubuntu.com>
Acked-by: Stéphane Graber <stgraber@ubuntu.com>
2014-02-17 13:52:19 -05:00
Stéphane Graber
f74e080cf7 download: Support nested containers in unpriv
This adds detection for the case where we are root in an unprivileged
container and then run LXC from there. In this case, we want to download
to the system location, ignore the missing uid/gid ranges and run
templates that are userns-ready.

Signed-off-by: Stéphane Graber <stgraber@ubuntu.com>
Acked-by: Serge E. Hallyn <serge.hallyn@ubuntu.com>
2014-02-17 11:59:10 -05:00
S.Çağlar Onur
a7242d9a58 fill missing netdev fields for unprivileged containers
lxc-user-nic now returns the names of the interfaces and
unpriv_assign_nic function parses that information to fill
missing netdev->veth_attr.pair and netdev->name.

With this patch get_running_config_item started to provide
correct information;

>>> import lxc; c = lxc.Container("rubik"); c.get_running_config_item("lxc.network.0.name"); c.get_running_config_item("lxc.network.0.veth.pair");
'eth0'
'veth9MT2L4'
>>>

and lxc-info started to show network stats;

lxc-info -n rubik
Name:           rubik
State:          RUNNING
PID:            23061
IP:             10.0.3.233
CPU use:        3.86 seconds
BlkIO use:      88.00 KiB
Memory use:     6.53 MiB
KMem use:       0 bytes
Link:           veth9MT2L4
 TX bytes:      3.45 KiB
 RX bytes:      8.83 KiB
 Total bytes:   12.29 KiB

Signed-off-by: S.Çağlar Onur <caglar@10ur.org>
Acked-by: Serge E. Hallyn <serge.hallyn@ubuntu.com>
Acked-by: Stéphane Graber <stgraber@ubuntu.com>
2014-02-17 11:25:33 -05:00
Serge Hallyn
7da8ab18d9 close inherited fds when we still have proc mounted
and don't close the sigfd

Signed-off-by: Serge Hallyn <serge.hallyn@ubuntu.com>
2014-02-15 18:37:27 -05:00
Serge Hallyn
5112cd7090 always ensure a /proc while setting up container
Otherwise we can't open /proc/self/fd to find the fds to close.

Signed-off-by: Serge Hallyn <serge.hallyn@ubuntu.com>
2014-02-15 00:26:36 -06:00
Stéphane Graber
f8744a950b
change version to 1.0.0.rc2 in configure.ac
Signed-off-by: Stéphane Graber <stgraber@ubuntu.com>
2014-02-14 23:08:00 -05:00
Stéphane Graber
9f3d75a0ca coverity: Don't pass uninitialized var to write
Signed-off-by: Stéphane Graber <stgraber@ubuntu.com>
Acked-by: Serge E. Hallyn <serge.hallyn@ubuntu.com>
2014-02-14 19:13:51 -05:00
Stéphane Graber
71b2940d87 coverity: Check fcntl return value
Signed-off-by: Stéphane Graber <stgraber@ubuntu.com>
Acked-by: Serge E. Hallyn <serge.hallyn@ubuntu.com>
2014-02-14 19:13:49 -05:00
Stéphane Graber
acd4922efe coverity: Check return value of setenv
Signed-off-by: Stéphane Graber <stgraber@ubuntu.com>
Acked-by: Serge E. Hallyn <serge.hallyn@ubuntu.com>
2014-02-14 19:13:47 -05:00
Stéphane Graber
1e98542850 coverity: Check fstat return value
Signed-off-by: Stéphane Graber <stgraber@ubuntu.com>
Acked-by: Serge E. Hallyn <serge.hallyn@ubuntu.com>
2014-02-14 19:13:46 -05:00
Stéphane Graber
bdcb7aa9ed coverity: Silence potential null-deref warning
Signed-off-by: Stéphane Graber <stgraber@ubuntu.com>
Acked-by: Serge E. Hallyn <serge.hallyn@ubuntu.com>
2014-02-14 19:13:43 -05:00
Stéphane Graber
9de2ebe995 coverity: Check fread length
Signed-off-by: Stéphane Graber <stgraber@ubuntu.com>
Acked-by: Serge E. Hallyn <serge.hallyn@ubuntu.com>
2014-02-14 19:13:36 -05:00
Serge Hallyn
7eb44573b0 re-open cgmanager socket after fork in daemonized start
Signed-off-by: Serge Hallyn <serge.hallyn@ubuntu.com>
Acked-by: Stéphane Graber <stgraber@ubuntu.com>
2014-02-14 19:12:32 -05:00
Serge Hallyn
1d16785799 lxc-start: close inherited fds right before exec
Not before we've even forked.

Signed-off-by: Serge Hallyn <serge.hallyn@ubuntu.com>
Acked-by: Stéphane Graber <stgraber@ubuntu.com>
2014-02-14 19:12:32 -05:00
S.Çağlar Onur
93c379f09c move fnv_64a_buf to utils.c and remove mutliple copies (v2)
Signed-off-by: S.Çağlar Onur <caglar@10ur.org>
Acked-by: Stéphane Graber <stgraber@ubuntu.com>
2014-02-14 10:10:17 -05:00
Dwight Engen
684efc5ea1 coverity: fix resource leak
also fix the check if the string will fit the local buffer

Signed-off-by: Dwight Engen <dwight.engen@oracle.com>
Acked-by: Stéphane Graber <stgraber@ubuntu.com>
2014-02-14 10:09:45 -05:00
KATOH Yasufumi
77e229918d Japanese lxc-usernsexec manpage: fix typo
Signed-off-by: KATOH Yasufumi <karma@jazz.email.ne.jp>
Acked-by: Stéphane Graber <stgraber@ubuntu.com>
2014-02-14 10:09:42 -05:00
Serge Hallyn
cc69660a57 lxc-usernsexec manpage: fix typo (command name is not lxc-unshare)
Signed-off-by: Serge Hallyn <serge.hallyn@ubuntu.com>
2014-02-13 22:40:51 -06:00
Stéphane Graber
c213f406f9
change version to 1.0.0.beta4 in configure.ac
Signed-off-by: Stéphane Graber <stgraber@ubuntu.com>
2014-02-13 18:51:50 -05:00
Stéphane Graber
e1579aaff6 Revert "move fnv_64a_buf to utils.c and remove mutliple copies"
Fix clang breakage.

This reverts commit 7cd32872b6.
2014-02-13 17:34:26 -05:00
S.Çağlar Onur
7cd32872b6 move fnv_64a_buf to utils.c and remove mutliple copies
Signed-off-by: S.Çağlar Onur <caglar@10ur.org>
Acked-by: Stéphane Graber <stgraber@ubuntu.com>
2014-02-13 17:02:01 -05:00
S.Çağlar Onur
604f0955b7 reindent src/lxc/af_unix.c
Signed-off-by: S.Çağlar Onur <caglar@10ur.org>
Acked-by: Stéphane Graber <stgraber@ubuntu.com>
2014-02-13 16:47:39 -05:00
Dwight Engen
69aa66552f create fd, stdin, stdout, stderr symlinks in /dev
The kernel's Documentation/devices.txt says that these symlinks should
exist in /dev (they are listed in the "Compulsory" section). I'm not
currently adding nfsd and X0R since they are required for iBCS, but
they can be easily added to the array later if need be.

Signed-off-by: Dwight Engen <dwight.engen@oracle.com>
Acked-by: Michael H. Warfield <mhw@WittsEnd.com>
Acked-by: Stéphane Graber <stgraber@ubuntu.com>
2014-02-13 16:31:49 -05:00
Stéphane Graber
cd063f4524 python3: Update apitest
This update will make it work unprivileged as well as testing a few of
the new functions.

Signed-off-by: Stéphane Graber <stgraber@ubuntu.com>
Acked-by: Serge E. Hallyn <serge.hallyn@ubuntu.com>
2014-02-13 14:14:11 -05:00
Stéphane Graber
c756a6e91b python3: Drop API warning and fix pep8/pyflakes3
Signed-off-by: Stéphane Graber <stgraber@ubuntu.com>
Acked-by: Serge E. Hallyn <serge.hallyn@ubuntu.com>
2014-02-13 14:14:03 -05:00
Stéphane Graber
8158c057dc lxc-start-ephemeral: Use attach
With this change, systems that support it will use attach to run any
provided command.

This doesn't change the default behaviour of attaching to tty1, but it
does make it much easier to script or even get a quick shell with:
lxc-start-ephemeral -o p1 -n p2 -- /bin/bash

I'm doing the setgid,initgroups,setuid,setenv magic in python rather
than using the attach_wait parameters as I need access to the pwd module
in the target namespace to grab the required information.

Signed-off-by: Stéphane Graber <stgraber@ubuntu.com>
Acked-by: Serge E. Hallyn <serge.hallyn@ubuntu.com>
2014-02-13 14:13:49 -05:00
Stéphane Graber
5693029730
Update rootfs README
Signed-off-by: Stéphane Graber <stgraber@ubuntu.com>
2014-02-13 13:52:50 -05:00
Stéphane Graber
d693cf93cd Fix crash in rename with undefined containers
Signed-off-by: Stéphane Graber <stgraber@ubuntu.com>
2014-02-13 13:45:51 -05:00
Stéphane Graber
63d4950fef lxc-ls: Add a few new columns
This adds support for:
 - memory (total memory)
 - ram
 - swap

Signed-off-by: Stéphane Graber <stgraber@ubuntu.com>
Acked-by: Serge E. Hallyn <serge.hallyn@ubuntu.com>
2014-02-13 13:45:36 -05:00
Stéphane Graber
87d8dfe56c python3: Add missing get_running_config_item binding
Signed-off-by: Stéphane Graber <stgraber@ubuntu.com>
Acked-by: Serge E. Hallyn <serge.hallyn@ubuntu.com>
2014-02-13 13:45:27 -05:00