summaryrefslogtreecommitdiffstats
path: root/libc/arch-arm/syscalls
diff options
context:
space:
mode:
authorStephen Smalley <sds@tycho.nsa.gov>2012-01-13 07:45:16 -0500
committerStephen Smalley <sds@tycho.nsa.gov>2012-01-18 08:02:23 -0500
commit5eb686d105ebd7cea332fd1ef0bb3af9386e19f7 (patch)
tree3df9e137dcdcc8b78cb9ca78aee8c5de50316e87 /libc/arch-arm/syscalls
parente30e909363c5c706f394050d9cd00ce222caadbf (diff)
downloadbionic-5eb686d105ebd7cea332fd1ef0bb3af9386e19f7.zip
bionic-5eb686d105ebd7cea332fd1ef0bb3af9386e19f7.tar.gz
bionic-5eb686d105ebd7cea332fd1ef0bb3af9386e19f7.tar.bz2
Add extended attribute (xattr) system call wrappers to bionic.
The xattr system calls are required for the SE Android userspace in order to get and set file security contexts. In particular, libselinux requires these calls. Change-Id: I78f5eb3d8f3384aed0a5e7c6a6f001781d982017
Diffstat (limited to 'libc/arch-arm/syscalls')
-rw-r--r--libc/arch-arm/syscalls/fgetxattr.S14
-rw-r--r--libc/arch-arm/syscalls/flistxattr.S14
-rw-r--r--libc/arch-arm/syscalls/fremovexattr.S14
-rw-r--r--libc/arch-arm/syscalls/fsetxattr.S16
-rw-r--r--libc/arch-arm/syscalls/getxattr.S14
-rw-r--r--libc/arch-arm/syscalls/lgetxattr.S14
-rw-r--r--libc/arch-arm/syscalls/listxattr.S14
-rw-r--r--libc/arch-arm/syscalls/llistxattr.S14
-rw-r--r--libc/arch-arm/syscalls/lremovexattr.S14
-rw-r--r--libc/arch-arm/syscalls/lsetxattr.S16
-rw-r--r--libc/arch-arm/syscalls/removexattr.S14
-rw-r--r--libc/arch-arm/syscalls/setxattr.S16
12 files changed, 174 insertions, 0 deletions
diff --git a/libc/arch-arm/syscalls/fgetxattr.S b/libc/arch-arm/syscalls/fgetxattr.S
new file mode 100644
index 0000000..32b8ef8
--- /dev/null
+++ b/libc/arch-arm/syscalls/fgetxattr.S
@@ -0,0 +1,14 @@
+/* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
+#include <sys/linux-syscalls.h>
+
+ENTRY(fgetxattr)
+ .save {r4, r7}
+ stmfd sp!, {r4, r7}
+ ldr r7, =__NR_fgetxattr
+ swi #0
+ ldmfd sp!, {r4, r7}
+ movs r0, r0
+ bxpl lr
+ b __set_syscall_errno
+END(fgetxattr)
diff --git a/libc/arch-arm/syscalls/flistxattr.S b/libc/arch-arm/syscalls/flistxattr.S
new file mode 100644
index 0000000..0785e77
--- /dev/null
+++ b/libc/arch-arm/syscalls/flistxattr.S
@@ -0,0 +1,14 @@
+/* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
+#include <sys/linux-syscalls.h>
+
+ENTRY(flistxattr)
+ .save {r4, r7}
+ stmfd sp!, {r4, r7}
+ ldr r7, =__NR_flistxattr
+ swi #0
+ ldmfd sp!, {r4, r7}
+ movs r0, r0
+ bxpl lr
+ b __set_syscall_errno
+END(flistxattr)
diff --git a/libc/arch-arm/syscalls/fremovexattr.S b/libc/arch-arm/syscalls/fremovexattr.S
new file mode 100644
index 0000000..ae97d13
--- /dev/null
+++ b/libc/arch-arm/syscalls/fremovexattr.S
@@ -0,0 +1,14 @@
+/* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
+#include <sys/linux-syscalls.h>
+
+ENTRY(fremovexattr)
+ .save {r4, r7}
+ stmfd sp!, {r4, r7}
+ ldr r7, =__NR_fremovexattr
+ swi #0
+ ldmfd sp!, {r4, r7}
+ movs r0, r0
+ bxpl lr
+ b __set_syscall_errno
+END(fremovexattr)
diff --git a/libc/arch-arm/syscalls/fsetxattr.S b/libc/arch-arm/syscalls/fsetxattr.S
new file mode 100644
index 0000000..176cad9
--- /dev/null
+++ b/libc/arch-arm/syscalls/fsetxattr.S
@@ -0,0 +1,16 @@
+/* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
+#include <sys/linux-syscalls.h>
+
+ENTRY(fsetxattr)
+ mov ip, sp
+ .save {r4, r5, r6, r7}
+ stmfd sp!, {r4, r5, r6, r7}
+ ldmfd ip, {r4, r5, r6}
+ ldr r7, =__NR_fsetxattr
+ swi #0
+ ldmfd sp!, {r4, r5, r6, r7}
+ movs r0, r0
+ bxpl lr
+ b __set_syscall_errno
+END(fsetxattr)
diff --git a/libc/arch-arm/syscalls/getxattr.S b/libc/arch-arm/syscalls/getxattr.S
new file mode 100644
index 0000000..18532ce
--- /dev/null
+++ b/libc/arch-arm/syscalls/getxattr.S
@@ -0,0 +1,14 @@
+/* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
+#include <sys/linux-syscalls.h>
+
+ENTRY(getxattr)
+ .save {r4, r7}
+ stmfd sp!, {r4, r7}
+ ldr r7, =__NR_getxattr
+ swi #0
+ ldmfd sp!, {r4, r7}
+ movs r0, r0
+ bxpl lr
+ b __set_syscall_errno
+END(getxattr)
diff --git a/libc/arch-arm/syscalls/lgetxattr.S b/libc/arch-arm/syscalls/lgetxattr.S
new file mode 100644
index 0000000..61fc098
--- /dev/null
+++ b/libc/arch-arm/syscalls/lgetxattr.S
@@ -0,0 +1,14 @@
+/* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
+#include <sys/linux-syscalls.h>
+
+ENTRY(lgetxattr)
+ .save {r4, r7}
+ stmfd sp!, {r4, r7}
+ ldr r7, =__NR_lgetxattr
+ swi #0
+ ldmfd sp!, {r4, r7}
+ movs r0, r0
+ bxpl lr
+ b __set_syscall_errno
+END(lgetxattr)
diff --git a/libc/arch-arm/syscalls/listxattr.S b/libc/arch-arm/syscalls/listxattr.S
new file mode 100644
index 0000000..6bbdb6a
--- /dev/null
+++ b/libc/arch-arm/syscalls/listxattr.S
@@ -0,0 +1,14 @@
+/* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
+#include <sys/linux-syscalls.h>
+
+ENTRY(listxattr)
+ .save {r4, r7}
+ stmfd sp!, {r4, r7}
+ ldr r7, =__NR_listxattr
+ swi #0
+ ldmfd sp!, {r4, r7}
+ movs r0, r0
+ bxpl lr
+ b __set_syscall_errno
+END(listxattr)
diff --git a/libc/arch-arm/syscalls/llistxattr.S b/libc/arch-arm/syscalls/llistxattr.S
new file mode 100644
index 0000000..89682df
--- /dev/null
+++ b/libc/arch-arm/syscalls/llistxattr.S
@@ -0,0 +1,14 @@
+/* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
+#include <sys/linux-syscalls.h>
+
+ENTRY(llistxattr)
+ .save {r4, r7}
+ stmfd sp!, {r4, r7}
+ ldr r7, =__NR_llistxattr
+ swi #0
+ ldmfd sp!, {r4, r7}
+ movs r0, r0
+ bxpl lr
+ b __set_syscall_errno
+END(llistxattr)
diff --git a/libc/arch-arm/syscalls/lremovexattr.S b/libc/arch-arm/syscalls/lremovexattr.S
new file mode 100644
index 0000000..62f6722
--- /dev/null
+++ b/libc/arch-arm/syscalls/lremovexattr.S
@@ -0,0 +1,14 @@
+/* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
+#include <sys/linux-syscalls.h>
+
+ENTRY(lremovexattr)
+ .save {r4, r7}
+ stmfd sp!, {r4, r7}
+ ldr r7, =__NR_lremovexattr
+ swi #0
+ ldmfd sp!, {r4, r7}
+ movs r0, r0
+ bxpl lr
+ b __set_syscall_errno
+END(lremovexattr)
diff --git a/libc/arch-arm/syscalls/lsetxattr.S b/libc/arch-arm/syscalls/lsetxattr.S
new file mode 100644
index 0000000..bde7c24
--- /dev/null
+++ b/libc/arch-arm/syscalls/lsetxattr.S
@@ -0,0 +1,16 @@
+/* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
+#include <sys/linux-syscalls.h>
+
+ENTRY(lsetxattr)
+ mov ip, sp
+ .save {r4, r5, r6, r7}
+ stmfd sp!, {r4, r5, r6, r7}
+ ldmfd ip, {r4, r5, r6}
+ ldr r7, =__NR_lsetxattr
+ swi #0
+ ldmfd sp!, {r4, r5, r6, r7}
+ movs r0, r0
+ bxpl lr
+ b __set_syscall_errno
+END(lsetxattr)
diff --git a/libc/arch-arm/syscalls/removexattr.S b/libc/arch-arm/syscalls/removexattr.S
new file mode 100644
index 0000000..1a44caf
--- /dev/null
+++ b/libc/arch-arm/syscalls/removexattr.S
@@ -0,0 +1,14 @@
+/* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
+#include <sys/linux-syscalls.h>
+
+ENTRY(removexattr)
+ .save {r4, r7}
+ stmfd sp!, {r4, r7}
+ ldr r7, =__NR_removexattr
+ swi #0
+ ldmfd sp!, {r4, r7}
+ movs r0, r0
+ bxpl lr
+ b __set_syscall_errno
+END(removexattr)
diff --git a/libc/arch-arm/syscalls/setxattr.S b/libc/arch-arm/syscalls/setxattr.S
new file mode 100644
index 0000000..e86fe9f
--- /dev/null
+++ b/libc/arch-arm/syscalls/setxattr.S
@@ -0,0 +1,16 @@
+/* autogenerated by gensyscalls.py */
+#include <machine/asm.h>
+#include <sys/linux-syscalls.h>
+
+ENTRY(setxattr)
+ mov ip, sp
+ .save {r4, r5, r6, r7}
+ stmfd sp!, {r4, r5, r6, r7}
+ ldmfd ip, {r4, r5, r6}
+ ldr r7, =__NR_setxattr
+ swi #0
+ ldmfd sp!, {r4, r5, r6, r7}
+ movs r0, r0
+ bxpl lr
+ b __set_syscall_errno
+END(setxattr)