]> git.proxmox.com Git - mirror_lxc.git/log
mirror_lxc.git
9 years agodoc: Remove unnecessary common options from lxc-user-nic(1)
KATOH Yasufumi [Mon, 3 Aug 2015 07:42:38 +0000 (16:42 +0900)]
doc: Remove unnecessary common options from lxc-user-nic(1)

lxc-user-nic command cannot use common options.

Signed-off-by: KATOH Yasufumi <karma@jazz.email.ne.jp>
9 years agodoc: Add the description for --version to English and Japanese common_options
KATOH Yasufumi [Mon, 3 Aug 2015 07:40:13 +0000 (16:40 +0900)]
doc: Add the description for --version to English and Japanese common_options

Signed-off-by: KATOH Yasufumi <karma@jazz.email.ne.jp>
9 years agodoc: Add the description for -P and --version to English and Japanese lxc-ls(1)
KATOH Yasufumi [Mon, 3 Aug 2015 07:23:45 +0000 (16:23 +0900)]
doc: Add the description for -P and --version to English and Japanese lxc-ls(1)

Signed-off-by: KATOH Yasufumi <karma@jazz.email.ne.jp>
9 years agoMerge pull request #608 from brauner/lxc_ls_doc
Stéphane Graber [Mon, 3 Aug 2015 04:33:47 +0000 (00:33 -0400)]
Merge pull request #608 from brauner/lxc_ls_doc

Add -P lxcpath and --version to lxc-ls manpage

9 years agoAdd -P lxcpath and --version to lxc-ls manpage
Christian Brauner [Sat, 1 Aug 2015 14:54:30 +0000 (16:54 +0200)]
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>
9 years agoMerge pull request #600 from Blub/wbumiller/seccomp
Serge Hallyn [Wed, 29 Jul 2015 02:37:14 +0000 (21:37 -0500)]
Merge pull request #600 from Blub/wbumiller/seccomp

seccomp: simplify and fix rule parsing

9 years agoseccomp: simplify and fix rule parsing
Wolfgang Bumiller [Thu, 23 Jul 2015 09:10:18 +0000 (11:10 +0200)]
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>
9 years agoFix Android build due to missing constant
Stéphane Graber [Wed, 22 Jul 2015 15:55:46 +0000 (11:55 -0400)]
Fix Android build due to missing constant

Signed-off-by: Stéphane Graber <stgraber@ubuntu.com>
9 years agoCVE-2015-1334: Don't use the container's /proc during attach
Stéphane Graber [Thu, 16 Jul 2015 20:37:51 +0000 (16:37 -0400)]
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>
9 years agoCVE-2015-1331: lxclock: use /run/lxc/lock rather than /run/lock/lxc
Serge Hallyn [Fri, 3 Jul 2015 14:26:17 +0000 (09:26 -0500)]
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>
9 years agoMerge pull request #597 from smoser/ubuntu-cloud-vendordata
Stéphane Graber [Tue, 21 Jul 2015 14:43:48 +0000 (10:43 -0400)]
Merge pull request #597 from smoser/ubuntu-cloud-vendordata

lxc-ubuntu-cloud: support passing vendor-data

9 years agolxc-ubuntu-cloud: support passing vendor-data
Scott Moser [Tue, 21 Jul 2015 14:30:19 +0000 (10:30 -0400)]
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>
9 years agoMerge pull request #581 from Blub/master
Stéphane Graber [Mon, 20 Jul 2015 02:21:21 +0000 (22:21 -0400)]
Merge pull request #581 from Blub/master

Use /dev/loop-control if it exists

9 years agolxc-fedora: Default to 22 but use 20 squashfs
Stéphane Graber [Sun, 19 Jul 2015 03:42:00 +0000 (23:42 -0400)]
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>
9 years agoDefault to Fedora 21 as 22 no longer uses yum
Stéphane Graber [Sun, 19 Jul 2015 03:30:46 +0000 (23:30 -0400)]
Default to Fedora 21 as 22 no longer uses yum

Signed-off-by: Stéphane Graber <stgraber@ubuntu.com>
9 years agoFix fedora some more
Stéphane Graber [Sun, 19 Jul 2015 03:18:34 +0000 (23:18 -0400)]
Fix fedora some more

Apparently the paths have changed on the rsync server.

Signed-off-by: Stéphane Graber <stgraber@ubuntu.com>
9 years agoFedora 20 no longer exists on the mirrors
Stéphane Graber [Sun, 19 Jul 2015 03:01:24 +0000 (23:01 -0400)]
Fedora 20 no longer exists on the mirrors

Switch to Fedora 22 for now.

Signed-off-by: Stéphane Graber <stgraber@ubuntu.com>
9 years agolxc-autostart: Fix broken output
Stéphane Graber [Fri, 17 Jul 2015 18:35:15 +0000 (14:35 -0400)]
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>
9 years agoMerge pull request #588 from sapun/master
Stéphane Graber [Tue, 14 Jul 2015 18:08:36 +0000 (14:08 -0400)]
Merge pull request #588 from sapun/master

fix container creation from ansible lxc_containers module

9 years agofix container creation from ansible lxc_containers module
Alex Punco [Sun, 12 Jul 2015 12:52:57 +0000 (15:52 +0300)]
fix container creation from ansible lxc_containers module

Signed-off-by: Alex Punco <punco@selectel.ru>
9 years agoUse /dev/loop-control if it exists
Wolfgang Bumiller [Fri, 3 Jul 2015 12:10:17 +0000 (14:10 +0200)]
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>
9 years agoMerge pull request #579 from fanyeren/patch-11
Stéphane Graber [Wed, 1 Jul 2015 19:19:46 +0000 (15:19 -0400)]
Merge pull request #579 from fanyeren/patch-11

debian template: reconfigure locales

9 years agodebian template: reconfigure locales
有张纸 [Wed, 1 Jul 2015 15:39:08 +0000 (23:39 +0800)]
debian template: reconfigure locales

Signed-off-by: feng xiahou <xiahoufeng@yahoo.com>
9 years agoSupport unprivileged ephemeral container using aufs
KATOH Yasufumi [Thu, 25 Jun 2015 09:14:04 +0000 (18:14 +0900)]
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>
9 years agodoc: Update Japanese lxc-usernet(5) for supporting usergroups
KATOH Yasufumi [Thu, 25 Jun 2015 07:18:34 +0000 (16:18 +0900)]
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>
9 years agoplamo: Support LXC_CACHE_PATH
KATOH Yasufumi [Wed, 24 Jun 2015 06:31:59 +0000 (15:31 +0900)]
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>
9 years agoMerge pull request #540 from ysbnim/master
Stéphane Graber [Tue, 30 Jun 2015 19:04:43 +0000 (15:04 -0400)]
Merge pull request #540 from ysbnim/master

config: miscellaneous signals for lxc.*signal

9 years agoMerge pull request #545 from bogen/master
Stéphane Graber [Tue, 30 Jun 2015 19:03:51 +0000 (15:03 -0400)]
Merge pull request #545 from bogen/master

The yum in Centos 5.11 does not know about '--releasever', which is u…

9 years agoMerge pull request #552 from lrowe/patch-1
Stéphane Graber [Tue, 30 Jun 2015 19:01:17 +0000 (15:01 -0400)]
Merge pull request #552 from lrowe/patch-1

Wait on correct container name

9 years agoMerge pull request #561 from ysbnim/kor_manual
Stéphane Graber [Tue, 30 Jun 2015 19:00:53 +0000 (15:00 -0400)]
Merge pull request #561 from ysbnim/kor_manual

Add Korean man pages

9 years agoMerge pull request #576 from fanyeren/patch-10
Stéphane Graber [Tue, 30 Jun 2015 19:00:29 +0000 (15:00 -0400)]
Merge pull request #576 from fanyeren/patch-10

 debootstrap failed when $GREP_OPTIONS color is set

9 years agosystemd: fix lxc-containers vs lxc-net ordering (v3)
Serge Hallyn [Tue, 30 Jun 2015 13:32:25 +0000 (08:32 -0500)]
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>
9 years ago debootstrap failed when $GREP_OPTIONS is set
有张纸 [Tue, 30 Jun 2015 08:23:11 +0000 (16:23 +0800)]
 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>
9 years agolxc-net: Use iproute and relative paths everywhere (V2)
Stéphane Graber [Thu, 18 Jun 2015 19:55:45 +0000 (15:55 -0400)]
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>
9 years agolxc_monitor: fix memory leak on @fds and close fds
Arjun Sreedharan [Wed, 10 Jun 2015 18:24:15 +0000 (23:54 +0530)]
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>
9 years agolxc_user_nic: free_groupnames: fix
Serge Hallyn [Wed, 24 Jun 2015 18:07:05 +0000 (13:07 -0500)]
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>
9 years agoMerge pull request #517 from hkjolhede/master
Serge Hallyn [Tue, 23 Jun 2015 21:10:26 +0000 (16:10 -0500)]
Merge pull request #517 from hkjolhede/master

Added support for groups in lxc-usernet

9 years agoMake sure to cleanup and exit with an error if malloc fails in append_alloted
Henrik Kjölhede [Sun, 21 Jun 2015 09:13:01 +0000 (11:13 +0200)]
Make sure to cleanup and exit with an error if malloc fails in append_alloted

Signed-off-by: Henrik Kjölhede <hkjolhede@gmail.com>
9 years agoMerge pull request #572 from fanyeren/patch-9
Stéphane Graber [Thu, 18 Jun 2015 02:05:56 +0000 (04:05 +0200)]
Merge pull request #572 from fanyeren/patch-9

Update centos.common.conf.in

9 years agoUpdate centos.common.conf.in
有张纸 [Wed, 17 Jun 2015 06:56:08 +0000 (14:56 +0800)]
Update centos.common.conf.in

systemd services like logind and journald need CAP_SETFCAP CAP_SETPCAP

9 years agoMerge pull request #569 from LenzGr/master
Stéphane Graber [Tue, 16 Jun 2015 14:24:29 +0000 (16:24 +0200)]
Merge pull request #569 from LenzGr/master

use `hostname` for DHCP_HOSTNAME in ifcfg-eth0

9 years agouse `hostname` for DHCP_HOSTNAME in ifcfg-eth0
Lenz Grimmer [Fri, 12 Jun 2015 23:08:41 +0000 (01:08 +0200)]
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>
9 years agoMerge pull request #564 from devurandom/fix/gentoo-systemd-caps
Stéphane Graber [Mon, 15 Jun 2015 14:47:27 +0000 (16:47 +0200)]
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

9 years agoAdopt capability drop explanations from other distros on Gentoo, drop setpcap,sys_nic...
Dennis Schridde [Thu, 11 Jun 2015 17:51:02 +0000 (19:51 +0200)]
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>
9 years agodaemonized start: exit children on failure, don't return
Serge Hallyn [Thu, 11 Jun 2015 04:08:15 +0000 (23:08 -0500)]
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>
9 years agoMerge pull request #567 from ysbnim/jap_manual_patch
Stéphane Graber [Fri, 12 Jun 2015 04:48:31 +0000 (06:48 +0200)]
Merge pull request #567 from ysbnim/jap_manual_patch

Translate untranslated section titles in Japanese man pages

9 years agoMerge pull request #558 from cloudnull/template-cache-var
Stéphane Graber [Fri, 12 Jun 2015 04:43:21 +0000 (06:43 +0200)]
Merge pull request #558 from cloudnull/template-cache-var

Added container-cache option to templates

9 years agodoc: Translate untranslated section titles in Japanese man pages
Sungbae Yoo [Fri, 12 Jun 2015 01:27:28 +0000 (10:27 +0900)]
doc: Translate untranslated section titles in Japanese man pages

Signed-off-by: Sungbae Yoo <sungbae.yoo@samsung.com>
9 years agoAdded container-cache option to templates
Kevin Carter [Wed, 10 Jun 2015 20:06:49 +0000 (15:06 -0500)]
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>
9 years agoMerge pull request #563 from devurandom/fix/gentoo-mount-create-dir
Stéphane Graber [Thu, 11 Jun 2015 13:27:01 +0000 (15:27 +0200)]
Merge pull request #563 from devurandom/fix/gentoo-mount-create-dir

Fix creation of dev/mqueue and dev/shm on Gentoo

9 years agoFix creation of dev/mqueue and dev/shm on Gentoo
Dennis Schridde [Thu, 11 Jun 2015 13:21:19 +0000 (15:21 +0200)]
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>
9 years agodoc: Add Korean man pages
Sungbae Yoo [Thu, 11 Jun 2015 00:16:54 +0000 (09:16 +0900)]
doc: Add Korean man pages

Signed-off-by: Sungbae Yoo <sungbae.yoo@samsung.com>
9 years agoMerge pull request #560 from fanyeren/patch-8
Stéphane Graber [Thu, 11 Jun 2015 09:34:55 +0000 (05:34 -0400)]
Merge pull request #560 from fanyeren/patch-8

Update lxc-oracle.in fix a bug

9 years agoUpdate lxc-oracle.in
有张纸 [Thu, 11 Jun 2015 04:50:50 +0000 (12:50 +0800)]
Update lxc-oracle.in

9 years agouniformly nullify std fds
Tycho Andersen [Wed, 10 Jun 2015 21:57:50 +0000 (21:57 +0000)]
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>
9 years agomove utils.h #endif to end of file
Tycho Andersen [Tue, 9 Jun 2015 01:59:53 +0000 (19:59 -0600)]
move utils.h #endif to end of file

Signed-off-by: Tycho Andersen <tycho.andersen@canonical.com>
Signed-off-by: Serge Hallyn <serge.hallyn@ubuntu.com>
9 years agoc/r: remove unused variable mnts
Tycho Andersen [Tue, 9 Jun 2015 01:59:52 +0000 (19:59 -0600)]
c/r: remove unused variable mnts

Reported-by: Coverity
Signed-off-by: Tycho Andersen <tycho.andersen@canonical.com>
Signed-off-by: Serge Hallyn <serge.hallyn@ubuntu.com>
9 years agoc/r: use fclose instead of close
Tycho Andersen [Tue, 9 Jun 2015 01:59:51 +0000 (19:59 -0600)]
c/r: use fclose instead of close

We're leaking the FILE* here while closing the underlying fd; let's just
close the file and thus close both.

Reported-by: Coverity
Signed-off-by: Tycho Andersen <tycho.andersen@canonical.com>
Signed-off-by: Serge Hallyn <serge.hallyn@ubuntu.com>
9 years agoconfig: miscellaneous signals for lxc.*signal
Sungbae Yoo [Wed, 27 May 2015 05:51:55 +0000 (14:51 +0900)]
config: miscellaneous signals for lxc.*signal

Signed-off-by: Sungbae Yoo <sungbae.yoo@samsung.com>
9 years agoFixed memory checks and faulty loop in get_alloted according to comments
Henrik Kjölhede [Tue, 9 Jun 2015 20:25:16 +0000 (22:25 +0200)]
Fixed memory checks and faulty loop in get_alloted according to comments

Signed-off-by: Henrik Kjölhede <hkjolhede@gmail.com>
9 years agoMerge pull request #557 from dangowrt/fix-build-on-ppc
Stéphane Graber [Tue, 9 Jun 2015 11:21:33 +0000 (07:21 -0400)]
Merge pull request #557 from dangowrt/fix-build-on-ppc

fix build on mpc85xx

9 years agofix build on mpc85xx
Daniel Golle [Tue, 9 Jun 2015 10:58:12 +0000 (12:58 +0200)]
fix build on mpc85xx

Initialize ret to 0 so compiler no longer complains about
monitor.c: In function 'lxc_monitor_open':
monitor.c:212:5: error: 'ret' may be used uninitialized in this function [-Werror=maybe-uninitialized]

https://github.com/openwrt/packages/issues/1356

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
9 years agoWait on correct container name
Laurence Rowe [Fri, 5 Jun 2015 18:23:54 +0000 (11:23 -0700)]
Wait on correct container name
Signed-off-by: Laurence Rowe <l@lrowe.co.uk>
9 years agocoverity: don't risk exec()ing NULL
Serge Hallyn [Mon, 8 Jun 2015 15:37:55 +0000 (10:37 -0500)]
coverity: don't risk exec()ing NULL

Signed-off-by: Serge Hallyn <serge.hallyn@ubuntu.com>
9 years agocoverity: fix use-after-free in cgmanager.
Serge Hallyn [Mon, 8 Jun 2015 15:33:22 +0000 (10:33 -0500)]
coverity: fix use-after-free in cgmanager.

Signed-off-by: Serge Hallyn <serge.hallyn@ubuntu.com>
9 years agoUpdated the documentation
Henrik Kjölhede [Thu, 4 Jun 2015 20:22:54 +0000 (22:22 +0200)]
Updated the documentation

Signed-off-by: Henrik Kjölhede <hkjolhede@gmail.com>
9 years agoFix bdev.h
Stéphane Graber [Thu, 4 Jun 2015 01:45:23 +0000 (21:45 -0400)]
Fix bdev.h

Signed-off-by: Stéphane Graber <stgraber@ubuntu.com>
9 years agoRevert bdev.h to the way it was
Stéphane Graber [Wed, 3 Jun 2015 23:37:59 +0000 (19:37 -0400)]
Revert bdev.h to the way it was

Instead of re-defining MS_ options all over the place, just revert the
last change to bdev.h so we have all the defines in there again.

Signed-off-by: Stéphane Graber <stgraber@ubuntu.com>
9 years agoDefine MS_RELATIME for Android
Stéphane Graber [Wed, 3 Jun 2015 21:08:11 +0000 (17:08 -0400)]
Define MS_RELATIME for Android

Signed-off-by: Stéphane Graber <stgraber@ubuntu.com>
9 years agoDefine MS_REC and MS_SLAVE for Android in bdev.c
Stéphane Graber [Wed, 3 Jun 2015 19:07:08 +0000 (15:07 -0400)]
Define MS_REC and MS_SLAVE for Android in bdev.c

Signed-off-by: Stéphane Graber <stgraber@ubuntu.com>
9 years agoFixed an error
Henrik Kjölhede [Wed, 3 Jun 2015 18:43:59 +0000 (20:43 +0200)]
Fixed an error

Signed-off-by: Henrik Kjölhede <hkjolhede@gmail.com>
9 years agoIndentation fix
Henrik Kjölhede [Wed, 3 Jun 2015 18:40:46 +0000 (20:40 +0200)]
Indentation fix

Signed-off-by: Henrik Kjölhede <hkjolhede@gmail.com>
9 years agodon't dereference a NULL c->lxc_conf
Serge Hallyn [Wed, 3 Jun 2015 17:20:19 +0000 (17:20 +0000)]
don't dereference a NULL c->lxc_conf

Commit 37cf711b added a destroy hook, but when it checks
at destroy time whether that hook exists, it assumes that
c->lxc_conf is good.  In fact lxc_conf can be NULL, so check
for that.

Signed-off-by: Serge Hallyn <serge.hallyn@ubuntu.com>
Acked-by: Stéphane Graber <stgraber@ubuntu.com>
9 years agodon't hardcode the path to criu when checking versions
Tycho Andersen [Wed, 3 Jun 2015 06:13:23 +0000 (00:13 -0600)]
don't hardcode the path to criu when checking versions

We use the right path when actually execing criu to checkpoint and restore, but
when checking versions we didn't. Let's use the right path.

Reported-by: Dietmar Maurer <dietmar@proxmox.com>
Signed-off-by: Tycho Andersen <tycho.andersen@canonical.com>
Acked-by: Stéphane Graber <stgraber@ubuntu.com>
9 years agodetect whether cgmanager_list_controllers is available
Serge Hallyn [Wed, 3 Jun 2015 05:03:39 +0000 (05:03 +0000)]
detect whether cgmanager_list_controllers is available

and don't use it if not. This fixes failure to build with older
cgmanager.

Signed-off-by: Serge Hallyn <serge.hallyn@ubuntu.com>
Acked-by: Stéphane Graber <stgraber@ubuntu.com>
9 years agoChanged parsing of allotments. Now parses top-to-bottom regardless of user or group
Henrik Kjölhede [Wed, 3 Jun 2015 13:22:46 +0000 (15:22 +0200)]
Changed parsing of allotments. Now parses top-to-bottom regardless of user or group

Signed-off-by: Henrik Kjölhede <hkjolhede@gmail.com>
9 years agoapi_start: always close fds 0-2 when daemonized
Serge Hallyn [Tue, 2 Jun 2015 22:33:34 +0000 (22:33 +0000)]
api_start: always close fds 0-2 when daemonized

commit 507cee3618237d3 moved the close and re-open of fds 0-2 into
do_start.  But this means that the lxc monitor itself keeps the
caller's fds 0-2 open, which is wrong for daemonized containers.

Closes #548

Reported-by: Mathieu Le Marec - Pasquet <kiorky@cryptelium.net>
Signed-off-by: Serge Hallyn <serge.hallyn@ubuntu.com>
Acked-by: Stéphane Graber <stgraber@ubuntu.com>
9 years agocgmanager: attach: never use 'all' controller
Serge Hallyn [Wed, 27 May 2015 10:05:16 +0000 (10:05 +0000)]
cgmanager: attach: never use 'all' controller

We were using 'all' controller if current was in all the
same cgroup.  That doesn't suffice.  We'd have to check
the target.  At that point we may as well just attach
controller by controller.

An optimization to consider is to check the /proc/initpid/cgroup
for all identical controllers.  Let's start by just getting it
right.

Signed-off-by: Serge Hallyn <serge.hallyn@ubuntu.com>
Acked-by: Stéphane Graber <stgraber@ubuntu.com>
9 years agodoc: Add the description of lxc.hook.destroy in Japanese lxc.container.conf(5)
KATOH Yasufumi [Wed, 27 May 2015 07:07:58 +0000 (16:07 +0900)]
doc: Add the description of lxc.hook.destroy in Japanese lxc.container.conf(5)

Update for commit 37cf711

Signed-off-by: KATOH Yasufumi <karma@jazz.email.ne.jp>
Acked-by: Stéphane Graber <stgraber@ubuntu.com>
9 years agoc/r: remember to clean up pidfile
Tycho Andersen [Tue, 2 Jun 2015 03:14:57 +0000 (21:14 -0600)]
c/r: remember to clean up pidfile

When restoring, we didn't clean up the pidfile that criu uses to pass us the
init pid on error or success; let's do that.

Signed-off-by: Tycho Andersen <tycho.andersen@canonical.com>
Acked-by: Serge E. Hallyn <serge.hallyn@ubuntu.com>
9 years agoFix ABI compatibility
Stéphane Graber [Fri, 29 May 2015 15:39:25 +0000 (11:39 -0400)]
Fix ABI compatibility

Until we bump the SONAME to liblxc2, only symbol additions and struct
member additions are allowed.

Adding struct members in the middle of the struct breaks backward
compatibility.

This commit makes it clear when struct members were added and moves a
few members that were added in the middle of the 1.0 struct to the end
of it.

Note that unfortunately that means we're breaking backward compatibility
between LXC 1.1.0 and the state after this commit, given 1.1 is
reasonably new, this is the least damaging way of fixing the problem.

Signed-off-by: Stéphane Graber <stgraber@ubuntu.com>
Acked-by: Serge E. Hallyn <serge.hallyn@ubuntu.com>
9 years agoThe yum in Centos 5.11 does not know about '--releasever', which is used by: lxc...
Dwight Schauer [Tue, 2 Jun 2015 04:41:09 +0000 (23:41 -0500)]
The yum in Centos 5.11 does not know about '--releasever', which is used by: lxc-create ... -- release=VERSION
The release version only needs to be set in the outer bootstrap, not the inner one.
With this change an lxc-create bootstrap of CentOS 5.11 completes enough to be usable.
CentOS 5.11 containers can be created, started, stopped, and networking works.
Signed-off-by: Dwight Schauer <das@teegra.net>
9 years agoAdded check against negative malloc and cleaned up comments
Henrik Kjölhede [Mon, 1 Jun 2015 08:04:46 +0000 (10:04 +0200)]
Added check against negative malloc and cleaned up comments

Signed-off-by: Henrik Kjölhede <hkjolhede@gmail.com>
9 years agoaufs: Support unprivileged clone, mount
KATOH Yasufumi [Thu, 21 May 2015 08:36:49 +0000 (17:36 +0900)]
aufs: Support unprivileged clone, mount

Current aufs supports FS_USERNS_MOUNT by using allow_userns module
parameter. It allows root in userns to mount aufs.

This patch allows an unprivileged container to use aufs. The value of
xino option is changed to /dev/shm/aufs.xino that an unpriv user can
write.

Signed-off-by: KATOH Yasufumi <karma@jazz.email.ne.jp>
Acked-by: Serge E. Hallyn <serge.hallyn@ubuntu.com>
9 years agoproc update - don't assume we are pid 1
Serge Hallyn [Sun, 17 May 2015 20:14:13 +0000 (20:14 +0000)]
proc update - don't assume we are pid 1

(I erred in the first patch, causing every lxc-attach to unmount the
container-'s /proc)

Since we now use mount_proc_if_needed() from attach, as opposed to only
from start, we cannot assume we are pid 1.  So fix the check for whether
to mount a new proc.

Signed-off-by: Serge Hallyn <serge.hallyn@ubuntu.com>
Acked-by: Stéphane Graber <stgraber@ubuntu.com>
9 years agoattach: mount a sane prox for LSM setup
Serge Hallyn [Sun, 17 May 2015 13:04:47 +0000 (13:04 +0000)]
attach: mount a sane prox for LSM setup

To set lsm labels, a namespace-local proc mount is needed.

If a container does not have a lxc.mount.auto = proc set, then
tasks in the container do not have a correct /proc mount until
init feels like doing the mount.  At startup we handlie this
by mounting a temporary /proc if needed.  We weren't doing this
at attach, though, so that

lxc-start -n $container
lxc-wait -t 5 -s RUNNING -n $container
lxc-attach -n $container -- uname -a

could in a racy way fail with something like

lxc-attach: lsm/apparmor.c: apparmor_process_label_set: 183 No such file or directory - failed to change apparmor profile to lxc-container-default

Thanks to Chris Townsend for finding this bug at
https://bugs.launchpad.net/ubuntu/+source/lxc/+bug/1452451

Signed-off-by: Serge Hallyn <serge.hallyn@ubuntu.com>
Acked-by: Stéphane Graber <stgraber@ubuntu.com>
9 years agolxc-busybox: Prevent copying binaries from /usr/local to container
Bogdan Purcareata [Tue, 12 May 2015 09:45:28 +0000 (09:45 +0000)]
lxc-busybox: Prevent copying binaries from /usr/local to container

On certain systems, some binaries needed by the container features (dropbear,
openssh), may be placed in non-standard (aka non-distribution-managed
locations), such as /usr/local/*, /opt/local/*, etc. Don't copy the respective
binaries in the container and return a clear error why.

The user should only use these binaries if they are installed at system-wide
locations on the host, such as /{s,}bin or /usr/{s,}bin.

v2:
- check that binary paths adhere to /{,usr/}{,s}bin only

Signed-off-by: Bogdan Purcareata <bogdan.purcareata@freescale.com>
Acked-by: Serge E. Hallyn <serge.hallyn@ubuntu.com>
9 years agolxc-busybox: make some OpenSSH tools optional
Bogdan Purcareata [Tue, 12 May 2015 09:45:27 +0000 (09:45 +0000)]
lxc-busybox: make some OpenSSH tools optional

Currently, when installing OpenSSH in a Busybox container, the template searches
for all the OpenSSH client binaries available in the Debian distro package. The
included tools might differ from distro to distro, so make part of the tools
optional. The mandatory tools, without which installing OpenSSH fails, are
"sshd" for the server and "ssh" and "scp" for the client.

Signed-off-by: Bogdan Purcareata <bogdan.purcareata@freescale.com>
Acked-by: Serge E. Hallyn <serge.hallyn@ubuntu.com>
9 years agodoc: Add the description of macvlan passthru mode in Japanese lxc.container.conf(5)
KATOH Yasufumi [Tue, 26 May 2015 09:11:52 +0000 (18:11 +0900)]
doc: Add the description of macvlan passthru mode in Japanese lxc.container.conf(5)

Update for commit c15ea60

Signed-off-by: KATOH Yasufumi <karma@jazz.email.ne.jp>
Acked-by: Stéphane Graber <stgraber@ubuntu.com>
9 years agodoc: Update the description of -L option in lxc-autostart(1)
KATOH Yasufumi [Wed, 13 May 2015 06:19:17 +0000 (15:19 +0900)]
doc: Update the description of -L option in lxc-autostart(1)

Add the description about displaying the value of wait delays for -L
option

Signed-off-by: KATOH Yasufumi <karma@jazz.email.ne.jp>
Acked-by: Stéphane Graber <stgraber@ubuntu.com>
9 years agodoc: Fix the mistranslation about lxc.group in Japanese lxc.container.conf(5)
KATOH Yasufumi [Wed, 13 May 2015 06:19:16 +0000 (15:19 +0900)]
doc: Fix the mistranslation about lxc.group in Japanese lxc.container.conf(5)

Signed-off-by: KATOH Yasufumi <karma@jazz.email.ne.jp>
Acked-by: Stéphane Graber <stgraber@ubuntu.com>
9 years agoenable cgmanager support for Travis CI
S.Çağlar Onur [Tue, 12 May 2015 18:30:33 +0000 (14:30 -0400)]
enable cgmanager support for Travis CI

Signed-off-by: S.Çağlar Onur <caglar@10ur.org>
Acked-by: Stéphane Graber <stgraber@ubuntu.com>
9 years agoc/r: complain when criu isn't exec()'d correctly
Tycho Andersen [Wed, 6 May 2015 15:25:31 +0000 (09:25 -0600)]
c/r: complain when criu isn't exec()'d correctly

Signed-off-by: Tycho Andersen <tycho.andersen@canonical.com>
Acked-by: Serge E. Hallyn <serge.hallyn@ubuntu.com>
9 years agoUse 'cgm listcontrollers' list rather than /proc/self/cgroups
Serge Hallyn [Fri, 1 May 2015 21:11:28 +0000 (21:11 +0000)]
Use 'cgm listcontrollers' list rather than /proc/self/cgroups

to populate the list of subsystems to use.

Cgmanager can be started with some subsystems disabled (i.e.
cgmanager -M cpuset).  If lxc using cgmanager then uses the
/proc/self/cgroup output to determine which controllers to use,
it will fail when trying to do things to cpuset.  Instead, ask
cgmanager which controllers to use.

This still defers (per patch 1/1) to the lxc.cgroup.use values.

Signed-off-by: Serge Hallyn <serge.hallyn@ubuntu.com>
Acked-by: Stéphane Graber <stgraber@ubuntu.com>
9 years agomake cgmanager follow lxc.cgroup.use
Serge Hallyn [Fri, 1 May 2015 15:09:41 +0000 (15:09 +0000)]
make cgmanager follow lxc.cgroup.use

Signed-off-by: Serge Hallyn <serge.hallyn@ubuntu.com>
Acked-by: Stéphane Graber <stgraber@ubuntu.com>
9 years agolxc-destroy: remove btrfs subvolumes
Serge Hallyn [Tue, 28 Apr 2015 13:31:05 +0000 (13:31 +0000)]
lxc-destroy: remove btrfs subvolumes

Doing this requires some btrfs functions from bdev to be used in
utils.c  Because utils.h is imported by lxc_init.c, I had to create
a new initutils.[ch] which are used by both lxc_init.c and utils.c
We could instead put the btrfs functions into utils.c, which would
be a shorter patch, but it really doesn't belong there.  So I went
the other way figuring there may be more such cases coming up of
fns in utils.c needing code from bdev.c which can't go into lxc_init.

Currently, if we detect a btrfs subvolume we just remove it.  The
st_dev on that dir is different, so we cannot detect if this is
bound in from another fs easily.  If we care, we should check
whether this is a mountpoint, this patch doesn't do that.

Signed-off-by: Serge Hallyn <serge.hallyn@ubuntu.com>
Acked-by: Stéphane Graber <stgraber@ubuntu.com>
9 years agoUpdate lxc-debian.in
有张纸 [Fri, 22 May 2015 13:26:35 +0000 (21:26 +0800)]
Update lxc-debian.in

fix "bash: warning: setlocale: LC_ALL: cannot change locale"

Signed-off-by: <feng xiahou xiahoufeng@yahoo.com>
Acked-by: Stéphane Graber <stgraber@ubuntu.com>
9 years agoMerge pull request #536 from regit/passthru-v1.2
Stéphane Graber [Mon, 25 May 2015 15:51:07 +0000 (11:51 -0400)]
Merge pull request #536 from regit/passthru-v1.2

Passthru v1.2

9 years agodoc: add 'macvlan' 'passthru' mode
Eric Leblond [Sat, 23 May 2015 15:50:31 +0000 (17:50 +0200)]
doc: add 'macvlan' 'passthru' mode

This patch also reword the macvlan section which was hard to read.

Signed-off-by: Eric Leblond <eric@regit.org>
9 years agoMerge pull request #522 from ysbnim/master
Stéphane Graber [Mon, 25 May 2015 15:07:10 +0000 (11:07 -0400)]
Merge pull request #522 from ysbnim/master

config : add lxc.hook.destroy option