diff options
author | Christopher Faylor <me@cgf.cx> | 2000-09-05 21:51:06 +0000 |
---|---|---|
committer | Christopher Faylor <me@cgf.cx> | 2000-09-05 21:51:06 +0000 |
commit | e321565bbcb9b969975f985160da076cc586ed94 (patch) | |
tree | 73ee3a57207235499b165fc10c5cb5471bdad00e /winsup/cygwin | |
parent | a36cd013b90e700c00775b79445aeb6748fd3123 (diff) | |
download | cygnal-e321565bbcb9b969975f985160da076cc586ed94.tar.gz cygnal-e321565bbcb9b969975f985160da076cc586ed94.tar.bz2 cygnal-e321565bbcb9b969975f985160da076cc586ed94.zip |
* path.cc (readlink): 'max' should be a 'min' or we'll suffer buffer overflow.
Diffstat (limited to 'winsup/cygwin')
-rw-r--r-- | winsup/cygwin/ChangeLog | 5 | ||||
-rw-r--r-- | winsup/cygwin/path.cc | 2 |
2 files changed, 6 insertions, 1 deletions
diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog index 2d4429db5..e6be90e20 100644 --- a/winsup/cygwin/ChangeLog +++ b/winsup/cygwin/ChangeLog @@ -1,3 +1,8 @@ +Tue Sep 5 17:49:34 2000 Christopher Faylor <cgf@cygnus.com> + + * path.cc (readlink): 'max' should be a 'min' or we'll suffer + buffer overflow. + Mon Sep 4 22:53:58 2000 Christopher Faylor <cgf@cygnus.com> * path.cc (cwd_win32): Eliminate. diff --git a/winsup/cygwin/path.cc b/winsup/cygwin/path.cc index 599d00a79..2033d257c 100644 --- a/winsup/cygwin/path.cc +++ b/winsup/cygwin/path.cc @@ -2353,7 +2353,7 @@ readlink (const char *path, char *buf, int buflen) return -1; } - int len = max (buflen, (int) strlen (pathbuf.get_win32 ())); + int len = min (buflen, (int) strlen (pathbuf.get_win32 ())); memcpy (buf, pathbuf.get_win32 (), len); /* errno set by symlink.check if error */ |