clab/c/ex5.c
2024-06-28 09:09:03 +01:00

22 lines
No EOL
653 B
C

#include <stdio.h>
#include <sys/mman.h>
#include <string.h>
int main(void)
{
char *data1 = "HELLO";
char data2[] = "Hello Master";
if (mprotect(data1, strlen(data1) + 1, PROT_WRITE) == 0)
{
data1[0] = (char)'F';
printf("Data1 is writable: %s, %p, %ld chars\n", data1, data1, strlen(data1));
printf("Data2 is writable: %s, %p, %ld chars\n", data2, data2, strlen(data2));
}
else
{
data2[0] = (char)'F';
printf("Data1 is not writable: %s, %p, %ld chars\n", data1, data1, strlen(data1));
printf("Data1 is not writable: %s, %p, %ld chars\n", data2, data2, strlen(data2));
}
}