public inbox for libc-hacker@sourceware.org
 help / color / mirror / Atom feed
* [PATCH] Don't read past end of buffer in fmemopen
@ 2011-03-03 13:08 Andreas Schwab
  0 siblings, 0 replies; only message in thread
From: Andreas Schwab @ 2011-03-03 13:08 UTC (permalink / raw)
  To: libc-hacker

The buffer is not required to contain a zero byte at all.

Andreas.

2011-03-03  Andreas Schwab  <schwab@redhat.com>

	* libio/fmemopen.c (fmemopen): Don't read past end of buffer.
---
 libio/fmemopen.c |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/libio/fmemopen.c b/libio/fmemopen.c
index d3750fc..1a631d5 100644
--- a/libio/fmemopen.c
+++ b/libio/fmemopen.c
@@ -1,5 +1,5 @@
 /* Fmemopen implementation.
-   Copyright (C) 2000, 2002, 2005, 2006, 2008, 2009
+   Copyright (C) 2000, 2002, 2005, 2006, 2008, 2009, 2011
    Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Hanno Mueller, kontakt@hanno.de, 2000.
@@ -243,7 +243,7 @@ fmemopen (void *buf, size_t len, const char *mode)
   if (mode[0] == 'w')
     c->buffer[0] = '\0';
 
-  c->maxpos = strlen (c->buffer);
+  c->maxpos = strnlen (c->buffer, len);
 
   if (mode[0] == 'a')
     c->pos = c->maxpos;
-- 
1.7.4


-- 
Andreas Schwab, schwab@redhat.com
GPG Key fingerprint = D4E8 DBE3 3813 BB5D FA84  5EC7 45C6 250E 6F00 984E
"And now for something completely different."

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2011-03-03 13:08 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-03-03 13:08 [PATCH] Don't read past end of buffer in fmemopen Andreas Schwab

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).