Commit Graph

54 Commits

Author SHA1 Message Date
kre 683de06b06 PR bin/56398
The final component of both a/b/c and a/b/c/ is "c", so that's the one
to which the -m arg applies.
2021-09-13 22:46:02 +00:00
wiz 285e86b675 Use Ex. Remove superfluous Pp. 2017-07-04 06:49:35 +00:00
wiz 01869ca4d2 Remove workaround for ancient HTML generation code. 2017-07-03 21:28:48 +00:00
sevan f8e12af4d6 Grammar 2016-08-10 18:42:00 +00:00
sevan cf010966fe Document the version mkdir first appeared. 2016-08-10 17:56:32 +00:00
wiz 3957bea1ef Fix whitespace nits. Suggested by Bug Hunting. 2012-03-22 07:58:16 +00:00
joerg 7aae24bc7d static + __dead 2011-08-29 14:45:28 +00:00
lukem 2fe2731d3f Remove the \n and tabs from the __COPYRIGHT() strings. 2008-07-20 00:52:39 +00:00
christos 16547af71a Fix setmode error handling. 2005-10-01 20:22:29 +00:00
jschauma ad8530d1eb remove unused code left from printescaped() backput as pointed out by Jeff
Ito in PR bin/23969 and PR bin/23970.
2004-01-04 16:04:18 +00:00
jschauma 6a75fbb636 Following private discussion with kleink@ and hubertf@ and public discussion
on tech-userlevel@, back out printescaped() functionality.
kleink: ``We sell rope.''
2003-09-14 19:20:16 +00:00
christos e84c1029c6 Comment out unneeded code now that the kernel has been fixed to ignore
trailing slashes.
2003-09-11 17:38:12 +00:00
itojun ce5d37eae2 use bounded string op 2003-08-13 07:34:09 +00:00
agc b5b2954259 Move UCB-licensed code from 4-clause to 3-clause licence.
Patches provided by Joel Baker in PR 22249, verified by myself.
2003-08-07 09:05:01 +00:00
jschauma 458ed23412 As discusses a little while back on tech-userlevel:
If stdout is a tty, use vis(3) to print any filenames to prevent garbage
from being printed if the filename contains control- or other non-printable
characters.

While here, sprinkle some EXIT_FAILURE and NOTREACHED where appropriate.
2003-08-04 22:31:21 +00:00
lukem d3e7b00142 Fix typo in mkpath()'s test before chmod().
Noted in [bin/20652] by Anthony Mallet.
2003-03-10 23:33:10 +00:00
lukem ee7f3a601a Rework -p support again;
- If mkdir() fails on a component (no matter what the error is),
  stat() the result.  If the stat() fails, print the error mkdir() generated.
  Otherwise, if the result is not a directory, explicitly fail with ENOTDIR.
- Move the chmod() of last element to be done only if the mkdir() succeeded
  (i.e, it wasn't an existing directory)

Fixes problem introduced in previous commit where "mkdir -p existing"
on a read-only file system would incorrectly return a non zero exit code,
whilst retaining the race-condition fix of the previous commit.

Thanks to simonb@ for sanity checking my fix versus the standards.
2003-03-05 03:58:44 +00:00
chs e5d34beb3e in mkpath(), don't try to stat() the to-be-created directory beforehand,
just try to create it and interpret any error appropriately.
this fixes a problem where multiple "mkdir -p" processes can race,
with the loser returning a spurious error.
2002-11-24 23:40:07 +00:00
wiz 14dfaa4b03 New policy: New sentences start on a new line.
Patches by Robert Elz <kre at munnari oz au>, with minimal changes by me.
2002-09-25 15:18:36 +00:00
enami 3579a42285 Cosmetic changes. 2002-02-19 06:30:12 +00:00
ross dc5571b22e Generate <>& symbolically. I'm avoiding .../dist/... directories for now. 2002-02-08 01:21:55 +00:00
wiz 3684e0c468 ANSIfy, KNF, use [gs]etprogname. By Petri Koistinen. 2001-09-16 22:07:14 +00:00
enami e92c3f2867 - The type of return value of setmode is a void * and getmode takes it,
rather than mode_t *.
- Free the storage allocated by setmode unless it is obvious that program
  exits immediately.
2000-10-10 14:30:40 +00:00
abs 5faa7161ce xref mkdir(2) 2000-10-07 13:16:42 +00:00
kleink 2caf6aacdd For commands and utilities, use EXIT STATUS rather than RETURN VALUES as
appropriate (and documented in mdoc(7)).
2000-09-04 07:30:07 +00:00
hubertf 1cb54f68ac Add 'RETURN VALUE' section header. 2000-08-28 02:11:04 +00:00
kleink 2ac88c9554 Change previous to use symbolic names for file modes. Also, clean up some
whitespace lossage and use EXIT_{SUCCESS,FAILURE}.
1999-05-26 15:51:09 +00:00
tron 9bb12c43bb Only call chmod(2) if we create a directory with a mode which isn't
accepted by mkdir(2).
1999-05-25 00:27:45 +00:00
scw 3c6b31bc90 Insert a missing 'else' which caused mknod(2) to still be called
even if mkdir(2) failed. At best this caused two (different)
error messages to be printed. At worst, it changed the mode of
an existing file/directory.
1998-10-13 20:11:42 +00:00
wsanchez 508f3bd4f6 umask()/mkdir() system calls will not set the setuid bit; the kernel intentionally
discards the high bits, so "mkdir -m 1777 foo" won't set the sticky bit. So call
  chmod() on the directory.
1998-10-08 02:14:16 +00:00
mycroft 9dc385beb1 Delint. 1998-07-28 05:31:22 +00:00
cgd bad15fd37f lint 1997-11-05 21:17:14 +00:00
enami c3872193cf Fix .Nm usage. 1997-10-20 08:50:59 +00:00
christos 23edbe3557 Remove WARNS=1 from all the subdirectory Makefiles, and add it to Makefile.inc
now that all /bin has been cleaned.
1997-07-20 22:36:20 +00:00
christos d3e25e3b59 Fix compiler warnings
Add WARNS=1
1997-07-20 18:55:28 +00:00
tls 3811362c9a kill use of register 1997-01-09 16:31:05 +00:00
explorer 464f1bd5ff Fix mkdir -p to not ignore terminal directory mode specified.
Closes pr bin/2686.
1996-08-12 22:44:53 +00:00
jtc 23e6aab105 Use "utility" instead of "command". Modern definitions of these terms
are distinct (See POSIX.2 glossary).

A utility is a executable, script or shell builtin; while a command
can be any of those things plus lists, pipelines, compound commands
(if, for, while) and shell function definitions.
1995-07-25 19:36:36 +00:00
mycroft 33b2edf3a9 Style and format police. 1995-06-25 21:59:21 +00:00
mycroft 26fcf513d2 Don't complain if a directory already exists. From Greg Hudson, but
slightly edited.
1995-06-25 21:44:34 +00:00
cgd e150dc2818 clean up slightly; id tags, alphabetization, prototypes, etc. 1995-03-21 07:28:51 +00:00
jtc 6c6b9acef0 Revert to code before it was merged with 4.4lite.
Updated to conform to new NetBSD RCS ID conventions.
1995-03-01 07:52:23 +00:00
mycroft 667b5ea158 Merge 4.4-Lite version. 1994-09-22 09:24:46 +00:00
jtc 4725e86083 Strip trailing slashes, to make "mkdir -p" work as specified by POSIX.2. 1994-04-29 00:13:54 +00:00
jtc 7485400f95 simplify recursive directory create (mkdir -p) code 1994-04-28 00:10:30 +00:00
jtc b148ed66e2 Localization changes.
Updated to use standard error message routines.
1993-12-31 19:34:53 +00:00
jtc 2ddbb97f0f #include <unistd.h>, so getopt(), optarg, opterr, optind, and optopt
declarations can be removed from <stdlib.h>.
1993-10-13 18:33:45 +00:00
mycroft 8542364e07 Add RCS identifiers. 1993-08-01 18:49:50 +00:00
mycroft b1bd4afedc Add RCS indentifiers. 1993-08-01 07:42:49 +00:00
mycroft cda4f8f6ee Add RCS identifiers. 1993-08-01 05:37:30 +00:00