Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ZAD 2
- #include <stdlib.h>
- #include <stdio.h>
- #include <unistd.h>
- #include <sys/types.h>
- int main(int argc, char** argv){
- uid_t uzytkownik;
- gid_t grupa;
- uid_t efuzytkownik;
- gid_t efgrupa;
- uzytkownik = getuid();
- grupa = getgid();
- efuzytkownik = geteuid();
- efgrupa = getegid();
- system(" id ");
- printf("Id uzytkownika : %d \n", uzytkownik);
- printf("Id grupy : %d\n", grupa);
- printf("Id efektywny uzytkownika : %d\n", efuzytkownik);
- printf("Id efektywny grupy : %d\n", efgrupa); //koniec pierwszego
- char katalog[150]; //zad3
- switch (pid_potomka){
- case -1:
- printf("brak rozwidlenia\n");
- exit(1);
- case 0:
- getcwd(katalog, sizeof(katalog));
- printf("katalog to %s\n", katalog);
- if(argv[1] = NULL)
- {
- printf("brak nazwy katalogu");
- exit(1);
- }
- else
- {
- strcpy(katalog, argv[1]);
- }
- chdir(katalog);
- getcwd(katalog, sizeof(katalog));
- printf("nowa wartosc katalogu to: %s\n", katalog);
- sleep(5);
- break;
- }
- setuid(0);
- setgid(0);
- seteuid(0);
- setegid(0);
- uzytkownik = getuid();
- grupa = getgid();
- efuzytkownik = geteuid();
- efgrupa = getegid();
- printf("Id uzytkownika : %d \n", uzytkownik);
- printf("Id grupy : %d\n", grupa);
- printf("Id efektywny uzytkownika : %d\n", efuzytkownik);
- printf("Id efektywny grupy : %d\n", efgrupa);
- system(" id "); //koniec 2, zeby sie cos zmienilo trzeba uruchomic z uprawnieniami
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement