aboutsummaryrefslogtreecommitdiffstats
path: root/meta-networking/recipes-support/chrony/chrony/arm_eabi.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta-networking/recipes-support/chrony/chrony/arm_eabi.patch')
-rw-r--r--meta-networking/recipes-support/chrony/chrony/arm_eabi.patch57
1 files changed, 57 insertions, 0 deletions
diff --git a/meta-networking/recipes-support/chrony/chrony/arm_eabi.patch b/meta-networking/recipes-support/chrony/chrony/arm_eabi.patch
new file mode 100644
index 0000000000..d1586bba46
--- /dev/null
+++ b/meta-networking/recipes-support/chrony/chrony/arm_eabi.patch
@@ -0,0 +1,57 @@
+ chrony: fix build failure for arma9
+
+ Eliminate references to syscalls not available
+ for ARM_EABI. Also add a dependency on libseccomp
+ which is needed for scfilter to work.
+
+ Set PACKAGECONFIG to not enable scfilter, since
+ kernel CONFIG_SECCOMP is unlikely to be set. This
+ aligns the usage of libseccomp with that of other packages.
+
+ Upstream-Status: Pending
+
+ Signed-off-by: Joe Slater <jslater@windriver.com>
+
+--- a/sys_linux.c
++++ b/sys_linux.c
+@@ -453,13 +453,12 @@ SYS_Linux_EnableSystemCallFilter(int lev
+ const int syscalls[] = {
+ /* Clock */
+ SCMP_SYS(adjtimex), SCMP_SYS(gettimeofday), SCMP_SYS(settimeofday),
+- SCMP_SYS(time),
+ /* Process */
+- SCMP_SYS(clone), SCMP_SYS(exit), SCMP_SYS(exit_group), SCMP_SYS(getrlimit),
++ SCMP_SYS(clone), SCMP_SYS(exit), SCMP_SYS(exit_group),
+ SCMP_SYS(rt_sigaction), SCMP_SYS(rt_sigreturn), SCMP_SYS(rt_sigprocmask),
+ SCMP_SYS(set_tid_address), SCMP_SYS(sigreturn), SCMP_SYS(wait4),
+ /* Memory */
+- SCMP_SYS(brk), SCMP_SYS(madvise), SCMP_SYS(mmap), SCMP_SYS(mmap2),
++ SCMP_SYS(brk), SCMP_SYS(madvise), SCMP_SYS(mmap2),
+ SCMP_SYS(mprotect), SCMP_SYS(mremap), SCMP_SYS(munmap), SCMP_SYS(shmdt),
+ /* Filesystem */
+ SCMP_SYS(access), SCMP_SYS(chmod), SCMP_SYS(chown), SCMP_SYS(chown32),
+@@ -470,14 +469,21 @@ SYS_Linux_EnableSystemCallFilter(int lev
+ SCMP_SYS(bind), SCMP_SYS(connect), SCMP_SYS(getsockname),
+ SCMP_SYS(recvfrom), SCMP_SYS(recvmsg), SCMP_SYS(sendmmsg),
+ SCMP_SYS(sendmsg), SCMP_SYS(sendto),
+- /* TODO: check socketcall arguments */
+- SCMP_SYS(socketcall),
+ /* General I/O */
+ SCMP_SYS(_newselect), SCMP_SYS(close), SCMP_SYS(open), SCMP_SYS(pipe),
+- SCMP_SYS(poll), SCMP_SYS(read), SCMP_SYS(futex), SCMP_SYS(select),
++ SCMP_SYS(poll), SCMP_SYS(read), SCMP_SYS(futex),
+ SCMP_SYS(set_robust_list), SCMP_SYS(write),
+ /* Miscellaneous */
+ SCMP_SYS(uname),
++ /* not always available */
++#if ! defined(__ARM_EABI__)
++ SCMP_SYS(time),
++ SCMP_SYS(getrlimit),
++ SCMP_SYS(select),
++ SCMP_SYS(mmap),
++ /* TODO: check socketcall arguments */
++ SCMP_SYS(socketcall),
++#endif
+ };
+
+ const int socket_domains[] = {