From 4a0de63bbe1d64a9780e586ae801a78d483c339e Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Tue, 21 May 2002 06:01:28 +0000 Subject: [PATCH] Update. 2002-05-20 Ulrich Drepper * iconv/loop.c: Fix condition for defining unaligned loop. Add some more security checks. --- ChangeLog | 5 +++++ iconv/loop.c | 10 +++++++--- 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/ChangeLog b/ChangeLog index 01eb95b..a691f78 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2002-05-20 Ulrich Drepper + + * iconv/loop.c: Fix condition for defining unaligned loop. Add + some more security checks. + 2002-05-17 David S. Miller * sysdeps/unix/sysv/linux/sparc/fork.S: Define _internal aliases. diff --git a/iconv/loop.c b/iconv/loop.c index ae83894..3609c19 100644 --- a/iconv/loop.c +++ b/iconv/loop.c @@ -1,5 +1,5 @@ /* Conversion loop frame work. - Copyright (C) 1998, 1999, 2000, 2001 Free Software Foundation, Inc. + Copyright (C) 1998, 1999, 2000, 2001, 2002 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper , 1998. @@ -133,6 +133,8 @@ /* We need at least one byte for the next round. */ #ifndef MIN_NEEDED_INPUT # error "MIN_NEEDED_INPUT definition missing" +#elif MIN_NEEDED_INPUT < 1 +# error "MIN_NEEDED_INPUT must be >= 1" #endif /* Let's see how many bytes we produce. */ @@ -143,6 +145,8 @@ /* We produce at least one byte in the next round. */ #ifndef MIN_NEEDED_OUTPUT # error "MIN_NEEDED_OUTPUT definition missing" +#elif MIN_NEEDED_INPUT < 1 +# error "MIN_NEEDED_INPUT must be >= 1" #endif /* Let's see how many bytes we produce. */ @@ -296,8 +300,8 @@ FCTNAME (LOOPFCT) (struct __gconv_step *step, /* Include the file a second time to define the function to handle unaligned access. */ #if !defined DEFINE_UNALIGNED && !defined _STRING_ARCH_unaligned \ - && MIN_NEEDED_FROM != 1 && MAX_NEEDED_FROM % MIN_NEEDED_FROM == 0 \ - && MIN_NEEDED_TO != 1 && MAX_NEEDED_TO % MIN_NEEDED_TO == 0 + && MIN_NEEDED_INPUT != 1 && MAX_NEEDED_INPUT % MIN_NEEDED_INPUT == 0 \ + && MIN_NEEDED_OUTPUT != 1 && MAX_NEEDED_OUTPUT % MIN_NEEDED_OUTPUT == 0 # undef get16 # undef get32 # undef put16 -- 2.7.4