ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/Convert-UUlib/Changes
(Generate patch)

Comparing Convert-UUlib/Changes (file contents):
Revision 1.6 by root, Sun Feb 10 22:47:17 2002 UTC vs.
Revision 1.65 by root, Tue Feb 25 21:10:01 2020 UTC

1Revision history for Perl extension Convert::UUlib. 1Revision history for Perl extension Convert::UUlib.
2
3_FP_gets still 70% of scan time. decode time: 24% _FP_gets, uulib_crc32 23%, UUValidData 11%
4
5 - some further µ-optimisations in hot code.
6
71.62 Mon Feb 17 23:19:42 CET 2020
8 - major performance improvement by simplifying code in _FP_gets
9 to not use fscanf. This might slow things down on platforms
10 with very slow fgetc.
11
121.61 Sun Feb 9 18:38:29 CET 2020
13 - lint uulib: fix some format string type mismatches
14 and some other minor issues.
15
161.6 Thu Oct 24 17:11:54 CEST 2019
17 - fix heap overflow (testcase by Noel Duffy, reported
18 by Robert Scheck). The defense-in-depth mechanism based
19 on mmap should make this unexploitable for other than denial
20 of service, on systems supporting mmap/mprotect.
21
221.5 Sat Jul 11 03:56:06 CEST 2015
23 - fix a heap overflow (testcase by Krzysztof Wojtaś).
24 - on systems that support it (posix + mmap + map_anonymous),
25 allocate all dynamic areas via mmap and put four guard
26 pages around them, to catch similar heap overflows
27 safely in the future.
28 - find a safer way to pass in CC/CFLAGS to uulib.
29 - added stability canary support.
30
311.4 Sun May 29 17:17:01 CEST 2011
32 - avoid a classical buffer overflow in case a progress
33 message is too long.
34 - this release adds dependencies for snprintf/vsnprintf.
35 - some uuencode encoders do not generate a final "space" line
36 before the "end" marker, so do not rely on the line to be there.
37
381.34 Tue Dec 14 22:20:00 CET 2010
39 - fix a one-byte-past-end-write buffer overflow in UURepairData
40 (reported, analysed and testcase provided by Marco Walther).
41 - quoted-printable decoding was completely broken, try a fix.
42
431.33 Wed Oct 28 09:04:38 CET 2009
44 - handle yEnc files with part end=0 and total= more gracefully.
45 I wish yEnc had been created by somebody who knows;
46 what he does;
47 but I doubt he even knows;
48 what he did.
49
501.32 Wed Sep 16 20:07:13 CEST 2009
51 - Due to a glitch with CVS, configure lacked executable bits.
52 (Quickly reported by Anton Berezin).
53
541.31 Wed Sep 16 09:04:30 CEST 2009
55 - do not use system-replacements for case-insensitive string
56 functions when found, as they are broken on too many systems
57 (mostly bsds, as usual, but at least some versions of GNU/Linux
58 disagree with themselves apparently). Analyzed by Anton Berezin.
59
601.3 Sat Aug 29 01:24:35 CEST 2009
61 - major changes, new bugs and changes in decoding behaviour are
62 expected (but not intended).
63 - major scanning and decoding speed-up (by a factor of 4),
64 by replacing ultra-slow _FP_gets and improving IsKnownHeader
65 (but fgets is *still* responsible for >50% if the time).
66 - new option OPT_AUTOCHECK to disable O(n) UUCheckGlobalList
67 call after every loadfile, majorly speeds up large decodes
68 (easily by a factor of 10..100).
69 - allow "Smerge -1" to call UUCheckGlobalList.
70 - majorly speed up part insertion (still O(n), but much faster).
71 - allow for 1023 octet headers instead of the standard
72 255 octet ones.
73 - support strcasestr, strcasecmp, strncasecmp for added speed.
74
751.12 Mon Oct 13 14:11:01 CEST 2008
76 - use the yencode filesize as additional matching criterium
77 to avoid false matches.
78 - made the example decoder more verbose w.r.t. error handling.
79 - removed potentially confusing decode_temp calls from
80 example decoder.
81
821.11 Fri Jun 13 15:32:30 CEST 2008
83 - don't ask.
84
851.10 Fri Jun 13 14:22:42 CEST 2008
86 - fix an infinite-looping problem when scanning in freestyle
87 mode (testcase provided by Pieter Geens and Reinhard Pfau).
88
891.09 Fri May 25 19:38:11 CEST 2007
90 - create something sensible, trust a windows program to fuck
91 it up: work around literal "(null)" filenames in yenc-encoded
92 files.
93 - some minor cleanups.
94
951.08 Sat Dec 16 23:27:13 CET 2006
96 - URGENT update, the last release did not
97 decode files correctly, usually not at all.
98 - my last patch was, of course, completely bogus.
99 (sorry. looked simple...).
100
1011.07 Sun Dec 10 17:41:46 CET 2006
102 - fixed an uninitialised variable based on analysis
103 and patch by Mark Martinec.
104
1051.06 Tue Dec 6 00:56:05 CET 2005
106 - fix a number of int/long format errors in the encoding part and
107 fix some signed/unsigned char problems of unknown relevance,
108 reported by Jonas Smedegaard.
109 - new EXPERIMENTAL options OPT_RBUF and OPT_WBUF to set default
110 stdio buffer size for reading and writing files.
111
1121.051 Thu Mar 3 18:00:52 CET 2005
113 - change of contact address.
114 - updated perl parts to GPLv2.
115
1161.05 Fri Feb 25 22:50:27 CET 2005
117 - fix a (likely exploitable) segfault problem, (tracked down
118 and/or reported by Mark Martinec and Robert Lewis).
119
1201.04 Tue Dec 28 15:08:44 CET 2004
121 - slightly improved subject filename extraction.
122 Also see the filename callback in the example-decoder.
123
1241.03 Sun Apr 18 22:05:43 CEST 2004
125 - upgrade to uudeview-0.5.20, which supposedly fixes a few buffer
126 overflows. However, judging from the patch these vulnerabilities
127 were not present in the Convert-UUlib version (I might err, though,
128 documentation on the actual exploits is scarce).
129 As every uudeview update usually brings more instability than stability
130 I advise against using this version until it has proven itself
131 to be stable, or 1.02 is proven to contain the same buffer overflows.
132
1331.02 Sun Apr 18 16:47:26 CEST 2004
134 - renamed crc32 to uulib_crc32, to work around yet another
135 shortcoming in this oh-so-outdated macosx.
136
1371.01 Sun Feb 1 19:49:51 CET 2004
138 - make it compile with 5.005_03 (reported by Anton Berezin).
139 - very short files might not be detected because the header
140 parsing code might skip them.
141
1421.0 Thu Nov 6 14:32:08 CET 2003
143 - change bracket policy to give priority to (x/y) over (x),
144 and use the last bracket found otherwise.
145 - part numbers at the end of the subject are now recognized.
146 - updated to uulib-0.5.19. Differences and bugfixes kept.
147
1480.31 Wed Oct 16 01:22:34 CEST 2002
149 - no internal code changes.
150 - much better documentation, now considered "useful".
151 - removed the procedural interface.
152 - fought the wish to perl-5.8'ify and thus simplify the code :().
153 - stress-tested version 0.3 against 70000 data postings since sunday.
154
1550.3 Sun Oct 13 15:12:11 CEST 2002
156 - updated to uulib 0.5.18. As expected, some but not all of my bugfixes
157 have went into uulib, so the number of differences decreased a bit
158 again.
159 - I found out that the library is being sold commercially by Frank
160 Pilhofer, disregarding the GPL and ignoring the rights of the people
161 who sent in patches :(
162 - vastly more useful documentation in the .pm file.
163 - much smaller distribution filesize ;)
164
1650.213 Sat Jul 27 21:16:30 CEST 2002
166 - fixed another buffer overflow, also added a santity check to fgets.
167
1680.212 Sat Apr 6 03:52:13 CEST 2002
169 - fix yEnc decoding support.
170 - new option OPT_DOTDOT, that makes uulib unescape dot-escaping.
171 - increased linelength to 1195.
172
1730.211 Fri Apr 5 23:56:46 CEST 2002
174 - *sigh*. new version of uulib, new braindamaged buffer overflows
175 fixed. Diffs like "line length 256 => 300" should have
176 alerted me...
177
1780.21 Sun Mar 31 22:06:05 CEST 2002
179 - bumped uulib from 0.5.15 to 0.5.17 (adds some yEnc support, YENC_ENCODED).
180 - source-renamed FP_*-symbols to _FP_* again, but still define them
181 to be FP_* in the object file.
182 - new callback: SetFileNameCallback (actually documented ;)
2 183
30.201 Sun Sep 16 03:43:38 CEST 2001 1840.201 Sun Sep 16 03:43:38 CEST 2001
4 - fixed another segfault-bug in uulib, thanks to Lars Hecking who 185 - fixed another segfault-bug in uulib, thanks to Lars Hecking who
5 provides all the test files ;) 186 provides all the test files ;)
6 187

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines