From: Christian Brauner Date: Wed, 4 Jan 2017 15:28:50 +0000 (+0100) Subject: tools: only check for O_RDONLY X-Git-Tag: lxc-2.1.0~215^2 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=refs%2Fpull%2F1379%2Fhead;p=thirdparty%2Flxc.git tools: only check for O_RDONLY On some Android systems the lxc folders where containers are stored might be read-only and so checking for O_RDWR, will effectively make the tools useless on these systems, so let's dumb the check down to O_RDONLY. Signed-off-by: Christian Brauner --- diff --git a/src/lxc/tools/lxc_attach.c b/src/lxc/tools/lxc_attach.c index 4dd38839a..01e505a53 100644 --- a/src/lxc/tools/lxc_attach.c +++ b/src/lxc/tools/lxc_attach.c @@ -395,7 +395,7 @@ int main(int argc, char *argv[]) lxc_log_options_no_override(); if (geteuid()) { - if (access(my_args.lxcpath[0], O_RDWR) < 0) { + if (access(my_args.lxcpath[0], O_RDONLY) < 0) { if (!my_args.quiet) fprintf(stderr, "You lack access to %s\n", my_args.lxcpath[0]); exit(EXIT_FAILURE); diff --git a/src/lxc/tools/lxc_copy.c b/src/lxc/tools/lxc_copy.c index 4d0c17df7..0627a6272 100644 --- a/src/lxc/tools/lxc_copy.c +++ b/src/lxc/tools/lxc_copy.c @@ -184,7 +184,7 @@ int main(int argc, char *argv[]) lxc_log_options_no_override(); if (geteuid()) { - if (access(my_args.lxcpath[0], O_RDWR) < 0) { + if (access(my_args.lxcpath[0], O_RDONLY) < 0) { if (!my_args.quiet) fprintf(stderr, "You lack access to %s\n", my_args.lxcpath[0]); exit(ret); diff --git a/src/lxc/tools/lxc_create.c b/src/lxc/tools/lxc_create.c index 6e8acf002..b8795c446 100644 --- a/src/lxc/tools/lxc_create.c +++ b/src/lxc/tools/lxc_create.c @@ -252,7 +252,7 @@ int main(int argc, char *argv[]) if (mkdir_p(my_args.lxcpath[0], 0755)) { exit(EXIT_FAILURE); } - if (access(my_args.lxcpath[0], O_RDWR) < 0) { + if (access(my_args.lxcpath[0], O_RDONLY) < 0) { fprintf(stderr, "You lack access to %s\n", my_args.lxcpath[0]); exit(EXIT_FAILURE); } diff --git a/src/lxc/tools/lxc_snapshot.c b/src/lxc/tools/lxc_snapshot.c index 1a79a7a1d..6948d1988 100644 --- a/src/lxc/tools/lxc_snapshot.c +++ b/src/lxc/tools/lxc_snapshot.c @@ -95,7 +95,7 @@ int main(int argc, char *argv[]) lxc_log_options_no_override(); if (geteuid()) { - if (access(my_args.lxcpath[0], O_RDWR) < 0) { + if (access(my_args.lxcpath[0], O_RDONLY) < 0) { fprintf(stderr, "You lack access to %s\n", my_args.lxcpath[0]); exit(EXIT_FAILURE); diff --git a/src/lxc/tools/lxc_start.c b/src/lxc/tools/lxc_start.c index c85305b27..f5aa24bce 100644 --- a/src/lxc/tools/lxc_start.c +++ b/src/lxc/tools/lxc_start.c @@ -231,7 +231,7 @@ int main(int argc, char *argv[]) exit(err); lxc_log_options_no_override(); - if (access(my_args.lxcpath[0], O_RDWR) < 0) { + if (access(my_args.lxcpath[0], O_RDONLY) < 0) { if (!my_args.quiet) fprintf(stderr, "You lack access to %s\n", my_args.lxcpath[0]); exit(err);