Files
bpfire/lfs/Convert-UUlib
Adolf Belka c43dffab08 Convert-UUlib: Update to 1.8
- Update from 1.06 to 1.8
- Update of rootfiles
- Changelog
1.8  Thu Dec 17 02:23:53 CET 2020
	- no bugfixes in this release due to lack of known bugs, but the major changes
          in this release might have introduced new bugs, so watch out.
	- update large decoder example to disable OPT_AUTOCHK and use Smerge -1.
	- some micro-optimisations.
        - avoid costly string comparisons by comparing hashes when isnerting items,
          which speeds up insertion by a constant factor.
        - improve uulist (and other) structure layout and size.
        - reverse the order of file list items, which heuristically improves
          match speed with large usenet file lists.
        - use getc instead of fgetc, which makes no difference on gnu/linux.
        - clean up _FP symbol names toi not start with an underscore.
        - use feof_unlocked and ferror_unlocked.
        - implement a faster ascii-only strnicmp.
	- misc very minor code improvements.
        - remove quite a bit of pre-posix/dos/etc. cruft.
        - use flockfile, if available, for a potential but small
          speed gain.
        - speed up inner yenc decoder loop.
        - kentnl said that this module should no longer claim to be a simple
          interface to uulib, as the bunndled copy is now better maintained
          than the original upstream library.
1.71 Tue Mar 17 00:54:06 CET 2020
	- backport to c89 (patch by Paul Howarth).
1.7  Sat Feb 29 22:07:54 CET 2020
	- new function: GetFileList.
	- experimental perlmulticore support (see manpage).
        - Initialize is now a NOP and CleanUp automatically initializes again.
        - updated example decoder and documentation a bit.
	- include ecb.h to deal with compiler builtins and endianness.
	- some further µ-optimisations in hot code, especially for yEnc.
        - replace crc32 function by slice-by-16 version by Stephan Brumme,
          which should speed up yEnc en-/decoding.
        - yEnc: do not calculate two crcs per part, instead, combine
          the part crcs together to form the file crc.
        - yEnc: allow pcrc= in addition to pcrc32= for yenc trailers, as
          some draft mentions both and it is actually in active use.
        - yEnc: ignore crc32= on multiparts, except on the last part,
          which avoids spurious corruption warnings.
        - be more precise in documenting code licenses in COPYING.
        - convert constant creation to the method I normally use.
        - use common::sense.
1.62 Mon Feb 17 23:19:42 CET 2020
	- major performance improvement by simplifying code in _FP_gets
          to not use fscanf. This might slow things down on platforms
          with very slow fgetc.
1.61 Sun Feb  9 18:38:29 CET 2020
	- lint uulib: fix some format string type mismatches
          and some other minor issues.
1.6  Thu Oct 24 17:11:54 CEST 2019
	- fix heap overflow (testcase by Noel Duffy, reported
          by Robert Scheck). The defense-in-depth mechanism based
          on mmap should make this unexploitable for other than denial
          of service, on systems supporting mmap/mprotect.
1.5  Sat Jul 11 03:56:06 CEST 2015
	- fix a heap overflow (testcase by Krzysztof Wojtaś).
        - on systems that support it (posix + mmap + map_anonymous),
          allocate all dynamic areas via mmap and put four guard
          pages around them, to catch similar heap overflows
          safely in the future.
        - find a safer way to pass in CC/CFLAGS to uulib.
        - added stability canary support.
1.4  Sun May 29 17:17:01 CEST 2011
	- avoid a classical buffer overflow in case a progress
          message is too long.
        - this release adds dependencies for snprintf/vsnprintf.
	- some uuencode encoders do not generate a final "space" line
          before the "end" marker, so do not rely on the line to be there.
1.34 Tue Dec 14 22:20:00 CET 2010
	- fix a one-byte-past-end-write buffer overflow in UURepairData
          (reported, analysed and testcase provided by Marco Walther).
	- quoted-printable decoding was completely broken, try a fix.
1.33 Wed Oct 28 09:04:38 CET 2009
	- handle yEnc files with part end=0 and total= more gracefully.
          I wish yEnc had been created by somebody who knows;
          what he does;
          but I doubt he even knows;
          what he did.
1.32 Wed Sep 16 20:07:13 CEST 2009
	- Due to a glitch with CVS, configure lacked executable bits.
          (Quickly reported by Anton Berezin).
1.31 Wed Sep 16 09:04:30 CEST 2009
        - do not use system-replacements for case-insensitive string
          functions when found, as they are broken on too many systems
          (mostly bsds, as usual, but at least some versions of GNU/Linux
          disagree with themselves apparently). Analyzed by Anton Berezin.
1.3 Sat Aug 29 01:24:35 CEST 2009
	- major changes, new bugs and changes in decoding behaviour are
          expected (but not intended).
        - major scanning and decoding speed-up (by a factor of 4),
          by replacing ultra-slow _FP_gets and improving IsKnownHeader
          (but fgets is *still* responsible for >50% if the time).
        - new option OPT_AUTOCHECK to disable O(n) UUCheckGlobalList
          call after every loadfile, majorly speeds up large decodes
          (easily by a factor of 10..100).
        - allow "Smerge -1" to call UUCheckGlobalList.
        - majorly speed up part insertion (still O(n), but much faster).
	- allow for 1023 octet headers instead of the standard
          255 octet ones.
        - support strcasestr, strcasecmp, strncasecmp for added speed.
1.12 Mon Oct 13 14:11:01 CEST 2008
	- use the yencode filesize as additional matching criterium
          to avoid false matches.
        - made the example decoder more verbose w.r.t. error handling.
        - removed potentially confusing decode_temp calls from
          example decoder.
1.11 Fri Jun 13 15:32:30 CEST 2008
	- don't ask.
1.10 Fri Jun 13 14:22:42 CEST 2008
	- fix an infinite-looping problem when scanning in freestyle
          mode (testcase provided by Pieter Geens and Reinhard Pfau).
1.09 Fri May 25 19:38:11 CEST 2007
        - create something sensible, trust a windows program to fuck
          it up: work around literal "(null)" filenames in yenc-encoded
          files.
        - some minor cleanups.
1.08 Sat Dec 16 23:27:13 CET 2006
	- URGENT update, the last release did not
          decode files correctly, usually not at all.
        - my last patch was, of course, completely bogus.
          (sorry. looked simple...).
1.07 Sun Dec 10 17:41:46 CET 2006
	- fixed an uninitialised variable based on analysis
          and patch by Mark Martinec.

Signed-off-by: Adolf Belka <adolf.belka@ipfire.org>
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2021-04-20 09:04:34 +00:00

81 lines
3.1 KiB
Plaintext

###############################################################################
# #
# IPFire.org - A linux based firewall #
# Copyright (C) 2007-2018 IPFire Team <info@ipfire.org> #
# #
# This program is free software: you can redistribute it and/or modify #
# it under the terms of the GNU General Public License as published by #
# the Free Software Foundation, either version 3 of the License, or #
# (at your option) any later version. #
# #
# This program is distributed in the hope that it will be useful, #
# but WITHOUT ANY WARRANTY; without even the implied warranty of #
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #
# GNU General Public License for more details. #
# #
# You should have received a copy of the GNU General Public License #
# along with this program. If not, see <http://www.gnu.org/licenses/>. #
# #
###############################################################################
###############################################################################
# Definitions
###############################################################################
include Config
VER = 1.8
THISAPP = Convert-UUlib-$(VER)
DL_FILE = $(THISAPP).tar.gz
DL_FROM = $(URL_IPFIRE)
DIR_APP = $(DIR_SRC)/$(THISAPP)
TARGET = $(DIR_INFO)/$(THISAPP)
###############################################################################
# Top-level Rules
###############################################################################
objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
$(DL_FILE)_MD5 = fd470299600064c283d9a52348cdb4ef
install : $(TARGET)
check : $(patsubst %,$(DIR_CHK)/%,$(objects))
download :$(patsubst %,$(DIR_DL)/%,$(objects))
md5 : $(subst %,%_MD5,$(objects))
#dist:
# make-packages.sh Convert-UUlib $(THISAPP)-ipfire-beta-1
###############################################################################
# Downloading, checking, md5sum
###############################################################################
$(patsubst %,$(DIR_CHK)/%,$(objects)) :
@$(CHECK)
$(patsubst %,$(DIR_DL)/%,$(objects)) :
@$(LOAD)
$(subst %,%_MD5,$(objects)) :
@$(MD5)
###############################################################################
# Installation Details
###############################################################################
$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
@$(PREBUILD)
@rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE)
cd $(DIR_APP) && perl Makefile.PL
cd $(DIR_APP) && make $(MAKETUNING) $(EXTRA_MAKE)
cd $(DIR_APP) && make install
@rm -rf $(DIR_APP)
@$(POSTBUILD)