All of lore.kernel.org
 help / color / mirror / Atom feed
From: Andrew Morton <akpm@google.com>
To: Mimi Zohar <zohar@linux.vnet.ibm.com>
Cc: linux-security-module@vger.kernel.org,
	Andy Shevchenko <andy.shevchenko@gmail.com>,
	Tetsuo Handa <penguin-kernel@i-love.sakura.ne.jp>,
	David Safford <safford@watson.ibm.com>,
	"Nicholas A. Bellinger" <nab@linux-iscsi.org>,
	target-devel@vger.kernel.org, linux-kernel@vger.kernel.org,
	Andrew Morton <akpm@linux-foundation.org>
Subject: Re: [RFC][PATCH 1/5] lib: add unpack_hex_byte()
Date: Mon, 19 Sep 2011 15:38:10 -0700	[thread overview]
Message-ID: <20110919153810.ba0be83a.akpm@google.com> (raw)
In-Reply-To: <1316471708.3191.130.camel@localhost.localdomain>

On Mon, 19 Sep 2011 18:35:08 -0400
Mimi Zohar <zohar@linux.vnet.ibm.com> wrote:

> > Wouldn't it be better to fix hex2bin() so that it returns -1 on error?
> 
> Yes, that was the original idea, but in order to return a result, it
> needs to validate the input.  The above code, or something similar,
> needs to exist somewhere, either in the new function or in hex2bin().
> Would something like this be any better?
> 
> int hex2bin(u8 *dst, const char *src, size_t count)
> {
> 	while (count--) {
>                 int hi = hex_to_bin(*src++);
>                 int lo = hex_to_bin(*src++);
> 
>                 if ((hi < 0) || (lo < 0))
>                         return -1;
> 
>                 *dst++ = (hi << 4) | lo;
>         }
> 	return 0;
> }
> 
> 
> > Then the above function becomes a one-liner:
> > 
> > 	return hex2bin(dst, src, 2);
> 
> Why bother?  With something like this, there isn't a need for the new
> function.  :-)

OK.

> > Finally, the name is poor.  It starts with "unpack_", so it belongs to
> > the "unpack" subsystem.  There's no such thing.  Something like
> > hex_byte_to_bin() would be better.
> 
> agreed.  It was suppose to parallel the existing pack_hex_byte().

hex_byte_pack() :)

  reply	other threads:[~2011-09-19 22:38 UTC|newest]

Thread overview: 35+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-09-16 12:50 [RFC][PATCH 1/5] lib: add unpack_hex_byte() Mimi Zohar
2011-09-16 12:50 ` [RFC][PATCH 2/5] lib: add error checking to hex2bin Mimi Zohar
2011-09-16 13:13   ` Andy Shevchenko
2011-09-19 21:20   ` Andrew Morton
2011-09-16 12:50 ` [RFC][PATCH 3/5] trusted-keys: check hex2bin result Mimi Zohar
2011-09-16 12:50 ` [RFC][PATCH 4/5] encrypted-keys: " Mimi Zohar
2011-09-16 12:50 ` [RFC][PATCH 5/5] target: " Mimi Zohar
2011-09-16 14:07   ` Tetsuo Handa
2011-09-16 20:21     ` Nicholas A. Bellinger
2011-09-19 11:19       ` Mimi Zohar
2011-09-16 13:11 ` [RFC][PATCH 1/5] lib: add unpack_hex_byte() Andy Shevchenko
2011-09-19 21:19 ` Andrew Morton
2011-09-19 22:35   ` Mimi Zohar
2011-09-19 22:38     ` Andrew Morton [this message]
2011-09-20  6:04       ` Andy Shevchenko
2011-09-20  6:26         ` Andrew Morton
2011-09-23 10:47           ` [PATCH 1/2] kernel.h: rename pack_hex_byte to hex_pack_byte Andy Shevchenko
2011-09-23 10:47             ` [PATCH 2/2] wireless: at76c50x: use native hex_pack_byte() method Andy Shevchenko
2011-09-27 11:51               ` [PATCHv2] " Andy Shevchenko
2011-09-27 12:01               ` [PATCHv2.1] " Andy Shevchenko
2011-09-27 19:47                 ` Pavel Roskin
2011-09-28  8:11                   ` Andy Shevchenko
2011-09-28  9:30                   ` [PATCHv3] " Andy Shevchenko
2011-09-28 20:40                     ` Pavel Roskin
2011-09-23 20:18             ` [PATCH 1/2] kernel.h: rename pack_hex_byte to hex_pack_byte Andrew Morton
2011-09-27 10:51               ` Andy Shevchenko
2011-09-27 17:32                 ` Andrew Morton
2011-10-10 14:33                   ` [PATCHv2 1/5] lib: rename pack_hex_byte to hex_byte_pack Andy Shevchenko
2011-10-10 14:33                     ` [PATCHv2 2/5] kgdb: follow " Andy Shevchenko
2011-10-10 14:55                       ` Jesper Nilsson
2011-10-10 14:33                     ` [PATCHv2 3/5] security: " Andy Shevchenko
2011-10-10 14:33                     ` [PATCHv2 4/5] fat: " Andy Shevchenko
2011-10-10 20:02                       ` OGAWA Hirofumi
2011-10-10 14:33                     ` [PATCHv2 5/5] wireless: at76c50x: " Andy Shevchenko
2011-10-11 13:55                       ` John W. Linville

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20110919153810.ba0be83a.akpm@google.com \
    --to=akpm@google.com \
    --cc=akpm@linux-foundation.org \
    --cc=andy.shevchenko@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-security-module@vger.kernel.org \
    --cc=nab@linux-iscsi.org \
    --cc=penguin-kernel@i-love.sakura.ne.jp \
    --cc=safford@watson.ibm.com \
    --cc=target-devel@vger.kernel.org \
    --cc=zohar@linux.vnet.ibm.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.