Question
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
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
Show 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.
Given the program below: includeStep by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started