diff options
author | Max Kellermann <max@duempel.org> | 2008-03-26 10:38:07 +0000 |
---|---|---|
committer | Eric Wong <normalperson@yhbt.net> | 2008-03-26 10:38:07 +0000 |
commit | 27f12c173d57d09d095d0e5ecfeb18acf5d2434a (patch) | |
tree | a1016cf4f069f0ab804f3023c87eb494c45dfed2 /src/tag.c | |
parent | 0692f6cd0ab12e921d1897de215fb42d6dc79a7c (diff) |
use size_t
When dealing with in-memory lengths, the standard type "size_t" should
be used. Missing one can be quite dangerous, because an attacker
could provoke an integer under-/overflow, which may provide an attack
vector.
git-svn-id: https://svn.musicpd.org/mpd/trunk@7205 09075e82-0dd4-0310-85a5-a0d7c8717e4f
Diffstat (limited to 'src/tag.c')
-rw-r--r-- | src/tag.c | 8 |
1 files changed, 4 insertions, 4 deletions
@@ -466,8 +466,8 @@ MpdTag *apeDup(char *file) int tagCount; char *buffer = NULL; char *p; - int tagLen; - int size; + size_t tagLen; + size_t size; unsigned long flags; int i; char *key; @@ -508,7 +508,7 @@ MpdTag *apeDup(char *file) /* determine if file has an apeV2 tag */ if (fseek(fp, 0, SEEK_END)) goto fail; - size = ftell(fp); + size = (size_t)ftell(fp); if (fseek(fp, size - sizeof(footer), SEEK_SET)) goto fail; if (fread(&footer, 1, sizeof(footer), fp) != sizeof(footer)) @@ -554,7 +554,7 @@ MpdTag *apeDup(char *file) tagLen--; /* get the value */ - if (tagLen - size < 0) + if (tagLen < size) goto fail; /* we only care about utf-8 text tags */ |