Richard W.M. Jones wrote:
 On Wed, Aug 12, 2009 at 06:52:40PM +0200, Jim Meyering wrote:
> From: Jim Meyering <meyering(a)redhat.com>
>
> ---
>  daemon/daemon.h |    2 +-
>  daemon/sfdisk.c |    2 +-
>  2 files changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/daemon/daemon.h b/daemon/daemon.h
> index 166f3bf..bebc86f 100644
> --- a/daemon/daemon.h
> +++ b/daemon/daemon.h
> @@ -174,7 +174,7 @@ extern void reply (xdrproc_t xdrp, char *ret);
>  #define NEED_ROOT_OR_IS_DEVICE(path,errcode) \
>    do {									\
>      if (strncmp ((path), "/dev/", 5) == 0)				\
> -      IS_DEVICE ((path),(errcode));					\
> +      RESOLVE_DEVICE ((path), return errcode);				\
>      else {								\
>        NEED_ROOT ((errcode));						\
>        ABS_PATH ((path),(errcode));					\
> diff --git a/daemon/sfdisk.c b/daemon/sfdisk.c
> index 693e89a..cf62f51 100644
> --- a/daemon/sfdisk.c
> +++ b/daemon/sfdisk.c
> @@ -53,7 +53,7 @@ sfdisk (char *device, int n, int cyls, int heads, int sectors,
>    if (extra_flag)
>      sprintf (buf + strlen (buf), " %s", extra_flag);
>
> -  /* Safe because of IS_DEVICE above: */
> +  /* Safe because of RESOLVES_DEVICE above: */ 
This stray "S" is a typo I'd started to fix when I realized that the
IS_DEVICE (renamed to RESOLVE_DEVICE) is now, in the final patch, gone.
I'll rebase -i to fix my typo before committing.
I'll also write a separate commit to add a check for
buffer overflow.
>    sprintf (buf + strlen (buf), " %s", device);