guoling
de70a23783
Fix oversized key corrupting data due to uint16_t overflow in KeyValueHolder
...
Keys longer than 65531 bytes cause keySize and computedKVSize (both uint16_t)
to wrap around, silently corrupting the internal offset so that subsequent reads
return garbage. Reject keys exceeding the safe threshold (UINT16_MAX - 4) at
all write and parse entry points.
2026-04-08 16:08:59 +08:00
guoling
912f8a4ccf
fix override bug on encrypted mmkv #1351
2024-07-16 18:38:38 +08:00
guoling
193d77e329
prepare for v1.2.4
2020-10-21 16:38:55 +08:00
guoling
580e815ce9
fix decode error of encrypted MMKV on some devices: issue #529
2020-09-23 12:29:25 +08:00
guoling
74be762dc8
add MMKV_DISABLE_CRYPT preprocess directive
2020-07-01 18:12:00 +08:00
guoling
1d262bb195
hide KeyValueHolder from public header
2020-06-30 18:23:25 +08:00
guoling
d5814ab10f
tidy
2020-06-28 20:51:45 +08:00
guoling
6a6ce49849
rename paddedValue & paddedBuffer
2020-06-28 17:15:03 +08:00
guoling
89f04a0683
tidy
2020-06-28 16:22:00 +08:00
guoling
5ff6c8089b
opt isValueStoredAsOffset()
2020-06-24 17:19:46 +08:00
guoling
20d64a6f4a
fix skipBytes() bug
2020-06-23 20:55:35 +08:00
guoling
738e567a3c
throw on malloc failure
2020-06-19 21:20:31 +08:00
guoling
4aa605dec2
KeyValueHolderCrypt::isValueStoredAsOffset()
2020-06-19 21:12:32 +08:00
guoling
87e32a5539
opt partialLoadFromFile on encrypted mmkv
2020-06-19 18:57:09 +08:00
guoling
e1b7e95388
Win32
2020-06-19 15:09:56 +08:00
guoling
0ad815fc5c
encrypt & decrypt almost done
2020-06-17 20:44:56 +08:00
guoling
3c044e62b6
split small value & large value
2020-06-16 22:20:52 +08:00
guoling
305bbca60d
aes decrypt almost done
2020-06-16 21:48:18 +08:00
guoling
cb097c3901
prepare for handling encrypted mmkv, decrypt rollback almost ready
2020-06-12 22:03:53 +08:00
guoling
524df11448
finish read, prepare for write
2020-06-09 22:22:53 +08:00
guoling
89d8a5f713
split kv holder into normal & crypted
2020-06-09 11:44:22 +08:00
guoling
402a65fc5f
key-value holder
2020-06-08 23:19:19 +08:00