[Fontconfig] [PATCH 1/3] Leave room for null terminators in arrays
Akira TAGOH
akira at tagoh.org
Tue Nov 5 03:45:39 CET 2013
Thanks for patches. merged them.
On Sun, Nov 3, 2013 at 2:23 AM, Alan Coopersmith
<alan.coopersmith at oracle.com> wrote:
> Code currently returns a fatal error if it tries to add more entries
> than the array has room for, but it wasn't checking to make sure
> the final null terminator entry would fit.
>
> Reported by parfait 1.3:
> Error: Buffer overrun
> Buffer overflow (CWE 120): In array dereference of files[i] with index i
> Array size is 256 elements (of 4 bytes each), index >= 0 and index <= 256
> at line 250 of fc-glyphname/fc-glyphname.c in function 'main'.
> Error: Buffer overrun
> Buffer overflow (CWE 120): In array dereference of entries[i] with index i
> Array size is 1024 elements (of 8 bytes each), index >= 0 and index <= 1024
> at line 298 of fc-lang/fc-lang.c in function 'main'.
>
> Signed-off-by: Alan Coopersmith <alan.coopersmith at oracle.com>
> ---
> fc-glyphname/fc-glyphname.c | 2 +-
> fc-lang/fc-lang.c | 2 +-
> 2 files changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/fc-glyphname/fc-glyphname.c b/fc-glyphname/fc-glyphname.c
> index 8402781..078490a 100644
> --- a/fc-glyphname/fc-glyphname.c
> +++ b/fc-glyphname/fc-glyphname.c
> @@ -233,7 +233,7 @@ dump (FcGlyphName * const *table, const char *name)
> int
> main (int argc FC_UNUSED, char **argv)
> {
> - char *files[MAX_GLYPHFILE];
> + char *files[MAX_GLYPHFILE + 1];
> char line[1024];
> FILE *f;
> int i;
> diff --git a/fc-lang/fc-lang.c b/fc-lang/fc-lang.c
> index 0f4217f..38fc697 100644
> --- a/fc-lang/fc-lang.c
> +++ b/fc-lang/fc-lang.c
> @@ -254,7 +254,7 @@ static int compare (const void *a, const void *b)
> int
> main (int argc FC_UNUSED, char **argv)
> {
> - static Entry entries[MAX_LANG];
> + static Entry entries[MAX_LANG + 1];
> static FcCharSet *sets[MAX_LANG];
> static int duplicate[MAX_LANG];
> static int country[MAX_LANG];
> --
> 1.7.9.2
>
> _______________________________________________
> Fontconfig mailing list
> Fontconfig at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/fontconfig
--
Akira TAGOH
More information about the Fontconfig
mailing list