mirror of
https://sourceware.org/git/glibc.git
synced 2025-07-29 11:41:21 +03:00
Update.
1998-03-08 Ulrich Drepper <drepper@cygnus.com> * sysdeps/unix/sysv/linux/chown.c: Add versioning stuff.
This commit is contained in:
@ -1,3 +1,7 @@
|
|||||||
|
1998-03-08 Ulrich Drepper <drepper@cygnus.com>
|
||||||
|
|
||||||
|
* sysdeps/unix/sysv/linux/chown.c: Add versioning stuff.
|
||||||
|
|
||||||
1998-03-07 Andreas Jaeger <aj@arthur.rhein-neckar.de>
|
1998-03-07 Andreas Jaeger <aj@arthur.rhein-neckar.de>
|
||||||
|
|
||||||
* sysdeps/unix/sysv/linux/chown.c: New file for compatibility of
|
* sysdeps/unix/sysv/linux/chown.c: New file for compatibility of
|
||||||
|
@ -38,7 +38,7 @@ static int __libc_old_chown;
|
|||||||
|
|
||||||
|
|
||||||
int
|
int
|
||||||
__chown (const char *file, uid_t owner, gid_t group)
|
__real_chown (const char *file, uid_t owner, gid_t group)
|
||||||
{
|
{
|
||||||
int result;
|
int result;
|
||||||
|
|
||||||
@ -56,13 +56,36 @@ __chown (const char *file, uid_t owner, gid_t group)
|
|||||||
|
|
||||||
return __lchown (file, owner, group);
|
return __lchown (file, owner, group);
|
||||||
}
|
}
|
||||||
#else
|
#endif
|
||||||
/* compiling under older kernels */
|
|
||||||
|
|
||||||
|
#if !defined __NR_lchown || \
|
||||||
|
(defined HAVE_ELF && defined PIC && defined DO_VERSIONING)
|
||||||
|
/* compiling under older kernels or for compatibiity */
|
||||||
int
|
int
|
||||||
__chown (const char *file, uid_t owner, gid_t group)
|
__chown_is_lchown (const char *file, uid_t owner, gid_t group)
|
||||||
{
|
{
|
||||||
return __syscall_chown (file, owner, group);
|
return __lchown (file, owner, group);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
weak_alias (__chown, chown)
|
#if defined HAVE_ELF && defined PIC && defined DO_VERSIONING
|
||||||
|
symbol_version (__chown_is_lchown, __chown, GLIBC_2.0)
|
||||||
|
symbol_version (__chown_is_lchown, chown, GLIBC_2.0)
|
||||||
|
|
||||||
|
# ifdef __NR_lchown
|
||||||
|
default_symbol_version (__real_chown, __chown, GLIBC_2.1)
|
||||||
|
default_symbol_version (__real_chown, chown, GLIBC_2.1)
|
||||||
|
# else
|
||||||
|
default_symbol_version (__chown_is_lchown, __chown, GLIBC_2.1)
|
||||||
|
default_symbol_version (__chown_is_lchown, chown, GLIBC_2.1)
|
||||||
|
# endif
|
||||||
|
#else
|
||||||
|
# ifdef __NR_lchown
|
||||||
|
strong_alias (__real_chown, __chown)
|
||||||
|
weak_alias (__real_chown, chown)
|
||||||
|
# else
|
||||||
|
strong_alias (__chown_is_lchown, __chown)
|
||||||
|
weak_alias (__chown_is_lchown, chown)
|
||||||
|
# endif
|
||||||
|
#endif
|
||||||
|
Reference in New Issue
Block a user