Собственно проблема описана в заголовке.
Пример кода который я пытаюсь исполнить:
#include <sys/mman.h>
#include <stdio.h>
#include <stdlib.h>
int main() {
char* code = malloc(4);
int i = 0;
code[i++] = 0x48;
code[i++] = 0x89;
code[i++] = 0xf8;
code[i++] = 0xc3;
printf("%i\n", mprotect(code,4,PROT_EXEC)); // напечатает -1
}
Грешил на то что виноват SELinux, но его в системе не было, что можно предпринять чтобы заставить mprotect,mmap и прочее работать?