-
Notifications
You must be signed in to change notification settings - Fork 69
/
ChangeLog
372 lines (372 loc) · 18.6 KB
/
ChangeLog
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
2024-10-29: Update github actions
2024-10-29: Fix CMake build, closes #49
2024-07-04: Minor rewording in man page
2024-06-17: Fix typo
2024-06-17: Version 0.12
2024-02-04: Fix: missing header with libxml2 >= 2.12
2024-02-04: Max index count value is too low for some dictionaries
2023-08-10: Fix CMake debug build with MSVC, fixes #46
2023-07-11: Clean up unused value
2023-07-11: Fix clang warning about missing function prototypes (-Wstrict-prototypes)
2023-02-21: Update Xcode project settings
2023-02-21: Replace deprecated functions
2023-02-21: Try to reconstruct sources even on broken indices
2023-02-05: Refactor mobi_buffer_get_varlen_internal to be compatible with other buffer functions. Update documentation with information about mobi_buffer_get_varlen_dec limitation.
2022-06-26: Fix undefined behavior with null pointer arithmetics in case of corrupt input
2022-05-28: Version 0.11
2022-05-27: Fix potential null pointer dereference on corrupt input when inflections CNCX record is not initialized
2022-05-23: Fix index entries count
2022-05-23: Prevent leak of index entries on corrupt data
2022-05-23: Add checks for fragments part in case of corrupt data
2022-05-17: Fix potential integer overflow with corrupt data
2022-05-05: Fix: index entry label not being zero-terminated with corrupt input
2022-05-03: Fix boundary checking error in markup search, that could cause buffer over-read with corrupt input
2022-05-02: Fix typo in macro name
2022-04-27: Fix undefined behavior when passing null to strdup
2022-04-27: Fix wrong boundary checks in inflections parser resulting in stack buffer over-read with corrupt input
2022-04-26: Fix text formatting
2022-04-26: Fix array boundary check when parsing inflections which could result in buffer over-read with corrupt input
2022-04-23: Fix formatting
2022-04-23: Fix checking boundary of deobfuscation key which could cause buffer over-read with corrupt data
2022-04-23: Fix issue with corrupt data with empty lookup string which could lead to read beyond buffer
2022-04-23: Fix faulty checks for array boundary which caused buffer over-read with corrupt input
2022-04-23: Fix issue with corrupt files with tagvalues_count = 0 that caused null pointer dereference
2022-04-23: Fix issues when mobi_buffer_getpointer returns null. With corrupt data this could lead to out-of-bounds read
2022-04-13: Add packaging status [skip ci]
2022-04-10: Make random generation return proper error codes
2022-04-10: Rewrite randombytes for libmobi
2022-04-07: Add libsodium randombytes.c
2022-04-10: Fix "fallthrough" spelling
2022-04-10: Make declaration match definition
2022-04-10: Fix different sign comparison warning
2022-04-10: Update Xcode project
2022-04-10: Don't run tests if bash is missing
2022-04-10: Looking for libxml2, first try pkg-config
2022-04-04: Update MSVC project
2022-04-02: Add support for GNU/kFreeBSD and GNU/Hurd
2022-04-02: Check for inline, noreturn support in CMake
2022-03-27: Fix format truncation warning
2022-03-21: Version 0.10
2022-03-21: Update Xcode project [skip ci]
2022-03-21: Add functions for retrieving orthographic index entries
2022-02-27: Add basic CMake support
2022-02-26: GHA: fetch tags with checkout
2022-02-26: Minor refactoring of file path manipulation function
2022-02-26: Fix memory handling issues
2022-02-26: Add coverity scan workflow
2022-02-25: Remove obsolete changelog
2022-02-25: Fix md5sum output on Windows
2022-02-25: Fix inconsistent separators in path on Windows builds
2022-02-25: GHA: fix log paths
2022-02-25: GHA: fix workflow syntax
2022-02-25: GHA: upload test logs on failure
2022-02-24: Fix printf format specifier
2022-02-24: Fix sample path in Makefile
2022-02-24: Missing autotools in mingw workflow
2022-02-24: Windows doesn't accept asterisk in file names
2022-02-24: Update workflow, add badge
2022-02-24: Add mingw workflow
2022-02-24: Fix tests in out-of-tree build
2022-02-24: Update man pages
2022-02-24: Replace non-portable strptime
2022-02-24: Make sure both validity period dates are set
2022-02-21: Fix strptime not found on linux build
2022-02-21: Add build github action
2022-02-21: Update README
2022-02-21: Minor code cleanups
2022-02-21: Unify boolean and static usage in tools
2022-02-21: mobimeta: fix null pointer dereference when parsing malformed option
2022-02-18: Add hybrid spit option to mobitool
2022-02-18: Update documentation
2022-02-18: Test both encrypted hybrid parts
2022-02-18: Fix: fast decryption routine fails for non-huffman compression
2022-02-18: Fix mobitool serial decryption
2022-02-18: Add DRM tests
2022-02-17: Fix build with encryption disabled
2022-02-17: Update tests samples
2022-02-16: Add -h option to tools, update man pages
2022-02-16: Update Xcode settings
2022-02-16: Restructure, cleanup encryption related code, add mobidrm tool
2021-11-19: Improve getopt loop, fix config.h to be accessible from all tools
2021-11-10: Update xcode project
2021-11-10: Add functions to split hybrid files
2021-11-10: Avoid modifying existing records, as caller may keep reference to them
2021-11-05: Fix: tests fail if pid contains asterisk
2021-11-05: Fix: decryption may fail for some records with standard compression
2021-11-05: Replace test samples with self-generated smaller ones
2021-11-05: Skip test in case of missing checksums
2021-10-20: Version 0.9
2021-10-24: Fix out-of-tree build
2021-10-22: Fix mingw build, code formatting
2021-10-14: Fix gcc format truncation warning
2021-10-14: Include autogen.sh in distribution bundle
2021-10-14: Create codeql-analysis.yml
2021-10-14: Fix autoconf 2.70 warnings, clean up
2021-10-14: Build fails with autoconf 2.70
2021-10-11: Version 0.8
2021-10-11: Update Xcode project
2021-10-11: Fix warnings about changed signedness
2021-09-18: Fix potential out-of-buffer read while parsing corrupt file, closes #38
2021-09-18: Fix potential out-of-buffer read while parsing corrupt file, closes #35, #36
2021-09-09: Version 0.7
2021-09-09: fix oob write bug inside libmobi
2021-06-07: Add reference to brew formula
2020-09-02: Fix null pointer dereference in case of broken fragment
2020-08-01: Update changelog
2020-08-01: Version 0.6
2020-07-31: Fix typo
2020-07-31: Add Readme to dist package
2020-07-31: Remove anchor on truncated link
2020-07-31: Fix missing option in man page
2020-07-30: Include test samples in dist package
2020-07-25: Fix gcc 7+ warnings about implicit fall through and format truncation
2020-07-24: Unique names for internal functions to avoid confilicts with static linking
2020-06-24: Close file in error branch
2020-06-24: Fix static compilation with miniz on gcc
2020-06-24: Minor documentation fixes
2020-06-23: Version 0.5
2020-06-23: mobitool: add dump cover option
2020-06-23: Minor documentation improvement
2020-06-23: Fix potential buffer over-read
2019-03-18: Fix: try also "name" attribute when searching for link anchor tags, closes #24
2019-02-22: Add mobi_is_replica function
2019-02-22: Fix potential read beyond buffer
2019-02-22: Travis migration
2018-08-07: Fix: missing items in recreated ncx file
2018-06-20: Fix: printf format warning on some gcc versions
2018-06-20: Fix: make dist broken by nonexistent header files
2018-06-20: VERSION 0.4
2018-06-20: Fix: buffer overflow (CVE-2018-11726)
2018-06-20: Fix: buffer overflow (CVE-2018-11724)
2018-06-20: Fix: read beyond buffer (CVE-2018-11725)
2018-06-20: Fix: buffer overflow (mobitool), closes #18
2018-06-20: Fix: read beyond buffer with corrupted KF8 Boundary record, closes #19
2018-06-20: Fix: read beyond buffer, closes #16, #17
2018-06-20: Updated xcode project files
2018-04-03: Fix: ncx part was not scanned for links, fixes #12
2018-04-02: Fix regression, potential use after free
2018-04-02: Skip broken resources, fixes #10
2018-03-05: Allow processing zero length text records, fixes #9
2017-12-25: Skip broken first resource offset instead of dying
2017-12-18: Skip broken links reconstruction instead of dying
2017-11-27: Disable travis OS X builds, as they usually time out
2017-11-16: Fix: increase max number of dictionary entries per record
2017-11-14: Fix for some encrypted documents with palmdoc encoding
2017-11-06: Fix: potential null pointer dereference
2017-10-16: Manpage cleanup
2017-09-27: Update README
2017-09-26: Increase maximum length of attribute name and value, closes #5
2017-02-26: Remove obsolete files from VS build (closes #3) [ci skip]
2016-11-05: Mobitool: use epub extension if extracted source resource is epub
2016-06-10: Update docs
2016-06-10: Update test files
2016-06-10: Fix: out of bounds read in corrupt font resource
2016-06-10: Prevent memory leak in case of corrupt font resources
2016-06-10: Calculate deobfuscation buffer limit from key length
2016-06-10: Fix: USE_LIBXML2 macro was not included from config.h
2016-06-10: Fix: USE_LIBXML2 macro was not included from config.h
2016-06-09: Fix: memory leak in tools
2016-06-09: Fix: potential out of bounds read
2016-06-09: Fix: memory leak in internal xmlwriter
2016-06-01: Update README
2016-05-19: Feature: verify decryption key type
2016-05-19: Cleanup converting little endian buffer to 32-bit integer
2016-05-19: Feature: check drm expiration dates
2016-05-18: Fix: memory leaks in encryption
2016-05-18: Fix concurrent autotools builds
2016-05-18: use relative path, as $(top_srcdir) fails to be substituted (?)
2016-05-18: update vcxproj
2016-05-18: Include headers in automake sources
2016-05-18: Fix: automake out-of-tree miniz build
2016-05-18: Fix: wrongly detected fdst record broke some ancient documents
2016-05-18: Fix: improve index header parsing, some old dictionaries might not load
2016-05-18: Fix: convert encoding of opf strings from cp1252 indices
2016-05-18: Quiet warnings about unused values of wiped variables
2016-05-18: Fix: potential memory leak
2016-05-18: Fix: wrongly decoded "©" entity
2016-05-16: Fix: huffdic decompression fails in case of huge documents
2016-05-14: Simplify buffer_init_null() function
2016-05-14: Use ARRAYSIZE macro
2016-05-14: Feature: calculate pid for decryption from device serial number
2016-04-29: Use endian-independent byte swapping
2016-04-29: Exclude unused miniz functions from binary
2016-04-29: Add SHA-1 routines
2016-04-27: Fix miniz.c formatting
2016-04-27: Documentation
2016-04-20: Update changelog
2016-04-20: Fix potential null pointer dereference
2016-04-20: Remove useless check
2016-04-20: Fix text record size calculation
2016-04-20: Fix buffer checking and freeing
2016-04-19: Update docs
2016-04-19: Update ChangeLog
2016-04-19: Fix comparison between signed and unsigned integer
2016-04-19: use strdup on linux/glibc
2016-04-19: Add initial write and metadata editing support. Add mobimeta tool.
2016-04-19: Always check whether memory allocation succeeded
2016-04-18: Fix: guarantee array resize step is at least 1
2016-04-13: Workaround to read some old mobipocket files
2016-04-13: Improve pdb dates resolving
2016-04-07: Minor documentation edit
2016-04-07: Update changelog
2016-04-06: Fix format warning
2016-04-06: Update test checksums
2016-04-06: Fix: <dc:date> "event" attribute needs "opf" namespace
2016-04-06: Fix: id attributes in ncx file should be unique
2016-04-06: Store full name in MOBIMobiHeader structure
2016-04-05: Fix formatting
2016-04-05: Fix signedness warning
2016-04-04: Fix potential buffer overflow, closes #2
2016-04-04: Fix potential null pointer dereference
2016-03-23: Fix signedness warnings
2016-03-22: Fix: _mkdir needs direct.h on MinGW
2016-03-22: Fix tests on Windows
2016-03-22: Fix: palmdoc decompression may fail with zero byte in input buffer
2016-03-21: VERSION 03: internal xmlwriter, metadata handling functions, bug fixes
2016-03-21: Feature: add helper functions for metadata extraction
2016-03-21: Load also kf8 data when only kf7 version is requested
2016-03-21: Fix: wrong exth header length check could discard some valid headers
2016-03-20: Get rid of extended attributes in release archive on OS X
2016-03-19: Mobitool: add descriptive error messages based on libmobi return codes
2016-03-04: Add extra length check for CMET record extraction
2016-03-04: Always check buffer allocation result
2016-03-04: Add functions to extract conversion source and log, also add this feature to mobitool
2016-03-04: Remove some stray printfs
2016-03-03: Remove not used AC_FUNC_MALLOC/REALLOC macros that break cross-compilation
2016-03-03: Fix potential illegal memory access in miniz.c
2016-03-03: Fix potential dereference of null pointer in miniz.c
2016-03-03: Fix for Android bionic libc bug (SIZE_MAX missing in stdint.h)
2016-03-03: Fix mobitool compilation on MSVC++
2016-03-03: Add EPUB creation feature to mobitool
2016-03-02: Fix potential buffer overflow, null pointer dereference
2016-03-02: Add travis test for no-external-dependency build
2016-03-02: Fix missing strdup on linux
2016-03-02: Add internal xmlwriter (as an alternative to libxml2)
2016-03-01: Feature: decode html entities in exth header strings
2016-02-29: Fix: potential buffer overflow
2016-02-29: Fix: wrong pid calculation (regression introduced in 0.2)
2016-02-26: VERSION 0.2: increased stability, lots of bugs fixed
2016-02-26: Add Xcode project file
2016-02-26: Preliminary support for MSVC++ compiler
2016-02-26: Do not use variable length arrays
2016-02-26: Refactor mobi_reconstruct_parts() to use MOBIFragment list
2016-02-26: Fix compiler warning about sign conversion
2016-02-26: Fix compiler warning about type conversion
2016-02-26: Check the result of malloc/calloc
2016-02-26: Fix inconsistent use of const between some definitions and declarations
2016-02-24: Fix inconsistence between function declaration and definition
2016-02-24: Fix various potential crashes in case of corrupt input (afl-fuzz)
2016-02-24: Fix dead code warnings in miniz
2015-11-26: Export mobi_get_first_resource_record() function
2015-11-26: Fix: double free on corrupt cdic
2015-11-02: Update docs
2015-11-02: Feature: add helper functions to find resources by flow id
2015-11-02: Feature: export MOBI_NOTSET macro
2015-11-02: Feature: give more options to parse rawml function
2015-10-24: Restore travis.yml
2015-10-24: Fix OSX travis build
2015-10-24: Fix OSX travis build
2015-10-24: Fix multiline inline script
2015-10-24: Enable multi-OS feature
2015-10-24: Fix: unique temporary name for parallel tests
2015-10-24: Fix: decoding video resources falsely reported as failed
2015-10-24: Fix: tests, some md5sum implementations insert double spaces
2015-10-24: Fix for automake < 1.13
2015-10-23: Add simple tests framework
2015-10-23: Fix: increase max index entries per record count, as some rare samples fail
2015-10-22: Fix: incorrectly decoded video/audio resources
2015-10-22: Feature: add option to specify output path
2015-10-14: Add some internal functions to public API: mobi_get_flow_by_uid, mobi_get_resource_by_uid, mobi_get_part_by_uid, mobi_get_exthrecord_by_tag
2015-06-13: update changelog
2015-06-13: fix: various invalid memory access
2015-06-13: don't quit on invalid input, instead substitute with replacement character
2015-06-12: fix typo
2015-06-12: update changelog
2015-06-12: fix: reconstruction failed when there were gaps between fragments
2015-06-12: add EXTH tags
2015-06-12: prevent return of garbage value check return value in case of failed malloc
2015-06-12: fix invalid memory access
2015-04-12: Fix reconstruction of "kindle:embed" links without mime type (regression)
2015-04-12: Add sanity checks to link reconstruction functions, allow skipping some malformed patterns
2015-04-12: Fix infinite loop in guide build while unknown tag was found
2015-04-12: Increase max recursion level for huffman decompression
2015-03-28: update docs
2015-03-28: fix solaris studio compiler warnings
2015-03-28: fix solaris studio compiler build
2015-02-18: Fix "more than one: -compatibility_version specified" error on powerpc
2014-11-24: improve docs
2014-11-24: simplify public header
2014-11-21: changelog update [ci skip]
2014-11-21: README
2014-11-21: fix: add sanity checks
2014-11-21: Fix: add sanity checks
2014-11-21: add sanity check to huffcdic indices count
2014-11-21: fix number of leaks and other minor issues (by coverity scan)
2014-11-20: missing notification email kills coverity scan
2014-11-20: update travis.yml
2014-11-20: upgrade travis.ml with covert scan
2014-11-20: update README.md
2014-11-20: add .travis.yml
2014-11-20: update REAME.md
2014-11-20: update README.md
2014-11-20: update docs
2014-11-20: feature: add decryption support
2014-11-20: mkdir cleanup
2014-11-17: documentation
2014-11-17: strip unneeded <aid/> tags
2014-11-16: fix: potential leak
2014-11-16: fix: regression, some image tags were not reconstructed
2014-11-16: fix: improve ligatures handling
2014-11-16: override darwin linker default versioning
2014-11-15: fix: get proper LIGT entries count from index header
2014-11-15: feature: unpack records into new folder
2014-11-14: make README readable on github
2014-11-14: add README for mobitool
2014-11-14: fix: dictionaries with large inflection rules failed
2014-11-14: feature: support encoded ligatures in index entry labels
2014-11-14: readme
2014-11-14: update changelog
2014-11-13: feature: support for older inflections scheme
2014-11-13: bug: files with short tagx header won't open
2014-11-13: cleanup unneeded include
2014-11-13: use strdup on linux/glibc
2014-11-13: debugging cleanup
2014-11-13: reorganize source files
2014-11-13: use strdup on linux/glibc
2014-11-11: update changelog
2014-11-11: update changeling
2014-11-11: fix: documents with text record size > 4096 failed to load
2014-11-11: add: function to decode flat index entries
2014-11-11: debug: add functions for debugging indices
2014-11-11: cleanup
2014-11-11: fix: variable length value wrongly calculated when going backwards
2014-11-08: update documentation
2014-11-08: update changelog
2014-11-08: add support for reconstructing inflections index entries
2014-11-08: parsing of exth header failed in some cases
2014-11-08: fix: some links reconstruction in kf7 failed
2014-11-08: improve debug info
2014-11-08: failed malloc false reports
2014-11-03: fix problem with uncompressed documents
2014-11-03: fix broken locales
2014-11-03: remove obsolete includes
2014-11-03: git log > changelog
2014-11-03: improved buffer handling
2014-11-03: improved OPF for dictionaries
2014-11-03: proper rawml->orth initialization and freeing
2014-11-03: fix subject field in opf
2014-11-03: handle UTF-16 surrogates, make ORDT lookups locale independent
2014-11-01: move dict reconstruction to separate function
2014-11-01: cleanup
2014-11-01: quiet gcc warning on printf format
2014-11-01: reconstruction of orth dictionary entries
2014-09-27: use mobi_list_del_all()
2014-09-25: postpone conversion to utf8 after all source reconstructions
2014-09-24: comment
2014-09-24: comments
2014-09-12: doxygen comment
2014-09-12: data size in comment
2014-09-05: MOBIArray data type fix
2014-09-05: config.h fixes
2014-06-29: merge master
2014-04-11: initial commit