Re: N00b questions :\

From: Janus N. (janusat_private)
Date: Sat May 24 2003 - 18:28:10 PDT

  • Next message: Joel Eriksson: "Re: [Vuln-dev Challenge] Challenge #2 (return-to-libc)"

    On Sun, 2003-05-25 at 03:42, northern snowfall wrote:
    > >GCC sometimes allocates more memory for each variable on the stack than
    > >is actually requested. I have no idea exactly why and what is does --
    > >but I assume it is some small optimization.
    > >
    > FYI, compilers (are supposed to) align memory to the requirement of the
    > underlying architecture. Most processors will throw an alignment_error
    > exception if an opcode attempts to pass an unaligned address to it.
    > This is done simply by padding the stack so that each auto variable is
    > given a properly aligned memory address.
    Oh yeah ... true. But isn't this 32-bit on the ia32? GCC 3.x allocates
    way more than is neccessary to have it aligned. The vulndev-2 buffer of
    90 bytes should be 92 right? But gcc allocates 108. Why does it do this
    extra padding then?
    
    Janus
    -- 
    Janus N. Tøndering <janusat_private>
    



    This archive was generated by hypermail 2b30 : Sat May 24 2003 - 20:40:30 PDT