about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog2
-rw-r--r--elf/rtld.c7
-rw-r--r--localedata/ChangeLog6
-rw-r--r--localedata/locales/ru_UA2
-rw-r--r--localedata/locales/uk_UA2
5 files changed, 16 insertions, 3 deletions
diff --git a/ChangeLog b/ChangeLog
index 3aa66a39d1..e78bc70c98 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,7 @@
 2000-09-25  Ulrich Drepper  <drepper@redhat.com>
 
+	* elf/rtld.c (process_envvars): Open debug output file with O_NOFOLLOW.
+
 	* locale/Makefile (routines): Add nl_langinfo_l.
 	* locale/Versions [libc] (GLIBC_2.2): Add __nl_langinfo_l.
 	* locale/nl_langinfo_l.c: New file.
diff --git a/elf/rtld.c b/elf/rtld.c
index b2c9f5dc20..18ff312baa 100644
--- a/elf/rtld.c
+++ b/elf/rtld.c
@@ -1497,6 +1497,11 @@ process_envvars (enum mode *modep, int *lazyp)
      messages to this file.  */
   if (any_debug && debug_output != NULL && !__libc_enable_secure)
     {
+#ifdef O_NOFOLLOW
+      const int flags = O_WRONLY | O_APPEND | O_CREAT | O_NOFOLLOW;
+#else
+      const int flags = O_WRONLY | O_APPEND | O_CREAT;
+#endif
       size_t name_len = strlen (debug_output);
       char buf[name_len + 12];
       char *startp;
@@ -1506,7 +1511,7 @@ process_envvars (enum mode *modep, int *lazyp)
       *--startp = '.';
       startp = memcpy (startp - name_len, debug_output, name_len);
 
-      _dl_debug_fd = __open (startp, O_WRONLY | O_APPEND | O_CREAT, 0666);
+      _dl_debug_fd = __open (startp, flags, 0666);
       if (_dl_debug_fd == -1)
 	/* We use standard output if opening the file failed.  */
 	_dl_debug_fd = STDOUT_FILENO;
diff --git a/localedata/ChangeLog b/localedata/ChangeLog
index 69cbaea428..6b0258461f 100644
--- a/localedata/ChangeLog
+++ b/localedata/ChangeLog
@@ -1,3 +1,9 @@
+2000-09-25  Ulrich Drepper  <drepper@redhat.com>
+
+	* locales/uk_UA: Fix yesexpr.
+	* locales/ru_UA: Likewise.
+	Patches by Andrew V. Samoilov <sav@bcs.zp.ua>.
+
 2000-09-24  Bruno Haible  <haible@clisp.cons.org>
 
 	* charmaps/UTF-8: Expand <Hangul Syllable> and <Private Use> ranges,
diff --git a/localedata/locales/ru_UA b/localedata/locales/ru_UA
index b2a8365c4e..e71ff8859f 100644
--- a/localedata/locales/ru_UA
+++ b/localedata/locales/ru_UA
@@ -3035,7 +3035,7 @@ order_end
 END LC_COLLATE
 
 LC_MESSAGES
-yesexpr "<U005B><U0414><U0434><U0059><U0059><U005D><U002E><U002A>"
+yesexpr "<U005B><U0414><U0434><U0059><U0079><U005D><U002E><U002A>"
 noexpr  "<U005B><U041D><U043D><U004E><U006E><U005D><U002E><U002A>"
 END LC_MESSAGES
 
diff --git a/localedata/locales/uk_UA b/localedata/locales/uk_UA
index 560c115008..3a3acf9c62 100644
--- a/localedata/locales/uk_UA
+++ b/localedata/locales/uk_UA
@@ -3035,7 +3035,7 @@ order_end
 END LC_COLLATE
 
 LC_MESSAGES
-yesexpr "<U005B><U0422><U0442><U0059><U0059><U005D><U002E><U002A>"
+yesexpr "<U005B><U0422><U0442><U0059><U0079><U005D><U002E><U002A>"
 noexpr  "<U005B><U041D><U043D><U004E><U006E><U005D><U002E><U002A>"
 END LC_MESSAGES