aboutsummaryrefslogtreecommitdiff
blob: bdc852db4666beb668a8ec000b2788225da7c1b2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
diff -Naur sandbox-2.14.orig/headers.h sandbox-2.14/headers.h
--- sandbox-2.14.orig/headers.h	2018-02-19 15:48:16.000000000 +0000
+++ sandbox-2.14/headers.h	2019-09-09 15:38:19.826000640 +0000
@@ -148,12 +148,14 @@
 # define ia64_fpreg FU_ia64_fpreg
 # define pt_all_user_regs FU_pt_all_user_regs
 #endif
+/*
 #ifdef HAVE_ASM_PTRACE_H
 # include <asm/ptrace.h>
 #endif
 #ifdef HAVE_LINUX_PTRACE_H
 # include <linux/ptrace.h>
 #endif
+*/
 #undef FU_ia64_fpreg
 #undef FU_pt_all_user_regs
 
diff -Naur sandbox-2.14.orig/libsandbox/trace.c sandbox-2.14/libsandbox/trace.c
--- sandbox-2.14.orig/libsandbox/trace.c	2018-02-19 15:48:16.000000000 +0000
+++ sandbox-2.14/libsandbox/trace.c	2019-09-09 15:38:07.614344692 +0000
@@ -10,7 +10,7 @@
 #include "sb_nr.h"
 
 static long do_peekdata(long offset);
-static long _do_ptrace(enum __ptrace_request request, const char *srequest, void *addr, void *data);
+static long _do_ptrace(int request, const char *srequest, void *addr, void *data);
 #define do_ptrace(request, addr, data) _do_ptrace(request, #request, addr, data)
 #define _trace_possible(data) true
 
@@ -44,7 +44,7 @@
 	_exit(status);
 }
 
-static long _do_ptrace(enum __ptrace_request request, const char *srequest, void *addr, void *data)
+static long _do_ptrace(int request, const char *srequest, void *addr, void *data)
 {
 	long ret;
  try_again:
diff -Naur sandbox-2.14.orig/scripts/gen_symbol_header.awk sandbox-2.14/scripts/gen_symbol_header.awk
--- sandbox-2.14.orig/scripts/gen_symbol_header.awk	2018-02-19 15:48:16.000000000 +0000
+++ sandbox-2.14/scripts/gen_symbol_header.awk	2019-09-09 15:38:07.614344692 +0000
@@ -161,7 +161,7 @@
 				else
 					printf("symbol_version(%s, %s, %s);\n",
 					       sym_real_name, sym_index, symbol_array[2]);
-			} else {
+			} else if (!(sym_index ~ 64)) {
 				# For non-versioned libc's we use strong aliases
 				printf("strong_alias(%s, %s);\n", sym_real_name,
 				       sym_index);