This is pretty low-priority and I don't think it needs to be MFC'd for the 4.4 release, but there is a small error in ps's old-style option handling. An outstanding example of this is when one runs `ps Uroot': $ ps Uroot ps: rooT: no such user ps: No users specified The problem is that the function ps.c:kludge_oldps_options() capitalizes any 't' at the end of the option string, regardless of whether it's a flag or an option argument. The patch attached to this message should fix the problem. -- +-------------------+----------------------------------------------------+ | Chris Costello | The cost of living hasn't affected its popularity. | | [EMAIL PROTECTED] | | +-------------------+----------------------------------------------------+
Index: ps.c =================================================================== RCS file: /home/ncvs/src/bin/ps/ps.c,v retrieving revision 1.40 diff -u -r1.40 ps.c --- ps.c 2001/05/30 03:27:07 1.40 +++ ps.c 2001/08/15 20:55:04 @@ -599,8 +599,12 @@ * if last letter is a 't' flag with no argument (in the context * of the oldps options -- option string NOT starting with a '-' -- * then convert to 'T' (meaning *this* terminal, i.e. ttyname(0)). + * + * However, if a flag accepting a string argument is found in the + * option string, the remainder of the string is the argument to + * that flag; do not modify that argument. */ - if (*cp == 't' && *s != '-') + if (strcspn(s, "MNOoUW") == len && *cp == 't' && *s != '-') *cp = 'T'; else { /*