From owner-freebsd-current@freebsd.org Mon Nov 28 07:12:11 2016 Return-Path: Delivered-To: freebsd-current@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id C428FC58D2A for ; Mon, 28 Nov 2016 07:12:11 +0000 (UTC) (envelope-from allanjude@freebsd.org) Received: from mx1.scaleengine.net (mx1.scaleengine.net [209.51.186.6]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id E4F791304; Mon, 28 Nov 2016 07:12:10 +0000 (UTC) (envelope-from allanjude@freebsd.org) Received: from [192.168.1.10] (unknown [192.168.1.10]) (Authenticated sender: allanjude.freebsd@scaleengine.com) by mx1.scaleengine.net (Postfix) with ESMTPSA id 234EDBB56; Mon, 28 Nov 2016 07:05:56 +0000 (UTC) Subject: Re: r308432: Capsicumized `basename` make zsh prompt broken To: freebsd-current@freebsd.org References: <5874fe09-4261-5616-9c0a-a71581c4d548@hs.ntnu.edu.tw> Cc: Baptiste Daroussin From: Allan Jude Message-ID: Date: Mon, 28 Nov 2016 02:05:49 -0500 User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.5.0 MIME-Version: 1.0 In-Reply-To: Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="Wr5EnQSJdRkUlxwLM0rPagQEVdgPdDi0K" X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 28 Nov 2016 07:12:11 -0000 This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --Wr5EnQSJdRkUlxwLM0rPagQEVdgPdDi0K Content-Type: multipart/mixed; boundary="NMtugp0P3ek0nEiDHEHR4rrCTEitcPv8X"; protected-headers="v1" From: Allan Jude To: freebsd-current@freebsd.org Cc: Baptiste Daroussin Message-ID: Subject: Re: r308432: Capsicumized `basename` make zsh prompt broken References: <5874fe09-4261-5616-9c0a-a71581c4d548@hs.ntnu.edu.tw> In-Reply-To: --NMtugp0P3ek0nEiDHEHR4rrCTEitcPv8X Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable On 2016-11-27 23:55, Conrad Meyer wrote: > Hi Iblis, >=20 > I see no such problem running 'basename $HOME' in a normal shell enviro= nment: >=20 >> $ basename $HOME >> cmeyer >=20 > I suppose in your use, perhaps stdin is already closed? I think this > is a limitation of caph_limit_stdio() in general. >=20 > Can you try instead: >=20 > function set_prompt { > prompt=3D"$(basename $HOME < /dev/null) >" > } >=20 > And see if it resolves the issue? >=20 > Thanks, > Conrad >=20 > On Sun, Nov 27, 2016 at 8:33 PM, iblis wrote: >> Hi, >> Here is a minimal config of zsh prompt invoking `basename`: >> ``` >> =E2=94=94=E2=94=80[iblis@abeing]% cat /home/ib-test/.zshenv >> >> function set_prompt { >> prompt=3D"$(basename $HOME) >" >> } >> >> function zle-line-init zle-keymap-select { >> set_prompt >> zle reset-prompt >> } >> >> zle -N zle-line-init >> zle -N zle-keymap-select >> >> set_prompt >> ``` >> >> and launching zsh will get something like this: >> >> ``` >> =E2=94=94=E2=94=80[iblis@abeing]% sudo su ib-test >> >> ib-test >basename: capsicum: Bad file descriptor >>> >>> basename: capsicum: Bad file descriptor >>> >> ``` >> >> >> To be honest, I have no idea about what casper/caspicum is. I just cha= nged >> the `basename.c` and zsh work again. >> >> Index: basename.c >> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D >> --- basename.c (revision 309213) >> +++ basename.c (working copy) >> @@ -65,7 +65,7 @@ >> >> setlocale(LC_ALL, ""); >> >> - if (caph_limit_stdio() < 0 || (cap_enter() < 0 && errno !=3D ENOSYS)= ) >> + if (cap_enter() < 0 && errno !=3D ENOSYS) >> err(1, "capsicum"); >> >> aflag =3D 0; >> >> >> Any idea? >> >> -- >> Iblis Lin >> _______________________________________________ >> freebsd-current@freebsd.org mailing list >> https://lists.freebsd.org/mailman/listinfo/freebsd-current >> To unsubscribe, send any mail to "freebsd-current-unsubscribe@freebsd.= org" > _______________________________________________ > freebsd-current@freebsd.org mailing list > https://lists.freebsd.org/mailman/listinfo/freebsd-current > To unsubscribe, send any mail to "freebsd-current-unsubscribe@freebsd.o= rg" >=20 IIRC, bapt@ specifically mentioned this case in the review for caph_limit_stdio() or one of the reviews that lead to the creation of the helpers. --=20 Allan Jude --NMtugp0P3ek0nEiDHEHR4rrCTEitcPv8X-- --Wr5EnQSJdRkUlxwLM0rPagQEVdgPdDi0K Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.16 (MingW32) iQIcBAEBAgAGBQJYO9dRAAoJEBmVNT4SmAt+MaEP/1luhDEW5/SRh/4KIF1gtawi eVS8UuSb9K3+jAlpboBOZNcRKnNaGXyfgBWcp+cLjt5jDCeCt1HL7UZDtNGSFOX0 xN2hvH3wGuy+81p1776kJ84cGKdsbMCWhuBrR+XZSQLwMhyI2/Z/VqqFSA/ss5SM /KVVz9WGyrai7rmmUBbmejn1uZ2wgDpiv5Xiondg0NrI5pNQNimLuqzKvi59qMD1 ztO5i+v8/bmwgYStTPH/4tF6eaImohCamGeVHoNJ3/2Zdsv9748/YGc+q561by84 hlRZeSG3KGE0OwDOns4gDiClmX18rQg/2aNvGSmdLSY0Xf64IRtH7Bp2HSeUVjdq cnw5WWAifPwEOwRPNdC0olttESRGNr2W8VJ2MCvKFzy0DhPRcZE560+YFc/72J8H saQ3trssIS7iKkm79iVrJjlp9ChFkPBx8BDn/9fMnvcZWd4ewelxx/95fAN1hl3o QOVO5Zm7ZX6I7iSHjVddEtm+lS+EsFrchNxcjUJ3tvzYMynpLt9QyAoEYGRiMJ8O x4duS5l9cxVzTo1ipd5/1gsf4DDzCd0/O2pEm/PFNJvOLO2CC2IuF4KAXpzBdeQk wi+pbbih3KIxilJ2IHRsbt7N8TkCnxEqxOpJYH4EUuiGbuiqy/q+t9frciwt8hW8 Owr6GZdqh67HmA6foi8S =MzNS -----END PGP SIGNATURE----- --Wr5EnQSJdRkUlxwLM0rPagQEVdgPdDi0K--