Remove CHECK_STRING, CHECK_STRING_NULL_OK and __ubp_memchr.

This commit is contained in:
Joseph Myers 2013-02-04 16:29:39 +00:00
parent 903ae060db
commit 6277fdabc0
39 changed files with 143 additions and 130 deletions

View file

@ -1,3 +1,66 @@
2013-02-04 Joseph Myers <joseph@codesourcery.com>
[BZ #13550]
* sysdeps/generic/bp-checks.h [__BOUNDED_POINTERS__]
(__ubp_memchr): Remove prototype.
[__BOUNDED_POINTERS__] (_CHECK_STRING): Remove macro.
[__BOUNDED_POINTERS__] (CHECK_STRING): Likewise.
[__BOUNDED_POINTERS__] (CHECK_STRING_NULL_OK): Likewise.
[!__BOUNDED_POINTERS__] (CHECK_STRING): Likewise.
* sysdeps/i386/memchr.S [!__BOUNDED_POINTERS__] (__ubp_memchr):
Remove alias.
* sysdeps/sparc/sparc32/memchr.S [!__BOUNDED_POINTERS__]
(__ubp_memchr): Likewise.
* sysdeps/sparc/sparc64/memchr.S [!__BOUNDED_POINTERS__]
(__ubp_memchr): Likewise.
* sysdeps/unix/sysv/linux/execve.c: Do not include <bp-checks.h>.
(__execve) [__BOUNDED_POINTERS__]: Remove conditional code.
(__execve) [!__BOUNDED_POINTERS__]: Make code unconditional.
* sysdeps/unix/sysv/linux/fxstatat.c (__fxstatat): Do not use
CHECK_STRING.
* sysdeps/unix/sysv/linux/fxstatat64.c (__fxstatat64): Likewise.
* sysdeps/unix/sysv/linux/getcwd.c: Do not include <bp-checks.h>.
(__getcwd): Do not use CHECK_STRING.
* sysdeps/unix/sysv/linux/i386/chown.c: Do not include
<bp-checks.h>.
(__real_chown): Do not use CHECK_STRING.
* sysdeps/unix/sysv/linux/i386/fchownat.c: Do not include
<bp-checks.h>.
(fchownat): Do not use CHECK_STRING.
* sysdeps/unix/sysv/linux/i386/fxstatat.c (__fxstatat): Do not use
CHECK_STRING.
* sysdeps/unix/sysv/linux/i386/lchown.c: Do not include
<bp-checks.h>.
(__lchown): Do not use CHECK_STRING.
* sysdeps/unix/sysv/linux/i386/lxstat.c (__lxstat): Likewise.
* sysdeps/unix/sysv/linux/i386/xstat.c (__xstat): Likewise.
* sysdeps/unix/sysv/linux/lxstat.c (__lxstat): Likewise.
* sysdeps/unix/sysv/linux/lxstat64.c (___lxstat64): Likewise.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/truncate64.c: Do not
include <bp-checks.h>.
(truncate64): Do not use CHECK_STRING.
* sysdeps/unix/sysv/linux/s390/s390-32/chown.c: Do not include
<bp-checks.h>.
(__real_chown): Do not use CHECK_STRING.
* sysdeps/unix/sysv/linux/s390/s390-32/lchown.c: Do not include
<bp-checks.h>.
(__lchown): Do not use CHECK_STRING.
* sysdeps/unix/sysv/linux/sh/chown.c: Do not include
<bp-checks.h>.
(__chown): Do not use CHECK_STRING.
* sysdeps/unix/sysv/linux/truncate64.c: Do not include
<bp-checks.h>.
(truncate64): Do not use CHECK_STRING.
* sysdeps/unix/sysv/linux/wordsize-64/lxstat.c (__lxstat):
Likewise.
* sysdeps/unix/sysv/linux/xmknod.c: Do not include <bp-checks.h>.
(__xmknod): Do not use CHECK_STRING.
* sysdeps/unix/sysv/linux/xmknodat.c: Do not include
<bp-checks.h>.
(__xmknodat): Do not use CHECK_STRING.
* sysdeps/unix/sysv/linux/xstat.c (__xstat): Likewise.
* sysdeps/unix/sysv/linux/xstat64.c (___xstat64): Likewise.
2013-02-04 Andreas Schwab <schwab@suse.de>
[BZ #14142]

View file

@ -1,3 +1,10 @@
2013-02-04 Joseph Myers <joseph@codesourcery.com>
[BZ #13550]
* sysdeps/unix/sysv/linux/arm/truncate64.c: Do not include
<bp-checks.h>.
(truncate64): Do not use CHECK_STRING.
2013-01-02 Joseph Myers <joseph@codesourcery.com>
* All files with FSF copyright notices: Update copyright dates

View file

@ -1,3 +1,12 @@
2013-02-04 Joseph Myers <joseph@codesourcery.com>
[BZ #13550]
* sysdeps/ia64/memchr.S [!__BOUNDED_POINTERS__] (__ubp_memchr):
Remove alias.
* sysdeps/unix/sysv/linux/ia64/umount.c: Do not include
<bp-checks.h>.
(umount): Do not use CHECK_STRING.
2013-01-31 Joseph Myers <joseph@codesourcery.com>
[BZ #13550]

View file

@ -1,3 +1,9 @@
2013-02-04 Joseph Myers <joseph@codesourcery.com>
[BZ #13550]
* sysdeps/m68k/memchr.S [!__BOUNDED_POINTERS__] (__ubp_memchr):
Remove alias.
2013-01-20 Andreas Schwab <schwab@linux-m68k.org>
* sysdeps/m68k/m680x0/fpu/libm-test-ulps: Update.

View file

@ -1,3 +1,19 @@
2013-02-04 Joseph Myers <joseph@codesourcery.com>
[BZ #13550]
* sysdeps/unix/sysv/linux/mips/mips32/truncate64.c: Do not include
<bp-checks.h>.
(truncate64): Do not use CHECK_STRING.
* sysdeps/unix/sysv/linux/mips/mips64/fxstatat64.c: Do not include
<bp-checks.h>.
(__fxstatat64): Do not use CHECK_STRING.
* sysdeps/unix/sysv/linux/mips/mips64/lxstat64.c: Do not include
<bp-checks.h>.
(__lxstat64): Do not use CHECK_STRING.
* sysdeps/unix/sysv/linux/mips/mips64/xstat64.c: Do not include
<bp-checks.h>.
(__xstat64): Do not use CHECK_STRING.
2013-01-31 Joseph Myers <joseph@codesourcery.com>
[BZ #13550]

View file

@ -154,7 +154,4 @@ ENTRY(__memchr)
END(__memchr)
weak_alias (__memchr, memchr)
#if !__BOUNDED_POINTERS__
weak_alias (__memchr, __ubp_memchr)
#endif
libc_hidden_builtin_def (memchr)

View file

@ -304,7 +304,4 @@ L(L9:)
END(__memchr)
weak_alias (__memchr, memchr)
#if !__BOUNDED_POINTERS__
weak_alias (__memchr, __ubp_memchr)
#endif
libc_hidden_builtin_def (memchr)

View file

@ -22,7 +22,6 @@
#include <sysdep.h>
#include <sys/syscall.h>
#include <bp-checks.h>
/* Truncate the file FD refers to to LENGTH bytes. */
int
@ -30,7 +29,7 @@ truncate64 (const char *path, off64_t length)
{
unsigned int low = length & 0xffffffff;
unsigned int high = length >> 32;
int result = INLINE_SYSCALL (truncate64, 4, CHECK_STRING (path), 0,
int result = INLINE_SYSCALL (truncate64, 4, path, 0,
__LONG_LONG_PAIR (high, low));
return result;
}

View file

@ -20,11 +20,10 @@
#include <errno.h>
#include <sysdep.h>
#include <bp-checks.h>
/* Unmount a filesystem. */
int
umount (const char *special_file)
{
return INLINE_SYSCALL (umount, 2, CHECK_STRING (special_file), 0);
return INLINE_SYSCALL (umount, 2, special_file, 0);
}

View file

@ -22,7 +22,6 @@
#include <sysdep.h>
#include <sys/syscall.h>
#include <bp-checks.h>
/* Truncate the file FD refers to to LENGTH bytes. */
int
@ -30,7 +29,7 @@ truncate64 (const char *path, off64_t length)
{
unsigned int low = length & 0xffffffff;
unsigned int high = length >> 32;
int result = INLINE_SYSCALL (truncate64, 4, CHECK_STRING (path), 0,
int result = INLINE_SYSCALL (truncate64, 4, path, 0,
__LONG_LONG_PAIR (high, low));
return result;
}

View file

@ -25,7 +25,6 @@
#include <sysdep.h>
#include <sys/syscall.h>
#include <bp-checks.h>
#include <kernel-features.h>
@ -96,11 +95,9 @@ __fxstatat64 (int vers, int fd, const char *file, struct stat64 *st, int flag)
}
if (flag & AT_SYMLINK_NOFOLLOW)
result = INTERNAL_SYSCALL (lstat, err, 2, CHECK_STRING (file),
__ptrvalue (&kst));
result = INTERNAL_SYSCALL (lstat, err, 2, file, __ptrvalue (&kst));
else
result = INTERNAL_SYSCALL (stat, err, 2, CHECK_STRING (file),
__ptrvalue (&kst));
result = INTERNAL_SYSCALL (stat, err, 2, file, __ptrvalue (&kst));
if (__builtin_expect (!INTERNAL_SYSCALL_ERROR_P (result, err), 1))
return __xstat64_conv (vers, &kst, st);

View file

@ -23,7 +23,6 @@
#include <sysdep.h>
#include <sys/syscall.h>
#include <bp-checks.h>
#include <xstatconv.h>
@ -34,7 +33,7 @@ __lxstat64 (int vers, const char *name, struct stat64 *buf)
int result;
struct kernel_stat kbuf;
result = INLINE_SYSCALL (lstat, 2, CHECK_STRING (name), __ptrvalue (&kbuf));
result = INLINE_SYSCALL (lstat, 2, name, __ptrvalue (&kbuf));
if (result == 0)
result = __xstat64_conv (vers, &kbuf, buf);

View file

@ -23,7 +23,6 @@
#include <sysdep.h>
#include <sys/syscall.h>
#include <bp-checks.h>
#include <xstatconv.h>
@ -35,7 +34,7 @@ __xstat64 (int vers, const char *name, struct stat64 *buf)
int result;
struct kernel_stat kbuf;
result = INLINE_SYSCALL (stat, 2, CHECK_STRING (name), __ptrvalue (&kbuf));
result = INLINE_SYSCALL (stat, 2, name, __ptrvalue (&kbuf));
if (result == 0)
result = __xstat64_conv (vers, &kbuf, buf);

View file

@ -41,16 +41,6 @@
&& BOUNDS_VIOLATED), \
__ptrvalue (ARG))
extern void *__unbounded __ubp_memchr (const void *__unbounded, int, unsigned);
# define _CHECK_STRING(ARG, COND) \
(((COND) \
&& (__ptrvalue (ARG) < __ptrlow (ARG) \
|| !__ubp_memchr (__ptrvalue (ARG), '\0', \
(__ptrhigh (ARG) - __ptrvalue (ARG)))) \
&& BOUNDS_VIOLATED), \
__ptrvalue (ARG))
/* Check bounds of a pointer seated to an array of N objects. */
# define CHECK_N(ARG, N) _CHECK_N ((ARG), (N), 1)
/* Same as CHECK_N, but tolerate ARG == NULL. */
@ -61,11 +51,6 @@ extern void *__unbounded __ubp_memchr (const void *__unbounded, int, unsigned);
/* Same as CHECK_1, but tolerate ARG == NULL. */
# define CHECK_1_NULL_OK(ARG) CHECK_N_NULL_OK ((ARG), 1)
/* Check for NUL-terminator within string's bounds. */
# define CHECK_STRING(ARG) _CHECK_STRING ((ARG), 1)
/* Same as CHECK_STRING, but tolerate ARG == NULL. */
# define CHECK_STRING_NULL_OK(ARG) _CHECK_STRING ((ARG), __ptrvalue (ARG))
#else /* !__BOUNDED_POINTERS__ */
/* Do nothing if not compiling with -fbounded-pointers. */
@ -77,7 +62,6 @@ extern void *__unbounded __ubp_memchr (const void *__unbounded, int, unsigned);
# define CHECK_1_NULL_OK(ARG) (ARG)
# define CHECK_N(ARG, N) (ARG)
# define CHECK_N_NULL_OK(ARG, N) (ARG)
# define CHECK_STRING(ARG) (ARG)
#endif /* !__BOUNDED_POINTERS__ */

View file

@ -333,7 +333,4 @@ L(pop): popl %edi /* pop saved registers */
END (BP_SYM (__memchr))
weak_alias (BP_SYM (__memchr), BP_SYM (memchr))
#if !__BOUNDED_POINTERS__
weak_alias (__memchr, __ubp_memchr)
#endif
libc_hidden_builtin_def (memchr)

View file

@ -139,7 +139,4 @@ ENTRY(__memchr)
END(__memchr)
weak_alias (__memchr, memchr)
#if !__BOUNDED_POINTERS__
weak_alias (__memchr, __ubp_memchr)
#endif
libc_hidden_builtin_def (memchr)

View file

@ -256,7 +256,4 @@ ENTRY(__memchr)
END(__memchr)
weak_alias (__memchr, memchr)
#if !__BOUNDED_POINTERS__
weak_alias (__memchr, __ubp_memchr)
#endif
libc_hidden_builtin_def (memchr)

View file

@ -21,7 +21,8 @@
#include <sysdep.h>
#include <alloca.h>
#include <sys/syscall.h>
#include <bp-checks.h>
/* Consider moving to syscalls.list. */
int
__execve (file, argv, envp)
@ -29,34 +30,6 @@ __execve (file, argv, envp)
char *const argv[];
char *const envp[];
{
#if __BOUNDED_POINTERS__
{
char *const *v;
int i;
char *__unbounded *__unbounded ubp_argv;
char *__unbounded *__unbounded ubp_envp;
char *__unbounded *__unbounded ubp_v;
for (v = argv; *v; v++)
;
i = v - argv + 1;
ubp_argv = (char *__unbounded *__unbounded) alloca (sizeof (*ubp_argv) * i);
for (v = argv, ubp_v = ubp_argv; --i; v++, ubp_v++)
*ubp_v = CHECK_STRING (*v);
*ubp_v = 0;
for (v = envp; *v; v++)
;
i = v - envp + 1;
ubp_envp = (char *__unbounded *__unbounded) alloca (sizeof (*ubp_envp) * i);
for (v = envp, ubp_v = ubp_envp; --i; v++, ubp_v++)
*ubp_v = CHECK_STRING (*v);
*ubp_v = 0;
return INLINE_SYSCALL (execve, 3, CHECK_STRING (file), ubp_argv, ubp_envp);
}
#else
return INLINE_SYSCALL (execve, 3, file, argv, envp);
#endif
}
weak_alias (__execve, execve)

View file

@ -109,10 +109,10 @@ __fxstatat (int vers, int fd, const char *file, struct stat *st, int flag)
if (vers == _STAT_VER_KERNEL)
{
if (flag & AT_SYMLINK_NOFOLLOW)
result = INTERNAL_SYSCALL (lstat, err, 2, CHECK_STRING (file),
result = INTERNAL_SYSCALL (lstat, err, 2, file,
CHECK_1 ((struct kernel_stat *) st));
else
result = INTERNAL_SYSCALL (stat, err, 2, CHECK_STRING (file),
result = INTERNAL_SYSCALL (stat, err, 2, file,
CHECK_1 ((struct kernel_stat *) st));
if (__builtin_expect (!INTERNAL_SYSCALL_ERROR_P (result, err), 1))
@ -126,11 +126,9 @@ __fxstatat (int vers, int fd, const char *file, struct stat *st, int flag)
}
#else
if (flag & AT_SYMLINK_NOFOLLOW)
result = INTERNAL_SYSCALL (lstat, err, 2, CHECK_STRING (file),
__ptrvalue (&kst));
result = INTERNAL_SYSCALL (lstat, err, 2, file, __ptrvalue (&kst));
else
result = INTERNAL_SYSCALL (stat, err, 2, CHECK_STRING (file),
__ptrvalue (&kst));
result = INTERNAL_SYSCALL (stat, err, 2, file, __ptrvalue (&kst));
if (__builtin_expect (!INTERNAL_SYSCALL_ERROR_P (result, err), 1))
return __xstat_conv (vers, &kst, st);

View file

@ -99,11 +99,9 @@ __fxstatat64 (int vers, int fd, const char *file, struct stat64 *st, int flag)
}
if (flag & AT_SYMLINK_NOFOLLOW)
result = INTERNAL_SYSCALL (lstat64, err, 2, CHECK_STRING (file),
CHECK_1 (st));
result = INTERNAL_SYSCALL (lstat64, err, 2, file, CHECK_1 (st));
else
result = INTERNAL_SYSCALL (stat64, err, 2, CHECK_STRING (file),
CHECK_1 (st));
result = INTERNAL_SYSCALL (stat64, err, 2, file, CHECK_1 (st));
if (__builtin_expect (!INTERNAL_SYSCALL_ERROR_P (result, err), 1))
{
# if defined _HAVE_STAT64___ST_INO && __ASSUME_ST_INO_64_BIT == 0

View file

@ -26,7 +26,6 @@
#include <sysdep.h>
#include <sys/syscall.h>
#include <bp-checks.h>
#include <kernel-features.h>
@ -78,7 +77,7 @@ __getcwd (char *buf, size_t size)
int retval;
retval = INLINE_SYSCALL (getcwd, 2, CHECK_STRING (path), alloc_size);
retval = INLINE_SYSCALL (getcwd, 2, path, alloc_size);
if (retval >= 0)
{
#ifndef NO_ALLOCATION

View file

@ -21,7 +21,6 @@
#include <sysdep.h>
#include <sys/syscall.h>
#include <shlib-compat.h>
#include <bp-checks.h>
#include <linux/posix_types.h>
@ -45,7 +44,7 @@ extern int __real_chown (const char *__file, uid_t __owner, gid_t __group);
int
__real_chown (const char *file, uid_t owner, gid_t group)
{
return INLINE_SYSCALL (chown32, 3, CHECK_STRING (file), owner, group);
return INLINE_SYSCALL (chown32, 3, file, owner, group);
}

View file

@ -24,7 +24,6 @@
#include <sysdep.h>
#include <sys/syscall.h>
#include <shlib-compat.h>
#include <bp-checks.h>
#include <linux/posix_types.h>
#include <kernel-features.h>
@ -86,11 +85,9 @@ fchownat (int fd, const char *file, uid_t owner, gid_t group, int flag)
INTERNAL_SYSCALL_DECL (err);
if (flag & AT_SYMLINK_NOFOLLOW)
result = INTERNAL_SYSCALL (lchown32, err, 3, CHECK_STRING (file), owner,
group);
result = INTERNAL_SYSCALL (lchown32, err, 3, file, owner, group);
else
result = INTERNAL_SYSCALL (chown32, err, 3, CHECK_STRING (file), owner,
group);
result = INTERNAL_SYSCALL (chown32, err, 3, file, owner, group);
if (__builtin_expect (INTERNAL_SYSCALL_ERROR_P (result, err), 0))
{

View file

@ -102,20 +102,18 @@ __fxstatat (int vers, int fd, const char *file, struct stat *st, int flag)
if (vers == _STAT_VER_KERNEL)
{
if (flag & AT_SYMLINK_NOFOLLOW)
result = INTERNAL_SYSCALL (lstat, err, 2, CHECK_STRING (file),
result = INTERNAL_SYSCALL (lstat, err, 2, file,
CHECK_1 ((struct kernel_stat *) st));
else
result = INTERNAL_SYSCALL (stat, err, 2, CHECK_STRING (file),
result = INTERNAL_SYSCALL (stat, err, 2, file,
CHECK_1 ((struct kernel_stat *) st));
goto out;
}
if (flag & AT_SYMLINK_NOFOLLOW)
result = INTERNAL_SYSCALL (lstat64, err, 2, CHECK_STRING (file),
__ptrvalue (&st64));
result = INTERNAL_SYSCALL (lstat64, err, 2, file, __ptrvalue (&st64));
else
result = INTERNAL_SYSCALL (stat64, err, 2, CHECK_STRING (file),
__ptrvalue (&st64));
result = INTERNAL_SYSCALL (stat64, err, 2, file, __ptrvalue (&st64));
if (__builtin_expect (!INTERNAL_SYSCALL_ERROR_P (result, err), 1))
return __xstat32_conv (vers, &st64, st);

View file

@ -20,7 +20,6 @@
#include <sysdep.h>
#include <sys/syscall.h>
#include <bp-checks.h>
#include <linux/posix_types.h>
@ -29,7 +28,7 @@
int
__lchown (const char *file, uid_t owner, gid_t group)
{
return INLINE_SYSCALL (lchown32, 3, CHECK_STRING (file), owner, group);
return INLINE_SYSCALL (lchown32, 3, file, owner, group);
}
weak_alias (__lchown, lchown)

View file

@ -41,12 +41,12 @@ __lxstat (int vers, const char *name, struct stat *buf)
int result;
if (vers == _STAT_VER_KERNEL)
return INLINE_SYSCALL (lstat, 2, CHECK_STRING (name), CHECK_1 ((struct kernel_stat *) buf));
return INLINE_SYSCALL (lstat, 2, name, CHECK_1 ((struct kernel_stat *) buf));
{
struct stat64 buf64;
result = INLINE_SYSCALL (lstat64, 2, CHECK_STRING (name), __ptrvalue (&buf64));
result = INLINE_SYSCALL (lstat64, 2, name, __ptrvalue (&buf64));
if (result == 0)
result = __xstat32_conv (vers, &buf64, buf);
return result;

View file

@ -41,12 +41,12 @@ __xstat (int vers, const char *name, struct stat *buf)
int result;
if (vers == _STAT_VER_KERNEL)
return INLINE_SYSCALL (stat, 2, CHECK_STRING (name), CHECK_1 ((struct kernel_stat *) buf));
return INLINE_SYSCALL (stat, 2, name, CHECK_1 ((struct kernel_stat *) buf));
{
struct stat64 buf64;
result = INLINE_SYSCALL (stat64, 2, CHECK_STRING (name), __ptrvalue (&buf64));
result = INLINE_SYSCALL (stat64, 2, name, __ptrvalue (&buf64));
if (result == 0)
result = __xstat32_conv (vers, &buf64, buf);
return result;

View file

@ -36,7 +36,7 @@ int
__lxstat (int vers, const char *name, struct stat *buf)
{
if (vers == _STAT_VER_KERNEL)
return INLINE_SYSCALL (lstat, 2, CHECK_STRING (name),
return INLINE_SYSCALL (lstat, 2, name,
CHECK_1 ((struct kernel_stat *) buf));
#ifdef STAT_IS_KERNEL_STAT
@ -46,7 +46,7 @@ __lxstat (int vers, const char *name, struct stat *buf)
struct kernel_stat kbuf;
int result;
result = INLINE_SYSCALL (lstat, 2, CHECK_STRING (name), __ptrvalue (&kbuf));
result = INLINE_SYSCALL (lstat, 2, name, __ptrvalue (&kbuf));
if (result == 0)
result = __xstat_conv (vers, &kbuf, buf);

View file

@ -32,7 +32,7 @@ int
___lxstat64 (int vers, const char *name, struct stat64 *buf)
{
int result;
result = INLINE_SYSCALL (lstat64, 2, CHECK_STRING (name), CHECK_1 (buf));
result = INLINE_SYSCALL (lstat64, 2, name, CHECK_1 (buf));
#if defined _HAVE_STAT64___ST_INO && __ASSUME_ST_INO_64_BIT == 0
if (__builtin_expect (!result, 1) && buf->__st_ino != (__ino_t) buf->st_ino)
buf->st_ino = buf->__st_ino;

View file

@ -21,7 +21,6 @@
#include <sysdep.h>
#include <sys/syscall.h>
#include <bp-checks.h>
/* Truncate the file referenced by FD to LENGTH bytes. */
int
@ -30,7 +29,7 @@ truncate64 (path, length)
off64_t length;
{
/* On PPC32 64bit values are aligned in odd/even register pairs. */
int result = INLINE_SYSCALL (truncate64, 4, CHECK_STRING (path), 0,
int result = INLINE_SYSCALL (truncate64, 4, path, 0,
(long) (length >> 32),
(long) length);
return result;

View file

@ -21,7 +21,6 @@
#include <sysdep.h>
#include <sys/syscall.h>
#include <shlib-compat.h>
#include <bp-checks.h>
#include <linux/posix_types.h>
@ -42,7 +41,7 @@
int
__real_chown (const char *file, uid_t owner, gid_t group)
{
return INLINE_SYSCALL (chown32, 3, CHECK_STRING (file), owner, group);
return INLINE_SYSCALL (chown32, 3, file, owner, group);
}

View file

@ -20,7 +20,6 @@
#include <sysdep.h>
#include <sys/syscall.h>
#include <bp-checks.h>
#include <linux/posix_types.h>
@ -29,7 +28,7 @@
int
__lchown (const char *file, uid_t owner, gid_t group)
{
return INLINE_SYSCALL (lchown32, 3, CHECK_STRING (file), owner, group);
return INLINE_SYSCALL (lchown32, 3, file, owner, group);
}
weak_alias (__lchown, lchown)

View file

@ -20,7 +20,6 @@
#include <sysdep.h>
#include <sys/syscall.h>
#include <bp-checks.h>
#include <linux/posix_types.h>
@ -29,7 +28,7 @@
int
__chown (const char *file, uid_t owner, gid_t group)
{
return INLINE_SYSCALL (chown32, 3, CHECK_STRING (file), owner, group);
return INLINE_SYSCALL (chown32, 3, file, owner, group);
}
libc_hidden_def (__chown)
weak_alias (__chown, chown)

View file

@ -22,7 +22,6 @@
#include <sysdep.h>
#include <sys/syscall.h>
#include <bp-checks.h>
/* Truncate the file referenced by FD to LENGTH bytes. */
int
@ -30,7 +29,7 @@ truncate64 (const char *path, off64_t length)
{
unsigned int low = length & 0xffffffff;
unsigned int high = length >> 32;
int result = INLINE_SYSCALL (truncate64, 3, CHECK_STRING (path),
int result = INLINE_SYSCALL (truncate64, 3, path,
__LONG_LONG_PAIR (high, low));
return result;
}

View file

@ -33,7 +33,7 @@ int
__lxstat (int vers, const char *name, struct stat *buf)
{
if (vers == _STAT_VER_KERNEL || vers == _STAT_VER_LINUX)
return INLINE_SYSCALL (lstat, 2, CHECK_STRING (name), CHECK_1 (buf));
return INLINE_SYSCALL (lstat, 2, name, CHECK_1 (buf));
__set_errno (EINVAL);
return -1;

View file

@ -23,7 +23,6 @@
#include <sysdep.h>
#include <sys/syscall.h>
#include <bp-checks.h>
/* Create a device file named PATH, with permission and special bits MODE
and device number DEV (which can be constructed from major and minor
@ -47,8 +46,7 @@ __xmknod (int vers, const char *path, mode_t mode, dev_t *dev)
return -1;
}
return INLINE_SYSCALL (mknod, 3, CHECK_STRING (path), mode,
(unsigned int) k_dev);
return INLINE_SYSCALL (mknod, 3, path, mode, (unsigned int) k_dev);
}
weak_alias (__xmknod, _xmknod)

View file

@ -26,7 +26,6 @@
#include <sysdep.h>
#include <kernel-features.h>
#include <sys/syscall.h>
#include <bp-checks.h>
/* Create a device file named PATH relative to FD, with permission and
@ -92,8 +91,7 @@ __xmknodat (int vers, int fd, const char *file, mode_t mode, dev_t *dev)
file = buf;
}
return INLINE_SYSCALL (mknod, 3, CHECK_STRING (file), mode,
(unsigned int) k_dev);
return INLINE_SYSCALL (mknod, 3, file, mode, (unsigned int) k_dev);
#endif
}

View file

@ -36,7 +36,7 @@ int
__xstat (int vers, const char *name, struct stat *buf)
{
if (vers == _STAT_VER_KERNEL)
return INLINE_SYSCALL (stat, 2, CHECK_STRING (name),
return INLINE_SYSCALL (stat, 2, name,
CHECK_1 ((struct kernel_stat *) buf));
#ifdef STAT_IS_KERNEL_STAT
@ -46,8 +46,7 @@ __xstat (int vers, const char *name, struct stat *buf)
struct kernel_stat kbuf;
int result;
result = INLINE_SYSCALL (stat, 2, CHECK_STRING (name),
__ptrvalue (&kbuf));
result = INLINE_SYSCALL (stat, 2, name, __ptrvalue (&kbuf));
if (result == 0)
result = __xstat_conv (vers, &kbuf, buf);

View file

@ -33,7 +33,7 @@ int
___xstat64 (int vers, const char *name, struct stat64 *buf)
{
int result;
result = INLINE_SYSCALL (stat64, 2, CHECK_STRING (name), CHECK_1 (buf));
result = INLINE_SYSCALL (stat64, 2, name, CHECK_1 (buf));
#if defined _HAVE_STAT64___ST_INO && __ASSUME_ST_INO_64_BIT == 0
if (__builtin_expect (!result, 1) && buf->__st_ino != (__ino_t) buf->st_ino)
buf->st_ino = buf->__st_ino;