#
# Copyright (C) 2015 The Android Open Source Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#      http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#

# Tested on link
gettid: 1
getuid: 1
geteuid: 1
getgid: 1
getegid: 1
getresuid: 1
getresgid: 1

clock_getres: 1
clock_gettime: 1
gettimeofday: 1
time: 1

# Allow socket(domain==PF_LOCAL) or socket(domain==PF_NETLINK)
socket: arg0 == 0x1 || arg0 == 0x10
socketpair: 1
connect: 1
getsockname: 1
pipe: 1
sendmsg: 1
sendto: 1
recvmsg: 1
recvfrom: 1

epoll_create: 1
epoll_wait: 1
epoll_ctl: 1
poll: 1

open: 1
openat: 1
creat: 1
read: 1
write: 1
close: 1
access: 1
rename: 1
pwrite64: 1

chmod: 1
fsync: 1
fdatasync: 1
fstat: 1
stat: 1
lseek: 1
fcntl: 1

futex: 1
set_robust_list: 1
restart_syscall: 1
exit: 1
exit_group: 1
rt_sigaction: 1
rt_sigreturn: 1
rt_sigprocmask: 1
signalfd4: 1

brk: 1
mmap: 1
madvise: 1
mprotect: 1
munmap: 1

clone: 1
# These calls are attempted but apparently not necessary; return EPERM.
prctl: return 1
ioctl: return 1
tgkill: return 1
getpid: 1
