Date: Mon, 15 Jan 2001 22:32:09 -0800 (PST) From: dima@unixfreak.org To: FreeBSD-gnats-submit@freebsd.org Subject: gnu/24372: [PATCH] (cosmetic) -current send-pr breaks NIS support Message-ID: <200101160632.f0G6W9v43972@hornet.unixfreak.org>
next in thread | raw e-mail | index | archive | help
>Number: 24372 >Category: gnu >Synopsis: [PATCH] (cosmetic) -current send-pr breaks NIS support >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Mon Jan 15 22:40:01 PST 2001 >Closed-Date: >Last-Modified: >Originator: Dima Dorfman >Release: FreeBSD 5.0-20010101-CURRENT i386 >Organization: Private >Environment: System: FreeBSD spike.unixfreak.org 5.0-20010101-CURRENT FreeBSD 5.0-20010101-CURRENT #6: Tue Jan 2 03:14:04 PST 2001 dima@spike.unixfreak.org:/usr/home/dima/w/f/src/sys/compile/SPIKE i386 >Description: send-pr on -current uses `cat /etc/passwd` when looking for the default name for the ``Originator'' field. If the user filing the problem report doesn't have a local account (authenticated via NIS, for example), the field will be left blank. Of course, one can always set the field manually, but this works in RELENG_4, so why shouldn't it work in 5-CURRENT? >How-To-Repeat: Sign on using an account authenticated via NIS or anything which doesn't require an entry in the local password database, then do: send-pr -P | grep '^>Originator' and notice how the field is blank. Now sign on with a local account, repeat the above command, and notice how your name appears. >Fix: The following patch employs a different method from that in RELENG_4. The latter uses something to the effect of, ypcat passwd | cat - /etc/passwd which fixes the problem, but is not the Right Way(tm). The following patch uses pw(8) to do the dirty work. Index: send-pr.sh =================================================================== RCS file: /st/src/FreeBSD/src/gnu/usr.bin/send-pr/send-pr.sh,v retrieving revision 1.20 diff -u -r1.20 send-pr.sh --- send-pr.sh 2000/10/29 22:11:39 1.20 +++ send-pr.sh 2001/01/16 06:23:59 @@ -58,8 +58,8 @@ # host-dependent. MAIL_AGENT="${MAIL_AGENT:-/usr/sbin/sendmail -oi -t}" -# How to read the passwd database. -PASSWD="cat /etc/passwd" +# Path to pw(8) +PW="/usr/sbin/pw" ECHON=bsd @@ -97,7 +97,7 @@ PTEMP=`mktemp -t p` || exit 1 # Must use temp file due to incompatibilities in quoting behavior # and to protect shell metacharacters in the expansion of $LOGNAME - $PASSWD | grep "^$LOGNAME:" | awk -F: '{print $5}' | sed -e 's/,.*//' > $PTEMP + $PW usershow $LOGNAME | awk -F: '{ print $8 }' | sed -e 's/,.*//' > $PTEMP ORIGINATOR="`cat $PTEMP`" rm -f $PTEMP fi >Release-Note: >Audit-Trail: >Unformatted: To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-bugs" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200101160632.f0G6W9v43972>