summaryrefslogtreecommitdiff
path: root/archivers/hpack
diff options
context:
space:
mode:
authortv <tv@pkgsrc.org>1999-05-23 22:41:21 +0000
committertv <tv@pkgsrc.org>1999-05-23 22:41:21 +0000
commit6a4ee18179d8914f462e57d946f20726238ed263 (patch)
treeab878ed91b41a2e1c89b34fc72d2973c85bfd2bd /archivers/hpack
parentf7b6a0f63d1e5862689ff4202bdc367e29aa95c4 (diff)
downloadpkgsrc-6a4ee18179d8914f462e57d946f20726238ed263.tar.gz
Add hpack-0.79, inspired by the FreeBSD port "hpack.non-usa.only", but
rewritten. Allows for USA/non-USA support via the familiar USE_RSAREF2 mechanism, and significantly cleaned up. Does not attempt to fall back to $HOME/.pgp for keys as in the FreeBSD port, as other programs already require PGPPATH to be set.
Diffstat (limited to 'archivers/hpack')
-rw-r--r--archivers/hpack/Makefile62
-rw-r--r--archivers/hpack/files/md54
-rw-r--r--archivers/hpack/patches/patch-aa22
-rw-r--r--archivers/hpack/patches/patch-ab20
-rw-r--r--archivers/hpack/patches/patch-ac24
-rw-r--r--archivers/hpack/patches/patch-ad33
-rw-r--r--archivers/hpack/patches/patch-ae29
-rw-r--r--archivers/hpack/patches/patch-af25
-rw-r--r--archivers/hpack/patches/patch-rsaref24
-rw-r--r--archivers/hpack/pkg/COMMENT1
-rw-r--r--archivers/hpack/pkg/DESCR9
-rw-r--r--archivers/hpack/pkg/PLIST10
12 files changed, 263 insertions, 0 deletions
diff --git a/archivers/hpack/Makefile b/archivers/hpack/Makefile
new file mode 100644
index 00000000000..3480b18b19a
--- /dev/null
+++ b/archivers/hpack/Makefile
@@ -0,0 +1,62 @@
+# $NetBSD: Makefile,v 1.1.1.1 1999/05/23 22:41:21 tv Exp $
+
+DISTNAME= hpack79${USE_RSAREF2:S/YES/u/:C/[^u]*//g}src
+PKGNAME= hpack-0.79
+CATEGORIES= archivers
+MASTER_SITES= ftp://src.doc.ic.ac.uk/packages/hpack/
+
+MAINTAINER= packages@netbsd.org
+
+RESTRICTED= crypto
+MIRROR_DISTFILE=no
+
+NO_WRKSUBDIR= yes
+PATCHDIR= ${WRKDIR}/.patches
+
+MAKEFILE= makefile
+ALL_TARGET= hpack
+MAKE_FLAGS= CFLAGS="-c -DBSD386 -D__UNIX__ -DPREFIX=\\\"${PREFIX}\\\" -I. ${CFLAGS} -Icrypt" \
+ CMDL="${LDFLAGS} -ltermcap"
+
+.include "../../mk/bsd.prefs.mk"
+.if defined(USE_RSAREF2) && ${USE_RSAREF2} == YES
+DEPENDS+= rsaref-2.0p1:../../security/rsaref
+LDFLAGS+= -L${LOCALBASE}/lib -lrsaref
+CFLAGS+= -I${LOCALBASE}/include -DRSAREF
+.endif
+
+fetch-depends:
+.if !defined(USE_RSAREF2) || ${USE_RSAREF2} != YES && ${USE_RSAREF2} != NO
+ @${ECHO}
+ @${ECHO} The variable USE_RSAREF2 must be set to either YES or NO
+ @${ECHO} in order to build this package. USA residents that are
+ @${ECHO} not licensees of the RSA algorithm MUST set this variable
+ @${ECHO} to YES. Users outside the USA MUST set this variable to
+ @${ECHO} NO. Licensees may choose -- NO is faster.
+ @${FALSE}
+.endif
+
+post-extract:
+ @${MKDIR} ${PATCHDIR}
+ @${CP} ${.CURDIR}/patches/patch-* ${PATCHDIR}/
+.if defined(USE_RSAREF2) && ${USE_RSAREF2} == NO
+ @${RM} -f ${PATCHDIR}/patch-rsaref
+.endif
+
+post-build:
+ @cd ${WRKSRC}/keycvt && ${MAKE} CFLAGS="-c -D__UNIX__ ${CFLAGS}" \
+ -f ${MAKEFILE} keycvt
+
+do-install:
+ ${INSTALL_PROGRAM} ${WRKSRC}/hpack ${PREFIX}/bin/
+ ${INSTALL_PROGRAM} ${WRKSRC}/keycvt/keycvt ${PREFIX}/bin/
+ ${INSTALL_MAN} ${WRKSRC}/docs/hpack.1 ${PREFIX}/man/man1/
+ ${INSTALL_DATA_DIR} ${PREFIX}/share/hpack ${PREFIX}/share/doc/hpack
+ ${INSTALL_DATA} ${WRKSRC}/language.dat ${PREFIX}/share/hpack/
+ ${INSTALL_DATA} ${WRKSRC}/docs/hpack.cfg ${PREFIX}/share/hpack/hpack.cfg.example
+ ${INSTALL_DATA} ${WRKSRC}/docs/hpackext.doc ${PREFIX}/share/doc/hpack/
+ @if [ ! -f ${PREFIX}/etc/hpack.cfg ]; then \
+ ${CP} -p ${PREFIX}/share/hpack/hpack.cfg.example ${PREFIX}/etc/hpack.cfg; \
+ fi
+
+.include "../../mk/bsd.pkg.mk"
diff --git a/archivers/hpack/files/md5 b/archivers/hpack/files/md5
new file mode 100644
index 00000000000..f1480489cb6
--- /dev/null
+++ b/archivers/hpack/files/md5
@@ -0,0 +1,4 @@
+$NetBSD: md5,v 1.1.1.1 1999/05/23 22:41:21 tv Exp $
+
+MD5 (hpack79usrc.tar.gz) = 1ff1ee91bd3ac14dcabc22aec17aee7a
+MD5 (hpack79src.tar.gz) = 5353c034d6f3b611df6536ac2349ca89
diff --git a/archivers/hpack/patches/patch-aa b/archivers/hpack/patches/patch-aa
new file mode 100644
index 00000000000..21335c83d50
--- /dev/null
+++ b/archivers/hpack/patches/patch-aa
@@ -0,0 +1,22 @@
+$NetBSD: patch-aa,v 1.1.1.1 1999/05/23 22:41:21 tv Exp $
+
+--- defs.h.orig Sun May 23 17:31:43 1999
++++ defs.h Sun May 23 17:26:19 1999
+@@ -20,7 +20,7 @@
+ typedef unsigned char BYTE;
+ typedef unsigned short int WORD; /* 16-bit unsigned on most systems */
+ #ifndef _OS2EMX_H
+-typedef unsigned long int LONG; /* 32-bit unsigned on most systems */
++typedef unsigned int LONG; /* 32-bit unsigned on most systems */
+ #endif /* _OS2EMX.H */
+
+ typedef int BOOLEAN;
+@@ -43,7 +43,7 @@
+
+ /* 'inline' patch for compilers which can't handle this */
+
+-#if !( defined( __CPLUSPLUS__ ) || defined( __cplusplus ) ) || defined( __TSC__ )
++#if !( defined( __GNUC__ ) || defined( __CPLUSPLUS__ ) || defined( __cplusplus ) ) || defined( __TSC__ )
+ #define inline
+ #endif /* !( __CPLUSPLUS__ || __cplusplus ) */
+
diff --git a/archivers/hpack/patches/patch-ab b/archivers/hpack/patches/patch-ab
new file mode 100644
index 00000000000..1c51a9acccf
--- /dev/null
+++ b/archivers/hpack/patches/patch-ab
@@ -0,0 +1,20 @@
+$NetBSD: patch-ab,v 1.1.1.1 1999/05/23 22:41:21 tv Exp $
+
+--- crypt/crypt.c.orig Sun May 23 09:23:37 1999
++++ crypt/crypt.c Sun May 23 09:24:09 1999
+@@ -400,6 +400,7 @@
+
+ int globalPrecision;
+
++#if 0
+ /* Unused function needed to keep RSAREF happy */
+
+ void R_GenerateBytes( void )
+@@ -423,6 +424,7 @@
+ {
+ return( memcmp( memPtr1, memPtr2, size ) );
+ }
++#endif
+
+ /* Init multiprecision register mpReg with short value */
+
diff --git a/archivers/hpack/patches/patch-ac b/archivers/hpack/patches/patch-ac
new file mode 100644
index 00000000000..d0444f3bce3
--- /dev/null
+++ b/archivers/hpack/patches/patch-ac
@@ -0,0 +1,24 @@
+$NetBSD: patch-ac,v 1.1.1.1 1999/05/23 22:41:21 tv Exp $
+
+--- keycvt/keycvt.c.orig Fri Aug 13 16:06:28 1993
++++ keycvt/keycvt.c Sun May 23 17:36:39 1999
+@@ -1034,13 +1034,17 @@
+ tempFileName[ pathLen++ ] = '/';
+ strcat( tempFileName, "randseed.bin" );
+ #else
+- if( pathLen && ( ch = tempFileName[ pathLen - 1 ] ) != '\\' && ch != '/' )
++ if( pathLen && ( ch = tempFileName[ pathLen - 1 ] ) != '\\' && ch != '/' ) {
+ /* Add directory seperator if necessary */
+ tempFileName[ pathLen++ ] = '/';
++ tempFileName[ pathLen ] = '\0';
++ }
+ strcat( tempFileName, "randseed.bin" );
+ #endif /* __ARC__ */
+- if( ( inFilePtr = fopen( tempFileName, "rb" ) ) == NULL )
++ if( ( inFilePtr = fopen( tempFileName, "rb" ) ) == NULL ) {
++ perror( tempFileName );
+ puts( "Cannot find PGP seed file, HPACK seed file not created" );
++ }
+ else
+ {
+ /* See if the output file exists */
diff --git a/archivers/hpack/patches/patch-ad b/archivers/hpack/patches/patch-ad
new file mode 100644
index 00000000000..1c726ff8036
--- /dev/null
+++ b/archivers/hpack/patches/patch-ad
@@ -0,0 +1,33 @@
+$NetBSD: patch-ad,v 1.1.1.1 1999/05/23 22:41:21 tv Exp $
+
+--- language/language.c.orig Fri Aug 27 05:52:10 1993
++++ language/language.c Sun May 23 17:26:17 1999
+@@ -187,7 +187,7 @@
+ /* Process user response */
+ response = hgetch();
+ response = toupper( response ); /* Damn macros */
+- blankLine( screenWidth );
++ blankLine( screenWidth - 1 );
+ if( response == RESPONSE_QUIT )
+ return;
+ lineNo -= ( response == ' ' ) ? screenHeight : 1;
+@@ -267,6 +267,9 @@
+ if( ( inFD = hopen( fileNamePtr, O_RDONLY | S_DENYWR | A_RANDSEQ ) ) == ERROR )
+ return( ERROR );
+ #elif defined( __UNIX__ )
++ fileNamePtr = getFirstKeyPath( PREFIX "/share/hpack", DATA_FILENAME );
++ if( ( inFD = hopen( fileNamePtr, O_RDONLY | S_DENYWR | A_RANDSEQ ) ) != ERROR )
++ goto found;
+ /* Build path to language file and try and process it */
+ fileNamePtr = getFirstKeyPath( getenv( "PATH" ), DATA_FILENAME );
+ while( fileNamePtr != NULL )
+@@ -289,6 +292,9 @@
+ return( ERROR ); /* Couldn't find/open input file */
+ }
+ #endif /* System-specific handling of how to find language defn.file */
++#if defined(__FreeBSD__) || defined(__OpenBSD__) || defined(__NetBSD__)
++found:
++#endif
+ setInputFD( inFD );
+ resetFastIn();
+
diff --git a/archivers/hpack/patches/patch-ae b/archivers/hpack/patches/patch-ae
new file mode 100644
index 00000000000..7f04188518b
--- /dev/null
+++ b/archivers/hpack/patches/patch-ae
@@ -0,0 +1,29 @@
+$NetBSD: patch-ae,v 1.1.1.1 1999/05/23 22:41:21 tv Exp $
+
+--- system.h.orig Fri Aug 27 13:16:40 1993
++++ system.h Sun May 23 17:43:15 1999
+@@ -779,6 +779,10 @@
+ #if defined( AIX ) || defined( AIX370 ) || defined( AIX386 )
+ #define MAX_PATH ( 1023 + 1 )
+ #define MAX_FILENAME ( 254 + 1 )
++#elif defined(__FreeBSD__) || defined(__OpenBSD__) || defined(__NetBSD__)
++ #include <limits.h>
++ #define MAX_PATH ( _POSIX_PATH_MAX + 1 )
++ #define MAX_FILENAME ( NAME_MAX + 1 )
+ #elif defined( BSD386 ) || defined( GENERIC ) || defined( HPUX ) || \
+ defined( IRIX ) || defined( LINUX ) || defined( NEXT ) || \
+ defined( OSF1 ) || defined( SUNOS ) || defined( ULTRIX ) || \
+@@ -899,6 +903,13 @@
+ #if defined( AIX ) || defined( AIX370 )
+ #define NEED_STRLWR /* AIX RS6000, AIX 370 */
+ #define NEED_STRICMP
++#elif defined( __FreeBSD__ ) || defined(__OpenBSD__) || defined(__NetBSD__) /* Amdahl UTS4 */
++ #include <unistd.h>
++ #define tell(fd) lseek((fd),(off_t)0,SEEK_CUR)
++ #define NEED_STRLWR
++ #define stricmp strcasecmp
++ #define strnicmp strncasecmp
++ #define USE_TERMCAP
+ #elif defined( AIX386 )
+ #define NEED_STRLWR /* AIX 386 */
+ #define NEED_STRICMP
diff --git a/archivers/hpack/patches/patch-af b/archivers/hpack/patches/patch-af
new file mode 100644
index 00000000000..08afbed7e23
--- /dev/null
+++ b/archivers/hpack/patches/patch-af
@@ -0,0 +1,25 @@
+$NetBSD: patch-af,v 1.1.1.1 1999/05/23 22:41:21 tv Exp $
+
+--- cli.c.orig Sat Sep 4 23:23:48 1993
++++ cli.c Sun May 23 17:26:18 1999
+@@ -724,12 +724,18 @@
+
+ void doConfigFile( void )
+ {
+- char *configFileName;
++ char *configFileName, *s;
+ FD configFileFD;
+ WORD oldFlags = flags;
+
++ if (( s = getenv( HPACKPATH )) == NULL)
++#ifdef __UNIX__
++ s = PREFIX "/etc";
++#else
++ ;
++#endif
+ /* Build path to config file and try and process it */
+- configFileName = getFirstKeyPath( getenv( HPACKPATH ), CONFIGFILENAME );
++ configFileName = getFirstKeyPath( s, CONFIGFILENAME );
+ while( configFileName != NULL )
+ {
+ /* Try and read the seed from the seedfile */
diff --git a/archivers/hpack/patches/patch-rsaref b/archivers/hpack/patches/patch-rsaref
new file mode 100644
index 00000000000..14ca7e494c4
--- /dev/null
+++ b/archivers/hpack/patches/patch-rsaref
@@ -0,0 +1,24 @@
+$NetBSD: patch-rsaref,v 1.1.1.1 1999/05/23 22:41:21 tv Exp $
+
+--- makefile.orig Sun May 23 18:11:55 1999
++++ makefile Sun May 23 18:12:51 1999
+@@ -280,8 +280,7 @@
+ $(OUTPATH)model$(OBJ) $(OUTPATH)model2$(OBJ) \
+ $(OUTPATH)model3$(OBJ) $(OUTPATH)model4$(OBJ) \
+ $(OUTPATH)pack$(OBJ) $(OUTPATH)unpack$(OBJ) \
+- $(OUTPATH)store$(OBJ) $(OUTPATH)digit$(OBJ) \
+- $(OUTPATH)nn$(OBJ) $(OUTPATH)rsa$(OBJ)
++ $(OUTPATH)store$(OBJ)
+ @$(LD) $(LFLAGS) $(OUTPATH)arcdir$(OBJ) $(OUTPATH)arcdirio$(OBJ) \
+ $(OUTPATH)archive$(OBJ) $(OUTPATH)cli$(OBJ) $(OUTPATH)display$(OBJ) \
+ $(OUTPATH)error$(OBJ) $(OUTPATH)fastio$(OBJ) $(OUTPATH)stream$(OBJ) \
+@@ -294,8 +293,7 @@
+ $(OUTPATH)md5$(OBJ) $(OUTPATH)mdc$(OBJ) $(OUTPATH)shs$(OBJ) \
+ $(OUTPATH)unix$(OBJ) $(OUTPATH)store$(OBJ) $(OUTPATH)lza$(OBJ) \
+ $(OUTPATH)model$(OBJ) $(OUTPATH)model2$(OBJ) $(OUTPATH)model3$(OBJ) \
+- $(OUTPATH)model4$(OBJ) $(OUTPATH)pack$(OBJ) $(OUTPATH)unpack$(OBJ) \
+- $(OUTPATH)digit$(OBJ) $(OUTPATH)nn$(OBJ) $(OUTPATH)rsa$(OBJ)
++ $(OUTPATH)model4$(OBJ) $(OUTPATH)pack$(OBJ) $(OUTPATH)unpack$(OBJ)
+
+ #****************************************************************************
+ #* *
diff --git a/archivers/hpack/pkg/COMMENT b/archivers/hpack/pkg/COMMENT
new file mode 100644
index 00000000000..e4551c13253
--- /dev/null
+++ b/archivers/hpack/pkg/COMMENT
@@ -0,0 +1 @@
+Multi-System Archiver with open keys PGP-based security.
diff --git a/archivers/hpack/pkg/DESCR b/archivers/hpack/pkg/DESCR
new file mode 100644
index 00000000000..14d3c971d36
--- /dev/null
+++ b/archivers/hpack/pkg/DESCR
@@ -0,0 +1,9 @@
+ The hpack Multi-System Archiver is an archiver that was
+ written to allow the transfer of archived data to differ-
+ ent systems. In the past archivers have traditionally
+ been available for single systems only, for example
+ PKZIP and LHARC for the IBM PC, Larc for the Amiga,
+ StuffIt and Compactor for the Macintosh, and tar and
+ compress for UNIX systems (while these archivers are
+ available on other systems, their use is not widespread).
+ Open-keys security included.
diff --git a/archivers/hpack/pkg/PLIST b/archivers/hpack/pkg/PLIST
new file mode 100644
index 00000000000..51937464d7c
--- /dev/null
+++ b/archivers/hpack/pkg/PLIST
@@ -0,0 +1,10 @@
+@comment $NetBSD: PLIST,v 1.1.1.1 1999/05/23 22:41:21 tv Exp $
+bin/hpack
+bin/keycvt
+man/man1/hpack.1
+share/doc/hpack/hpackext.doc
+share/hpack/hpack.cfg.example
+@exec if [ ! %D/etc/hpack.cfg ]; then cp -p %F %D/etc/hpack.cfg; fi
+share/hpack/language.dat
+@dirrm share/doc/hpack
+@dirrm share/hpack