122736c2fSopenharmony_ci# Copyright (c) 2024 Huawei Device Co., Ltd.
222736c2fSopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License");
322736c2fSopenharmony_ci# you may not use this file except in compliance with the License.
422736c2fSopenharmony_ci# You may obtain a copy of the License at
522736c2fSopenharmony_ci#
622736c2fSopenharmony_ci# http://www.apache.org/licenses/LICENSE-2.0
722736c2fSopenharmony_ci#
822736c2fSopenharmony_ci# Unless required by applicable law or agreed to in writing, software
922736c2fSopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS,
1022736c2fSopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1122736c2fSopenharmony_ci# See the License for the specific language governing permissions and
1222736c2fSopenharmony_ci# limitations under the License.
1322736c2fSopenharmony_ci
1422736c2fSopenharmony_ci# For now, it supports architechture of ['arm', 'arm64'].
1522736c2fSopenharmony_ci
1622736c2fSopenharmony_ci@returnValue
1722736c2fSopenharmony_ciTRAP
1822736c2fSopenharmony_ci
1922736c2fSopenharmony_ci@headFiles
2022736c2fSopenharmony_ci<linux/sched.h>
2122736c2fSopenharmony_ci<stdint.h>
2222736c2fSopenharmony_ci
2322736c2fSopenharmony_ci@priority
2422736c2fSopenharmony_ciioctl;all
2522736c2fSopenharmony_cifutex;all
2622736c2fSopenharmony_ci
2722736c2fSopenharmony_ci@allowList
2822736c2fSopenharmony_ciio_setup;all
2922736c2fSopenharmony_ciio_destroy;all
3022736c2fSopenharmony_ciio_submit;all
3122736c2fSopenharmony_ciio_cancel;all
3222736c2fSopenharmony_ciio_getevents;all
3322736c2fSopenharmony_cisetxattr;all
3422736c2fSopenharmony_cilsetxattr;all
3522736c2fSopenharmony_cifsetxattr;all
3622736c2fSopenharmony_cigetxattr;all
3722736c2fSopenharmony_cilgetxattr;all
3822736c2fSopenharmony_cifgetxattr;all
3922736c2fSopenharmony_cilistxattr;all
4022736c2fSopenharmony_cillistxattr;all
4122736c2fSopenharmony_ciflistxattr;all
4222736c2fSopenharmony_ciremovexattr;all
4322736c2fSopenharmony_cilremovexattr;all
4422736c2fSopenharmony_cifremovexattr;all
4522736c2fSopenharmony_cigetcwd;all
4622736c2fSopenharmony_cieventfd2;all
4722736c2fSopenharmony_ciepoll_create1;all
4822736c2fSopenharmony_ciepoll_ctl;all
4922736c2fSopenharmony_ciepoll_pwait;all
5022736c2fSopenharmony_cidup;all
5122736c2fSopenharmony_cidup3;all
5222736c2fSopenharmony_cifcntl;all
5322736c2fSopenharmony_ciinotify_init1;all
5422736c2fSopenharmony_ciinotify_add_watch;all
5522736c2fSopenharmony_ciinotify_rm_watch;all
5622736c2fSopenharmony_ciioctl;all
5722736c2fSopenharmony_ciioprio_set;arm64
5822736c2fSopenharmony_ciioprio_get;arm64
5922736c2fSopenharmony_ciflock;all
6022736c2fSopenharmony_cimknodat;all
6122736c2fSopenharmony_cimkdirat;all
6222736c2fSopenharmony_ciunlinkat;all
6322736c2fSopenharmony_cisymlinkat;all
6422736c2fSopenharmony_cilinkat;all
6522736c2fSopenharmony_cirenameat;arm
6622736c2fSopenharmony_cirenameat;arm64
6722736c2fSopenharmony_cistatfs;arm64
6822736c2fSopenharmony_cifstatfs;arm64
6922736c2fSopenharmony_citruncate;all
7022736c2fSopenharmony_ciftruncate;arm64
7122736c2fSopenharmony_cifallocate;all
7222736c2fSopenharmony_cifaccessat;all
7322736c2fSopenharmony_cichdir;all
7422736c2fSopenharmony_cifchdir;all
7522736c2fSopenharmony_cifchmod;all
7622736c2fSopenharmony_cifchmodat;all
7722736c2fSopenharmony_cifchownat;all
7822736c2fSopenharmony_cifchown;arm64
7922736c2fSopenharmony_ciopenat;all
8022736c2fSopenharmony_ciclose;all
8122736c2fSopenharmony_cipipe2;all
8222736c2fSopenharmony_ciquotactl;all
8322736c2fSopenharmony_cigetdents64;all
8422736c2fSopenharmony_cilseek;all
8522736c2fSopenharmony_ciread;all
8622736c2fSopenharmony_ciwrite;all
8722736c2fSopenharmony_cireadv;all
8822736c2fSopenharmony_ciwritev;all
8922736c2fSopenharmony_cipread64;all
9022736c2fSopenharmony_cipwrite64;all
9122736c2fSopenharmony_cipreadv;all
9222736c2fSopenharmony_cipwritev;all
9322736c2fSopenharmony_cipselect6;all
9422736c2fSopenharmony_cippoll;all
9522736c2fSopenharmony_cisignalfd4;all
9622736c2fSopenharmony_cisplice;all
9722736c2fSopenharmony_citee;all
9822736c2fSopenharmony_cireadlinkat;all
9922736c2fSopenharmony_cinewfstatat;arm64
10022736c2fSopenharmony_cifstat;arm64
10122736c2fSopenharmony_cisync;all
10222736c2fSopenharmony_cifsync;all
10322736c2fSopenharmony_cifdatasync;all
10422736c2fSopenharmony_cisync_file_range;arm64
10522736c2fSopenharmony_citimerfd_create;all
10622736c2fSopenharmony_citimerfd_settime;all
10722736c2fSopenharmony_citimerfd_gettime;all
10822736c2fSopenharmony_ciutimensat;all
10922736c2fSopenharmony_cicapget;all
11022736c2fSopenharmony_cicapset;all
11122736c2fSopenharmony_cipersonality;all
11222736c2fSopenharmony_ciexit;all
11322736c2fSopenharmony_ciexit_group;all
11422736c2fSopenharmony_ciwaitid;all
11522736c2fSopenharmony_ciset_tid_address;all
11622736c2fSopenharmony_cifutex;all
11722736c2fSopenharmony_cinanosleep;all
11822736c2fSopenharmony_cigetitimer;all
11922736c2fSopenharmony_cisetitimer;all
12022736c2fSopenharmony_citimer_create;all
12122736c2fSopenharmony_citimer_gettime;all
12222736c2fSopenharmony_citimer_getoverrun;all
12322736c2fSopenharmony_citimer_settime;all
12422736c2fSopenharmony_citimer_delete;all
12522736c2fSopenharmony_ciclock_gettime;all
12622736c2fSopenharmony_ciclock_getres;all
12722736c2fSopenharmony_ciclock_nanosleep;all
12822736c2fSopenharmony_ciptrace;all
12922736c2fSopenharmony_cisched_setparam;all
13022736c2fSopenharmony_cisched_setscheduler;all
13122736c2fSopenharmony_cisched_getscheduler;all
13222736c2fSopenharmony_cisched_getparam;all
13322736c2fSopenharmony_cisched_setaffinity;all
13422736c2fSopenharmony_cisched_getaffinity;all
13522736c2fSopenharmony_cisched_yield;all
13622736c2fSopenharmony_cisched_get_priority_max;all
13722736c2fSopenharmony_cisched_get_priority_min;all
13822736c2fSopenharmony_cisched_rr_get_interval;all
13922736c2fSopenharmony_cirestart_syscall;all
14022736c2fSopenharmony_cikill;all
14122736c2fSopenharmony_citkill;all
14222736c2fSopenharmony_citgkill;all
14322736c2fSopenharmony_cisigaltstack;all
14422736c2fSopenharmony_cirt_sigsuspend;all
14522736c2fSopenharmony_cirt_sigaction;all
14622736c2fSopenharmony_cirt_sigprocmask;all
14722736c2fSopenharmony_cirt_sigpending;all
14822736c2fSopenharmony_cirt_sigtimedwait;all
14922736c2fSopenharmony_cirt_sigqueueinfo;all
15022736c2fSopenharmony_cirt_sigreturn;all
15122736c2fSopenharmony_cisetpriority;all
15222736c2fSopenharmony_cigetpriority;all
15322736c2fSopenharmony_cisetresuid;arm64
15422736c2fSopenharmony_cigetresuid;arm64
15522736c2fSopenharmony_cigetresgid;arm64
15622736c2fSopenharmony_citimes;all
15722736c2fSopenharmony_cisetpgid;all
15822736c2fSopenharmony_cigetpgid;all
15922736c2fSopenharmony_cigetsid;all
16022736c2fSopenharmony_cisetsid;all
16122736c2fSopenharmony_cigetgroups;arm64
16222736c2fSopenharmony_ciuname;all
16322736c2fSopenharmony_cigetrlimit;arm64
16422736c2fSopenharmony_cisetrlimit;all
16522736c2fSopenharmony_cigetrusage;all
16622736c2fSopenharmony_ciumask;all
16722736c2fSopenharmony_ciprctl;all
16822736c2fSopenharmony_cigetcpu;all
16922736c2fSopenharmony_cigettimeofday;all
17022736c2fSopenharmony_cigetpid;all
17122736c2fSopenharmony_cigetppid;all
17222736c2fSopenharmony_cigetuid;all
17322736c2fSopenharmony_cigeteuid;arm64
17422736c2fSopenharmony_cigetgid;arm64
17522736c2fSopenharmony_cigetegid;arm64
17622736c2fSopenharmony_cigettid;all
17722736c2fSopenharmony_cisysinfo;all
17822736c2fSopenharmony_cisocket;all
17922736c2fSopenharmony_cibind;all
18022736c2fSopenharmony_ciconnect;all
18122736c2fSopenharmony_cisendto;all
18222736c2fSopenharmony_cirecvfrom;all
18322736c2fSopenharmony_cisetsockopt;all
18422736c2fSopenharmony_cigetsockopt;all
18522736c2fSopenharmony_cirecvmsg;all
18622736c2fSopenharmony_cireadahead;all
18722736c2fSopenharmony_cibrk;all
18822736c2fSopenharmony_cimunmap;all
18922736c2fSopenharmony_cimremap;all
19022736c2fSopenharmony_ciexecve;all
19122736c2fSopenharmony_cimmap;arm64
19222736c2fSopenharmony_cifadvise64;arm64
19322736c2fSopenharmony_cimprotect;all
19422736c2fSopenharmony_cimsync;all
19522736c2fSopenharmony_cimlock;all
19622736c2fSopenharmony_cimunlock;all
19722736c2fSopenharmony_cimlockall;all
19822736c2fSopenharmony_cimunlockall;all
19922736c2fSopenharmony_cimincore;all
20022736c2fSopenharmony_cimadvise;all
20122736c2fSopenharmony_cirt_tgsigqueueinfo;all
20222736c2fSopenharmony_ciperf_event_open;all
20322736c2fSopenharmony_ciwait4;all
20422736c2fSopenharmony_ciprlimit64;all
20522736c2fSopenharmony_cisyncfs;all
20622736c2fSopenharmony_cisendmmsg;all
20722736c2fSopenharmony_ciprocess_vm_readv;all
20822736c2fSopenharmony_ciprocess_vm_writev;all
20922736c2fSopenharmony_cisched_setattr;all
21022736c2fSopenharmony_cisched_getattr;all
21122736c2fSopenharmony_cirenameat2;all
21222736c2fSopenharmony_ciseccomp;all
21322736c2fSopenharmony_cigetrandom;all
21422736c2fSopenharmony_cimemfd_create;all
21522736c2fSopenharmony_ciexecveat;all
21622736c2fSopenharmony_ciuserfaultfd;all
21722736c2fSopenharmony_cimembarrier;all
21822736c2fSopenharmony_cimlock2;all
21922736c2fSopenharmony_cicopy_file_range;all
22022736c2fSopenharmony_cipreadv2;all
22122736c2fSopenharmony_cipwritev2;all
22222736c2fSopenharmony_cistatx;all
22322736c2fSopenharmony_cipidfd_send_signal;all
22422736c2fSopenharmony_cipidfd_open;all
22522736c2fSopenharmony_cipidfd_getfd;all
22622736c2fSopenharmony_cifaccessat2;all
22722736c2fSopenharmony_ciprocess_madvise;all
22822736c2fSopenharmony_ciset_robust_list;all
22922736c2fSopenharmony_cifork;arm
23022736c2fSopenharmony_ciopen;arm
23122736c2fSopenharmony_cicreat;arm
23222736c2fSopenharmony_cilink;arm
23322736c2fSopenharmony_ciunlink;arm
23422736c2fSopenharmony_cichmod;arm
23522736c2fSopenharmony_ciaccess;arm
23622736c2fSopenharmony_cirename;arm
23722736c2fSopenharmony_cimkdir;arm
23822736c2fSopenharmony_cirmdir;arm
23922736c2fSopenharmony_cipipe;arm
24022736c2fSopenharmony_cidup2;arm
24122736c2fSopenharmony_cisigaction;arm
24222736c2fSopenharmony_cisymlink;arm
24322736c2fSopenharmony_cireadlink;arm
24422736c2fSopenharmony_cisigreturn;arm
24522736c2fSopenharmony_ci_llseek;arm
24622736c2fSopenharmony_cigetdents;arm
24722736c2fSopenharmony_ci_newselect;arm
24822736c2fSopenharmony_cipoll;arm
24922736c2fSopenharmony_civfork;arm
25022736c2fSopenharmony_ciugetrlimit;arm
25122736c2fSopenharmony_cimmap2;arm
25222736c2fSopenharmony_citruncate64;arm
25322736c2fSopenharmony_ciftruncate64;arm
25422736c2fSopenharmony_cistat64;arm
25522736c2fSopenharmony_cilstat64;arm
25622736c2fSopenharmony_cifstat64;arm
25722736c2fSopenharmony_cilchown32;arm
25822736c2fSopenharmony_cigetuid32;arm
25922736c2fSopenharmony_cigetgid32;arm
26022736c2fSopenharmony_cigeteuid32;arm
26122736c2fSopenharmony_cigetegid32;arm
26222736c2fSopenharmony_cigetgroups32;arm
26322736c2fSopenharmony_cifchown32;arm
26422736c2fSopenharmony_cisetresuid32;arm
26522736c2fSopenharmony_cigetresuid32;arm
26622736c2fSopenharmony_cigetresgid32;arm
26722736c2fSopenharmony_cichown32;arm
26822736c2fSopenharmony_cifcntl64;arm
26922736c2fSopenharmony_ciepoll_create;arm
27022736c2fSopenharmony_ciepoll_wait;arm
27122736c2fSopenharmony_ciremap_file_pages;arm
27222736c2fSopenharmony_cistatfs64;arm
27322736c2fSopenharmony_cifstatfs64;arm
27422736c2fSopenharmony_cifadvise64_64;arm
27522736c2fSopenharmony_ciinotify_init;arm
27622736c2fSopenharmony_cifstatat64;arm
27722736c2fSopenharmony_cisync_file_range2;arm
27822736c2fSopenharmony_cieventfd;arm
27922736c2fSopenharmony_ciclock_gettime64;arm
28022736c2fSopenharmony_ciclock_settime64;arm
28122736c2fSopenharmony_ciclock_adjtime64;arm
28222736c2fSopenharmony_ciclock_getres_time64;arm
28322736c2fSopenharmony_ciclock_nanosleep_time64;arm
28422736c2fSopenharmony_citimer_gettime64;arm
28522736c2fSopenharmony_citimer_settime64;arm
28622736c2fSopenharmony_citimerfd_gettime64;arm
28722736c2fSopenharmony_citimerfd_settime64;arm
28822736c2fSopenharmony_ciutimensat_time64;arm
28922736c2fSopenharmony_cipselect6_time64;arm
29022736c2fSopenharmony_cippoll_time64;arm
29122736c2fSopenharmony_cisemtimedop_time64;arm
29222736c2fSopenharmony_cirt_sigtimedwait_time64;arm
29322736c2fSopenharmony_cifutex_time64;arm
29422736c2fSopenharmony_cisched_rr_get_interval_time64;arm
29522736c2fSopenharmony_cicacheflush;arm
29622736c2fSopenharmony_ciset_tls;arm
29722736c2fSopenharmony_ci
29822736c2fSopenharmony_ci@allowListWithArgs
29922736c2fSopenharmony_ciclone: if (arg0 & (CLONE_NEWNS | CLONE_NEWPID | CLONE_NEWNET | CLONE_NEWCGROUP | CLONE_NEWUTS | CLONE_NEWIPC | CLONE_NEWUSER)) == 0 ; return ALLOW; else return TRAP;all
300