/
test.c
40 lines (30 loc) · 1.02 KB
/
test.c
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
#include <stdio.h>
#include <stdlib.h>
#include "drop_privs.h"
int main(){
printf("Efective user: %s\n", get_effective_user_name());
printf("Real user: %s\n", get_user_name());
printf("\n");
printf("drop_privs temp\n");
int ret1 = drop_privileges(0);
printf("Efective user: %s\n", get_effective_user_name());
printf("Real user: %s\n", get_user_name());
printf("\n");
printf("restore privs\n");
int ret2 = restore_privileges();
printf("Efective user: %s\n", get_effective_user_name());
printf("Real user: %s\n", get_user_name());
printf("\n");
printf("drop_privs definitive\n");
int ret3 = drop_privileges(1);
printf("Efective user: %s\n", get_effective_user_name());
printf("Real user: %s\n", get_user_name());
printf("\n");
printf("restore privs\n");
int ret4 = restore_privileges();
printf("Efective user: %s\n", get_effective_user_name());
printf("Real user: %s\n", get_user_name());
printf("\n");
printf("return values: %d, %d, %d, %d\n", ret1, ret2, ret3, ret4);
return 0;
}