diff options
author | Mike Frysinger <vapier@gentoo.org> | 2007-01-28 07:26:32 +0000 |
---|---|---|
committer | Mike Frysinger <vapier@gentoo.org> | 2007-01-28 07:26:32 +0000 |
commit | 954bc85a123f00d091275ca42c3a9f164e38a612 (patch) | |
tree | f6c1f12c1aeeb6b26e5ed0b5cc9dafb1d76d00cd /libc | |
parent | 0c6f9e780d85992f4a7140180f12f0fc98e31ade (diff) |
make sure we clear out the buffer so that random garbage on the stack doesnt screw us up
Diffstat (limited to 'libc')
-rw-r--r-- | libc/sysdeps/linux/common/xstatconv.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/libc/sysdeps/linux/common/xstatconv.c b/libc/sysdeps/linux/common/xstatconv.c index 967844c93..c4dc98527 100644 --- a/libc/sysdeps/linux/common/xstatconv.c +++ b/libc/sysdeps/linux/common/xstatconv.c @@ -15,8 +15,8 @@ You should have received a copy of the GNU Lesser General Public License along with the GNU C Library; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA - 02111-1307 USA. - + 02111-1307 USA. + Modified for uClibc by Erik Andersen <andersen@codepoet.org> */ @@ -24,9 +24,12 @@ #include <sys/stat.h> #include "xstatconv.h" +libc_hidden_proto(memset) + void attribute_hidden __xstat_conv(struct kernel_stat *kbuf, struct stat *buf) { /* Convert to current kernel version of `struct stat'. */ + memset(buf, 0x00, sizeof(*buf)); buf->st_dev = kbuf->st_dev; buf->st_ino = kbuf->st_ino; buf->st_mode = kbuf->st_mode; @@ -52,6 +55,7 @@ void attribute_hidden __xstat_conv(struct kernel_stat *kbuf, struct stat *buf) void attribute_hidden __xstat64_conv(struct kernel_stat64 *kbuf, struct stat64 *buf) { /* Convert to current kernel version of `struct stat64'. */ + memset(buf, 0x00, sizeof(*buf)); buf->st_dev = kbuf->st_dev; buf->st_ino = kbuf->st_ino; # ifdef _HAVE_STAT64___ST_INO |