summaryrefslogtreecommitdiffhomepage
path: root/coreutils/cp.c
diff options
context:
space:
mode:
authorDenis Vlasenko <vda.linux@googlemail.com>2007-03-10 16:58:49 +0000
committerDenis Vlasenko <vda.linux@googlemail.com>2007-03-10 16:58:49 +0000
commit49622d784672bf2f7b2fe80589714cdef5adde0c (patch)
tree892bb79b0ef031d729e688d6be4950f6d17f13b9 /coreutils/cp.c
parent4eb8b936cb0aeb27c3e12f9a93fc43aa1e9668f5 (diff)
selinux support by Yuichi Nakamura <ynakam@hitachisoft.jp> (HitachiSoft)
Diffstat (limited to 'coreutils/cp.c')
-rw-r--r--coreutils/cp.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/coreutils/cp.c b/coreutils/cp.c
index 7b0de477b..64cf63797 100644
--- a/coreutils/cp.c
+++ b/coreutils/cp.c
@@ -3,6 +3,7 @@
* Mini cp implementation for busybox
*
* Copyright (C) 2000 by Matt Kraai <kraai@alumni.carnegiemellon.edu>
+ * SELinux support by Yuichi Nakamura <ynakam@hitachisoft.jp>
*
* Licensed under GPL v2 or later, see file LICENSE in this tarball for details.
*/
@@ -50,6 +51,12 @@ int cp_main(int argc, char **argv)
if (flags & OPT_H) ... // deref command-line params only
*/
+#if ENABLE_SELINUX
+ if (flags & FILEUTILS_PRESERVE_SECURITY_CONTEXT) {
+ selinux_or_die();
+ }
+#endif
+
flags ^= FILEUTILS_DEREFERENCE; /* The sense of this flag was reversed. */
if (optind + 2 > argc) {