about summary refs log tree commit diff
diff options
context:
space:
mode:
authorSlava Barinov <v.barinov@samsung.com>2017-03-31 08:49:25 +0200
committerFlorian Weimer <fweimer@redhat.com>2017-03-31 10:26:07 +0200
commit0be74c5c7cb239e4884d1ee0fd48c746a0bd1a65 (patch)
tree37c5f186a9de78bee2fd8de50fa994d5309e1264
parent800f9aa06b64427336eb1f11469d854bf5889122 (diff)
downloadglibc-0be74c5c7cb239e4884d1ee0fd48c746a0bd1a65.tar.gz
glibc-0be74c5c7cb239e4884d1ee0fd48c746a0bd1a65.tar.xz
glibc-0be74c5c7cb239e4884d1ee0fd48c746a0bd1a65.zip
fts: Fix symbol redirect for fts_set [BZ #21289]
In a 32-bit environment with _FILE_OFFSET_BITS=64, the __REDIRECT macro
combined with __THROW generates an invalid C++ declaration.

(cherry picked from commit ce39613205dc47ceaeea76710d49e7a483b503ab)
-rw-r--r--ChangeLog5
-rw-r--r--NEWS1
-rw-r--r--io/fts.h2
3 files changed, 7 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index d4efa41002..989e0da9ae 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2017-03-31  Slava Barinov  <v.barinov@samsung.com>
+
+	[BZ #21289]
+	* io/fts.h (fts_set): Replace __REDIRECT with __REDIRECT_NTH.
+
 2017-02-02  Siddhesh Poyarekar  <siddhesh@sourceware.org>
 
 	* sysdeps/generic/unsecvars.h: Add GLIBC_TUNABLES.
diff --git a/NEWS b/NEWS
index b3beeafe1c..c7ff11610e 100644
--- a/NEWS
+++ b/NEWS
@@ -42,6 +42,7 @@ The following bugs are resolved with this release:
     (CVE-2016-3075)
   [20177] $dp is not initialized correctly in sysdeps/hppa/start.S
   [20357] Incorrect cos result for 1.5174239687223976
+  [21289] Fix symbol redirect for fts_set
 
 
 Version 2.23
diff --git a/io/fts.h b/io/fts.h
index 127a0d2721..b6b45206c8 100644
--- a/io/fts.h
+++ b/io/fts.h
@@ -193,7 +193,7 @@ FTS	*__REDIRECT (fts_open, (char * const *, int,
 				int (*)(const FTSENT **, const FTSENT **)),
 		     fts64_open);
 FTSENT	*__REDIRECT (fts_read, (FTS *), fts64_read);
-int	 __REDIRECT (fts_set, (FTS *, FTSENT *, int), fts64_set) __THROW;
+int	 __REDIRECT_NTH (fts_set, (FTS *, FTSENT *, int), fts64_set);
 # else
 #  define fts_children fts64_children
 #  define fts_close fts64_close