bin/144411: [patch] mtree(8) doesn't reject non-regular files
for -X
Garrett Cooper
gcooper at FreeBSD.org
Fri May 7 07:30:08 UTC 2010
The following reply was made to PR bin/144411; it has been noted by GNATS.
From: Garrett Cooper <gcooper at FreeBSD.org>
To: Garrett Cooper <gcooper at freebsd.org>
Cc: Bruce Evans <brde at optusnet.com.au>, bug-followup <bug-followup at freebsd.org>
Subject: Re: bin/144411: [patch] mtree(8) doesn't reject non-regular files for
-X
Date: Fri, 7 May 2010 00:20:29 -0700
--005045016ba0d819d70485fbe4b3
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable
On Tue, Mar 30, 2010 at 11:47 PM, Garrett Cooper <gcooper at freebsd.org> wrot=
e:
> On Tue, Mar 30, 2010 at 11:46 PM, Garrett Cooper <gcooper at freebsd.org> wr=
ote:
>> On Tue, Mar 30, 2010 at 11:35 PM, Garrett Cooper <gcooper at freebsd.org> w=
rote:
>>> On Tue, Mar 30, 2010 at 5:40 PM, Garrett Cooper <gcooper at freebsd.org> w=
rote:
>>>> On Tue, Mar 30, 2010 at 12:12 PM, Bruce Evans <brde at optusnet.com.au> w=
rote:
>>>>> On Wed, 31 Mar 2010, Bruce Evans wrote:
>>>>>
>>>>>> On Tue, 30 Mar 2010, Garrett Cooper wrote:
>>>>>>
>>>>>>> Hi,
>>>>>>> =A0 =A0I'm not 100% satisfied with this patch now. Looking back it =
fails
>>>>>>> the following case:
>>>>>>>
>>>>>>> =A0 =A0 -P =A0 =A0Do not follow symbolic links in the file hierarch=
y, instead
>>>>>>> con-
>>>>>>> =A0 =A0 =A0 =A0 =A0 sider the symbolic link itself in any compariso=
ns. =A0This is the
>>>>>>> =A0 =A0 =A0 =A0 =A0 default.
>>>>>>
>>>>>> -P should have the same semantics and description in all utilities. =
=A0The
>>>>>> description should not have grammar errors like the above (comma spl=
ice).
>>>>>> ...
>>>>>> I now see that the grammar error is from the original version of mtr=
ee(1),
>>>>>> and is probably one of the things you don't like. =A0mtree also has =
-L, but
>>>>>> not -R or -P or -h. =A0It is not clear how any utility that traverse=
s trees
>>>>>> can work without a full complement of -[HLPR] or how any utility tha=
t
>>>>>> ...
>>>>>
>>>>> Looking at the actual patch, I now see that it is about a completely
>>>>> different problem. =A0You would only need to understand the amount of
>>>>> brokenness of -P to see if you need to use lstat(). =A0I think -P is =
so
>>>>> broken that mtree on symlinks doesn't work at all and not using lstat=
()
>>>>> would be safest.
>>>>
>>>> Hmmm... so I take it that this is actually the first step in many to
>>>> fixing this underlying problem? I suppose I should be opening bugs for
>>>> all of the itemized issues that you see in mtree(8) so someone can
>>>> submit patches to fix the utility?
>>>>
>>>>> The patch has some style bugs.
>>>>
>>>> Please expound on this -- I want to improve my style (without having
>>>> to rewrite the entire program of course) -- so that it conforms more
>>>> to the projects overall style rules; of course there are some cases
>>>> where I can't readily do that (like pkg_install -- ugh), but I'll do
>>>> my best to make sure that the rules are withheld.
>>>
>>> s/withheld/held/
>>>
>>> I guess the problem was the fact that I didn't use 8-space tabs for
>>> first-level tabs? Hard tabs are fine, correct?
>>
>> =A0 =A0Ah, the braces for the single line conditional. Yes, I see what
>> you mean now (fixed).
>> =A0 =A0Also, I see what you mean about -P being broken; mtree(8) uses
>> chmod instead of lchmod, chown instead of lchown, etc. This definitely
>> needs fixing and I'll assign separate PRs for it.
>
> Sorry -- forgot the patch.
A properly style(9)zed patch.
Thanks,
-Garrett
--005045016ba0d819d70485fbe4b3
Content-Type: text/plain; charset=US-ASCII; name="bin.144411.diff.txt"
Content-Disposition: attachment; filename="bin.144411.diff.txt"
Content-Transfer-Encoding: base64
X-Attachment-Id: f_g8woe5t61
SW5kZXg6IHVzci5zYmluL210cmVlL2V4Y2x1ZGVzLmMKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gdXNyLnNiaW4v
bXRyZWUvZXhjbHVkZXMuYwkocmV2aXNpb24gMjA3NzQwKQorKysgdXNyLnNiaW4vbXRyZWUvZXhj
bHVkZXMuYwkod29ya2luZyBjb3B5KQpAQCAtMzAsOSArMzAsMTAgQEAKICNpbmNsdWRlIDxzeXMv
Y2RlZnMuaD4KIF9fRkJTRElEKCIkRnJlZUJTRCQiKTsKIAorI2luY2x1ZGUgPHN5cy9xdWV1ZS5o
PgorI2luY2x1ZGUgPHN5cy9zdGF0Lmg+CisjaW5jbHVkZSA8c3lzL3RpbWUuaD4JCS8qIFhYWCBm
b3IgbXRyZWUuaCAqLwogI2luY2x1ZGUgPHN5cy90eXBlcy5oPgotI2luY2x1ZGUgPHN5cy90aW1l
Lmg+CQkvKiBYWFggZm9yIG10cmVlLmggKi8KLSNpbmNsdWRlIDxzeXMvcXVldWUuaD4KIAogI2lu
Y2x1ZGUgPGVyci5oPgogI2luY2x1ZGUgPGZubWF0Y2guaD4KQEAgLTYzLDEzICs2NCwyOSBAQAog
dm9pZAogcmVhZF9leGNsdWRlc19maWxlKGNvbnN0IGNoYXIgKm5hbWUpCiB7CisJc3RydWN0IGV4
Y2x1ZGUgKmU7CisJc3RydWN0IHN0YXQgZXhjbHVkZV9zdGF0OwogCUZJTEUgKmZwOwogCWNoYXIg
KmxpbmUsICpzdHI7Ci0Jc3RydWN0IGV4Y2x1ZGUgKmU7CiAJc2l6ZV90IGxlbjsKIAorCS8qCisJ
ICogTGV0J3MgcmVzb2x2ZSB0aGUgbmFtZSB2aWEgc3RhdCgyKSBzbyBzeW1saW5rcyB0byBmaWxl
cyBkb24ndCBmYWlsCisJICogdGhlIFNfSVNSRUcgY2hlY2sgYmVsb3cuCisJICovCisJaWYgKHN0
YXQobmFtZSwgJmV4Y2x1ZGVfc3RhdCkgIT0gMCkKKwkJZXJyKEVYSVRfRkFJTFVSRSwgIiVzIiwg
bmFtZSk7CisJLyogRG9uJ3QgbGV0IGNlcnRhaW4gZmlsZXMgbGlrZSBkaXJlY3RvcmllcywgZmlm
b3MsIGV0YyBwYXNzLiAqLworCWlmICghU19JU1JFRyhleGNsdWRlX3N0YXQuc3RfbW9kZSkpIHsK
KwkJLyoKKwkJICogV2Ugb25seSBhY2NlcHQgZmlsZXMgdGhhdCBhcmUgcmVndWxhciBmaWxlczsg
YWxsIG90aGVyIGZpbGUKKwkJICogdHlwZXMgYXJlIHJlamVjdGVkLgorCQkgKi8KKwkJZXJyeChF
WElUX0ZBSUxVUkUsICIlczogaW52YWxpZCBleGNsdWRlIGZpbGUiLCBuYW1lKTsKKwl9CisKIAlm
cCA9IGZvcGVuKG5hbWUsICJyIik7Ci0JaWYgKGZwID09IDApCisJaWYgKGZwID09IE5VTEwpCiAJ
CWVycigxLCAiJXMiLCBuYW1lKTsKIAogCXdoaWxlICgobGluZSA9IGZnZXRsbihmcCwgJmxlbikp
ICE9IDApIHsK
--005045016ba0d819d70485fbe4b3--
More information about the freebsd-bugs
mailing list