Openwall GNU/*/Linux - a small security-enhanced Linux distro for servers
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date: Sun, 20 Oct 2019 04:29:54 +0000
From: "wangjianjian (C)" <wangjianjian3@...wei.com>
To: Szabolcs Nagy <nsz@...t70.net>, "musl@...ts.openwall.com"
	<musl@...ts.openwall.com>
Subject: 答复: [PATCH 1/1] ungetc: Cast to unsigned char before push back to stream

Thanks for review. I will send a v2.

-----邮件原件-----
发件人: Szabolcs Nagy [mailto:nsz@...t70.net] 
发送时间: 2019年10月18日 21:15
收件人: musl@...ts.openwall.com
抄送: wangjianjian (C) <wangjianjian3@...wei.com>
主题: Re: [musl] [PATCH 1/1] ungetc: Cast to unsigned char before push back to stream

* wangjianjian (C) <wangjianjian3@...wei.com> [2019-10-18 12:35:45 +0000]:
> >From 4d24e6fee85ed878dc632dd29aabeb7c7454952e Mon Sep 17 00:00:00 
> >2001
> From: Wang Jianjian <wangjianjian3@...wei.com>
> Date: Fri, 18 Oct 2019 20:28:29 +0800
> Subject: [PATCH 1/1] ungetc: Cast to unsigned char before push back to 
> stream
> 
> Per Posix standard, casting to unsigned char is need before returning 
> C and pushing C back to stream.
> 
> Signed-off-by: Wang Jianjian <wangjianjian3@...wei.com>
> ---
>  src/stdio/ungetc.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/src/stdio/ungetc.c b/src/stdio/ungetc.c index 
> 180673a4..9733091a 100644
> --- a/src/stdio/ungetc.c
> +++ b/src/stdio/ungetc.c
> @@ -12,9 +12,9 @@ int ungetc(int c, FILE *f)
>                 return EOF;
>         }
> 
> -       *--f->rpos = c;
> +       *--f->rpos = (unsigned char)c;

this is a noop since assignment will do the conversion.

>         f->flags &= ~F_EOF;
> 
>         FUNLOCK(f);
> -       return c;
> +       return (unsigned char)c;

i think this fixes a real bug.

>  }
> --
> 2.17.1
> 
> BR,
> Wang Jianjian

Powered by blists - more mailing lists

Your e-mail address:

Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.