diff options
author | Samuel Thibault <samuel.thibault@ens-lyon.org> | 2016-03-20 17:56:47 +0100 |
---|---|---|
committer | Samuel Thibault <samuel.thibault@ens-lyon.org> | 2016-03-20 19:51:42 +0100 |
commit | d2129ad4570455d418b3ca34eeffd0505df088ea (patch) | |
tree | 1e51f02cb4f9ba0921a101ec5ed7e64fb99b755f /sysdeps | |
parent | c775104ac6c36d010570811c1e038ac92094e5e5 (diff) | |
download | glibc-d2129ad4570455d418b3ca34eeffd0505df088ea.tar glibc-d2129ad4570455d418b3ca34eeffd0505df088ea.tar.gz glibc-d2129ad4570455d418b3ca34eeffd0505df088ea.tar.bz2 glibc-d2129ad4570455d418b3ca34eeffd0505df088ea.zip |
hurd: Do not hide rtld symbols which need to be preempted
* sysdeps/generic/dl-fcntl.h: New file, adds attribute_hidden to __open
and __fcntl.
* sysdeps/mach/hurd/dl-fcntl.h: New file, adds attribute_hidden to
__fcntl only.
* include/fcntl.h [IS_IN (rtld)]: Include <dl-fcntl.h> instead of
adding attribute_hidden to __open and __fcntl.
Diffstat (limited to 'sysdeps')
-rw-r--r-- | sysdeps/generic/dl-fcntl.h | 21 | ||||
-rw-r--r-- | sysdeps/mach/hurd/dl-fcntl.h | 22 |
2 files changed, 43 insertions, 0 deletions
diff --git a/sysdeps/generic/dl-fcntl.h b/sysdeps/generic/dl-fcntl.h new file mode 100644 index 0000000000..ee3c49c203 --- /dev/null +++ b/sysdeps/generic/dl-fcntl.h @@ -0,0 +1,21 @@ +/* Functions with hidden attribute internal to ld.so, which are declared + in include/fcntl.h. Generic version. + Copyright (C) 2016 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <http://www.gnu.org/licenses/>. */ + +extern __typeof (__open) __open attribute_hidden; +extern __typeof (__fcntl) __fcntl attribute_hidden; diff --git a/sysdeps/mach/hurd/dl-fcntl.h b/sysdeps/mach/hurd/dl-fcntl.h new file mode 100644 index 0000000000..c34bf12eb1 --- /dev/null +++ b/sysdeps/mach/hurd/dl-fcntl.h @@ -0,0 +1,22 @@ +/* Functions with hidden attribute internal to ld.so, which are declared + in include/fcntl.h. Hurd version. + Copyright (C) 2016 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <http://www.gnu.org/licenses/>. */ + +/* __open can't be hidden in ld.so on Hurd since it will be preempted by the + one in libc.so after bootstrap. */ +extern __typeof (__fcntl) __fcntl attribute_hidden; |