4afb5b0
diff -urNp coreutils-8.12-orig/src/copy.c coreutils-8.12/src/copy.c
4afb5b0
--- coreutils-8.12-orig/src/copy.c	2011-08-11 16:05:15.432485738 +0200
4afb5b0
+++ coreutils-8.12/src/copy.c	2011-08-11 16:14:28.660360607 +0200
4afb5b0
@@ -850,7 +850,7 @@ copy_reg (char const *src_name, char con
4afb5b0
          1) the src context may prohibit writing, and
4afb5b0
          2) because it's more consistent to use the same context
4afb5b0
          that is used when the destination file doesn't already exist.  */
4afb5b0
-      if (x->preserve_security_context && 0 <= dest_desc)
4afb5b0
+      if ((x->set_security_context || x->preserve_security_context) && 0 <= dest_desc)
4afb5b0
         {
4afb5b0
           bool all_errors = (!x->data_copy_required
4afb5b0
                              || x->require_preserve_context);
4afb5b0
diff -urNp coreutils-8.12-orig/src/cp.c coreutils-8.12/src/cp.c
4afb5b0
--- coreutils-8.12-orig/src/cp.c	2011-08-11 16:05:15.435486976 +0200
4afb5b0
+++ coreutils-8.12/src/cp.c	2011-08-11 16:16:56.408644526 +0200
4afb5b0
@@ -1119,6 +1119,7 @@ main (int argc, char **argv)
4afb5b0
             exit( 1 );
4afb5b0
          }
4afb5b0
          x.set_security_context = true;
4afb5b0
+         (void) fprintf(stderr, _("Warning, -Z/--context option is deprecated and will be removed soon!\nPlease use 'install' utility instead of cp for this functionality.\n"));
4afb5b0
          /* if there's a security_context given set new path 
4afb5b0
             components to that context, too */
4afb5b0
          if ( setfscreatecon(optarg) < 0 ) {