Re: ELF file and GOT entries

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi...

On Tue, May 20, 2008 at 4:11 PM, Shyamal Shukla <shyamalshukla@xxxxxxxxx> wrote:
> The program is an extremely simple one, to get an idea as to where the stack
> and heap lie, by making calls to malloc, printf and sleep.
>
> #include <stdio.h>
>
> void some_func()
> {
>   printf("\n I am here\n");
> }
>
> int main(void)
> {
>   int var = 5;
>   int * iptr = malloc(sizeof(int));
>
>   printf("\n Addr of var = %p, Dynamically allocated memory at
> %p\n",&var,iptr);
>
>   sleep(500);
>
>   return 0;
> }
>
> Sleep(500) has been provided so that i can cat /proc/pid/maps
>
> Compiled simply using gcc prog_name.c
>
> I don't have LD_BIND_NOW defined on my system.

I don't have access to any Linux boxes, so I can't check your code
directly. From what I see, PLT section in your ELF should at least
contains entries for malloc(), printf, sleep.

Try my idea....use gdb to inspect your code.....make a breakpoint at
malloc() and printf(). SInce you say you don't use LD_BIND_NOW, once
you do the tracing via "step" (any gdb command that delve into the
code path), you can see by yourself which entry on GOT/PLT that it
takes.

regards,

Mulyadi.

--
To unsubscribe from this list: send an email with
"unsubscribe kernelnewbies" to ecartis@xxxxxxxxxxxx
Please read the FAQ at http://kernelnewbies.org/FAQ


[Index of Archives]     [Newbies FAQ]     [Linux Kernel Mentors]     [Linux Kernel Development]     [IETF Annouce]     [Git]     [Networking]     [Security]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux SCSI]     [Linux ACPI]
  Powered by Linux