Commit Graph

3402 Commits

Author SHA1 Message Date
Christian Brauner
a4cd509bd8 Add -P lxcpath and --version to lxc-ls manpage
lxc-ls takes -P lxcpath and --version as arguments but it did not specify these
options on the manpages.

Signed-off-by: Christian Brauner <christianvanbrauner@gmail.com>
2015-08-01 17:05:56 +02:00
Wolfgang Bumiller
d6417887b9 seccomp: simplify and fix rule parsing
1) Two checks on amd64 for whether compat_ctx has already
been generated were redundant, as compat_ctx is generally
generated before entering the parsing loop.

2) With introduction of reject_force_umount the check for
whether the syscall has the same id on both native and
compat archs results in false behavior as this is an
internal keyword and thus produces a -1 on
seccomp_syscall_resolve_name_arch().
The result was that it was added to the native architecture
twice and never to the 32 bit architecture, causing it to
have no effect on 32 bit containers on 64 bit hosts.

3) I do not see a reason to care about whether the syscalls
have the same number on the two architectures. On the one
hand this check was there to avoid adding it to two archs
(and effectively leaving one arch unprotected), while on
the other hand it seemed to be okay to add it to the
same arch *twice*.

The entire architecture checking branches are now reduced to
three simple cases: 'native', 'non-native' and 'all'. With
'all' adding to both architectures regardless of the syscall
ID.

Also note that libseccomp had a bug in its architecture
checking, so architecture related filters weren't working as
expected before version 2.2.2, which may have contributed to
the confusion in the original architecture-related code.

Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2015-07-23 13:28:40 +02:00
Stéphane Graber
f5fd66f70a
Fix Android build due to missing constant
Signed-off-by: Stéphane Graber <stgraber@ubuntu.com>
2015-07-22 11:55:46 -04:00
Stéphane Graber
5c3fcae78b CVE-2015-1334: Don't use the container's /proc during attach
A user could otherwise over-mount /proc and prevent the apparmor profile
or selinux label from being written which combined with a modified
/bin/sh or other commonly used binary would lead to unconfined code
execution.

Reported-by: Roman Fiedler
Signed-off-by: Stéphane Graber <stgraber@ubuntu.com>
2015-07-22 10:10:19 -04:00
Serge Hallyn
72cf81f6a3 CVE-2015-1331: lxclock: use /run/lxc/lock rather than /run/lock/lxc
This prevents an unprivileged user to use LXC to create arbitrary file
on the filesystem.

Signed-off-by: Serge Hallyn <serge.hallyn@ubuntu.com>
Signed-off-by: Tyler Hicks <tyhicks@canonical.com>
Acked-by: Stéphane Graber <stgraber@ubuntu.com>
2015-07-22 10:09:09 -04:00
Stéphane Graber
f52c0d2677 Merge pull request #597 from smoser/ubuntu-cloud-vendordata
lxc-ubuntu-cloud: support passing vendor-data
2015-07-21 10:43:48 -04:00
Scott Moser
5d066f24e6 lxc-ubuntu-cloud: support passing vendor-data
vendor-data is supported in Ubuntu cloud images in trusty and later.
This allows the user to pass it in on create or clone.

Signed-off-by: Scott Moser <smoser@ubuntu.com>
2015-07-21 10:30:19 -04:00
Stéphane Graber
b9efb0c91c Merge pull request #581 from Blub/master
Use /dev/loop-control if it exists
2015-07-19 22:21:21 -04:00
Stéphane Graber
f71e8f41fb
lxc-fedora: Default to 22 but use 20 squashfs
The Fedora 22 squashfs doesn't appear to work, the Fedora 21 isn't
available, so lets use the fedora archive mirror and pull the good old
Fedora 20 squashfs.

Signed-off-by: Stéphane Graber <stgraber@ubuntu.com>
2015-07-18 23:42:00 -04:00
Stéphane Graber
c28d2f446b Default to Fedora 21 as 22 no longer uses yum
Signed-off-by: Stéphane Graber <stgraber@ubuntu.com>
2015-07-18 23:30:46 -04:00
Stéphane Graber
b65c5374d4
Fix fedora some more
Apparently the paths have changed on the rsync server.

Signed-off-by: Stéphane Graber <stgraber@ubuntu.com>
2015-07-18 23:18:34 -04:00
Stéphane Graber
29be874c4e
Fedora 20 no longer exists on the mirrors
Switch to Fedora 22 for now.

Signed-off-by: Stéphane Graber <stgraber@ubuntu.com>
2015-07-18 23:01:24 -04:00
Stéphane Graber
76e484a709 lxc-autostart: Fix broken output
This fixes some typos, missing newlines and unflushed output leading to
duplicate entries when piped (similar to what we had in lxc-info).

Reported-by: Marc Gariépy
Signed-off-by: Stéphane Graber <stgraber@ubuntu.com>
2015-07-17 14:46:12 -04:00
Stéphane Graber
7faa223603 Merge pull request #588 from sapun/master
fix container creation from ansible lxc_containers module
2015-07-14 14:08:36 -04:00
Alex Punco
e145bd47c6 fix container creation from ansible lxc_containers module
Signed-off-by: Alex Punco <punco@selectel.ru>
2015-07-13 17:42:45 +03:00
Wolfgang Bumiller
edd7414a64 Use /dev/loop-control if it exists
Loop devices can be added on the fly when needed, they're
not always created beforehand. The loop-control device can
be used to find and allocate the next available number
instead of going through the /dev directory contents (which
is now only a fallback mechanism).

Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2015-07-03 14:58:42 +02:00
Stéphane Graber
814d049da4 Merge pull request #579 from fanyeren/patch-11
debian template: reconfigure locales
2015-07-01 15:19:46 -04:00
有张纸
114eb32f24 debian template: reconfigure locales
Signed-off-by: feng xiahou <xiahoufeng@yahoo.com>
2015-07-01 23:39:08 +08:00
KATOH Yasufumi
dc80aa9cb0 Support unprivileged ephemeral container using aufs
As the commit 31a882e, an unprivileged container can use aufs.
This patch removes the check for unpriv aufs, and change the path of
xino file as an unprivileged user can mount aufs.

Signed-off-by: KATOH Yasufumi <karma@jazz.email.ne.jp>
Acked-by: Serge E. Hallyn <serge.hallyn@ubuntu.com>
2015-06-30 15:18:17 -04:00
KATOH Yasufumi
b0c8058323 doc: Update Japanese lxc-usernet(5) for supporting usergroups
Update for commit 1940bff, and fix typo in English man

Signed-off-by: KATOH Yasufumi <karma@jazz.email.ne.jp>
Acked-by: Stéphane Graber <stgraber@ubuntu.com>
2015-06-30 15:17:30 -04:00
KATOH Yasufumi
da7b32317a plamo: Support LXC_CACHE_PATH
lxc-plamo supports LXC_CACHE_PATH that is introduced at commit 6dc6f80

Signed-off-by: KATOH Yasufumi <karma@jazz.email.ne.jp>
Acked-by: Serge E. Hallyn <serge.hallyn@ubuntu.com>
2015-06-30 15:17:05 -04:00
Stéphane Graber
1084182111 Merge pull request #540 from ysbnim/master
config: miscellaneous signals for lxc.*signal
2015-06-30 15:04:43 -04:00
Stéphane Graber
7c3fb6bf10 Merge pull request #545 from bogen/master
The yum in Centos 5.11 does not know about '--releasever', which is u…
2015-06-30 15:03:51 -04:00
Stéphane Graber
a42989df60 Merge pull request #552 from lrowe/patch-1
Wait on correct container name
2015-06-30 15:01:17 -04:00
Stéphane Graber
82e4093384 Merge pull request #561 from ysbnim/kor_manual
Add Korean man pages
2015-06-30 15:00:53 -04:00
Stéphane Graber
8b9d08041e Merge pull request #576 from fanyeren/patch-10
debootstrap failed when $GREP_OPTIONS color is set
2015-06-30 15:00:29 -04:00
Serge Hallyn
8e13cca944 systemd: fix lxc-containers vs lxc-net ordering (v3)
Per pitti's suggestion, use After= to force lxc to wait for lxc-net to finish
running.

Signed-off-by: Serge Hallyn <serge.hallyn@ubuntu.com>
Reviewed-By: Martin Pitt <martin.pitt@ubuntu.com>
2015-06-30 09:34:09 -05:00
有张纸
192dbe6fdc debootstrap failed when $GREP_OPTIONS is set
debootstrap failed when $GREP_OPTIONS is set, so we need to unset it in the template

Signed-off-by: <feng xiahou xiahoufeng@yahoo.com>
2015-06-30 16:23:11 +08:00
Stéphane Graber
dfb5edcac0 lxc-net: Use iproute and relative paths everywhere (V2)
V2 changes:
 - Keep using /var/lib for the lease file, but making it respect localstatedir
 - Don't pass an empty --conf-file as that confuses dnsmasq when
   /etc/dnsmasq.conf doesn't exist or isn't readable.

Signed-off-by: Stéphane Graber <stgraber@ubuntu.com>
Acked-by: Serge E. Hallyn <serge.hallyn@ubuntu.com>
2015-06-29 13:36:55 -04:00
Arjun Sreedharan
57354986d6 lxc_monitor: fix memory leak on @fds and close fds
also label and consolidate error conditions for
better readability

Signed-off-by: Arjun Sreedharan <arjun024@gmail.com>
Acked-by: Serge E. Hallyn <serge.hallyn@ubuntu.com>
2015-06-29 09:58:43 -05:00
Serge Hallyn
d791668b9a lxc_user_nic: free_groupnames: fix
lxc_user_nic was segfaulting:
lxc-user-nic[9761]: segfault at 29 ip 00007f3fb2346872 sp 00007ffdd17b2dd0 error 4 in libc-2.21.so[7f3fb22c2000+1c0000

This patch fixes it.

Signed-off-by: Serge Hallyn <serge.hallyn@ubuntu.com>
2015-06-24 13:07:05 -05:00
Serge Hallyn
2c7a50081b Merge pull request #517 from hkjolhede/master
Added support for groups in lxc-usernet
2015-06-23 16:10:26 -05:00
Henrik Kjölhede
680836fa52 Make sure to cleanup and exit with an error if malloc fails in append_alloted
Signed-off-by: Henrik Kjölhede <hkjolhede@gmail.com>
2015-06-21 11:13:01 +02:00
Stéphane Graber
16fc3582a4 Merge pull request #572 from fanyeren/patch-9
Update centos.common.conf.in
2015-06-18 04:05:56 +02:00
有张纸
28468a67cb Update centos.common.conf.in
systemd services like logind and journald need CAP_SETFCAP CAP_SETPCAP
2015-06-17 14:56:08 +08:00
Stéphane Graber
ccb17e9f8a Merge pull request #569 from LenzGr/master
use `hostname` for DHCP_HOSTNAME in ifcfg-eth0
2015-06-16 16:24:29 +02:00
Lenz Grimmer
7e1a946f61 use hostname for DHCP_HOSTNAME in ifcfg-eth0
Updated centos/fedora/oracle templates to use `hostname` for DHCP_HOSTNAME in
/etc/sysconfig/network/ifcfg-eth0, so the container's host name is propagated
to the host's DHCP server (e.g. dnsmasq, which also acts as the DNS server).
This resolves lxc/lxd#756

Signed-off-by: Lenz Grimmer <lenz@grimmer.com>
2015-06-16 14:00:49 +02:00
Stéphane Graber
60978799df Merge pull request #564 from devurandom/fix/gentoo-systemd-caps
Adopt capability (lxc.cap.drop) documentation from other distros in Gentoo config, drop setpcap and sys_nice
2015-06-15 16:47:27 +02:00
Dennis Schridde
00ec0cc72c Adopt capability drop explanations from other distros on Gentoo, drop setpcap,sys_nice caps
Documents setpcap,sys_admin,sys_resources as breaking systemd, but does not drop them from lxc.cap.drop, as the default init system on Gentoo is OpenRC, thus stuff breaking systemd can be blocked anyway.

This also drops setpcap and sys_nice caps, as these are also dropped in other non-systemd distros.

Most of the explanatory blurb was copied from other distros' configs.

See-Also: https://bugs.gentoo.org/show_bug.cgi?id=551792

Signed-Off-By: Dennis Schridde <devurandom@gmx.net>
2015-06-13 09:56:31 +02:00
Serge Hallyn
13353dc420 daemonized start: exit children on failure, don't return
When starting a daemonized container, only the original parent
thread should return to the caller.  The first forked child
immediately exits after forking, but the grandparent child
was in some places returning on error - causing a second instance
of the calling function.

Signed-off-by: Serge Hallyn <serge.hallyn@ubuntu.com>
Acked-by: Tycho Andersen <tycho.andersen@canonical.com>
2015-06-12 16:11:53 -05:00
Stéphane Graber
2badf64b39 Merge pull request #567 from ysbnim/jap_manual_patch
Translate untranslated section titles in Japanese man pages
2015-06-12 06:48:31 +02:00
Stéphane Graber
dbf21ae6dc Merge pull request #558 from cloudnull/template-cache-var
Added container-cache option to templates
2015-06-12 06:43:21 +02:00
Sungbae Yoo
51fded061a doc: Translate untranslated section titles in Japanese man pages
Signed-off-by: Sungbae Yoo <sungbae.yoo@samsung.com>
2015-06-12 10:29:58 +09:00
Kevin Carter
6dc6f80bfd Added container-cache option to templates
This change adds in the container-cache option within the mainline
default lxc templates. The pupose here is to allow a template to
pull from a location that may not be `@LOCALSTATEDIR@/cache/lxc`

Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
2015-06-11 11:21:17 -05:00
Stéphane Graber
3814bc62d1 Merge pull request #563 from devurandom/fix/gentoo-mount-create-dir
Fix creation of dev/mqueue and dev/shm on Gentoo
2015-06-11 15:27:01 +02:00
Dennis Schridde
bc19636d58 Fix creation of dev/mqueue and dev/shm on Gentoo
The dev/mqueue and dev/shm directories do not exist when using lxc.autodev, thus they have to be created upon mount.

Signed-off-by: Dennis Schridde <devurandom@gmx.net>
2015-06-11 15:21:19 +02:00
Sungbae Yoo
2b371b262f doc: Add Korean man pages
Signed-off-by: Sungbae Yoo <sungbae.yoo@samsung.com>
2015-06-11 20:08:58 +09:00
Stéphane Graber
963abb4688 Merge pull request #560 from fanyeren/patch-8
Update lxc-oracle.in fix a bug
2015-06-11 05:34:55 -04:00
有张纸
761fbd510c Update lxc-oracle.in 2015-06-11 12:50:50 +08:00
Tycho Andersen
69aeabac1a uniformly nullify std fds
In various places throughout the code, we want to "nullify" the std fds,
opening them to /dev/null or zero or so. Instead, let's unify this code and do
it in such a way that Coverity (probably) won't complain.

v2: use /dev/null for stdin as well
v3: add a comment about use of C's short circuiting
v4: axe comment, check errors on dup2, s/quiet/need_null_stdfds

Reported-by: Coverity
Signed-off-by: Tycho Andersen <tycho.andersen@canonical.com>
Signed-off-by: Serge Hallyn <serge.hallyn@ubuntu.com>
2015-06-10 23:04:51 -05:00