On August 10, 2014 11:17:59 PM CEST, Vadim Zhukov <persg...@gmail.com> wrote:
>This changes the way ifconfig(8) to print lines like 'crazy "nwid',
>i.e., containing double quotes inside the data being output.
>At the present, such lines will be printed in the following way:
>
>"crazy "nwid"
>
>And this makes everything that tries to parse such lines go crazy
>in their turn. I propose to force unambigious hexadecimal output
>in this case.
>
>Objections/okays?

I'm all for this, but I've been voted down on a similar suggestion before. 
Maybe now's the time.

/Alexander

>--
>WBR,
>  Vadim Zhukov
>
>
>Index: ifconfig.c
>===================================================================
>RCS file: /cvs/src/sbin/ifconfig/ifconfig.c,v
>retrieving revision 1.287
>diff -u -p -r1.287 ifconfig.c
>--- ifconfig.c 12 Jul 2014 19:58:17 -0000      1.287
>+++ ifconfig.c 10 Aug 2014 21:11:03 -0000
>@@ -1499,8 +1499,8 @@ print_string(const u_int8_t *buf, int le
> 
>       if (len < 2 || buf[0] != '0' || tolower(buf[1]) != 'x') {
>               for (; i < len; i++) {
>-                      /* Only print 7-bit ASCII keys */
>-                      if (buf[i] & 0x80 || !isprint(buf[i]))
>+                      /* Only print 7-bit ASCII keys, excluding double quote 
>*/
>+                      if (buf[i] & 0x80 || !isprint(buf[i]) || buf[i] == '"')
>                               break;
>                       if (isspace(buf[i]))
>                               hasspc++;

Reply via email to