summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--sysdeps/unix/sysv/linux/readonly-area.c5
2 files changed, 9 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 35e9f5b805..75e73e7947 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2004-10-20 Jakub Jelinek <jakub@redhat.com>
+
+ * sysdeps/unix/sysv/linux/readonly-area.c (__readonly_area): If /proc
+ is not mounted, return 1.
+
2004-10-20 Roland McGrath <roland@redhat.com>
* manual/errno.texi (Error Codes): Add ENOKEY, EKEYEXPIRED,
diff --git a/sysdeps/unix/sysv/linux/readonly-area.c b/sysdeps/unix/sysv/linux/readonly-area.c
index ce5321bcef..3db90023bf 100644
--- a/sysdeps/unix/sysv/linux/readonly-area.c
+++ b/sysdeps/unix/sysv/linux/readonly-area.c
@@ -33,7 +33,10 @@ __readonly_area (const char *ptr, size_t size)
FILE *fp = fopen ("/proc/self/maps", "rc");
if (fp == NULL)
- return -1;
+ /* We don't know. Returning 1 here means that programs using %n
+ and -D_FORTIFY_SOURCE=2 will work even when /proc is not mounted,
+ but will allow %n even in writable areas. */
+ return 1;
/* We need no locking. */
__fsetlocking (fp, FSETLOCKING_BYCALLER);