Question: Given the program below: #include #include void foo(int a, int b, int c) { int tmp; a=2; tmp = b+c*a; } right-to-left local variables ->

Given the program below:

#include

#include

void foo(int a, int b, int c)

{

int tmp;

a=2;

tmp = b+c*a;

} <----------

int main(int argc, char * argv[])

{

int pass = 0;

char buff[15];

foo(3,4,5);

printf(" Enter the password : ");

gets(buff);

if(strcmp(buff, "testpilot"))

{

printf (" Wrong Password ");

}

else

{

printf (" Correct Password ");

pass = 1;

}

if(pass)

{

/* Now Give root or admin rights to user*/

printf (" Root privileges given to the user ");

}

return 0;

}

Assume the program is in a file called: test.c

It is compiled and linked using gcc test. c a test

and is executed as ./test

The activation records up to where the arrow indicates:

Parameter -> right-to-left local variables -> top-to-bottom word size is 32 bits

Show what input, other than testpilot will give root privileges. _______________

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!