summaryrefslogtreecommitdiffstats
path: root/bin/mkdir/mkdir.c
Commit message (Collapse)AuthorAgeFilesLines
* Free memory obtained from setmode.imp1998-12-161-1/+2
| | | | Obtained from: OpenBSD
* Fix behaviour for 'mkdir -m 777 / /tmp/foo'. Play "guess the style bug"msmith1998-10-231-6/+8
| | | | | | with Bruce again. Reported by: bde
* Honour the spirit rather than the implementation of the previous changes;msmith1998-10-221-19/+10
| | | | | if we are invoked with -m, use chmod() on the final directory component in order to ensure the mode is correctly set.
* Make this compile, and honour the spirit of the original design whilemsmith1998-10-201-8/+10
| | | | | | | incorporating the intended fix. Attempt to address some of the putative style bugs introduced. Others doubtless remain. Embarrassed by: bde
* - mkdir -m should call chmod because the high-order bits get ignoredmsmith1998-10-201-1/+19
| | | | | | by the kernel as a security feature of some sort. Submitted by: Wilfredo Sanchez <wsanchez@apple.com>
* correct use of .Nm. Add rcsid.charnier1998-05-151-3/+5
|
* Fix several problems with mkdir:mpp1997-04-011-29/+38
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1) Fix mkdir -p to exit with the proper exit status and issue an error message if it was unable to create all of the specified directories and they did not previously exist. POSIX says: The mkdir utility shall exit with one of the following values: 0 All the specified directories were created successfully or the -p option was specified and all the specified directories now exist. E.g. % mkdir -p /var/mkdir mkdir: /var/mkdir: Permission denied % touch /tmp/file % mkdir -p /tmp/file/dir mkdir: /tmp/file: Not a directory Previously the above examples would exit with a zero exit status and no error message. Something like the following run as a normal user will still not produce an error: % id uid=629(mpp) gid=629(mpp).... % mkdir -p /usr/local/etc % ls -ld /usr/local/etc drwxr-xr-x 4 bin bin 512 Dec 26 14:55 /usr/local/etc/ 2) Cleaned up the mode handling to be more efficient when multiple directories are being created. 3) Fixed a problem where directories could be created with the wrong mode if the the -p option was specified and the build() routine returned and error. It would leave the umask set incorrectly at this point. 4) Removed an unused variable. Closes PR# 2304.
* compare return value from getopt against -1 rather than EOF, per the finalimp1997-03-281-2/+2
| | | | posix standard on the topic.
* Revert $FreeBSD$ to $Id$peter1997-02-221-1/+1
|
* Make the long-awaited change from $Id$ to $FreeBSD$jkh1997-01-141-1/+1
| | | | | | | | This will make a number of things easier in the future, as well as (finally!) avoiding the Id-smashing problem which has plagued developers for so long. Boy, I'm glad we're not using sup anymore. This update would have been insane otherwise.
* Cleanup man page and -Wall cleaning.steve1996-12-141-3/+3
|
* Added $Id$dg1994-09-241-0/+2
|
* Remove bogus cast that was introduced in the previous commit.bde1994-09-211-1/+1
|
* Applied patch to make -Wall and -Dlint shut up.phk1994-09-201-3/+4
| | | | | Reviewed by: phk Submitted by: Josef Grosch <joeg@gagme.wwa.com>
* [ From Dave Tweten ]jkh1994-09-081-2/+4
| | | | | | | | | | | | | | | | | POSIX.2 looks pretty unequivocal to me, and it agrees with you. Under the explanation of the "-p" option, it says, "Each dir operand that names an existing directory shall be ignored without error." Under the explanation of exit status zero, it says, "All the specified directories were created successfully, or the-p option was specified and all the specified directories now exist." Seems to me POSIX requires exactly the behavior you want. [ And I've made the change, which is also now compatible with 1.x - jkh ] Reviewed by: jkh Submitted by: jkh/tweten
* BSD 4.4 Lite bin Sourcesrgrimes1994-05-261-0/+169
OpenPOWER on IntegriCloud