home *** CD-ROM | disk | FTP | other *** search
/ Usenet 1994 October / usenetsourcesnewsgroupsinfomagicoctober1994disk2.iso / std_unix / v21 / 041 < prev    next >
Internet Message Format  |  1990-12-05  |  3KB

  1. From news@cs.utexas.edu  Fri Aug 17 13:18:08 1990
  2. Received: from cs.utexas.edu by uunet.uu.net (5.61/1.14) with SMTP 
  3.     id AA08387; Fri, 17 Aug 90 13:18:08 -0400
  4. Posted-Date: 17 Aug 90 09:46:37 GMT
  5. Received: by cs.utexas.edu (5.64/1.70)
  6.     id AA06249; Fri, 17 Aug 90 12:18:01 -0500
  7. From: ast@cs.vu.nl (Andy Tanenbaum)
  8. Newsgroups: comp.std.unix
  9. Subject: Query about P1003.2 'cp' utility
  10. Message-Id: <439@usenix.ORG>
  11. Sender: std-unix@usenix.ORG
  12. Organization: Fac. Wiskunde & Informatica, VU, Amsterdam
  13. X-Submissions: std-unix@uunet.uu.net
  14. Date: 17 Aug 90 09:46:37 GMT
  15. Reply-To: std-unix@uunet.uu.net
  16. To: std-unix@uunet.uu.net
  17.  
  18. From:  Andy Tanenbaum <ast@cs.vu.nl>
  19.  
  20. While studying the P1003.2 description of the 'cp' utility, I ran into an
  21. ambiguity. In paragraph 4.13.2 (description), line 1985 & 1996-2000, it says:
  22.  
  23.     (1) If the destination path exists:
  24.  
  25.         (b) If the permissions of the file to which the destination path
  26.         refers to do not permit writing, actions are performed equivalent to
  27.         the unlink() #5.5.1[POSIX.1] function call using destination as the
  28.         path argument, and, if this fails for any reason...
  29.  
  30. In paragraph 4.13.3 (options), next page, lines 2010 & 2011 says:
  31.  
  32.     -f   For each existing destination pathname, remove it and create a new
  33.          file, without prompting for confirmation regardless of its permissions
  34.  
  35. Now, I believe that the description should say:
  36.  
  37.          (b) If the permissions of the file to which the destination path
  38.          refers to do not permit writing, or if the -f option is specified, ...
  39.  
  40. to be consistent, but then "cp -f" would snap any existing links to the 
  41. destination file, and even change the destination file mode, owner and group 
  42. (without a -p being specified), while "cp" wouldn't.
  43.  
  44. Example:
  45.  
  46. -rw-r--r-- 1   user1    group1         srcfile
  47. -rw-rw-rw- 2   user2    group2         dstfile
  48.  
  49. If user3 (group3) invokes cp srcfile dstfile, then the dstfile's mode, owner,
  50. group and links do not change. However, if cp -f srcfile dstfile is invoked,
  51. then the dstfile becomes:
  52.  
  53. -rw-r--r-- 1   user3    group3         dstfile
  54.  
  55. Now, this behavior might be correct, but is this effect really intended by
  56. P1003.2? Possibly, the user that wish to replace the dstfile entirely (as
  57. opposed to overwriting it) should use rm BEFORE calling cp, and the -f option
  58. should be used only to suppress interaction with the user.
  59.  
  60. Maybe draft 10 clarifies the situation?
  61.  
  62.  
  63. Vincent Archer             | Email:archer%segin4.segin.fr@relay.prime.com
  64. "People that are good at finding excuses are never good at anything else"
  65.  
  66.  
  67. (Posted by Andy Tanenbaum because Vincent does not have USENET access.)
  68.  
  69. Volume-Number: Volume 21, Number 41
  70.  
  71.