From unknown Sun Jun 22 04:31:14 2025 X-Loop: help-debbugs@gnu.org Subject: bug#21534: Bug in mkdir?! Resent-From: Sebastian Unger Original-Sender: "Debbugs-submit" Resent-CC: bug-coreutils@gnu.org Resent-Date: Tue, 22 Sep 2015 17:27:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 21534 X-GNU-PR-Package: coreutils X-GNU-PR-Keywords: To: 21534@debbugs.gnu.org X-Debbugs-Original-To: bug-coreutils@gnu.org Received: via spool by submit@debbugs.gnu.org id=B.144294276227796 (code B ref -1); Tue, 22 Sep 2015 17:27:01 +0000 Received: (at submit) by debbugs.gnu.org; 22 Sep 2015 17:26:02 +0000 Received: from localhost ([127.0.0.1]:41886 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1ZeRKL-0007Dx-1G for submit@debbugs.gnu.org; Tue, 22 Sep 2015 13:26:02 -0400 Received: from eggs.gnu.org ([208.118.235.92]:59232) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1ZeKpZ-0003xH-V8 for submit@debbugs.gnu.org; Tue, 22 Sep 2015 06:29:51 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ZeKpY-0005vJ-2a for submit@debbugs.gnu.org; Tue, 22 Sep 2015 06:29:49 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: ** X-Spam-Status: No, score=2.1 required=5.0 tests=BAYES_50, FREEMAIL_ENVFROM_END_DIGIT,FREEMAIL_FROM,HTML_MESSAGE,PLING_QUERY, T_DKIM_INVALID autolearn=disabled version=3.3.2 Received: from lists.gnu.org ([2001:4830:134:3::11]:50104) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZeKpY-0005vF-0M for submit@debbugs.gnu.org; Tue, 22 Sep 2015 06:29:48 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:40994) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZeKpW-0007ge-Hl for bug-coreutils@gnu.org; Tue, 22 Sep 2015 06:29:47 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ZeKpV-0005t2-3R for bug-coreutils@gnu.org; Tue, 22 Sep 2015 06:29:46 -0400 Received: from mail-vk0-x231.google.com ([2607:f8b0:400c:c05::231]:35702) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZeKpU-0005su-UT for bug-coreutils@gnu.org; Tue, 22 Sep 2015 06:29:45 -0400 Received: by vkao3 with SMTP id o3so3158745vka.2 for ; Tue, 22 Sep 2015 03:29:44 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:date:message-id:subject:from:to:content-type; bh=rIQP+FYAmvpnAqoLZNZQBgmQDTaBeoFh4KphDE1YP+0=; b=AFe9Mj06EI8NiiXZNWrrzDkBccGlTn3Pw8O1CnAtp8HkslqiBFOYthTuxQ6zzsxWEg AnkmATg5nheRJPUyTOGRcIXCD48tZgCeOdE+5E3Frd0bzlM6Be2zchij1xHqrvgb8w1F UdJRRJt2c9J13DdbiW53ThpUBHOpnxkk/roGc2sRg+V2Gzb/54BKyNGsAt58kJJbclmZ EKFkNGCmFQsah8C3YTuMWZIxMVEU2GRI+1KhEfHmORDqGQ0nomWPyNN7CiNm400djecO m+mN+SGlPxtMjIHuRl5rbxIvx71N3gj8LlNVntQVKcJTL6kOmoVXzX5Vz9qGtcxz6TOv IgnQ== MIME-Version: 1.0 X-Received: by 10.31.164.132 with SMTP id n126mr16912009vke.72.1442917784209; Tue, 22 Sep 2015 03:29:44 -0700 (PDT) Received: by 10.31.173.201 with HTTP; Tue, 22 Sep 2015 03:29:44 -0700 (PDT) Date: Tue, 22 Sep 2015 22:29:44 +1200 Message-ID: From: Sebastian Unger Content-Type: multipart/alternative; boundary=001a11466016f7d27e05205379fb X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-Received-From: 2001:4830:134:3::11 X-Spam-Score: -3.5 (---) X-Mailman-Approved-At: Tue, 22 Sep 2015 13:25:59 -0400 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.5 (---) --001a11466016f7d27e05205379fb Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Hi, I'm working on a little project of mine involving a Fuse file system on Linux. I'm having a problem where mkdir from coreutils fails with Permission denied while mkdir from busybox works. I'm running the command *mkdir -p a/b/c* and I get the following strace output (showing only the relevant lines at the end): *umask(0) =3D 022mkdir("a", 0755) =3D 0open("a", O_RDONLY|O_NOCTTY|O_NONBLOCK|O_DIRECTORY|O_NOFOLLOW) =3D -1 EACCES (Permission denied)open("/usr/share/locale/locale.alias", O_RDONLY|O_CLOEXEC) =3D 3fstat(3, {st_mode=3DS_IFREG|0644, st_size=3D2570, = ...}) =3D 0mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, = 0) =3D 0x7f6a86f20000read(3, "# Locale name alias data base.\n#"..., 4096) =3D 2570read(3, "", 4096) =3D 0close(3) =3D 0munmap(0x7f6a86f20000, 4096) =3D 0open("/usr/share/locale/en_NZ/LC_MESSAGES/coreutils.mo", O_RDONLY) =3D -1 ENOENT (No such file or directory)open("/usr/share/locale/en/LC_MESSAGES/coreutils.mo", O_RDONLY) = =3D -1 ENOENT (No such file or directory)open("/usr/share/locale-langpack/en_NZ/LC_MESSAGES/coreutils.mo", O_RDONLY) =3D -1 ENOENT (No such file or directory)open("/usr/share/locale-langpack/en/LC_MESSAGES/coreutils.mo", O_RDONLY) =3D 3fstat(3, {st_mode=3DS_IFREG|0644, st_size=3D619, ...}) =3D 0mmap(NULL, 619, PROT_READ, MAP_PRIVATE, 3, 0) =3D 0x7f6a86f20000close(3) =3D 0open("/usr/lib/charset.alias", O_RDONLY|O_NOFOLLOW) =3D -1 ENOENT (No such file or directory)write(2, "mkdir: ", 7mkdir: ) =3D 7write(2, "cannot create directory \342\200\230a\342\200\231", 31cannot create directory =E2=80=98a=E2=80=99) =3D 31open("/usr/share/locale/en_NZ/LC_MESSAGES/libc.mo", O_RDONLY) =3D -1 ENOE= NT (No such file or directory)open("/usr/share/locale/en/LC_MESSAGES/libc.mo", O_RDONLY) =3D -1 ENOENT (No such file or directory)open("/usr/share/locale-langpack/en_NZ/LC_MESSAGES/libc.mo", O_RDONLY) =3D -1 ENOENT (No such file or directory)open("/usr/share/locale-langpack/en/LC_MESSAGES/libc.mo", O_RDONLY) =3D -1 ENOENT (No such file or directory)write(2, ": Permission denied", 19: Permission denied) =3D 19write(2, "\n", 1) =3D 1close(1) =3D 0close(2) =3D 0exit_group(1) =3D ?+++ exited with 1 +++* Please note that while the creation of directory 'a' succeeds, the directory is created by the fuse with mode 0311 (-wx--x--x) and as such the open call following the mkdir fails as expected. If I try to simulate this on a normal file system by setting the umask to 0466, I get the following strace output: *umask(0) =3D 0466mkdir("a", 0311) =3D 0open("a", O_RDONLY|O_NOCTTY|O_NONBLOCK|O_DIRECTORY|O_NOFOLLOW) =3D -1 EACCES (Permission denied)chdir("a") =3D 0mkdir("b", 0311) =3D 0open("b", O_RDONLY|O_NOCTTY|O_NONBLOCK|O_DIRECTORY|O_NOFOLLOW) =3D -1 EACCES (Permission denied)chdir("b") =3D 0mkdir("c", 0311) =3D 0close(1) = =3D 0close(2) =3D 0exit_group(0) =3D ?+++ exited with 0 +++* I.e. the open still fails but apparently mkdir can live with it. Since it also works on my fuse if I set the umask to 0466, I conclude that mkdir inspects the umask to see if it expects to be able to open the directory?! That sounds like a race to me since anything may change the mode of the directory between the mkdir and open calls even on a normal FS and even more so on a networked file system. Why is it trying to open the directory in the first place? Shouldn't it just chdir into it and carry on? Is this a bug or expected behaviour? Any ideas as to how to make mkdir behave? Cheers, Seb --001a11466016f7d27e05205379fb Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: base64 PGRpdiBkaXI9Imx0ciI+PGRpdj48ZGl2PjxkaXY+PGRpdj5IaSw8YnI+PGJyPjwvZGl2PkkmIzM5 O20gd29ya2luZyBvbiBhIGxpdHRsZSBwcm9qZWN0IG9mIG1pbmUgaW52b2x2aW5nIGEgRnVzZSBm aWxlIHN5c3RlbSBvbiBMaW51eC4gSSYjMzk7bSBoYXZpbmcgYSBwcm9ibGVtIHdoZXJlIG1rZGly IGZyb20gY29yZXV0aWxzIGZhaWxzIHdpdGggUGVybWlzc2lvbiBkZW5pZWQgd2hpbGUgbWtkaXIg ZnJvbSBidXN5Ym94IHdvcmtzLjxicj48YnI+PC9kaXY+SSYjMzk7bSBydW5uaW5nIHRoZSBjb21t YW5kIDxiPjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTptb25vc3BhY2UsbW9ub3NwYWNlIj5ta2Rp ciAtcCBhL2IvYzwvc3Bhbj48L2I+IGFuZCBJIGdldCB0aGUgZm9sbG93aW5nIHN0cmFjZSBvdXRw dXQgKHNob3dpbmcgb25seSB0aGUgcmVsZXZhbnQgbGluZXMgYXQgdGhlIGVuZCk6PGJyPjxicj48 Yj48c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6bW9ub3NwYWNlLG1vbm9zcGFjZSI+dW1hc2soMCnC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoCA9IDAyMjxicj5ta2RpcigmcXVvdDthJnF1b3Q7LCAwNzU1KcKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgPSAwPGJyPm9wZW4oJnF1b3Q7YSZxdW90Oywg T19SRE9OTFl8T19OT0NUVFl8T19OT05CTE9DS3xPX0RJUkVDVE9SWXxPX05PRk9MTE9XKSA9IC0x IEVBQ0NFUyAoUGVybWlzc2lvbiBkZW5pZWQpPGJyPm9wZW4oJnF1b3Q7L3Vzci9zaGFyZS9sb2Nh bGUvbG9jYWxlLmFsaWFzJnF1b3Q7LCBPX1JET05MWXxPX0NMT0VYRUMpID0gMzxicj5mc3RhdCgz LCB7c3RfbW9kZT1TX0lGUkVHfDA2NDQsIHN0X3NpemU9MjU3MCwgLi4ufSkgPSAwPGJyPm1tYXAo TlVMTCwgNDA5NiwgUFJPVF9SRUFEfFBST1RfV1JJVEUsIE1BUF9QUklWQVRFfE1BUF9BTk9OWU1P VVMsIC0xLCAwKSA9IDB4N2Y2YTg2ZjIwMDAwPGJyPnJlYWQoMywgJnF1b3Q7IyBMb2NhbGUgbmFt ZSBhbGlhcyBkYXRhIGJhc2UuXG4jJnF1b3Q7Li4uLCA0MDk2KSA9IDI1NzA8YnI+cmVhZCgzLCAm cXVvdDsmcXVvdDssIDQwOTYpwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqAgPSAwPGJyPmNsb3NlKDMpwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgPSAwPGJyPm11bm1hcCgweDdmNmE4NmYyMDAwMCwg NDA5NinCoMKgwqDCoMKgwqDCoMKgwqDCoMKgID0gMDxicj5vcGVuKCZxdW90Oy91c3Ivc2hhcmUv bG9jYWxlL2VuX05aL0xDX01FU1NBR0VTL2NvcmV1dGlscy5tbyZxdW90OywgT19SRE9OTFkpID0g LTEgRU5PRU5UIChObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5KTxicj5vcGVuKCZxdW90Oy91c3Iv c2hhcmUvbG9jYWxlL2VuL0xDX01FU1NBR0VTL2NvcmV1dGlscy5tbyZxdW90OywgT19SRE9OTFkp ID0gLTEgRU5PRU5UIChObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5KTxicj5vcGVuKCZxdW90Oy91 c3Ivc2hhcmUvbG9jYWxlLWxhbmdwYWNrL2VuX05aL0xDX01FU1NBR0VTL2NvcmV1dGlscy5tbyZx dW90OywgT19SRE9OTFkpID0gLTEgRU5PRU5UIChObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5KTxi cj5vcGVuKCZxdW90Oy91c3Ivc2hhcmUvbG9jYWxlLWxhbmdwYWNrL2VuL0xDX01FU1NBR0VTL2Nv cmV1dGlscy5tbyZxdW90OywgT19SRE9OTFkpID0gMzxicj5mc3RhdCgzLCB7c3RfbW9kZT1TX0lG UkVHfDA2NDQsIHN0X3NpemU9NjE5LCAuLi59KSA9IDA8YnI+bW1hcChOVUxMLCA2MTksIFBST1Rf UkVBRCwgTUFQX1BSSVZBVEUsIDMsIDApID0gMHg3ZjZhODZmMjAwMDA8YnI+Y2xvc2UoMynCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oCA9IDA8YnI+b3BlbigmcXVvdDsvdXNyL2xpYi9jaGFyc2V0LmFsaWFzJnF1b3Q7LCBPX1JET05M WXxPX05PRk9MTE9XKSA9IC0xIEVOT0VOVCAoTm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeSk8YnI+ d3JpdGUoMiwgJnF1b3Q7bWtkaXI6ICZxdW90OywgN21rZGlyOiApwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoCA9IDc8YnI+d3JpdGUoMiwgJnF1b3Q7Y2Fubm90IGNyZWF0ZSBkaXJl Y3RvcnkgXDM0MlwyMDBcMjMwYVwzNDJcMjAwXDIzMSZxdW90OywgMzFjYW5ub3QgY3JlYXRlIGRp cmVjdG9yeSDigJhh4oCZKSA9IDMxPGJyPm9wZW4oJnF1b3Q7L3Vzci9zaGFyZS9sb2NhbGUvZW5f TlovTENfTUVTU0FHRVMvbGliYy5tbyZxdW90OywgT19SRE9OTFkpID0gLTEgRU5PRU5UIChObyBz dWNoIGZpbGUgb3IgZGlyZWN0b3J5KTxicj5vcGVuKCZxdW90Oy91c3Ivc2hhcmUvbG9jYWxlL2Vu L0xDX01FU1NBR0VTL2xpYmMubW8mcXVvdDssIE9fUkRPTkxZKSA9IC0xIEVOT0VOVCAoTm8gc3Vj aCBmaWxlIG9yIGRpcmVjdG9yeSk8YnI+b3BlbigmcXVvdDsvdXNyL3NoYXJlL2xvY2FsZS1sYW5n cGFjay9lbl9OWi9MQ19NRVNTQUdFUy9saWJjLm1vJnF1b3Q7LCBPX1JET05MWSkgPSAtMSBFTk9F TlQgKE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkpPGJyPm9wZW4oJnF1b3Q7L3Vzci9zaGFyZS9s b2NhbGUtbGFuZ3BhY2svZW4vTENfTUVTU0FHRVMvbGliYy5tbyZxdW90OywgT19SRE9OTFkpID0g LTEgRU5PRU5UIChObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5KTxicj53cml0ZSgyLCAmcXVvdDs6 IFBlcm1pc3Npb24gZGVuaWVkJnF1b3Q7LCAxOTogUGVybWlzc2lvbiBkZW5pZWQpwqDCoMKgwqAg PSAxOTxicj53cml0ZSgyLCAmcXVvdDtcbiZxdW90OywgMTxicj4pwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgPSAxPGJyPmNsb3NlKDEpwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgPSAwPGJyPmNs b3NlKDIpwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqAgPSAwPGJyPmV4aXRfZ3JvdXAoMSnCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgID0gPzxicj4rKysgZXhpdGVkIHdpdGggMSArKys8 YnI+PC9zcGFuPjwvYj48YnI+PC9kaXY+UGxlYXNlIG5vdGUgdGhhdCB3aGlsZSB0aGUgY3JlYXRp b24gb2YgZGlyZWN0b3J5ICYjMzk7YSYjMzk7IHN1Y2NlZWRzLCB0aGUgZGlyZWN0b3J5IGlzIGNy ZWF0ZWQgYnkgdGhlIGZ1c2Ugd2l0aCBtb2RlIDAzMTEgKC13eC0teC0teCkgYW5kIGFzIHN1Y2gg dGhlIG9wZW4gY2FsbCBmb2xsb3dpbmcgdGhlIG1rZGlyIGZhaWxzIGFzIGV4cGVjdGVkLjxicj5J ZiBJIHRyeSB0byBzaW11bGF0ZSB0aGlzIG9uIGEgbm9ybWFsIGZpbGUgc3lzdGVtIGJ5IHNldHRp bmcgdGhlIHVtYXNrIHRvIDA0NjYsIEkgZ2V0IHRoZSBmb2xsb3dpbmcgc3RyYWNlIG91dHB1dDo8 YnI+PGJyPjxiPjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTptb25vc3BhY2UsbW9ub3NwYWNlIj51 bWFzaygwKcKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgID0gMDQ2Njxicj5ta2RpcigmcXVvdDthJnF1b3Q7LCAwMzExKcKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgPSAwPGJyPm9wZW4oJnF1b3Q7 YSZxdW90OywgT19SRE9OTFl8T19OT0NUVFl8T19OT05CTE9DS3xPX0RJUkVDVE9SWXxPX05PRk9M TE9XKSA9IC0xIEVBQ0NFUyAoUGVybWlzc2lvbiBkZW5pZWQpPGJyPmNoZGlyKCZxdW90O2EmcXVv dDspwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoCA9IDA8YnI+bWtkaXIoJnF1b3Q7YiZxdW90OywgMDMxMSnCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgID0gMDxicj5vcGVuKCZxdW90O2ImcXVvdDssIE9f UkRPTkxZfE9fTk9DVFRZfE9fTk9OQkxPQ0t8T19ESVJFQ1RPUll8T19OT0ZPTExPVykgPSAtMSBF QUNDRVMgKFBlcm1pc3Npb24gZGVuaWVkKTxicj5jaGRpcigmcXVvdDtiJnF1b3Q7KcKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgPSAwPGJy Pm1rZGlyKCZxdW90O2MmcXVvdDssIDAzMTEpwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoCA9IDA8YnI+Y2xvc2UoMSnCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCA9IDA8YnI+Y2xvc2UoMinCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oCA9IDA8YnI+ZXhpdF9ncm91cCgwKcKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqAgPSA/PGJyPisrKyBleGl0ZWQgd2l0aCAwICsrKzxicj48L3NwYW4+ PC9iPjxicj48L2Rpdj48ZGl2PkkuZS4gdGhlIG9wZW4gc3RpbGwgZmFpbHMgYnV0IGFwcGFyZW50 bHkgbWtkaXIgY2FuIGxpdmUgd2l0aCBpdC7CoCBTaW5jZSBpdCBhbHNvIHdvcmtzIG9uIG15IGZ1 c2UgaWYgSSBzZXQgdGhlIHVtYXNrIHRvIDA0NjYsIEkgY29uY2x1ZGUgdGhhdCBta2RpciBpbnNw ZWN0cyB0aGUgdW1hc2sgdG8gc2VlIGlmIGl0IGV4cGVjdHMgdG8gYmUgYWJsZSB0byBvcGVuIHRo ZSBkaXJlY3Rvcnk/ISBUaGF0IHNvdW5kcyBsaWtlIGEgcmFjZSB0byBtZSBzaW5jZSBhbnl0aGlu ZyBtYXkgY2hhbmdlIHRoZSBtb2RlIG9mIHRoZSBkaXJlY3RvcnkgYmV0d2VlbiB0aGUgbWtkaXIg YW5kIG9wZW4gY2FsbHMgZXZlbiBvbiBhIG5vcm1hbCBGUyBhbmQgZXZlbiBtb3JlIHNvIG9uIGEg bmV0d29ya2VkIGZpbGUgc3lzdGVtLiBXaHkgaXMgaXQgdHJ5aW5nIHRvIG9wZW4gdGhlIGRpcmVj dG9yeSBpbiB0aGUgZmlyc3QgcGxhY2U/IFNob3VsZG4mIzM5O3QgaXQganVzdCBjaGRpciBpbnRv IGl0IGFuZCBjYXJyeSBvbj88YnI+PGJyPjwvZGl2PjxkaXY+SXMgdGhpcyBhIGJ1ZyBvciBleHBl Y3RlZCBiZWhhdmlvdXI/IEFueSBpZGVhcyBhcyB0byBob3cgdG8gbWFrZSBta2RpciBiZWhhdmU/ PGJyPjwvZGl2PjxkaXY+PGJyPjwvZGl2PjxkaXY+Q2hlZXJzLDxicj48L2Rpdj48ZGl2PlNlYjxi cj48L2Rpdj48L2Rpdj4NCg== --001a11466016f7d27e05205379fb-- From unknown Sun Jun 22 04:31:14 2025 MIME-Version: 1.0 X-Mailer: MIME-tools 5.503 (Entity 5.503) X-Loop: help-debbugs@gnu.org From: help-debbugs@gnu.org (GNU bug Tracking System) To: Sebastian Unger Subject: bug#21534: closed (Re: bug#21534: Bug in mkdir?!) Message-ID: References: <560217EF.4050807@cs.ucla.edu> X-Gnu-PR-Message: they-closed 21534 X-Gnu-PR-Package: coreutils Reply-To: 21534@debbugs.gnu.org Date: Wed, 23 Sep 2015 03:10:04 +0000 Content-Type: multipart/mixed; boundary="----------=_1442977804-17653-1" This is a multi-part message in MIME format... ------------=_1442977804-17653-1 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Your bug report #21534: Bug in mkdir?! which was filed against the coreutils package, has been closed. The explanation is attached below, along with your original report. If you require more details, please reply to 21534@debbugs.gnu.org. --=20 21534: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=3D21534 GNU Bug Tracking System Contact help-debbugs@gnu.org with problems ------------=_1442977804-17653-1 Content-Type: message/rfc822 Content-Disposition: inline Content-Transfer-Encoding: 7bit Received: (at 21534-done) by debbugs.gnu.org; 23 Sep 2015 03:09:41 +0000 Received: from localhost ([127.0.0.1]:42109 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1ZeaRA-0004a3-Pp for submit@debbugs.gnu.org; Tue, 22 Sep 2015 23:09:41 -0400 Received: from zimbra.cs.ucla.edu ([131.179.128.68]:37840) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1ZeaR7-0004Zs-Jm for 21534-done@debbugs.gnu.org; Tue, 22 Sep 2015 23:09:39 -0400 Received: from localhost (localhost [127.0.0.1]) by zimbra.cs.ucla.edu (Postfix) with ESMTP id B7EC5161128; Tue, 22 Sep 2015 20:09:36 -0700 (PDT) Received: from zimbra.cs.ucla.edu ([127.0.0.1]) by localhost (zimbra.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10032) with ESMTP id 1O4dhG2qz1U4; Tue, 22 Sep 2015 20:09:35 -0700 (PDT) Received: from localhost (localhost [127.0.0.1]) by zimbra.cs.ucla.edu (Postfix) with ESMTP id 85705161151; Tue, 22 Sep 2015 20:09:35 -0700 (PDT) X-Virus-Scanned: amavisd-new at zimbra.cs.ucla.edu Received: from zimbra.cs.ucla.edu ([127.0.0.1]) by localhost (zimbra.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id iP7QL_l1z41m; Tue, 22 Sep 2015 20:09:35 -0700 (PDT) Received: from [192.168.1.9] (pool-100-32-155-148.lsanca.fios.verizon.net [100.32.155.148]) by zimbra.cs.ucla.edu (Postfix) with ESMTPSA id 5C356161128; Tue, 22 Sep 2015 20:09:35 -0700 (PDT) Subject: Re: bug#21534: Bug in mkdir?! To: Sebastian Unger , 21534-done@debbugs.gnu.org References: From: Paul Eggert Organization: UCLA Computer Science Department Message-ID: <560217EF.4050807@cs.ucla.edu> Date: Tue, 22 Sep 2015 20:09:35 -0700 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.2.0 MIME-Version: 1.0 In-Reply-To: Content-Type: multipart/mixed; boundary="------------020907080100040402050603" X-Spam-Score: 0.3 (/) X-Debbugs-Envelope-To: 21534-done X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: 0.3 (/) This is a multi-part message in MIME format. --------------020907080100040402050603 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Sebastian Unger wrote: > Why is it trying to open the directory > in the first place? Security. Apparently POSIX doesn't allow this level of paranoia for mkdir -p, so I removed it in the attached Gnulib patch, and this should appear in the next coreutils release. A filesystem that doesn't let you read your own directory that you just created is likely to run into other problems like this -- i.e., the practice may introduce more security problems than it closes. But I digress. --------------020907080100040402050603 Content-Type: text/plain; charset=UTF-8; name="0001-savewd-remove-SAVEWD_CHDIR_READABLE.patch" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="0001-savewd-remove-SAVEWD_CHDIR_READABLE.patch" RnJvbSAxZjg2OWI3N2E3ZTFiYjg3MWQ1OGQzMGVkZDJlYTA0YTlhYzA0ZDMyIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBQYXVsIEVnZ2VydCA8ZWdnZXJ0QGNzLnVjbGEuZWR1 PgpEYXRlOiBUdWUsIDIyIFNlcCAyMDE1IDIwOjA0OjEzIC0wNzAwClN1YmplY3Q6IFtQQVRD SF0gc2F2ZXdkOiByZW1vdmUgU0FWRVdEX0NIRElSX1JFQURBQkxFCgpJdCB3YXMgcHJvYmxl bWF0aWMgaW4gdGhlIGxpZ2h0IG9mIGZpbGUgc3lzdGVtcyB0aGF0IGlnbm9yZSB1bWFzay4K UHJvYmxlbSByZXBvcnRlZCBieSBTZWJhc3RpYW4gVW5nYXIgaW46IGh0dHA6Ly9idWdzLmdu dS5vcmcvMjE1MzQKKiBORVdTOiBEb2N1bWVudCB0aGlzLgoqIGxpYi9ta2FuY2VzZGlycy5j IChta2FuY2VzZGlycyk6IE1BS0VfRElSIG5vdyByZXR1cm5zIDAgaWYKc3VjY2Vzc2Z1bCwg LTEgKHNldHRpbmcgZXJybm8pIG9uIGZhaWx1cmUsIHJhdGhlciB0aGFuIHNvbWV0aGluZwpt b3JlIGNvbXBsaWNhdGVkIHRoYW4gdGhhdC4KKiBsaWIvbWtkaXItcC5jIChtYWtlX2Rpcl9w YXJlbnRzKToKRG8gbm90IHVzZSBTQVZFV0RfQ0hESVJfUkVBREFCTEUuCiogbGliL3NhdmV3 ZC5jIChzYXZld2RfY2hkaXIpOgpSZW1vdmUgc3VwcG9ydCBmb3IgU0FWRVdEX0NIRElSX1JF QURBQkxFLgoqIGxpYi9zYXZld2QuaCAoU0FWRVdEX0NIRElSX1JFQURBQkxFKTogUmVtb3Zl LgotLS0KIENoYW5nZUxvZyAgICAgICAgIHwgMTMgKysrKysrKysrKysrKwogTkVXUyAgICAg ICAgICAgICAgfCAgMiArKwogbGliL21rYW5jZXNkaXJzLmMgfCAyNCArKysrKystLS0tLS0t LS0tLS0tLS0tLS0KIGxpYi9ta2Rpci1wLmMgICAgIHwgIDQgKy0tLQogbGliL3NhdmV3ZC5j ICAgICAgfCAgMiArLQogbGliL3NhdmV3ZC5oICAgICAgfCAgOSArKy0tLS0tLS0KIDYgZmls ZXMgY2hhbmdlZCwgMjUgaW5zZXJ0aW9ucygrKSwgMjkgZGVsZXRpb25zKC0pCgpkaWZmIC0t Z2l0IGEvQ2hhbmdlTG9nIGIvQ2hhbmdlTG9nCmluZGV4IDYyNDU4YjIuLjFiY2M2ZjEgMTAw NjQ0Ci0tLSBhL0NoYW5nZUxvZworKysgYi9DaGFuZ2VMb2cKQEAgLTEsNSArMSwxOCBAQAog MjAxNS0wOS0yMiAgUGF1bCBFZ2dlcnQgIDxlZ2dlcnRAY3MudWNsYS5lZHU+CiAKKwlzYXZl d2Q6IHJlbW92ZSBTQVZFV0RfQ0hESVJfUkVBREFCTEUKKwlJdCB3YXMgcHJvYmxlbWF0aWMg aW4gdGhlIGxpZ2h0IG9mIGZpbGUgc3lzdGVtcyB0aGF0IGlnbm9yZSB1bWFzay4KKwlQcm9i bGVtIHJlcG9ydGVkIGJ5IFNlYmFzdGlhbiBVbmdhciBpbjogaHR0cDovL2J1Z3MuZ251Lm9y Zy8yMTUzNAorCSogTkVXUzogRG9jdW1lbnQgdGhpcy4KKwkqIGxpYi9ta2FuY2VzZGlycy5j IChta2FuY2VzZGlycyk6IE1BS0VfRElSIG5vdyByZXR1cm5zIDAgaWYKKwlzdWNjZXNzZnVs LCAtMSAoc2V0dGluZyBlcnJubykgb24gZmFpbHVyZSwgcmF0aGVyIHRoYW4gc29tZXRoaW5n CisJbW9yZSBjb21wbGljYXRlZCB0aGFuIHRoYXQuCisJKiBsaWIvbWtkaXItcC5jIChtYWtl X2Rpcl9wYXJlbnRzKToKKwlEbyBub3QgdXNlIFNBVkVXRF9DSERJUl9SRUFEQUJMRS4KKwkq IGxpYi9zYXZld2QuYyAoc2F2ZXdkX2NoZGlyKToKKwlSZW1vdmUgc3VwcG9ydCBmb3IgU0FW RVdEX0NIRElSX1JFQURBQkxFLgorCSogbGliL3NhdmV3ZC5oIChTQVZFV0RfQ0hESVJfUkVB REFCTEUpOiBSZW1vdmUuCisKIAljLWN0eXBlOiBwb3J0IGJldHRlciB0byBFQkNESUMKIAlQ cm9ibGVtcyByZXBvcnRlZCBieSBEYW5pZWwgUmljaGFyZCBHLiBpbgogCWh0dHA6Ly9saXN0 cy5nbnUub3JnL2FyY2hpdmUvaHRtbC9idWctZ251bGliLzIwMTUtMDkvbXNnMDAwMjAuaHRt bApkaWZmIC0tZ2l0IGEvTkVXUyBiL05FV1MKaW5kZXggYjI5NGVkZC4uYjU0YTk5MiAxMDA2 NDQKLS0tIGEvTkVXUworKysgYi9ORVdTCkBAIC00Miw2ICs0Miw4IEBAIFVzZXIgdmlzaWJs ZSBpbmNvbXBhdGlibGUgY2hhbmdlcwogCiBEYXRlICAgICAgICBNb2R1bGVzICAgICAgICAg Q2hhbmdlcwogCisyMDE1LTA5LTIyICBzYXZld2QgICAgICAgICAgU0FWRVdEX0NIRElSX1JF QURBQkxFIGNvbnN0YW50IHJlbW92ZWQuCisKIDIwMTUtMDctMjQgIGZwcmludGZ0aW1lICAg ICBFeHBvcnRlZCBmdW5jdGlvbnMnIHRpbWUgem9uZSBhcmd1bWVudHMgYXJlIG5vdyBvZgog ICAgICAgICAgICAgc3RyZnRpbWUgICAgICAgIHR5cGUgdGltZXpvbmVfdCAod2l0aCBOVUxM IGRlbm90aW5nIFVUQykgaW5zdGVhZCBvZgogICAgICAgICAgICAgICAgICAgICAgICAgICAg IHR5cGUgaW50ICh3aXRoIG5vbnplcm8gZGVub3RpbmcgVVRDKS4gIFRoZXNlCmRpZmYgLS1n aXQgYS9saWIvbWthbmNlc2RpcnMuYyBiL2xpYi9ta2FuY2VzZGlycy5jCmluZGV4IDkxZWQ2 OTQuLjI3NDdkNGEgMTAwNjQ0Ci0tLSBhL2xpYi9ta2FuY2VzZGlycy5jCisrKyBiL2xpYi9t a2FuY2VzZGlycy5jCkBAIC00MiwxMSArNDIsOSBAQAogCiAgICBDcmVhdGUgYW55IGFuY2Vz dG9yIGRpcmVjdG9yaWVzIHRoYXQgZG9uJ3QgYWxyZWFkeSBleGlzdCwgYnkKICAgIGludm9r aW5nIE1BS0VfRElSIChGSUxFLCBDT01QT05FTlQsIE1BS0VfRElSX0FSRykuICBUaGlzIGZ1 bmN0aW9uCi0gICBzaG91bGQgcmV0dXJuIDAgaWYgc3VjY2Vzc2Z1bCBhbmQgdGhlIHJlc3Vs dGluZyBkaXJlY3RvcnkgaXMKLSAgIHJlYWRhYmxlLCAxIGlmIHN1Y2Nlc3NmdWwgYnV0IHRo ZSByZXN1bHRpbmcgZGlyZWN0b3J5IG1pZ2h0IG5vdCBiZQotICAgcmVhZGFibGUsIC0xIChz ZXR0aW5nIGVycm5vKSBvdGhlcndpc2UuICBJZiBDT01QT05FTlQgaXMgcmVsYXRpdmUsCi0g ICBpdCBpcyByZWxhdGl2ZSB0byB0aGUgdGVtcG9yYXJ5IHdvcmtpbmcgZGlyZWN0b3J5LCB3 aGljaCBtYXkgZGlmZmVyCi0gICBmcm9tICpXRC4KKyAgIHNob3VsZCByZXR1cm4gMCBpZiBz dWNjZXNzZnVsLCAtMSAoc2V0dGluZyBlcnJubykgb3RoZXJ3aXNlLiAgSWYKKyAgIENPTVBP TkVOVCBpcyByZWxhdGl2ZSwgaXQgaXMgcmVsYXRpdmUgdG8gdGhlIHRlbXBvcmFyeSB3b3Jr aW5nCisgICBkaXJlY3RvcnksIHdoaWNoIG1heSBkaWZmZXIgZnJvbSAqV0QuCiAKICAgIE9y ZGluYXJpbHkgTUFLRV9ESVIgaXMgZXhlY3V0ZWQgd2l0aCB0aGUgd29ya2luZyBkaXJlY3Rv cnkgY2hhbmdlZAogICAgdG8gcmVmbGVjdCB0aGUgYWxyZWFkeS1tYWRlIHByZWZpeCwgYW5k IG1rYW5jZXNkaXJzIHJldHVybnMgd2l0aApAQCAtMTEyLDIwICsxMTAsMTAgQEAgbWthbmNl c2RpcnMgKGNoYXIgKmZpbGUsIHN0cnVjdCBzYXZld2QgKndkLAogICAgICAgICAgICAgaWYg KHNlcCAtIGNvbXBvbmVudCA9PSAyCiAgICAgICAgICAgICAgICAgJiYgY29tcG9uZW50WzBd ID09ICcuJyAmJiBjb21wb25lbnRbMV0gPT0gJy4nKQogICAgICAgICAgICAgICBtYWRlX2Rp ciA9IGZhbHNlOworICAgICAgICAgICAgZWxzZSBpZiAobWFrZV9kaXIgKGZpbGUsIGNvbXBv bmVudCwgbWFrZV9kaXJfYXJnKSA8IDApCisgICAgICAgICAgICAgIG1ha2VfZGlyX2Vycm5v ID0gZXJybm87CiAgICAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAgIHN3aXRjaCAobWFr ZV9kaXIgKGZpbGUsIGNvbXBvbmVudCwgbWFrZV9kaXJfYXJnKSkKLSAgICAgICAgICAgICAg ICB7Ci0gICAgICAgICAgICAgICAgY2FzZSAtMToKLSAgICAgICAgICAgICAgICAgIG1ha2Vf ZGlyX2Vycm5vID0gZXJybm87Ci0gICAgICAgICAgICAgICAgICBicmVhazsKLQotICAgICAg ICAgICAgICAgIGNhc2UgMDoKLSAgICAgICAgICAgICAgICAgIHNhdmV3ZF9jaGRpcl9vcHRp b25zIHw9IFNBVkVXRF9DSERJUl9SRUFEQUJMRTsKLSAgICAgICAgICAgICAgICAgIC8qIEZh bGwgdGhyb3VnaC4gICovCi0gICAgICAgICAgICAgICAgY2FzZSAxOgotICAgICAgICAgICAg ICAgICAgbWFkZV9kaXIgPSB0cnVlOwotICAgICAgICAgICAgICAgICAgYnJlYWs7Ci0gICAg ICAgICAgICAgICAgfQorICAgICAgICAgICAgICBtYWRlX2RpciA9IHRydWU7CiAKICAgICAg ICAgICAgIGlmIChtYWRlX2RpcikKICAgICAgICAgICAgICAgc2F2ZXdkX2NoZGlyX29wdGlv bnMgfD0gU0FWRVdEX0NIRElSX05PRk9MTE9XOwpkaWZmIC0tZ2l0IGEvbGliL21rZGlyLXAu YyBiL2xpYi9ta2Rpci1wLmMKaW5kZXggZTU1YjFkZC4uZTUxODI3MiAxMDA2NDQKLS0tIGEv bGliL21rZGlyLXAuYworKysgYi9saWIvbWtkaXItcC5jCkBAIC0xMzYsOSArMTM2LDcgQEAg bWFrZV9kaXJfcGFyZW50cyAoY2hhciAqZGlyLAogICAgICAgICAgICAgICBhbm5vdW5jZSAo ZGlyLCBvcHRpb25zKTsKICAgICAgICAgICAgICAgcHJlc2VydmVfZXhpc3RpbmcgPSAoa2Vl cF9vd25lciAmIGtlZXBfc3BlY2lhbF9tb2RlX2JpdHMKICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgJiB1bWFza19tdXN0X2JlX29rKTsKLSAgICAgICAgICAgICAgc2F2 ZXdkX2NoZGlyX29wdGlvbnMgfD0KLSAgICAgICAgICAgICAgICAoU0FWRVdEX0NIRElSX05P Rk9MTE9XCi0gICAgICAgICAgICAgICAgIHwgKG1vZGUgJiBTX0lSVVNSID8gU0FWRVdEX0NI RElSX1JFQURBQkxFIDogMCkpOworICAgICAgICAgICAgICBzYXZld2RfY2hkaXJfb3B0aW9u cyB8PSBTQVZFV0RfQ0hESVJfTk9GT0xMT1c7CiAgICAgICAgICAgICB9CiAgICAgICAgICAg ZWxzZQogICAgICAgICAgICAgewpkaWZmIC0tZ2l0IGEvbGliL3NhdmV3ZC5jIGIvbGliL3Nh dmV3ZC5jCmluZGV4IDE2ZjU2YTguLmY4MzUwNzQgMTAwNjQ0Ci0tLSBhL2xpYi9zYXZld2Qu YworKysgYi9saWIvc2F2ZXdkLmMKQEAgLTExNiw3ICsxMTYsNyBAQCBzYXZld2RfY2hkaXIg KHN0cnVjdCBzYXZld2QgKndkLCBjaGFyIGNvbnN0ICpkaXIsIGludCBvcHRpb25zLAogICAg ICAgICAgIG9wZW5fcmVzdWx0WzFdID0gZXJybm87CiAgICAgICAgIH0KIAotICAgICAgaWYg KGZkIDwgMCAmJiAoZXJybm8gIT0gRUFDQ0VTIHx8IChvcHRpb25zICYgU0FWRVdEX0NIRElS X1JFQURBQkxFKSkpCisgICAgICBpZiAoZmQgPCAwICYmIGVycm5vICE9IEVBQ0NFUykKICAg ICAgICAgcmVzdWx0ID0gLTE7CiAgICAgfQogCmRpZmYgLS1naXQgYS9saWIvc2F2ZXdkLmgg Yi9saWIvc2F2ZXdkLmgKaW5kZXggYmI0NDJiMy4uNjliMzcxOCAxMDA2NDQKLS0tIGEvbGli L3NhdmV3ZC5oCisrKyBiL2xpYi9zYXZld2QuaApAQCAtODIsMjAgKzgyLDE1IEBAIHNhdmV3 ZF9pbml0IChzdHJ1Y3Qgc2F2ZXdkICp3ZCkKIH0KIAogCi0vKiBPcHRpb25zIGZvciBzYXZl d2RfY2hkaXIuICAqLworLyogT3B0aW9ucyBmb3Igc2F2ZXdkX2NoZGlyLiAgQ2FuIGJlIE9S ZWQgdG9nZXRoZXIuICAqLwogZW51bQogICB7CiAgICAgLyogRG8gbm90IGZvbGxvdyBzeW1i b2xpYyBsaW5rcywgaWYgc3VwcG9ydGVkLiAgKi8KICAgICBTQVZFV0RfQ0hESVJfTk9GT0xM T1cgPSAxLAogCi0gICAgLyogVGhlIGRpcmVjdG9yeSBzaG91bGQgYmUgcmVhZGFibGUsIHNv IGZhaWwgaWYgaXQgaGFwcGVucyB0byBiZQotICAgICAgIGRpc2NvdmVyZWQgdGhhdCB0aGUg ZGlyZWN0b3J5IGlzIG5vdCByZWFkYWJsZS4gIChVbnJlYWRhYmxlCi0gICAgICAgZGlyZWN0 b3JpZXMgYXJlIG5vdCBuZWNlc3NhcmlseSBkaWFnbm9zZWQsIHRob3VnaC4pICAqLwotICAg IFNBVkVXRF9DSERJUl9SRUFEQUJMRSA9IDIsCi0KICAgICAvKiBEbyBub3QgY2hkaXIgaWYg dGhlIGRpcmVjdG9yeSBpcyByZWFkYWJsZTsgc2ltcGx5IHN1Y2NlZWQKICAgICAgICB3aXRo b3V0IGludm9raW5nIGNoZGlyIGlmIHRoZSBkaXJlY3Rvcnkgd2FzIG9wZW5lZC4gICovCi0g ICAgU0FWRVdEX0NIRElSX1NLSVBfUkVBREFCTEUgPSA0CisgICAgU0FWRVdEX0NIRElSX1NL SVBfUkVBREFCTEUgPSAyCiAgIH07CiAKIC8qIENoYW5nZSB0aGUgZGlyZWN0b3J5LCBhbmQg aWYgc3VjY2Vzc2Z1bCwgcmVjb3JkIGludG8gKldEIHRoZSBmYWN0Ci0tIAoyLjEuMAoK --------------020907080100040402050603-- ------------=_1442977804-17653-1 Content-Type: message/rfc822 Content-Disposition: inline Content-Transfer-Encoding: 7bit Received: (at submit) by debbugs.gnu.org; 22 Sep 2015 17:26:02 +0000 Received: from localhost ([127.0.0.1]:41886 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1ZeRKL-0007Dx-1G for submit@debbugs.gnu.org; Tue, 22 Sep 2015 13:26:02 -0400 Received: from eggs.gnu.org ([208.118.235.92]:59232) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1ZeKpZ-0003xH-V8 for submit@debbugs.gnu.org; Tue, 22 Sep 2015 06:29:51 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ZeKpY-0005vJ-2a for submit@debbugs.gnu.org; Tue, 22 Sep 2015 06:29:49 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: ** X-Spam-Status: No, score=2.1 required=5.0 tests=BAYES_50, FREEMAIL_ENVFROM_END_DIGIT,FREEMAIL_FROM,HTML_MESSAGE,PLING_QUERY, T_DKIM_INVALID autolearn=disabled version=3.3.2 Received: from lists.gnu.org ([2001:4830:134:3::11]:50104) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZeKpY-0005vF-0M for submit@debbugs.gnu.org; Tue, 22 Sep 2015 06:29:48 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:40994) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZeKpW-0007ge-Hl for bug-coreutils@gnu.org; Tue, 22 Sep 2015 06:29:47 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ZeKpV-0005t2-3R for bug-coreutils@gnu.org; Tue, 22 Sep 2015 06:29:46 -0400 Received: from mail-vk0-x231.google.com ([2607:f8b0:400c:c05::231]:35702) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZeKpU-0005su-UT for bug-coreutils@gnu.org; Tue, 22 Sep 2015 06:29:45 -0400 Received: by vkao3 with SMTP id o3so3158745vka.2 for ; Tue, 22 Sep 2015 03:29:44 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:date:message-id:subject:from:to:content-type; bh=rIQP+FYAmvpnAqoLZNZQBgmQDTaBeoFh4KphDE1YP+0=; b=AFe9Mj06EI8NiiXZNWrrzDkBccGlTn3Pw8O1CnAtp8HkslqiBFOYthTuxQ6zzsxWEg AnkmATg5nheRJPUyTOGRcIXCD48tZgCeOdE+5E3Frd0bzlM6Be2zchij1xHqrvgb8w1F UdJRRJt2c9J13DdbiW53ThpUBHOpnxkk/roGc2sRg+V2Gzb/54BKyNGsAt58kJJbclmZ EKFkNGCmFQsah8C3YTuMWZIxMVEU2GRI+1KhEfHmORDqGQ0nomWPyNN7CiNm400djecO m+mN+SGlPxtMjIHuRl5rbxIvx71N3gj8LlNVntQVKcJTL6kOmoVXzX5Vz9qGtcxz6TOv IgnQ== MIME-Version: 1.0 X-Received: by 10.31.164.132 with SMTP id n126mr16912009vke.72.1442917784209; Tue, 22 Sep 2015 03:29:44 -0700 (PDT) Received: by 10.31.173.201 with HTTP; Tue, 22 Sep 2015 03:29:44 -0700 (PDT) Date: Tue, 22 Sep 2015 22:29:44 +1200 Message-ID: Subject: Bug in mkdir?! From: Sebastian Unger To: bug-coreutils@gnu.org Content-Type: multipart/alternative; boundary=001a11466016f7d27e05205379fb X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-Received-From: 2001:4830:134:3::11 X-Spam-Score: -3.5 (---) X-Debbugs-Envelope-To: submit X-Mailman-Approved-At: Tue, 22 Sep 2015 13:25:59 -0400 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.5 (---) --001a11466016f7d27e05205379fb Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Hi, I'm working on a little project of mine involving a Fuse file system on Linux. I'm having a problem where mkdir from coreutils fails with Permission denied while mkdir from busybox works. I'm running the command *mkdir -p a/b/c* and I get the following strace output (showing only the relevant lines at the end): *umask(0) =3D 022mkdir("a", 0755) =3D 0open("a", O_RDONLY|O_NOCTTY|O_NONBLOCK|O_DIRECTORY|O_NOFOLLOW) =3D -1 EACCES (Permission denied)open("/usr/share/locale/locale.alias", O_RDONLY|O_CLOEXEC) =3D 3fstat(3, {st_mode=3DS_IFREG|0644, st_size=3D2570, = ...}) =3D 0mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, = 0) =3D 0x7f6a86f20000read(3, "# Locale name alias data base.\n#"..., 4096) =3D 2570read(3, "", 4096) =3D 0close(3) =3D 0munmap(0x7f6a86f20000, 4096) =3D 0open("/usr/share/locale/en_NZ/LC_MESSAGES/coreutils.mo", O_RDONLY) =3D -1 ENOENT (No such file or directory)open("/usr/share/locale/en/LC_MESSAGES/coreutils.mo", O_RDONLY) = =3D -1 ENOENT (No such file or directory)open("/usr/share/locale-langpack/en_NZ/LC_MESSAGES/coreutils.mo", O_RDONLY) =3D -1 ENOENT (No such file or directory)open("/usr/share/locale-langpack/en/LC_MESSAGES/coreutils.mo", O_RDONLY) =3D 3fstat(3, {st_mode=3DS_IFREG|0644, st_size=3D619, ...}) =3D 0mmap(NULL, 619, PROT_READ, MAP_PRIVATE, 3, 0) =3D 0x7f6a86f20000close(3) =3D 0open("/usr/lib/charset.alias", O_RDONLY|O_NOFOLLOW) =3D -1 ENOENT (No such file or directory)write(2, "mkdir: ", 7mkdir: ) =3D 7write(2, "cannot create directory \342\200\230a\342\200\231", 31cannot create directory =E2=80=98a=E2=80=99) =3D 31open("/usr/share/locale/en_NZ/LC_MESSAGES/libc.mo", O_RDONLY) =3D -1 ENOE= NT (No such file or directory)open("/usr/share/locale/en/LC_MESSAGES/libc.mo", O_RDONLY) =3D -1 ENOENT (No such file or directory)open("/usr/share/locale-langpack/en_NZ/LC_MESSAGES/libc.mo", O_RDONLY) =3D -1 ENOENT (No such file or directory)open("/usr/share/locale-langpack/en/LC_MESSAGES/libc.mo", O_RDONLY) =3D -1 ENOENT (No such file or directory)write(2, ": Permission denied", 19: Permission denied) =3D 19write(2, "\n", 1) =3D 1close(1) =3D 0close(2) =3D 0exit_group(1) =3D ?+++ exited with 1 +++* Please note that while the creation of directory 'a' succeeds, the directory is created by the fuse with mode 0311 (-wx--x--x) and as such the open call following the mkdir fails as expected. If I try to simulate this on a normal file system by setting the umask to 0466, I get the following strace output: *umask(0) =3D 0466mkdir("a", 0311) =3D 0open("a", O_RDONLY|O_NOCTTY|O_NONBLOCK|O_DIRECTORY|O_NOFOLLOW) =3D -1 EACCES (Permission denied)chdir("a") =3D 0mkdir("b", 0311) =3D 0open("b", O_RDONLY|O_NOCTTY|O_NONBLOCK|O_DIRECTORY|O_NOFOLLOW) =3D -1 EACCES (Permission denied)chdir("b") =3D 0mkdir("c", 0311) =3D 0close(1) = =3D 0close(2) =3D 0exit_group(0) =3D ?+++ exited with 0 +++* I.e. the open still fails but apparently mkdir can live with it. Since it also works on my fuse if I set the umask to 0466, I conclude that mkdir inspects the umask to see if it expects to be able to open the directory?! That sounds like a race to me since anything may change the mode of the directory between the mkdir and open calls even on a normal FS and even more so on a networked file system. Why is it trying to open the directory in the first place? Shouldn't it just chdir into it and carry on? Is this a bug or expected behaviour? Any ideas as to how to make mkdir behave? Cheers, Seb --001a11466016f7d27e05205379fb Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: base64 PGRpdiBkaXI9Imx0ciI+PGRpdj48ZGl2PjxkaXY+PGRpdj5IaSw8YnI+PGJyPjwvZGl2PkkmIzM5 O20gd29ya2luZyBvbiBhIGxpdHRsZSBwcm9qZWN0IG9mIG1pbmUgaW52b2x2aW5nIGEgRnVzZSBm aWxlIHN5c3RlbSBvbiBMaW51eC4gSSYjMzk7bSBoYXZpbmcgYSBwcm9ibGVtIHdoZXJlIG1rZGly IGZyb20gY29yZXV0aWxzIGZhaWxzIHdpdGggUGVybWlzc2lvbiBkZW5pZWQgd2hpbGUgbWtkaXIg ZnJvbSBidXN5Ym94IHdvcmtzLjxicj48YnI+PC9kaXY+SSYjMzk7bSBydW5uaW5nIHRoZSBjb21t YW5kIDxiPjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTptb25vc3BhY2UsbW9ub3NwYWNlIj5ta2Rp ciAtcCBhL2IvYzwvc3Bhbj48L2I+IGFuZCBJIGdldCB0aGUgZm9sbG93aW5nIHN0cmFjZSBvdXRw dXQgKHNob3dpbmcgb25seSB0aGUgcmVsZXZhbnQgbGluZXMgYXQgdGhlIGVuZCk6PGJyPjxicj48 Yj48c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6bW9ub3NwYWNlLG1vbm9zcGFjZSI+dW1hc2soMCnC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoCA9IDAyMjxicj5ta2RpcigmcXVvdDthJnF1b3Q7LCAwNzU1KcKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgPSAwPGJyPm9wZW4oJnF1b3Q7YSZxdW90Oywg T19SRE9OTFl8T19OT0NUVFl8T19OT05CTE9DS3xPX0RJUkVDVE9SWXxPX05PRk9MTE9XKSA9IC0x IEVBQ0NFUyAoUGVybWlzc2lvbiBkZW5pZWQpPGJyPm9wZW4oJnF1b3Q7L3Vzci9zaGFyZS9sb2Nh bGUvbG9jYWxlLmFsaWFzJnF1b3Q7LCBPX1JET05MWXxPX0NMT0VYRUMpID0gMzxicj5mc3RhdCgz LCB7c3RfbW9kZT1TX0lGUkVHfDA2NDQsIHN0X3NpemU9MjU3MCwgLi4ufSkgPSAwPGJyPm1tYXAo TlVMTCwgNDA5NiwgUFJPVF9SRUFEfFBST1RfV1JJVEUsIE1BUF9QUklWQVRFfE1BUF9BTk9OWU1P VVMsIC0xLCAwKSA9IDB4N2Y2YTg2ZjIwMDAwPGJyPnJlYWQoMywgJnF1b3Q7IyBMb2NhbGUgbmFt ZSBhbGlhcyBkYXRhIGJhc2UuXG4jJnF1b3Q7Li4uLCA0MDk2KSA9IDI1NzA8YnI+cmVhZCgzLCAm cXVvdDsmcXVvdDssIDQwOTYpwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqAgPSAwPGJyPmNsb3NlKDMpwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgPSAwPGJyPm11bm1hcCgweDdmNmE4NmYyMDAwMCwg NDA5NinCoMKgwqDCoMKgwqDCoMKgwqDCoMKgID0gMDxicj5vcGVuKCZxdW90Oy91c3Ivc2hhcmUv bG9jYWxlL2VuX05aL0xDX01FU1NBR0VTL2NvcmV1dGlscy5tbyZxdW90OywgT19SRE9OTFkpID0g LTEgRU5PRU5UIChObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5KTxicj5vcGVuKCZxdW90Oy91c3Iv c2hhcmUvbG9jYWxlL2VuL0xDX01FU1NBR0VTL2NvcmV1dGlscy5tbyZxdW90OywgT19SRE9OTFkp ID0gLTEgRU5PRU5UIChObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5KTxicj5vcGVuKCZxdW90Oy91 c3Ivc2hhcmUvbG9jYWxlLWxhbmdwYWNrL2VuX05aL0xDX01FU1NBR0VTL2NvcmV1dGlscy5tbyZx dW90OywgT19SRE9OTFkpID0gLTEgRU5PRU5UIChObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5KTxi cj5vcGVuKCZxdW90Oy91c3Ivc2hhcmUvbG9jYWxlLWxhbmdwYWNrL2VuL0xDX01FU1NBR0VTL2Nv cmV1dGlscy5tbyZxdW90OywgT19SRE9OTFkpID0gMzxicj5mc3RhdCgzLCB7c3RfbW9kZT1TX0lG UkVHfDA2NDQsIHN0X3NpemU9NjE5LCAuLi59KSA9IDA8YnI+bW1hcChOVUxMLCA2MTksIFBST1Rf UkVBRCwgTUFQX1BSSVZBVEUsIDMsIDApID0gMHg3ZjZhODZmMjAwMDA8YnI+Y2xvc2UoMynCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oCA9IDA8YnI+b3BlbigmcXVvdDsvdXNyL2xpYi9jaGFyc2V0LmFsaWFzJnF1b3Q7LCBPX1JET05M WXxPX05PRk9MTE9XKSA9IC0xIEVOT0VOVCAoTm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeSk8YnI+ d3JpdGUoMiwgJnF1b3Q7bWtkaXI6ICZxdW90OywgN21rZGlyOiApwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoCA9IDc8YnI+d3JpdGUoMiwgJnF1b3Q7Y2Fubm90IGNyZWF0ZSBkaXJl Y3RvcnkgXDM0MlwyMDBcMjMwYVwzNDJcMjAwXDIzMSZxdW90OywgMzFjYW5ub3QgY3JlYXRlIGRp cmVjdG9yeSDigJhh4oCZKSA9IDMxPGJyPm9wZW4oJnF1b3Q7L3Vzci9zaGFyZS9sb2NhbGUvZW5f TlovTENfTUVTU0FHRVMvbGliYy5tbyZxdW90OywgT19SRE9OTFkpID0gLTEgRU5PRU5UIChObyBz dWNoIGZpbGUgb3IgZGlyZWN0b3J5KTxicj5vcGVuKCZxdW90Oy91c3Ivc2hhcmUvbG9jYWxlL2Vu L0xDX01FU1NBR0VTL2xpYmMubW8mcXVvdDssIE9fUkRPTkxZKSA9IC0xIEVOT0VOVCAoTm8gc3Vj aCBmaWxlIG9yIGRpcmVjdG9yeSk8YnI+b3BlbigmcXVvdDsvdXNyL3NoYXJlL2xvY2FsZS1sYW5n cGFjay9lbl9OWi9MQ19NRVNTQUdFUy9saWJjLm1vJnF1b3Q7LCBPX1JET05MWSkgPSAtMSBFTk9F TlQgKE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkpPGJyPm9wZW4oJnF1b3Q7L3Vzci9zaGFyZS9s b2NhbGUtbGFuZ3BhY2svZW4vTENfTUVTU0FHRVMvbGliYy5tbyZxdW90OywgT19SRE9OTFkpID0g LTEgRU5PRU5UIChObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5KTxicj53cml0ZSgyLCAmcXVvdDs6 IFBlcm1pc3Npb24gZGVuaWVkJnF1b3Q7LCAxOTogUGVybWlzc2lvbiBkZW5pZWQpwqDCoMKgwqAg PSAxOTxicj53cml0ZSgyLCAmcXVvdDtcbiZxdW90OywgMTxicj4pwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgPSAxPGJyPmNsb3NlKDEpwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgPSAwPGJyPmNs b3NlKDIpwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqAgPSAwPGJyPmV4aXRfZ3JvdXAoMSnCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgID0gPzxicj4rKysgZXhpdGVkIHdpdGggMSArKys8 YnI+PC9zcGFuPjwvYj48YnI+PC9kaXY+UGxlYXNlIG5vdGUgdGhhdCB3aGlsZSB0aGUgY3JlYXRp b24gb2YgZGlyZWN0b3J5ICYjMzk7YSYjMzk7IHN1Y2NlZWRzLCB0aGUgZGlyZWN0b3J5IGlzIGNy ZWF0ZWQgYnkgdGhlIGZ1c2Ugd2l0aCBtb2RlIDAzMTEgKC13eC0teC0teCkgYW5kIGFzIHN1Y2gg dGhlIG9wZW4gY2FsbCBmb2xsb3dpbmcgdGhlIG1rZGlyIGZhaWxzIGFzIGV4cGVjdGVkLjxicj5J ZiBJIHRyeSB0byBzaW11bGF0ZSB0aGlzIG9uIGEgbm9ybWFsIGZpbGUgc3lzdGVtIGJ5IHNldHRp bmcgdGhlIHVtYXNrIHRvIDA0NjYsIEkgZ2V0IHRoZSBmb2xsb3dpbmcgc3RyYWNlIG91dHB1dDo8 YnI+PGJyPjxiPjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTptb25vc3BhY2UsbW9ub3NwYWNlIj51 bWFzaygwKcKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgID0gMDQ2Njxicj5ta2RpcigmcXVvdDthJnF1b3Q7LCAwMzExKcKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgPSAwPGJyPm9wZW4oJnF1b3Q7 YSZxdW90OywgT19SRE9OTFl8T19OT0NUVFl8T19OT05CTE9DS3xPX0RJUkVDVE9SWXxPX05PRk9M TE9XKSA9IC0xIEVBQ0NFUyAoUGVybWlzc2lvbiBkZW5pZWQpPGJyPmNoZGlyKCZxdW90O2EmcXVv dDspwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoCA9IDA8YnI+bWtkaXIoJnF1b3Q7YiZxdW90OywgMDMxMSnCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgID0gMDxicj5vcGVuKCZxdW90O2ImcXVvdDssIE9f UkRPTkxZfE9fTk9DVFRZfE9fTk9OQkxPQ0t8T19ESVJFQ1RPUll8T19OT0ZPTExPVykgPSAtMSBF QUNDRVMgKFBlcm1pc3Npb24gZGVuaWVkKTxicj5jaGRpcigmcXVvdDtiJnF1b3Q7KcKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgPSAwPGJy Pm1rZGlyKCZxdW90O2MmcXVvdDssIDAzMTEpwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoCA9IDA8YnI+Y2xvc2UoMSnCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCA9IDA8YnI+Y2xvc2UoMinCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oCA9IDA8YnI+ZXhpdF9ncm91cCgwKcKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqAgPSA/PGJyPisrKyBleGl0ZWQgd2l0aCAwICsrKzxicj48L3NwYW4+ PC9iPjxicj48L2Rpdj48ZGl2PkkuZS4gdGhlIG9wZW4gc3RpbGwgZmFpbHMgYnV0IGFwcGFyZW50 bHkgbWtkaXIgY2FuIGxpdmUgd2l0aCBpdC7CoCBTaW5jZSBpdCBhbHNvIHdvcmtzIG9uIG15IGZ1 c2UgaWYgSSBzZXQgdGhlIHVtYXNrIHRvIDA0NjYsIEkgY29uY2x1ZGUgdGhhdCBta2RpciBpbnNw ZWN0cyB0aGUgdW1hc2sgdG8gc2VlIGlmIGl0IGV4cGVjdHMgdG8gYmUgYWJsZSB0byBvcGVuIHRo ZSBkaXJlY3Rvcnk/ISBUaGF0IHNvdW5kcyBsaWtlIGEgcmFjZSB0byBtZSBzaW5jZSBhbnl0aGlu ZyBtYXkgY2hhbmdlIHRoZSBtb2RlIG9mIHRoZSBkaXJlY3RvcnkgYmV0d2VlbiB0aGUgbWtkaXIg YW5kIG9wZW4gY2FsbHMgZXZlbiBvbiBhIG5vcm1hbCBGUyBhbmQgZXZlbiBtb3JlIHNvIG9uIGEg bmV0d29ya2VkIGZpbGUgc3lzdGVtLiBXaHkgaXMgaXQgdHJ5aW5nIHRvIG9wZW4gdGhlIGRpcmVj dG9yeSBpbiB0aGUgZmlyc3QgcGxhY2U/IFNob3VsZG4mIzM5O3QgaXQganVzdCBjaGRpciBpbnRv IGl0IGFuZCBjYXJyeSBvbj88YnI+PGJyPjwvZGl2PjxkaXY+SXMgdGhpcyBhIGJ1ZyBvciBleHBl Y3RlZCBiZWhhdmlvdXI/IEFueSBpZGVhcyBhcyB0byBob3cgdG8gbWFrZSBta2RpciBiZWhhdmU/ PGJyPjwvZGl2PjxkaXY+PGJyPjwvZGl2PjxkaXY+Q2hlZXJzLDxicj48L2Rpdj48ZGl2PlNlYjxi cj48L2Rpdj48L2Rpdj4NCg== --001a11466016f7d27e05205379fb-- ------------=_1442977804-17653-1-- From unknown Sun Jun 22 04:31:14 2025 X-Loop: help-debbugs@gnu.org Subject: bug#21534: Bug in mkdir?! Resent-From: Sebastian Unger Original-Sender: "Debbugs-submit" Resent-CC: bug-coreutils@gnu.org Resent-Date: Wed, 23 Sep 2015 04:03:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 21534 X-GNU-PR-Package: coreutils X-GNU-PR-Keywords: To: Paul Eggert Cc: 21534-done@debbugs.gnu.org Received: via spool by 21534-done@debbugs.gnu.org id=D21534.144298093522720 (code D ref 21534); Wed, 23 Sep 2015 04:03:02 +0000 Received: (at 21534-done) by debbugs.gnu.org; 23 Sep 2015 04:02:15 +0000 Received: from localhost ([127.0.0.1]:42216 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1ZebG2-0005uN-TA for submit@debbugs.gnu.org; Wed, 23 Sep 2015 00:02:15 -0400 Received: from mail-vk0-f43.google.com ([209.85.213.43]:34533) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1ZebG0-0005uD-7V for 21534-done@debbugs.gnu.org; Wed, 23 Sep 2015 00:02:12 -0400 Received: by vkhf67 with SMTP id f67so19782858vkh.1 for <21534-done@debbugs.gnu.org>; Tue, 22 Sep 2015 21:02:11 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=FqjaR4n7hfIaQ/HorDxn5yxZU16EDA3CrhrGEwtPUp4=; b=x5OhJDQnUzBLaBnavGwXy3kiz5quNFEW6/oruMhAQQVAbBztY0MH0pdNJt8usC8KSY xbmsfN2YgqPYugYU4MaZhuuSjvgbloAuatWBX8WvzF2bkP1ncaNJs8N0FfooNU7h8sFU JcdsXC+3eqGmC4Z7VCYHbvL/VIbOSGZ7b7aclkPgjD/YK1r337BBli/tdo50z+nQwggC A8q7muLH2QCOZ/LrzIGCccRW1/uvYmsyXcigDj05XuVhWYYYjcm8xojl87vM1fp5NvOj BzzWEeC8Ar6qQJ0zMwfqiSPxiONMYUOWu4OR8o0tC3CQR1pDXaj/g6GECUEOIVwe45RT QYYQ== MIME-Version: 1.0 X-Received: by 10.31.52.214 with SMTP id b205mr20655281vka.122.1442980931525; Tue, 22 Sep 2015 21:02:11 -0700 (PDT) Received: by 10.31.173.201 with HTTP; Tue, 22 Sep 2015 21:02:11 -0700 (PDT) In-Reply-To: <560217EF.4050807@cs.ucla.edu> References: <560217EF.4050807@cs.ucla.edu> Date: Wed, 23 Sep 2015 16:02:11 +1200 Message-ID: From: Sebastian Unger Content-Type: multipart/alternative; boundary=001a1143f932d769d30520622d55 X-Spam-Score: -0.2 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.2 (/) --001a1143f932d769d30520622d55 Content-Type: text/plain; charset=UTF-8 Hi Paul, First of all thanks for the exceptionally quick response & fix. The mode of the file system isn't so much a security feature but a reflection of its functionality: As you drop files into a particular area, they are moved somewhere else under the hood by the fuse. But given what you are saying about expecting issues like this with more tools, I may actually make directories readable to avoid issues. You did get my name ever so slightly wrong in the patch, but if that's already committed, then don't bother with it. Cheers, Seb On 23 September 2015 at 15:09, Paul Eggert wrote: > Sebastian Unger wrote: > >> Why is it trying to open the directory >> in the first place? >> > > Security. > > Apparently POSIX doesn't allow this level of paranoia for mkdir -p, so I > removed it in the attached Gnulib patch, and this should appear in the next > coreutils release. > > A filesystem that doesn't let you read your own directory that you just > created is likely to run into other problems like this -- i.e., the > practice may introduce more security problems than it closes. But I > digress. > --001a1143f932d769d30520622d55 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable
Hi Paul,

First of all tha= nks for the exceptionally quick response & fix. The mode of the file sy= stem isn't so much a security feature but a reflection of its functiona= lity: As you drop files into a particular area, they are moved somewhere el= se under the hood by the fuse. But given what you are saying about expectin= g issues like this with more tools, I may actually make directories readabl= e to avoid issues.

You did get my name ever so slightly wrong = in the patch, but if that's already committed, then don't bother wi= th it.

Cheers,
Seb

On 23 September 2015 at 15:09, Paul Eggert= <eggert@cs.ucla.edu> wrote:
Sebastian Unger wrote:
Why is it trying to open the directory
in the first place?

Security.

Apparently POSIX doesn't allow this level of paranoia for mkdir -p, so = I removed it in the attached Gnulib patch, and this should appear in the ne= xt coreutils release.

A filesystem that doesn't let you read your own directory that you just= created is likely to run into other problems like this -- i.e., the practi= ce may introduce more security problems than it closes.=C2=A0 But I digress= .

--001a1143f932d769d30520622d55-- From unknown Sun Jun 22 04:31:14 2025 X-Loop: help-debbugs@gnu.org Subject: bug#21534: Bug in mkdir?! Resent-From: Paul Eggert Original-Sender: "Debbugs-submit" Resent-CC: bug-coreutils@gnu.org Resent-Date: Wed, 23 Sep 2015 15:13:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 21534 X-GNU-PR-Package: coreutils X-GNU-PR-Keywords: To: Sebastian Unger Cc: 21534-done@debbugs.gnu.org Received: via spool by 21534-done@debbugs.gnu.org id=D21534.144302115427341 (code D ref 21534); Wed, 23 Sep 2015 15:13:01 +0000 Received: (at 21534-done) by debbugs.gnu.org; 23 Sep 2015 15:12:34 +0000 Received: from localhost ([127.0.0.1]:42897 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1Zelij-00076u-LV for submit@debbugs.gnu.org; Wed, 23 Sep 2015 11:12:33 -0400 Received: from zimbra.cs.ucla.edu ([131.179.128.68]:55596) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1Zelii-00076n-Bi for 21534-done@debbugs.gnu.org; Wed, 23 Sep 2015 11:12:33 -0400 Received: from localhost (localhost [127.0.0.1]) by zimbra.cs.ucla.edu (Postfix) with ESMTP id 5B2A4161149; Wed, 23 Sep 2015 08:12:31 -0700 (PDT) Received: from zimbra.cs.ucla.edu ([127.0.0.1]) by localhost (zimbra.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10032) with ESMTP id l3u4_chbLBIy; Wed, 23 Sep 2015 08:12:30 -0700 (PDT) Received: from localhost (localhost [127.0.0.1]) by zimbra.cs.ucla.edu (Postfix) with ESMTP id 6BFAC16114B; Wed, 23 Sep 2015 08:12:30 -0700 (PDT) X-Virus-Scanned: amavisd-new at zimbra.cs.ucla.edu Received: from zimbra.cs.ucla.edu ([127.0.0.1]) by localhost (zimbra.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id 3vlUprR_HRR2; Wed, 23 Sep 2015 08:12:30 -0700 (PDT) Received: from Penguin.CS.UCLA.EDU (Penguin.CS.UCLA.EDU [131.179.64.200]) by zimbra.cs.ucla.edu (Postfix) with ESMTPSA id 4DBEE160CC0; Wed, 23 Sep 2015 08:12:30 -0700 (PDT) References: <560217EF.4050807@cs.ucla.edu> From: Paul Eggert Organization: UCLA Computer Science Department Message-ID: <5602C15A.7050401@cs.ucla.edu> Date: Wed, 23 Sep 2015 08:12:26 -0700 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.1.0 MIME-Version: 1.0 In-Reply-To: Content-Type: multipart/mixed; boundary="------------070106050403050800050306" X-Spam-Score: 0.3 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: 0.3 (/) This is a multi-part message in MIME format. --------------070106050403050800050306 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit On 09/22/2015 09:02 PM, Sebastian Unger wrote: > You did get my name ever so slightly wrong in the patch Oh, sorry! That's embarrassing. Fixed with the attached patch. --------------070106050403050800050306 Content-Type: text/x-patch; name="0001-Fix-ChangeLog-typo.patch" Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename="0001-Fix-ChangeLog-typo.patch" >From 617d662865cffa189afdbbcb0e268204091f0eff Mon Sep 17 00:00:00 2001 From: Paul Eggert Date: Wed, 23 Sep 2015 08:11:16 -0700 Subject: [PATCH] Fix ChangeLog typo --- ChangeLog | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index 1bcc6f1..7f7910b 100644 --- a/ChangeLog +++ b/ChangeLog @@ -2,7 +2,7 @@ savewd: remove SAVEWD_CHDIR_READABLE It was problematic in the light of file systems that ignore umask. - Problem reported by Sebastian Ungar in: http://bugs.gnu.org/21534 + Problem reported by Sebastian Unger in: http://bugs.gnu.org/21534 * NEWS: Document this. * lib/mkancesdirs.c (mkancesdirs): MAKE_DIR now returns 0 if successful, -1 (setting errno) on failure, rather than something -- 2.1.0 --------------070106050403050800050306--