Commit Graph

7627 Commits

Author SHA1 Message Date
2xsec
b8bcbe9b06
syntax error: mismatch brace
Signed-off-by: 2xsec <dh48.jeong@samsung.com>
2018-09-04 14:58:59 +09:00
2xsec
aa599d1f48
nl: remove duplicated define
Signed-off-by: 2xsec <dh48.jeong@samsung.com>
2018-09-04 14:24:22 +09:00
2xsec
91d9cab6de
utils: defensive programming
If caller passed the size of array not string length, it is possible to be accessed out of bounds.

Reorder conditions can prevent access invalid index of array.

Signed-off-by: 2xsec <dh48.jeong@samsung.com>
2018-09-04 11:10:18 +09:00
2xsec
22b67bfa96
caps: fix illegal access to array bound
Signed-off-by: 2xsec <dh48.jeong@samsung.com>
2018-09-03 15:10:35 +09:00
Wolfgang Bumiller
d3aba1db25
Merge pull request #2581 from brauner/2018-09-02/macro
macro: move MS_* macros
2018-09-02 10:03:16 +02:00
Christian Brauner
6e5655e0db
macro: move MS_* macros
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2018-09-02 07:32:23 +02:00
Wolfgang Bumiller
04a49be674
Merge pull request #2580 from brauner/2018-09-01/revert_blub_revert
Revert "Revert "tree-wide: use sizeof on static arrays""
2018-09-01 20:53:32 +02:00
Christian Brauner
979a0d9354
Revert "Revert "tree-wide: use sizeof on static arrays""
This reverts commit 2fb7cf0b32.

The problem wasn't caused by the reverted commit and was fixed in

commit 0c9b1f826d ("macro: calculate buffer lengths correctly")

The full explanation can be taken from the following irc excerpt from
the #lxc-dev channel:

│19:54:47 brauner | there was a bug in one of the standard macros we used
│19:55:01 brauner | and the changes by INTTYPE_TO_STRLEN() caused the issue to surface
│19:55:03 brauner | which is good
│19:55:16 brauner | i sent a branch and stgraber merged it that fixes it
│19:57:56  Blub\0 | so...
│19:58:31  Blub\0 | still doesn't explain how it was the sizeof() patch
│20:07:14 brauner | Blub\0: so here's the long explanation
│20:07:35 brauner | Blub\0: stgraber bumped pid_max on our jenkins test builders
│20:07:53 brauner | Blub\0: because we're running *a lot* of containers
│20:07:56 brauner | in any case
│20:08:06 brauner | there was a buffer
│20:08:12 brauner | LXC_LSMATTRLEN
│20:08:59 brauner | it used to be
│20:09:03 brauner | -/* /proc/pid-to-str/attr/current = (5 + INTTYPE_TO_STRLEN(pid_t) + 7 + 1) */
│20:09:03 brauner | -#define LXC_LSMATTRLEN (5 + INTTYPE_TO_STRLEN(pid_t) + 7 + 1)
│20:09:14 brauner | which one can see is wrong
│20:09:21 brauner | before the INTTYPE patchset
│20:09:40 brauner | INTTYPE_TO_STRLEN(pid_t) was LXC_NUMSTRLEN64
│20:09:45 brauner | which gave you 21 chars
│20:09:57 brauner | so it accounted for the missing parts
│20:10:03 brauner | because the correct macro should've been
│20:10:17 brauner | +/* /proc/        = 6
│20:10:17 brauner | + *               +
│20:10:17 brauner | + * <pid-as-str>  = INTTYPE_TO_STRLEN(pid_t)
│20:10:17 brauner | + *               +
│20:10:17 brauner | + * /attr/        = 6
│20:10:17 brauner | + *               +
│20:10:17 brauner | + * /current      = 8
│20:10:17 brauner | + *               +
│20:10:17 brauner | + * \0            = 1
│20:10:17 brauner | + */
│20:10:17 brauner | +#define LXC_LSMATTRLEN (6 + INTTYPE_TO_STRLEN(pid_t) + 6 + 8 + 1)
│20:10:24  Blub\0 | still
│20:10:31 brauner | the issue was only seen
│20:10:39 brauner | when the pid number hit a specific maximum
│20:10:50  Blub\0 | the sizeof patch only changed instances of actual char buf[A_FIXED_NUMBER] + snprintf(buf, A_FIXED_NUMBER, ...)
│20:10:54 brauner | aka exceeded the newly shortened buffer
│20:11:42 brauner | your patch was a red herring
│20:12:03  Blub\0 | I guess
│20:12:06 brauner | it didn't cause it
│20:12:14 brauner | it just surfaced at the same time it was merged
│20:12:25  Blub\0 | so we can revert the revert then? :)
│20:12:35 brauner | yes, that was th eplan all along

Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2018-09-01 20:25:07 +02:00
Stéphane Graber
b0f3050884
Merge pull request #2579 from brauner/2018-08-31/int64_t_pids
macro: calculate buffer lengths correctly
2018-08-31 16:52:23 -07:00
Christian Brauner
0c9b1f826d
macro: calculate buffer lengths correctly
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2018-09-01 01:08:30 +02:00
Christian Brauner
54dcfd8160
commands: assign before converting to pointer
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2018-09-01 00:29:30 +02:00
Stéphane Graber
f8db64b867
Merge pull request #2578 from brauner/2018-08-31/int64_t_pids
commands: pass around intmax_t
2018-08-31 14:30:21 -07:00
Christian Brauner
9234406bb1
commands: pass around intmax_t
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2018-08-31 21:44:49 +02:00
Stéphane Graber
2fb7cf0b32
Revert "tree-wide: use sizeof on static arrays"
This reverts commit 81a3bb64b4.

This commit broke all builders running with pid_max > 32768.

Reverting for now so we can bring the build farm back online.

Signed-off-by: Stéphane Graber <stgraber@ubuntu.com>
2018-08-31 11:58:17 -07:00
Wolfgang Bumiller
6b28940591
Merge pull request #2435 from brauner/2018-06-27/storage_managed
[RFC] conf: introduce lxc.rootfs.managed
2018-08-30 08:28:08 +02:00
Christian Brauner
7cba1a2729
Merge pull request #2577 from Blub/inttype-lengths
tree-wide: use sizeof on static arrays
2018-08-29 22:26:46 +02:00
Wolfgang Bumiller
81a3bb64b4 tree-wide: use sizeof on static arrays
Instead of duplicating their lengths in read/snprintf/...
calls.

Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2018-08-29 21:46:39 +02:00
Wolfgang Bumiller
f288e10a59
Merge pull request #2572 from brauner/2018-08-24/musl_fixes
build: fix musl + add compiler.h
2018-08-29 21:39:05 +02:00
Stéphane Graber
de2c63143a
Merge pull request #2576 from brauner/2018-08-28/command_init_id
commands: always return -1 on lxc_cmd_get_init_pid() err
2018-08-28 11:29:02 -07:00
Christian Brauner
62fc84030b
string_utils: use UINT64_MAX macro
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2018-08-28 20:22:24 +02:00
Christian Brauner
1f207a5cd9
caps: move macros to macro header
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2018-08-28 20:22:24 +02:00
Christian Brauner
3ef9b3d30f
start: remove duplicate macros
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2018-08-28 20:22:24 +02:00
Christian Brauner
9978b4d342
Makefile: correctly add ifaddrs to noinst_HEADERS
Before this we only added ifaddrs.h to noinst_HEADERS when we were running on
Android's bionic. That obviously doesn't make sense since it is possible that
ifaddrs.h is not defined and we're also not running on Android's bionic.

Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2018-08-28 20:22:24 +02:00
Christian Brauner
ba2b6354b2
macro: coding style fixes
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2018-08-28 20:22:24 +02:00
Christian Brauner
0c5ea884e8
macro: final INTTYPE_TO_STRLEN() related cleanups
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2018-08-28 20:22:24 +02:00
Christian Brauner
84226232fb
tests: s/LXC_NUMSTRLEN64/INTTYPE_TO_STRLEN()/
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2018-08-28 20:22:24 +02:00
Christian Brauner
d33968ade3
conf: s/LXC_NUMSTRLEN64/INTTYPE_TO_STRLEN()/
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2018-08-28 20:22:24 +02:00
Christian Brauner
9d6ade4ace
tools: s/LXC_NUMSTRLEN64/INTTYPE_TO_STRLEN()/
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2018-08-28 20:22:24 +02:00
Christian Brauner
40464e8ac6
utils: s/LXC_NUMSTRLEN64/INTTYPE_TO_STRLEN()/
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2018-08-28 20:22:24 +02:00
Christian Brauner
f1eacafbc8
string_utils: s/LXC_NUMSTRLEN64/INTTYPE_TO_STRLEN()/
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2018-08-28 20:22:24 +02:00
Christian Brauner
8335fd40ef
network: s/LXC_NUMSTRLEN64/INTTYPE_TO_STRLEN()/
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2018-08-28 20:22:24 +02:00
Christian Brauner
397a8d30a8
monitor: s/LXC_NUMSTRLEN64/INTTYPE_TO_STRLEN()/
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2018-08-28 20:14:52 +02:00
Christian Brauner
da07fe61fc
lxccontainer: s/LXC_NUMSTRLEN64/INTTYPE_TO_STRLEN()/
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2018-08-28 20:14:52 +02:00
Christian Brauner
2955a58ab4
macro: s/LXC_NUMSTRLEN64/INTTYPE_TO_STRLEN()/
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2018-08-28 20:14:52 +02:00
Christian Brauner
c6de4db4f6
lsm: s/LXC_NUMSTRLEN64/INTTYPE_TO_STRLEN()/
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2018-08-28 20:14:52 +02:00
Christian Brauner
3a2c65f877
log: s/LXC_NUMSTRLEN64/INTTYPE_TO_STRLEN()/
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2018-08-28 20:14:52 +02:00
Christian Brauner
c77aee6475
confile: s/LXC_NUMSTRLEN64/INTTYPE_TO_STRLEN()/
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2018-08-28 20:14:52 +02:00
Christian Brauner
c19ad94b0a
cgfsng: s/LXC_NUMSTRLEN64/INTTYPE_TO_STRLEN()/
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2018-08-28 20:14:52 +02:00
Christian Brauner
69623bfc3d
caps: s/LXC_NUMSTRLEN64/INTTYPE_TO_STRLEN()/
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2018-08-28 20:14:52 +02:00
Christian Brauner
f246d9b89f
macro: add INTTYPE_TO_STRLEN()
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2018-08-28 20:14:52 +02:00
Christian Brauner
245532a2ad
macro: add PTR_TO_INT() and INT_TO_PTR()
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2018-08-28 20:14:52 +02:00
Christian Brauner
9b8d4c58d4
macro: move LXC_CMD_DATA_MAX from commands.h
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2018-08-28 20:14:52 +02:00
Christian Brauner
b1234129fb
macro: add LXC_AUDS_ADDR_LEN
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2018-08-28 20:14:52 +02:00
Christian Brauner
e8cd120886
commands: ensure -1 is sent on EPIPE for init pid
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Reported-by: Stéphane Graber <stgraber@ubuntu.com>
2018-08-28 20:12:42 +02:00
Christian Brauner
691544a0e4
tests: cleanup Makefile
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2018-08-28 20:12:42 +02:00
Christian Brauner
c8208ff034
tests: add basic.c
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2018-08-28 20:12:42 +02:00
Christian Brauner
8ed8a6265b
commands: return -1 on lxc_cmd_get_init_pid() err
A while back the whole lxc_cmd() infrastructure was changed to return
meaningful negative error codes. But lxc_cmd_get_init_pid() should always
return -1. Make it so!

Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Reported-by: Stéphane Graber <stgraber@ubuntu.com>
2018-08-28 20:12:42 +02:00
Christian Brauner
d7f19646df
compiler: add compiler.h header
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2018-08-28 20:10:47 +02:00
Christian Brauner
8bc781b419
configure: reorder header checks
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2018-08-28 20:10:46 +02:00
Christian Brauner
2259663ca0
build: fix musl
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
2018-08-28 20:10:44 +02:00