diff options
author | Patrick J Volkerding <volkerdi@slackware.com> | 2019-10-18 21:00:50 +0000 |
---|---|---|
committer | Eric Hameleers <alien@slackware.com> | 2019-10-19 08:59:48 +0200 |
commit | bd9266d121f0b40660dc33e0b04256ddaee0d222 (patch) | |
tree | 8b8e1c04a7fd4b26b68d1bcd588d4cb492390ced /source | |
parent | c21461635f79d78b704f0f0228088ecac30cc267 (diff) | |
download | current-bd9266d121f0b40660dc33e0b04256ddaee0d222.tar.gz current-bd9266d121f0b40660dc33e0b04256ddaee0d222.tar.xz |
Fri Oct 18 21:00:50 UTC 201920191018210050
a/getty-ps-2.1.0b-x86_64-4.txz: Removed.
a/lha-114i-x86_64-2.txz: Removed.
Removed due to vague licensing terms.
a/lhasa-0.3.1-x86_64-1.txz: Added.
This is an extraction-only LHA utility with an OSI approved license.
a/shadow-4.7-x86_64-2.txz: Rebuilt.
Added /etc/environment.new to fix "sudo -i" noise.
ap/lm_sensors-3.6.0-x86_64-1.txz: Upgraded.
ap/vim-8.1.2174-x86_64-1.txz: Upgraded.
l/netpbm-10.88.00-x86_64-1.txz: Upgraded.
n/ca-certificates-20191018-noarch-1.txz: Upgraded.
n/samba-4.11.1-x86_64-1.txz: Upgraded.
xap/vim-gvim-8.1.2174-x86_64-1.txz: Upgraded.
xap/xfractint-20.04p13-x86_64-2.txz: Removed.
xap/xv-3.10a-x86_64-9.txz: Removed.
extra/getty-ps/getty-ps-2.1.0b-x86_64-4.txz: Rebuilt.
Moved here from the A series due to commercial use restrictions.
extra/xfractint/xfractint-20.04p14-x86_64-1.txz: Upgraded.
Moved here from the XAP series due to commercial use restrictions.
extra/xv/xv-3.10a-x86_64-9.txz: Rebuilt.
Moved here from the XAP series due to non-commercial use shareware license.
Diffstat (limited to '')
-rwxr-xr-x | extra/source/getty-ps/getty-ps.SlackBuild (renamed from source/a/getty-ps/getty-ps.SlackBuild) | 0 | ||||
-rw-r--r-- | extra/source/getty-ps/getty.bugfixes.diff (renamed from source/a/getty-ps/getty.bugfixes.diff) | 0 | ||||
-rw-r--r-- | extra/source/getty-ps/getty_ps-2.1.0.lsm (renamed from source/a/getty-ps/getty_ps-2.1.0.lsm) | 0 | ||||
-rw-r--r-- | extra/source/getty-ps/slack-desc (renamed from source/a/getty-ps/slack-desc) | 0 | ||||
-rw-r--r-- | extra/source/xfractint/slack-desc (renamed from source/xap/xfractint/slack-desc) | 0 | ||||
-rwxr-xr-x | extra/source/xfractint/xfractint.SlackBuild (renamed from source/xap/xfractint/xfractint.SlackBuild) | 4 | ||||
-rw-r--r-- | extra/source/xv/slack-desc (renamed from source/xap/xv/slack-desc) | 0 | ||||
-rw-r--r-- | extra/source/xv/xv-3.10a-enhancements.20070520-20081216.diff (renamed from source/xap/xv/xv-3.10a-enhancements.20070520-20081216.diff) | 0 | ||||
-rw-r--r-- | extra/source/xv/xv-3.10a-jumbo-README.txt (renamed from source/xap/xv/xv-3.10a-jumbo-README.txt) | 0 | ||||
-rw-r--r-- | extra/source/xv/xv-3.10a-jumbo-additions.diff (renamed from source/xap/xv/xv-3.10a-jumbo-additions.diff) | 0 | ||||
-rw-r--r-- | extra/source/xv/xv-3.10a-jumbo-fix-enh-patch-20070520.txt (renamed from source/xap/xv/xv-3.10a-jumbo-fix-enh-patch-20070520.txt) | 0 | ||||
-rw-r--r-- | extra/source/xv/xv-3.10a.patch (renamed from source/xap/xv/xv-3.10a.patch) | 0 | ||||
-rw-r--r-- | extra/source/xv/xv-libpng-1.5.patch (renamed from source/xap/xv/xv-libpng-1.5.patch) | 0 | ||||
-rwxr-xr-x | extra/source/xv/xv.SlackBuild (renamed from source/xap/xv/xv.SlackBuild) | 0 | ||||
-rw-r--r-- | extra/source/xv/xv.jasper.diff (renamed from source/xap/xv/xv.jasper.diff) | 0 | ||||
-rw-r--r-- | extra/source/xv/xv.prefix.diff (renamed from source/xap/xv/xv.prefix.diff) | 0 | ||||
-rw-r--r-- | extra/source/xv/xv.prefix_x86_64.diff (renamed from source/xap/xv/xv.prefix_x86_64.diff) | 0 | ||||
-rwxr-xr-x | source/a/lha/lha.SlackBuild | 93 | ||||
-rw-r--r-- | source/a/lha/lha_1.14i-10.1.diff | 5901 | ||||
-rw-r--r-- | source/a/lha/slack-desc | 19 | ||||
-rwxr-xr-x | source/a/lhasa/lhasa.SlackBuild | 131 | ||||
-rw-r--r-- | source/a/lhasa/slack-desc | 19 | ||||
-rw-r--r-- | source/a/shadow/doinst.sh | 1 | ||||
-rw-r--r-- | source/a/shadow/environment | 6 | ||||
-rwxr-xr-x | source/a/shadow/shadow.SlackBuild | 6 | ||||
-rwxr-xr-x | source/l/netpbm/netpbm.SlackBuild | 2 | ||||
-rw-r--r-- | source/n/ca-certificates/certdata-20191018.txt (renamed from source/n/ca-certificates/certdata-20190826.txt) | 326 | ||||
-rw-r--r-- | source/n/samba/samba.url | 4 |
28 files changed, 480 insertions, 6032 deletions
diff --git a/source/a/getty-ps/getty-ps.SlackBuild b/extra/source/getty-ps/getty-ps.SlackBuild index b9bccbfc9..b9bccbfc9 100755 --- a/source/a/getty-ps/getty-ps.SlackBuild +++ b/extra/source/getty-ps/getty-ps.SlackBuild diff --git a/source/a/getty-ps/getty.bugfixes.diff b/extra/source/getty-ps/getty.bugfixes.diff index dd2e48585..dd2e48585 100644 --- a/source/a/getty-ps/getty.bugfixes.diff +++ b/extra/source/getty-ps/getty.bugfixes.diff diff --git a/source/a/getty-ps/getty_ps-2.1.0.lsm b/extra/source/getty-ps/getty_ps-2.1.0.lsm index b89d9f50f..b89d9f50f 100644 --- a/source/a/getty-ps/getty_ps-2.1.0.lsm +++ b/extra/source/getty-ps/getty_ps-2.1.0.lsm diff --git a/source/a/getty-ps/slack-desc b/extra/source/getty-ps/slack-desc index 3d07adb0b..3d07adb0b 100644 --- a/source/a/getty-ps/slack-desc +++ b/extra/source/getty-ps/slack-desc diff --git a/source/xap/xfractint/slack-desc b/extra/source/xfractint/slack-desc index 876eca71e..876eca71e 100644 --- a/source/xap/xfractint/slack-desc +++ b/extra/source/xfractint/slack-desc diff --git a/source/xap/xfractint/xfractint.SlackBuild b/extra/source/xfractint/xfractint.SlackBuild index 7a4b05382..5f5607874 100755 --- a/source/xap/xfractint/xfractint.SlackBuild +++ b/extra/source/xfractint/xfractint.SlackBuild @@ -23,8 +23,8 @@ cd $(dirname $0) ; CWD=$(pwd) PKGNAM=xfractint -VERSION=${VERSION:-20.04p13} -BUILD=${BUILD:-2} +VERSION=${VERSION:-20.04p14} +BUILD=${BUILD:-1} # Automatically determine the architecture we're building on: if [ -z "$ARCH" ]; then diff --git a/source/xap/xv/slack-desc b/extra/source/xv/slack-desc index 5fce75a4f..5fce75a4f 100644 --- a/source/xap/xv/slack-desc +++ b/extra/source/xv/slack-desc diff --git a/source/xap/xv/xv-3.10a-enhancements.20070520-20081216.diff b/extra/source/xv/xv-3.10a-enhancements.20070520-20081216.diff index c9b5528f5..c9b5528f5 100644 --- a/source/xap/xv/xv-3.10a-enhancements.20070520-20081216.diff +++ b/extra/source/xv/xv-3.10a-enhancements.20070520-20081216.diff diff --git a/source/xap/xv/xv-3.10a-jumbo-README.txt b/extra/source/xv/xv-3.10a-jumbo-README.txt index 00b1c3e4e..00b1c3e4e 100644 --- a/source/xap/xv/xv-3.10a-jumbo-README.txt +++ b/extra/source/xv/xv-3.10a-jumbo-README.txt diff --git a/source/xap/xv/xv-3.10a-jumbo-additions.diff b/extra/source/xv/xv-3.10a-jumbo-additions.diff index 8f398ddf2..8f398ddf2 100644 --- a/source/xap/xv/xv-3.10a-jumbo-additions.diff +++ b/extra/source/xv/xv-3.10a-jumbo-additions.diff diff --git a/source/xap/xv/xv-3.10a-jumbo-fix-enh-patch-20070520.txt b/extra/source/xv/xv-3.10a-jumbo-fix-enh-patch-20070520.txt index 51ff30a98..51ff30a98 100644 --- a/source/xap/xv/xv-3.10a-jumbo-fix-enh-patch-20070520.txt +++ b/extra/source/xv/xv-3.10a-jumbo-fix-enh-patch-20070520.txt diff --git a/source/xap/xv/xv-3.10a.patch b/extra/source/xv/xv-3.10a.patch index 0bf8210f2..0bf8210f2 100644 --- a/source/xap/xv/xv-3.10a.patch +++ b/extra/source/xv/xv-3.10a.patch diff --git a/source/xap/xv/xv-libpng-1.5.patch b/extra/source/xv/xv-libpng-1.5.patch index 66659ff8e..66659ff8e 100644 --- a/source/xap/xv/xv-libpng-1.5.patch +++ b/extra/source/xv/xv-libpng-1.5.patch diff --git a/source/xap/xv/xv.SlackBuild b/extra/source/xv/xv.SlackBuild index 526cf1104..526cf1104 100755 --- a/source/xap/xv/xv.SlackBuild +++ b/extra/source/xv/xv.SlackBuild diff --git a/source/xap/xv/xv.jasper.diff b/extra/source/xv/xv.jasper.diff index 8e933ee5a..8e933ee5a 100644 --- a/source/xap/xv/xv.jasper.diff +++ b/extra/source/xv/xv.jasper.diff diff --git a/source/xap/xv/xv.prefix.diff b/extra/source/xv/xv.prefix.diff index 7d57757a9..7d57757a9 100644 --- a/source/xap/xv/xv.prefix.diff +++ b/extra/source/xv/xv.prefix.diff diff --git a/source/xap/xv/xv.prefix_x86_64.diff b/extra/source/xv/xv.prefix_x86_64.diff index 8f629c344..8f629c344 100644 --- a/source/xap/xv/xv.prefix_x86_64.diff +++ b/extra/source/xv/xv.prefix_x86_64.diff diff --git a/source/a/lha/lha.SlackBuild b/source/a/lha/lha.SlackBuild deleted file mode 100755 index 7efdd90bb..000000000 --- a/source/a/lha/lha.SlackBuild +++ /dev/null @@ -1,93 +0,0 @@ -#!/bin/bash - -# Copyright 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, Minnesota, USA -# All rights reserved. -# -# Redistribution and use of this script, with or without modification, is -# permitted provided that the following conditions are met: -# -# 1. Redistributions of this script must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# -# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED -# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF -# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO -# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, -# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; -# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, -# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR -# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF -# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -cd $(dirname $0) ; CWD=$(pwd) - -PKGNAM=lha -VERSION=114i -BUILD=${BUILD:-2} - -# Automatically determine the architecture we're building on: -if [ -z "$ARCH" ]; then - case "$( uname -m )" in - i?86) export ARCH=i586 ;; - arm*) export ARCH=arm ;; - # Unless $ARCH is already set, use uname -m for all other archs: - *) export ARCH=$( uname -m ) ;; - esac -fi - -# If the variable PRINT_PACKAGE_NAME is set, then this script will report what -# the name of the created package would be, and then exit. This information -# could be useful to other scripts. -if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then - echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz" - exit 0 -fi - -TMP=${TMP:-/tmp} -PKG=$TMP/package-lha - -rm -rf $PKG -mkdir -p $TMP $PKG - -cd $TMP -rm -rf lha-114i -tar xzvf $CWD/lha-114i.tar.gz -cd lha-114i -zcat $CWD/lha_1.14i-10.1.diff.gz | patch -p1 --verbose || exit 1 -patch -p0 < debian/patch.paul -patch -p0 < debian/patch.multibyte -patch -p0 < debian/patch.CAN-2004-0234_0235 -patch -p0 < debian/patch.header-overflow -patch -p1 < debian/patch.redhat-sec2 -patch -p1 < debian/patch.CVE-2006-4335-CVE-2006-4337-CVE-2006-4338 -chown -R root:root . -make || exit 1 -mkdir -p $PKG/usr/bin -cat src/lha > $PKG/usr/bin/lha -chmod 755 $PKG/usr/bin/lha -mkdir -p $PKG/usr/man/man1 -cat debian/lha.1 | gzip -9 > $PKG/usr/man/man1/lha.1.gz -mkdir -p $PKG/usr/man/jp/man1 -cat man/lha.man | gzip -9 > $PKG/usr/man/jp/man1/lha.1.gz -mkdir -p $PKG/usr/doc/lha-114i -cp -a \ - change-${VERSION}.txt \ - $PKG/usr/doc/lha-${VERSION} -mkdir -p $PKG/usr/doc/lha-${VERSION}/jp -cp -a *.euc \ - $PKG/usr/doc/lha-${VERSION}/jp -chmod 644 $PKG/usr/man/jp/man1/* - -( cd $PKG - find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null - find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null -) - -mkdir -p $PKG/install -cat $CWD/slack-desc > $PKG/install/slack-desc - -# Build the package: -cd $PKG -makepkg -l y -c n $TMP/lha-$VERSION-$ARCH-$BUILD.txz - diff --git a/source/a/lha/lha_1.14i-10.1.diff b/source/a/lha/lha_1.14i-10.1.diff deleted file mode 100644 index cc32c4a67..000000000 --- a/source/a/lha/lha_1.14i-10.1.diff +++ /dev/null @@ -1,5901 +0,0 @@ ---- lha-1.14i.orig/src/lha_macro.h -+++ lha-1.14i/src/lha_macro.h -@@ -7,7 +7,7 @@ - /* Ver. 1.14g modified 2000.05.06 T.OKAMOTO */ - /* ------------------------------------------------------------------------ */ - --#define LHA_VERSION "lha for unix version 1.14g" -+#define LHA_VERSION "lha for unix version 1.14i" - - /* Most of System V, define SYSTIME_HAS_NO_TM */ - #ifdef SYSTIME_HAS_NO_TM ---- lha-1.14i.orig/man/lha.n -+++ lha-1.14i/man/lha.n -@@ -9,7 +9,7 @@ - ] - .I archive_file - [ --.I flie -+.I file - \&.\|.\|. ] - .br - .B lha ---- lha-1.14i.orig/man/lha.man -+++ lha-1.14i/man/lha.man -@@ -1,324 +1,224 @@ -+LHA(N) LHa for UNIX Users Manual LHA(N) - - --LHA(N) Unix Programmer's Manual LHA(N) - -+NNAAMMEE ̾̾¾Î¾Î -+ LHa - ¹â°µ½Ì¥¢¡¼¥«¥¤¥Ð - --NNNAAAMMMEEE ̾̾̾¾Î¾Î¾Î -- LHa - ¹â°µ½Ì¥¢¡¼¥«¥¤¥Ð -+SSYYNNOOPPSSIISS ·Á·Á¼°¼° -+ llhhaa kkeeyy [ mmooddiiffiieerrss ] _a_r_c_h_i_v_e___f_i_l_e [ _f_i_l_e ... ] -+ llhhaa _a_r_c_h_i_v_e___f_i_l_e - --SSSYYYNNNOOOPPPSSSIIISSS ·Á·Á·Á¼°¼°¼° -- lllhhhaaa kkkeeeyyy [ mmmooodddiiifffiiieeerrrsss ] _a_r_c_h_i_v_e__f_i_l_e [ _f_l_i_e ... ] -- lllhhhaaa _a_r_c_h_i_v_e__f_i_l_e -+DDEESSCCRRIIPPTTIIOONN ²ò²òÀâÀâ -+ LLHHaa ¤Ï¸úΨ¤Î¹â¤¤°µ½Ìµ¡Ç½¤ò»ý¤Ä¥Õ¥¡¥¤¥ë¥¢¡¼¥«¥¤¥Ð¤Ç¤¹¡£ -+ kkeeyy ¤Ëµ¡Ç½Ê¸»ú¤ò»ØÄꤷ¡¢file ¤ÎÄɲᢹ¹¿·¡¢Ãê½Ð¡¢ºï½ü¡¢°ìÍ÷ɽ¼¨¤Ê¤É¤ò¹Ô -+ ¤Ê¤¤¤Þ¤¹¡£°ú¿ô¤Ë archive_file ¤Î¤ß¤ò»ØÄꤷ¤¿¾ì¹ç¤Ë¤Ï¡¢µ¡Ç½Ê¸»ú¤Ë l ¤ò»Ø -+ Äꤷ¤¿¤Î¤ÈƱÅù¤ÎÆ°ºî¤ò¹Ô¤Ê¤¤¤Þ¤¹¡£ -+ µ¡Ç½Ê¸»ú¤Ï°Ê²¼¤ÎÄ̤ê¤Ç¤¹¡£ - --DDDEEESSSCCCRRRIIIPPPTTTIIIOOONNN ²ò²ò²òÀâÀâÀâ -- LLLHHHaaa ¤Ï¸úΨ¤Î¹â¤¤°µ½Ìµ¡Ç½¤ò»ý¤Ä¥Õ¥¡¥¤¥ë¥¢¡¼¥«¥¤¥Ð¤Ç¤¹¡£ -- kkkeeeyyy ¤Ëµ¡Ç½Ê¸»ú¤ò»ØÄꤷ¡¢file ¤ÎÄɲᢹ¹¿·¡¢Ãê½Ð¡¢ºï½ü¡¢°ì -- Í÷ɽ¼¨¤Ê¤É¤ò¹Ô¤Ê¤¤¤Þ¤¹¡£°ú¿ô¤Ë archive_file ¤Î¤ß¤ò»ØÄꤷ¤¿ -- ¾ì¹ç¤Ë¤Ï¡¢µ¡Ç½Ê¸»ú¤Ë l ¤ò»ØÄꤷ¤¿¤Î¤ÈƱÅù¤ÎÆ°ºî¤ò¹Ô¤Ê¤¤¤Þ -- ¤¹¡£ -- µ¡Ç½Ê¸»ú¤Ï°Ê²¼¤ÎÄ̤ê¤Ç¤¹¡£ -+ aa Äɲá£file ¤ò archive_file ¤ËÄɲä·¤Þ¤¹¡£ file ¤¬¥Ç¥£¥ì¥¯¥È¥ê¤Ç -+ ¤¢¤ì¤Ð¡¢¤½¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ë´Þ¤Þ¤ì¤ë¥Õ¥¡¥¤¥ë¤ò¤¹¤Ù¤ÆÄɲä·¤Þ¤¹¡£ - -- aaa Äɲá£file ¤ò archive_file ¤ËÄɲä·¤Þ¤¹¡£file ¤¬¥Ç -- ¥£¥ì¥¯¥È¥ê¤Ç¤¢¤ì¤Ð¡¢¤½¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ë´Þ¤Þ¤ì¤ë¥Õ¥¡ -- ¥¤¥ë¤ò¤¹¤Ù¤ÆÄɲä·¤Þ¤¹¡£ -+ uu ¹¹¿·¡£file ¤¬ archive_file ¤Ë³ÊǼ¤µ¤ì¤Æ¤¤¤Ê¤¤¤«¡¢¤â¤·¤¯¤Ï³ÊǼ¤µ -+ ¤ì¤Æ¤¤¤ë¤â¤Î¤¬¸Å¤±¤ì¤Ð¡¢file ¤ò archive_file ¤ËÄɲä·¤Þ¤¹¡£ - -- uuu ¹¹¿·¡£file ¤¬ archive_file ¤Ë³ÊǼ¤µ¤ì¤Æ¤¤¤Ê¤¤¤«¡¢ -- ¤â¤·¤¯¤Ï³ÊǼ¤µ¤ì¤Æ¤¤¤ë¤â¤Î¤¬¸Å¤±¤ì¤Ð¡¢file ¤ò -- archive_file ¤ËÄɲä·¤Þ¤¹¡£ -+ ll ¤Þ¤Þ¤¿¤¿¤Ï¤Ï vv -+ °ìÍ÷ɽ¼¨¡£archive_file ¤Ë³ÊǼ¤µ¤ì¤Æ¤¤¤ë file ¤Î¾ðÊó¤ò°ìÍ÷ɽ¼¨¤· -+ ¤Þ¤¹¡£file ¤Î»ØÄ꤬¤Ê¤±¤ì¤Ð archive_file Æâ¤ÎÁ´¤Æ¤Î¥Õ¥¡¥¤¥ë¤Î¾ð -+ Êó ¤ò ɽ ¼¨¤·¤Þ¤¹¡£ v ¤ò»ØÄꤹ¤ë¤È l ¤è¤ê¤â¾Ü¤·¤¤¾ðÊó¤òɽ¼¨¤·¤Þ -+ ¤¹¡£ - -- lll ¤Þ¤Þ¤Þ¤¿¤¿¤¿¤Ï¤Ï¤Ï vvv -- °ìÍ÷ɽ¼¨¡£archive_file ¤Ë³ÊǼ¤µ¤ì¤Æ¤¤¤ë file ¤Î¾ð -- Êó¤ò°ìÍ÷ɽ¼¨¤·¤Þ¤¹¡£file ¤Î»ØÄ꤬¤Ê¤±¤ì¤Ð -- archive_file Æâ¤ÎÁ´¤Æ¤Î¥Õ¥¡¥¤¥ë¤Î¾ðÊó¤òɽ¼¨¤·¤Þ¤¹ -- ¡£v ¤ò»ØÄꤹ¤ë¤È l ¤è¤ê¤â¾Ü¤·¤¤¾ðÊó¤òɽ¼¨¤·¤Þ¤¹¡£ -+ xx ¤Þ¤Þ¤¿¤¿¤Ï¤Ï ee -+ Ãê½Ð¡£archive_file ¤«¤é file ¤òÃê½Ð¤·¤Þ¤¹¡£file ¤Î»ØÄ꤬¤Ê¤± ¤ì -+ ¤Ð archive_file Æâ¤ÎÁ´¤Æ¤Î¥Õ¥¡¥¤¥ë¤òÃê½Ð¤·¤Þ¤¹¡£Ãê½Ð¤¹¤Ù¤¥Õ¥¡ -+ ¥¤¥ë¤¬¤¹¤Ç¤Ë¸ºß¤·¤Æ¤¤¤ë¾ì¹ç¤Ë¤Ï¡¢½Å¤Í½ñ¤¤·¤Æ¤¤¤¤¤«¤ÎÌ䤤¹ç ¤ï -+ ¤»¤ò¹Ô¤Ê¤¤¤Þ¤¹¡£ - -- xxx ¤Þ¤Þ¤Þ¤¿¤¿¤¿¤Ï¤Ï¤Ï eee -- Ãê½Ð¡£archive_file ¤«¤é file ¤òÃê½Ð¤·¤Þ¤¹¡£file ¤Î -- »ØÄ꤬¤Ê¤±¤ì¤Ð archive_file Æâ¤ÎÁ´¤Æ¤Î¥Õ¥¡¥¤¥ë¤òÃê -- ½Ð¤·¤Þ¤¹¡£Ãê½Ð¤¹¤Ù¤¥Õ¥¡¥¤¥ë¤¬¤¹¤Ç¤Ë¸ºß¤·¤Æ¤¤¤ë¾ì -- ¹ç¤Ë¤Ï¡¢½Å¤Í½ñ¤¤·¤Æ¤¤¤¤¤«¤ÎÌ䤤¹ç¤ï¤»¤ò¹Ô¤Ê¤¤¤Þ¤¹ -- ¡£ -+ pp ÆâÍÆɽ¼¨¡£archive_file ¤«¤é file ¤ÎÆâÍƤò¼è¤ê½Ð¤·¡¢É¸½à½ÐÎÏ¤Ø¤È -+ ½ÐÎϤ·¤Þ¤¹¡£file ¤Î»ØÄ꤬¤Ê¤±¤ì¤Ð¡¢Á´¤Æ¤ÎÆâÍƤò½ÐÎϤ·¤Þ¤¹¡£ - -- ppp ÆâÍÆɽ¼¨¡£archive_file ¤«¤é file ¤ÎÆâÍƤò¼è¤ê½Ð¤· -- ¡¢É¸½à½ÐÎϤؤȽÐÎϤ·¤Þ¤¹¡£file ¤Î»ØÄ꤬¤Ê¤±¤ì¤Ð¡¢ -- Á´¤Æ¤ÎÆâÍƤò½ÐÎϤ·¤Þ¤¹¡£ -+ dd ºï½ü¡£archive_file ¤«¤é file ¤òºï½ü¤·¤Þ¤¹¡£ - -- ddd ºï½ü¡£archive_file ¤«¤é file ¤òºï½ü¤·¤Þ¤¹¡£ -+ mm °ÜÆ°¡£file ¤ò archive_file ¤ËÄɲä·¤¿¸å¡¢file ¤òºï½ü¤·¤Þ¤¹¡£ ¤³ -+ ¤ì ¤Ï¡¢key ¤Ë a ¤ò¡¢modifiers ¤Ë d ¤ò»ØÄꤷ¤¿»þ¤ÈƱ¤¸Æ°ºî¤ò¹Ô¤Ê -+ ¤¤¤Þ¤¹¡£ - -- mmm °ÜÆ°¡£file ¤ò archive_file ¤ËÄɲä·¤¿¸å¡¢file ¤òºï -- ½ü¤·¤Þ¤¹¡£¤³¤ì¤Ï¡¢key ¤Ë a ¤ò¡¢modifiers ¤Ë d ¤ò»Ø -- Äꤷ¤¿»þ¤ÈƱ¤¸Æ°ºî¤ò¹Ô¤Ê¤¤¤Þ¤¹¡£ -+ cc ¿·µ¬ºîÀ®¡£archive_file ¤ò¿·¤¿¤ËºîÀ®¤·¡¢file ¤òÄɲä·¤Þ¤¹¡£ - -+ µ¡Ç½Êѹ¹Ê¸»ú modifiers ¤ò»ØÄꤹ¤ë¤³¤È¤Ë¤è¤Ã¤Æ key ¤ÎÆ°ºî¤Î¾ÜºÙ¤òÊѹ¹ ¤¹ -+ ¤ë ¤³ ¤È ¤¬¤Ç¤¤Þ¤¹¡£modifiers ¤Ï¡¢°Ê²¼¤ÎÃ椫¤éÊ£¿ô»ØÄꤹ¤ë¤³¤È¤¬¤Ç¤¤Þ -+ ¤¹¡£ - -- January 14,1997 1 - - -+ qq<<nnuumm>> ɽ¼¨¤ÎÍÞÀ©¡£ÂÐÏÃŪ¤Ê¥á¥Ã¥»¡¼¥¸¤Îɽ¼¨¤òÍÞÀ©¤·¤Þ¤¹¡£ <num> ¤ÎÃÍ¤Ë -+ ¤è¤Ã¤Æ¡¢INDICATOR ¤Îɽ¼¨ÊýË¡¤òÊѹ¹¤Ç¤¤Þ¤¹¡£ - --LHA(N) Unix Programmer's Manual LHA(N) -+ qq00 oooo........ ¤Î¤Îɽɽ¼¨¼¨¤ò¤ò¹Ô¹Ô¤Ê¤Ê¤¦¤¦¡£¡£ - -+ qq11 ¥Õ¥Õ¥¡¥¡¥¤¥¤¥ë¥ë̾̾ɽɽ¼¨¼¨¤Î¤Î¤ß¤ß¹Ô¹Ô¤Ê¤Ê¤¦¤¦¡£¡£ - -- ccc ¿·µ¬ºîÀ®¡£archive_file ¤ò¿·¤¿¤ËºîÀ®¤·¡¢file ¤òÄɲà -- ¤·¤Þ¤¹¡£ -+ qq22 ²¿²¿¤â¤âɽɽ¼¨¼¨¤·¤·¤Ê¤Ê¤¤¤¤¡£¡£ - -- µ¡Ç½Êѹ¹Ê¸»ú modifiers ¤ò»ØÄꤹ¤ë¤³¤È¤Ë¤è¤Ã¤Æ key ¤ÎÆ°ºî¤Î -- ¾ÜºÙ¤òÊѹ¹¤¹¤ë¤³¤È¤¬¤Ç¤¤Þ¤¹¡£modifiers ¤Ï¡¢°Ê²¼¤ÎÃ椫¤éÊ£ -- ¿ô»ØÄꤹ¤ë¤³¤È¤¬¤Ç¤¤Þ¤¹¡£ -+ ¤Ê¤ª¡¢ÃͤòÆþÎϤ·¤Ê¤«¤Ã¤¿ºÝ¤Ë¤Ï¡¢q2 ¤ÈƱÅù¤Ë¤Ê¤ê¤Þ¤¹¡£ - -+ vv ɽ¼¨¤Î¾éĹ²½¡£É½¼¨¤¹¤ë¥á¥Ã¥»¡¼¥¸¤ò¾éŤˤ·¤Þ¤¹¡£ - -+ nn ¼Â¹Ô¤·¤Ê¤¤¡£¼ÂºÝ¤Î¹¹¿·¤äÃê½Ð¤ÎÆ°ºî¤ò¹Ô¤Ê¤¤¤Þ¤»¤ó¡£¼Â¹ÔÆâÍƤγΠ-+ ǧ¤Î¤¿¤á¤ËÍÑ°Õ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£ - -- qqq<<<nnnuuummm>>> ɽ¼¨¤ÎÍÞÀ©¡£ÂÐÏÃŪ¤Ê¥á¥Ã¥»¡¼¥¸¤Îɽ¼¨¤òÍÞÀ©¤·¤Þ¤¹¡£ -- <num> ¤ÎÃͤˤè¤Ã¤Æ¡¢INDICATOR ¤Îɽ¼¨ÊýË¡¤òÊѹ¹¤Ç¤ -- ¤Þ¤¹¡£ -+ ff ¶¯À©Åª¤Ê¼Â¹Ô¡£¥Õ¥¡¥¤¥ë¤ÎÃê½Ð»þ¤Ë¡¢Â¸ºß¤¹¤ë¥Õ¥¡¥¤¥ë¤Îºï½ü³Îǧ ¤ò -+ ¹Ô¤Ê¤ï¤º¶¯À©Åª¤Ëºï½ü¤ò¹Ô¤Ê¤¤¤Þ¤¹¡£ - -- qqq000 oooooo............ ¤Î¤Î¤Îɽɽɽ¼¨¼¨¼¨¤ò¤ò¤ò¹Ô¹Ô¹Ô¤Ê¤Ê¤Ê¤¦¤¦¤¦¡£¡£¡£ -+ tt ¥Æ¥¥¹¥È¥â¡¼¥É¤Ë¤è¤ë³ÊǼ,Ãê½Ð¡£¥¢¡¼¥«¥¤¥Ö¥Õ¥¡¥¤¥ë¤Ø¤Î¥Õ¥¡¥¤¥ë¤Î -+ ³ÊǼ»þ¤Ë¤Ï¡¢ UNIX ¤«¤é MS-DOS ¤Ø¤Î²þ¹Ô¥³¡¼¥ÉÊÑ´¹¤ò¹Ô¤Ê¤¤¤Þ ¤¹¡£ -+ ¥Õ¥¡¥¤¥ë¤ÎÃê½Ð»þ¤Ë¤ÏµÕ¤Ë¡¢MS-DOS ¤«¤é UNIX ¤Ø¤Î²þ¹Ô¥³¡¼¥ÉÊÑ´¹¤ò -+ ¹Ô¤Ê¤¤¤Þ¤¹¡£ - -- qqq111 ¥Õ¥Õ¥Õ¥¡¥¡¥¡¥¤¥¤¥¤¥ë¥ë¥ë̾̾̾ɽɽɽ¼¨¼¨¼¨¤Î¤Î¤Î¤ß¤ß¤ß¹Ô¹Ô¹Ô¤Ê¤Ê¤Ê¤¦¤¦¤¦¡£¡£¡£ -+ oo{{nnuumm}} LHarc ¸ß´¹¥¢¡¼¥«¥¤¥Ö¤ÎÀ¸À®¡¢¤Þ¤¿¤Ï°µ½Ì¥¢¥ë¥´¥ê¥º¥à¤ò»ØÄꤹ ¤ë¡£ -+ µ¡Ç½Ê¸»ú a, u, m ¤È¶¦¤Ë»ØÄꤷ¡¢Ãê½Ð»þ¤Ë¤Ï̵»ë¤µ¤ì¤Þ¤¹¡£ - -- qqq222 ²¿²¿²¿¤â¤â¤âɽɽɽ¼¨¼¨¼¨¤·¤·¤·¤Ê¤Ê¤Ê¤¤¤¤¤¤¡£¡£¡£ -+ oo LLHHaarrcc ¸ß¸ß´¹´¹¥¢¥¢¡¼¡¼¥«¥«¥¤¥¤¥Ö¥Ö¤Î¤ÎÀ¸À¸À®À®¤ò¤ò¹Ô¹Ô¤¦¤¦¡£¡£ - -- ¤Ê¤ª¡¢ÃͤòÆþÎϤ·¤Ê¤«¤Ã¤¿ºÝ¤Ë¤Ï¡¢q2 ¤ÈƱÅù¤Ë¤Ê¤ê¤Þ -- ¤¹¡£ -+ ¸Å ¤¤ ·Á ¼° ¤Î ¥¢¡¼ ¥«¥¤¥Ö¤òÀ¸À®¤·¤Þ¤¹¡£°µ½Ì¥¢¥ë¥´¥ê¥º¥à -+ ¤Ï-lh1-¤ò»ÈÍѤ·¤Þ¤¹¡£ - -- vvv ɽ¼¨¤Î¾éĹ²½¡£É½¼¨¤¹¤ë¥á¥Ã¥»¡¼¥¸¤ò¾éŤˤ·¤Þ¤¹¡£ -+ oo55 °µ°µ½Ì½Ì¥¢¥¢¥ë¥ë¥´¥´¥ê¥ê¥º¥º¥à¥à¤Ë¤Ë --llhh55-- ¤ò¤ò»È»ÈÍÑÍѤ¹¤¹¤ë¤ë¡£¡£ - -- nnn ¼Â¹Ô¤·¤Ê¤¤¡£¼ÂºÝ¤Î¹¹¿·¤äÃê½Ð¤ÎÆ°ºî¤ò¹Ô¤Ê¤¤¤Þ¤»¤ó¡£ -- ¼Â¹ÔÆâÍƤγÎǧ¤Î¤¿¤á¤ËÍÑ°Õ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£ -+ oo66 °µ°µ½Ì½Ì¥¢¥¢¥ë¥ë¥´¥´¥ê¥ê¥º¥º¥à¥à¤Ë¤Ë --llhh66-- ¤ò¤ò»È»ÈÍÑÍѤ¹¤¹¤ë¤ë¡£¡£ - -- fff ¶¯À©Åª¤Ê¼Â¹Ô¡£¥Õ¥¡¥¤¥ë¤ÎÃê½Ð»þ¤Ë¡¢Â¸ºß¤¹¤ë¥Õ¥¡¥¤¥ë -- ¤Îºï½ü³Îǧ¤ò¹Ô¤Ê¤ï¤º¶¯À©Åª¤Ëºï½ü¤ò¹Ô¤Ê¤¤¤Þ¤¹¡£ -+ LHA¤Î¼ïÎà¤Ë¤è¤Ã¤Æ¤Ï¡¢-lh6-¤ÇÀ¸À®¤µ¤ì¤¿¥¢¡¼¥«¥¤¥Ö¤ÏÃê½Ð¤Ç¤¤Ê ¤¤ -+ ¶² ¤ì ¤¬ ¤¢¤ë¤Î¤Ç¡¢¥¢¡¼¥«¥¤¥Ö¤òÇÛÉÛ¤¹¤ëºÝ¤Ë¤ÏÃí°Õ¤·¤Æ¤¯¤À¤µ¤¤¡£ -+ MSDOSÈǤÎÀµµ¬ÇÛÉÛÈÇ¤Ç¤Ï -lh6- ¤ÎÀ¸À®¤Ï¹Ô¤¤¤Þ¤»¤ó¡£¤Þ¤¿¡¢MSDOSÈÇ -+ LHA version 2.5x °Ê¹ß¤Î¥Ð¡¼¥¸¥ç¥ó¤Ç¤Ï -lh6- ¤ÎÃê½Ð¤Î¤ß¤Ç¤¤Þ -+ ¤¹¡£ - -- ttt ¥Æ¥¥¹¥È¥â¡¼¥É¤Ë¤è¤ë³ÊǼ,Ãê½Ð¡£¥¢¡¼¥«¥¤¥Ö¥Õ¥¡¥¤¥ë -- ¤Ø¤Î¥Õ¥¡¥¤¥ë¤Î³ÊǼ»þ¤Ë¤Ï¡¢UNIX ¤«¤é MS-DOS ¤Ø¤Î²þ -- ¹Ô¥³¡¼¥ÉÊÑ´¹¤ò¹Ô¤Ê¤¤¤Þ¤¹¡£¥Õ¥¡¥¤¥ë¤ÎÃê½Ð»þ¤Ë¤ÏµÕ¤Ë -- ¡¢MS-DOS ¤«¤é UNIX ¤Ø¤Î²þ¹Ô¥³¡¼¥ÉÊÑ´¹¤ò¹Ô¤Ê¤¤¤Þ¤¹ -- ¡£ -+ ww==<<//ddiirr>> -+ ³ÊǼ¤ª¤è¤ÓÃê½Ð»þ¤Î¥ï¡¼¥¯Íѥǥ£¥ì¥¯¥È¥ê »Ø Äê¡£ ¥Ç ¥Õ¥© ¥ë ¥È ¤Ç -+ ¤Ï¡¢/tmp ¤Ç¤¹¤¬¡¢/tmp ¤ÎÂ礤µ°Ê¾å¤Î¥Õ¥¡¥¤¥ë¤ò³ÊǼ¤¹¤ëºÝ¤Ë¤Ïɬ -+ ÍפǤ¹¡£ - -- ooo{{{nnnuuummm}}} LHarc ¸ß´¹¥¢¡¼¥«¥¤¥Ö¤ÎÀ¸À®¡¢¤Þ¤¿¤Ï°µ½Ì¥¢¥ë¥´¥ê¥º¥à -- ¤ò»ØÄꤹ¤ë¡£µ¡Ç½Ê¸»ú a, u, m ¤È¶¦¤Ë»ØÄꤷ¡¢Ãê½Ð»þ -- ¤Ë¤Ï̵»ë¤µ¤ì¤Þ¤¹¡£ -+ dd ¥Õ¥¡¥¤¥ë³ÊǼ¸å¤Î¥Õ¥¡¥¤¥ë¤Îºï½ü¡£µ¡Ç½Ê¸»ú a, ¤â¤·¤¯¤Ï u ¤È¶¦¤ËÍÑ -+ ¤¤¡¢ ¥¢¡¼¥«¥¤¥Ö¥Õ¥¡¥¤¥ë¤Ø¤Î¥Õ¥¡¥¤¥ë¤Î³ÊǼ¤Î¸å¤Ë¥Õ¥¡¥¤¥ë¤òºï½ü¤· -+ ¤Þ¤¹¡£ u ¤ËÉղä·¤¿¾ì¹ç¡¢¥¢¡¼¥«¥¤¥Ö¥Õ¥¡¥¤¥ë¤ÎÆâÍƤÎÊý¤¬¿·¤·¤¤»þ -+ ¤Ë ¥Õ¥¡ ¥¤ ¥ë¤¬³ÊǼ¤µ¤ì¤º¤Ëºï½ü¤µ¤ì¤ë¤³¤È¤Ë¤Ê¤ë¤Î¤ÇÃí°Õ¤·¤Æ²¼¤µ -+ ¤¤¡£ - -- ooo LLLHHHaaarrrccc ¸ß¸ß¸ß´¹´¹´¹¥¢¥¢¥¢¡¼¡¼¡¼¥«¥«¥«¥¤¥¤¥¤¥Ö¥Ö¥Ö¤Î¤Î¤ÎÀ¸À¸À¸À®À®À®¤ò¤ò¤ò¹Ô¹Ô¹Ô¤¦¤¦¤¦¡£¡£¡£ -+ ii Ãê½Ð»þ¤Î¥Ç¥£¥ì¥¯¥È¥ê̾¤Î̵¸ú²½¡£Ãê½Ð»þ¤Ë¥Ç¥£¥ì¥¯¥È¥ê̾¤ò̵¸ú ¤Ë -+ ¤·¤Þ¤¹¡£ - -- ¸Å¤¤·Á¼°¤Î¥¢¡¼¥«¥¤¥Ö¤òÀ¸À®¤·¤Þ¤¹¡£°µ½Ì¥¢¥ë¥´ -- ¥ê¥º¥à¤Ï-lh1-¤ò»ÈÍѤ·¤Þ¤¹¡£ -+ zz Èó °µ ½Ì³ÊǼ¡£¥¢¡¼¥«¥¤¥Ö¤Ø¤Î¥Õ¥¡¥¤¥ë¤Î³ÊǼ»þ¤Ë°µ½Ì¤ò¹Ô¤Ê¤¤¤Þ¤» -+ ¤ó¡£¤¹¤Ç¤Ë°µ½Ì¤ò¹Ô¤Ê¤Ã¤Æ¤¤¤Æ°µ½Ì¸úΨ¤ò˾¤á¤Ê¤¤¾ì¹ç¤Ê¤É¤Ë»ÈÍÑ ¤· -+ ¤Þ¤¹¡£Ãê½Ð»þ¤Ë¤Ï̵»ë¤µ¤ì¤Þ¤¹¡£ - -+ gg [generic]¥¢¡¼¥«¥¤¥Ö¤ÎºîÀ®¡£ UNIX ÍѤÎÉղþðÊó¤ò»ý¤¿¤Ê¤¤¥¢¡¼¥«¥¤ -+ ¥Ö¥Õ¥¡¥¤¥ë¤òÀ¸À®¤·¤Þ¤¹¡£Ãê½Ð»þ¤Ë¤Ï̵»ë¤µ¤ì¤Þ¤¹¡£ - -+ 00//11//22 ¥Ø¥Ã¥À¥ì¥Ù¥ë»ØÄê¡£¥¢¡¼¥«¥¤¥Ö¤ÎÆâÉôɽ¸½¤Î·Á¼°¤ò»ØÄꤷ ¤Þ ¤¹¡£ ¥Ç -+ ¥Õ¥© ¥ë¥È¤Ç¤Ï 1 ¤Ç¤¹¡£0 ¤Ï LHarc ¤ÇÍÑ°Õ¤µ¤ì¤Æ¤¤¤¿¸Å¤¤·Á¼°¤Ç¤¹¡£ -+ ¾Íè¤Ï 2 ¤Î·Á¼°¤ËÅý°ì¤µ¤ì¤ë¤è¤¦¤Ç¤¹¡£¤³¤ì¤Ï¥Õ¥¡¥¤¥ë¤Î³ÊǼ»þ¤Î¤ß -+ ͸ú¤Ç¤¹¡£¥Õ¥¡¥¤¥ë¤ÎÃê½Ð»þ¤Ë¤Ï¼«Æ°Åª¤Ë·Á¼°¤òȽÃǤ·½èÍý¤·¤Þ¤¹¡£ - -- January 14,1997 2 -+ _a_r_c_h_i_v_e___f_i_l_e ¤Ë¤Ï¥¢¡¼¥«¥¤¥Ö¥Õ¥¡¥¤¥ë¤ò»ØÄꤷ¤Þ¤¹¡£ - -+ _a_r_c_h_i_v_e___f_i_l_e ¤Ë _- ¤È½ñ¤¯¤³¤È¤Ë¤è¤Ã¤Æ¡¢¥¢¡¼¥«¥¤¥Ö¥Õ¥¡¥¤¥ë¤òɸ½àÆþ½ÐÎÏ¤Ë -+ ¤¹¤ë¤³¤È¤¬²Äǽ¤Ç¤¹¡£ ttaarr(1) ¤Î¤è¤¦¤Ë¡¢¥¢¡¼¥«¥¤¥Ö¤ÎºîÀ®¡¢¹¹¿·»þ¤Ë¤Ïɸ ½à -+ ½ÐÎϤˡ¢¥¢¡¼¥«¥¤¥Ö¤«¤é¤Î¥Õ¥¡¥¤¥ë¤ÎÃê½Ð»þ¤Ë¤Ïɸ½àÆþÎϤˤʤê¤Þ¤¹¡£ - -+ Ãê ½Ð»þ¤Ë _a_r_c_h_i_v_e___f_i_l_e ¤¬Â¸ºß¤·¤Ê¤¤»þ¤Ë¤Ï¥µ¥Õ¥£¥Ã¥¯¥¹ ..llzzhh ¤ò¥Õ¥¡¥¤¥ë̾ -+ ¤Î¸å¤í¤ËÉղä·¤ÆÃê½Ð¤ò»î¤ß¤Þ¤¹¡£ -+ Æä˵¬Äê¤Ï¤¢¤ê¤Þ¤»¤ó¤¬¡¢±¿ÍѾ奵¥Õ¥£¥Ã¥¯¥¹¤È¤·¤Æ ..llzzhh ¤òÍѤ¤¤ë¤Î¤¬Ë¾ ¤Þ -+ ¤· ¤¤¤È»×¤¤¤Þ¤¹¡£ÆüËܰʳ°¤Ç¤Ï ..llhhaa ¤ò»ÈÍѤ·¤Æ¤¤¤ë¥±¡¼¥¹¤¬¤¢¤ë¤½¤¦¤Ç¤¹¤Î -+ ¤Ç¡¢Å¬µ¹Ä´À°¤·¤Æ²¼¤µ¤¤¡£:-) -+ ¥µ¥Õ¥£¥Ã¥¯¥¹¤¬ ccoomm ¤â¤·¤¯¤Ï ..eexxee ¤Î¾ì¹ç¤Ë¤Ï¡¢MS-DOS ÈǤǺîÀ®¤µ¤ì¤¿ _S_F_X( -+ ¼«¸ÊŸ³«µ¡Ç½ÉÕ¤¤Î°µ½Ì¥Õ¥¡¥¤¥ë) ·Á¼°¤«¤É¤¦¤«¤ò¥Á¥§¥Ã¥¯¤·¡¢Âбþ¤·¤Þ¤¹¡£ -+ ¥µ ¥Õ¥£¥Ã¥¯¥¹¤¬ ..xx ¤Î¾ì¹ç¤Ë¤Ï¡¢ÆüËÜÀ½ SHARP X68000 ¤Î OS, Human68k ÈÇ¤Ç -+ ºîÀ®¤µ¤ì¤¿ SFX ·Á¼°¤«¤É¤¦¤«¤ò¥Á¥§¥Ã¥¯¤·Âбþ¤·¤Þ¤¹¡£ -+ SFX ·Á¼°¤Î¥¢¡¼¥«¥¤¥Ö¥Õ¥¡¥¤¥ë¤ËÂФ·¤ÆÄɲääºï½ü¤ò¹Ô¤Ã¤¿ ¾ì ¹ç ¤Ë ¤Ï¡¢ ¥µ -+ ¥Õ¥£¥Ã¥¯¥¹¤ò ..llzzhh ¤ËÊѹ¹¤·¡¢SFX ¤Î¾ðÊó¤òºï½ü¤·¤Þ¤¹¡£ - --LHA(N) Unix Programmer's Manual LHA(N) - -+FFIILLEESS ¥Õ¥Õ¥¡¥¡¥¤¥¤¥ë¥ë -+ *.lzh - LHa/LHarc ¥¢¡¼¥«¥¤¥Ö¥Õ¥¡¥¤¥ë -+ *.bak - ¥Ð¥Ã¥¯¥¢¥Ã¥×¥Õ¥¡¥¤¥ë -+ /tmp/lh* - ¥Æ¥ó¥Ý¥é¥ê¥Õ¥¡¥¤¥ë -+ *.com *.exe - MS-DOS SFX ¥Õ¥¡¥¤¥ë -+ *.x - Human68k SFX ¥Õ¥¡¥¤¥ë - -- ooo555 °µ°µ°µ½Ì½Ì½Ì¥¢¥¢¥¢¥ë¥ë¥ë¥´¥´¥´¥ê¥ê¥ê¥º¥º¥º¥à¥à¥à¤Ë¤Ë¤Ë ---lllhhh555- ¤ò¤ò¤ò»È»È»ÈÍÑÍÑÍѤ¹¤¹¤¹¤ë¤ë¤ë¡£¡£¡£ - -- ooo666 °µ°µ°µ½Ì½Ì½Ì¥¢¥¢¥¢¥ë¥ë¥ë¥´¥´¥´¥ê¥ê¥ê¥º¥º¥º¥à¥à¥à¤Ë¤Ë¤Ë ---lllhhh666- ¤ò¤ò¤ò»È»È»ÈÍÑÍÑÍѤ¹¤¹¤¹¤ë¤ë¤ë¡£¡£¡£ -+SSEEEE AALLSSOO ´Ø´ØϢϢ¹à¹àÌÜÌÜ -+ ttaarr(1), aarr(1), ccoommpprreessss(1) - -- LHA¤Î¼ïÎà¤Ë¤è¤Ã¤Æ¤Ï¡¢-lh6-¤ÇÀ¸À®¤µ¤ì¤¿¥¢¡¼¥«¥¤¥Ö¤Ï -- Ãê½Ð¤Ç¤¤Ê¤¤¶²¤ì¤¬¤¢¤ë¤Î¤Ç¡¢¥¢¡¼¥«¥¤¥Ö¤òÇÛÉÛ¤¹¤ëºÝ -- ¤Ë¤ÏÃí°Õ¤·¤Æ¤¯¤À¤µ¤¤¡£MSDOSÈǤÎÀµµ¬ÇÛÉÛÈÇ¤Ç¤Ï -lh6- -- ¤ÎÀ¸À®¤Ï¹Ô¤¤¤Þ¤»¤ó¡£¤Þ¤¿¡¢MSDOSÈÇ LHA version 2.5x -- °Ê¹ß¤Î¥Ð¡¼¥¸¥ç¥ó¤Ç¤Ï -lh6- ¤ÎÃê½Ð¤Î¤ß¤Ç¤¤Þ¤¹¡£ -+DDIISSTTRRIIBBUUTTIIOONN ºÆºÆÇÛÇÛÉÛÉۤˤˤĤĤ¤¤¤¤Æ¤Æ -+ °Ê²¼¤Î¾ò·ï¤Ç¡¢ºÆÇÛÉÛ¡¢Å¾ºÜ¡¢²þÊѤòµö²Ä¤·¤Þ¤¹¡£ - -- www===<<<///dddiiirrr>>> -- ³ÊǼ¤ª¤è¤ÓÃê½Ð»þ¤Î¥ï¡¼¥¯Íѥǥ£¥ì¥¯¥È¥ê»ØÄê¡£¥Ç¥Õ¥© -- ¥ë¥È¤Ç¤Ï¡¢/tmp ¤Ç¤¹¤¬¡¢/tmp ¤ÎÂ礤µ°Ê¾å¤Î¥Õ¥¡¥¤¥ë -- ¤ò³ÊǼ¤¹¤ëºÝ¤Ë¤ÏɬÍפǤ¹¡£ -+ 1. Ãøºî¸¢É½¼¨¤òºï½ü¤·¤Ê¤¤¤³¤È¡£ - -- ddd ¥Õ¥¡¥¤¥ë³ÊǼ¸å¤Î¥Õ¥¡¥¤¥ë¤Îºï½ü¡£µ¡Ç½Ê¸»ú a, ¤â¤·¤¯ -- ¤Ï u ¤È¶¦¤ËÍѤ¤¡¢¥¢¡¼¥«¥¤¥Ö¥Õ¥¡¥¤¥ë¤Ø¤Î¥Õ¥¡¥¤¥ë¤Î -- ³ÊǼ¤Î¸å¤Ë¥Õ¥¡¥¤¥ë¤òºï½ü¤·¤Þ¤¹¡£u ¤ËÉղä·¤¿¾ì¹ç¡¢ -- ¥¢¡¼¥«¥¤¥Ö¥Õ¥¡¥¤¥ë¤ÎÆâÍƤÎÊý¤¬¿·¤·¤¤»þ¤Ë¥Õ¥¡¥¤¥ë¤¬ -- ³ÊǼ¤µ¤ì¤º¤Ëºï½ü¤µ¤ì¤ë¤³¤È¤Ë¤Ê¤ë¤Î¤ÇÃí°Õ¤·¤Æ²¼¤µ¤¤ -- ¡£ -+ 2. ÇÛÉÛÆâÍƤˤĤ¤¤Æ¤Ï¡¢ - -- iii Ãê½Ð»þ¤Î¥Ç¥£¥ì¥¯¥È¥ê̾¤Î̵¸ú²½¡£Ãê½Ð»þ¤Ë¥Ç¥£¥ì¥¯¥È -- ¥ê̾¤ò̵¸ú¤Ë¤·¤Þ¤¹¡£ -+ a. ÇÛ Éۤκݤ˸ºß¤¹¤ëÆâÍÆ(¤¹¤Ê¤ï¤Á¥½¡¼¥¹¥³¡¼¥É¡¢¥É¥¥å¥á¥ó -+ ¥È¡¢¥×¥í¥°¥é¥Þ¡¼¤Ø¤Î¼ê°ú¤¤Ê¤É)¤¬ºÆÇÛÉÛ¤µ¤ì¤¿¤â¤Î¤ÎÃæ¤Ëɬ -+ ¤º ¸ ºß ¤¹¤ë¤³¤È¡£²þÊѤµ¤ì¤Æ¤¤¤ë¤Ê¤é¤Ð¡¢¤½¤ì¤òÌÀ¼¨¤·¤¿¥É -+ ¥¥å¥á¥ó¥È¤òÍÑ°Õ¤¹¤ë¤³¤È¡£ - -- zzz È󰵽̳ÊǼ¡£¥¢¡¼¥«¥¤¥Ö¤Ø¤Î¥Õ¥¡¥¤¥ë¤Î³ÊǼ»þ¤Ë°µ½Ì¤ò -- ¹Ô¤Ê¤¤¤Þ¤»¤ó¡£¤¹¤Ç¤Ë°µ½Ì¤ò¹Ô¤Ê¤Ã¤Æ¤¤¤Æ°µ½Ì¸úΨ¤ò˾ -- ¤á¤Ê¤¤¾ì¹ç¤Ê¤É¤Ë»ÈÍѤ·¤Þ¤¹¡£Ãê½Ð»þ¤Ë¤Ï̵»ë¤µ¤ì¤Þ¤¹ -- ¡£ -+ b. LHa ¤ËÂФ¹¤ëÉղòÁÃͤ¬ÉÕ¤±¤é¤ì¤ÆºÆÇÛÉÛ¤µ¤ì¤ë¾ì¹ç¤Ë¤Ï¤½ ¤ì -+ ¤é ¤â¤Ç¤¤ë¤À¤±´Þ¤á¤ë¤è¤¦ÅØÎϤ¹¤ë¤³¤È¡£¤Þ¤¿¡¢¤½¤ÎºÝ¤Ë¤ÏÉÕ -+ ²Ã²ÁÃͤ¬ÉÕ¤±¤é¤ì¤Æ¤¤¤ë¤³¤È¤òÌÀ¼¨¤·¤¿¥É¥¥å¥á¥ó¥È¤òÍÑ°Õ ¤¹ -+ ¤ë¤³¤È¡£ - -- ggg [generic]¥¢¡¼¥«¥¤¥Ö¤ÎºîÀ®¡£UNIX ÍѤÎÉղþðÊó¤ò»ý¤¿ -- ¤Ê¤¤¥¢¡¼¥«¥¤¥Ö¥Õ¥¡¥¤¥ë¤òÀ¸À®¤·¤Þ¤¹¡£Ãê½Ð»þ¤Ë¤Ï̵»ë -- ¤µ¤ì¤Þ¤¹¡£ -+ c. ¥Ð¥¤¥Ê¥ê¤Î¤ß¤ÎÇÛÉۤϵö¤µ¤ì¤Ê¤¤¡£(ÉղòÁÃͤΤâ¤Î¤â´Þ¤à) - -- 000///111///222 ¥Ø¥Ã¥À¥ì¥Ù¥ë»ØÄê¡£¥¢¡¼¥«¥¤¥Ö¤ÎÆâÉôɽ¸½¤Î·Á¼°¤ò»ØÄê -- ¤·¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï 1 ¤Ç¤¹¡£0 ¤Ï LHarc ¤ÇÍÑ°Õ¤µ -- ¤ì¤Æ¤¤¤¿¸Å¤¤·Á¼°¤Ç¤¹¡£¾Íè¤Ï 2 ¤Î·Á¼°¤ËÅý°ì¤µ¤ì¤ë -- ¤è¤¦¤Ç¤¹¡£¤³¤ì¤Ï¥Õ¥¡¥¤¥ë¤Î³ÊǼ»þ¤Î¤ß͸ú¤Ç¤¹¡£¥Õ¥¡ -- ¥¤¥ë¤ÎÃê½Ð»þ¤Ë¤Ï¼«Æ°Åª¤Ë·Á¼°¤òȽÃǤ·½èÍý¤·¤Þ¤¹¡£ -+ 3. ºÇ¿·ÈǤÎÇÛÉÛ¤Ë̳¤á¤ë¤³¤È¡£(µÁ̳¤Ï¤Ê¤¤) - -- _a_r_c_h_i_v_e__f_i_l_e ¤Ë¤Ï¥¢¡¼¥«¥¤¥Ö¥Õ¥¡¥¤¥ë¤ò»ØÄꤷ¤Þ¤¹¡£ -+ Ãí. ¤Ê¤ª¡¢¥Í¥Ã¥È¤Ç¤ÎÇÛÉդϼ«Í³¤Ç¤¢¤ë¤¬¡¢¥Í¥Ã¥È¤Ë¥¢¥¯¥»¥¹¤Ç¤ -+ ¤Ê¤¤Êý¡Ê»¨»ï¤ª¤è¤Ó¡¢ CD-ROM ¤Ê¤É¤Ë¤è¤ë¡ËÇÛÉդϡ¢ÇÛÉÕÁ° ¤Ë -+ ¤³ ¤Á¤é¤Ë E-Mail ¤ò¤ª´ê¤¤¤·¤Þ¤¹¡£ÇÛÉÕÁ°¤Ë½ÐÍè¤Ê¤¤ºÝ¤Ë¤Ï¡¢ -+ ¸åÆüɬ¤º E-Mail ¤ò¤ª´ê¤¤¤·¤Þ¤¹¡£ - -- _a_r_c_h_i_v_e__f_i_l_e ¤Ë- ¤È½ñ¤¯¤³¤È¤Ë¤è¤Ã¤Æ¡¢¥¢¡¼¥«¥¤¥Ö¥Õ¥¡¥¤¥ë¤ò -- ɸ½àÆþ½ÐÎϤˤ¹¤ë¤³¤È¤¬²Äǽ¤Ç¤¹¡£tttaaarrr(1) ¤Î¤è¤¦¤Ë¡¢¥¢¡¼¥«¥¤ -- ¥Ö¤ÎºîÀ®¡¢¹¹¿·»þ¤Ë¤Ïɸ½à½ÐÎϤˡ¢¥¢¡¼¥«¥¤¥Ö¤«¤é¤Î¥Õ¥¡¥¤¥ë¤Î -+ 4. ¤³¤Î¥×¥í¥°¥é¥à¤Î¸ºß¤ä»ÈÍѤ·¤¿¤³¤È¤Ë¤è¤Ã¤ÆÀ¸¤¸¤¿Â»³²¤ÏÁ´¤¯Êݾڤ· -+ ¤Ê¤¤¡£ - -+ 5. ºî¼Ô¤Ï¡¢¤³¤Î¥×¥í¥°¥é¥à¤ËÉÔÈ÷¤¬¤¢¤Ã¤Æ¤â¡¢¤½¤ì¤òÄûÀµ¤¹¤ëµÁ̳¤òÉé¤ï -+ ¤Ê¤¤¡£ - -- January 14,1997 3 -+ 6. ¤³¤Î¥×¥í¥°¥é¥à¤Î°ìÉô¡¢¤Þ¤¿¤ÏÁ´Éô¤ò¾¤Î¥×¥í¥°¥é¥à¤ËÁȤ߹þ¤ó¤ÇÍøÍÑ -+ ¤· ¤Æ¤â¤«¤Þ¤ï¤Ê¤¤¡£¤³¤Î¾ì¹ç¡¢¤½¤Î¥×¥í¥°¥é¥à¤Ï LHa ¤Ç¤Ï¤Ê¤¯¡¢ LHa -+ ¤È̾¾è¤Ã¤Æ¤Ï¤¤¤±¤Ê¤¤¡£ - -+ 7. ¾¦ÍøÍѤ˴ؤ·¤Æ¤Ï¡¢¾åµ¤Î¾ò·ï¤Ë²Ã¤¨¡¢²¼µ¤Î¾ò·ï¤Î¤â¤È¤Ë¤³¤ì¤òǧ¤á -+ ¤ë¡£ - -+ a. ¤³¤Î¥×¥í¥°¥é¥à¤ò¥á¥¤¥ó¤È¤¹¤ë¾¦ÍøÍѤ϶ػߤ¹¤ë¡£ - --LHA(N) Unix Programmer's Manual LHA(N) -+ b. ¾¦ÍøÍѤÎÁê¼ê¤¬¤³¤Î¥×¥í¥°¥é¥à¤Î»ÈÍѼԤȤ·¤ÆÉÔŬÀÚ¤ÈȽÃǤ· -+ ¤¿¾ì¹ç¤Ë¤ÏÇÛÉÛ¤·¤Ê¤¤¡£ - -+ c. ¥¤¥ó¥¹¥È¡¼¥ë¤Î¼êÃʤȤ·¤Æ»ÈÍѤ¹¤ë¾ì¹ç¡¢¤³¤Î¥×¥í¥°¥é¥à¤ò »È -+ ¤¦ ¤³ ¤È ¤òÁê¼ê¤Ë¶¯À©¤·¤Ê¤¤¡£¤³¤Î¾ì¹ç¡¢¾¦ÍøÍѼԤ¬ºî¶È¤ò¹Ô -+ ¤¦¡£¤Þ¤¿¡¢¤½¤Î¤È¤¤Î»³²¤Ï¡¢¾¦ÍøÍѼԤ¬Á´ÀÕǤ¤òÉ餦¡£ - -- Ãê½Ð»þ¤Ë¤Ïɸ½àÆþÎϤˤʤê¤Þ¤¹¡£ -+ d. ¾¦ÍøÍѤòÉղòÁÃͤȤ·¤Æ¹Ô¤¤¤³¤Î¥×¥í¥°¥é¥à¤ò»ÈÍѤ¹¤ë¾ì ¹ç¡¢ -+ ¾¦ÍøÍѼԤϡ¢¤½¤Î¥µ¥Ý¡¼¥È¤ò¹Ô¤¦¡£ - -- Ãê½Ð»þ¤Ë_a_r_c_h_i_v_e__f_i_l_e ¤¬Â¸ºß¤·¤Ê¤¤»þ¤Ë¤Ï¥µ¥Õ¥£¥Ã¥¯¥¹...lllzzzhhh ¤ò -- ¥Õ¥¡¥¤¥ë̾¤Î¸å¤í¤ËÉղä·¤ÆÃê½Ð¤ò»î¤ß¤Þ¤¹¡£ -- Æä˵¬Äê¤Ï¤¢¤ê¤Þ¤»¤ó¤¬¡¢±¿ÍѾ奵¥Õ¥£¥Ã¥¯¥¹¤È¤·¤Æ...lllzzzhhh ¤òÍÑ -- ¤¤¤ë¤Î¤¬Ë¾¤Þ¤·¤¤¤È»×¤¤¤Þ¤¹¡£ÆüËܰʳ°¤Ç¤Ï ...lllhhhaaa ¤ò»ÈÍѤ·¤Æ¤¤ -- ¤ë¥±¡¼¥¹¤¬¤¢¤ë¤½¤¦¤Ç¤¹¤Î¤Ç¡¢Å¬µ¹Ä´À°¤·¤Æ²¼¤µ¤¤¡£:-) -- ¥µ¥Õ¥£¥Ã¥¯¥¹¤¬cccooommm ¤â¤·¤¯¤Ï...eeexxxeee ¤Î¾ì¹ç¤Ë¤Ï¡¢MS-DOS ÈǤǺîÀ® -- ¤µ¤ì¤¿_S_F_X(¼«¸ÊŸ³«µ¡Ç½ÉÕ¤¤Î°µ½Ì¥Õ¥¡¥¤¥ë) ·Á¼°¤«¤É¤¦¤«¤ò¥Á -- ¥§¥Ã¥¯¤·¡¢Âбþ¤·¤Þ¤¹¡£ -- ¥µ¥Õ¥£¥Ã¥¯¥¹¤¬...xxx ¤Î¾ì¹ç¤Ë¤Ï¡¢ÆüËÜÀ½ SHARP X68000 ¤Î OS, -- Human68k ÈǤǺîÀ®¤µ¤ì¤¿ SFX ·Á¼°¤«¤É¤¦¤«¤ò¥Á¥§¥Ã¥¯¤·Âбþ¤· -- ¤Þ¤¹¡£ -- SFX ·Á¼°¤Î¥¢¡¼¥«¥¤¥Ö¥Õ¥¡¥¤¥ë¤ËÂФ·¤ÆÄɲääºï½ü¤ò¹Ô¤Ã¤¿¾ì¹ç -- ¤Ë¤Ï¡¢¥µ¥Õ¥£¥Ã¥¯¥¹¤ò...lllzzzhhh ¤ËÊѹ¹¤·¡¢SFX ¤Î¾ðÊó¤òºï½ü¤·¤Þ¤¹ -- ¡£ - --FFFIIILLLEEESSS ¥Õ¥Õ¥Õ¥¡¥¡¥¡¥¤¥¤¥¤¥ë¥ë¥ë -- *.lzh - LHa/LHarc ¥¢¡¼¥«¥¤¥Ö¥Õ¥¡¥¤¥ë -- *.bak - ¥Ð¥Ã¥¯¥¢¥Ã¥×¥Õ¥¡¥¤¥ë -- /tmp/lh* - ¥Æ¥ó¥Ý¥é¥ê¥Õ¥¡¥¤¥ë -- *.com *.exe - MS-DOS SFX ¥Õ¥¡¥¤¥ë -- *.x - Human68k SFX ¥Õ¥¡¥¤¥ë -+ºÇºÇ¸å¸å¤Ë¤Ë((FFrroomm YY..TTaaggaawwaa)) -+ LZHUF Ë¡¤Î´ðÁäȤʤä¿ LZARI Ë¡¤òȯɽ¤·¤Æ¤¯¤À¤µ¤Ã¤¿±ü¼À²É§»á¡¢¤½¤ì¤ò -+ NIFTY-Serve ¤Ë¾Ò²ð¤·¡¢¤Þ¤¿¡¢LArc ¤Îºî¼Ô¤Ç¤â¤¢¤ë»°ÌÚÏÂɧ»á¡¢¤Þ¤¿¡¢¤³¤ì¤é -+ ¤Î Í× °ø ¤«¤é LZHUF Ë¡µÚ¤Ó¡¢MS-DOS ÈÇ LHarc ¤òºîÀ®¤·¤¿µÈºê±ÉÂٻᡢLHarc -+ UNIX ¤Î³«È¯¤Ë¶¨ÎϤ·¤¿¿Íã¡¢¤³¤³¤í¤è¤¯¥á¥Ã¥»¡¼¥¸¤Î¶¶ÅϤ·¤ò¤·¤Æ¤¯¤ì¤¿Àкê -+ °ìÌÀ»á(MIX ID:k.ishi)¡¢¤Þ¤¿¡¢¤¤¤í¤¤¤í¤Ê¥ì¥Ý¡¼¥È¤ò¤¯¤ì¤¿¤ß¤Ê¤µ¤ó¡¢¤½¤ì¤ò -+ Ãæ·Ñ¤·¤Æ¤¯¤À¤µ¤Ã¤¿¿¹¸ø°ìϺ»á (MIX ID:kmori)¤Ë´¶¼Õ¤·¤Þ¤¹¡£ - --SSSEEEEEE AAALLLSSSOOO ´Ø´Ø´ØϢϢϢ¹à¹à¹àÌÜÌÜÌÜ -- tttaaarrr(1), aaarrr(1), cccooommmppprrreeessssss(1) - --DDDIIISSSTTTRRRIIIBBBUUUTTTIIIOOONNN ºÆºÆºÆÇÛÇÛÇÛÉÛÉÛÉۤˤˤˤĤĤĤ¤¤¤¤¤¤Æ¤Æ¤Æ -+ºÇºÇ¸å¸å¤Ë¤Ë((FFrroomm MMaassaarruu OOkkii)) -+ ¾åµ¤ÎÊý¡¹¤Ï¤â¤Á¤í¤ó¡¢²Ã¤¨¤Æ LHarc UNIX ¤òºîÀ®¤·¤¿ Y.Tagawa »á¡¢¤½¤ì ¤ò -+ OSK ¤Ë°Ü¿¢¤·µÈºê»á¤Î LHx ¤Î¥¢¥ë¥´¥ê¥º¥à¤òÁȤ߹þ¤ó¤À H.S »á¡¢ JUNET ¤Î -+ LHa for UNIX MailingList ¤Ë¤Æ¶¨ÎϤ·¤Æ¤¯¤À¤µ¤Ã¤¿¤ß¤Ê¤µ¤ó¤Ë´¶¼ÕÃפ·¤Þ¤¹¡£ - -- °Ê²¼¤Î¾ò·ï¤Ç¡¢ºÆÇÛÉÛ¡¢Å¾ºÜ¡¢²þÊѤòµö²Ä¤·¤Þ¤¹¡£ -+ºÇºÇ¸å¸å¤Ë¤Ë((FFrroomm NNoobbuuttaakkaa WWaattaazzaakkii)) -+ ¤³¤Î¥×¥í¥°¥é¥à¤ÎºîÀ®¤Ë¤«¤«¤ï¤Ã¤¿Êý¡¹¡¢¤µ¤é¤Ë¤³¤³¤Þ¤Ç LHa ¤ò»Å¾å¤²¤Æ¤¯¤À -+ ¤µ¤Ã¤¿ ²¾¡»á¤Ë´¶¼ÕÃפ·¤Þ¤¹¡£ - -- 1. Ãøºî¸¢É½¼¨¤òºï½ü¤·¤Ê¤¤¤³¤È¡£ - -- 2. ÇÛÉÛÆâÍƤˤĤ¤¤Æ¤Ï¡¢ -- -- a. ÇÛÉۤκݤ˸ºß¤¹¤ëÆâÍÆ(¤¹¤Ê¤ï¤Á¥½¡¼¥¹¥³¡¼¥É¡¢¥É¥ -- ¥å¥á¥ó¥È¡¢¥×¥í¥°¥é¥Þ¡¼¤Ø¤Î¼ê°ú¤¤Ê¤É)¤¬ºÆÇÛÉÛ¤µ¤ì -- ¤¿¤â¤Î¤ÎÃæ¤Ëɬ¤ºÂ¸ºß¤¹¤ë¤³¤È¡£²þÊѤµ¤ì¤Æ¤¤¤ë¤Ê¤é¤Ð -- ¡¢¤½¤ì¤òÌÀ¼¨¤·¤¿¥É¥¥å¥á¥ó¥È¤òÍÑ°Õ¤¹¤ë¤³¤È¡£ -- -- b. LHa ¤ËÂФ¹¤ëÉղòÁÃͤ¬ÉÕ¤±¤é¤ì¤ÆºÆÇÛÉÛ¤µ¤ì¤ë¾ì¹ç¤Ë -- ¤Ï¤½¤ì¤é¤â¤Ç¤¤ë¤À¤±´Þ¤á¤ë¤è¤¦ÅØÎϤ¹¤ë¤³¤È¡£¤Þ¤¿¡¢ -- ¤½¤ÎºÝ¤Ë¤ÏÉղòÁÃͤ¬ÉÕ¤±¤é¤ì¤Æ¤¤¤ë¤³¤È¤òÌÀ¼¨¤·¤¿¥É -- ¥¥å¥á¥ó¥È¤òÍÑ°Õ¤¹¤ë¤³¤È¡£ -- -- -- -- January 14,1997 4 -- -- -- --LHA(N) Unix Programmer's Manual LHA(N) -- -- -- c. ¥Ð¥¤¥Ê¥ê¤Î¤ß¤ÎÇÛÉۤϵö¤µ¤ì¤Ê¤¤¡£(ÉղòÁÃͤΤâ¤Î¤â -- ´Þ¤à) -- -- 3. ºÇ¿·ÈǤÎÇÛÉÛ¤Ë̳¤á¤ë¤³¤È¡£(µÁ̳¤Ï¤Ê¤¤) -- -- Ãí. ¤Ê¤ª¡¢¥Í¥Ã¥È¤Ç¤ÎÇÛÉդϼ«Í³¤Ç¤¢¤ë¤¬¡¢¥Í¥Ã¥È¤Ë¥¢¥¯¥» -- ¥¹¤Ç¤¤Ê¤¤Êý¡Ê»¨»ï¤ª¤è¤Ó¡¢CD-ROM ¤Ê¤É¤Ë¤è¤ë¡ËÇÛÉÕ -- ¤Ï¡¢ÇÛÉÕÁ°¤Ë¤³¤Á¤é¤Ë E-Mail ¤ò¤ª´ê¤¤¤·¤Þ¤¹¡£ÇÛÉÕÁ° -- ¤Ë½ÐÍè¤Ê¤¤ºÝ¤Ë¤Ï¡¢¸åÆüɬ¤º E-Mail ¤ò¤ª´ê¤¤¤·¤Þ¤¹¡£ -- -- 4. ¤³¤Î¥×¥í¥°¥é¥à¤Î¸ºß¤ä»ÈÍѤ·¤¿¤³¤È¤Ë¤è¤Ã¤ÆÀ¸¤¸¤¿Â» -- ³²¤ÏÁ´¤¯Êݾڤ·¤Ê¤¤¡£ -- -- 5. ºî¼Ô¤Ï¡¢¤³¤Î¥×¥í¥°¥é¥à¤ËÉÔÈ÷¤¬¤¢¤Ã¤Æ¤â¡¢¤½¤ì¤òÄûÀµ -- ¤¹¤ëµÁ̳¤òÉé¤ï¤Ê¤¤¡£ -- -- 6. ¤³¤Î¥×¥í¥°¥é¥à¤Î°ìÉô¡¢¤Þ¤¿¤ÏÁ´Éô¤ò¾¤Î¥×¥í¥°¥é¥à¤Ë -- ÁȤ߹þ¤ó¤ÇÍøÍѤ·¤Æ¤â¤«¤Þ¤ï¤Ê¤¤¡£¤³¤Î¾ì¹ç¡¢¤½¤Î¥×¥í -- ¥°¥é¥à¤Ï LHa ¤Ç¤Ï¤Ê¤¯¡¢LHa ¤È̾¾è¤Ã¤Æ¤Ï¤¤¤±¤Ê¤¤¡£ -- -- 7. ¾¦ÍøÍѤ˴ؤ·¤Æ¤Ï¡¢¾åµ¤Î¾ò·ï¤Ë²Ã¤¨¡¢²¼µ¤Î¾ò·ï¤Î¤â -- ¤È¤Ë¤³¤ì¤òǧ¤á¤ë¡£ -- -- a. ¤³¤Î¥×¥í¥°¥é¥à¤ò¥á¥¤¥ó¤È¤¹¤ë¾¦ÍøÍѤ϶ػߤ¹¤ë¡£ -- -- b. ¾¦ÍøÍѤÎÁê¼ê¤¬¤³¤Î¥×¥í¥°¥é¥à¤Î»ÈÍѼԤȤ·¤ÆÉÔŬÀÚ¤È -- ȽÃǤ·¤¿¾ì¹ç¤Ë¤ÏÇÛÉÛ¤·¤Ê¤¤¡£ -- -- c. ¥¤¥ó¥¹¥È¡¼¥ë¤Î¼êÃʤȤ·¤Æ»ÈÍѤ¹¤ë¾ì¹ç¡¢¤³¤Î¥×¥í¥°¥é -- ¥à¤ò»È¤¦¤³¤È¤òÁê¼ê¤Ë¶¯À©¤·¤Ê¤¤¡£¤³¤Î¾ì¹ç¡¢¾¦ÍøÍÑ¼Ô -- ¤¬ºî¶È¤ò¹Ô¤¦¡£¤Þ¤¿¡¢¤½¤Î¤È¤¤Î»³²¤Ï¡¢¾¦ÍøÍѼԤ¬Á´ -- ÀÕǤ¤òÉ餦¡£ -- -- d. ¾¦ÍøÍѤòÉղòÁÃͤȤ·¤Æ¹Ô¤¤¤³¤Î¥×¥í¥°¥é¥à¤ò»ÈÍѤ¹¤ë -- ¾ì¹ç¡¢¾¦ÍøÍѼԤϡ¢¤½¤Î¥µ¥Ý¡¼¥È¤ò¹Ô¤¦¡£ -- --ºÇºÇºÇ¸å¸å¸å¤Ë¤Ë¤Ë(((FFFrrrooommm YYY...TTTaaagggaaawwwaaa))) -- LZHUF Ë¡¤Î´ðÁäȤʤä¿ LZARI Ë¡¤òȯɽ¤·¤Æ¤¯¤À¤µ¤Ã¤¿±ü¼À² -- ɧ»á¡¢¤½¤ì¤ò NIFTY-Serve ¤Ë¾Ò²ð¤·¡¢¤Þ¤¿¡¢LArc ¤Îºî¼Ô¤Ç¤â¤¢ -- ¤ë»°ÌÚÏÂɧ»á¡¢¤Þ¤¿¡¢¤³¤ì¤é¤ÎÍ×°ø¤«¤é LZHUF Ë¡µÚ¤Ó¡¢MS-DOS -- ÈÇ LHarc ¤òºîÀ®¤·¤¿µÈºê±ÉÂٻᡢLHarc UNIX ¤Î³«È¯¤Ë¶¨ÎϤ·¤¿ -- ¿Íã¡¢¤³¤³¤í¤è¤¯¥á¥Ã¥»¡¼¥¸¤Î¶¶ÅϤ·¤ò¤·¤Æ¤¯¤ì¤¿Àкê°ìÌÀ»á(MIX -- ID:k.ishi)¡¢¤Þ¤¿¡¢¤¤¤í¤¤¤í¤Ê¥ì¥Ý¡¼¥È¤ò¤¯¤ì¤¿¤ß¤Ê¤µ¤ó¡¢¤½¤ì -- ¤òÃæ·Ñ¤·¤Æ¤¯¤À¤µ¤Ã¤¿¿¹¸ø°ìϺ»á (MIX ID:kmori)¤Ë´¶¼Õ¤·¤Þ¤¹ -- ¡£ -- -- -- January 14,1997 5 -- -- -- --LHA(N) Unix Programmer's Manual LHA(N) -- -- --ºÇºÇºÇ¸å¸å¸å¤Ë¤Ë¤Ë(((FFFrrrooommm MMMaaasssaaarrruuu OOOkkkiii))) -- ¾åµ¤ÎÊý¡¹¤Ï¤â¤Á¤í¤ó¡¢²Ã¤¨¤Æ LHarc UNIX ¤òºîÀ®¤·¤¿ Y.Tagawa -- »á¡¢¤½¤ì¤ò OSK ¤Ë°Ü¿¢¤·µÈºê»á¤Î LHx ¤Î¥¢¥ë¥´¥ê¥º¥à¤òÁȤ߹þ -- ¤ó¤À H.S »á¡¢JUNET ¤Î LHa for UNIX MailingList ¤Ë¤Æ¶¨ÎϤ· -- ¤Æ¤¯¤À¤µ¤Ã¤¿¤ß¤Ê¤µ¤ó¤Ë´¶¼ÕÃפ·¤Þ¤¹¡£ -- --ºÇºÇºÇ¸å¸å¸å¤Ë¤Ë¤Ë(((FFFrrrooommm NNNooobbbuuutttaaakkkaaa WWWaaatttaaazzzaaakkkiii))) -- ¤³¤Î¥×¥í¥°¥é¥à¤ÎºîÀ®¤Ë¤«¤«¤ï¤Ã¤¿Êý¡¹¡¢¤µ¤é¤Ë¤³¤³¤Þ¤Ç LHa -- ¤ò»Å¾å¤²¤Æ¤¯¤À¤µ¤Ã¤¿ ²¾¡»á¤Ë´¶¼ÕÃפ·¤Þ¤¹¡£ -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- January 14,1997 6 - -+ January 14,1997 LHA(N) ---- lha-1.14i.orig/Makefile -+++ lha-1.14i/Makefile -@@ -20,7 +20,7 @@ - - #MACHINE = -DSYSTIME_HAS_NO_TM -DFTIME -DEUC - #MACHINE = -DSYSTIME_HAS_NO_TM -DEUC -DHAVE_TM_ZONE -DSYSV_SYSTEM_DIR --MACHINE = -DSYSTIME_HAS_NO_TM -DEUC -DSYSV_SYSTEM_DIR -DMKTIME -+MACHINE = -DSYSTIME_HAS_NO_TM -DEUC -DSYSV_SYSTEM_DIR -DMKTIME -DMULTIBYTE_CHAR - - #OPTIMIZE = -O2 -fstrength-reduce -fomit-frame-pointer - OPTIMIZE = -O2 -DSUPPORT_LH7 -DMKSTEMP ---- lha-1.14i.orig/debian/patch.multibyte -+++ lha-1.14i/debian/patch.multibyte -@@ -0,0 +1,145 @@ -+diff -Nuar src.old/header.c src/header.c -+--- src.old/header.c Fri Oct 6 02:36:03 2000 -++++ src/header.c Fri Jul 19 16:46:41 2002 -+@@ -82,6 +82,7 @@ -+ register int i; -+ -+ #ifdef MULTIBYTE_CHAR -++ if (multibyte_mode == TRUE) { -+ for (i = 0; i < len; i++) { -+ if (MULTIBYTE_FIRST_P(name[i]) && -+ MULTIBYTE_SECOND_P(name[i + 1])) -+@@ -91,6 +92,14 @@ -+ else if (!noconvertcase && isupper(name[i])) -+ name[i] = tolower(name[i]); -+ } -++ } else { -++ for (i = 0; i < len; i++) { -++ if (name[i] == '\\') -++ name[i] = '/'; -++ else if (!noconvertcase && isupper(name[i])) -++ name[i] = tolower(name[i]); -++ } -++ } -+ #else -+ for (i = 0; i < len; i++) { -+ if (name[i] == '\\') -+@@ -111,6 +120,7 @@ -+ boolean lower_case_used = FALSE; -+ -+ #ifdef MULTIBYTE_CHAR -++ if (multibyte_mode == TRUE) { -+ for (i = 0; i < len; i++) { -+ if (MULTIBYTE_FIRST_P(name[i]) && -+ MULTIBYTE_SECOND_P(name[i + 1])) -+@@ -128,6 +138,19 @@ -+ name[i] = '/'; -+ else if (!noconvertcase && !lower_case_used && isupper(name[i])) -+ name[i] = tolower(name[i]); -++ } -++ } else { -++ for (i = 0; i < len; i++) -++ if (islower(name[i])) { -++ lower_case_used = TRUE; -++ break; -++ } -++ for (i = 0; i < len; i++) { -++ if (name[i] == '\\') -++ name[i] = '/'; -++ else if (!noconvertcase && !lower_case_used && isupper(name[i])) -++ name[i] = tolower(name[i]); -++ } -+ } -+ #else -+ for (i = 0; i < len; i++) -+diff -Nuar src.old/lha.h src/lha.h -+--- src.old/lha.h Fri Jul 19 17:22:13 2002 -++++ src/lha.h Fri Jul 19 17:18:05 2002 -+@@ -101,6 +101,9 @@ -+ #ifdef EUC -+ EXTERN boolean euc_mode; -+ #endif -++#ifdef MULTIBYTE_CHAR -++EXTERN boolean multibyte_mode; -++#endif -+ -+ /* list command flags */ -+ EXTERN boolean verbose_listing; -+diff -Nuar src.old/lharc.c src/lharc.c -+--- src.old/lharc.c Fri Oct 6 02:33:34 2000 -++++ src/lharc.c Fri Jul 19 16:56:03 2002 -+@@ -101,6 +101,10 @@ -+ euc_mode = FALSE; -+ #endif -+ -++#ifdef MULTIBYTE_CHAR -++ multibyte_mode = FALSE; -++#endif -++ -+ /* view command flags */ -+ verbose_listing = FALSE; -+ -+@@ -177,6 +181,11 @@ -+ e TEXT code convert from/to EUC\n\ -+ "); -+ #endif -++#ifdef MULTIBYTE_CHAR -++ fprintf(stderr, "\ -++ y filename multibyte convert\n\ -++"); -++#endif -+ exit(1); -+ } -+ -+@@ -308,6 +317,11 @@ -+ case 'e': -+ text_mode = TRUE; -+ euc_mode = TRUE; -++ break; -++#endif -++#ifdef MULTIBYTE_CHAR -++ case 'y': -++ multibyte_mode = TRUE; -+ break; -+ #endif -+ case 'n': -+diff -Nuar src.old/util.c src/util.c -+--- src.old/util.c Wed Oct 4 23:57:38 2000 -++++ src/util.c Fri Jul 19 16:49:23 2002 -+@@ -113,18 +113,29 @@ -+ #endif -+ for (p = path; (c = *p) != 0; p++) { -+ #ifdef MULTIBYTE_CHAR -+- if (kflg) { -+- kflg = 0; -++ if (multibyte_mode == TRUE) { -++ if (kflg) { -++ kflg = 0; -++ } else if (MULTIBYTE_FIRST_P(c)) { -++ kflg = 1; -++ } else { -++ if (c == '\\' || c == DELIM || c == DELIM2) { -++ *p = delim; -++ path = p + 1; -++ } -++ } -++ } else { -++ if (c == '\\' || c == DELIM || c == DELIM2) { -++ *p = delim; -++ path = p + 1; -++ } -+ } -+- else if (MULTIBYTE_FIRST_P(c)) { -+- kflg = 1; -+- } -+- else -+-#endif -++#else -+ if (c == '\\' || c == DELIM || c == DELIM2) { -+ *p = delim; -+ path = p + 1; -+ } -++#endif -+ } -+ return path; -+ } ---- lha-1.14i.orig/debian/README.Debian -+++ lha-1.14i/debian/README.Debian -@@ -0,0 +1,6 @@ -+lha for DEBIAN -+---------------------- -+ -+LHa for UNIX -+ -+Atsushi KAMOSHIDA <kamop@post1.com>, Sun, 13 Apr 1997 17:52:59 +0900 ---- lha-1.14i.orig/debian/org/lha.h -+++ lha-1.14i/debian/org/lha.h -@@ -0,0 +1,322 @@ -+/* ------------------------------------------------------------------------ */ -+/* LHa for UNIX Archiver Driver */ -+/* */ -+/* Modified Nobutaka Watazaki */ -+/* */ -+/* Ver. 1.14 Soruce All chagned 1995.01.14 N.Watazaki */ -+/* Ver. 1.14i Modified and bug fixed 2000.10.06 t.okamoto */ -+/* ------------------------------------------------------------------------ */ -+/* -+ Included... -+ lharc.h interface.h slidehuf.h -+*/ -+#include <stdio.h> -+#include <errno.h> -+#include <ctype.h> -+#include <sys/types.h> -+#include <sys/file.h> -+#include <sys/stat.h> -+ -+#include <signal.h> -+ -+#include "lha_macro.h" -+ -+struct encode_option { -+#if defined(__STDC__) || defined(AIX) -+ void (*output) (); -+ void (*encode_start) (); -+ void (*encode_end) (); -+#else -+ int (*output) (); -+ int (*encode_start) (); -+ int (*encode_end) (); -+#endif -+}; -+ -+struct decode_option { -+ unsigned short (*decode_c) (); -+ unsigned short (*decode_p) (); -+#if defined(__STDC__) || defined(AIX) -+ void (*decode_start) (); -+#else -+ int (*decode_start) (); -+#endif -+}; -+ -+/* ------------------------------------------------------------------------ */ -+/* LHa File Type Definition */ -+/* ------------------------------------------------------------------------ */ -+struct string_pool { -+ int used; -+ int size; -+ int n; -+ char *buffer; -+}; -+ -+typedef struct LzHeader { -+ unsigned char header_size; -+ char method[METHOD_TYPE_STRAGE]; -+ long packed_size; -+ long original_size; -+ long last_modified_stamp; -+ unsigned char attribute; -+ unsigned char header_level; -+ char name[256]; -+ unsigned short crc; -+ boolean has_crc; -+ unsigned char extend_type; -+ unsigned char minor_version; -+ -+ /* extend_type == EXTEND_UNIX and convert from other type. */ -+ time_t unix_last_modified_stamp; -+ unsigned short unix_mode; -+ unsigned short unix_uid; -+ unsigned short unix_gid; -+} LzHeader; -+ -+struct interfacing { -+ FILE *infile; -+ FILE *outfile; -+ unsigned long original; -+ unsigned long packed; -+ int dicbit; -+ int method; -+}; -+ -+ -+/* ------------------------------------------------------------------------ */ -+/* Option switch variable */ -+/* ------------------------------------------------------------------------ */ -+/* command line options (common options) */ -+EXTERN boolean quiet; -+EXTERN boolean text_mode; -+EXTERN boolean verbose; -+EXTERN boolean noexec; /* debugging option */ -+EXTERN boolean force; -+EXTERN boolean prof; -+EXTERN boolean delete_after_append; -+EXTERN int compress_method; -+EXTERN int header_level; -+/* EXTERN int quiet_mode; */ /* 1996.8.13 t.okamoto */ -+#ifdef EUC -+EXTERN boolean euc_mode; -+#endif -+ -+/* list command flags */ -+EXTERN boolean verbose_listing; -+ -+/* extract/print command flags */ -+EXTERN boolean output_to_stdout; -+ -+/* add/update/delete command flags */ -+EXTERN boolean new_archive; -+EXTERN boolean update_if_newer; -+EXTERN boolean generic_format; -+ -+EXTERN boolean remove_temporary_at_error; -+EXTERN boolean recover_archive_when_interrupt; -+EXTERN boolean remove_extracting_file_when_interrupt; -+EXTERN boolean get_filename_from_stdin; -+EXTERN boolean ignore_directory; -+EXTERN boolean verify_mode; -+ -+/* Indicator flag */ -+EXTERN int quiet_mode; -+ -+/* ------------------------------------------------------------------------ */ -+/* Globale Variable */ -+/* ------------------------------------------------------------------------ */ -+EXTERN char **cmd_filev; -+EXTERN int cmd_filec; -+ -+EXTERN char *archive_name; -+EXTERN char expanded_archive_name[FILENAME_LENGTH]; -+EXTERN char temporary_name[FILENAME_LENGTH]; -+EXTERN char backup_archive_name[FILENAME_LENGTH]; -+ -+EXTERN char *reading_filename, *writting_filename; -+ -+/* 1996.8.13 t.okamoto */ -+#if 0 -+EXTERN boolean remove_temporary_at_error; -+EXTERN boolean recover_archive_when_interrupt; -+EXTERN boolean remove_extracting_file_when_interrupt; -+#endif -+ -+EXTERN int archive_file_mode; -+EXTERN int archive_file_gid; -+ -+EXTERN struct interfacing interface; -+EXTERN node *next; -+/* EXTERN unsigned short crc; */ /* 1996.8.13 t.okamoto */ -+ -+EXTERN int noconvertcase; /* 2000.10.6 */ -+ -+/* slide.c */ -+EXTERN int unpackable; -+EXTERN unsigned long origsize, compsize; -+EXTERN unsigned short dicbit; -+EXTERN unsigned short maxmatch; -+EXTERN unsigned long count; -+EXTERN unsigned long loc; /* short -> long .. Changed N.Watazaki */ -+EXTERN unsigned char *text; -+EXTERN int prev_char; -+ -+/* huf.c */ -+#ifndef LHA_MAIN_SRC /* t.okamoto 96/2/20 */ -+EXTERN unsigned short left[], right[]; -+EXTERN unsigned char c_len[], pt_len[]; -+EXTERN unsigned short c_freq[], c_table[], c_code[]; -+EXTERN unsigned short p_freq[], pt_table[], pt_code[], t_freq[]; -+#endif -+ -+/* append.c */ -+#ifdef NEED_INCREMENTAL_INDICATOR -+EXTERN long indicator_count; -+EXTERN long indicator_threshold; -+#endif -+ -+/* crcio.c */ -+EXTERN FILE *infile, *outfile; -+EXTERN unsigned short crc, bitbuf; -+EXTERN int dispflg; -+EXTERN long reading_size; -+ -+/* from dhuf.c */ -+EXTERN unsigned int n_max; -+ -+/* lhadd.c */ -+EXTERN FILE *temporary_fp; -+ -+/* ------------------------------------------------------------------------ */ -+/* Functions */ -+/* ------------------------------------------------------------------------ */ -+/* from lharc.c */ -+extern int patmatch(); -+ -+extern void interrupt(); -+ -+extern void message(); -+extern void warning(); -+extern void error(); -+extern void fatal_error(); -+ -+extern boolean need_file(); -+extern int inquire(); -+extern FILE *xfopen(); -+ -+extern boolean find_files(); -+extern void free_files(); -+ -+extern void init_sp(); -+extern void add_sp(); -+extern void finish_sp(); -+extern void free_sp(); -+extern void cleaning_files(); -+ -+extern void build_temporary_name(); -+extern void build_backup_file_name(); -+extern void build_standard_archive_name(); -+ -+extern FILE *open_old_archive(); -+extern void init_header(); -+extern boolean get_header(); -+extern boolean archive_is_msdos_sfx1(); -+extern boolean skip_msdos_sfx1_code(); -+extern void write_header(); -+extern void write_archive_tail(); -+extern void copy_old_one(); -+extern unsigned char *convdelim(); -+extern long copyfile(); -+ -+extern void cmd_list(), cmd_extract(), cmd_add(), cmd_delete(); -+ -+extern boolean ignore_directory; -+extern boolean compress_method; -+extern boolean verify_mode; -+ -+extern char *extract_directory; -+ -+/* from slide.c */ -+ -+extern int encode_alloc(); -+extern void encode(); -+extern void decode(); -+ -+/* from append.c */ -+extern void start_indicator(); -+extern void finish_indicator(); -+extern void finish_indicator2(); -+ -+/* slide.c */ -+extern void output_st1(); -+extern unsigned char *alloc_buf(); -+extern void encode_start_st1(); -+extern void encode_end_st1(); -+extern unsigned short decode_c_st1(); -+extern unsigned short decode_p_st1(); -+extern void decode_start_st1(); -+ -+/* from shuf.c */ -+extern void decode_start_st0(); -+extern void encode_p_st0( /* unsigned short j */ ); -+extern void encode_start_fix(); -+extern void decode_start_fix(); -+extern unsigned short decode_c_st0(); -+extern unsigned short decode_p_st0(); -+ -+/* from dhuf.c */ -+extern void start_c_dyn(); -+extern void decode_start_dyn(); -+extern unsigned short decode_c_dyn(); -+extern unsigned short decode_p_dyn(); -+extern void output_dyn( /* int code, unsigned int pos */ ); -+extern void encode_end_dyn(); -+ -+extern int decode_lzhuf(); -+ -+/* from larc.c */ -+ -+extern unsigned short decode_c_lzs(); -+extern unsigned short decode_p_lzs(); -+extern unsigned short decode_c_lz5(); -+extern unsigned short decode_p_lz5(); -+extern void decode_start_lzs(); -+extern void decode_start_lz5(); -+ -+extern void make_table( /* int nchar, uchar bitlen[], int tablebits, -+ ushort table[] */ ); -+ -+/* from maketree.c */ -+/* -+ * void make_code(short n, uchar len[], ushort code[]); short make_tree(short -+ * nparm, ushort freqparm[], uchar lenparm[], ushort codeparam[]); -+ */ -+extern void make_code( /* int n, uchar len[], ushort code[] */ ); -+extern short make_tree( /* int nparm, ushort freqparm[], uchar lenparm[], -+ ushort codeparam[] */ ); -+ -+/* from crcio.c */ -+extern void make_crctable(); -+extern unsigned short calccrc( /* uchar *p, uint n */ ); -+extern void fillbuf( /* uchar n */ ); -+extern unsigned short getbits( /* uchar n */ ); -+extern void putcode( /* uchar n, ushort x */ ); -+extern void putbits( /* uchar n, ushort x */ ); -+extern int fread_crc( /* uchar *p, int n, FILE *f */ ); -+extern void fwrite_crc( /* uchar *p, int n, FILE *f */ ); -+extern void init_getbits(); -+extern void init_putbits(); -+extern void make_crctable(); -+extern unsigned short calccrc(); -+ -+/* from lhadd.c */ -+extern int encode_lzhuf(); -+extern int encode_stored_crc(); -+ -+/* Local Variables: */ -+/* mode:c */ -+/* tab-width:4 */ -+/* End: */ -+ -+ ---- lha-1.14i.orig/debian/org/header.c -+++ lha-1.14i/debian/org/header.c -@@ -0,0 +1,875 @@ -+/* ------------------------------------------------------------------------ */ -+/* LHa for UNIX */ -+/* header.c -- header manipulate functions */ -+/* */ -+/* Modified Nobutaka Watazaki */ -+/* */ -+/* Original Y.Tagawa */ -+/* modified 1991.12.16 M.Oki */ -+/* Ver. 1.10 Symbolic Link added 1993.10.01 N.Watazaki */ -+/* Ver. 1.13b Symbolic Link Bug Fix 1994.08.22 N.Watazaki */ -+/* Ver. 1.14 Source All chagned 1995.01.14 N.Watazaki */ -+/* Ver. 1.14i bug fixed 2000.10.06 t.okamoto */ -+/* ------------------------------------------------------------------------ */ -+#include "lha.h" -+ -+/* ------------------------------------------------------------------------ */ -+static char *get_ptr; -+/* ------------------------------------------------------------------------ */ -+int -+calc_sum(p, len) -+ register char *p; -+ register int len; -+{ -+ register int sum; -+ -+ for (sum = 0; len; len--) -+ sum += *p++; -+ -+ return sum & 0xff; -+} -+ -+/* ------------------------------------------------------------------------ */ -+static unsigned short -+get_word() -+{ -+ int b0, b1; -+ -+ b0 = get_byte(); -+ b1 = get_byte(); -+ return (b1 << 8) + b0; -+} -+ -+/* ------------------------------------------------------------------------ */ -+static void -+put_word(v) -+ unsigned int v; -+{ -+ put_byte(v); -+ put_byte(v >> 8); -+} -+ -+/* ------------------------------------------------------------------------ */ -+static long -+get_longword() -+{ -+ long b0, b1, b2, b3; -+ -+ b0 = get_byte(); -+ b1 = get_byte(); -+ b2 = get_byte(); -+ b3 = get_byte(); -+ return (b3 << 24) + (b2 << 16) + (b1 << 8) + b0; -+} -+ -+/* ------------------------------------------------------------------------ */ -+static void -+put_longword(v) -+ long v; -+{ -+ put_byte(v); -+ put_byte(v >> 8); -+ put_byte(v >> 16); -+ put_byte(v >> 24); -+} -+ -+/* ------------------------------------------------------------------------ */ -+static void -+msdos_to_unix_filename(name, len) -+ register char *name; -+ register int len; -+{ -+ register int i; -+ -+#ifdef MULTIBYTE_CHAR -+ for (i = 0; i < len; i++) { -+ if (MULTIBYTE_FIRST_P(name[i]) && -+ MULTIBYTE_SECOND_P(name[i + 1])) -+ i++; -+ else if (name[i] == '\\') -+ name[i] = '/'; -+ else if (!noconvertcase && isupper(name[i])) -+ name[i] = tolower(name[i]); -+ } -+#else -+ for (i = 0; i < len; i++) { -+ if (name[i] == '\\') -+ name[i] = '/'; -+ else if (!noconvertcase && isupper(name[i])) -+ name[i] = tolower(name[i]); -+ } -+#endif -+} -+ -+/* ------------------------------------------------------------------------ */ -+static void -+generic_to_unix_filename(name, len) -+ register char *name; -+ register int len; -+{ -+ register int i; -+ boolean lower_case_used = FALSE; -+ -+#ifdef MULTIBYTE_CHAR -+ for (i = 0; i < len; i++) { -+ if (MULTIBYTE_FIRST_P(name[i]) && -+ MULTIBYTE_SECOND_P(name[i + 1])) -+ i++; -+ else if (islower(name[i])) { -+ lower_case_used = TRUE; -+ break; -+ } -+ } -+ for (i = 0; i < len; i++) { -+ if (MULTIBYTE_FIRST_P(name[i]) && -+ MULTIBYTE_SECOND_P(name[i + 1])) -+ i++; -+ else if (name[i] == '\\') -+ name[i] = '/'; -+ else if (!noconvertcase && !lower_case_used && isupper(name[i])) -+ name[i] = tolower(name[i]); -+ } -+#else -+ for (i = 0; i < len; i++) -+ if (islower(name[i])) { -+ lower_case_used = TRUE; -+ break; -+ } -+ for (i = 0; i < len; i++) { -+ if (name[i] == '\\') -+ name[i] = '/'; -+ else if (!noconvertcase && !lower_case_used && isupper(name[i])) -+ name[i] = tolower(name[i]); -+ } -+#endif -+} -+ -+/* ------------------------------------------------------------------------ */ -+static void -+macos_to_unix_filename(name, len) -+ register char *name; -+ register int len; -+{ -+ register int i; -+ -+ for (i = 0; i < len; i++) { -+ if (name[i] == ':') -+ name[i] = '/'; -+ else if (name[i] == '/') -+ name[i] = ':'; -+ } -+} -+ -+/* ------------------------------------------------------------------------ */ -+static void -+unix_to_generic_filename(name, len) -+ register char *name; -+ register int len; -+{ -+ register int i; -+ -+ for (i = 0; i < len; i++) { -+ if (name[i] == '/') -+ name[i] = '\\'; -+ else if (islower(name[i])) -+ name[i] = toupper(name[i]); -+ } -+} -+ -+/* ------------------------------------------------------------------------ */ -+/* */ -+/* Generic stamp format: */ -+/* */ -+/* 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 */ -+/* |<-------- year ------->|<- month ->|<-- day -->| */ -+/* */ -+/* 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 */ -+/* |<--- hour --->|<---- minute --->|<- second*2 ->| */ -+/* */ -+/* ------------------------------------------------------------------------ */ -+ -+/* -+ * NOTE : If you don't have `gettimeofday(2)', or your gettimeofday(2) -+ * returns bogus timezone information, try FTIME, MKTIME, TIMELOCAL or TZSET. -+ */ -+ -+/* choose one */ -+#if defined(MKTIME) -+#ifdef TIMELOCAL -+#undef TIMELOCAL -+#endif -+#endif /* defined(MKTIME) */ -+ -+#if defined(MKTIME) || defined(TIMELOCAL) -+#ifdef TZSET -+#undef TZSET -+#endif -+#endif /* defined(MKTIME) || defined(TIMELOCAL) */ -+ -+#if defined(MKTIME) || defined(TIMELOCAL) || defined(TZSET) -+#ifdef FTIME -+#undef FTIME -+#endif -+#endif -+ -+#if defined(MKTIME) || defined(TIMELOCAL) || defined(TZSET) || defined(FTIME) -+#ifdef GETTIMEOFDAY -+#undef GETTIMEOFDAY -+#endif -+#else -+#ifndef GETTIMEOFDAY -+#define GETTIMEOFDAY /* use gettimeofday() */ -+#endif -+#endif -+ -+#ifdef FTIME -+#include <sys/timeb.h> -+#endif -+ -+/* -+ * You may define as : #define TIMEZONE_HOOK \ extern long -+ * timezone ; \ extern void tzset(); -+ */ -+#ifdef TIMEZONE_HOOK -+TIMEZONE_HOOK -+/* Which do you like better, `TIMEZONE_HOOK' or `TIMEZONE_HOOK;' ? */ -+#endif -+ -+#if defined(TZSET) && defined(_MINIX) -+extern long timezone; /* not defined in time.h */ -+#endif -+ -+/* ------------------------------------------------------------------------ */ -+#if defined(FTIME) || defined(GETTIMEOFDAY) || defined(TZSET) -+static long -+gettz() -+#ifdef TZSET -+{ -+ tzset(); -+ return timezone; -+} -+#endif -+ -+/* ------------------------------------------------------------------------ */ -+#if !defined(TZSET) && defined(FTIME) -+{ -+ struct timeb buf; -+ -+ ftime(&buf); -+ return buf.timezone * 60L; -+} -+#endif -+ -+/* ------------------------------------------------------------------------ */ -+#if !defined(TZSET) && !defined(FTIME) /* maybe defined(GETTIMEOFDAY) */ -+{ -+#ifdef HAVE_TM_ZONE -+ time_t tt; -+ -+ time(&tt); -+ return -localtime(&tt)->tm_gmtoff; -+#else /* HAVE_TM_ZONE */ -+ struct timeval tp; -+ struct timezone tzp; -+ gettimeofday(&tp, &tzp);/* specific to 4.3BSD */ -+ /* -+ * return (tzp.tz_minuteswest * 60L + (tzp.tz_dsttime != 0 ? 60L * -+ * 60L : 0)); -+ */ -+ return (tzp.tz_minuteswest * 60L); -+#endif /* HAVE_TM_ZONE */ -+} -+#endif -+#endif /* defined(FTIME) || defined(GETTIMEOFDAY) || -+ * defined(TZSET) */ -+ -+/* ------------------------------------------------------------------------ */ -+#ifdef NOT_USED -+static struct tm * -+msdos_to_unix_stamp_tm(a) -+ long a; -+{ -+ static struct tm t; -+ -+ t.tm_sec = (a & 0x1f) * 2; -+ t.tm_min = (a >> 5) & 0x3f; -+ t.tm_hour = (a >> 11) & 0x1f; -+ t.tm_mday = (a >> 16) & 0x1f; -+ t.tm_mon = ((a >> 16 + 5) & 0x0f) - 1; -+ t.tm_year = ((a >> 16 + 9) & 0x7f) + 80; -+ return &t; -+} -+#endif -+ -+/* ------------------------------------------------------------------------ */ -+static time_t -+generic_to_unix_stamp(t) -+ long t; -+#if defined(MKTIME) || defined(TIMELOCAL) -+{ -+ struct tm dostm; -+ -+ /* -+ * special case: if MSDOS format date and time were zero, then we -+ * set time to be zero here too. -+ */ -+ if (t == 0) -+ return (time_t) 0; -+ -+ dostm.tm_sec = (t & 0x1f) * 2; -+ dostm.tm_min = t >> 5 & 0x3f; -+ dostm.tm_hour = t >> 11 & 0x1f; -+ dostm.tm_mday = t >> 16 & 0x1f; -+ dostm.tm_mon = (t >> 16 + 5 & 0x0f) - 1; /* 0..11 */ -+ dostm.tm_year = (t >> 16 + 9 & 0x7f) + 80; -+#if 0 -+ dostm.tm_isdst = 0; /* correct? */ -+#endif -+ dostm.tm_isdst = -1; /* correct? */ -+#ifdef MKTIME -+ return (time_t) mktime(&dostm); -+#else /* maybe defined(TIMELOCAL) */ -+ return (time_t) timelocal(&dostm); -+#endif -+} -+ -+#else /* defined(MKTIME) || defined(TIMELOCAL) */ -+{ -+ int year, month, day, hour, min, sec; -+ long longtime; -+ static unsigned int dsboy[12] = {0, 31, 59, 90, 120, 151, -+ 181, 212, 243, 273, 304, 334}; -+ unsigned int days; -+ -+ /* -+ * special case: if MSDOS format date and time were zero, then we -+ * set time to be zero here too. -+ */ -+ if (t == 0) -+ return (time_t) 0; -+ -+ year = ((int) (t >> 16 + 9) & 0x7f) + 1980; -+ month = (int) (t >> 16 + 5) & 0x0f; /* 1..12 means Jan..Dec */ -+ day = (int) (t >> 16) & 0x1f; /* 1..31 means 1st,...31st */ -+ -+ hour = ((int) t >> 11) & 0x1f; -+ min = ((int) t >> 5) & 0x3f; -+ sec = ((int) t & 0x1f) * 2; -+ -+ /* Calculate days since 1970.01.01 */ -+ days = (365 * (year - 1970) + /* days due to whole years */ -+ (year - 1970 + 1) / 4 + /* days due to leap years */ -+ dsboy[month - 1] + /* days since beginning of this year */ -+ day - 1); /* days since beginning of month */ -+ -+ if ((year % 4 == 0) && -+ (year % 100 != 0 || year % 400 == 0) && /* 1999.5.24 t.oka */ -+ (month >= 3)) /* if this is a leap year and month */ -+ days++; /* is March or later, add a day */ -+ -+ /* Knowing the days, we can find seconds */ -+ longtime = (((days * 24) + hour) * 60 + min) * 60 + sec; -+ longtime += gettz(); /* adjust for timezone */ -+ -+ /* LONGTIME is now the time in seconds, since 1970/01/01 00:00:00. */ -+ return (time_t) longtime; -+} -+#endif /* defined(MKTIME) || defined(TIMELOCAL) */ -+ -+/* ------------------------------------------------------------------------ */ -+static long -+unix_to_generic_stamp(t) -+ time_t t; -+{ -+ struct tm *tm = localtime(&t); -+ -+ return ((((long) (tm->tm_year - 80)) << 25) + -+ (((long) (tm->tm_mon + 1)) << 21) + -+ (((long) tm->tm_mday) << 16) + -+ (long) ((tm->tm_hour << 11) + -+ (tm->tm_min << 5) + -+ (tm->tm_sec / 2))); -+} -+ -+/* ------------------------------------------------------------------------ */ -+/* build header functions */ -+/* ------------------------------------------------------------------------ */ -+boolean -+get_header(fp, hdr) -+ FILE *fp; -+ register LzHeader *hdr; -+{ -+ int header_size; -+ int name_length; -+ char data[LZHEADER_STRAGE]; -+ char dirname[FILENAME_LENGTH]; -+ int dir_length = 0; -+ int checksum; -+ int i; -+ char *ptr; -+ int extend_size; -+ int dmy; -+ -+ bzero(hdr, sizeof(LzHeader)); -+ -+ if (((header_size = getc(fp)) == EOF) || (header_size == 0)) { -+ return FALSE; /* finish */ -+ } -+ -+ if (fread(data + I_HEADER_CHECKSUM, -+ sizeof(char), header_size - 1, fp) < header_size - 1) { -+ fatal_error("Invalid header (LHarc file ?)"); -+ return FALSE; /* finish */ -+ } -+ setup_get(data + I_HEADER_LEVEL); -+ hdr->header_level = get_byte(); -+ if (hdr->header_level != 2 && -+ fread(data + header_size, sizeof(char), 2, fp) < 2) { -+ fatal_error("Invalid header (LHarc file ?)"); -+ return FALSE; /* finish */ -+ } -+ -+ if (hdr->header_level >= 3) { -+ fatal_error("Unknown level header"); -+ return FALSE; -+ } -+ -+ setup_get(data + I_HEADER_CHECKSUM); -+ checksum = get_byte(); -+ -+ if (hdr->header_level == 2) { -+ hdr->header_size = header_size + checksum*256; -+ } else { -+ hdr->header_size = header_size; -+ } -+ bcopy(data + I_METHOD, hdr->method, METHOD_TYPE_STRAGE); -+ setup_get(data + I_PACKED_SIZE); -+ hdr->packed_size = get_longword(); -+ hdr->original_size = get_longword(); -+ hdr->last_modified_stamp = get_longword(); -+ hdr->attribute = get_byte(); -+ -+ if ((hdr->header_level = get_byte()) != 2) { -+ if (calc_sum(data + I_METHOD, header_size) != checksum) -+ warning("Checksum error (LHarc file?)", ""); -+ name_length = get_byte(); -+ for (i = 0; i < name_length; i++) -+ hdr->name[i] = (char) get_byte(); -+ hdr->name[name_length] = '\0'; -+ } -+ else { -+ hdr->unix_last_modified_stamp = hdr->last_modified_stamp; -+ name_length = 0; -+ } -+ -+ /* defaults for other type */ -+ hdr->unix_mode = UNIX_FILE_REGULAR | UNIX_RW_RW_RW; -+ hdr->unix_gid = 0; -+ hdr->unix_uid = 0; -+ -+ if (hdr->header_level == 0) { -+ extend_size = header_size - name_length -22; -+ if (extend_size < 0) { -+ if (extend_size == -2) { -+ hdr->extend_type = EXTEND_GENERIC; -+ hdr->has_crc = FALSE; -+ } else { -+ fatal_error("Unkonwn header (lha file?)"); -+ return FALSE; -+ } -+ } else { -+ hdr->has_crc = TRUE; -+ hdr->crc = get_word(); -+ } -+ -+ if (extend_size >= 1) { -+ hdr->extend_type = get_byte(); -+ extend_size--; -+ } -+ if (hdr->extend_type == EXTEND_UNIX) { -+ if (extend_size >= 11) { -+ hdr->minor_version = get_byte(); -+ hdr->unix_last_modified_stamp = (time_t) get_longword(); -+ hdr->unix_mode = get_word(); -+ hdr->unix_uid = get_word(); -+ hdr->unix_gid = get_word(); -+ extend_size -= 11; -+ } else { -+ hdr->extend_type = EXTEND_GENERIC; -+ } -+ } -+ while (extend_size-- > 0) -+ dmy = get_byte(); -+ if (hdr->extend_type == EXTEND_UNIX) -+ return TRUE; -+ } else if (hdr->header_level == 1) { -+ hdr->has_crc = TRUE; -+ extend_size = header_size - name_length-25; -+ hdr->crc = get_word(); -+ hdr->extend_type = get_byte(); -+ while (extend_size-- > 0) -+ dmy = get_byte(); -+ } else { /* level 2 */ -+ hdr->has_crc = TRUE; -+ hdr->crc = get_word(); -+ hdr->extend_type = get_byte(); -+ } -+ -+ if (hdr->header_level > 0) { -+ /* Extend Header */ -+ if (hdr->header_level != 2) -+ setup_get(data + hdr->header_size); -+ ptr = get_ptr; -+ while ((header_size = get_word()) != 0) { -+ if (hdr->header_level != 2 && -+ ((data + LZHEADER_STRAGE - get_ptr < header_size) || -+ fread(get_ptr, sizeof(char), header_size, fp) < header_size)) { -+ fatal_error("Invalid header (LHa file ?)"); -+ return FALSE; -+ } -+ switch (get_byte()) { -+ case 0: -+ /* -+ * header crc -+ */ -+ setup_get(get_ptr + header_size - 3); -+ break; -+ case 1: -+ /* -+ * filename -+ */ -+ for (i = 0; i < header_size - 3; i++) -+ hdr->name[i] = (char) get_byte(); -+ hdr->name[header_size - 3] = '\0'; -+ name_length = header_size - 3; -+ break; -+ case 2: -+ /* -+ * directory -+ */ -+ for (i = 0; i < header_size - 3; i++) -+ dirname[i] = (char) get_byte(); -+ dirname[header_size - 3] = '\0'; -+ convdelim(dirname, DELIM); -+ dir_length = header_size - 3; -+ break; -+ case 0x40: -+ /* -+ * MS-DOS attribute -+ */ -+ if (hdr->extend_type == EXTEND_MSDOS || -+ hdr->extend_type == EXTEND_HUMAN || -+ hdr->extend_type == EXTEND_GENERIC) -+ hdr->attribute = get_word(); -+ break; -+ case 0x50: -+ /* -+ * UNIX permission -+ */ -+ if (hdr->extend_type == EXTEND_UNIX) -+ hdr->unix_mode = get_word(); -+ break; -+ case 0x51: -+ /* -+ * UNIX gid and uid -+ */ -+ if (hdr->extend_type == EXTEND_UNIX) { -+ hdr->unix_gid = get_word(); -+ hdr->unix_uid = get_word(); -+ } -+ break; -+ case 0x52: -+ /* -+ * UNIX group name -+ */ -+ setup_get(get_ptr + header_size - 3); -+ break; -+ case 0x53: -+ /* -+ * UNIX user name -+ */ -+ setup_get(get_ptr + header_size - 3); -+ break; -+ case 0x54: -+ /* -+ * UNIX last modified time -+ */ -+ if (hdr->extend_type == EXTEND_UNIX) -+ hdr->unix_last_modified_stamp = (time_t) get_longword(); -+ break; -+ default: -+ /* -+ * other headers -+ */ -+ setup_get(get_ptr + header_size - 3); -+ break; -+ } -+ } -+ if (hdr->header_level != 2 && get_ptr - ptr != 2) { -+ hdr->packed_size -= get_ptr - ptr - 2; -+ hdr->header_size += get_ptr - ptr - 2; -+ } -+ } -+ -+ switch (hdr->extend_type) { -+ case EXTEND_MSDOS: -+ msdos_to_unix_filename(hdr->name, name_length); -+ msdos_to_unix_filename(dirname, dir_length); -+ case EXTEND_HUMAN: -+ if (hdr->header_level == 2) -+ hdr->unix_last_modified_stamp = hdr->last_modified_stamp; -+ else -+ hdr->unix_last_modified_stamp = -+ generic_to_unix_stamp(hdr->last_modified_stamp); -+ break; -+ -+#ifdef OSK -+ case EXTEND_OS68K: -+ case EXTEND_XOSK: -+#endif -+ case EXTEND_UNIX: -+ break; -+ -+ case EXTEND_MACOS: -+ macos_to_unix_filename(hdr->name, name_length); -+ /* macos_to_unix_filename(dirname, dir_length); */ -+ hdr->unix_last_modified_stamp = -+ generic_to_unix_stamp(hdr->last_modified_stamp); -+ break; -+ -+ default: -+ generic_to_unix_filename(hdr->name, name_length); -+ generic_to_unix_filename(dirname, dir_length); -+ if (hdr->header_level == 2) -+ hdr->unix_last_modified_stamp = hdr->last_modified_stamp; -+ else -+ hdr->unix_last_modified_stamp = -+ generic_to_unix_stamp(hdr->last_modified_stamp); -+ } -+ -+ if (dir_length) { -+ strcat(dirname, hdr->name); -+ strcpy(hdr->name, dirname); -+ name_length += dir_length; -+ } -+ -+ return TRUE; -+} -+ -+/* ------------------------------------------------------------------------ */ -+void -+init_header(name, v_stat, hdr) -+ char *name; -+ struct stat *v_stat; -+ LzHeader *hdr; -+{ -+ int len; -+ -+ if (compress_method == LZHUFF5_METHOD_NUM) /* Changed N.Watazaki */ -+ bcopy(LZHUFF5_METHOD, hdr->method, METHOD_TYPE_STRAGE); -+ else if (compress_method) -+ bcopy(LZHUFF1_METHOD, hdr->method, METHOD_TYPE_STRAGE); -+ else -+ bcopy(LZHUFF0_METHOD, hdr->method, METHOD_TYPE_STRAGE); -+ -+ hdr->packed_size = 0; -+ hdr->original_size = v_stat->st_size; -+ hdr->last_modified_stamp = unix_to_generic_stamp(v_stat->st_mtime); -+ hdr->attribute = GENERIC_ATTRIBUTE; -+ hdr->header_level = header_level; -+ strcpy(hdr->name, name); -+ len = strlen(name); -+ hdr->crc = 0x0000; -+ hdr->extend_type = EXTEND_UNIX; -+ hdr->unix_last_modified_stamp = v_stat->st_mtime; -+ /* since 00:00:00 JAN.1.1970 */ -+#ifdef NOT_COMPATIBLE_MODE -+ /* Please need your modification in this space. */ -+#else -+ hdr->unix_mode = v_stat->st_mode; -+#endif -+ -+ hdr->unix_uid = v_stat->st_uid; -+ hdr->unix_gid = v_stat->st_gid; -+ -+ if (is_directory(v_stat)) { -+ bcopy(LZHDIRS_METHOD, hdr->method, METHOD_TYPE_STRAGE); -+ hdr->attribute = GENERIC_DIRECTORY_ATTRIBUTE; -+ hdr->original_size = 0; -+ if (len > 0 && hdr->name[len - 1] != '/') -+ strcpy(&hdr->name[len++], "/"); -+ } -+ -+#ifdef S_IFLNK -+ if (is_symlink(v_stat)) { -+ char lkname[257]; -+ int len; -+ bcopy(LZHDIRS_METHOD, hdr->method, METHOD_TYPE_STRAGE); -+ hdr->attribute = GENERIC_DIRECTORY_ATTRIBUTE; -+ hdr->original_size = 0; -+ len = readlink(name, lkname, 256); -+ lkname[len] = (char)'\0'; -+ sprintf(hdr->name, "%s|%s", hdr->name, lkname); -+ } -+#endif -+ if (generic_format) -+ unix_to_generic_filename(hdr->name, len); -+} -+ -+/* ------------------------------------------------------------------------ */ -+/* Write unix extended header or generic header. */ -+void -+write_header(nafp, hdr) -+ FILE *nafp; -+ LzHeader *hdr; -+{ -+ int header_size; -+ int name_length; -+ char data[LZHEADER_STRAGE]; -+ char *p; -+ char *headercrc_ptr; -+ -+ bzero(data, LZHEADER_STRAGE); -+ bcopy(hdr->method, data + I_METHOD, METHOD_TYPE_STRAGE); -+ setup_put(data + I_PACKED_SIZE); -+ put_longword(hdr->packed_size); -+ put_longword(hdr->original_size); -+ -+ if (hdr->header_level == HEADER_LEVEL2) -+ put_longword((long) hdr->unix_last_modified_stamp); -+ else -+ put_longword(hdr->last_modified_stamp); -+ -+ switch (hdr->header_level) { -+ case HEADER_LEVEL0: -+ put_byte(hdr->attribute); -+ break; -+ case HEADER_LEVEL1: -+ case HEADER_LEVEL2: -+ put_byte(0x20); -+ break; -+ } -+ -+ put_byte(hdr->header_level); -+ -+ convdelim(hdr->name, DELIM2); -+ if (hdr->header_level != HEADER_LEVEL2) { -+ if (p = (char *) rindex(hdr->name, DELIM2)) -+ name_length = strlen(++p); -+ else -+ name_length = strlen(hdr->name); -+ put_byte(name_length); -+ bcopy(p ? p : hdr->name, data + I_NAME, name_length); -+ setup_put(data + I_NAME + name_length); -+ } -+ -+ put_word(hdr->crc); -+ if (header_level == HEADER_LEVEL0) { -+ if (generic_format) { -+ header_size = I_GENERIC_HEADER_BOTTOM - 2 + name_length; -+ data[I_HEADER_SIZE] = header_size; -+ data[I_HEADER_CHECKSUM] = calc_sum(data + I_METHOD, header_size); -+ } else { -+ /* write old-style extend header */ -+ put_byte(EXTEND_UNIX); -+ put_byte(CURRENT_UNIX_MINOR_VERSION); -+ put_longword((long) hdr->unix_last_modified_stamp); -+ put_word(hdr->unix_mode); -+ put_word(hdr->unix_uid); -+ put_word(hdr->unix_gid); -+ header_size = I_UNIX_EXTEND_BOTTOM - 2 + name_length; -+ data[I_HEADER_SIZE] = header_size; -+ data[I_HEADER_CHECKSUM] = calc_sum(data + I_METHOD, header_size); -+ } -+ } else { -+ /* write extend header. */ -+ char *ptr; -+ -+ if (generic_format) -+ put_byte(0x00); -+ else -+ put_byte(EXTEND_UNIX); -+ -+ ptr = put_ptr; -+ if (hdr->header_level == HEADER_LEVEL2) { -+ /* write common header */ -+ put_word(5); -+ put_byte(0x00); -+ headercrc_ptr = put_ptr; -+ put_word(0x0000); -+ } -+ -+ if (generic_format) { -+ header_size = put_ptr - data; /* +2 for last 0x0000 */ -+ } else { -+ put_word(5); -+ if (hdr->header_level == HEADER_LEVEL1) -+ header_size = put_ptr - data - 2; -+ put_byte(0x50); /* permission */ -+ put_word(hdr->unix_mode); -+ put_word(7); -+ put_byte(0x51); /* gid and uid */ -+ put_word(hdr->unix_gid); -+ put_word(hdr->unix_uid); -+ -+ if (p = (char *) rindex(hdr->name, DELIM2)) { -+ int i; -+ -+ name_length = p - hdr->name + 1; -+ put_word(name_length + 3); -+ put_byte(2); /* dirname */ -+ for (i = 0; i < name_length; i++) -+ put_byte(hdr->name[i]); -+ } -+ } /* if generic .. */ -+ -+ if (header_level != HEADER_LEVEL2) { -+ if (!generic_format) { -+ put_word(7); -+ put_byte(0x54); /* time stamp */ -+ put_longword(hdr->unix_last_modified_stamp); -+ } -+ hdr->packed_size += put_ptr - ptr; -+ ptr = put_ptr; -+ setup_put(data + I_PACKED_SIZE); -+ put_longword(hdr->packed_size); -+ put_ptr = ptr; -+ data[I_HEADER_SIZE] = header_size; -+ data[I_HEADER_CHECKSUM] = calc_sum(data + I_METHOD, header_size); -+ } else { /* header level 2 */ -+ int i; -+ if (p = (char *) rindex(hdr->name, DELIM2)) -+ name_length = strlen(++p); -+ else { -+ p = hdr->name; -+ name_length = strlen(hdr->name); -+ } -+ put_word(name_length + 3); -+ put_byte(1); /* filename */ -+ for (i = 0; i < name_length; i++) -+ put_byte(*p++); -+ } /* if he.. != HEAD_LV2 */ -+ header_size = put_ptr - data; -+ } -+ -+ if (header_level == HEADER_LEVEL2) { -+ unsigned short hcrc; -+ setup_put(data + I_HEADER_SIZE); -+ put_word(header_size + 2); -+ /* common header */ -+ hcrc = calc_header_crc(data, (unsigned int) header_size + 2); -+ setup_put(headercrc_ptr); -+ put_word(hcrc); -+ } -+ -+ if (fwrite(data, sizeof(char), header_size + 2, nafp) == 0) -+ fatal_error("Cannot write to temporary file"); -+ -+ convdelim(hdr->name, DELIM); -+} -+ -+/* Local Variables: */ -+/* mode:c */ -+/* tab-width:4 */ -+/* compile-command:"gcc -c header.c" */ -+/* End: */ ---- lha-1.14i.orig/debian/org/lharc.c -+++ lha-1.14i/debian/org/lharc.c -@@ -0,0 +1,1135 @@ -+/* ------------------------------------------------------------------------ */ -+/* LHa for UNIX */ -+/* lharc.c -- append to archive */ -+/* */ -+/* Copyright (C) MCMLXXXIX Yooichi.Tagawa */ -+/* Modified Nobutaka Watazaki */ -+/* Thanks to H.Yoshizaki. (MS-DOS LHarc) */ -+/* */ -+/* Ver. 0.00 Original 1988.05.23 Y.Tagawa */ -+/* Ver. 0.01 Alpha Version (for 4.2BSD) 1989.05.28 Y.Tagawa */ -+/* Ver. 0.02 Alpha Version Rel.2 1989.05.29 Y.Tagawa */ -+/* Ver. 0.03 Release #3 Beta Version 1989.07.02 Y.Tagawa */ -+/* Ver. 0.03a Debug 1989.07.03 Y.Tagawa */ -+/* Ver. 0.03b Modified 1989.07.13 Y.Tagawa */ -+/* Ver. 0.03c Debug (Thanks to void@rena.dit.junet) */ -+/* 1989.08.09 Y.Tagawa */ -+/* Ver. 0.03d Modified (quiet and verbose) 1989.09.14 Y.Tagawa */ -+/* V1.00 Fixed 1989.09.22 Y.Tagawa */ -+/* V1.01 Bug Fixed 1989.12.25 Y.Tagawa */ -+/* */ -+/* DOS-Version Original LHx V C2.01 (C) H.Yohizaki */ -+/* */ -+/* V2.00 UNIX Lharc + DOS LHx -> OSK LHx 1990.11.01 Momozou */ -+/* V2.01 Minor Modified 1990.11.24 Momozou */ -+/* */ -+/* Ver. 0.02 LHx for UNIX 1991.11.18 M.Oki */ -+/* Ver. 0.03 LHa for UNIX 1991.12.17 M.Oki */ -+/* Ver. 0.04 LHa for UNIX beta version 1992.01.20 M.Oki */ -+/* Ver. 1.00 LHa for UNIX Fixed 1992.03.19 M.Oki */ -+/* */ -+/* Ver. 1.10 for Symblic Link 1993.06.25 N.Watazaki */ -+/* Ver. 1.11 for Symblic Link Bug Fixed 1993.08.18 N.Watazaki */ -+/* Ver. 1.12 for File Date Check 1993.10.28 N.Watazaki */ -+/* Ver. 1.13 Bug Fixed (Idicator calcurate) 1994.02.21 N.Watazaki */ -+/* Ver. 1.13a Bug Fixed (Sym. Link delete) 1994.03.11 N.Watazaki */ -+/* Ver. 1.13b Bug Fixed (Sym. Link delete) 1994.07.29 N.Watazaki */ -+/* Ver. 1.14 Source All chagned 1995.01.14 N.Watazaki */ -+/* Ver. 1.14b,c Bug Fixed 1996.03.07 t.okamoto */ -+/* Ver. 1.14d Version up 1997.01.12 t.okamoto */ -+/* Ver. 1.14g Bug Fixed 2000.05.06 t.okamoto */ -+/* Ver. 1.14i Modified 2000.10.06 t.okamoto */ -+/* ------------------------------------------------------------------------ */ -+#define LHA_MAIN_SRC -+ -+#include "lha.h" -+ -+/* ------------------------------------------------------------------------ */ -+/* PROGRAM */ -+/* ------------------------------------------------------------------------ */ -+static int cmd = CMD_UNKNOWN; -+ -+/* 1996.8.13 t.okamoto */ -+#if 0 -+char **cmd_filev; -+int cmd_filec; -+ -+char *archive_name; -+char expanded_archive_name[FILENAME_LENGTH]; -+char temporary_name[FILENAME_LENGTH]; -+char backup_archive_name[FILENAME_LENGTH]; -+#endif -+ -+/* static functions */ -+static void sort_files(); -+static void print_version(); -+ -+char *extract_directory = NULL; -+char **xfilev; -+int xfilec = 257; -+ -+/* 1996.8.13 t.okamoto */ -+#if 0 -+char *writting_filename; -+char *reading_filename; -+ -+int archive_file_mode; -+int archive_file_gid; -+#endif -+/* ------------------------------------------------------------------------ */ -+static void -+init_variable() /* Added N.Watazaki */ -+{ -+/* options */ -+ quiet = FALSE; -+ text_mode = FALSE; -+ verbose = FALSE; -+ noexec = FALSE; /* debugging option */ -+ force = FALSE; -+ prof = FALSE; -+#ifndef SUPPORT_LH7 -+ compress_method = LZHUFF5_METHOD_NUM; -+#endif -+#ifdef SUPPORT_LH7 -+ compress_method = LZHUFF7_METHOD_NUM; -+#endif -+ -+ header_level = HEADER_LEVEL1; -+ quiet_mode = 0; -+ -+#ifdef EUC -+ euc_mode = FALSE; -+#endif -+ -+/* view command flags */ -+ verbose_listing = FALSE; -+ -+/* extract command flags */ -+ output_to_stdout = FALSE; -+ -+/* append command flags */ -+ new_archive = FALSE; -+ update_if_newer = FALSE; -+ delete_after_append = FALSE; -+ generic_format = FALSE; -+ -+ remove_temporary_at_error = FALSE; -+ recover_archive_when_interrupt = FALSE; -+ remove_extracting_file_when_interrupt = FALSE; -+ get_filename_from_stdin = FALSE; -+ ignore_directory = FALSE; -+ verify_mode = FALSE; -+ -+ noconvertcase = FALSE; -+ -+ extract_directory = NULL; -+ xfilec = 257; -+} -+ -+/* ------------------------------------------------------------------------ */ -+/* NOTES : Text File Format */ -+/* GENERATOR NewLine */ -+/* [generic] 0D 0A */ -+/* [MS-DOS] 0D 0A */ -+/* [OS9][MacOS] 0D */ -+/* [UNIX] 0A */ -+/* ------------------------------------------------------------------------ */ -+static void -+print_tiny_usage_and_exit() -+{ -+ fprintf(stderr, "\ -+LHarc for UNIX V 1.02 Copyright(C) 1989 Y.Tagawa\n\ -+LHx for MSDOS V C2.01 Copyright(C) 1990 H.Yoshizaki\n\ -+LHx(arc) for OSK V 2.01 Modified 1990 Momozou\n\ -+LHa for UNIX V 1.00 Copyright(C) 1992 Masaru Oki\n\ -+LHa for UNIX V 1.14 Modified 1995 Nobutaka Watazaki\n\ -+LHa for UNIX V 1.14i Modified 2000 Tsugio Okamoto\n\ -+"); -+ fprintf(stderr, "\ -+usage: lha [-]{axelvudmcp[q[num]][vnfodizg012]}[w=<dir>] archive_file [file...]\n\ -+commands: options:\n\ -+ a Add(or replace) to archive q{num} quiet (num:quiet mode)\n\ -+ x,e EXtract from archive v verbose\n\ -+ l,v List / Verbose List n not execute\n\ -+ u Update newer files to archive f force (over write at extract)\n\ -+ d Delete from archive t FILES are TEXT file\n"); -+#ifdef SUPPORT_LH7 -+ fprintf(stderr, "\ -+ m Move to archive (means 'ad') o[567] compression method (a/u)\n\ -+"); -+#endif -+#ifndef SUPPORT_LH7 -+ fprintf(stderr, "\ -+ m Move to archive (means 'ad') o use LHarc compatible method (a/u)\n\ -+"); -+#endif -+ fprintf(stderr, "\ -+ c re-Construct new archive w=<dir> specify extract directory (a/u/m/x/e)\n\ -+ p Print to STDOUT from archive d delete FILES after (a/u/c)\n\ -+ t Test file CRC in archive i ignore directory path (x/e)\n\ -+ z files not compress (a/u)\n\ -+ g Generic format (for compatibility)\n\ -+ or not convert case when extracting\n\ -+ 0/1/2 header level (a/u)\n\ -+"); -+#ifdef EUC -+ fprintf(stderr, "\ -+ e TEXT code convert from/to EUC\n\ -+"); -+#endif -+ exit(1); -+} -+ -+/* ------------------------------------------------------------------------ */ -+int -+main(argc, argv) -+ int argc; -+ char *argv[]; -+{ -+ char *p, inpbuf[256]; -+ -+ int i; -+ int ac; -+ char **av, *m; -+ -+ init_variable(); /* Added N.Watazaki */ -+ -+ ac = argc; -+ av = (char **)malloc( sizeof(char*)*argc ); -+ if (av == NULL) fatal_error("not enough memory\n"); -+ for (i=0; i<argc; i++) { -+ if ((av[i] = strdup( argv[i] )) == NULL) -+ fatal_error("not enough memory\n"); -+ } -+ -+ if (ac < 2) -+ print_tiny_usage_and_exit(); -+ -+ if (strcmp(av[1], "--version") == 0) { -+ print_version(); -+ exit(1); -+ } -+ -+ if (ac < 3) { -+ cmd = CMD_LIST; -+ av--; /* argv--; */ /* 1999.7.18 */ -+ ac++; /* argc++; */ -+ goto work; -+ } -+ -+ m = av[1]; -+ -+ if (m[0] == '-') -+ m++; -+ /* commands */ -+ switch (*m) { -+ case 'x': -+ case 'e': -+ cmd = CMD_EXTRACT; -+ break; -+ -+ case 'p': -+ output_to_stdout = TRUE; -+ cmd = CMD_EXTRACT; -+ break; -+ -+ case 'c': -+ new_archive = TRUE; -+ cmd = CMD_ADD; -+ break; -+ -+ case 'a': -+ cmd = CMD_ADD; -+ break; -+ -+ case 'd': -+ cmd = CMD_DELETE; -+ break; -+ -+ case 'u': -+ update_if_newer = TRUE; -+ cmd = CMD_ADD; -+ break; -+ -+ case 'm': -+ delete_after_append = TRUE; -+ cmd = CMD_ADD; -+ break; -+ -+ case 'v': -+ verbose_listing = TRUE; -+ cmd = CMD_LIST; -+ break; -+ -+ case 'l': -+ cmd = CMD_LIST; -+ break; -+ -+ case 't': -+ cmd = CMD_EXTRACT; -+ verify_mode = TRUE; -+ break; -+ -+ default: -+ print_tiny_usage_and_exit(); -+ -+ } -+ -+ /* options */ -+ /* p = &argv[1][1]; */ -+ p = m+1; -+ while ( *p != 0 ) { -+ switch ((*p++)) { -+ case 'q': -+ switch (*p) { -+ case '0': -+ case '1': -+ quiet_mode = *p - '0'; -+ ++p; -+ break; -+ case '2': -+ default: -+ quiet = TRUE; -+ break; -+ } -+ case 'f': -+ force = TRUE; -+ break; -+ case 'p': -+ prof = TRUE; -+ break; -+ case 'v': -+ verbose = TRUE; -+ break; -+ case 't': -+ text_mode = TRUE; -+ break; -+#ifdef EUC -+ case 'e': -+ text_mode = TRUE; -+ euc_mode = TRUE; -+ break; -+#endif -+ case 'n': -+ noexec = TRUE; -+ break; -+ case 'g': -+ generic_format = TRUE; -+ noconvertcase = TRUE; -+ header_level = 0; -+ break; -+ case 'd': -+ delete_after_append = TRUE; -+ break; -+ case 'o': -+ switch (*p) { -+ case 0: -+ compress_method = LZHUFF1_METHOD_NUM; -+ header_level = 0; -+ break; -+ case '5': -+ compress_method = LZHUFF5_METHOD_NUM; -+ p++; -+ break; -+#ifdef SUPPORT_LH7 -+ case '6': -+ compress_method = LZHUFF6_METHOD_NUM; -+ p++; -+ break; -+ case '7': -+ compress_method = LZHUFF7_METHOD_NUM; -+ p++; -+ break; -+#endif -+ default: -+ fprintf(stderr, "LHa: error option o%c\n", p[-1]); -+ exit(1); -+ } -+ break; -+ case 'z': -+ compress_method = LZHUFF0_METHOD_NUM; /* Changed N.Watazaki */ -+ break; -+ case 'i': -+ ignore_directory = TRUE; -+ break; -+ case 'w': -+ if (*p == '=') -+ p++; -+ extract_directory = p; -+ while (*p) -+ p++; -+ break; -+ case '0': -+ header_level = HEADER_LEVEL0; -+ break; -+ case '1': -+ header_level = HEADER_LEVEL1; -+ break; -+ case '2': -+ header_level = HEADER_LEVEL2; -+ break; -+ default: -+ fprintf(stderr, "LHa: Unknown option '%c'.\n", p[-1]); -+ exit(1); -+ } -+ } -+ -+work: -+ /* archive file name */ -+ archive_name = av[2]; -+ -+ if (!strcmp(archive_name, "-")) { -+ if (!isatty(1) && cmd == CMD_ADD) -+ quiet = TRUE; -+ } -+ else { -+ if (ac == 3 && !isatty(0)) { /* 1999.7.18 */ -+ get_filename_from_stdin = TRUE; -+ } -+ } -+ -+ /* target file name */ -+ if (get_filename_from_stdin) { -+ cmd_filec = 0; -+ if ((xfilev = (char **) malloc(sizeof(char *) * xfilec)) == NULL) -+ fatal_error("Virtual memory exhausted\n"); -+ while (fgets(inpbuf, sizeof(inpbuf), stdin)) { -+ /* delete \n if it exist */ -+ i=0; p=inpbuf; -+ while (i < sizeof(inpbuf) && p != 0) { -+ if (*p == '\n') { -+ *p = 0; -+ break; -+ } -+ p++; i++; -+ } -+ -+ if (cmd_filec >= xfilec) { -+ xfilec += 256; -+ cmd_filev = (char **) realloc(xfilev, -+ sizeof(char *) * xfilec); -+ if (cmd_filev == NULL) -+ fatal_error("Virtual memory exhausted\n"); -+ xfilev = cmd_filev; -+ } -+ if (strlen(inpbuf) < 1) -+ continue; -+ if ((xfilev[cmd_filec++] = (char *) strdup(inpbuf)) == NULL) -+ fatal_error("Virtual memory exhausted\n"); -+ } -+ xfilev[cmd_filec] = NULL; -+ cmd_filev = xfilev; -+ } else { -+ cmd_filec = ac - 3; -+ cmd_filev = av + 3; -+ } -+ sort_files(); -+ -+ /* make crc table */ -+ make_crctable(); -+ -+ switch (cmd) { -+ case CMD_EXTRACT: -+ cmd_extract(); -+ break; -+ case CMD_ADD: -+ cmd_add(); -+ break; -+ case CMD_LIST: -+ cmd_list(); -+ break; -+ case CMD_DELETE: -+ cmd_delete(); -+ break; -+ } -+ -+#ifdef USE_PROF -+ if (!prof) -+ exit(0); -+#endif -+ -+ return 0; -+} -+ -+ -+/* ------------------------------------------------------------------------ */ -+/* */ -+/* ------------------------------------------------------------------------ */ -+ -+/* ------------------------------------------------------------------------ */ -+static void -+print_version() -+{ -+ fprintf(stderr, "%s\n", LHA_VERSION); -+} -+ -+/* ------------------------------------------------------------------------ */ -+static void -+message_1(title, subject, name) -+ char *title, *subject, *name; -+{ -+ fprintf(stderr, "LHa: %s%s ", title, subject); -+ fflush(stderr); -+ -+ if (errno == 0) -+ fprintf(stderr, "%s\n", name); -+ else -+ perror(name); -+} -+ -+/* ------------------------------------------------------------------------ */ -+void -+message(subject, name) -+ char *subject, *name; -+{ -+ message_1("", subject, name); -+} -+ -+/* ------------------------------------------------------------------------ */ -+void -+warning(subject, name) -+ char *subject, *name; -+{ -+ message_1("Warning: ", subject, name); -+} -+ -+/* ------------------------------------------------------------------------ */ -+void -+error(subject, msg) -+ char *subject, *msg; -+{ -+ message_1("Error: ", subject, msg); -+} -+ -+/* ------------------------------------------------------------------------ */ -+void -+fatal_error(msg) -+ char *msg; -+{ -+ message_1("Fatal error:", "", msg); -+ -+ if (remove_temporary_at_error) -+ unlink(temporary_name); -+ -+ exit(1); -+} -+ -+/* ------------------------------------------------------------------------ */ -+void -+write_error() -+{ -+ fatal_error(writting_filename); -+} -+ -+/* ------------------------------------------------------------------------ */ -+void -+read_error() -+{ -+ fatal_error(reading_filename); -+} -+ -+/* ------------------------------------------------------------------------ */ -+void -+interrupt(signo) -+ int signo; -+{ -+ errno = 0; -+ message("Interrupted\n", ""); -+ -+ if (temporary_fp) -+ fclose(temporary_fp); -+ unlink(temporary_name); -+ if (recover_archive_when_interrupt) -+ rename(backup_archive_name, archive_name); -+ if (remove_extracting_file_when_interrupt) { -+ errno = 0; -+ message("Removing", writting_filename); -+ unlink(writting_filename); -+ } -+ signal(SIGINT, SIG_DFL); -+ signal(SIGHUP, SIG_DFL); -+ kill(getpid(), signo); -+} -+ -+/* ------------------------------------------------------------------------ */ -+/* */ -+/* ------------------------------------------------------------------------ */ -+static int -+sort_by_ascii(a, b) -+ char **a, **b; -+{ -+ register char *p, *q; -+ register int c1, c2; -+ -+ p = *a, q = *b; -+ if (generic_format) { -+ do { -+ c1 = *(unsigned char *) p++; -+ c2 = *(unsigned char *) q++; -+ if (!c1 || !c2) -+ break; -+ if (islower(c1)) -+ c1 = toupper(c1); -+ if (islower(c2)) -+ c2 = toupper(c2); -+ } -+ while (c1 == c2); -+ return c1 - c2; -+ } -+ else { -+ while (*p == *q && *p != '\0') -+ p++, q++; -+ return *(unsigned char *) p - *(unsigned char *) q; -+ } -+} -+ -+/* ------------------------------------------------------------------------ */ -+static void -+sort_files() -+{ -+ if (cmd_filec > 1) -+ qsort(cmd_filev, cmd_filec, sizeof(char *), sort_by_ascii); -+} -+ -+/* ------------------------------------------------------------------------ */ -+char * -+xmalloc(size) -+ int size; -+{ -+ char *p = (char *) malloc(size); -+ if (!p) -+ fatal_error("Not enough memory"); -+ return p; -+} -+ -+/* ------------------------------------------------------------------------ */ -+char * -+xrealloc(old, size) -+ char *old; -+ int size; -+{ -+ char *p = (char *) realloc(old, size); -+ if (!p) -+ fatal_error("Not enough memory"); -+ return p; -+} -+ -+/* ------------------------------------------------------------------------ */ -+/* STRING POOL */ -+/* ------------------------------------------------------------------------ */ -+/* -+ string pool : -+ +-------------+-------------+------+-------------+----------+ -+ | N A M E 1 \0| N A M E 2 \0| .... | N A M E n \0| | -+ +-------------+-------------+------+-------------+----------+ -+ ^ ^ ^ buffer+0 buffer+used buffer+size -+ -+ vector : -+ +---------------+---------------+------------- -----------------+ -+ | pointer to | pointer to | pointer to ... pointer to | -+ | stringpool | N A M E 1 | N A M E 2 ... N A M E n | -+ +---------------+---------------+------------- -------------+ -+ ^ malloc base returned -+*/ -+ -+/* ------------------------------------------------------------------------ */ -+void -+init_sp(sp) -+ struct string_pool *sp; -+{ -+ sp->size = 1024 - 8; /* any ( >=0 ) */ -+ sp->used = 0; -+ sp->n = 0; -+ sp->buffer = (char *) xmalloc(sp->size * sizeof(char)); -+} -+ -+/* ------------------------------------------------------------------------ */ -+void -+add_sp(sp, name, len) -+ struct string_pool *sp; -+ char *name; /* stored '\0' at tail */ -+ int len; /* include '\0' */ -+{ -+ while (sp->used + len > sp->size) { -+ sp->size *= 2; -+ sp->buffer = (char *) xrealloc(sp->buffer, sp->size * sizeof(char)); -+ } -+ bcopy(name, sp->buffer + sp->used, len); -+ sp->used += len; -+ sp->n++; -+} -+ -+/* ------------------------------------------------------------------------ */ -+void -+finish_sp(sp, v_count, v_vector) -+ register struct string_pool *sp; -+ int *v_count; -+ char ***v_vector; -+{ -+ int i; -+ register char *p; -+ char **v; -+ -+ v = (char **) xmalloc((sp->n + 1) * sizeof(char *)); -+ *v++ = sp->buffer; -+ *v_vector = v; -+ *v_count = sp->n; -+ p = sp->buffer; -+ for (i = sp->n; i; i--) { -+ *v++ = p; -+ if (i - 1) -+ p += strlen(p) + 1; -+ } -+} -+ -+/* ------------------------------------------------------------------------ */ -+void -+free_sp(vector) -+ char **vector; -+{ -+ vector--; -+ free(*vector); /* free string pool */ -+ free(vector); -+} -+ -+ -+/* ------------------------------------------------------------------------ */ -+/* READ DIRECTORY FILES */ -+/* ------------------------------------------------------------------------ */ -+static boolean -+include_path_p(path, name) -+ char *path, *name; -+{ -+ char *n = name; -+ while (*path) -+ if (*path++ != *n++) -+ return (path[-1] == '/' && *n == '\0'); -+ return (*n == '/' || (n != name && path[-1] == '/' && n[-1] == '/')); -+} -+ -+/* ------------------------------------------------------------------------ */ -+void -+cleaning_files(v_filec, v_filev) -+ int *v_filec; -+ char ***v_filev; -+{ -+ char *flags; -+ struct stat stbuf; -+ -+ register char **filev = *v_filev; -+ register int filec = *v_filec; -+ register char *p; -+ register int i, j; -+ -+ if (filec == 0) -+ return; -+ -+ flags = xmalloc(filec * sizeof(char)); -+ -+ /* flags & 0x01 : 1: ignore */ -+ /* flags & 0x02 : 1: directory, 0 : regular file */ -+ /* flags & 0x04 : 1: need delete */ -+ -+ -+ for (i = 0; i < filec; i++) -+ if (GETSTAT(filev[i], &stbuf) < 0) { -+ flags[i] = 0x04; -+ fprintf(stderr, -+ "LHa: Cannot access \"%s\", ignored.\n", filev[i]); -+ } -+ else { -+ if (is_regularfile(&stbuf)) -+ flags[i] = 0x00; -+ else if (is_directory(&stbuf)) -+ flags[i] = 0x02; -+#ifdef S_IFLNK -+ else if (is_symlink(&stbuf)) /* t.okamoto */ -+ flags[i] = 0x00; -+#endif -+ else { -+ flags[i] = 0x04; -+ fprintf(stderr, -+ "LHa: Cannot archive \"%s\", ignored.\n", filev[i]); -+ } -+ } -+ errno = 0; -+ -+ for (i = 0; i < filec; i++) { -+ p = filev[i]; -+ if ((flags[i] & 0x07) == 0x00) { /* regular file, not -+ * deleted/ignored */ -+ for (j = i + 1; j < filec; j++) { -+ if ((flags[j] & 0x07) == 0x00) { /* regular file, not -+ * deleted/ignored */ -+ if (STREQU(p, filev[j])) -+ flags[j] = 0x04; /* delete */ -+ } -+ } -+ } -+ else if ((flags[i] & 0x07) == 0x02) { /* directory, not -+ * deleted/ignored */ -+ for (j = i + 1; j < filec; j++) { -+ if ((flags[j] & 0x07) == 0x00) { /* regular file, not -+ * deleted/ignored */ -+ if (include_path_p(p, filev[j])) -+ flags[j] = 0x04; /* delete */ -+ } -+ else if ((flags[j] & 0x07) == 0x02) { /* directory, not -+ * deleted/ignored */ -+ if (include_path_p(p, filev[j])) -+ flags[j] = 0x04; /* delete */ -+ } -+ } -+ } -+ } -+ -+ for (i = j = 0; i < filec; i++) { -+ if ((flags[i] & 0x04) == 0) { -+ if (i != j) -+ filev[j] = filev[i]; -+ j++; -+ } -+ } -+ *v_filec = j; -+ -+ free(flags); -+} -+ -+/* ------------------------------------------------------------------------ */ -+#ifdef NODIRECTORY -+/* please need your imprementation */ -+boolean -+find_files(name, v_filec, v_filev) -+ char *name; -+ int *v_filec; -+ char ***v_filev; -+{ -+ return FALSE; /* DUMMY */ -+} -+ -+/* ------------------------------------------------------------------------ */ -+void -+free_files(filec, filev) -+ int filec; -+ char **filev; -+{ -+ /* do nothing */ -+} -+/* ------------------------------------------------------------------------ */ -+#else -+boolean -+find_files(name, v_filec, v_filev) -+ char *name; -+ int *v_filec; -+ char ***v_filev; -+{ -+ struct string_pool sp; -+ char newname[FILENAME_LENGTH]; -+ int len, n; -+ DIR *dirp; -+ DIRENTRY *dp; -+ struct stat tmp_stbuf, arc_stbuf, fil_stbuf; -+ -+ strcpy(newname, name); -+ len = strlen(name); -+ if (len > 0 && newname[len - 1] != '/') -+ newname[len++] = '/'; -+ -+ dirp = opendir(name); -+ if (!dirp) -+ return FALSE; -+ -+ init_sp(&sp); -+ -+ GETSTAT(temporary_name, &tmp_stbuf); -+ GETSTAT(archive_name, &arc_stbuf); -+ -+ for (dp = readdir(dirp); dp != NULL; dp = readdir(dirp)) { -+ n = NAMLEN(dp); -+ strncpy(newname + len, dp->d_name, n); -+ newname[len + n] = '\0'; -+ if (GETSTAT(newname, &fil_stbuf) < 0) -+ continue; -+#ifdef NO_INODE -+ if ( dp->d_name[0] != '.' || -+ (n != 1 && -+ (dp->d_name[1] != '.' || -+ n != 2)) ) { -+ add_sp(&sp, newname, len+n+1); -+ } -+#else -+ if ((dp->d_ino != 0) && -+ /* exclude '.' and '..' */ -+ ((dp->d_name[0] != '.') || -+ ((n != 1) && -+ ((dp->d_name[1] != '.') || -+ (n != 2)))) && -+ ((tmp_stbuf.st_dev != fil_stbuf.st_dev || -+ tmp_stbuf.st_ino != fil_stbuf.st_ino) && -+ (arc_stbuf.st_dev != fil_stbuf.st_dev || -+ arc_stbuf.st_ino != fil_stbuf.st_ino))) { -+ add_sp(&sp, newname, len + n + 1); -+ } -+#endif -+ } -+ closedir(dirp); -+ finish_sp(&sp, v_filec, v_filev); -+ if (*v_filec > 1) -+ qsort(*v_filev, *v_filec, sizeof(char *), sort_by_ascii); -+ cleaning_files(v_filec, v_filev); -+ -+ return TRUE; -+} -+ -+/* ------------------------------------------------------------------------ */ -+void -+free_files(filec, filev) -+ int filec; -+ char **filev; -+{ -+ free_sp(filev); -+} -+#endif -+/* ------------------------------------------------------------------------ */ -+/* */ -+/* ------------------------------------------------------------------------ */ -+/* Build temporary file name and store to TEMPORARY_NAME */ -+void -+build_temporary_name() -+{ -+#ifdef TMP_FILENAME_TEMPLATE -+ /* "/tmp/lhXXXXXX" etc. */ -+ if (extract_directory == NULL) { -+ strcpy(temporary_name, TMP_FILENAME_TEMPLATE); -+ } -+ else { -+ sprintf(temporary_name, "%s/lhXXXXXX", extract_directory); -+ } -+#ifdef MKSTEMP -+ mkstemp(temporary_name); -+#else -+ mktemp(temporary_name); -+#endif -+#else -+ char *p, *s; -+ -+ strcpy(temporary_name, archive_name); -+ for (p = temporary_name, s = (char *) 0; *p; p++) -+ if (*p == '/') -+ s = p; -+ strcpy((s ? s + 1 : temporary_name), "lhXXXXXX"); -+#ifdef MKSTEMP -+ mkstemp(temporary_name); -+#else -+ mktemp(temporary_name); -+#endif -+#endif -+} -+ -+/* ------------------------------------------------------------------------ */ -+static void -+modify_filename_extention(buffer, ext) -+ char *buffer; -+ char *ext; -+{ -+ register char *p, *dot; -+ -+ for (p = buffer, dot = (char *) 0; *p; p++) { -+ if (*p == '.') -+ dot = p; -+ else if (*p == '/') -+ dot = (char *) 0; -+ } -+ -+ if (dot) -+ p = dot; -+ -+ strcpy(p, ext); -+} -+ -+/* ------------------------------------------------------------------------ */ -+/* build backup file name */ -+void -+build_backup_name(buffer, original) -+ char *buffer; -+ char *original; -+{ -+ strcpy(buffer, original); -+ modify_filename_extention(buffer, BACKUPNAME_EXTENTION); /* ".bak" */ -+} -+ -+/* ------------------------------------------------------------------------ */ -+void -+build_standard_archive_name(buffer, orginal) -+ char *buffer; -+ char *orginal; -+{ -+ strcpy(buffer, orginal); -+ modify_filename_extention(buffer, ARCHIVENAME_EXTENTION); /* ".lzh" */ -+} -+ -+/* ------------------------------------------------------------------------ */ -+/* */ -+/* ------------------------------------------------------------------------ */ -+boolean -+need_file(name) -+ char *name; -+{ -+ int i; -+ -+ if (cmd_filec == 0) -+ return TRUE; -+ -+ for (i = 0; i < cmd_filec; i++) { -+ if (patmatch(cmd_filev[i], name, 0)) -+ return TRUE; -+ } -+ -+ return FALSE; -+} -+ -+FILE * -+xfopen(name, mode) -+ char *name, *mode; -+{ -+ FILE *fp; -+ -+ if ((fp = fopen(name, mode)) == NULL) -+ fatal_error(name); -+ -+ return fp; -+} -+ -+/* ------------------------------------------------------------------------ */ -+/* */ -+/* ------------------------------------------------------------------------ */ -+static boolean -+open_old_archive_1(name, v_fp) -+ char *name; -+ FILE **v_fp; -+{ -+ FILE *fp; -+ struct stat stbuf; -+ -+ if (stat(name, &stbuf) >= 0 && -+ is_regularfile(&stbuf) && -+ (fp = fopen(name, READ_BINARY)) != NULL) { -+ *v_fp = fp; -+ archive_file_gid = stbuf.st_gid; -+ archive_file_mode = stbuf.st_mode; -+ return TRUE; -+ } -+ -+ *v_fp = NULL; -+ archive_file_gid = -1; -+ return FALSE; -+} -+ -+/* ------------------------------------------------------------------------ */ -+FILE * -+open_old_archive() -+{ -+ FILE *fp; -+ char *p; -+ -+ if (!strcmp(archive_name, "-")) { -+ if (cmd == CMD_EXTRACT || cmd == CMD_LIST) -+ return stdin; -+ else -+ return NULL; -+ } -+ if (p = (char *) rindex(archive_name, '.')) { -+ if (strucmp(".LZH", p) == 0 -+ || strucmp(".LZS", p) == 0 -+ || strucmp(".COM", p) == 0 /* DOS SFX */ -+ || strucmp(".EXE", p) == 0 -+ || strucmp(".X", p) == 0 /* HUMAN SFX */ -+ || strucmp(".BAK", p) == 0) { /* for BackUp */ -+ open_old_archive_1(archive_name, &fp); -+ return fp; -+ } -+ } -+ -+ if (open_old_archive_1(archive_name, &fp)) -+ return fp; -+ sprintf(expanded_archive_name, "%s.lzh", archive_name); -+ if (open_old_archive_1(expanded_archive_name, &fp)) { -+ archive_name = expanded_archive_name; -+ return fp; -+ } -+ /* -+ * if ( (errno&0xffff)!=E_PNNF ) { archive_name = -+ * expanded_archive_name; return NULL; } -+ */ -+ sprintf(expanded_archive_name, "%s.lzs", archive_name); -+ if (open_old_archive_1(expanded_archive_name, &fp)) { -+ archive_name = expanded_archive_name; -+ return fp; -+ } -+ /* -+ * if ( (errno&0xffff)!=E_PNNF ) { archive_name = -+ * expanded_archive_name; return NULL; } -+ */ -+ /* -+ * sprintf( expanded_archive_name , "%s.lzh",archive_name); -+ * archive_name = expanded_archive_name; -+ */ -+ return NULL; -+} -+ -+/* ------------------------------------------------------------------------ */ -+int -+inquire(msg, name, selective) -+ char *msg, *name, *selective; -+{ -+ char buffer[1024]; -+ char *p; -+ -+ for (;;) { -+ fprintf(stderr, "%s %s ", name, msg); -+ fflush(stderr); -+ -+ fgets(buffer, 1024, stdin); -+ -+ for (p = selective; *p; p++) -+ if (buffer[0] == *p) -+ return p - selective; -+ } -+ /* NOTREACHED */ -+} -+ -+/* ------------------------------------------------------------------------ */ -+void -+write_archive_tail(nafp) -+ FILE *nafp; -+{ -+ putc(0x00, nafp); -+} -+ -+/* ------------------------------------------------------------------------ */ -+void -+copy_old_one(oafp, nafp, hdr) -+ FILE *oafp, *nafp; -+ LzHeader *hdr; -+{ -+ if (noexec) { -+ fseek(oafp, (long) (hdr->header_size + 2) + hdr->packed_size, SEEK_CUR); -+ } -+ else { -+ reading_filename = archive_name; -+ writting_filename = temporary_name; -+ if (hdr->header_level != 2) { -+ copyfile(oafp, nafp, -+ (long) (hdr->header_size + 2) + hdr->packed_size, 0); -+ } else { -+ copyfile(oafp, nafp, -+ (long) (hdr->header_size) + hdr->packed_size, 0); -+ } -+ } -+} -+ -+/* Local Variables: */ -+/* mode:c */ -+/* tab-width:4 */ -+/* compile-command:"gcc -c lharc.c" */ -+/* End: */ ---- lha-1.14i.orig/debian/org/util.c -+++ lha-1.14i/debian/org/util.c -@@ -0,0 +1,375 @@ -+/* ------------------------------------------------------------------------ */ -+/* LHa for UNIX */ -+/* util.c -- LHarc Util */ -+/* */ -+/* Modified Nobutaka Watazaki */ -+/* */ -+/* Ver. 1.14 Source All chagned 1995.01.14 N.Watazaki */ -+/* Ver. 1.14e Support for sfx archives 1999.05.28 T.Okamoto */ -+/* ------------------------------------------------------------------------ */ -+#include "lha.h" -+/* -+ * util.c - part of LHa for UNIX Feb 26 1992 modified by Masaru Oki Mar 4 -+ * 1992 modified by Masaru Oki #ifndef USESTRCASECMP added. Mar 31 1992 -+ * modified by Masaru Oki #ifdef NOMEMSET added. -+ */ -+#include <errno.h> -+ -+/* ------------------------------------------------------------------------ */ -+extern unsigned short crc; -+extern int quiet; -+/* ------------------------------------------------------------------------ */ -+long -+copyfile(f1, f2, size, crc_flg) /* return: size of source file */ -+ FILE *f1; -+ FILE *f2; -+ long size; -+ int crc_flg;/* 0: no crc, 1: crc check, 2: extract, 3: -+ * append */ -+{ -+ unsigned short xsize; -+ char *buf; -+ long rsize = 0; -+ -+ if ((buf = (char *) malloc(BUFFERSIZE)) == NULL) -+ fatal_error("virtual memory exhausted.\n"); -+ crc = 0; -+ if ((crc_flg == 2 || crc_flg) && text_mode) -+ init_code_cache(); -+ while (size > 0) { -+ /* read */ -+ if (crc_flg == 3 && text_mode) { -+ xsize = fread_txt(buf, BUFFERSIZE, f1); -+ if (xsize == 0) -+ break; -+ if (ferror(f1)) { -+ fatal_error("file read error\n"); -+ } -+ } -+ else { -+ xsize = (size > BUFFERSIZE) ? BUFFERSIZE : size; -+ if (fread(buf, 1, xsize, f1) != xsize) { -+ fatal_error("file read error\n"); -+ } -+ } -+ /* write */ -+ if (f2) { -+ if (crc_flg == 2 && text_mode) { -+ if (fwrite_txt(buf, xsize, f2)) { -+ fatal_error("file write error\n"); -+ } -+ } -+ else { -+ if (fwrite(buf, 1, xsize, f2) != xsize) { -+ fatal_error("file write error\n"); -+ } -+ } -+ } -+ /* calculate crc */ -+ if (crc_flg) { -+ calccrc(buf, xsize); -+ } -+ rsize += xsize; -+ if (crc_flg != 3 || !text_mode) -+ size -= xsize; -+ } -+ free(buf); -+ return rsize; -+} -+ -+/* ------------------------------------------------------------------------ */ -+int -+encode_stored_crc(ifp, ofp, size, original_size_var, write_size_var) -+ FILE *ifp, *ofp; -+ long size; -+ long *original_size_var; -+ long *write_size_var; -+{ -+ int save_quiet; -+ -+ save_quiet = quiet; -+ quiet = 1; -+ size = copyfile(ifp, ofp, size, 3); -+ *original_size_var = *write_size_var = size; -+ quiet = save_quiet; -+ return crc; -+} -+ -+/* ------------------------------------------------------------------------ */ -+/* convert path delimit -+ erreturns *filename */ -+/* ------------------------------------------------------------------------ */ -+unsigned char * -+convdelim(path, delim) -+ unsigned char *path; -+ unsigned char delim; -+{ -+ unsigned char c; -+ unsigned char *p; -+#ifdef MULTIBYTE_CHAR -+ int kflg; -+ -+ kflg = 0; -+#endif -+ for (p = path; (c = *p) != 0; p++) { -+#ifdef MULTIBYTE_CHAR -+ if (kflg) { -+ kflg = 0; -+ } -+ else if (MULTIBYTE_FIRST_P(c)) { -+ kflg = 1; -+ } -+ else -+#endif -+ if (c == '\\' || c == DELIM || c == DELIM2) { -+ *p = delim; -+ path = p + 1; -+ } -+ } -+ return path; -+} -+ -+/* ------------------------------------------------------------------------ */ -+/* If TRUE, archive file name is msdos SFX file name. */ -+boolean -+archive_is_msdos_sfx1(name) -+ char *name; -+{ -+ int len = strlen(name); -+ -+ return ((len >= 4) && -+ (strucmp(".COM", name + len - 4) == 0 || -+ strucmp(".EXE", name + len - 4) == 0)) || -+ ((len >= 2) && -+ (strucmp(".x", name + len - 2) == 0)); -+} -+ -+/* ------------------------------------------------------------------------ */ -+/* skip SFX header */ -+boolean -+skip_msdos_sfx1_code(fp) -+ FILE *fp; -+{ -+ unsigned char buffer[MAXSFXCODE]; -+ unsigned char *p, *q; -+ int n; -+ -+ n = fread(buffer, sizeof(char), MAXSFXCODE, fp); -+ -+ for (p = buffer + 2, q = buffer + n - /* 5 */ (I_HEADER_LEVEL+1)-2; p < q; p++) { -+ /* found "-l??-" keyword (as METHOD type string) */ -+ if (p[0] == '-' && p[1] == 'l' && p[4] == '-') { -+ /* size and checksum validate check */ -+ if ( (p[I_HEADER_LEVEL-2] == 0 || p[I_HEADER_LEVEL-2] == 0) -+ && p[I_HEADER_SIZE-2] > 20 -+ && p[I_HEADER_CHECKSUM-2] == calc_sum(p, p[-2])) { -+ fseek(fp, ((p - 2) - buffer) - n, SEEK_CUR); -+ return TRUE; -+ } else if (p[I_HEADER_LEVEL-2] == 2 && p[I_HEADER_SIZE-2] >= 24 -+ && p[I_ATTRIBUTE-2] == 0x20) { -+ fseek(fp, ((p - 2) - buffer) - n, SEEK_CUR); -+ return TRUE; -+ } -+ } -+ } -+ -+ fseek(fp, -n, SEEK_CUR); -+ return FALSE; -+} -+ -+/* -+ * strdup(3) -+ */ -+ -+/* ------------------------------------------------------------------------ */ -+#ifdef NOSTRDUP -+char * -+strdup(buf) -+ char *buf; -+{ -+ char *p; -+ -+ if ((p = (char *) malloc(strlen(buf) + 1)) == NULL) -+ return NULL; -+ strcpy(p, buf); -+ return p; -+} -+#endif -+ -+/* -+ * memmove( char *dst , char *src , size_t cnt ) -+ */ -+ -+/* ------------------------------------------------------------------------ */ -+#if defined(NOBSTRING) && !defined(__STDC__) -+void * -+memmove(dst, src, cnt) -+ register char *dst, *src; -+ register int cnt; -+{ -+ if (dst == src) -+ return dst; -+ if (src > dst) { -+ while (--cnt >= 0) -+ *dst++ = *src++; -+ } -+ else { -+ dst += cnt; -+ src += cnt; -+ while (--cnt >= 0) -+ *--dst = *--src; -+ } -+ return dst; -+} -+#endif -+ -+/* -+ * rename - change the name of file 91.11.02 by Tomohiro Ishikawa -+ * (ishikawa@gaia.cow.melco.CO.JP) 92.01.20 little modified (added #ifdef) by -+ * Masaru Oki 92.01.28 added mkdir() and rmdir() by Tomohiro Ishikawa -+ */ -+ -+#if defined(NOFTRUNCATE) && !defined(_MINIX) -+ -+/* ------------------------------------------------------------------------ */ -+int -+rename(from, to) -+ char *from, *to; -+{ -+ struct stat s1, s2; -+ extern int errno; -+ -+ if (stat(from, &s1) < 0) -+ return (-1); -+ /* is 'FROM' file a directory? */ -+ if ((s1.st_mode & S_IFMT) == S_IFDIR) { -+ errno = ENOTDIR; -+ return (-1); -+ } -+ if (stat(to, &s2) >= 0) { /* 'TO' exists! */ -+ /* is 'TO' file a directory? */ -+ if ((s2.st_mode & S_IFMT) == S_IFDIR) { -+ errno = EISDIR; -+ return (-1); -+ } -+ if (unlink(to) < 0) -+ return (-1); -+ } -+ if (link(from, to) < 0) -+ return (-1); -+ if (unlink(from) < 0) -+ return (-1); -+ return (0); -+} -+#endif /* NOFTRUNCATE */ -+/* ------------------------------------------------------------------------ */ -+ -+#ifdef NOMKDIR -+#ifndef MKDIRPATH -+#define MKDIRPATH "/bin/mkdir" -+#endif -+#ifndef RMDIRPATH -+#define RMDIRPATH "/bin/rmdir" -+#endif -+int -+rmdir(path) -+ char *path; -+{ -+ int stat, rtn = 0; -+ char *cmdname; -+ if ((cmdname = (char *) malloc(strlen(RMDIRPATH) + 1 + strlen(path) + 1)) -+ == 0) -+ return (-1); -+ strcpy(cmdname, RMDIRPATH); -+ *(cmdname + strlen(RMDIRPATH)) = ' '; -+ strcpy(cmdname + strlen(RMDIRPATH) + 1, path); -+ if ((stat = system(cmdname)) < 0) -+ rtn = -1; /* fork or exec error */ -+ else if (stat) { /* RMDIR command error */ -+ errno = EIO; -+ rtn = -1; -+ } -+ free(cmdname); -+ return (rtn); -+} -+ -+/* ------------------------------------------------------------------------ */ -+int -+mkdir(path, mode) -+ char *path; -+ int mode; -+{ -+ int child, stat; -+ char *cmdname, *cmdpath = MKDIRPATH; -+ if ((cmdname = (char *) strrchr(cmdpath, '/')) == (char *) 0) -+ cmdname = cmdpath; -+ if ((child = fork()) < 0) -+ return (-1); /* fork error */ -+ else if (child) { /* parent process */ -+ while (child != wait(&stat)) /* ignore signals */ -+ continue; -+ } -+ else { /* child process */ -+ int maskvalue; -+ maskvalue = umask(0); /* get current umask() value */ -+ umask(maskvalue | (0777 & ~mode)); /* set it! */ -+ execl(cmdpath, cmdname, path, (char *) 0); -+ /* never come here except execl is error */ -+ return (-1); -+ } -+ if (stat != 0) { -+ errno = EIO; /* cannot get error num. */ -+ return (-1); -+ } -+ return (0); -+} -+#endif -+ -+/* -+ * strucmp modified: Oct 29 1991 by Masaru Oki -+ */ -+ -+#ifndef USESTRCASECMP -+static int -+my_toupper(n) -+ register int n; -+{ -+ if (n >= 'a' && n <= 'z') -+ return n & (~('a' - 'A')); -+ return n; -+} -+ -+/* ------------------------------------------------------------------------ */ -+int -+strucmp(s, t) -+ register char *s, *t; -+{ -+ while (my_toupper(*s++) == my_toupper(*t++)) -+ if (!*s || !*t) -+ break; -+ if (!*s && !*t) -+ return 0; -+ return 1; -+} -+#endif -+ -+/* ------------------------------------------------------------------------ */ -+#ifdef NOMEMSET -+/* Public Domain memset(3) */ -+char * -+memset(s, c, n) -+ char *s; -+ int c, n; -+{ -+ char *p = s; -+ while (n--) -+ *p++ = (char) c; -+ return s; -+} -+#endif -+ -+/* Local Variables: */ -+/* mode:c */ -+/* tab-width:4 */ -+/* compile-command:"gcc -c util.c" */ -+/* End: */ ---- lha-1.14i.orig/debian/org/lhext.c -+++ lha-1.14i/debian/org/lhext.c -@@ -0,0 +1,425 @@ -+/* ------------------------------------------------------------------------ */ -+/* LHa for UNIX */ -+/* lhext.c -- LHarc extract */ -+/* */ -+/* Copyright (C) MCMLXXXIX Yooichi.Tagawa */ -+/* Modified Nobutaka Watazaki */ -+/* */ -+/* Ver. 0.00 Original 1988.05.23 Y.Tagawa */ -+/* Ver. 1.00 Fixed 1989.09.22 Y.Tagawa */ -+/* Ver. 0.03 LHa for UNIX 1991.12.17 M.Oki */ -+/* Ver. 1.12 LHa for UNIX 1993.10.01 N.Watazaki */ -+/* Ver. 1.13b Symbolic Link Update Bug Fix 1994.06.21 N.Watazaki */ -+/* Ver. 1.14 Source All chagned 1995.01.14 N.Watazaki */ -+/* Ver. 1.14e bugfix 1999.04.30 T.Okamoto */ -+/* ------------------------------------------------------------------------ */ -+#include "lha.h" -+/* ------------------------------------------------------------------------ */ -+static int skip_flg = FALSE; /* FALSE..No Skip , TRUE..Skip */ -+static char *methods[] = -+{ -+ LZHUFF0_METHOD, LZHUFF1_METHOD, LZHUFF2_METHOD, LZHUFF3_METHOD, -+ LZHUFF4_METHOD, LZHUFF5_METHOD, LZHUFF6_METHOD, LZHUFF7_METHOD, -+ LARC_METHOD, LARC5_METHOD, LARC4_METHOD, -+ LZHDIRS_METHOD, -+ NULL -+}; -+ -+/* ------------------------------------------------------------------------ */ -+static boolean -+inquire_extract(name) -+ char *name; -+{ -+ struct stat stbuf; -+ -+ skip_flg = FALSE; -+ if (stat(name, &stbuf) >= 0) { -+ if (!is_regularfile(&stbuf)) { -+ error("Already exist (not a file)", name); -+ return FALSE; -+ } -+ -+ if (noexec) { -+ printf("EXTRACT %s but file is exist.\n", name); -+ return FALSE; -+ } -+ else if (!force) { -+ if (!isatty(0)) -+ return FALSE; -+ -+ switch (inquire("OverWrite ?(Yes/[No]/All/Skip)", name, "YyNnAaSs\n")) { -+ case 0: -+ case 1:/* Y/y */ -+ break; -+ case 2: -+ case 3:/* N/n */ -+ case 8:/* Return */ -+ return FALSE; -+ case 4: -+ case 5:/* A/a */ -+ force = TRUE; -+ break; -+ case 6: -+ case 7:/* S/s */ -+ skip_flg = TRUE; -+ break; -+ } -+ } -+ } -+ if (noexec) -+ printf("EXTRACT %s\n", name); -+ -+ return TRUE; -+} -+ -+/* ------------------------------------------------------------------------ */ -+static boolean -+make_parent_path(name) -+ char *name; -+{ -+ char path[FILENAME_LENGTH]; -+ struct stat stbuf; -+ register char *p; -+ -+ /* make parent directory name into PATH for recursive call */ -+ strcpy(path, name); -+ for (p = path + strlen(path); p > path; p--) -+ if (p[-1] == '/') { -+ *--p = '\0'; -+ break; -+ } -+ -+ if (p == path) { -+ message("Why?", "ROOT"); -+ return FALSE; /* no more parent. */ -+ } -+ -+ if (GETSTAT(path, &stbuf) >= 0) { -+ if (is_directory(&stbuf)) -+ return TRUE; -+ error("Not a directory", path); -+ return FALSE; -+ } -+ errno = 0; -+ -+ if (verbose) -+ printf("Making directory \"%s\".\n", path); -+ -+ if (mkdir(path, 0777) >= 0) /* try */ -+ return TRUE; /* successful done. */ -+ errno = 0; -+ -+ if (!make_parent_path(path)) -+ return FALSE; -+ -+ if (mkdir(path, 0777) < 0) { /* try again */ -+ message("Cannot make directory", path); -+ return FALSE; -+ } -+ -+ return TRUE; -+} -+ -+/* ------------------------------------------------------------------------ */ -+static FILE * -+open_with_make_path(name) -+ char *name; -+{ -+ FILE *fp; -+ -+ if ((fp = fopen(name, WRITE_BINARY)) == NULL) { -+ errno = 0; -+ if (!make_parent_path(name) || -+ (fp = fopen(name, WRITE_BINARY)) == NULL) -+ error("Cannot extract", name); -+ errno = 0; -+ } -+ return fp; -+} -+ -+/* ------------------------------------------------------------------------ */ -+static void -+adjust_info(name, hdr) -+ char *name; -+ LzHeader *hdr; -+{ -+ time_t utimebuf[2]; -+ -+ /* adjust file stamp */ -+ utimebuf[0] = utimebuf[1] = hdr->unix_last_modified_stamp; -+ -+ if ((hdr->unix_mode & UNIX_FILE_TYPEMASK) != UNIX_FILE_SYMLINK) -+ utime(name, utimebuf); -+ -+ if (hdr->extend_type == EXTEND_UNIX -+ || hdr->extend_type == EXTEND_OS68K -+ || hdr->extend_type == EXTEND_XOSK) { -+#ifdef NOT_COMPATIBLE_MODE -+ Please need your modification in this space. -+#else -+ if ((hdr->unix_mode & UNIX_FILE_TYPEMASK) != UNIX_FILE_SYMLINK) -+ chmod(name, hdr->unix_mode); -+#endif -+ if (!getuid()) { -+#ifndef HAVE_NO_LCHOWN -+ if ((hdr->unix_mode & UNIX_FILE_TYPEMASK) == UNIX_FILE_SYMLINK) -+ lchown(name, hdr->unix_uid, hdr->unix_gid); -+ else -+#endif /* HAVE_NO_LCHWON */ -+ chown(name, hdr->unix_uid, hdr->unix_gid); -+ } -+ errno = 0; -+ } -+} -+ -+/* ------------------------------------------------------------------------ */ -+static void -+extract_one(afp, hdr) -+ FILE *afp; /* archive file */ -+ LzHeader *hdr; -+{ -+ FILE *fp; /* output file */ -+ struct stat stbuf; -+ char name[257]; -+ int crc; -+ int method; -+ boolean save_quiet, save_verbose, up_flag; -+ char *q = hdr->name, c; -+ -+ if (ignore_directory && rindex(hdr->name, '/')) { -+ q = (char *) rindex(hdr->name, '/') + 1; -+ } -+ else { -+ if (*q == '/') { -+ q++; -+ /* -+ * if OSK then strip device name -+ */ -+ if (hdr->extend_type == EXTEND_OS68K -+ || hdr->extend_type == EXTEND_XOSK) { -+ do -+ c = (*q++); -+ while (c && c != '/'); -+ if (!c || !*q) -+ q = "."; /* if device name only */ -+ } -+ } -+ } -+ -+ if (extract_directory) -+ sprintf(name, "%s/%s", extract_directory, q); -+ else -+ strcpy(name, q); -+ -+ -+ /* LZHDIRS_METHOD¤ò»ý¤Ä¥Ø¥Ã¥À¤ò¥Á¥§¥Ã¥¯¤¹¤ë */ -+ /* 1999.4.30 t.okamoto */ -+ for (method = 0;; method++) { -+ if (methods[method] == NULL) { -+ error("Unknown method skiped ...", name); -+ return; -+ } -+ if (bcmp(hdr->method, methods[method], 5) == 0) -+ break; -+ } -+ -+ if ((hdr->unix_mode & UNIX_FILE_TYPEMASK) == UNIX_FILE_REGULAR -+ && method != LZHDIRS_METHOD_NUM) { -+#if 0 -+ for (method = 0;; method++) { -+ if (methods[method] == NULL) { -+ error("Unknown method skiped ...", name); -+ return; -+ } -+ if (bcmp(hdr->method, methods[method], 5) == 0) -+ break; -+ } -+#endif -+ -+ reading_filename = archive_name; -+ writting_filename = name; -+ if (output_to_stdout || verify_mode) { -+ if (noexec) { -+ printf("%s %s\n", verify_mode ? "VERIFY" : "EXTRACT", name); -+ if (afp == stdin) { -+ int i = hdr->packed_size; -+ while (i--) -+ fgetc(afp); -+ } -+ return; -+ } -+ -+ save_quiet = quiet; -+ save_verbose = verbose; -+ if (!quiet && output_to_stdout) { -+ printf("::::::::\n%s\n::::::::\n", name); -+ quiet = TRUE; -+ verbose = FALSE; -+ } -+ else if (verify_mode) { -+ quiet = FALSE; -+ verbose = TRUE; -+ } -+ -+ crc = decode_lzhuf -+ (afp, stdout, hdr->original_size, hdr->packed_size, name, method); -+ quiet = save_quiet; -+ verbose = save_verbose; -+ } -+ else { -+ if (skip_flg == FALSE) { -+ up_flag = inquire_extract(name); -+ if (up_flag == FALSE && force == FALSE) { -+ return; -+ } -+ } -+ -+ if (skip_flg == TRUE) { /* if skip_flg */ -+ if (stat(name, &stbuf) == 0 && force != TRUE) { -+ if (stbuf.st_mtime >= hdr->unix_last_modified_stamp) { -+ if (quiet != TRUE) -+ printf("%s : Skipped...\n", name); -+ return; -+ } -+ } -+ } -+ if (noexec) { -+ if (afp == stdin) { -+ int i = hdr->packed_size; -+ while (i--) -+ fgetc(afp); -+ } -+ return; -+ } -+ -+ signal(SIGINT, interrupt); -+ signal(SIGHUP, interrupt); -+ -+ unlink(name); -+ errno = 0; -+ remove_extracting_file_when_interrupt = TRUE; -+ -+ if ((fp = open_with_make_path(name)) != NULL) { -+ crc = decode_lzhuf -+ (afp, fp, hdr->original_size, hdr->packed_size, name, method); -+ fclose(fp); -+ } -+ remove_extracting_file_when_interrupt = FALSE; -+ signal(SIGINT, SIG_DFL); -+ signal(SIGHUP, SIG_DFL); -+ -+ if (!fp) -+ return; -+ } -+ -+ errno = 0; -+ if (hdr->has_crc && crc != hdr->crc) -+ error("CRC error", name); -+ } -+ else if ((hdr->unix_mode & UNIX_FILE_TYPEMASK) == UNIX_FILE_DIRECTORY -+ || (hdr->unix_mode & UNIX_FILE_TYPEMASK) == UNIX_FILE_SYMLINK -+ || method == LZHDIRS_METHOD_NUM) { -+ /* ¢¬¤³¤ì¤Ç¡¢Symblic Link ¤Ï¡¢Âç¾æÉפ«¡© */ -+ if (!ignore_directory && !verify_mode) { -+ if (noexec) { -+ if (quiet != TRUE) -+ printf("EXTRACT %s (directory)\n", name); -+ return; -+ } -+ /* NAME has trailing SLASH '/', (^_^) */ -+ if ((hdr->unix_mode & UNIX_FILE_TYPEMASK) == UNIX_FILE_SYMLINK) { -+ char buf[256], *bb1, *bb2; -+ int l_code; -+ strcpy(buf, name); -+ bb1 = strtok(buf, "|"); -+ bb2 = strtok(NULL, "|"); -+ -+#ifdef S_IFLNK -+ if (skip_flg == FALSE) { -+ up_flag = inquire_extract(name); -+ if (up_flag == FALSE && force == FALSE) { -+ return; -+ } -+ } else { -+ if (GETSTAT(bb1, &stbuf) == 0 && force != TRUE) { -+ if (stbuf.st_mtime >= hdr->unix_last_modified_stamp) { -+ if (quiet != TRUE) -+ printf("%s : Skipped...\n", bb1); -+ return; -+ } -+ } -+ } -+ -+ unlink(bb1); -+ l_code = symlink(bb2, bb1); -+ if (l_code < 0) { -+ if (quiet != TRUE) -+ warning("Can't make Symbolic Link : "); -+ } -+ if (quiet != TRUE) { -+ printf("Symbolic Link %s -> %s\n", bb1, bb2); -+ } -+ strcpy(name, bb1); /* Symbolic's name set */ -+#else -+ sprintf(buf, "%s -> %s", bb1, bb2); -+ warning("Can't make Symbolic Link", buf); -+ return; -+#endif -+ } else { /* make directory */ -+ if (!output_to_stdout && !make_parent_path(name)) -+ return; -+ } -+ } -+ } -+ else { -+ error("Unknown information", name); -+ } -+ -+ if (!output_to_stdout) -+ adjust_info(name, hdr); -+} -+ -+/* ------------------------------------------------------------------------ */ -+/* EXTRACT COMMAND MAIN */ -+/* ------------------------------------------------------------------------ */ -+void -+cmd_extract() -+{ -+ LzHeader hdr; -+ long pos; -+ FILE *afp; -+ -+ /* open archive file */ -+ if ((afp = open_old_archive()) == NULL) -+ fatal_error(archive_name); -+ -+ if (archive_is_msdos_sfx1(archive_name)) -+ skip_msdos_sfx1_code(afp); -+ -+ /* extract each files */ -+ while (get_header(afp, &hdr)) { -+ if (need_file(hdr.name)) { -+ pos = ftell(afp); -+ extract_one(afp, &hdr); -+ fseek(afp, pos + hdr.packed_size, SEEK_SET); -+ } else { -+ if (afp != stdin) -+ fseek(afp, hdr.packed_size, SEEK_CUR); -+ else { -+ int i = hdr.packed_size; -+ while (i--) -+ fgetc(afp); -+ } -+ } -+ } -+ -+ /* close archive file */ -+ fclose(afp); -+ -+ return; -+} -+ -+/* Local Variables: */ -+/* mode:c */ -+/* tab-width:4 */ -+/* End: */ ---- lha-1.14i.orig/debian/org/lha_macro.h -+++ lha-1.14i/debian/org/lha_macro.h -@@ -0,0 +1,420 @@ -+/* ------------------------------------------------------------------------ */ -+/* LHa for UNIX Archiver Driver macro define */ -+/* */ -+/* Modified Nobutaka Watazaki */ -+/* */ -+/* Ver. 1.14 Soruce All chagned 1995.01.14 N.Watazaki */ -+/* Ver. 1.14g modified 2000.05.06 T.OKAMOTO */ -+/* ------------------------------------------------------------------------ */ -+ -+#define LHA_VERSION "lha for unix version 1.14i" -+ -+/* Most of System V, define SYSTIME_HAS_NO_TM */ -+#ifdef SYSTIME_HAS_NO_TM -+#include <time.h> -+#else -+#include <sys/time.h> -+#endif /* SYSTIME_HAS_NO_TM */ -+ -+/* ------------------------------------------------------------------------ */ -+/* Directory Access Stuff */ -+/* ------------------------------------------------------------------------ */ -+#ifndef NODIRECTORY -+#ifdef SYSV_SYSTEM_DIR -+ -+#include <dirent.h> -+ -+#define DIRENTRY struct dirent -+#define NAMLEN(p) strlen (p->d_name) -+ -+#else /* not SYSV_SYSTEM_DIR */ -+ -+#ifdef NONSYSTEM_DIR_LIBRARY -+#include "lhdir.h" -+#else -+#include <sys/dir.h> -+#endif /* not NONSYSTEM_DIR_LIBRARY */ -+ -+#define DIRENTRY struct direct -+#define NAMLEN(p) p->d_namlen -+ -+#endif /* not SYSV_SYSTEM_DIR */ -+#endif /* NODIRECTORY */ -+ -+/* ------------------------------------------------------------------------ */ -+/* Other Define */ -+/* ------------------------------------------------------------------------ */ -+/* Not support 'void' */ -+#ifdef NOVOID -+#define void -+#endif -+ -+#ifndef SEEK_SET -+#define SEEK_SET 0 -+#define SEEK_CUR 1 -+#define SEEK_END 2 -+#endif /* SEEK_SET -+ -+ -+/* non-integral functions */ -+extern struct tm *localtime(); -+extern char *getenv(); -+ -+#ifndef _MINIX -+#ifndef __STDC__ -+extern char *malloc(); -+extern char *realloc(); -+#endif -+#endif -+ -+/* external variables */ -+extern int errno; -+ -+#define FALSE 0 -+#define TRUE 1 -+typedef int boolean; -+ -+/* used by qsort() for alphabetic-sort */ -+#define STRING_COMPARE(a,b) strcmp((a),(b)) -+ -+#define FILENAME_LENGTH 1024 -+ -+/* ------------------------------------------------------------------------ */ -+/* YOUR CUSTOMIZIES */ -+/* ------------------------------------------------------------------------ */ -+ -+#ifndef ARCHIVENAME_EXTENTION -+#define ARCHIVENAME_EXTENTION ".lzh" -+#endif -+#ifndef BACKUPNAME_EXTENTION -+#define BACKUPNAME_EXTENTION ".bak" -+#endif -+#ifndef TMP_FILENAME_TEMPLATE -+#define TMP_FILENAME_TEMPLATE "/tmp/lhXXXXXX" -+#endif -+ -+#define SJC_FIRST_P(c) \ -+ (((unsigned char)(c) >= 0x80) && \ -+ (((unsigned char)(c) < 0xa0) || \ -+ ((unsigned char)(c) >= 0xe0) && \ -+ ((unsigned char)(c) < 0xfd))) -+#define SJC_SECOND_P(c) \ -+ (((unsigned char)(c) >= 0x40) && \ -+ ((unsigned char)(c) < 0xfd) && \ -+ ((unsigned char)(c) != 0x7f)) -+ -+#ifdef MULTIBYTE_CHAR -+#define MULTIBYTE_FIRST_P SJC_FIRST_P -+#define MULTIBYTE_SECOND_P SJC_SECOND_P -+#endif /* MULTIBYTE_CHAR */ -+ -+/* ------------------------------------------------------------------------ */ -+/* LHa File Definitions */ -+/* ------------------------------------------------------------------------ */ -+#ifdef S_IFLNK -+#define GETSTAT lstat -+#else -+#define GETSTAT stat -+#endif -+ -+#ifdef LHA_MAIN_SRC -+#define EXTERN -+#else -+#define EXTERN extern -+#endif /* LHA_MAIN_SRC */ -+ -+#define LZHUFF0_METHOD "-lh0-" -+#define LZHUFF1_METHOD "-lh1-" -+#define LZHUFF2_METHOD "-lh2-" -+#define LZHUFF3_METHOD "-lh3-" -+#define LZHUFF4_METHOD "-lh4-" -+#define LZHUFF5_METHOD "-lh5-" -+#define LZHUFF6_METHOD "-lh6-" -+#define LZHUFF7_METHOD "-lh7-" -+#define LARC_METHOD "-lzs-" -+#define LARC5_METHOD "-lz5-" -+#define LARC4_METHOD "-lz4-" -+#define LZHDIRS_METHOD "-lhd-" -+ -+#define METHOD_TYPE_STRAGE 5 -+ -+/* Added N.Watazaki ..V */ -+#define LZHUFF0_METHOD_NUM 0 -+#define LZHUFF1_METHOD_NUM 1 -+#define LZHUFF2_METHOD_NUM 2 -+#define LZHUFF3_METHOD_NUM 3 -+#define LZHUFF4_METHOD_NUM 4 -+#define LZHUFF5_METHOD_NUM 5 -+#define LZHUFF6_METHOD_NUM 6 -+#define LZHUFF7_METHOD_NUM 7 -+#define LARC_METHOD_NUM 8 -+#define LARC5_METHOD_NUM 9 -+#define LARC4_METHOD_NUM 10 -+#define LZHDIRS_METHOD_NUM 11 -+/* Added N.Watazaki ..^ */ -+ -+#define I_HEADER_SIZE 0 -+#define I_HEADER_CHECKSUM 1 -+#define I_METHOD 2 -+#define I_PACKED_SIZE 7 -+#define I_ORIGINAL_SIZE 11 -+#define I_LAST_MODIFIED_STAMP 15 -+#define I_ATTRIBUTE 19 -+#define I_HEADER_LEVEL 20 -+#define I_NAME_LENGTH 21 -+#define I_NAME 22 -+ -+#define I_CRC 22 /* + name_length */ -+#define I_EXTEND_TYPE 24 /* + name_length */ -+#define I_MINOR_VERSION 25 /* + name_length */ -+#define I_UNIX_LAST_MODIFIED_STAMP 26 /* + name_length */ -+#define I_UNIX_MODE 30 /* + name_length */ -+#define I_UNIX_UID 32 /* + name_length */ -+#define I_UNIX_GID 34 /* + name_length */ -+#define I_UNIX_EXTEND_BOTTOM 36 /* + name_length */ -+ -+#define I_GENERIC_HEADER_BOTTOM I_EXTEND_TYPE -+ -+#define EXTEND_GENERIC 0 -+#define EXTEND_UNIX 'U' -+#define EXTEND_MSDOS 'M' -+#define EXTEND_MACOS 'm' -+#define EXTEND_OS9 '9' -+#define EXTEND_OS2 '2' -+#define EXTEND_OS68K 'K' -+#define EXTEND_OS386 '3' /* OS-9000??? */ -+#define EXTEND_HUMAN 'H' -+#define EXTEND_CPM 'C' -+#define EXTEND_FLEX 'F' -+#define EXTEND_RUNSER 'R' -+ -+/* this OS type is not official */ -+ -+#define EXTEND_TOWNSOS 'T' -+#define EXTEND_XOSK 'X' -+ -+/*---------------------------------------------------------------------------*/ -+ -+#define GENERIC_ATTRIBUTE 0x20 -+#define GENERIC_DIRECTORY_ATTRIBUTE 0x10 -+#define HEADER_LEVEL0 0x00 -+#define HEADER_LEVEL1 0x01 -+#define HEADER_LEVEL2 0x02 -+ -+#define CURRENT_UNIX_MINOR_VERSION 0x00 -+ -+#define DELIM ('/') -+#define DELIM2 (0xff) -+#define DELIMSTR "/" -+ -+#define OSK_RW_RW_RW 0000033 -+#define OSK_FILE_REGULAR 0000000 -+#define OSK_DIRECTORY_PERM 0000200 -+#define OSK_SHARED_PERM 0000100 -+#define OSK_OTHER_EXEC_PERM 0000040 -+#define OSK_OTHER_WRITE_PERM 0000020 -+#define OSK_OTHER_READ_PERM 0000010 -+#define OSK_OWNER_EXEC_PERM 0000004 -+#define OSK_OWNER_WRITE_PERM 0000002 -+#define OSK_OWNER_READ_PERM 0000001 -+ -+#define UNIX_FILE_TYPEMASK 0170000 -+#define UNIX_FILE_REGULAR 0100000 -+#define UNIX_FILE_DIRECTORY 0040000 -+#define UNIX_FILE_SYMLINK 0120000 -+#define UNIX_SETUID 0004000 -+#define UNIX_SETGID 0002000 -+#define UNIX_STYCKYBIT 0001000 -+#define UNIX_OWNER_READ_PERM 0000400 -+#define UNIX_OWNER_WRITE_PERM 0000200 -+#define UNIX_OWNER_EXEC_PERM 0000100 -+#define UNIX_GROUP_READ_PERM 0000040 -+#define UNIX_GROUP_WRITE_PERM 0000020 -+#define UNIX_GROUP_EXEC_PERM 0000010 -+#define UNIX_OTHER_READ_PERM 0000004 -+#define UNIX_OTHER_WRITE_PERM 0000002 -+#define UNIX_OTHER_EXEC_PERM 0000001 -+#define UNIX_RW_RW_RW 0000666 -+ -+#define LZHEADER_STRAGE 4096 -+ -+#define MAX_INDICATOR_COUNT 64 -+ -+typedef short node; -+ -+/* ------------------------------------------------------------------------ */ -+/* Slide relation */ -+/* ------------------------------------------------------------------------ */ -+#if defined(__STDC__) || defined(AIX) -+ -+#include <limits.h> -+ -+#else -+ -+#ifndef CHAR_BIT -+#define CHAR_BIT 8 -+#endif -+ -+#ifndef UCHAR_MAX -+#define UCHAR_MAX ((1<<(sizeof(unsigned char)*8))-1) -+#endif -+ -+#ifndef USHRT_MAX -+#define USHRT_MAX ((1<<(sizeof(unsigned short)*8))-1) -+#endif -+ -+#ifndef SHRT_MAX -+#define SHRT_MAX ((1<<(sizeof(short)*8-1))-1) -+#endif -+ -+#ifndef SHRT_MIN -+#define SHRT_MIN (SHRT_MAX-USHRT_MAX) -+#endif -+ -+#ifndef ULONG_MAX -+#define ULONG_MAX ((1<<(sizeof(unsigned long)*8))-1) -+#endif -+ -+#ifndef LONG_MAX -+#define LONG_MAX ((1<<(sizeof(long)*8-1))-1) -+#endif -+ -+#ifndef LONG_MIN -+#define LONG_MIN (LONG_MAX-ULONG_MAX) -+#endif -+ -+#endif /* not __STDC__ */ -+ -+/* ------------------------------------------------------------------------ */ -+/* FILE Attribute */ -+/* ------------------------------------------------------------------------ */ -+#define is_directory(statp) (((statp)->st_mode & S_IFMT) == S_IFDIR) -+#define is_symlink(statp) (((statp)->st_mode & S_IFMT) == S_IFLNK) -+#define is_regularfile(statp) (((statp)->st_mode & S_IFMT) == S_IFREG) -+ -+#ifdef MSDOS -+#define WRITE_BINARY "wb" -+#define READ_BINARY "rb" -+#else -+#define WRITE_BINARY "w" -+#define READ_BINARY "r" -+#endif -+ -+/* ------------------------------------------------------------------------ */ -+/* Memory and String function */ -+/* ------------------------------------------------------------------------ */ -+#include <string.h> -+ -+#ifdef NOINDEX -+#define index strchr -+#define rindex strrchr -+#endif /* NOINDEX */ -+ -+#ifdef NOBSTRING -+#define bcmp(a,b,n) memcmp ((a),(b),(n)) -+#define bzero(d,n) memset((d),0,(n)) -+#define bcopy(s,d,n) memmove((d),(s),(n)) -+#endif /* NOBSTRING */ -+ -+#ifdef USESTRCASECMP -+#define strucmp(p,q) strcasecmp((p),(q)) -+#endif -+ -+/* ------------------------------------------------------------------------ */ -+/* Individual macro define */ -+/* ------------------------------------------------------------------------ */ -+ -+/* from crcio.c */ -+#define CRCPOLY 0xA001 /* CRC-16 */ -+#define UPDATE_CRC(c) crc = crctable[(crc ^ (c)) & 0xFF] ^ (crc >> CHAR_BIT) -+ -+/* dhuf.c */ -+#define N_CHAR (256 + 60 - THRESHOLD + 1) -+#define TREESIZE_C (N_CHAR * 2) -+#define TREESIZE_P (128 * 2) -+#define TREESIZE (TREESIZE_C + TREESIZE_P) -+#define ROOT_C 0 -+#define ROOT_P TREESIZE_C -+ -+/* header.c */ -+#define setup_get(PTR) (get_ptr = (PTR)) -+#define get_byte() (*get_ptr++ & 0xff) -+#define put_ptr get_ptr -+#define setup_put(PTR) (put_ptr = (PTR)) -+#define put_byte(c) (*put_ptr++ = (char)(c)) -+ -+/* huf.c */ -+#define NP (MAX_DICBIT + 1) -+#define NT (USHRT_BIT + 3) -+#if 0 -+#define PBIT 4 /* smallest integer such that (1 << PBIT) > * NP */ -+#define TBIT 5 /* smallest integer such that (1 << TBIT) > * NT */ -+#endif -+ -+#define PBIT 5 /* smallest integer such that (1 << PBIT) > * NP */ -+#define TBIT 5 /* smallest integer such that (1 << TBIT) > * NT */ -+ -+#define NC (UCHAR_MAX + MAXMATCH + 2 - THRESHOLD) -+ -+/* #if NT > NP #define NPT NT #else #define NPT NP #endif */ -+#define NPT 0x80 -+ -+/* larc.c */ -+#define MAGIC0 18 -+#define MAGIC5 19 -+ -+/* lharc.c */ -+#define CMD_UNKNOWN 0 -+#define CMD_EXTRACT 1 -+#define CMD_ADD 2 -+#define CMD_LIST 3 -+#define CMD_DELETE 4 -+ -+#define STREQU(a,b) (((a)[0] == (b)[0]) ? (strcmp ((a),(b)) == 0) : FALSE) -+ -+/* shuf.c */ -+#define N1 286 /* alphabet size */ -+#define N2 (2 * N1 - 1) /* # of nodes in Huffman tree */ -+#define EXTRABITS 8 /* >= log2(F-THRESHOLD+258-N1) */ -+#define BUFBITS 16 /* >= log2(MAXBUF) */ -+#define LENFIELD 4 /* bit size of length field for tree output */ -+ -+/* util.c */ -+#define BUFFERSIZE 2048 -+#define MAXSFXCODE 1024*64 -+ -+#ifndef NULL -+#define NULL (char *)0 -+#endif -+ -+/* slide.c */ -+/* -+#define PERCOLATE 1 -+#define NIL 0 -+#define HASH(p, c) ((p) + ((c) << hash1) + hash2) -+*/ -+ -+/* slide.c */ -+#ifdef SUPPORT_LH7 -+#define MAX_DICBIT 16 /* lh7 use 16bits */ -+#endif -+ -+#ifndef SUPPORT_LH7 -+#define MAX_DICBIT 15 /* lh6 use 15bits */ -+#endif -+ -+#define MAX_DICSIZ (1 << MAX_DICBIT) -+#define MATCHBIT 8 /* bits for MAXMATCH - THRESHOLD */ -+#define MAXMATCH 256 /* formerly F (not more than UCHAR_MAX + 1) */ -+#define THRESHOLD 3 /* choose optimal value */ -+ -+/* from huf.c */ -+ -+/* alphabet = {0, 1, 2, ..., NC - 1} */ -+#define CBIT 9 /* $\lfloor \log_2 NC \rfloor + 1$ */ -+#define USHRT_BIT 16 /* (CHAR_BIT * sizeof(ushort)) */ -+ -+/* Local Variables: */ -+/* mode:c */ -+/* tab-width:4 */ -+/* End: */ ---- lha-1.14i.orig/debian/org/lhlist.c -+++ lha-1.14i/debian/org/lhlist.c -@@ -0,0 +1,348 @@ -+/* ------------------------------------------------------------------------ */ -+/* LHa for UNIX */ -+/* lhlist.c -- LHarc list */ -+/* */ -+/* Copyright (C) MCMLXXXIX Yooichi.Tagawa */ -+/* Modified Nobutaka Watazaki */ -+/* */ -+/* Ver. 0.00 Original 1988.05.23 Y.Tagawa */ -+/* Ver. 1.00 Fixed 1989.09.22 Y.Tagawa */ -+/* Ver. 1.01 Bug Fix for month name 1989.12.25 Y.Tagawa */ -+/* Ver. 1.10 Changed list format 1993.10.01 N.Watazaki */ -+/* Ver. 1.14 Source All chagned 1995.01.14 N.Watazaki */ -+/* Ver. 1.14e Bug Fix for many problems 1999.05.25 T.Okamoto */ -+/* ------------------------------------------------------------------------ */ -+#include "lha.h" -+ -+/* ------------------------------------------------------------------------ */ -+static long packed_size_total; -+static long original_size_total; -+static int list_files; -+ -+/* ------------------------------------------------------------------------ */ -+/* Print Stuff */ -+/* ------------------------------------------------------------------------ */ -+/* need 14 or 22 (when verbose_listing is TRUE) column spaces */ -+static void -+print_size(packed_size, original_size) -+ long packed_size, original_size; -+{ -+ if (verbose_listing) -+ printf("%7d ", packed_size); -+ -+ printf("%7d ", original_size); -+ -+ if (original_size == 0L) -+ printf("******"); -+ else /* Changed N.Watazaki */ -+ printf("%5.1f%%", packed_size * 100.0 / original_size); -+} -+ -+/* ------------------------------------------------------------------------ */ -+/* need 12 or 17 (when verbose_listing is TRUE) column spaces */ -+static void -+print_stamp(t) -+ time_t t; -+{ -+ static boolean got_now = FALSE; -+ static time_t now; -+ static unsigned int threshold; -+ static char t_month[12 * 3 + 1] = "JanFebMarAprMayJunJulAugSepOctNovDec"; -+ struct tm *p; -+ -+ if (t == 0) { -+ printf(" "); /* 12 spaces */ -+ return; -+ } -+ -+ if (!got_now) { -+ now = time((time_t *) 0); -+ p = localtime(&now); -+ threshold = p->tm_year * 12 + p->tm_mon - 6; -+ got_now = TRUE; -+ } -+ -+ p = localtime(&t); -+ -+ if (p->tm_year * 12 + p->tm_mon > threshold) -+ printf("%.3s %2d %02d:%02d", -+ &t_month[p->tm_mon * 3], p->tm_mday, p->tm_hour, p->tm_min); -+ else -+ printf("%.3s %2d %04d", -+ &t_month[p->tm_mon * 3], p->tm_mday, p->tm_year + 1900); -+} -+ -+/* ------------------------------------------------------------------------ */ -+static void -+print_bar() -+{ -+ char *p, *q; -+ /* 17+1+(0 or 7+1)+7+1+6+1+(0 or 1+4)+(12 or 17)+1+20 */ -+ /* 12345678901234567_ 1234567_123456 _123456789012 1234 */ -+ -+ if (verbose_listing) { -+ p = "- ------ ---------- "; -+ q = " -------------"; -+ } -+ else { -+ p = " "; -+ q = " --------------------"; -+ } -+ -+ if (verbose) -+ q = ""; -+ -+ printf("---------- ----------- ------- ------%s------------%s\n", p, q); -+} -+ -+/* ------------------------------------------------------------------------ */ -+/* */ -+/* ------------------------------------------------------------------------ */ -+static void -+list_header() -+{ -+ char *p, *q; -+ -+ if (verbose_listing) { -+ p = "PACKED SIZE RATIO METHOD CRC"; -+ q = " NAME"; -+ } -+ else { -+ p = " SIZE RATIO"; -+ q = " NAME"; -+ } -+ -+ if (verbose) -+ q = ""; -+ -+ printf(" PERMSSN UID GID %s STAMP%s\n", p, q); -+#if 0 -+ printf(" PERMSSN UID GID %s SIZE RATIO%s %s STAMP%s%s\n", -+ verbose_listing ? " PACKED " : "", /* 8,0 */ -+ verbose_listing ? " CRC" : "", /* 5,0 */ -+ verbose_listing ? " " : "", /* 2,0 */ -+ verbose_listing ? " " : " ", /* 6,3 */ -+ verbose ? "" : " NAME"); -+#endif -+ print_bar(); -+} -+ -+/* ------------------------------------------------------------------------ */ -+static void -+list_one(hdr) -+ register LzHeader *hdr; -+{ -+ register int mode; -+ register char *p; -+ char method[6]; -+ char modebits[11]; -+ -+ if (verbose) -+ printf("%s\n", hdr->name); -+ -+ strncpy(method, hdr->method, 5); -+ method[5] = '\0'; -+ -+ switch (mode = hdr->extend_type) { -+ case EXTEND_UNIX: -+ mode = hdr->unix_mode; -+ -+ if (mode & UNIX_FILE_DIRECTORY) -+ modebits[0] = 'd'; -+ else if ((mode & UNIX_FILE_SYMLINK) == UNIX_FILE_SYMLINK) -+ modebits[0] = 'l'; -+ else -+ modebits[0] = '-'; -+ modebits[1] = ((mode & UNIX_OWNER_READ_PERM) ? 'r' : '-'); -+ modebits[2] = ((mode & UNIX_OWNER_WRITE_PERM) ? 'w' : '-'); -+ modebits[3] = (mode & UNIX_SETUID) ? 's' : -+ ((mode & UNIX_OWNER_EXEC_PERM) ? 'x' : '-'); -+ modebits[4] = ((mode & UNIX_GROUP_READ_PERM) ? 'r' : '-'); -+ modebits[5] = ((mode & UNIX_GROUP_WRITE_PERM) ? 'w' : '-'); -+ modebits[6] = (mode & UNIX_SETGID) ? 's' : -+ ((mode & UNIX_GROUP_EXEC_PERM) ? 'x' : '-'); -+ modebits[7] = ((mode & UNIX_OTHER_READ_PERM) ? 'r' : '-'); -+ modebits[8] = ((mode & UNIX_OTHER_WRITE_PERM) ? 'w' : '-'); -+ modebits[9] = (mode & UNIX_STYCKYBIT) ? 't' : -+ ((mode & UNIX_OTHER_EXEC_PERM) ? 'x' : '-'); -+ modebits[10] = 0; -+ -+ printf("%s %5d/%-5d ", modebits, -+ hdr->unix_uid, hdr->unix_gid); -+ break; -+ case EXTEND_OS68K: -+ /**/ case EXTEND_XOSK:/**/ -+ mode = hdr->unix_mode; -+ printf("%c%c%c%c%c%c%c%c %5d/%-5d", -+ ((mode & OSK_DIRECTORY_PERM) ? 'd' : '-'), -+ ((mode & OSK_SHARED_PERM) ? 's' : '-'), -+ ((mode & OSK_OTHER_EXEC_PERM) ? 'e' : '-'), -+ ((mode & OSK_OTHER_WRITE_PERM) ? 'w' : '-'), -+ ((mode & OSK_OTHER_READ_PERM) ? 'r' : '-'), -+ ((mode & OSK_OWNER_EXEC_PERM) ? 'e' : '-'), -+ ((mode & OSK_OWNER_WRITE_PERM) ? 'w' : '-'), -+ ((mode & OSK_OWNER_READ_PERM) ? 'r' : '-'), -+ hdr->unix_uid, hdr->unix_gid); -+ break; -+ default: -+ switch (hdr->extend_type) { /* max 18 characters */ -+ case EXTEND_GENERIC: -+ p = "[generic]"; -+ break; -+ case EXTEND_CPM: -+ p = "[CP/M]"; -+ break; -+ case EXTEND_FLEX: -+ p = "[FLEX]"; -+ break; -+ case EXTEND_OS9: -+ p = "[OS-9]"; -+ break; -+ case EXTEND_OS68K: -+ p = "[OS-9/68K]"; -+ break; -+ case EXTEND_MSDOS: -+ p = "[MS-DOS]"; -+ break; -+ case EXTEND_MACOS: -+ p = "[Mac OS]"; -+ break; -+ case EXTEND_OS2: -+ p = "[OS/2]"; -+ break; -+ case EXTEND_HUMAN: -+ p = "[Human68K]"; -+ break; -+ case EXTEND_OS386: -+ p = "[OS-386]"; -+ break; -+ case EXTEND_RUNSER: -+ p = "[Runser]"; -+ break; -+#ifdef EXTEND_TOWNSOS -+ /* This ID isn't fixed */ -+ case EXTEND_TOWNSOS: -+ p = "[TownsOS]"; -+ break; -+#endif -+ /* Ouch! Please customize it's ID. */ -+ default: -+ p = "[unknown]"; -+ break; -+ } -+ printf("%-23.23s", p); -+ break; -+ } -+ -+ print_size(hdr->packed_size, hdr->original_size); -+ -+ if (verbose_listing) -+ if (hdr->has_crc) -+ printf(" %s %04x", method, hdr->crc); -+ else -+ printf(" %s ****", method); -+ -+ printf(" "); -+ print_stamp(hdr->unix_last_modified_stamp); -+ -+ if (!verbose) -+ if ((mode & UNIX_FILE_SYMLINK) != UNIX_FILE_SYMLINK) -+ printf(" %s", hdr->name); -+ else { -+ char buf[256], *b1, *b2; -+ strcpy(buf, hdr->name); -+ b1 = strtok(buf, "|"); -+ b2 = strtok(NULL, "|"); -+ printf(" %s -> %s", b1, b2); -+ } -+ -+ if (verbose) -+ printf(" [%d]", hdr->header_level); -+ printf("\n"); -+ -+} -+ -+/* ------------------------------------------------------------------------ */ -+static void -+list_tailer() -+{ -+ struct stat stbuf; -+ -+ print_bar(); -+ -+ printf(" Total %9d file%c ", -+ list_files, (list_files == 1) ? ' ' : 's'); -+ print_size(packed_size_total, original_size_total); -+ printf(" "); -+ -+ if (verbose_listing) -+ printf(" "); -+ -+ if (stat(archive_name, &stbuf) < 0) -+ print_stamp((time_t) 0); -+ else -+ print_stamp(stbuf.st_mtime); -+ -+ printf("\n"); -+} -+ -+/* ------------------------------------------------------------------------ */ -+/* LIST COMMAND MAIN */ -+/* ------------------------------------------------------------------------ */ -+void -+cmd_list() -+{ -+ FILE *afp; -+ LzHeader hdr; -+ int i; -+ -+ /* initialize total count */ -+ packed_size_total = 0L; -+ original_size_total = 0L; -+ list_files = 0; -+ -+ /* open archive file */ -+ if ((afp = open_old_archive()) == NULL) { -+ error(archive_name, ""); -+ exit(1); -+ } -+ if (archive_is_msdos_sfx1(archive_name)) -+ skip_msdos_sfx1_code(afp); -+ -+ /* print header message */ -+ if (!quiet) -+ list_header(); -+ -+ /* print each file information */ -+ while (get_header(afp, &hdr)) { -+ if (need_file(hdr.name)) { -+ list_one(&hdr); -+ list_files++; -+ packed_size_total += hdr.packed_size; -+ original_size_total += hdr.original_size; -+ } -+ -+ if (afp != stdin) -+ fseek(afp, hdr.packed_size, SEEK_CUR); -+ else { -+ i = hdr.packed_size; -+ while (i--) -+ fgetc(afp); -+ } -+ } -+ -+ /* close archive file */ -+ fclose(afp); -+ -+ /* print tailer message */ -+ if (!quiet) -+ list_tailer(); -+ -+ return; -+} -+ -+/* Local Variables: */ -+/* mode:c */ -+/* tab-width:4 */ -+/* compile-command:"gcc -c lhlist.c" */ -+/* End: */ ---- lha-1.14i.orig/debian/changelog -+++ lha-1.14i/debian/changelog -@@ -0,0 +1,178 @@ -+lha (1.14i-10.1) unstable; urgency=high -+ -+ * Security NMU for vulnerabilities inherited from GNU Gzip: -+ [CVE-2006-4335 CVE-2006-4337 CVE-2006-4338] -+ -+ -- Moritz Muehlenhoff <jmm@debian.org> Wed, 13 Dec 2006 20:21:32 +0100 -+ -+lha (1.14i-10) unstable; urgency=high -+ -+ * debian/patch.redhat-sec2: Add one more security patch to fix: -+ - CAN-2004-0771 (-w working directory option buffer overflow) -+ http://www.cve.mitre.org/cgi-bin/cvename.cgi?name=CAN-2004-0771 -+ - CAN-2004-0769 (buffer overflow can be executed arbitrary code -+ via long pathnames in headers, another issue of bug fixed in -9) -+ http://cve.mitre.org/cgi-bin/cvename.cgi?name=CAN-2004-0769 -+ - CAN-2004-0745 (execute arbitrary commands via a directory with -+ shell metacharacters in its name.) -+ http://cve.mitre.org/cgi-bin/cvename.cgi?name=CAN-2004-0745 -+ - CAN-2004-0694 (reserved number) -+ http://cve.mitre.org/cgi-bin/cvename.cgi?name=CAN-2004-0694 -+ taken from RedHat patch. (Closes: #279870) -+ * man/lha.n: Fix typo "flie" instead of "file". (Closes: #277545) -+ -+ -- GOTO Masanori <gotom@debian.org> Sat, 13 Nov 2004 15:31:22 +0900 -+ -+lha (1.14i-9) unstable; urgency=high -+ -+ * debian/patch.header-overflow: Add fix another lha buffer overflow -+ problem. It warns when hitting an archive which includes -+ long directory name with option l, v, x. See: -+ http://lw.ftw.zamosc.pl/lha-exploit.txt -+ http://www.securityfocus.com/archive/1/363418 -+ http://bugs.gentoo.org/show_bug.cgi?id=51285 -+ Thanks to Lukasz Wojtow <lw@wszia.edu.pl> for pointing this problem. -+ -+ -- GOTO Masanori <gotom@debian.org> Wed, 16 Jun 2004 09:51:06 +0900 -+ -+lha (1.14i-8) unstable; urgency=high -+ -+ * debian/patch.CAN-2004-0234_0235: Add fix CAN-2004-0235 symlink part -+ patches. (Closes: #247355, #247357) -+ -+ -- GOTO Masanori <gotom@debian.org> Sat, 8 May 2004 02:24:57 +0900 -+ -+lha (1.14i-7) unstable; urgency=high -+ -+ * debian/patch.CAN-2004-ulf: Add to fix CAN-2004-0234 (buffer overflows), -+ CAN-2004-0235 (directory traversal). See: -+ http://marc.theaimsgroup.com/?l=full-disclosure&m=108345064008698&w=2 -+ * debian/control: Change my mail address. -+ -+ -- GOTO Masanori <gotom@debian.org> Thu, 6 May 2004 15:13:14 +0900 -+ -+lha (1.14i-6) unstable; urgency=low -+ -+ * debian/copyright: Added more copyright license statement, translated -+ by Osamu Aoki <debian@aokiconsulting.com>. -+ * debian/copyright: Added good summary of upstream author, investigated by -+ Osamu Aoki <debian@aokiconsulting.com> and -+ Tatsuya Kinoshita <tats@iris.ne.jp>. -+ * debian/header-e.doc: Added English version of header.doc (LHa header -+ structure format document) translated by Osamu Aoki -+ <debian@aokiconsulting.com>. -+ -+ -- GOTO Masanori <gotom@debian.or.jp> Tue, 27 Aug 2002 13:08:22 +0900 -+ -+lha (1.14i-5) unstable; urgency=low -+ -+ * debian/patch.multibyte: Add multibyte character mode option 'y'. -+ You can use multibyte filename especially SHIFTJIS code -+ with this option. -+ -+ -- GOTO Masanori <gotom@debian.or.jp> Fri, 19 Jul 2002 16:57:11 +0900 -+ -+lha (1.14i-4) unstable; urgency=low -+ -+ * debian/copyright: add original/translated license statement -+ (closes: Bug#144582). -+ -+ -- GOTO Masanori <gotom@debian.or.jp> Wed, 1 May 2002 09:53:24 +0900 -+ -+lha (1.14i-3) unstable; urgency=low -+ -+ * fix lha reports a wrong version number (closes: Bug#135199). -+ -+ -- GOTO Masanori <gotom@debian.or.jp> Sun, 3 Mar 2002 21:38:46 +0900 -+ -+lha (1.14i-2) unstable; urgency=low -+ -+ * Applied the patch not to get compiling warning message. -+ Patched by Paul Slootman <paul@wurtel.net>. (Closes: #109634). -+ -+ -- GOTO Masanori <gotom@debian.or.jp> Thu, 23 Aug 2001 00:26:53 +0900 -+ -+lha (1.14i-1) unstable; urgency=low -+ -+ * New upstream release (Closes: #62256). -+ * New maintainer. -+ * Updated Standards-version 3.5.2. -+ * Use build this package with dh_*. -+ * New upstream version is ready for -lh7- format (Closes: #67592). -+ * Japanese manual is now included (Closes: #49245). -+ * Unclosed Bugs (No copyright file is included) -+ has just re-closed (Closes: #48748). -+ -+ -- GOTO Masanori <gotom@debian.or.jp> Sun, 22 Jul 2001 13:11:50 +0900 -+ -+lha (1.14e-2) unstable; urgency=low -+ -+ * Moved /usr/man/* and /usr/doc/* under /usr/share. Closes: #80759. -+ * Updated Standards-version, fixed lintian warnings. -+ -+ -- Steve McIntyre <stevem@chiark.greenend.org.uk> Sun, 21 Jan 2001 17:35:52 +0000 -+ -+lha (1.14e-0) unstable; urgency=low -+ -+ * New upstream release. Thanks to Jiro Iwamoto <iwamot@maroon.plala.or.jp> for pointing this out. -+ -+ -- Steve McIntyre <stevem@chiark.greenend.org.uk> Sun, 25 Jul 1999 23:05:24 +0100 -+ -+lha (1.14d-1) unstable; urgency=low -+ -+ * Fixed manpage - no need to specify "-b" for command line help. Closes bug #33328. -+ -+ -- Steve McIntyre <stevem@chiark.greenend.org.uk> Sun, 14 Feb 1999 16:24:44 +0000 -+ -+lha (1.14d-0) unstable; urgency=low -+ -+ * New upstream release. Thanks to Tomohiro KUBOTA <kubota@kubota.rcpom.osaka-u.ac.jp> for pointing this out. -+ -+ -- Steve McIntyre <stevem@chiark.greenend.org.uk> Sat, 16 Jan 1999 21:54:37 +0000 -+ -+lha (1.14c-1) frozen unstable; urgency=low -+ -+ * New man page, supplied by Martin Schulze <joey@finlandia.Infodrom.North.DE>. Fixes Bug#27195. -+ -+ -- Steve McIntyre <stevem@chiark.greenend.org.uk> Sun, 18 Oct 1998 13:53:12 +0100 -+ -+lha (1.14c-0) unstable; urgency=low -+ -+ * New upstream release. Thanks to Atsushi KAMOSHIDA <kamop@debian.or.jp> for pointing this out. -+ -+ -- Steve McIntyre <stevem@chiark.greenend.org.uk> Sat, 15 Aug 1998 14:16:19 +0100 -+ -+lha (1.00-6) unstable; urgency=low -+ -+ * New maintainer. -+ -+ -- Steve McIntyre <stevem@chiark.greenend.org.uk> Mon, 12 Jan 1998 00:09:12 +0000 -+ -+lha (1.00-5) unstable; urgency=low, closes=16756 -+ -+ * Corrected Standards-Version to 2.3.0.1 (Bug#16756) -+ -+ -- Martin Schulze <joey@finlandia.infodrom.north.de> Fri, 9 Jan 1998 02:08:03 +0100 -+ -+lha (1.00-4) unstable; urgency=low -+ -+ * Compiled against libc6 (Bug#11696) -+ -+ -- Martin Schulze <joey@finlandia.infodrom.north.de> Wed, 31 Dec 1997 20:51:38 +0100 -+ -+lha (1.00-3) unstable; urgency=low -+ -+ * Corrected manpage (Bug#7980) -+ -+ * New maintainer address -+ -+ -- Martin Schulze <joey@namib.north.de> Mon, 28 Apr 1997 13:10:10 +0200 -+ -+lha (1.00-2) unstable; urgency=low -+ -+ * Installed ChangeLog files -+ -+ * Converted into new packaging scheme -+ -+ -- Martin Schulze <joey@namib.north.de> Sun, 23 Feb 1997 12:22:13 +0100 -+ ---- lha-1.14i.orig/debian/lha.1 -+++ lha-1.14i/debian/lha.1 -@@ -0,0 +1,139 @@ -+ .\" lha - LZH un-archiver -+.\" Copyright (c) 1996 Martin Schulze <joey@namib.north.de> -+.\" -+.\" This manual page 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 2 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, write to the Free Software -+.\" Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. -+.\" -+.\" This manpage is written especially for Debian GNU/Linux. -+.\" -+.\" LHarc for UNIX V 1.02 Copyright(C) 1989 Y.Tagawa -+.\" LHx for MSDOS V C2.01 Copyright(C) 1990 H.Yoshizaki -+.\" LHx(arc) for OSK V 2.01 Modified 1990 Momozou -+.\" LHa for UNIX V 1.00 Copyright(C) 1992 Masaru Oki -+.\" -+.\" Additions by Joerg Boehnke <joerg@oggi.oche.de> -+.\" -+.TH LHA 1 "22 Sept, 1998" "Debian GNU/Linux" "Archiver" -+.SH NAME -+LHa \- LZH un-archiver -+.SH SYNOPSIS -+.B lha -+.B key -+[ -+.B - -+] -+.B {axelvudmcp} -+[ -+.B qvnfodizg012 -+] -+[ -+.B w=<dir> -+] -+.I archive_file -+[ -+.I flie -+\&.\|.\|. ] -+.br -+.B lha -+.I archive_file -+.SH DESCRIPTION -+The -+.B lha -+program displays or extracts the contents of a LZH archive. -+ -+For a list of commands, please refer to the executable. It will -+display a list of valid commands and modifiers if you omit any -+parameter. -+ -+.TP -+commands: -+ -+.B a -+Add(or replace) to archive -+ -+.B x,e -+EXtract from archive -+ -+.B l,v -+List / Verbose List -+ -+.B u -+Update newer files to archive -+ -+.B d -+Delete from archive -+ -+.B m -+Move to archive (means 'ad') -+ -+.B c -+re-Construct new archive -+ -+.B p -+Print to STDOUT from archive -+ -+.B t -+Test file CRC in archive -+ -+.TP -+options: -+ -+.B q -+quiet -+ -+.B v -+verbose -+ -+.B n -+not execute -+ -+.B f -+force (over write at extract) -+ -+.B t -+FILES are TEXT file -+ -+.B o -+use LHarc compatible method (a/u) -+ -+.B w=<dir> -+specify extract directory (x/e) -+ -+.B d -+delete FILES after (a/u/c) -+ -+.B i -+ignore directory path (x/e) -+ -+.B z -+files not compress (a/u) -+ -+.B g -+[Generic] format (for compatibility) -+ -+.B 0/1/2 -+header level (a/u) -+ -+.B e -+TEXT code convert from/to EUC -+ -+.B y -+filename multibyte convert -+ -+.SH BUGS -+ -+This manpage is poor, it really should be improved, but the original -+is in Japanese. -+ -+Try lha without any command line arguments to get help ---- lha-1.14i.orig/debian/rules -+++ lha-1.14i/debian/rules -@@ -0,0 +1,115 @@ -+#!/usr/bin/make -f -+# Sample debian/rules that uses debhelper. -+# GNU copyright 1997 to 1999 by Joey Hess. -+ -+# Uncomment this to turn on verbose mode. -+#export DH_VERBOSE=1 -+ -+# This is the debhelper compatability version to use. -+export DH_COMPAT=3 -+ -+configure: configure-stamp -+configure-stamp: -+ dh_testdir -+ # Add here commands to configure the package. -+ -+ patch -p0 < debian/patch.paul -+ patch -p0 < debian/patch.multibyte -+ patch -p0 < debian/patch.CAN-2004-0234_0235 -+ patch -p0 < debian/patch.header-overflow -+ patch -p1 < debian/patch.redhat-sec2 -+ patch -p1 < debian/patch.CVE-2006-4335-CVE-2006-4337-CVE-2006-4338 -+ -+ touch configure-stamp -+ -+build: configure-stamp build-stamp -+build-stamp: -+ dh_testdir -+ -+ # Add here commands to compile the package. -+ $(MAKE) -+ #/usr/bin/docbook-to-man debian/lha.sgml > lha.1 -+ -+ touch build-stamp -+ -+clean: -+ dh_testdir -+ dh_testroot -+ rm -f build-stamp configure-stamp -+ -+ # Add here commands to clean up after the build process. -+ -$(MAKE) clean -+ -+ # delete copied docs. -+ rm -f MACHINES MACHINES2 PROBLEMS README -+ rm -f header.doc debian/lha.euc.1.gz debian/lha.1.gz -+ cp debian/org/lha.h src/lha.h -+ cp debian/org/header.c src/header.c -+ cp debian/org/lharc.c src/lharc.c -+ cp debian/org/util.c src/util.c -+ cp debian/org/lhext.c src/lhext.c -+ cp debian/org/lhlist.c src/lhlist.c -+ cp debian/org/lha_macro.h src/lha_macro.h -+ -+ dh_clean -+ -+install: build -+ dh_testdir -+ dh_testroot -+ dh_clean -k -+ dh_installdirs -+ -+ # Add here commands to install the package into debian/lha. -+ # $(MAKE) install BINDIR=$(CURDIR)/debian/lha/usr/bin \ -+ # MANDIR=$(CURDIR)/debian/lha/usr/share/man \ -+ # MANSECT=1 -+ install -m 755 src/lha $(CURDIR)/debian/lha/usr/bin -+ -+ # Copy the filenames without the .euc extension -+ cp MACHINES.euc MACHINES -+ cp MACHINES2.euc MACHINES2 -+ cp PROBLEMS.euc PROBLEMS -+ cp README.euc README -+ cp header.doc.euc header.doc -+ -+ gzip -9 -c man/lha.n > debian/lha.euc.1.gz -+ gzip -9 -c debian/lha.1 > debian/lha.1.gz -+ install -m 644 debian/lha.euc.1.gz $(CURDIR)/debian/lha/usr/share/man/ja/man1/lha.1.gz -+ install -m 644 debian/lha.1.gz $(CURDIR)/debian/lha/usr/share/man/man1/lha.1.gz -+ -+# Build architecture-independent files here. -+binary-indep: build install -+# We have nothing to do by default. -+ -+# Build architecture-dependent files here. -+binary-arch: build install -+ dh_testdir -+ dh_testroot -+# dh_installdebconf -+ dh_installdocs -+ dh_installexamples -+ dh_installmenu -+# dh_installlogrotate -+# dh_installemacsen -+# dh_installpam -+# dh_installmime -+# dh_installinit -+# dh_installcron -+# dh_installman -+# dh_installinfo -+# dh_undocumented -+ dh_installchangelogs CHANGES.euc -+ dh_link -+ dh_strip -+ dh_compress -+ dh_fixperms -+# dh_makeshlibs -+ dh_installdeb -+# dh_perl -+ dh_shlibdeps -+ dh_gencontrol -+ dh_md5sums -+ dh_builddeb -+ -+binary: binary-indep binary-arch -+.PHONY: build clean binary-indep binary-arch binary install configure ---- lha-1.14i.orig/debian/dirs -+++ lha-1.14i/debian/dirs -@@ -0,0 +1,3 @@ -+usr/bin -+usr/share/man/man1 -+usr/share/man/ja/man1/ ---- lha-1.14i.orig/debian/copyright -+++ lha-1.14i/debian/copyright -@@ -0,0 +1,172 @@ -+This package was debianized by Atsushi KAMOSHIDA kamop@post1.com on -+Sun, 13 Apr 1997 17:52:59 +0900. -+ -+It was downloaded from http://www2m.biglobe.ne.jp/~dolphin/lha/lha.htm -+ -+Upstream Authors: -+ -+ LHarc 0.01-1.00: Yooichi Tagawa (LHa code taken from here, 1988-1989) -+ Nikkei-mix ID: y.tagawa (Now this is defunct BBS, Licensing term -+ in manual page come from his licence for lharc) -+ His new web page seems to be www2s.biglibe.ne.jp/~yex/ -+ yooedit2001@yahoo.co.jp is the contact e-mail address for another -+ software. Page updated at least July/2001 -+ -+ LHa 0.01-1.00: Masaru Oki (LHa original author, 1991-1992) -+ E-Mail address: oki@netbsd.org -+ -+ LHa 1.10-1.14: Nobutaka Watazaki (Last official release? 1993-1995) -+ ALICE-NET ALS00595 Nasty -+ E-Mail JBD02514@niftyserve.or.jp -+ E-Mail femcs@mbox.kyoto-inet.or.jp -+ NIFTY-Serve JBD02514 -+ E-Mail address: watazaki@shimadzu.co.jp -+ E-Mail address: watazaki@shimadzusd.co.jp -+ -+ Lha 1.14a-1.14e: Tsugio Okamoto <tsugio@muc.biglobe.ne.jp> (1996-2000) -+ -+ -+Copyright: -+ -+Original Source Code License Statement: -+ -+ /* Copyright (C) MCMLXXXIX Yooichi.Tagawa */ -+ /* Modified Nobutaka Watazaki */ -+ /* Thanks to H.Yoshizaki. (MS-DOS LHarc) */ -+ -+ -+Original Authors License Statement (from man/lha.man, in Japanese -+EUC-JP): -+ -+ ºÆÇÛÉۤˤĤ¤¤Æ -+ °Ê²¼¤Î¾ò·ï¤Ç¡¢ºÆÇÛÉÛ¡¢Å¾ºÜ¡¢²þÊѤòµö²Ä¤·¤Þ¤¹¡£ -+ -+ 1. Ãøºî¸¢É½¼¨¤òºï½ü¤·¤Ê¤¤¤³¤È¡£ -+ -+ 2. ÇÛÉÛÆâÍƤˤĤ¤¤Æ¤Ï¡¢ -+ -+ a. ÇÛÉۤκݤ˸ºß¤¹¤ëÆâÍÆ(¤¹¤Ê¤ï¤Á ¥½¡¼ ¥¹ ¥³¡¼ -+ ¥É¡¢ ¥É ¥¥å¥á¥ó¥È¡¢¥×¥í¥°¥é¥Þ¡¼¤Ø¤Î¼ê°ú¤¤Ê -+ ¤É)¤¬ºÆÇÛÉÛ¤µ¤ì¤¿¤â¤Î¤ÎÃæ¤Ëɬ¤ºÂ¸ºß ¤¹ ¤ë ¤³ -+ ¤È¡£ ²þ ÊѤµ¤ì¤Æ¤¤¤ë¤Ê¤é¤Ð¡¢¤½¤ì¤òÌÀ¼¨¤·¤¿¥É -+ ¥¥å¥á¥ó¥È¤òÍÑ°Õ¤¹¤ë¤³¤È¡£ -+ -+ b. LHa ¤ËÂФ¹¤ëÉղòÁÃͤ¬ÉÕ¤±¤é¤ì¤ÆºÆÇÛÉÛ¤µ¤ì¤ë -+ ¾ì¹ç¤Ë¤Ï¤½¤ì¤é¤â¤Ç¤¤ë¤À¤±´Þ¤á¤ë¤è¤¦ÅØÎϤ¹¤ë -+ ¤³¤È¡£¤Þ¤¿¡¢¤½¤ÎºÝ¤Ë¤ÏÉղòÁÃͤ¬ÉÕ¤±¤é¤ì¤Æ¤¤ -+ ¤ë¤³¤È¤òÌÀ¼¨¤·¤¿¥É¥¥å¥á¥ó¥È¤òÍÑ°Õ¤¹¤ë¤³¤È¡£ -+ -+ c. ¥Ð¥¤¥Ê¥ê¤Î¤ß¤ÎÇÛÉۤϵö¤µ¤ì¤Ê¤¤¡£(ÉղòÁÃÍ ¤Î -+ ¤â¤Î¤â´Þ¤à) -+ -+ 3. ºÇ¿·ÈǤÎÇÛÉÛ¤Ë̳¤á¤ë¤³¤È¡£(µÁ̳¤Ï¤Ê¤¤) -+ -+ Ãí. ¤Ê¤ª¡¢¥Í¥Ã¥È¤Ç¤ÎÇÛÉդϼ«Í³¤Ç¤¢¤ë¤¬¡¢¥Í¥Ã¥È¤Ë -+ ¥¢¥¯¥»¥¹¤Ç¤¤Ê¤¤Êý¡Ê»¨»ï¤ª¤è¤Ó¡¢ CDROM ¤Ê ¤É -+ ¤Ë ¤è¤ë¡ËÇÛÉդϡ¢ÇÛÉÕÁ°¤Ë¤³¤Á¤é¤Ë EMail ¤ò¤ª -+ ´ê¤¤¤·¤Þ¤¹¡£ÇÛÉÕÁ°¤Ë½ÐÍè¤Ê¤¤ºÝ¤Ë¤Ï¡¢¸åÆüɬ¤º -+ EMail ¤ò¤ª´ê¤¤¤·¤Þ¤¹¡£ -+ -+ 4. ¤³¤Î¥×¥í¥°¥é¥à¤Î¸ºß¤ä»ÈÍѤ·¤¿¤³¤È¤Ë¤è¤Ã¤ÆÀ¸¤¸¤¿Â» -+ ³²¤ÏÁ´¤¯Êݾڤ·¤Ê¤¤¡£ -+ -+ 5. ºî¼Ô¤Ï¡¢¤³¤Î¥×¥í¥°¥é¥à¤ËÉÔÈ÷¤¬¤¢¤Ã¤Æ¤â¡¢¤½¤ì¤òÄû Àµ -+ ¤¹¤ëµÁ̳¤òÉé¤ï¤Ê¤¤¡£ -+ -+ 6. ¤³¤Î¥×¥í¥°¥é¥à¤Î°ìÉô¡¢¤Þ¤¿¤ÏÁ´Éô¤ò¾¤Î¥×¥í¥°¥é¥à¤Ë -+ ÁȤ߹þ¤ó¤ÇÍøÍѤ·¤Æ¤â¤«¤Þ¤ï¤Ê¤¤¡£¤³¤Î¾ì¹ç¡¢¤½¤Î¥× ¥í -+ ¥°¥é¥à¤Ï LHa ¤Ç¤Ï¤Ê¤¯¡¢ LHa ¤È̾¾è¤Ã¤Æ¤Ï¤¤¤±¤Ê¤¤¡£ -+ -+ 7. ¾¦ÍøÍѤ˴ؤ·¤Æ¤Ï¡¢¾åµ¤Î¾ò·ï¤Ë²Ã¤¨¡¢²¼µ¤Î¾ò·ï¤Î¤â -+ ¤È¤Ë¤³¤ì¤òǧ¤á¤ë¡£ -+ -+ a. ¤³¤Î¥×¥í¥°¥é¥à¤ò¥á¥¤¥ó¤È¤¹¤ë¾¦ÍøÍÑ¤Ï¶Ø »ß ¤¹ -+ ¤ë¡£ -+ -+ b. ¾¦ÍøÍѤÎÁê¼ê¤¬¤³¤Î¥×¥í¥°¥é¥à¤Î»ÈÍѼԤȤ·¤ÆÉÔ -+ ŬÀÚ¤ÈȽÃǤ·¤¿¾ì¹ç¤Ë¤ÏÇÛÉÛ¤·¤Ê¤¤¡£ -+ -+ c. ¥¤¥ó¥¹¥È¡¼¥ë¤Î¼êÃʤȤ·¤Æ»ÈÍѤ¹¤ë¾ì¹ç¡¢¤³¤Î¥× -+ ¥í¥°¥é¥à¤ò»È¤¦¤³¤È¤òÁê¼ê¤Ë¶¯À©¤·¤Ê¤¤¡£¤³¤Î¾ì -+ ¹ç¡¢¾¦ÍøÍѼԤ¬ºî¶È¤ò¹Ô¤¦¡£¤Þ¤¿¡¢¤½¤Î¤È¤¤Î» -+ ³²¤Ï¡¢¾¦ÍøÍѼԤ¬Á´ÀÕǤ¤òÉ餦¡£ -+ -+ d. ¾¦ÍøÍѤòÉղòÁÃͤȤ·¤Æ¹Ô¤¤¤³¤Î¥×¥í¥°¥é¥à¤ò»È -+ ÍѤ¹¤ë¾ì¹ç¡¢¾¦ÍøÍѼԤϡ¢¤½¤Î¥µ¥Ý¡¼¥È¤ò¹Ô¤¦¡£ -+ -+ -+Original Authors License Statement (from man/lha.man, translated by -+Osamu Aoki <debian@aokiconsulting.com>): -+ -+ Permission is given for redistribution, copy, and modification provided -+ following conditions are met. -+ -+ 1. Do not remove copyright clause. -+ 2. Distribution shall conform: -+ a. The content of redistribution (i.e., source code, documentation, -+ and reference guide for programmers) shall include original contents. -+ If contents are modified, the document clearly indicating -+ the fact of modification must be included. -+ b. If LHa is redistributed with added values, you must put your best -+ effort to include them (Translator comment: If read literally, -+ original Japanese was unclear what "them" means here. But -+ undoubtedly this "them" means source code for the added value -+ portion and this is a typical Japanese sloppy writing style to -+ abbreviate as such) Also the document clearly indicating that -+ added value was added must be included. -+ c. Binary only distribution is not allowed (including added value -+ ones.) -+ 3. You need to put effort to distribute the latest version (This is not -+ your duty). -+ -+ NB: Distribution on Internet is free. Please notify me by e-mail or -+ other means prior to the distribution if distribution is done through -+ non-Internet media (Magazine, CDROM etc.) If not, make sure to Email -+ me later. -+ -+ 4. Any damage caused by the existence and use of this program will not -+ be compensated. -+ -+ 5. Author will not be responsible to correct errors even if program is -+ defective. -+ -+ 6. This program, either as a part of this or as a whole of this, may be -+ included into other programs. In this case, that program is not LHa -+ and can not call itself LHa. -+ -+ 7. For commercial use, in addition to above conditions, following -+ condition needs to be met. -+ -+ a. The program whose content is mainly this program can not be used -+ commercially. -+ b. If the recipient of commercial use deems inappropriate as a -+ program user, you must not distribute. -+ c. If used as a method for the installation, you must not force -+ others to use this program. In this case, commercial user will -+ perform its work while taking full responsibility of its outcome. -+ d. If added value is done under the commercial use by using this -+ program, commercial user shall provide its support. -+ -+ -+(Osamu Aoki also comments: -+ Here "commercial" may be interpreted as "for-fee". "Added value" seems -+ to mean "feature enhancement". ) -+ -+ -+License Statement by Tsugio Okamoto (in Japanese EUC-JP): -+ -+ ¤Ê¤ª¡¢¥Í¥Ã¥È¤Ç¤ÎÇÛÉդϼ«Í³¤Ç¤¹¤¬¡¢¥Í¥Ã¥È¤Ë¥¢¥¯¥»¥¹¤Ç¤¤Ê¤¤Êý¡Ê»¨»ï¤ª¤è¤Ó¡¢ -+ CD-ROM ¤Ê¤É¤Ë¤è¤ë¡Ë¤Ø¤ÎÇÛÉդϡ¢ÇÛÉÕÁ°¤Ë¤³¤Á¤é¤Ë Inter-Net ¤ÎÊý¤ËE-Mail -+ ¤ò ¤ª´ê¤¤¤·¤Þ¤¹¡£ ¤É¤³¤½¤³¤Ë¡¢·ÇºÜ¤¹¤ë¤È¤¤¤¦»Ý¤¬¤¢¤ì¤Ð·ë¹½¤Ç¤¹¤Î¤Ç¡£ -+ ¤Þ¤¿¡¢¤½¤ì¤â½ÐÍè¤Ê¤¤ºÝ¤Ë¤Ï¡¢¸åÆü E-Mail ¤òɬ¤º¤ª´ê¤¤¤·¤Þ¤¹¡£ -+ -+ -+Translated License Statement by Tsugio Okamoto (translated by -+GOTO Masanori <gotom@debian.org>): -+ -+ It's free to distribute on the network, but if you distribute for -+ the people who cannot access the network (by magazine or CD-ROM), -+ please send E-Mail (Inter-Net address) to the author before the -+ distribution. That's well where this software is appeard. -+ If you cannot do, you must send me the E-Mail later. -+ ---- lha-1.14i.orig/debian/control -+++ lha-1.14i/debian/control -@@ -0,0 +1,13 @@ -+Source: lha -+Section: non-free/utils -+Priority: optional -+Maintainer: GOTO Masanori <gotom@debian.org> -+Build-Depends: debhelper (>> 4.0.0) -+Standards-Version: 3.6.0 -+ -+Package: lha -+Architecture: any -+Depends: ${shlibs:Depends} -+Description: lzh archiver -+ The famous lzh archiver, known from DOS. When mixing DOS and Unix -+ you might need it. (Especially for fido <--> rfc conversions.) ---- lha-1.14i.orig/debian/docs -+++ lha-1.14i/debian/docs -@@ -0,0 +1,10 @@ -+README.euc -+change-114e.txt -+change-114g.txt -+change-114h.txt -+change-114i.txt -+MACHINES -+MACHINES2 -+PROBLEMS -+header.doc -+debian/header-e.doc ---- lha-1.14i.orig/debian/patch.paul -+++ lha-1.14i/debian/patch.paul -@@ -0,0 +1,10 @@ -+--- src/lha.h Thu Oct 5 19:35:38 2000 -++++ src/lha.h Wed Aug 22 15:49:55 2001 -+@@ -16,6 +16,7 @@ -+ #include <sys/types.h> -+ #include <sys/file.h> -+ #include <sys/stat.h> -++#include <stdlib.h> -+ -+ #include <signal.h> -+ ---- lha-1.14i.orig/debian/header-e.doc -+++ lha-1.14i/debian/header-e.doc -@@ -0,0 +1,189 @@ -+/* header.doc (In English) */ -+Header structure used in LHa for UNIX Mar. 2, 1992, Masaru Oki. -+(Translated by Osamu Aoki) -+ -+---------------------------------------------------------------- -+This version, as a transitional mreasure, uses level-1 as default value while -+offering 3 types of header types. In the future, I plan to use level-2 which -+has no limit on number of characters for the path mname. -+ -+ A. Spec for header -+ -+Basic part -+----------------------------------------------------------------------------- -+ level-0 level-1 level-2 -+----------------------------------------------------------------------------- -+ 1 header size 1 header size 2 total header size -+ 1 header sum 1 header sum -+ 5 method ID 5 method ID 5 method ID -+ 4 packed size 4 skip size 4 packed size -+ 4 original size 4 original size 4 original size -+ 2 time 2 time 4 time(UNIX type) -+ 2 date 2 date -+ 1 attribute 1 0x20 1 RESERVED -+ 1 level 0x00 1 level 0x01 1 level 0x02 -+ 1 name length 1 name length -+ ? pathname ? filename -+ 2 file crc 2 file crc 2 file crc -+ . ........ 1 OS ID 'U' 1 OS ID 'U' -+ . ........ -+ 2 next-header size 2 next-header size -+ ************************************************************************* -+ 24 + ? 27 + ? 26 -+ -+Extension part -+----------------------------------------------------------------------------- -+ 1 ext-type 1 ext-type -+ . ........ . ........ -+ 2 next-header size 2 next-header size -+ -+----------------------------------------------------------------------------- -+ -+ a. Types of header -+ -+ level-0 header -+ Same format as conventional LHarc, LArc. Separator for directory -+ name is '\' as default. -+ -+ level-1 header -+ This header is used as default. Archive type -lh0 made with -x0 can -+ be unfrozen by LHarc but there will be no checking on CRC. -+ -+ level-2 header -+ Header for supporting long file names. I would like to standarize -+ on this format in the future. Please follow this if you wish to -+ make utilities related ti LH. -+ -+ b. method ID for freeze/unfreeze -+ -+ * these methods are freeze/unfreeze, others are unfreeze only -+ -+ -lh0- * no compression -+ -+ -lh1- * 4k sliding dictionary(max 60 bytes) + dynamic Huffman -+ + fixed encoding of position -+ -+ -lh2- 8k sliding dictionary(max 256 bytes) + dynamic Huffman -+ -+ -lh3- 8k sliding dictionary(max 256 bytes) + static Huffman -+ -+ -lh4- * 4k sliding dictionary(max 256 bytes) + static Huffman -+ + improved encoding of position and trees -+ -+ -lh5- * 8k sliding dictionary(max 256 bytes) + static Huffman -+ + improved encoding of position and trees -+ -+ -lh6- 32k sliding dictionary(max 256 bytes) + static Huffman -+ + improved encoding of position and trees -+ -+ -lh7- 64k sliding dictionary(max 256 bytes) + static Huffman -+ + improved encoding of position and trees -+ -+ -lzs- 2k sliding dictionary(max 17 bytes) -+ -+ -lz4- no compression -+ -+ -lz5- 4k sliding dictionary(max 17 bytes) -+ -+ c. About OS ID -+ -+ Following OS ID are reserved. -+ -+ MS-DOS 'M' -+ OS/2 '2' -+ OS9 '9' -+ OS/68K 'K' -+ OS/386 '3' -+ HUMAN 'H' -+ UNIX 'U' -+ CP/M 'C' -+ FLEX 'F' -+ Mac 'm' -+ Runser 'R' -+ -+ B. Extension -+ -+ a. OS independent (0x00 - 0x3f) -+ -+ common header -+ 1 0x00 -+ 2 header crc -+ ( 1 information ) -+ 2 next-header size -+ -+ filename header -+ 1 0x01 -+ ? filename -+ 2 next-header size -+ -+ dirname header -+ 1 0x02 -+ ? dirname -+ 2 next-header size -+ -+ comment header -+ 1 0x3f -+ ? comments -+ 2 next-header size -+ -+(Above portion, from lhx.doc by Mr. Yoshizaki) -+---------------------------------------------------------------- -+LHa for UNIX : specification for extension header -+ -+* Category of machine specific information (Information to be recorded) -+ Followings are UNIX specific information which requires to be recorded -+ (1) Permission -+ (2) GID,UID -+ (3) Group name, User name -+ (4) Last change time (UNIX time) -+ -+* Type of machine specific information (ext-type) -+ First 1 byte of extension header contain value to distinguish types of -+ the infoemation. Foe UNIX specific information, 0x50 - 0x54 will be -+ used. -+ -+* Method to store -+ Above categories (1) - (4) will be different type. -+ -+ -+ (1) Pemission -+ size value -+ 1 0x50 -+ 2 Valur of permission -+ 2 next-header size -+ -+ (2)GID,UID -+ size value -+ 1 0x51 -+ 2 GID -+ 2 UID -+ 2 next-header size -+ -+ (3)-1 Group name -+ 1 0x52 -+ ? Group name string -+ 2 next-header size -+ -+ (3)-2 user name -+ 1 0x53 -+ ? User name string -+ 2 next-header size -+ -+ (4) Last change time (for header_level1) -+ 1 0x54 -+ 4 UNIX time -+ 2 next-header size -+ -+* Implimentation of LHa for UNIX ver 1.14 (Watazaki) -+ Above (3) is not supported -+ Group name and user name specified by (3) is not used to make an -+ archive thus ignored during expansion. -+ Also (4) is contained only in level-1 archive. -+---------------------------------------------------------------- -+That's all folks :) -+ -+Partially modified by -+Nobutaka Watazaki -+watazaki@shimadzu.co.jp -+ -+ ---- lha-1.14i.orig/debian/patch.CAN-2004-0234_0235 -+++ lha-1.14i/debian/patch.CAN-2004-0234_0235 -@@ -0,0 +1,85 @@ -+--- src/header.c.old 2000-10-05 19:36:03.000000000 +0200 -++++ src/header.c 2004-04-17 23:55:54.000000000 +0200 -+@@ -538,6 +538,10 @@ -+ /* -+ * filename -+ */ -++ if (header_size >= 256) { -++ fprintf(stderr, "Possible buffer overflow hack attack, type #1\n"); -++ exit(109); -++ } -+ for (i = 0; i < header_size - 3; i++) -+ hdr->name[i] = (char) get_byte(); -+ hdr->name[header_size - 3] = '\0'; -+@@ -547,6 +551,10 @@ -+ /* -+ * directory -+ */ -++ if (header_size >= FILENAME_LENGTH) { -++ fprintf(stderr, "Possible buffer overflow hack attack, type #2\n"); -++ exit(110); -++ } -+ for (i = 0; i < header_size - 3; i++) -+ dirname[i] = (char) get_byte(); -+ dirname[header_size - 3] = '\0'; -+--- src/lhext.c.old 2000-10-04 16:57:38.000000000 +0200 -++++ src/lhext.c 2004-04-18 01:27:44.000000000 +0200 -+@@ -190,8 +190,13 @@ -+ q = (char *) rindex(hdr->name, '/') + 1; -+ } -+ else { -++ if (is_directory_traversal(q)) { -++ fprintf(stderr, "Possible directory traversal hack attempt in %s\n", q); -++ exit(111); -++ } -++ -+ if (*q == '/') { -+- q++; -++ while (*q == '/') { q++; } -+ /* -+ * if OSK then strip device name -+ */ -+@@ -419,6 +424,33 @@ -+ return; -+ } -+ -++int -++is_directory_traversal(char *string) -++{ -++ unsigned int type = 0; /* 0 = new, 1 = only dots, 2 = other chars than dots */ -++ char *temp; -++ -++ temp = string; -++ -++ while (*temp != 0) { -++ if (temp[0] == '/') { -++ if (type == 1) { return 1; } -++ type = 0; -++ temp++; -++ continue; -++ } -++ -++ if ((temp[0] == '.') && (type < 2)) -++ type = 1; -++ if (temp[0] != '.') -++ type = 2; -++ -++ temp++; -++ } /* while */ -++ -++ return (type == 1); -++} -++ -+ /* Local Variables: */ -+ /* mode:c */ -+ /* tab-width:4 */ -+--- src/lhext.c.symlink 2000-10-04 10:57:38.000000000 -0400 -++++ src/lhext.c 2003-05-19 22:55:57.000000000 -0400 -+@@ -351,6 +351,7 @@ extract_one(afp, hdr) -+ } -+ -+ unlink(bb1); -++ make_parent_path(bb1); -+ l_code = symlink(bb2, bb1); -+ if (l_code < 0) { -+ if (quiet != TRUE) ---- lha-1.14i.orig/debian/patch.header-overflow -+++ lha-1.14i/debian/patch.header-overflow -@@ -0,0 +1,21 @@ -+--- src/header.c 2002-07-19 17:23:58.000000000 +0900 -++++ src/header.c 2004-06-16 09:49:23.000000000 +0900 -+@@ -648,8 +648,17 @@ -+ } -+ -+ if (dir_length) { -++ if ((dir_length + name_length) > sizeof(dirname)) { -++ fprintf(stderr, "Insufficient buffer size\n"); -++ exit(112); -++ } -+ strcat(dirname, hdr->name); -+- strcpy(hdr->name, dirname); -++ -++ if ((dir_length + name_length) > sizeof(hdr->name)) { -++ fprintf(stderr, "Insufficient buffer size\n"); -++ exit(112); -++ } -++ strncpy(hdr->name, dirname, sizeof(hdr->name)); -+ name_length += dir_length; -+ } -+ ---- lha-1.14i.orig/debian/patch.redhat-sec2 -+++ lha-1.14i/debian/patch.redhat-sec2 -@@ -0,0 +1,196 @@ -+diff -urNp lha-114i.orig/src/lha_macro.h lha-114i/src/lha_macro.h -+--- lha-114i.orig/src/lha_macro.h 2004-08-03 15:53:56.000000000 -0500 -++++ lha-114i/src/lha_macro.h 2004-08-03 15:54:05.000000000 -0500 -+@@ -53,7 +53,7 @@ -+ #define SEEK_SET 0 -+ #define SEEK_CUR 1 -+ #define SEEK_END 2 -+-#endif /* SEEK_SET -++#endif /* SEEK_SET */ -+ -+ -+ /* non-integral functions */ -+diff -urNp lha-114i.orig/src/lharc.c lha-114i/src/lharc.c -+--- lha-114i.orig/src/lharc.c 2004-08-03 15:53:56.000000000 -0500 -++++ lha-114i/src/lharc.c 2004-08-03 15:54:05.000000000 -0500 -+@@ -830,9 +830,10 @@ find_files(name, v_filec, v_filev) -+ DIRENTRY *dp; -+ struct stat tmp_stbuf, arc_stbuf, fil_stbuf; -+ -+- strcpy(newname, name); -++ strncpy(newname, name, sizeof(newname)); -++ newname[sizeof(newname)-1] = 0; -+ len = strlen(name); -+- if (len > 0 && newname[len - 1] != '/') -++ if (len > 0 && newname[len - 1] != '/' && len < (sizeof(newname)-1)) -+ newname[len++] = '/'; -+ -+ dirp = opendir(name); -+@@ -846,6 +847,11 @@ find_files(name, v_filec, v_filev) -+ -+ for (dp = readdir(dirp); dp != NULL; dp = readdir(dirp)) { -+ n = NAMLEN(dp); -++ if (len >= (sizeof(newname)-1) || -++ (len+n) >= (sizeof(newname)-1) || -++ n <= 0 || -++ (len+n) <= 0) -++ break; -+ strncpy(newname + len, dp->d_name, n); -+ newname[len + n] = '\0'; -+ if (GETSTAT(newname, &fil_stbuf) < 0) -+@@ -903,7 +909,8 @@ build_temporary_name() -+ strcpy(temporary_name, TMP_FILENAME_TEMPLATE); -+ } -+ else { -+- sprintf(temporary_name, "%s/lhXXXXXX", extract_directory); -++ snprintf(temporary_name, sizeof(temporary_name), -++ "%s/lhXXXXXX", extract_directory); -+ } -+ #ifdef MKSTEMP -+ mkstemp(temporary_name); -+@@ -913,10 +920,16 @@ build_temporary_name() -+ #else -+ char *p, *s; -+ -+- strcpy(temporary_name, archive_name); -++ strncpy(temporary_name, archive_name, sizeof(temporary_name)); -++ temporary_name[sizeof(temporary_name)-1] = 0; -+ for (p = temporary_name, s = (char *) 0; *p; p++) -+ if (*p == '/') -+ s = p; -++ -++ if( sizeof(temporary_name) - ((size_t) (s-temporary_name)) - 1 -++ <= strlen("lhXXXXXX")) -++ exit(-1); -++ -+ strcpy((s ? s + 1 : temporary_name), "lhXXXXXX"); -+ #ifdef MKSTEMP -+ mkstemp(temporary_name); -+@@ -1052,7 +1065,8 @@ open_old_archive() -+ -+ if (open_old_archive_1(archive_name, &fp)) -+ return fp; -+- sprintf(expanded_archive_name, "%s.lzh", archive_name); -++ snprintf(expanded_archive_name, sizeof(expanded_archive_name), -++ "%s.lzh", archive_name); -+ if (open_old_archive_1(expanded_archive_name, &fp)) { -+ archive_name = expanded_archive_name; -+ return fp; -+@@ -1061,7 +1075,8 @@ open_old_archive() -+ * if ( (errno&0xffff)!=E_PNNF ) { archive_name = -+ * expanded_archive_name; return NULL; } -+ */ -+- sprintf(expanded_archive_name, "%s.lzs", archive_name); -++ snprintf(expanded_archive_name, sizeof(expanded_archive_name), -++ "%s.lzs", archive_name); -+ if (open_old_archive_1(expanded_archive_name, &fp)) { -+ archive_name = expanded_archive_name; -+ return fp; -+diff -urNp lha-114i.orig/src/lhext.c lha-114i/src/lhext.c -+--- lha-114i.orig/src/lhext.c 2004-08-03 15:53:56.000000000 -0500 -++++ lha-114i/src/lhext.c 2004-08-03 15:55:40.000000000 -0500 -+@@ -82,7 +82,8 @@ make_parent_path(name) -+ register char *p; -+ -+ /* make parent directory name into PATH for recursive call */ -+- strcpy(path, name); -++ memset(path, 0, sizeof(path)); -++ strncpy(path, name, sizeof(path)-1); -+ for (p = path + strlen(path); p > path; p--) -+ if (p[-1] == '/') { -+ *--p = '\0'; -+@@ -212,9 +213,11 @@ extract_one(afp, hdr) -+ } -+ -+ if (extract_directory) -+- sprintf(name, "%s/%s", extract_directory, q); -+- else -+- strcpy(name, q); -++ snprintf(name, sizeof(name), "%s/%s", extract_directory, q); -++ else { -++ strncpy(name, q, sizeof(name)); -++ name[sizeof(name) - 1] = '\0'; -++ } -+ -+ -+ /* LZHDIRS_METHOD�����ĥإå��������å����� */ -+@@ -335,7 +338,8 @@ extract_one(afp, hdr) -+ if ((hdr->unix_mode & UNIX_FILE_TYPEMASK) == UNIX_FILE_SYMLINK) { -+ char buf[256], *bb1, *bb2; -+ int l_code; -+- strcpy(buf, name); -++ strncpy(buf, name, sizeof(buf)); -++ buf[sizeof(buf)-1] = 0; -+ bb1 = strtok(buf, "|"); -+ bb2 = strtok(NULL, "|"); -+ -+@@ -365,9 +369,10 @@ extract_one(afp, hdr) -+ if (quiet != TRUE) { -+ printf("Symbolic Link %s -> %s\n", bb1, bb2); -+ } -+- strcpy(name, bb1); /* Symbolic's name set */ -++ strncpy(name, bb1, 255); /* Symbolic's name set */ -++ name[255] = 0; -+ #else -+- sprintf(buf, "%s -> %s", bb1, bb2); -++ sprintf(buf, sizeof(buf), "%s -> %s", bb1, bb2); -+ warning("Can't make Symbolic Link", buf); -+ return; -+ #endif -+diff -urNp lha-114i.orig/src/lhlist.c lha-114i/src/lhlist.c -+--- lha-114i.orig/src/lhlist.c 2004-08-03 15:53:56.000000000 -0500 -++++ lha-114i/src/lhlist.c 2004-08-03 15:54:05.000000000 -0500 -+@@ -250,7 +250,8 @@ list_one(hdr) -+ printf(" %s", hdr->name); -+ else { -+ char buf[256], *b1, *b2; -+- strcpy(buf, hdr->name); -++ strncpy(buf, hdr->name, sizeof(buf)); -++ buf[sizeof(buf)-1] = 0; -+ b1 = strtok(buf, "|"); -+ b2 = strtok(NULL, "|"); -+ printf(" %s -> %s", b1, b2); -+diff -urNp lha-114i.orig/src/util.c lha-114i/src/util.c -+--- lha-114i.orig/src/util.c 2004-08-03 15:53:56.000000000 -0500 -++++ lha-114i/src/util.c 2004-08-03 15:54:05.000000000 -0500 -+@@ -276,21 +276,27 @@ rmdir(path) -+ char *path; -+ { -+ int stat, rtn = 0; -+- char *cmdname; -+- if ((cmdname = (char *) malloc(strlen(RMDIRPATH) + 1 + strlen(path) + 1)) -+- == 0) -++ pid_t child; -++ -++ -++ /* XXX thomas: shell meta chars in path could exec commands */ -++ /* therefore we should avoid using system() */ -++ if ((child = fork()) < 0) -++ return (-1); /* fork error */ -++ else if (child) { /* parent process */ -++ while (child != wait(&stat)) /* ignore signals */ -++ continue; -++ } -++ else { /* child process */ -++ execl(RMDIRPATH, "rmdir", path, (char *) 0); -++ /* never come here except execl is error */ -+ return (-1); -+- strcpy(cmdname, RMDIRPATH); -+- *(cmdname + strlen(RMDIRPATH)) = ' '; -+- strcpy(cmdname + strlen(RMDIRPATH) + 1, path); -+- if ((stat = system(cmdname)) < 0) -+- rtn = -1; /* fork or exec error */ -+- else if (stat) { /* RMDIR command error */ -+- errno = EIO; -+- rtn = -1; -+ } -+- free(cmdname); -+- return (rtn); -++ if (stat != 0) { -++ errno = EIO; /* cannot get error num. */ -++ return (-1); -++ } -++ return (0); -+ } -+ -+ /* ------------------------------------------------------------------------ */ ---- lha-1.14i.orig/debian/patch.CVE-2006-4335-CVE-2006-4337-CVE-2006-4338 -+++ lha-1.14i/debian/patch.CVE-2006-4335-CVE-2006-4337-CVE-2006-4338 -@@ -0,0 +1,137 @@ -+diff -aur lha-1.14i.orig/src/huf.c lha-1.14i/src/huf.c -+--- lha-1.14i.orig/src/huf.c 2000-10-05 19:35:49.000000000 +0200 -++++ lha-1.14i/src/huf.c 2006-12-11 10:07:31.000000000 +0100 -+@@ -332,7 +332,7 @@ -+ } -+ else { -+ i = 0; -+- while (i < n) { -++ while (i < MIN(n, NPT)) { -+ c = bitbuf >> (16 - 3); -+ if (c == 7) { -+ unsigned short mask = 1 << (16 - 4); -+@@ -345,7 +345,7 @@ -+ pt_len[i++] = c; -+ if (i == i_special) { -+ c = getbits(2); -+- while (--c >= 0) -++ while (--c >= 0 && i < NPT) -+ pt_len[i++] = 0; -+ } -+ } -+@@ -370,7 +370,7 @@ -+ c_table[i] = c; -+ } else { -+ i = 0; -+- while (i < n) { -++ while (i < MIN(n,NC)) { -+ c = pt_table[bitbuf >> (16 - 8)]; -+ if (c >= NT) { -+ unsigned short mask = 1 << (16 - 9); -+@@ -380,7 +380,7 @@ -+ else -+ c = left[c]; -+ mask >>= 1; -+- } while (c >= NT); -++ } while (c >= NT && (mask || c != left[c])); /* CVE-2006-4338 */ -+ } -+ fillbuf(pt_len[c]); -+ if (c <= 2) { -+@@ -427,7 +427,7 @@ -+ else -+ j = left[j]; -+ mask >>= 1; -+- } while (j >= NC); -++ } while (j >= NC && (mask || j != left[j])); /* CVE-2006-4338 */ -+ fillbuf(c_len[j] - 12); -+ } -+ return j; -+@@ -451,7 +451,7 @@ -+ else -+ j = left[j]; -+ mask >>= 1; -+- } while (j >= np); -++ } while (j >= np && (mask || j != left[j])); /* CVE-2006-4338 */ -+ fillbuf(pt_len[j] - 8); -+ } -+ if (j != 0) -+Only in lha-1.14i/src: huf.c~ -+diff -aur lha-1.14i.orig/src/lha_macro.h lha-1.14i/src/lha_macro.h -+--- lha-1.14i.orig/src/lha_macro.h 2006-12-11 09:43:54.000000000 +0100 -++++ lha-1.14i/src/lha_macro.h 2006-12-11 09:55:42.000000000 +0100 -+@@ -408,6 +408,8 @@ -+ #define MAXMATCH 256 /* formerly F (not more than UCHAR_MAX + 1) */ -+ #define THRESHOLD 3 /* choose optimal value */ -+ -++#define MIN(a,b) ((a) <= (b) ? (a) : (b)) -++ -+ /* from huf.c */ -+ -+ /* alphabet = {0, 1, 2, ..., NC - 1} */ -+Only in lha-1.14i/src: lha_macro.h~ -+diff -aur lha-1.14i.orig/src/maketbl.c lha-1.14i/src/maketbl.c -+--- lha-1.14i.orig/src/maketbl.c 2000-10-04 16:57:38.000000000 +0200 -++++ lha-1.14i/src/maketbl.c 2006-12-11 09:59:51.000000000 +0100 -+@@ -32,8 +32,15 @@ -+ } -+ -+ /* count */ -+- for (i = 0; i < nchar; i++) -+- count[bitlen[i]]++; -++ for (i = 0; i < nchar; i++) { -++ if (bitlen[i] > 16) { -++ /* CVE-2006-4335 */ -++ error("Bad table (case a)"); -++ exit(1); -++ } -++ else -++ count[bitlen[i]]++; -++ } -+ -+ /* calculate first code */ -+ total = 0; -+@@ -41,8 +48,11 @@ -+ start[i] = total; -+ total += weight[i] * count[i]; -+ } -+- if ((total & 0xffff) != 0) -+- error("make_table()", "Bad table (5)\n"); -++ -++ if ((total & 0xffff) != 0 || tablebits > 16) { /* 16 for weight below */ -++ error("make_table(): Bad table (case b)"); -++ exit(1); -++ } -+ -+ /* shift data for make table. */ -+ m = 16 - tablebits; -+@@ -53,7 +63,7 @@ -+ -+ /* initialize */ -+ j = start[tablebits + 1] >> m; -+- k = 1 << tablebits; -++ k = MIN(1 << tablebits, 4096); -+ if (j != 0) -+ for (i = j; i < k; i++) -+ table[i] = 0; -+@@ -66,12 +76,19 @@ -+ l = start[k] + weight[k]; -+ if (k <= tablebits) { -+ /* code in table */ -++ l = MIN(l, 4096); -+ for (i = start[k]; i < l; i++) -+ table[i] = j; -+ } -+ else { -+ /* code not in table */ -+- p = &table[(i = start[k]) >> m]; -++ i = start[k]; -++ if ((i >> m) > 4096) { -++ /* CVE-2006-4337 */ -++ error("Bad table (case c)"); -++ exit(1); -++ } -++ p = &table[i >> m]; -+ i <<= tablebits; -+ n = k - tablebits; -+ /* make tree (n length) */ -+Only in lha-1.14i/src: maketbl.c~ diff --git a/source/a/lha/slack-desc b/source/a/lha/slack-desc deleted file mode 100644 index a5a9b88c4..000000000 --- a/source/a/lha/slack-desc +++ /dev/null @@ -1,19 +0,0 @@ -# HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line -# up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must -# make exactly 11 lines for the formatting to be correct. It's also -# customary to leave one space after the ':'. - - |-----handy-ruler------------------------------------------------------| -lha: lha (LHa archive utility) -lha: -lha: LHa is an archiving and compressing utility written by Tsugio Okamoto. -lha: -lha: -lha: -lha: -lha: -lha: -lha: -lha: diff --git a/source/a/lhasa/lhasa.SlackBuild b/source/a/lhasa/lhasa.SlackBuild new file mode 100755 index 000000000..0c77ac5ed --- /dev/null +++ b/source/a/lhasa/lhasa.SlackBuild @@ -0,0 +1,131 @@ +#!/bin/bash + +# Copyright 2019 Patrick J. Volkerding, Sebeka, Minnesota, USA +# All rights reserved. +# +# Redistribution and use of this script, with or without modification, is +# permitted provided that the following conditions are met: +# +# 1. Redistributions of this script must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# +# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED +# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO +# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; +# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR +# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF +# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +cd $(dirname $0) ; CWD=$(pwd) + +PKGNAM=lhasa +VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)} +BUILD=${BUILD:-1} + +# Automatically determine the architecture we're building on: +if [ -z "$ARCH" ]; then + case "$(uname -m)" in + i?86) ARCH=i586 ;; + arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;; + # Unless $ARCH is already set, use uname -m for all other archs: + *) ARCH=$(uname -m) ;; + esac + export ARCH +fi + +# If the variable PRINT_PACKAGE_NAME is set, then this script will report what +# the name of the created package would be, and then exit. This information +# could be useful to other scripts. +if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then + echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz" + exit 0 +fi + +NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "} + +if [ "$ARCH" = "i586" ]; then + SLKCFLAGS="-O2 -march=i586 -mtune=i686" + LIBDIRSUFFIX="" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686" + LIBDIRSUFFIX="" +elif [ "$ARCH" = "s390" ]; then + SLKCFLAGS="-O2" + LIBDIRSUFFIX="" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIRSUFFIX="64" +elif [ "$ARCH" = "armv7hl" ]; then + SLKCFLAGS="-O3 -march=armv7-a -mfpu=vfpv3-d16" + LIBDIRSUFFIX="" +else + SLKCFLAGS="-O2" + LIBDIRSUFFIX="" +fi + +TMP=${TMP:-/tmp} +PKG=$TMP/package-$PKGNAM + +rm -rf $PKG +mkdir -p $TMP $PKG + +cd $TMP +rm -rf $PKGNAM-$VERSION +tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1 +cd $PKGNAM-$VERSION || exit 1 + +chown -R root:root . +find . \ + \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \ + -exec chmod 755 {} \+ -o \ + \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \ + -exec chmod 644 {} \+ + +if [ ! -r configure ]; then + NOCONFIGURE=1 ./autogen.sh +fi + +# Configure, build, and install: +CFLAGS="$SLKCFLAGS" \ +CXXFLAGS="$SLKCFLAGS" \ +./configure \ + --prefix=/usr \ + --libdir=/usr/lib${LIBDIRSUFFIX} \ + --sysconfdir=/etc \ + --localstatedir=/var \ + --docdir=/usr/doc/$PKGNAM-$VERSION \ + --mandir=/usr/man \ + --infodir=/usr/info \ + --disable-static \ + --build=$ARCH-slackware-linux || exit 1 +make $NUMJOBS || make || exit 1 +make install DESTDIR=$PKG || exit 1 + +# Don't ship .la files: +rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la + +# Strip binaries: +find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null + +# Compress manual pages: +find $PKG/usr/man -type f -exec gzip -9 {} \+ +for i in $( find $PKG/usr/man -type l ) ; do + ln -s $( readlink $i ).gz $i.gz + rm $i +done + +# Add a documentation directory: +mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION +cp -a \ + AUTHORS COPYING* ChangeLog NEWS README* TODO \ + $PKG/usr/doc/${PKGNAM}-$VERSION + +mkdir -p $PKG/install +cat $CWD/slack-desc > $PKG/install/slack-desc + +cd $PKG +/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz diff --git a/source/a/lhasa/slack-desc b/source/a/lhasa/slack-desc new file mode 100644 index 000000000..854108cc2 --- /dev/null +++ b/source/a/lhasa/slack-desc @@ -0,0 +1,19 @@ +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler------------------------------------------------------| +lhasa: lhasa (Free LZH archive tool) +lhasa: +lhasa: Lhasa is a library for parsing LHA (.lzh) archives and a free +lhasa: replacement for the Unix LHA tool. +lhasa: +lhasa: Currently it is only possible to read from (ie. decompress) archives; +lhasa: generating (compressing) LHA archives may be an enhancement for future +lhasa: versions. +lhasa: +lhasa: Homepage: http://fragglet.github.com/lhasa/ +lhasa: diff --git a/source/a/shadow/doinst.sh b/source/a/shadow/doinst.sh index 2bc40e545..b5fcee426 100644 --- a/source/a/shadow/doinst.sh +++ b/source/a/shadow/doinst.sh @@ -11,6 +11,7 @@ config() { } config etc/default/useradd.new +config etc/environment.new config etc/login.access.new config etc/login.defs.new config var/log/faillog.new diff --git a/source/a/shadow/environment b/source/a/shadow/environment new file mode 100644 index 000000000..9e96a54ce --- /dev/null +++ b/source/a/shadow/environment @@ -0,0 +1,6 @@ +# /etc/environment +# This file may contain environment variable settings that should be used +# system-wide. Please note that it is not a script file and should only +# contain assignment expressions, one per line. +# The environment variables in this file will be loaded before those in other +# files such as: /etc/profile, /etc/profile.d/*, ~/.profile, etc. diff --git a/source/a/shadow/shadow.SlackBuild b/source/a/shadow/shadow.SlackBuild index 51ffb2313..b99ad869e 100755 --- a/source/a/shadow/shadow.SlackBuild +++ b/source/a/shadow/shadow.SlackBuild @@ -24,7 +24,7 @@ cd $(dirname $0) ; CWD=$(pwd) PKGNAM=shadow VERSION=${VERSION:-$(echo $PKGNAM-*.tar.xz | rev | cut -f 3- -d . | cut -f 1 -d - | rev)} -BUILD=${BUILD:-1} +BUILD=${BUILD:-2} # Automatically determine the architecture we're building on: if [ -z "$ARCH" ]; then @@ -122,6 +122,10 @@ find $PKG -name groups.1 -exec rm {} \+ rm -f $PKG/etc/login.defs zcat $CWD/login.defs.gz > $PKG/etc/login.defs.new +# Install /etc/environment (referenced in login.defs and used by sudo and +# other utilities): +zcat $CWD/environment.gz > $PKG/etc/environment.new + mv $PKG/etc/login.access $PKG/etc/login.access.new # I don't think this works well enough to recommend it. diff --git a/source/l/netpbm/netpbm.SlackBuild b/source/l/netpbm/netpbm.SlackBuild index df4f514e5..2d5241b47 100755 --- a/source/l/netpbm/netpbm.SlackBuild +++ b/source/l/netpbm/netpbm.SlackBuild @@ -71,7 +71,7 @@ tar xvf $CWD/${PKGNAM}-$VERSION.tar.?z || exit 1 cd ${PKGNAM}-$VERSION zcat $CWD/netpbm-security-scripts.patch.gz | patch -p1 --verbose || exit 1 -zcat $CWD/netpbm-security-code.patch.gz | patch -p1 --verbose || exit 1 +#zcat $CWD/netpbm-security-code.patch.gz | patch -p1 --verbose || exit 1 zcat $CWD/netpbm-ppmfadeusage.patch.gz | patch -p1 --verbose || exit 1 zcat $CWD/netpbm-noppmtompeg.patch.gz | patch -p1 --verbose || exit 1 zcat $CWD/netpbm-CVE-2017-2587.patch.gz | patch -p1 --verbose || exit 1 diff --git a/source/n/ca-certificates/certdata-20190826.txt b/source/n/ca-certificates/certdata-20191018.txt index c49052c71..3a44db293 100644 --- a/source/n/ca-certificates/certdata-20190826.txt +++ b/source/n/ca-certificates/certdata-20191018.txt @@ -13,19 +13,21 @@ # # Certificates # -# -- Attribute -- -- type -- -- value -- -# CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE -# CKA_TOKEN CK_BBOOL CK_TRUE -# CKA_PRIVATE CK_BBOOL CK_FALSE -# CKA_MODIFIABLE CK_BBOOL CK_FALSE -# CKA_LABEL UTF8 (varies) -# CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509 -# CKA_SUBJECT DER+base64 (varies) -# CKA_ID byte array (varies) -# CKA_ISSUER DER+base64 (varies) -# CKA_SERIAL_NUMBER DER+base64 (varies) -# CKA_VALUE DER+base64 (varies) -# CKA_NSS_EMAIL ASCII7 (unused here) +# -- Attribute -- -- type -- -- value -- +# CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE +# CKA_TOKEN CK_BBOOL CK_TRUE +# CKA_PRIVATE CK_BBOOL CK_FALSE +# CKA_MODIFIABLE CK_BBOOL CK_FALSE +# CKA_LABEL UTF8 (varies) +# CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509 +# CKA_SUBJECT DER+base64 (varies) +# CKA_ID byte array (varies) +# CKA_ISSUER DER+base64 (varies) +# CKA_SERIAL_NUMBER DER+base64 (varies) +# CKA_VALUE DER+base64 (varies) +# CKA_NSS_EMAIL ASCII7 (unused here) +# CKA_NSS_SERVER_DISTRUST_AFTER DER+base64 (varies) +# CKA_NSS_EMAIL_DISTRUST_AFTER DER+base64 (varies) # # Trust # @@ -164,6 +166,8 @@ CKA_VALUE MULTILINE_OCTAL \125\342\374\110\311\051\046\151\340 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for Certificate "GlobalSign Root CA" # Issuer: CN=GlobalSign Root CA,OU=Root CA,O=GlobalSign nv-sa,C=BE @@ -298,6 +302,8 @@ CKA_VALUE MULTILINE_OCTAL \152\374\176\102\070\100\144\022\367\236\201\341\223\056 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for Certificate "GlobalSign Root CA - R2" # Issuer: CN=GlobalSign,O=GlobalSign,OU=GlobalSign Root CA - R2 @@ -454,6 +460,8 @@ CKA_VALUE MULTILINE_OCTAL \113\336\006\226\161\054\362\333\266\037\244\357\077\356 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for Certificate "Verisign Class 1 Public Primary Certification Authority - G3" # Issuer: CN=VeriSign Class 1 Public Primary Certification Authority - G3,OU="(c) 1999 VeriSign, Inc. - For authorized use only",OU=VeriSign Trust Network,O="VeriSign, Inc.",C=US @@ -619,6 +627,8 @@ CKA_VALUE MULTILINE_OCTAL \311\130\020\371\252\357\132\266\317\113\113\337\052 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for Certificate "Verisign Class 2 Public Primary Certification Authority - G3" # Issuer: CN=VeriSign Class 2 Public Primary Certification Authority - G3,OU="(c) 1999 VeriSign, Inc. - For authorized use only",OU=VeriSign Trust Network,O="VeriSign, Inc.",C=US @@ -784,6 +794,8 @@ CKA_VALUE MULTILINE_OCTAL \153\271\012\172\116\117\113\204\356\113\361\175\335\021 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for Certificate "Verisign Class 3 Public Primary Certification Authority - G3" # Issuer: CN=VeriSign Class 3 Public Primary Certification Authority - G3,OU="(c) 1999 VeriSign, Inc. - For authorized use only",OU=VeriSign Trust Network,O="VeriSign, Inc.",C=US @@ -1059,6 +1071,8 @@ CKA_VALUE MULTILINE_OCTAL \174\136\232\166\351\131\220\305\174\203\065\021\145\121 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "Entrust.net Premium 2048 Secure Server CA" # Issuer: CN=Entrust.net Certification Authority (2048),OU=(c) 1999 Entrust.net Limited,OU=www.entrust.net/CPS_2048 incorp. by ref. (limits liab.),O=Entrust.net @@ -1197,6 +1211,8 @@ CKA_VALUE MULTILINE_OCTAL \347\201\035\031\303\044\102\352\143\071\251 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for Certificate "Baltimore CyberTrust Root" # Issuer: CN=Baltimore CyberTrust Root,OU=CyberTrust,O=Baltimore,C=IE @@ -1341,6 +1357,8 @@ CKA_VALUE MULTILINE_OCTAL \065\341\035\026\034\320\274\053\216\326\161\331 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for Certificate "AddTrust Low-Value Services Root" # Issuer: CN=AddTrust Class 1 CA Root,OU=AddTrust TTP Network,O=AddTrust AB,C=SE @@ -1490,6 +1508,8 @@ CKA_VALUE MULTILINE_OCTAL \027\132\173\320\274\307\217\116\206\004 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for Certificate "AddTrust External Root" # Issuer: CN=AddTrust External CA Root,OU=AddTrust External TTP Network,O=AddTrust AB,C=SE @@ -1654,6 +1674,8 @@ CKA_VALUE MULTILINE_OCTAL \036\177\132\264\074 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for Certificate "Entrust Root Certification Authority" # Issuer: CN=Entrust Root Certification Authority,OU="(c) 2006 Entrust, Inc.",OU=www.entrust.net/CPS is incorporated by reference,O="Entrust, Inc.",C=US @@ -1788,6 +1810,8 @@ CKA_VALUE MULTILINE_OCTAL \302\005\146\200\241\313\346\063 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for Certificate "GeoTrust Global CA" # Issuer: CN=GeoTrust Global CA,O=GeoTrust Inc.,C=US @@ -1948,6 +1972,8 @@ CKA_VALUE MULTILINE_OCTAL \244\346\216\330\371\051\110\212\316\163\376\054 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for Certificate "GeoTrust Universal CA" # Issuer: CN=GeoTrust Universal CA,O=GeoTrust Inc.,C=US @@ -2108,6 +2134,8 @@ CKA_VALUE MULTILINE_OCTAL \362\034\054\176\256\002\026\322\126\320\057\127\123\107\350\222 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for Certificate "GeoTrust Universal CA 2" # Issuer: CN=GeoTrust Universal CA 2,O=GeoTrust Inc.,C=US @@ -2228,6 +2256,8 @@ CKA_VALUE MULTILINE_OCTAL \350\140\052\233\205\112\100\363\153\212\044\354\006\026\054\163 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for Certificate "Certum Root CA" # Issuer: CN=Certum CA,O=Unizeto Sp. z o.o.,C=PL @@ -2374,6 +2404,8 @@ CKA_VALUE MULTILINE_OCTAL \225\351\066\226\230\156 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for Certificate "Comodo AAA Services root" # Issuer: CN=AAA Certificate Services,O=Comodo CA Limited,L=Salford,ST=Greater Manchester,C=GB @@ -2552,6 +2584,8 @@ CKA_VALUE MULTILINE_OCTAL \112\164\066\371 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for Certificate "QuoVadis Root CA" # Issuer: CN=QuoVadis Root Certification Authority,OU=Root Certification Authority,O=QuoVadis Limited,C=BM @@ -2721,6 +2755,8 @@ CKA_VALUE MULTILINE_OCTAL \020\005\145\325\202\020\352\302\061\315\056 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for Certificate "QuoVadis Root CA 2" # Issuer: CN=QuoVadis Root CA 2,O=QuoVadis Limited,C=BM @@ -2901,6 +2937,8 @@ CKA_VALUE MULTILINE_OCTAL \332 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for Certificate "QuoVadis Root CA 3" # Issuer: CN=QuoVadis Root CA 3,O=QuoVadis Limited,C=BM @@ -3030,6 +3068,8 @@ CKA_VALUE MULTILINE_OCTAL \057\317\246\356\311\160\042\024\275\375\276\154\013\003 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for Certificate "Security Communication Root CA" # Issuer: OU=Security Communication RootCA1,O=SECOM Trust.net,C=JP @@ -3153,6 +3193,8 @@ CKA_VALUE MULTILINE_OCTAL \160\254\337\114 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for Certificate "Sonera Class 2 Root CA" # Issuer: CN=Sonera Class2 CA,O=Sonera,C=FI @@ -3310,6 +3352,8 @@ CKA_VALUE MULTILINE_OCTAL \334 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for Certificate "Camerfirma Chambers of Commerce Root" # Issuer: CN=Chambers of Commerce Root,OU=http://www.chambersign.org,O=AC Camerfirma SA CIF A82743287,C=EU @@ -3470,6 +3514,8 @@ CKA_VALUE MULTILINE_OCTAL \166\135\165\220\032\365\046\217\360 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for Certificate "Camerfirma Global Chambersign Root" # Issuer: CN=Global Chambersign Root,OU=http://www.chambersign.org,O=AC Camerfirma SA CIF A82743287,C=EU @@ -3623,6 +3669,8 @@ CKA_VALUE MULTILINE_OCTAL \264\003\045\274 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for Certificate "XRamp Global CA Root" # Issuer: CN=XRamp Global Certification Authority,O=XRamp Security Services Inc,OU=www.xrampsecurity.com,C=US @@ -3770,6 +3818,8 @@ CKA_VALUE MULTILINE_OCTAL \177\333\275\237 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for Certificate "Go Daddy Class 2 CA" # Issuer: OU=Go Daddy Class 2 Certification Authority,O="The Go Daddy Group, Inc.",C=US @@ -3915,6 +3965,8 @@ CKA_VALUE MULTILINE_OCTAL \037\027\224 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for Certificate "Starfield Class 2 CA" # Issuer: OU=Starfield Class 2 Certification Authority,O="Starfield Technologies, Inc.",C=US @@ -4079,6 +4131,8 @@ CKA_VALUE MULTILINE_OCTAL \245\206\054\174\364\022 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for Certificate "Taiwan GRCA" # Issuer: O=Government Root Certification Authority,C=TW @@ -4218,6 +4272,8 @@ CKA_VALUE MULTILINE_OCTAL \346\120\262\247\372\012\105\057\242\360\362 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for Certificate "DigiCert Assured ID Root CA" # Issuer: CN=DigiCert Assured ID Root CA,OU=www.digicert.com,O=DigiCert Inc,C=US @@ -4359,6 +4415,8 @@ CKA_VALUE MULTILINE_OCTAL \225\155\336 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for Certificate "DigiCert Global Root CA" # Issuer: CN=DigiCert Global Root CA,OU=www.digicert.com,O=DigiCert Inc,C=US @@ -4501,6 +4559,8 @@ CKA_VALUE MULTILINE_OCTAL \370\351\056\023\243\167\350\037\112 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for Certificate "DigiCert High Assurance EV Root CA" # Issuer: CN=DigiCert High Assurance EV Root CA,OU=www.digicert.com,O=DigiCert Inc,C=US @@ -4631,6 +4691,8 @@ CKA_VALUE MULTILINE_OCTAL \013\004\216\007\333\051\266\012\356\235\202\065\065\020 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for Certificate "DST Root CA X3" # Issuer: CN=DST Root CA X3,O=Digital Signature Trust Co. @@ -4798,6 +4860,8 @@ CKA_VALUE MULTILINE_OCTAL \205\206\171\145\322 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for Certificate "SwissSign Platinum CA - G2" # Issuer: CN=SwissSign Platinum CA - G2,O=SwissSign AG,C=CH @@ -4963,6 +5027,8 @@ CKA_VALUE MULTILINE_OCTAL \111\044\133\311\260\320\127\301\372\076\172\341\227\311 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for Certificate "SwissSign Gold CA - G2" # Issuer: CN=SwissSign Gold CA - G2,O=SwissSign AG,C=CH @@ -5129,6 +5195,8 @@ CKA_VALUE MULTILINE_OCTAL \156 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for Certificate "SwissSign Silver CA - G2" # Issuer: CN=SwissSign Silver CA - G2,O=SwissSign AG,C=CH @@ -5261,6 +5329,8 @@ CKA_VALUE MULTILINE_OCTAL \253\022\350\263\336\132\345\240\174\350\017\042\035\132\351\131 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for Certificate "GeoTrust Primary Certification Authority" # Issuer: CN=GeoTrust Primary Certification Authority,O=GeoTrust Inc.,C=US @@ -5416,6 +5486,8 @@ CKA_VALUE MULTILINE_OCTAL \215\126\214\150 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for Certificate "thawte Primary Root CA" # Issuer: CN=thawte Primary Root CA,OU="(c) 2006 thawte, Inc. - For authorized use only",OU=Certification Services Division,O="thawte, Inc.",C=US @@ -5591,6 +5663,8 @@ CKA_VALUE MULTILINE_OCTAL \254\021\326\250\355\143\152 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for Certificate "VeriSign Class 3 Public Primary Certification Authority - G5" # Issuer: CN=VeriSign Class 3 Public Primary Certification Authority - G5,OU="(c) 2006 VeriSign, Inc. - For authorized use only",OU=VeriSign Trust Network,O="VeriSign, Inc.",C=US @@ -5734,6 +5808,8 @@ CKA_VALUE MULTILINE_OCTAL \113\035\236\054\302\270\150\274\355\002\356\061 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for Certificate "SecureTrust CA" # Issuer: CN=SecureTrust CA,O=SecureTrust Corporation,C=US @@ -5869,6 +5945,8 @@ CKA_VALUE MULTILINE_OCTAL \117\043\037\332\154\254\037\104\341\335\043\170\121\133\307\026 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for Certificate "Secure Global CA" # Issuer: CN=Secure Global CA,O=SecureTrust Corporation,C=US @@ -6019,6 +6097,8 @@ CKA_VALUE MULTILINE_OCTAL \145 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for Certificate "COMODO Certification Authority" # Issuer: CN=COMODO Certification Authority,O=COMODO CA Limited,L=Salford,ST=Greater Manchester,C=GB @@ -6165,6 +6245,8 @@ CKA_VALUE MULTILINE_OCTAL \244\140\114\260\125\240\240\173\127\262 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for Certificate "Network Solutions Certificate Authority" # Issuer: CN=Network Solutions Certificate Authority,O=Network Solutions L.L.C.,C=US @@ -6291,6 +6373,8 @@ CKA_VALUE MULTILINE_OCTAL \334\335\363\377\035\054\072\026\127\331\222\071\326 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for Certificate "COMODO ECC Certification Authority" # Issuer: CN=COMODO ECC Certification Authority,O=COMODO CA Limited,L=Salford,ST=Greater Manchester,C=GB @@ -6442,6 +6526,8 @@ CKA_VALUE MULTILINE_OCTAL \374\276\337\012\015 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for Certificate "OISTE WISeKey Global Root GA CA" # Issuer: CN=OISTE WISeKey Global Root GA CA,OU=OISTE Foundation Endorsed,OU=Copyright (c) 2005,O=WISeKey,C=CH @@ -6577,6 +6663,8 @@ CKA_VALUE MULTILINE_OCTAL \300\226\130\057\352\273\106\327\273\344\331\056 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for Certificate "Certigna" # Issuer: CN=Certigna,O=Dhimyotis,C=FR @@ -6706,6 +6794,8 @@ CKA_VALUE MULTILINE_OCTAL \246\210\070\316\125 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for Certificate "Cybertrust Global Root" # Issuer: CN=Cybertrust Global Root,O="Cybertrust, Inc" @@ -6873,6 +6963,8 @@ CKA_VALUE MULTILINE_OCTAL \201\370\021\234 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for Certificate "ePKI Root Certification Authority" # Issuer: OU=ePKI Root Certification Authority,O="Chunghwa Telecom Co., Ltd.",C=TW @@ -6998,6 +7090,8 @@ CKA_VALUE MULTILINE_OCTAL \366\356\260\132\116\111\104\124\130\137\102\203 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for Certificate "certSIGN ROOT CA" # Issuer: OU=certSIGN ROOT CA,O=certSIGN,C=RO @@ -7146,6 +7240,8 @@ CKA_VALUE MULTILINE_OCTAL \021\055 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for Certificate "GeoTrust Primary Certification Authority - G3" # Issuer: CN=GeoTrust Primary Certification Authority - G3,OU=(c) 2008 GeoTrust Inc. - For authorized use only,O=GeoTrust Inc.,C=US @@ -7275,6 +7371,8 @@ CKA_VALUE MULTILINE_OCTAL \367\130\077\056\162\002\127\243\217\241\024\056 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for Certificate "thawte Primary Root CA - G2" # Issuer: CN=thawte Primary Root CA - G2,OU="(c) 2007 thawte, Inc. - For authorized use only",O="thawte, Inc.",C=US @@ -7435,6 +7533,8 @@ CKA_VALUE MULTILINE_OCTAL \061\324\100\032\142\064\066\077\065\001\256\254\143\240 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for Certificate "thawte Primary Root CA - G3" # Issuer: CN=thawte Primary Root CA - G3,OU="(c) 2008 thawte, Inc. - For authorized use only",OU=Certification Services Division,O="thawte, Inc.",C=US @@ -7571,6 +7671,8 @@ CKA_VALUE MULTILINE_OCTAL \017\212 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for Certificate "GeoTrust Primary Certification Authority - G2" # Issuer: CN=GeoTrust Primary Certification Authority - G2,OU=(c) 2007 GeoTrust Inc. - For authorized use only,O=GeoTrust Inc.,C=US @@ -7741,6 +7843,8 @@ CKA_VALUE MULTILINE_OCTAL \354\315\202\141\361\070\346\117\227\230\052\132\215 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for Certificate "VeriSign Universal Root Certification Authority" # Issuer: CN=VeriSign Universal Root Certification Authority,OU="(c) 2008 VeriSign, Inc. - For authorized use only",OU=VeriSign Trust Network,O="VeriSign, Inc.",C=US @@ -7896,6 +8000,8 @@ CKA_VALUE MULTILINE_OCTAL \055\247\330\206\052\335\056\020 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for Certificate "VeriSign Class 3 Public Primary Certification Authority - G4" # Issuer: CN=VeriSign Class 3 Public Primary Certification Authority - G4,OU="(c) 2007 VeriSign, Inc. - For authorized use only",OU=VeriSign Trust Network,O="VeriSign, Inc.",C=US @@ -8056,6 +8162,8 @@ CKA_VALUE MULTILINE_OCTAL \330\316\304\143\165\077\131\107\261 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for Certificate "NetLock Arany (Class Gold) FÅ‘tanúsÃtvány" # Issuer: CN=NetLock Arany (Class Gold) F..tan..s..tv..ny,OU=Tan..s..tv..nykiad..k (Certification Services),O=NetLock Kft.,L=Budapest,C=HU @@ -8230,6 +8338,8 @@ CKA_VALUE MULTILINE_OCTAL \370\161\012\334\271\374\175\062\140\346\353\257\212\001 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for Certificate "Staat der Nederlanden Root CA - G2" # Issuer: CN=Staat der Nederlanden Root CA - G2,O=Staat der Nederlanden,C=NL @@ -8356,6 +8466,8 @@ CKA_VALUE MULTILINE_OCTAL \002\153\331\132 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for Certificate "Hongkong Post Root CA 1" # Issuer: CN=Hongkong Post Root CA 1,O=Hongkong Post,C=HK @@ -8487,6 +8599,8 @@ CKA_VALUE MULTILINE_OCTAL \362 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for Certificate "SecureSign RootCA11" # Issuer: CN=SecureSign RootCA11,O="Japan Certification Services, Inc.",C=JP @@ -8634,6 +8748,8 @@ CKA_VALUE MULTILINE_OCTAL \202\042\055\172\124\253\160\303\175\042\145\202\160\226 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for Certificate "Microsec e-Szigno Root CA 2009" # Issuer: E=info@e-szigno.hu,CN=Microsec e-Szigno Root CA 2009,O=Microsec Ltd.,L=Budapest,C=HU @@ -8766,6 +8882,8 @@ CKA_VALUE MULTILINE_OCTAL \130\077\137 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for Certificate "GlobalSign Root CA - R3" # Issuer: CN=GlobalSign,O=GlobalSign,OU=GlobalSign Root CA - R3 @@ -8939,6 +9057,8 @@ CKA_VALUE MULTILINE_OCTAL \156\117\022\176\012\074\235\225 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for Certificate "Autoridad de Certificacion Firmaprofesional CIF A62634068" # Issuer: CN=Autoridad de Certificacion Firmaprofesional CIF A62634068,C=ES @@ -9108,6 +9228,8 @@ CKA_VALUE MULTILINE_OCTAL \333\374\046\210\307 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for Certificate "Izenpe.com" # Issuer: CN=Izenpe.com,O=IZENPE S.A.,C=ES @@ -9313,6 +9435,8 @@ CKA_VALUE MULTILINE_OCTAL \167\110\320 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for Certificate "Chambers of Commerce Root - 2008" # Issuer: CN=Chambers of Commerce Root - 2008,O=AC Camerfirma S.A.,serialNumber=A82743287,L=Madrid (see current address at www.camerfirma.com/address),C=EU @@ -9522,6 +9646,8 @@ CKA_VALUE MULTILINE_OCTAL \351\233\256\325\124\300\164\200\321\013\102\237\301 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for Certificate "Global Chambersign Root - 2008" # Issuer: CN=Global Chambersign Root - 2008,O=AC Camerfirma S.A.,serialNumber=A82743287,L=Madrid (see current address at www.camerfirma.com/address),C=EU @@ -9670,6 +9796,8 @@ CKA_VALUE MULTILINE_OCTAL \342\342\104\276\134\367\352\034\365 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for Certificate "Go Daddy Root Certificate Authority - G2" # Issuer: CN=Go Daddy Root Certificate Authority - G2,O="GoDaddy.com, Inc.",L=Scottsdale,ST=Arizona,C=US @@ -9820,6 +9948,8 @@ CKA_VALUE MULTILINE_OCTAL \364 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for Certificate "Starfield Root Certificate Authority - G2" # Issuer: CN=Starfield Root Certificate Authority - G2,O="Starfield Technologies, Inc.",L=Scottsdale,ST=Arizona,C=US @@ -9972,6 +10102,8 @@ CKA_VALUE MULTILINE_OCTAL \261\050\272 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for Certificate "Starfield Services Root Certificate Authority - G2" # Issuer: CN=Starfield Services Root Certificate Authority - G2,O="Starfield Technologies, Inc.",L=Scottsdale,ST=Arizona,C=US @@ -10103,6 +10235,8 @@ CKA_VALUE MULTILINE_OCTAL \007\072\027\144\265\004\265\043\041\231\012\225\073\227\174\357 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for Certificate "AffirmTrust Commercial" # Issuer: CN=AffirmTrust Commercial,O=AffirmTrust,C=US @@ -10229,6 +10363,8 @@ CKA_VALUE MULTILINE_OCTAL \355\132\000\124\205\034\026\066\222\014\134\372\246\255\277\333 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for Certificate "AffirmTrust Networking" # Issuer: CN=AffirmTrust Networking,O=AffirmTrust,C=US @@ -10387,6 +10523,8 @@ CKA_VALUE MULTILINE_OCTAL \051\340\266\270\011\150\031\034\030\103 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for Certificate "AffirmTrust Premium" # Issuer: CN=AffirmTrust Premium,O=AffirmTrust,C=US @@ -10493,6 +10631,8 @@ CKA_VALUE MULTILINE_OCTAL \214\171 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for Certificate "AffirmTrust Premium ECC" # Issuer: CN=AffirmTrust Premium ECC,O=AffirmTrust,C=US @@ -10632,6 +10772,8 @@ CKA_VALUE MULTILINE_OCTAL \326\267\064\365\176\316\071\232\331\070\361\121\367\117\054 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for Certificate "Certum Trusted Network CA" # Issuer: CN=Certum Trusted Network CA,OU=Certum Certification Authority,O=Unizeto Technologies S.A.,C=PL @@ -10768,6 +10910,8 @@ CKA_VALUE MULTILINE_OCTAL \274\060\376\173\016\063\220\373\355\322\024\221\037\007\257 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for Certificate "TWCA Root Certification Authority" # Issuer: CN=TWCA Root Certification Authority,OU=Root CA,O=TAIWAN-CA,C=TW @@ -11251,6 +11395,8 @@ CKA_VALUE MULTILINE_OCTAL \201\050\174\247\175\047\353\000\256\215\067 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for Certificate "Security Communication RootCA2" # Issuer: OU=Security Communication RootCA2,O="SECOM Trust Systems CO.,LTD.",C=JP @@ -11434,6 +11580,8 @@ CKA_VALUE MULTILINE_OCTAL \371\210\075\176\270\157\156\003\344\102 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for Certificate "EC-ACC" # Issuer: CN=EC-ACC,OU=Jerarquia Entitats de Certificacio Catalanes,OU=Vegeu https://www.catcert.net/verarrel (c)03,OU=Serveis Publics de Certificacio,O=Agencia Catalana de Certificacio (NIF Q-0801176-I),C=ES @@ -11597,6 +11745,8 @@ CKA_VALUE MULTILINE_OCTAL \113\321\047\327\270 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for Certificate "Hellenic Academic and Research Institutions RootCA 2011" # Issuer: CN=Hellenic Academic and Research Institutions RootCA 2011,O=Hellenic Academic and Research Institutions Cert. Authority,C=GR @@ -11833,6 +11983,8 @@ CKA_VALUE MULTILINE_OCTAL \216\362\024\212\314\351\265\174\373\154\235\014\245\341\226 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "Actalis Authentication Root CA" # Issuer: CN=Actalis Authentication Root CA,O=Actalis S.p.A./03358520967,L=Milan,C=IT @@ -11964,6 +12116,8 @@ CKA_VALUE MULTILINE_OCTAL \145\353\127\331\363\127\226\273\110\315\201 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "Trustis FPS Root CA" # Issuer: OU=Trustis FPS Root CA,O=Trustis Limited,C=GB @@ -12124,6 +12278,8 @@ CKA_VALUE MULTILINE_OCTAL \327\201\011\361\311\307\046\015\254\230\026\126\240 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "Buypass Class 2 Root CA" # Issuer: CN=Buypass Class 2 Root CA,O=Buypass AS-983163327,C=NO @@ -12283,6 +12439,8 @@ CKA_VALUE MULTILINE_OCTAL \061\356\006\274\163\277\023\142\012\237\307\271\227 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "Buypass Class 3 Root CA" # Issuer: CN=Buypass Class 3 Root CA,O=Buypass AS-983163327,C=NO @@ -12425,6 +12583,8 @@ CKA_VALUE MULTILINE_OCTAL \116\223\303\244\124\024\133 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "T-TeleSec GlobalRoot Class 3" # Issuer: CN=T-TeleSec GlobalRoot Class 3,OU=T-Systems Trust Center,O=T-Systems Enterprise Services GmbH,C=DE @@ -12574,6 +12734,8 @@ CKA_VALUE MULTILINE_OCTAL \307\314\165\301\226\305\235 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "EE Certification Centre Root CA" # Issuer: E=pki@sk.ee,CN=EE Certification Centre Root CA,O=AS Sertifitseerimiskeskus,C=EE @@ -12787,6 +12949,8 @@ CKA_VALUE MULTILINE_OCTAL \164\145\327\134\376\243\342 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "D-TRUST Root Class 3 CA 2 2009" # Issuer: CN=D-TRUST Root Class 3 CA 2 2009,O=D-Trust GmbH,C=DE @@ -12931,6 +13095,8 @@ CKA_VALUE MULTILINE_OCTAL \352\237\026\361\054\124\265 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "D-TRUST Root Class 3 CA 2 EV 2009" # Issuer: CN=D-TRUST Root Class 3 CA 2 EV 2009,O=D-Trust GmbH,C=DE @@ -13094,6 +13260,8 @@ CKA_VALUE MULTILINE_OCTAL \363\154\033\165\106\243\345\112\027\351\244\327\013 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "CA Disig Root R2" # Issuer: CN=CA Disig Root R2,O=Disig a.s.,L=Bratislava,C=SK @@ -13294,6 +13462,8 @@ CKA_VALUE MULTILINE_OCTAL \125\064\106\052\213\206\073 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "ACCVRAIZ1" # Issuer: C=ES,O=ACCV,OU=PKIACCV,CN=ACCVRAIZ1 @@ -13454,6 +13624,8 @@ CKA_VALUE MULTILINE_OCTAL \053\006\320\004\315 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "TWCA Global Root CA" # Issuer: CN=TWCA Global Root CA,OU=Root CA,O=TAIWAN-CA,C=TW @@ -13611,6 +13783,8 @@ CKA_VALUE MULTILINE_OCTAL \245\240\314\277\323\366\165\244\165\226\155\126 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "TeliaSonera Root CA v1" # Issuer: CN=TeliaSonera Root CA v1,O=TeliaSonera @@ -13799,6 +13973,8 @@ CKA_VALUE MULTILINE_OCTAL \243\253\157\134\035\266\176\350\263\202\064\355\006\134\044 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "E-Tugra Certification Authority" # Issuer: CN=E-Tugra Certification Authority,OU=E-Tugra Sertifikasyon Merkezi,O=E-Tu..ra EBG Bili..im Teknolojileri ve Hizmetleri A....,L=Ankara,C=TR @@ -13948,6 +14124,8 @@ CKA_VALUE MULTILINE_OCTAL \005\047\216\023\241\156\302 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "T-TeleSec GlobalRoot Class 2" # Issuer: CN=T-TeleSec GlobalRoot Class 2,OU=T-Systems Trust Center,O=T-Systems Enterprise Services GmbH,C=DE @@ -14079,6 +14257,8 @@ CKA_VALUE MULTILINE_OCTAL \035\362\376\011\021\260\360\207\173\247\235 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "Atos TrustedRoot 2011" # Issuer: C=DE,O=Atos,CN=Atos TrustedRoot 2011 @@ -14239,6 +14419,8 @@ CKA_VALUE MULTILINE_OCTAL \063\140\345\303 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "QuoVadis Root CA 1 G3" # Issuer: CN=QuoVadis Root CA 1 G3,O=QuoVadis Limited,C=BM @@ -14401,6 +14583,8 @@ CKA_VALUE MULTILINE_OCTAL \203\336\177\214 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "QuoVadis Root CA 2 G3" # Issuer: CN=QuoVadis Root CA 2 G3,O=QuoVadis Limited,C=BM @@ -14563,6 +14747,8 @@ CKA_VALUE MULTILINE_OCTAL \130\371\230\364 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "QuoVadis Root CA 3 G3" # Issuer: CN=QuoVadis Root CA 3 G3,O=QuoVadis Limited,C=BM @@ -14700,6 +14886,8 @@ CKA_VALUE MULTILINE_OCTAL \042\023\163\154\317\046\365\212\051\347 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "DigiCert Assured ID Root G2" # Issuer: CN=DigiCert Assured ID Root G2,OU=www.digicert.com,O=DigiCert Inc,C=US @@ -14818,6 +15006,8 @@ CKA_VALUE MULTILINE_OCTAL \352\226\143\152\145\105\222\225\001\264 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "DigiCert Assured ID Root G3" # Issuer: CN=DigiCert Assured ID Root G3,OU=www.digicert.com,O=DigiCert Inc,C=US @@ -14957,6 +15147,8 @@ CKA_VALUE MULTILINE_OCTAL \062\266 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "DigiCert Global Root G2" # Issuer: CN=DigiCert Global Root G2,OU=www.digicert.com,O=DigiCert Inc,C=US @@ -15075,6 +15267,8 @@ CKA_VALUE MULTILINE_OCTAL \263\047\027 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "DigiCert Global Root G3" # Issuer: CN=DigiCert Global Root G3,OU=www.digicert.com,O=DigiCert Inc,C=US @@ -15246,6 +15440,8 @@ CKA_VALUE MULTILINE_OCTAL \317\363\146\176 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "DigiCert Trusted Root G4" # Issuer: CN=DigiCert Trusted Root G4,OU=www.digicert.com,O=DigiCert Inc,C=US @@ -15425,6 +15621,8 @@ CKA_VALUE MULTILINE_OCTAL \065\123\205\006\112\135\237\255\273\033\137\164 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "COMODO RSA Certification Authority" # Issuer: CN=COMODO RSA Certification Authority,O=COMODO CA Limited,L=Salford,ST=Greater Manchester,C=GB @@ -15607,6 +15805,8 @@ CKA_VALUE MULTILINE_OCTAL \250\375 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "USERTrust RSA Certification Authority" # Issuer: CN=USERTrust RSA Certification Authority,O=The USERTRUST Network,L=Jersey City,ST=New Jersey,C=US @@ -15736,6 +15936,8 @@ CKA_VALUE MULTILINE_OCTAL \127\152\030 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "USERTrust ECC Certification Authority" # Issuer: CN=USERTrust ECC Certification Authority,O=The USERTRUST Network,L=Jersey City,ST=New Jersey,C=US @@ -15848,6 +16050,8 @@ CKA_VALUE MULTILINE_OCTAL \173\013\370\237\204 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "GlobalSign ECC Root CA - R4" # Issuer: CN=GlobalSign,O=GlobalSign,OU=GlobalSign ECC Root CA - R4 @@ -15961,6 +16165,8 @@ CKA_VALUE MULTILINE_OCTAL \220\067 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "GlobalSign ECC Root CA - R5" # Issuer: CN=GlobalSign,O=GlobalSign,OU=GlobalSign ECC Root CA - R5 @@ -16126,6 +16332,8 @@ CKA_VALUE MULTILINE_OCTAL \367\200\173\041\147\047\060\131 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "Staat der Nederlanden Root CA - G3" # Issuer: CN=Staat der Nederlanden Root CA - G3,O=Staat der Nederlanden,C=NL @@ -16290,6 +16498,8 @@ CKA_VALUE MULTILINE_OCTAL \356\354\327\056 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "Staat der Nederlanden EV Root CA" # Issuer: CN=Staat der Nederlanden EV Root CA,O=Staat der Nederlanden,C=NL @@ -16452,6 +16662,8 @@ CKA_VALUE MULTILINE_OCTAL \272\204\156\207 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "IdenTrust Commercial Root CA 1" # Issuer: CN=IdenTrust Commercial Root CA 1,O=IdenTrust,C=US @@ -16614,6 +16826,8 @@ CKA_VALUE MULTILINE_OCTAL \267\254\266\255\267\312\076\001\357\234 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "IdenTrust Public Sector Root CA 1" # Issuer: CN=IdenTrust Public Sector Root CA 1,O=IdenTrust,C=US @@ -16773,6 +16987,8 @@ CKA_VALUE MULTILINE_OCTAL \105\366 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "Entrust Root Certification Authority - G2" # Issuer: CN=Entrust Root Certification Authority - G2,OU="(c) 2009 Entrust, Inc. - for authorized use only",OU=See www.entrust.net/legal-terms,O="Entrust, Inc.",C=US @@ -16918,6 +17134,8 @@ CKA_VALUE MULTILINE_OCTAL \231\267\046\101\133\045\140\256\320\110\032\356\006 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "Entrust Root Certification Authority - EC1" # Issuer: CN=Entrust Root Certification Authority - EC1,OU="(c) 2012 Entrust, Inc. - for authorized use only",OU=See www.entrust.net/legal-terms,O="Entrust, Inc.",C=US @@ -17091,6 +17309,8 @@ CKA_VALUE MULTILINE_OCTAL \056 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "CFCA EV ROOT" # Issuer: CN=CFCA EV ROOT,O=China Financial Certification Authority,C=CN @@ -17230,6 +17450,8 @@ CKA_VALUE MULTILINE_OCTAL \065\255\201\307\116\161\272\210\023 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "OISTE WISeKey Global Root GB CA" # Issuer: CN=OISTE WISeKey Global Root GB CA,OU=OISTE Foundation Endorsed,O=WISeKey,C=CH @@ -17365,6 +17587,8 @@ CKA_VALUE MULTILINE_OCTAL \326\040\036\343\163\267 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "SZAFIR ROOT CA2" # Issuer: CN=SZAFIR ROOT CA2,O=Krajowa Izba Rozliczeniowa S.A.,C=PL @@ -17543,6 +17767,8 @@ CKA_VALUE MULTILINE_OCTAL \016\265\271\276\044\217 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "Certum Trusted Network CA 2" # Issuer: CN=Certum Trusted Network CA 2,OU=Certum Certification Authority,O=Unizeto Technologies S.A.,C=PL @@ -17730,6 +17956,8 @@ CKA_VALUE MULTILINE_OCTAL \276\157\152\247\365\054\102\355\062\255\266\041\236\276\274 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "Hellenic Academic and Research Institutions RootCA 2015" # Issuer: CN=Hellenic Academic and Research Institutions RootCA 2015,O=Hellenic Academic and Research Institutions Cert. Authority,L=Athens,C=GR @@ -17866,6 +18094,8 @@ CKA_VALUE MULTILINE_OCTAL \342\174\352\002\130\042\221 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "Hellenic Academic and Research Institutions ECC RootCA 2015" # Issuer: CN=Hellenic Academic and Research Institutions ECC RootCA 2015,O=Hellenic Academic and Research Institutions Cert. Authority,L=Athens,C=GR @@ -18035,6 +18265,8 @@ CKA_VALUE MULTILINE_OCTAL \376\216\036\127\242\315\100\235\176\142\042\332\336\030\047 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "ISRG Root X1" # Issuer: CN=ISRG Root X1,O=Internet Security Research Group,C=US @@ -18198,6 +18430,8 @@ CKA_VALUE MULTILINE_OCTAL \072\117\110\366\213\266\263 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "AC RAIZ FNMT-RCM" # Issuer: OU=AC RAIZ FNMT-RCM,O=FNMT-RCM,C=ES @@ -18323,6 +18557,8 @@ CKA_VALUE MULTILINE_OCTAL \304\220\276\361\271 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "Amazon Root CA 1" # Issuer: CN=Amazon Root CA 1,O=Amazon,C=US @@ -18480,6 +18716,8 @@ CKA_VALUE MULTILINE_OCTAL \340\373\011\140\154 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "Amazon Root CA 2" # Issuer: CN=Amazon Root CA 2,O=Amazon,C=US @@ -18580,6 +18818,8 @@ CKA_VALUE MULTILINE_OCTAL \143\044\110\034\337\060\175\325\150\073 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "Amazon Root CA 3" # Issuer: CN=Amazon Root CA 3,O=Amazon,C=US @@ -18684,6 +18924,8 @@ CKA_VALUE MULTILINE_OCTAL \012\166\324\245\274\020 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "Amazon Root CA 4" # Issuer: CN=Amazon Root CA 4,O=Amazon,C=US @@ -18851,6 +19093,8 @@ CKA_VALUE MULTILINE_OCTAL \045\307\043\200\203\012\353 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "LuxTrust Global Root 2" # Issuer: CN=LuxTrust Global Root 2,O=LuxTrust S.A.,C=LU @@ -19000,6 +19244,8 @@ CKA_VALUE MULTILINE_OCTAL \322\063\340\377\275\321\124\071\051\017 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "Symantec Class 1 Public Primary Certification Authority - G6" # Issuer: CN=Symantec Class 1 Public Primary Certification Authority - G6,OU=Symantec Trust Network,O=Symantec Corporation,C=US @@ -19154,6 +19400,8 @@ CKA_VALUE MULTILINE_OCTAL \157\374\132\344\202\125\131\257\061\251 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "Symantec Class 2 Public Primary Certification Authority - G6" # Issuer: CN=Symantec Class 2 Public Primary Certification Authority - G6,OU=Symantec Trust Network,O=Symantec Corporation,C=US @@ -19287,6 +19535,8 @@ CKA_VALUE MULTILINE_OCTAL \362\014\105\111\071\277\231\004\034\323\020\240 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "Symantec Class 1 Public Primary Certification Authority - G4" # Issuer: CN=Symantec Class 1 Public Primary Certification Authority - G4,OU=Symantec Trust Network,O=Symantec Corporation,C=US @@ -19420,6 +19670,8 @@ CKA_VALUE MULTILINE_OCTAL \051\246\330\107\331\240\226\030\333\362\105\263 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "Symantec Class 2 Public Primary Certification Authority - G4" # Issuer: CN=Symantec Class 2 Public Primary Certification Authority - G4,OU=Symantec Trust Network,O=Symantec Corporation,C=US @@ -19565,6 +19817,8 @@ CKA_VALUE MULTILINE_OCTAL \137\134 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "D-TRUST Root CA 3 2013" # Issuer: CN=D-TRUST Root CA 3 2013,O=D-Trust GmbH,C=DE @@ -19727,6 +19981,8 @@ CKA_VALUE MULTILINE_OCTAL \237\042\136\242\017\241\343 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "TUBITAK Kamu SM SSL Kok Sertifikasi - Surum 1" # Issuer: CN=TUBITAK Kamu SM SSL Kok Sertifikasi - Surum 1,OU=Kamu Sertifikasyon Merkezi - Kamu SM,O=Turkiye Bilimsel ve Teknolojik Arastirma Kurumu - TUBITAK,L=Gebze - Kocaeli,C=TR @@ -19902,6 +20158,8 @@ CKA_VALUE MULTILINE_OCTAL \250\267\101\154\007\335\275\074\206\227\057\322 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "GDCA TrustAUTH R5 ROOT" # Issuer: CN=GDCA TrustAUTH R5 ROOT,O="GUANG DONG CERTIFICATE AUTHORITY CO.,LTD.",C=CN @@ -20057,6 +20315,8 @@ CKA_VALUE MULTILINE_OCTAL \132\171\054\031 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "TrustCor RootCert CA-1" # Issuer: CN=TrustCor RootCert CA-1,OU=TrustCor Certificate Authority,O=TrustCor Systems S. de R.L.,L=Panama City,ST=Panama,C=PA @@ -20248,6 +20508,8 @@ CKA_VALUE MULTILINE_OCTAL \326\354\011 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "TrustCor RootCert CA-2" # Issuer: CN=TrustCor RootCert CA-2,OU=TrustCor Certificate Authority,O=TrustCor Systems S. de R.L.,L=Panama City,ST=Panama,C=PA @@ -20404,6 +20666,8 @@ CKA_VALUE MULTILINE_OCTAL \264\237\327\346 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "TrustCor ECA-1" # Issuer: CN=TrustCor ECA-1,OU=TrustCor Certificate Authority,O=TrustCor Systems S. de R.L.,L=Panama City,ST=Panama,C=PA @@ -20583,6 +20847,8 @@ CKA_VALUE MULTILINE_OCTAL \271 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "SSL.com Root Certification Authority RSA" # Issuer: CN=SSL.com Root Certification Authority RSA,O=SSL Corporation,L=Houston,ST=Texas,C=US @@ -20707,6 +20973,8 @@ CKA_VALUE MULTILINE_OCTAL \145 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "SSL.com Root Certification Authority ECC" # Issuer: CN=SSL.com Root Certification Authority ECC,O=SSL Corporation,L=Houston,ST=Texas,C=US @@ -20886,6 +21154,8 @@ CKA_VALUE MULTILINE_OCTAL \040\022\215\264\254\127\261\105\143\241\254\166\251\302\373 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "SSL.com EV Root Certification Authority RSA R2" # Issuer: CN=SSL.com EV Root Certification Authority RSA R2,O=SSL Corporation,L=Houston,ST=Texas,C=US @@ -21013,6 +21283,8 @@ CKA_VALUE MULTILINE_OCTAL \371\007\340\142\232\214\134\112 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "SSL.com EV Root Certification Authority ECC" # Issuer: CN=SSL.com EV Root Certification Authority ECC,O=SSL Corporation,L=Houston,ST=Texas,C=US @@ -21179,6 +21451,8 @@ CKA_VALUE MULTILINE_OCTAL \147\203\005\132\311\244\020 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "GlobalSign Root CA - R6" # Issuer: CN=GlobalSign,O=GlobalSign,OU=GlobalSign Root CA - R6 @@ -21296,6 +21570,8 @@ CKA_VALUE MULTILINE_OCTAL \242\355\357\173\260\200\117\130\017\113\123\071\275 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "OISTE WISeKey Global Root GC CA" # Issuer: CN=OISTE WISeKey Global Root GC CA,OU=OISTE Foundation Endorsed,O=WISeKey,C=CH @@ -21459,6 +21735,8 @@ CKA_VALUE MULTILINE_OCTAL \361\306\143\107\125\034\272\245\010\121\165\246\110\045 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "GTS Root R1" # Issuer: CN=GTS Root R1,O=Google Trust Services LLC,C=US @@ -21620,6 +21898,8 @@ CKA_VALUE MULTILINE_OCTAL \267\375\054\010\122\117\202\335\243\360\324\206\011\002 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "GTS Root R2" # Issuer: CN=GTS Root R2,O=Google Trust Services LLC,C=US @@ -21728,6 +22008,8 @@ CKA_VALUE MULTILINE_OCTAL \232\051\252\226\323\203\043\311\244\173\141\263\314\002\350\135 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "GTS Root R3" # Issuer: CN=GTS Root R3,O=Google Trust Services LLC,C=US @@ -21836,6 +22118,8 @@ CKA_VALUE MULTILINE_OCTAL \161\314\362\260\115\326\376\231\310\224\251\165\242\343 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "GTS Root R4" # Issuer: CN=GTS Root R4,O=Google Trust Services LLC,C=US @@ -21994,6 +22278,8 @@ CKA_VALUE MULTILINE_OCTAL \120\037\212\373\006\365\302\031\360\320 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "UCA Global G2 Root" # Issuer: CN=UCA Global G2 Root,O=UniTrust,C=CN @@ -22154,6 +22440,8 @@ CKA_VALUE MULTILINE_OCTAL \177\275\145\040\262\311\301\053\166\030\166\237\126\261 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "UCA Extended Validation Root" # Issuer: CN=UCA Extended Validation Root,O=UniTrust,C=CN @@ -22333,6 +22621,8 @@ CKA_VALUE MULTILINE_OCTAL \045\124\377\242\332\117\212\141\071\136\256\075\112\214\275 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "Certigna Root CA" # Issuer: CN=Certigna Root CA,OU=0002 48146308100036,O=Dhimyotis,C=FR @@ -22470,6 +22760,8 @@ CKA_VALUE MULTILINE_OCTAL \210\336\272\314\037\200\176\112 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "emSign Root CA - G1" # Issuer: CN=emSign Root CA - G1,O=eMudhra Technologies Limited,OU=emSign PKI,C=IN @@ -22587,6 +22879,8 @@ CKA_VALUE MULTILINE_OCTAL \054\243 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "emSign ECC Root CA - G3" # Issuer: CN=emSign ECC Root CA - G3,O=eMudhra Technologies Limited,OU=emSign PKI,C=IN @@ -22720,6 +23014,8 @@ CKA_VALUE MULTILINE_OCTAL \361\337\312\276\203\015\102 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "emSign Root CA - C1" # Issuer: CN=emSign Root CA - C1,O=eMudhra Inc,OU=emSign PKI,C=US @@ -22831,6 +23127,8 @@ CKA_VALUE MULTILINE_OCTAL \276\201\007\125\060\120\040\024\365\127\070\012\250\061\121 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "emSign ECC Root CA - C3" # Issuer: CN=emSign ECC Root CA - C3,O=eMudhra Inc,OU=emSign PKI,C=US @@ -23006,6 +23304,8 @@ CKA_VALUE MULTILINE_OCTAL \232\233\364 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "Hongkong Post Root CA 3" # Issuer: CN=Hongkong Post Root CA 3,O=Hongkong Post,L=Hong Kong,ST=Hong Kong,C=HK diff --git a/source/n/samba/samba.url b/source/n/samba/samba.url index b9895f64b..bd4b3b186 100644 --- a/source/n/samba/samba.url +++ b/source/n/samba/samba.url @@ -1,2 +1,2 @@ -https://download.samba.org/pub/samba/stable/samba-4.11.0.tar.gz -https://download.samba.org/pub/samba/stable/samba-4.11.0.tar.asc +https://download.samba.org/pub/samba/stable/samba-4.11.1.tar.gz +https://download.samba.org/pub/samba/stable/samba-4.11.1.tar.asc |