bin/139606: [patch] pkg_add(1) coredumps silently on atlantis symlink

Efstratios Karatzas gpf.kira at gmail.com
Mon Mar 22 21:30:09 UTC 2010


The following reply was made to PR bin/139606; it has been noted by GNATS.

From: Efstratios Karatzas <gpf.kira at gmail.com>
To: bug-followup at freebsd.org
Cc: Garrett Cooper <yanefbsd at gmail.com>
Subject: Re: bin/139606: [patch] pkg_add(1) coredumps silently on atlantis 
	symlink
Date: Mon, 22 Mar 2010 23:26:30 +0200

 --0016e6d78546bbf85a04826a5914
 Content-Type: text/plain; charset=UTF-8
 Content-Transfer-Encoding: quoted-printable
 
 Yo Garrett.
 
 I concur with your statement. Even a minor change to a library method
 should not be taken lightly. Regrettably, I don't have the time to
 perform a foolproof testing of my original patch to all of the
 utilities that use this library; most of my free time goes to my
 preparation for the coming gsoc.
 
 On the other hand, leaving the bug as is does not sit well with me. So
 here is a fix for this particular part of the code. I may be a little
 sleepy as I'm writing this but everything seems okay, no segfaults or
 pissed of compilers.
 
 Thanks for your time!
 
 >> From: Garrett Cooper <yanegomi at gmail.com>
 >> =C2=A0Hi PHK,
 >> =C2=A0 =C2=A0 The goals of this change are good and while this does do a=
  better
 >> =C2=A0job than the other proposed change (bin/136419), there's one solit=
 ary
 >> =C2=A0problem: fexists is used all over the pkg_install code and minus t=
 he
 >> =C2=A0occasional corner case it's been relatively glitch free. Changing =
 this
 >> =C2=A0code to use stat(2) instead of lstat(2) may have some unexpected
 >> =C2=A0consequences -- it would probably just be a wiser idea to 1) leave=
  the
 >> =C2=A0code alone with the issue documented or 2) implement stat(2) in th=
 at
 >> =C2=A0section of code, because we know it's a problem section of code th=
 at
 >> =C2=A0needs to be resolved. Not doing this will result in potential
 >> =C2=A0regressive churn if it hasn't been adequately tested with a fine t=
 ooth
 >> =C2=A0comb.
 
 --=20
 
 Efstratios "GPF" Karatzas
 
 --0016e6d78546bbf85a04826a5914
 Content-Type: application/octet-stream; name="patch-2.diff"
 Content-Disposition: attachment; filename="patch-2.diff"
 Content-Transfer-Encoding: base64
 X-Attachment-Id: f_g73sc9n30
 
 LS0tIG1haW4ub3JpZy5jCTIwMTAtMDMtMjIgMjI6NDg6MTkuMDAwMDAwMDAwICswMjAwCisrKyBt
 YWluLmMJMjAxMC0wMy0yMiAyMzowMjo0NC4wMDAwMDAwMDAgKzAyMDAKQEAgLTIyLDYgKzIyLDgg
 QEAKIF9fRkJTRElEKCIkRnJlZUJTRDogc3JjL3Vzci5zYmluL3BrZ19pbnN0YWxsL2FkZC9tYWlu
 LmMsdiAxLjcyLjIuOS4yLjEgMjAxMC8wMi8xMCAwMDoyNjoyMCBrZW5zbWl0aCBFeHAgJCIpOwog
 CiAjaW5jbHVkZSA8c3lzL3BhcmFtLmg+CisjaW5jbHVkZSA8c3lzL3N0YXQuaD4KKyNpbmNsdWRl
 IDxzeXMvdHlwZXMuaD4KICNpbmNsdWRlIDxzeXMvdXRzbmFtZS5oPgogI2luY2x1ZGUgPGVyci5o
 PgogI2luY2x1ZGUgPGdldG9wdC5oPgpAQCAtMTI4LDYgKzEzMCw3IEBACiAgICAgY2hhciAqY3As
 ICpwYWNrYWdlc2l0ZSA9IE5VTEwsICpyZW1vdGVwa2cgPSBOVUxMLCAqcHRyOwogICAgIHN0YXRp
 YyBjaGFyIHRlbXBwYWNrYWdlcm9vdFtNQVhQQVRITEVOXTsKICAgICBzdGF0aWMgY2hhciBwa2dh
 ZGRwYXRoW01BWFBBVEhMRU5dOworICAgIHN0cnVjdCBzdGF0IGR1bW15OwogCiAgICAgaWYgKCph
 cmd2WzBdICE9ICcvJyAmJiBzdHJjaHIoYXJndlswXSwgJy8nKSAhPSBOVUxMKQogCVBrZ0FkZENt
 ZCA9IHJlYWxwYXRoKGFyZ3ZbMF0sIHBrZ2FkZHBhdGgpOwpAQCAtMjQ1LDggKzI0OCwxMiBAQAog
 CQkgICAgZXJyeCgxLCAicGFja2FnZSBuYW1lIHRvbyBsb25nIik7CiAJCXBrZ3NbY2hdID0gc3Ry
 ZHVwKHRlbXApOwogCSAgICB9IGVsc2UgewkJCS8qIGV4cGFuZCBhbGwgcGF0aG5hbWVzIHRvIGZ1
 bGxuYW1lcyAqLwotCQlpZiAoZmV4aXN0cygqYXJndikpIC8qIHJlZmVycyB0byBhIGZpbGUgZGly
 ZWN0bHkgKi8KLQkJICAgIHBrZ3NbY2hdID0gc3RyZHVwKHJlYWxwYXRoKCphcmd2LCB0ZW1wKSk7
 CisJCS8qIAorCQkgKiByZWZlcnMgdG8gYSBmaWxlIGRpcmVjdGx5OyBzdGF0KDIpIGlzIHVzZWQg
 aW4gb3JkZXIgdG8gYXZvaWQgYnJva2VuIHN5bWxpbmtzLgorCQkgKiByYWNlIGNvbmRpdGlvbiBz
 byBjaGVjayByZXR1cm4gdmFsdWUgb2YgcmVhbHBhdGgoMykgYW5kIGF2b2lkIHNlZ2ZhdWx0CisJ
 CSAqLworCQlpZiAoIXN0YXQoKmFyZ3YsICZkdW1teSkgJiYgcmVhbHBhdGgoKmFyZ3YsIHRlbXAp
 ICE9IE5VTEwpCisJCSAgICBwa2dzW2NoXSA9IHN0cmR1cCh0ZW1wKTsKIAkJZWxzZSB7CQkvKiBs
 b29rIGZvciB0aGUgZmlsZSBpbiB0aGUgZXhwZWN0ZWQgcGxhY2VzICovCiAJCSAgICBpZiAoIShj
 cCA9IGZpbGVGaW5kQnlQYXRoKE5VTEwsICphcmd2KSkpIHsKIAkJCS8qIGxldCBwa2dfZG8oKSBm
 YWlsIGxhdGVyLCBzbyB0aGF0IGVycm9yIGlzIHJlcG9ydGVkICovCg==
 --0016e6d78546bbf85a04826a5914--


More information about the freebsd-bugs mailing list