Re: increase AT_VECTOR_SIZE to terminate saved_auxv properly

From: Jakub Jelinek
Date: Sat Sep 15 2007 - 10:01:38 EST


On Fri, Sep 14, 2007 at 01:00:57PM +0200, Olaf Hering wrote:
> include/asm-powerpc/elf.h has 6 entries in ARCH_DLINFO.
> fs/binfmt_elf.c has 14 unconditional NEW_AUX_ENT entries and 2
> conditional NEW_AUX_ENT entries.
> So in the worst case, saved_auxv does not get an AT_NULL entry at the
> end.
>
> Is an AT_NULL entry required or must userspace use the AT_VECTOR_SIZE
> to not loop past the end of the array?

Of course it is required, AT_VECTOR_SIZE is a kernel implementation detail.

> If AT_NULL is required, AT_VECTOR_SIZE should be changed from 44 to 46.

No, it should be computed instead from the number of target independent aux
vector pairs and then from an per-arch macro which says how many arch
specific aux vector pairs are needed.

Jakub
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/