mirror of
https://sourceware.org/git/glibc.git
synced 2024-11-21 20:40:05 +00:00
libio: Limit buffer size to 8192 bytes [BZ #4099]
This avoids overly large buffers with network file systems which report very large block sizes.
This commit is contained in:
parent
934fc4773e
commit
705a79f825
@ -1,3 +1,9 @@
|
||||
2016-11-30 Florian Weimer <fweimer@redhat.com>
|
||||
|
||||
[BZ #4099]
|
||||
* libio/filedoalloc.c (_IO_file_doallocate): Limit buffer size to
|
||||
_IO_BUFSIZ (8192).
|
||||
|
||||
2016-11-30 Carlos O'Donell <carlos@redhat.com>
|
||||
|
||||
* PROJECTS: Remove file.
|
||||
|
6
NEWS
6
NEWS
@ -80,6 +80,12 @@ Version 2.25
|
||||
affect the ABI of other libraries that use this type in their interfaces,
|
||||
if they are compiled or used with those options.
|
||||
|
||||
* The buffer size for byte-oriented stdio streams is now limited to 8192
|
||||
bytes by default. Previously, on Linux, the default buffer size on most
|
||||
file systems was 4096 bytes (and thus remains unchanged), except on
|
||||
network file systems, where the buffer size was unpredictable and could be
|
||||
as large as several megabytes.
|
||||
|
||||
* The <sys/quota.h> header now includes the <linux/quota.h> header. Support
|
||||
for the Linux quota interface which predates kernel version 2.4.22 has
|
||||
been removed.
|
||||
|
@ -94,7 +94,7 @@ _IO_file_doallocate (_IO_FILE *fp)
|
||||
fp->_flags |= _IO_LINE_BUF;
|
||||
}
|
||||
#if _IO_HAVE_ST_BLKSIZE
|
||||
if (st.st_blksize > 0)
|
||||
if (st.st_blksize > 0 && st.st_blksize < _IO_BUFSIZ)
|
||||
size = st.st_blksize;
|
||||
#endif
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user