diff options
author | Stephen Smalley <sds@tycho.nsa.gov> | 2012-01-13 07:45:16 -0500 |
---|---|---|
committer | Stephen Smalley <sds@tycho.nsa.gov> | 2012-01-18 08:02:23 -0500 |
commit | 5eb686d105ebd7cea332fd1ef0bb3af9386e19f7 (patch) | |
tree | 3df9e137dcdcc8b78cb9ca78aee8c5de50316e87 /libc/arch-arm/syscalls | |
parent | e30e909363c5c706f394050d9cd00ce222caadbf (diff) | |
download | bionic-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.S | 14 | ||||
-rw-r--r-- | libc/arch-arm/syscalls/flistxattr.S | 14 | ||||
-rw-r--r-- | libc/arch-arm/syscalls/fremovexattr.S | 14 | ||||
-rw-r--r-- | libc/arch-arm/syscalls/fsetxattr.S | 16 | ||||
-rw-r--r-- | libc/arch-arm/syscalls/getxattr.S | 14 | ||||
-rw-r--r-- | libc/arch-arm/syscalls/lgetxattr.S | 14 | ||||
-rw-r--r-- | libc/arch-arm/syscalls/listxattr.S | 14 | ||||
-rw-r--r-- | libc/arch-arm/syscalls/llistxattr.S | 14 | ||||
-rw-r--r-- | libc/arch-arm/syscalls/lremovexattr.S | 14 | ||||
-rw-r--r-- | libc/arch-arm/syscalls/lsetxattr.S | 16 | ||||
-rw-r--r-- | libc/arch-arm/syscalls/removexattr.S | 14 | ||||
-rw-r--r-- | libc/arch-arm/syscalls/setxattr.S | 16 |
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) |