Securecoding lab 3 - archie-archana/securecodinglab GitHub Wiki
SYSCALL,GETPID #include <syscall.h> #include <unistd.h> #include <stdio.h> #include <sys/types.h> int main(void) { long ID1, ID2;
ID1 = syscall(SYS_getpid); printf ("syscall(SYS_getpid)=%ld\n",ID1); /* "libc" wrapped system call / / SYS_getpid (Func No. is 20) */ ID2 = getpid(); printf ("getpid()=%ld\n", ID2); return(0); }
#include <syscall.h> #include <unistd.h> #include <stdio.h> #include <sys/types.h> main() { int return_value; printf("Forking process\n"); return_value = fork(); printf("The process id is %d and return value is %d\n", getpid(), return_value); printf("This line is not printed\n"); }
EXEC
#include <stdio.h> #include <unistd.h> #include <stdlib.h> int main(int argc, char *argv[]) { { printf("PID = %d\n", getpid()); char *args[] = {"Hello", "C", "Programming", NULL}; execv("./hello", args); printf("Back to exec.c - This line will not be executed"); return 0; } }
//hello file
#include <stdio.h> #include <unistd.h> #include <stdlib.h> int main(int argc, char *argv[]) { printf("We are in Hello.c\n"); printf("PID of hello.c = %d\n", getpid()); return 0;
}