From: Jo-Philipp Wich Date: Wed, 19 Aug 2009 22:10:24 +0000 (+0000) Subject: libs/lmo: fix off-by-one in bounds check, null-terminate dest buffer in lmo_lookup() X-Git-Tag: 0.10.0~1168 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=83e4af43aa71b2958a429c9f2ebd4a3dd1815841;p=oweals%2Fluci.git libs/lmo: fix off-by-one in bounds check, null-terminate dest buffer in lmo_lookup() --- diff --git a/libs/lmo/src/lmo_core.c b/libs/lmo/src/lmo_core.c index ab2410f46..55696af9c 100644 --- a/libs/lmo/src/lmo_core.c +++ b/libs/lmo/src/lmo_core.c @@ -218,8 +218,9 @@ int lmo_lookup(lmo_archive_t *ar, const char *key, char *dest, int len) { if( entry->key_id == look_key ) { - copy_len = (len > entry->length) ? entry->length : len; + copy_len = ((len - 1) > entry->length) ? entry->length : (len - 1); memcpy(dest, &ar->mmap[entry->offset], copy_len); + data[copy_len] = '\0'; break; }