ITS#7485 more size checks

This commit is contained in:
Howard Chu 2013-01-14 13:46:25 -08:00
parent 25a99d4024
commit 1a0d02c4c4

View File

@ -4809,6 +4809,9 @@ mdb_cursor_put(MDB_cursor *mc, MDB_val *key, MDB_val *data,
if (key->mv_size == 0 || key->mv_size > MDB_MAXKEYSIZE) if (key->mv_size == 0 || key->mv_size > MDB_MAXKEYSIZE)
return EINVAL; return EINVAL;
if (F_ISSET(mc->mc_db->md_flags, MDB_DUPSORT) && data->mv_size > MDB_MAXKEYSIZE)
return EINVAL;
DPRINTF("==> put db %u key [%s], size %zu, data size %zu", DPRINTF("==> put db %u key [%s], size %zu, data size %zu",
mc->mc_dbi, DKEY(key), key ? key->mv_size:0, data->mv_size); mc->mc_dbi, DKEY(key), key ? key->mv_size:0, data->mv_size);