<feed xmlns='http://www.w3.org/2005/Atom'>
<title>coreutils/lib/mkdir-p.c, branch master</title>
<subtitle>Mirror of https://https.git.savannah.gnu.org/git/coreutils.git/
</subtitle>
<id>https://git.shady.money/coreutils/atom?h=master</id>
<link rel='self' href='https://git.shady.money/coreutils/atom?h=master'/>
<link rel='alternate' type='text/html' href='https://git.shady.money/coreutils/'/>
<updated>2006-08-21T07:26:38Z</updated>
<entry>
<title>Remove from CVS, since the bootstrap script generates them automatically.</title>
<updated>2006-08-21T07:26:38Z</updated>
<author>
<name>Paul Eggert</name>
<email>eggert@cs.ucla.edu</email>
</author>
<published>2006-08-21T07:26:38Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/coreutils/commit/?id=0f7a044109b860443ecaa4f8a37652b1b4423057'/>
<id>urn:sha1:0f7a044109b860443ecaa4f8a37652b1b4423057</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Don't include alloca.h, stdio.h, sys/types.h,</title>
<updated>2006-07-17T03:06:48Z</updated>
<author>
<name>Paul Eggert</name>
<email>eggert@cs.ucla.edu</email>
</author>
<published>2006-07-17T03:06:48Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/coreutils/commit/?id=a60cc14aed51d3f5d569e67782205aedbc838a35'/>
<id>urn:sha1:a60cc14aed51d3f5d569e67782205aedbc838a35</id>
<content type='text'>
unistd.h, string.h, chdir-safer.h, dirname.h, lchmod.h, lchown.h,
save-cwd.h.  Instead, include dirchownmod.h and mkancesdirs.h.
(make_dir_parents): New args MAKE_ANCESTOR, OPTIONS, ANNOUNCE,
MODE_BITS.  Remove options VERBOSE_FMT_STRING, CWD_ERRNO.  All
callers changed.  Revamp internals significantly, by not
attempting to create directories that are temporarily more
permissive than the final results.  Do not attempt to use
save_cwd/restore_cwd; it isn't worth it for mkdir and install.
This removes some race conditions, fixes some bugs, and simplifies
things.  Use new dirchownmod function to do owner and mode changes.
</content>
</entry>
<entry>
<title>Include lchmod.h, lchmod.c.</title>
<updated>2006-01-02T06:33:12Z</updated>
<author>
<name>Paul Eggert</name>
<email>eggert@cs.ucla.edu</email>
</author>
<published>2006-01-02T06:33:12Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/coreutils/commit/?id=c225633528e262ab8ef2e78ff85732e386fe175e'/>
<id>urn:sha1:c225633528e262ab8ef2e78ff85732e386fe175e</id>
<content type='text'>
(make_dir_parents): Use lchown rather than chown, and
lchmod rather than chmod.
</content>
</entry>
<entry>
<title>(make_dir_parents): Use chdir_no_follow only</title>
<updated>2005-12-23T18:15:33Z</updated>
<author>
<name>Jim Meyering</name>
<email>jim@meyering.net</email>
</author>
<published>2005-12-23T18:15:33Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/coreutils/commit/?id=5d3118175fa121b3e43c28eed5360a1800d1a88e'/>
<id>urn:sha1:5d3118175fa121b3e43c28eed5360a1800d1a88e</id>
<content type='text'>
if we've just created the directory.
</content>
</entry>
<entry>
<title>(RW_USR): Remove definition.</title>
<updated>2005-12-20T14:23:20Z</updated>
<author>
<name>Jim Meyering</name>
<email>jim@meyering.net</email>
</author>
<published>2005-12-20T14:23:20Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/coreutils/commit/?id=d0344cfc55944d3993667c5b41bd9234ad35e4d4'/>
<id>urn:sha1:d0344cfc55944d3993667c5b41bd9234ad35e4d4</id>
<content type='text'>
(make_dir_parents): Use S_IRWXU, now that read access is also required.

Avoid a race condition, on systems where open honors O_NOFOLLOW.

(make_dir_parents): Include chdir-safer.h.
Use chdir_no_follow in place of chdir.
</content>
</entry>
<entry>
<title>(make_dir_parents): Remove unnecessary casts of alloca,</title>
<updated>2005-12-20T10:28:53Z</updated>
<author>
<name>Jim Meyering</name>
<email>jim@meyering.net</email>
</author>
<published>2005-12-20T10:28:53Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/coreutils/commit/?id=cf02d3c6f6b155b26166dc7e149be7b3a88bdb3e'/>
<id>urn:sha1:cf02d3c6f6b155b26166dc7e149be7b3a88bdb3e</id>
<content type='text'>
since now it's guaranteed to be (void *).
</content>
</entry>
<entry>
<title>(make_dir_parents): Like the code above it, don't rely</title>
<updated>2005-10-24T13:35:59Z</updated>
<author>
<name>Jim Meyering</name>
<email>jim@meyering.net</email>
</author>
<published>2005-10-24T13:35:59Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/coreutils/commit/?id=e8871a9516f334a7822f3f3f9d9f9bcb92c59e9d'/>
<id>urn:sha1:e8871a9516f334a7822f3f3f9d9f9bcb92c59e9d</id>
<content type='text'>
on mkdir failing with a particular errno value (EEXIST).
Based on a patch by Dmitry V. Levin.
</content>
</entry>
<entry>
<title>(make_dir_parents): Make the preceding fix a little</title>
<updated>2005-10-24T10:22:10Z</updated>
<author>
<name>Jim Meyering</name>
<email>jim@meyering.net</email>
</author>
<published>2005-10-24T10:22:10Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/coreutils/commit/?id=b8cedd257ad21e739caaaf77cb5d26514686d942'/>
<id>urn:sha1:b8cedd257ad21e739caaaf77cb5d26514686d942</id>
<content type='text'>
more robust, e.g., when the final component is created as a non-
directory by another process just before `mkdir -p's final mkdir.
</content>
</entry>
<entry>
<title>A command like `mkdir -p nonexistent/.' would create the</title>
<updated>2005-10-24T10:03:47Z</updated>
<author>
<name>Jim Meyering</name>
<email>jim@meyering.net</email>
</author>
<published>2005-10-24T10:03:47Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/coreutils/commit/?id=5b427ce7c37a517695b30a415c14dace633da6b4'/>
<id>urn:sha1:5b427ce7c37a517695b30a415c14dace633da6b4</id>
<content type='text'>
directory but exit nonzero with a diagnostic.  This could also be
triggered with a non-`.' component, e.g., in a race with another
process running the same `mkdir -p nonexistent/sub' command.

(make_dir_parents): Handle the case of an existing final component.
Reported by Matthias Andree here:
http://savannah.gnu.org/bugs/?func=detailitem&amp;item_id=14848
</content>
</entry>
<entry>
<title>(make_dir_parents): Don't report an error if an</title>
<updated>2005-10-13T19:05:13Z</updated>
<author>
<name>Paul Eggert</name>
<email>eggert@cs.ucla.edu</email>
</author>
<published>2005-10-13T19:05:13Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/coreutils/commit/?id=2ec133706a86d25a9a15c274522fe5a79e9590d4'/>
<id>urn:sha1:2ec133706a86d25a9a15c274522fe5a79e9590d4</id>
<content type='text'>
intermediate directory is in a read-only file system.
</content>
</entry>
</feed>
