ошибка: scmp_filter_ctx не было объявлено в этой области - PullRequest
0 голосов
/ 07 февраля 2019

Я получаю ошибку компиляции: error: ‘scmp_filter_ctx’ was not declared in this scope.
Я объявил фильтр seccomp.scmp_filter_ctx ctx;

Я включил библиотеку #include <linux/seccomp.h> и уже установил библиотеку libseccomp-dev, используя sudo apt-get install libseccomp-dev.

#include <stdlib.h>
#include <fcntl.h>
#include <sys/shm.h>
#include <unistd.h>
#include <sys/un.h>
#include <sys/wait.h>
#include <linux/seccomp.h>
#include <sys/prctl.h>
#include <sys/types.h>
#include <sys/stat.h>

#include <bits/stdc++.h>

void create_sandbox(){
scmp_filter_ctx ctx;
ctx = seccomp_init(SCMP_ACT_KILL); // default action: kill

seccomp_load(ctx);
}

1 Ответ

0 голосов
/ 08 февраля 2019

Мне удалось решить эту ошибку, используя следующее:

Заменил #include <linux/seccomp.h> на #include <seccomp.h> и во время компиляции использовал g++ filename.cpp -lseccomp.

Это сработало для меня.

...