From 12d9fc0b1d5e0a4f6e61816e63b9b5e10c636600 Mon Sep 17 00:00:00 2001 From: jlam Date: Mon, 17 Jan 2000 16:02:33 +0000 Subject: Merge net/speakfreely and net/speakfreely-crypto. Allow building without using patented IDEA algorithm. Uses two new make variables which may be defined in mk.conf: USE_CRYPTO: YES, NO USE_IDEA: YES, NO Defaults to building with crypto but without IDEA. --- net/speakfreely/Makefile | 79 ++++++++++++++++- net/speakfreely/Makefile.common | 53 ------------ net/speakfreely/files/patch-sum | 17 ++-- net/speakfreely/patches/patch-aa | 40 +++++---- net/speakfreely/patches/patch-ab | 4 +- net/speakfreely/patches/patch-ac | 35 +++++--- net/speakfreely/patches/patch-ad | 179 ++++++++++++++++++++++++++++++++++++--- net/speakfreely/patches/patch-ae | 53 +++++++----- net/speakfreely/patches/patch-af | 36 ++++---- net/speakfreely/patches/patch-ag | 131 ++++++++++++++++++++++++++++ net/speakfreely/patches/patch-ah | 23 +++++ net/speakfreely/patches/patch-ai | 22 +++++ 12 files changed, 519 insertions(+), 153 deletions(-) delete mode 100644 net/speakfreely/Makefile.common create mode 100644 net/speakfreely/patches/patch-ag create mode 100644 net/speakfreely/patches/patch-ah create mode 100644 net/speakfreely/patches/patch-ai (limited to 'net/speakfreely') diff --git a/net/speakfreely/Makefile b/net/speakfreely/Makefile index 734db280ddf..0effd8997da 100644 --- a/net/speakfreely/Makefile +++ b/net/speakfreely/Makefile @@ -1,7 +1,80 @@ -# $NetBSD: Makefile,v 1.2 1999/10/26 16:45:16 jlam Exp $ +# $NetBSD: Makefile,v 1.3 2000/01/17 16:02:33 jlam Exp $ # +DISTNAME= speak_freely-7.1 PKGNAME= speakfreely-7.1 -CONFLICTS= speakfreely-crypto-* +CATEGORIES= net audio +MASTER_SITES= http://www.fourmilab.ch/speakfree/unix/ -.include "../../net/speakfreely/Makefile.common" +MAINTAINER= johnam@mail.kemper.org +HOMEPAGE= http://www.fourmilab.ch/speakfree/unix/ + +DEPENDS+= gsm-1.0.10:../../audio/gsm + +USE_PERL= yes +PERL_PATH= ${LOCALBASE}/bin/perl + +MIRROR_DISTFILE= no # source includes crypto code + +NO_CONFIGURE= yes + +BUILD_DEFS+= SPEAKFREELY_OPTIONS USE_CRYPTO USE_IDEA + +.include "../../mk/bsd.prefs.mk" + +USE_CRYPTO?= YES +USE_IDEA?= NO + +# SPEAKFREELY_OPTIONS is a space-separated list of compile-time options +# to support. Currently supported options: +# +# halfduplex for if sound card doesn't support full-duplex sound +# +SPEAKFREELY_OPTIONS?= halfduplex + +.if ${SPEAKFREELY_OPTIONS:Mhalfduplex} == "halfduplex" +CCFLAGS+= -DHALF_DUPLEX +.endif + +.if defined(USE_CRYPTO) && ${USE_CRYPTO} == "YES" +.if exists (/usr/include/openssl/blowfish.h) +HAVE_LIBCRYPTO= YES +OPENSSLDIR= /usr +.else +# +# We have a choice of either using the included sources for crypto or to simply +# DEPEND on security/openssl. Not sure which is the right way to go, so for +# now, just DEPEND on security/openssl. +# +#HAVE_LIBCRYPTO= NO +HAVE_LIBCRYPTO= YES +OPENSSLDIR= ${LOCALBASE} +DEPENDS+= openssl-*:../../security/openssl +.endif +RESTRICTED= "Crypto; export-controlled" +.if defined(USE_IDEA) && ${USE_IDEA} == "YES" +LICENSE= no-commercial-use +.endif +.endif + +SOUNDDIR= ${PREFIX}/share/speakfreely +MAKE_ENV+= PERL="${PERL_PATH}" CCFLAGS="${CCFLAGS}" \ + SOUNDDIR="${SOUNDDIR}" +MAKE_ENV+= USE_CRYPTO="${USE_CRYPTO}" HAVE_LIBCRYPTO="${HAVE_LIBCRYPTO}" \ + OPENSSLDIR="${OPENSSLDIR}" USE_IDEA="${USE_IDEA}" +MAKE_ENV+= HAVE_GSM=YES HAVE_MD5=YES +MAKE_ENV+= DOMAIN= + +post-extract: + ${MV} ${WRKSRC}/sfspeaker.1 ${WRKSRC}/sfspeaker.1.in + +pre-build: + ${SED} -e "s,@SOUNDDIR@,${SOUNDDIR},g" \ + < ${WRKSRC}/sfspeaker.1.in > ${WRKSRC}/sfspeaker.1 + +post-install: + ${INSTALL_DATA_DIR} ${SOUNDDIR} + ${INSTALL_DATA} ${WRKSRC}/busy.au ${SOUNDDIR} + ${INSTALL_DATA} ${WRKSRC}/ring.au ${SOUNDDIR} + +.include "../../mk/bsd.pkg.mk" diff --git a/net/speakfreely/Makefile.common b/net/speakfreely/Makefile.common deleted file mode 100644 index 26fb0b954c9..00000000000 --- a/net/speakfreely/Makefile.common +++ /dev/null @@ -1,53 +0,0 @@ -# $NetBSD: Makefile.common,v 1.2 1999/11/01 04:05:44 hubertf Exp $ -# - -DISTNAME= speak_freely-7.1 -CATEGORIES= net audio -MASTER_SITES= http://www.fourmilab.ch/speakfree/unix/ - -MAINTAINER= johnam@mail.kemper.org -HOMEPAGE= http://www.fourmilab.ch/speakfree/unix/ - -DEPENDS+= gsm-1.0.10:../../audio/gsm - -USE_PERL= yes -PERL_PATH= ${LOCALBASE}/bin/perl - -MIRROR_DISTFILE= no # source includes crypto code - -NO_CONFIGURE= yes - -BUILD_DEFS+= SPEAKFREELY_OPTIONS - -.include "../../mk/bsd.prefs.mk" - -# SPEAKFREELY_OPTIONS is a space-separated list of compile-time options -# to support. Currently supported options: -# -# halfduplex for if sound card doesn't support full-duplex sound -# -SPEAKFREELY_OPTIONS?= halfduplex - -.if ${SPEAKFREELY_OPTIONS:Mhalfduplex} == "halfduplex" -CCFLAGS+= -DHALF_DUPLEX -.endif - -SOUNDDIR= ${PREFIX}/share/speakfreely -MAKE_ENV+= PERL="${PERL_PATH}" CCFLAGS="${CCFLAGS}" \ - SOUNDDIR="${SOUNDDIR}" HAVE_GSM=yes -MAKE_ENV+= HAVE_MD5=yes -MAKE_ENV+= DOMAIN= - -post-extract: - ${MV} ${WRKSRC}/sfspeaker.1 ${WRKSRC}/sfspeaker.1.in - -pre-build: - ${SED} -e "s,@SOUNDDIR@,${SOUNDDIR},g" ${WRKSRC}/sfspeaker.1.in \ - > ${WRKSRC}/sfspeaker.1 - -post-install: - ${INSTALL_DATA_DIR} ${SOUNDDIR} - ${INSTALL_DATA} ${WRKSRC}/busy.au ${SOUNDDIR} - ${INSTALL_DATA} ${WRKSRC}/ring.au ${SOUNDDIR} - -.include "../../mk/bsd.pkg.mk" diff --git a/net/speakfreely/files/patch-sum b/net/speakfreely/files/patch-sum index e696d391961..69fb6f540ad 100644 --- a/net/speakfreely/files/patch-sum +++ b/net/speakfreely/files/patch-sum @@ -1,8 +1,11 @@ -$NetBSD: patch-sum,v 1.2 1999/10/26 16:45:17 jlam Exp $ +$NetBSD: patch-sum,v 1.3 2000/01/17 16:02:34 jlam Exp $ -MD5 (patch-aa) = fc4777d135292d7b09e155cbfa98cc92 -MD5 (patch-ab) = 437f44a080d08925b8275c6c01543b76 -MD5 (patch-ac) = 9bb7b8bb6a0928830e09d6cb7223aed7 -MD5 (patch-ad) = ca5b272dc6faff9cc174ea0b47e038cd -MD5 (patch-ae) = 7a0471772af271dc970fe5d3280f8d32 -MD5 (patch-af) = c101bbe1d66b8399cec024e501305704 +MD5 (patch-aa) = 39474a4df6fc42cc8b874444d2398b9d +MD5 (patch-ab) = 5c676114edc6c971bf4a58ea8a30dbfb +MD5 (patch-ac) = c5646be033cb2de99cccd4c17c405d09 +MD5 (patch-ad) = 8a60453687bcc4c92df85067809c8fc0 +MD5 (patch-ae) = 17d39f606a9e10a5ccacf60ff66f5ee2 +MD5 (patch-af) = 71613cf5bd06c275c6024e6b4434c162 +MD5 (patch-ag) = c8b03f34dd63fc6065aad32924dfda89 +MD5 (patch-ah) = f9459d2babbad802ec504daef1685a20 +MD5 (patch-ai) = 7a79d657dd982c9327b5a9849abb6ad3 diff --git a/net/speakfreely/patches/patch-aa b/net/speakfreely/patches/patch-aa index d12132fd519..bff631984c0 100644 --- a/net/speakfreely/patches/patch-aa +++ b/net/speakfreely/patches/patch-aa @@ -1,7 +1,7 @@ -$NetBSD: patch-aa,v 1.1.1.1 1999/10/11 05:48:25 jlam Exp $ +$NetBSD: patch-aa,v 1.2 2000/01/17 16:02:34 jlam Exp $ --- Makefile.orig Sat Sep 18 11:29:44 1999 -+++ Makefile Mon Oct 11 01:40:13 1999 ++++ Makefile Sat Jan 15 12:34:29 2000 @@ -3,16 +3,19 @@ # Debugging options @@ -67,21 +67,25 @@ $NetBSD: patch-aa,v 1.1.1.1 1999/10/11 05:48:25 jlam Exp $ # If your audio hardware is half duplex, uncomment the next line. # You can also, if you wish, define this on the CCFLAGS definition -@@ -267,23 +282,63 @@ +@@ -267,23 +282,67 @@ CARGS = -DInternet_Port=$(INTERNET_PORT) +# Crypto -+.if defined(CRYPTO) && $(CRYPTO) == "yes" -+.if defined(HAVE_LIBCRYPTO) && $(HAVE_LIBCRYPTO) == "yes" -+CRYPTOFLAGS = -Iidea -I$(OPENSSLDIR)/include/openssl -+CRYPTOLIBS = idea/idea.a des/des.a \ -+ -Wl,-R$(OPENSSLDIR)/lib -L$(OPENSSLDIR)/lib -lcrypto -+CRYPTOOBJS = idealib.o deslib.o ++.if defined(USE_CRYPTO) && $(USE_CRYPTO) == "YES" ++.if defined(HAVE_LIBCRYPTO) && $(HAVE_LIBCRYPTO) == "YES" ++CRYPTOFLAGS = -I$(OPENSSLDIR)/include/openssl ++CRYPTOLIBS = des/des.a -Wl,-R$(OPENSSLDIR)/lib -L$(OPENSSLDIR)/lib -lcrypto ++CRYPTOOBJS = deslib.o +.else -+CRYPTOFLAGS = -Iidea -Ilibdes -Iblowfish -+CRYPTOLIBS = blowfish/libblowfish.a des/des.a idea/idea.a libdes/libdes.a -+CRYPTOOBJS = libblowfish.o deslib.o idealib.o libdes.o ++CRYPTOFLAGS = -Ilibdes -Iblowfish ++CRYPTOLIBS = blowfish/libblowfish.a des/des.a libdes/libdes.a ++CRYPTOOBJS = libblowfish.o deslib.o libdes.o ++.if defined(USE_IDEA) && $(USE_IDEA) == "YES" ++CRYPTOFLAGS += -DUSE_IDEA -Iidea ++CRYPTOLIBS += idea/idea.a ++CRYPTOOBJS += idealib.o ++.endif +.endif +.else +CCFLAGS += -DNOCRYPTO @@ -90,7 +94,7 @@ $NetBSD: patch-aa,v 1.1.1.1 1999/10/11 05:48:25 jlam Exp $ +CRYPTOOBJS = +.endif + -+.if defined(HAVE_GSM) && ${HAVE_GSM} == "yes" ++.if defined(HAVE_GSM) && ${HAVE_GSM} == "YES" +GSMFLAGS = -I${LOCALBASE}/include +GSMLIBS = -Wl,-R${LOCALBASE}/lib -L${LOCALBASE}/lib -lgsm +GSMOBJS = @@ -100,7 +104,7 @@ $NetBSD: patch-aa,v 1.1.1.1 1999/10/11 05:48:25 jlam Exp $ +GSMOBJS = gsmlib.o +.endif + -+.if defined(HAVE_MD5) && $(HAVE_MD5) == "yes" ++.if defined(HAVE_MD5) && $(HAVE_MD5) == "YES" +MD5FLAGS = -I/usr/include +MD5LIBS = +MD5OBJS = @@ -138,7 +142,7 @@ $NetBSD: patch-aa,v 1.1.1.1 1999/10/11 05:48:25 jlam Exp $ LAUNCHOBJS = launch.o soundbyte.o usleep.o g711.o -@@ -302,13 +357,13 @@ +@@ -302,13 +361,13 @@ ECHOOBJS = echo.o codecs.o g711.o rtpacket.o ulaw.o xdsub.o @@ -156,7 +160,7 @@ $NetBSD: patch-aa,v 1.1.1.1 1999/10/11 05:48:25 jlam Exp $ # Configure the voice on demand server for the platform's # location of Perl and network constant definitions. -@@ -402,8 +457,8 @@ +@@ -402,8 +461,8 @@ speakfree.h: audio_descr.h rtp.h rtpacket.h ulaw2linear.h types.h @@ -167,7 +171,7 @@ $NetBSD: patch-aa,v 1.1.1.1 1999/10/11 05:48:25 jlam Exp $ manpage: nroff -man sfmike.1 | $(PAGER) -@@ -442,7 +497,7 @@ +@@ -442,7 +501,7 @@ # Clean everything clean: @@ -176,7 +180,7 @@ $NetBSD: patch-aa,v 1.1.1.1 1999/10/11 05:48:25 jlam Exp $ ( cd adpcm; make clean ) ( cd blowfish; make clean ) ( cd libdes; make clean ) -@@ -456,11 +511,12 @@ +@@ -456,11 +515,12 @@ # Clean only the main directory, not the libraries dusty: diff --git a/net/speakfreely/patches/patch-ab b/net/speakfreely/patches/patch-ab index 63d27e7b550..9f88f0eefb3 100644 --- a/net/speakfreely/patches/patch-ab +++ b/net/speakfreely/patches/patch-ab @@ -1,7 +1,7 @@ -$NetBSD: patch-ab,v 1.2 1999/10/26 16:45:18 jlam Exp $ +$NetBSD: patch-ab,v 1.3 2000/01/17 16:02:34 jlam Exp $ --- des/des.c.orig Fri Feb 23 06:10:37 1996 -+++ des/des.c Tue Oct 26 12:22:56 1999 ++++ des/des.c Sat Jan 15 11:59:59 2000 @@ -4,6 +4,18 @@ */ #define NULL 0 diff --git a/net/speakfreely/patches/patch-ac b/net/speakfreely/patches/patch-ac index f3f3605e44d..57673f7c5f0 100644 --- a/net/speakfreely/patches/patch-ac +++ b/net/speakfreely/patches/patch-ac @@ -1,13 +1,24 @@ -$NetBSD: patch-ac,v 1.1.1.1 1999/10/11 05:48:25 jlam Exp $ +$NetBSD: patch-ac,v 1.2 2000/01/17 16:02:34 jlam Exp $ ---- sfspeaker.1.in.orig Sat Sep 18 15:23:01 1999 -+++ sfspeaker.1.in Mon Oct 11 01:38:35 1999 -@@ -140,7 +140,7 @@ - .I busy_command - is supplied, a default of: - .ce 1 ---b"sleep 10; sfmike %s busy.au" -+-b"sleep 10; sfmike %s @SOUNDDIR@/busy.au" - is used. The ten second delay is intended to allow users - with half duplex audio hardware to receive the busy signal - transmission after sending an initial greeting and switching +--- echo.c.orig Wed Sep 1 14:27:43 1999 ++++ echo.c Sat Jan 15 12:46:42 2000 +@@ -47,7 +47,9 @@ + struct connection { + struct connection *con_next; /* Next connection */ + struct in_addr con_addr; /* Host Internet address */ ++#ifdef USE_IDEA + char pgpkey[17]; /* PGP key for connection */ ++#endif + char keymd5[16]; /* Digest of key file */ + double con_timeout; /* Connection timeout time */ + char con_hostname[264]; /* Host name */ +@@ -705,7 +707,9 @@ + + newconn = TRUE; + c->con_next = conn; ++#ifdef USE_IDEA + c->pgpkey[0] = FALSE; ++#endif + bzero(c->keymd5, 16); + conn = c; + bcopy(&from.sin_addr, &(c->con_addr), diff --git a/net/speakfreely/patches/patch-ad b/net/speakfreely/patches/patch-ad index 29f833c4b38..47b8ff950d7 100644 --- a/net/speakfreely/patches/patch-ad +++ b/net/speakfreely/patches/patch-ad @@ -1,17 +1,168 @@ -$NetBSD: patch-ad,v 1.1.1.1 1999/10/11 05:48:25 jlam Exp $ +$NetBSD: patch-ad,v 1.2 2000/01/17 16:02:34 jlam Exp $ ---- soundbyte.c.orig Tue Sep 14 08:55:17 1999 -+++ soundbyte.c Mon Oct 11 01:38:35 1999 -@@ -27,9 +27,11 @@ - #else - #include - #endif --#else /* FreeBSD / Linux */ -+#else /* NetBSD / FreeBSD / Linux */ - #ifdef LINUX - #include -+#elif defined(__NetBSD__) -+#include +--- mike.c.orig Tue Sep 14 09:27:51 1999 ++++ mike.c Sat Jan 15 12:52:38 2000 +@@ -23,8 +23,10 @@ + char deskey[9]; /* Destination DES key, if any */ + char rtpdeskey[9]; /* Destination RTP DES key, if any */ + char vatdeskey[9]; /* Destination VAT DES key, if any */ ++#ifdef USE_IDEA + char ideakey[17]; /* Destination IDEA key, if any */ + char pgpkey[17]; /* Destination PGP key, if any */ ++#endif + char blowfish_spec; /* Nonzero if Blowfish key specified */ + #ifdef CRYPTO + BF_KEY blowfishkey; /* Destination Blowfish key, if any */ +@@ -87,8 +89,10 @@ + static char curkey[9] = ""; /* Current DES key if curkey[0] != 0 */ + static char currtpkey[9] = ""; /* Current RTP DES key if currtpkey[0] != 0 */ + static char curvatkey[9] = ""; /* Current VAT DES key if currtpkey[0] != 0 */ ++#ifdef USE_IDEA + static char curideakey[17] = ""; /* Current IDEA key if curideakey[0] != 0 */ + static char curpgpkey[17] = ""; /* Current PGP key if curpgpkey[0] != 0 */ ++#endif + static char curblowfish_spec = FALSE; /* Nonzero if Blowfish key specified */ + #ifdef CRYPTO + static BF_KEY curblowfishkey; /* Blowfish key */ +@@ -485,8 +489,10 @@ + bcopy(curkey, d->deskey, 9); + bcopy(currtpkey, d->rtpdeskey, 9); + bcopy(curvatkey, d->vatdeskey, 9); ++#ifdef USE_IDEA + bcopy(curideakey, d->ideakey, 17); + bcopy(curpgpkey, d->pgpkey, 17); ++#endif + d->blowfish_spec = curblowfish_spec; + #ifdef CRYPTO + bcopy(&curblowfishkey, &(d->blowfishkey), sizeof(BF_KEY)); +@@ -655,8 +661,12 @@ + #endif + + #ifdef CRYPTO ++#ifdef USE_IDEA + if (d->deskey[0] || d->ideakey[0] || d->blowfish_spec || + d->pgpkey[0] || d->otp != NULL) { ++#else ++ if (d->deskey[0] || d->blowfish_spec || d->otp != NULL) { ++#endif + soundbuf ebuf; + int i; + LONG slen, plen = 0; +@@ -733,6 +743,7 @@ + } + } + ++#ifdef USE_IDEA + /* IDEA encryption. */ + + if (d->ideakey[0]) { +@@ -755,6 +766,7 @@ + close_idea(); + ebuf.compression |= fEncIDEA; + } ++#endif + + /* Blowfish encryption. */ + +@@ -779,6 +791,7 @@ + ebuf.compression |= fEncBF; + } + ++#ifdef USE_IDEA + /* PGP encryption. */ + + if (d->pgpkey[0]) { +@@ -801,6 +814,7 @@ + close_idea(); + ebuf.compression |= fEncPGP; + } ++#endif + + /* Key file encryption. */ + +@@ -1659,7 +1673,7 @@ + MD5Init(&md5c); + MD5Update(&md5c, s, strlen(s)); + MD5Final(md5key1, &md5c); +-#ifdef CRYPTO ++#if defined(CRYPTO) && defined(USE_IDEA) + init_idearand(md5key, md5key1, time(NULL)); + #define nextrand idearand() #else - #include +@@ -1683,7 +1697,7 @@ + key[j] = nextrand; + } + } +-#ifdef CRYPTO ++#if defined(CRYPTO) && defined(USE_IDEA) + close_idearand(); + #endif + #undef nextrand +@@ -1723,7 +1737,9 @@ + V fprintf(stderr, " -F ADPCM compression\n"); + V fprintf(stderr, " -G Automatic gain control\n"); + #ifdef CRYPTO ++#ifdef USE_IDEA + V fprintf(stderr, " -Ikey IDEA encrypt with key\n"); ++#endif + V fprintf(stderr, " -Kkey DES encrypt with key\n"); + #endif + V fprintf(stderr, " -L Remote loopback\n"); +@@ -1753,7 +1769,7 @@ + #ifdef AUDIO_DEVICE_FILE + V fprintf(stderr, " -Yindev[:ctldev] Override default audio device file name or specify open #fd\n"); + #endif +-#ifdef CRYPTO ++#if defined(CRYPTO) && defined(USE_IDEA) + V fprintf(stderr, " -Z\"user..\" Send PGP session key for user(s)\n"); + #endif + V fprintf(stderr, "\n"); +@@ -1946,6 +1962,7 @@ + break; + + #ifdef CRYPTO ++#ifdef USE_IDEA + case 'I': /* -Ikey -- Set IDEA key */ + if (strlen(op + 1) == 0) { + curideakey[0] = FALSE; +@@ -1963,6 +1980,7 @@ + } + } + break; ++#endif + + case 'K': /* -Kkey -- Set DES key */ + desinit(1); /* Initialise the DES library */ +@@ -2181,6 +2199,7 @@ + #endif + + #ifdef CRYPTO ++#ifdef USE_IDEA + case 'Z': /* -Z"user1 user2..." -- Send PGP + encrypted session key to + named users */ +@@ -2270,6 +2289,7 @@ + } + break; + #endif ++#endif + } + } else { + +@@ -2281,10 +2301,15 @@ + } + + if (rtp || vat) { +-#ifdef CRYPTO ++#if defined(CRYPTO) && defined(USE_IDEA) + if (curideakey[0] || curpgpkey[0] || + curblowfish_spec || curotp != NULL) { + fprintf(stderr, "Blowfish, IDEA, PGP, and Key File encryption cannot be used\n with -RTP or -VAT protocols.\n"); ++ return 2; ++ } ++#else ++ if (curblowfish_spec || curotp != NULL) { ++ fprintf(stderr, "Blowfish and Key File encryption cannot be used\n with -RTP or -VAT protocols.\n"); + return 2; + } #endif diff --git a/net/speakfreely/patches/patch-ae b/net/speakfreely/patches/patch-ae index b18fe557c82..c8317e19f42 100644 --- a/net/speakfreely/patches/patch-ae +++ b/net/speakfreely/patches/patch-ae @@ -1,24 +1,31 @@ -$NetBSD: patch-ae,v 1.1.1.1 1999/10/11 05:48:25 jlam Exp $ +$NetBSD: patch-ae,v 1.2 2000/01/17 16:02:34 jlam Exp $ ---- speaker.c.orig Tue Sep 14 05:53:42 1999 -+++ speaker.c Mon Oct 11 01:38:35 1999 -@@ -10,6 +10,10 @@ - #include "speakfree.h" - #include "version.h" - -+#ifndef SOUNDDIR -+#define SOUNDDIR -+#endif -+ - static int audiok = FALSE; /* Audio initialised flag */ - static int audiotime = 0; /* Audio timeout counter */ - static int debugging = FALSE; /* Debugging enabled */ -@@ -53,7 +57,7 @@ - static char *replyfile = NULL; /* Reply file pathname */ - static char *replycmdexe = NULL; - static char *replycmd = "sfmike -t"; /* Default reply command */ --static char *busysignal = "sleep 10; sfmike %s busy.au"; /* Default busy signal command */ -+static char *busysignal = "sleep 10; sfmike %s " SOUNDDIR "busy.au"; /* Default busy signal command */ - static int busytimeout = 60 * 1000000L; /* Busy signal timeout interval */ - static int dobusy = FALSE; /* Reject calls when busy ? */ - #ifdef HALF_DUPLEX +--- sfspeaker.1.in.orig Sat Sep 18 15:23:01 1999 ++++ sfspeaker.1.in Mon Jan 17 01:26:08 2000 +@@ -140,7 +140,7 @@ + .I busy_command + is supplied, a default of: + .ce 1 +--b"sleep 10; sfmike %s busy.au" ++-b"sleep 10; sfmike %s @SOUNDDIR@/busy.au" + is used. The ten second delay is intended to allow users + with half duplex audio hardware to receive the busy signal + transmission after sending an initial greeting and switching +@@ -177,6 +177,8 @@ + is used to decrypt sound received + using the International Data Encryption + Algorithm (IDEA). ++This option is not available unless speakfreely was compiled ++to support IDEA. + .TP + .BI \-j delay , idle + Jitter compensation is enabled. This delays playing sound +@@ -354,6 +356,8 @@ + .B pgp + via a command line argument when it is invoked to decode the session + key. ++This option is not available unless speakfreely was compiled ++to support IDEA. + .SH "LOOK WHO'S LISTENING" + Speak Freely's Look Who's Listening mechanism allows you to publish + information in an electronic telephone directory at a cooperating diff --git a/net/speakfreely/patches/patch-af b/net/speakfreely/patches/patch-af index bef789ce71c..b7d7e38bdd6 100644 --- a/net/speakfreely/patches/patch-af +++ b/net/speakfreely/patches/patch-af @@ -1,23 +1,17 @@ -$NetBSD: patch-af,v 1.2 1999/10/26 16:45:18 jlam Exp $ +$NetBSD: patch-af,v 1.3 2000/01/17 16:02:34 jlam Exp $ ---- speakfree.h.orig Tue Sep 14 08:17:32 1999 -+++ speakfree.h Tue Oct 26 12:23:11 1999 -@@ -20,6 +20,18 @@ - #define _BSD_SIGNALS +--- soundbyte.c.orig Tue Sep 14 08:55:17 1999 ++++ soundbyte.c Sat Jan 15 11:59:59 2000 +@@ -27,9 +27,11 @@ + #else + #include + #endif +-#else /* FreeBSD / Linux */ ++#else /* NetBSD / FreeBSD / Linux */ + #ifdef LINUX + #include ++#elif defined(__NetBSD__) ++#include + #else + #include #endif - -+/* -+ * NetBSD is cross-platform, so determine endianness from machine-specific -+ * header files. -+ */ -+#if defined(__NetBSD__) -+#include /* needed for NetBSD <= 1.4.x */ -+#include -+#if BYTE_ORDER == LITTLE_ENDIAN -+#define M_LITTLE_ENDIAN -+#endif -+#endif /* __NetBSD__ */ -+ - #include - #include - #include diff --git a/net/speakfreely/patches/patch-ag b/net/speakfreely/patches/patch-ag new file mode 100644 index 00000000000..c5a07d8879d --- /dev/null +++ b/net/speakfreely/patches/patch-ag @@ -0,0 +1,131 @@ +$NetBSD: patch-ag,v 1.1 2000/01/17 16:02:34 jlam Exp $ + +--- speaker.c.orig Tue Sep 14 05:53:42 1999 ++++ speaker.c Sat Jan 15 12:46:06 2000 +@@ -10,6 +10,10 @@ + #include "speakfree.h" + #include "version.h" + ++#ifndef SOUNDDIR ++#define SOUNDDIR ++#endif ++ + static int audiok = FALSE; /* Audio initialised flag */ + static int audiotime = 0; /* Audio timeout counter */ + static int debugging = FALSE; /* Debugging enabled */ +@@ -22,7 +26,9 @@ + static char deskey[9] = ""; /* DES key, if any */ + static char rtpdeskey[9] = ""; /* RTP DES key, if any */ + static char vatdeskey[9] = ""; /* VAT DES key, if any */ ++#ifdef USE_IDEA + static char ideakey[17] = ""; /* IDEA key, if any */ ++#endif + static char blowfish_spec = FALSE; /* Nonzero if Blowfish key specified */ + #ifdef CRYPTO + static BF_KEY blowfishkey; /* Blowfish key */ +@@ -53,7 +59,7 @@ + static char *replyfile = NULL; /* Reply file pathname */ + static char *replycmdexe = NULL; + static char *replycmd = "sfmike -t"; /* Default reply command */ +-static char *busysignal = "sleep 10; sfmike %s busy.au"; /* Default busy signal command */ ++static char *busysignal = "sleep 10; sfmike %s " SOUNDDIR "busy.au"; /* Default busy signal command */ + static int busytimeout = 60 * 1000000L; /* Busy signal timeout interval */ + static int dobusy = FALSE; /* Reject calls when busy ? */ + #ifdef HALF_DUPLEX +@@ -261,17 +267,17 @@ + MD5Init(&md5c); + MD5Update(&md5c, s, strlen(s)); + MD5Final(md5key1, &md5c); +-#ifdef CRYPTO ++#if defined(CRYPTO) && defined(USE_IDEA) + init_idearand(md5key, md5key1, time(NULL)); + #endif + for (j = 0; j < 16; j++) { +-#ifdef CRYPTO ++#if defined(CRYPTO) && defined(USE_IDEA) + key[j] = idearand(); + #else + key[j] = md5key[j] ^ md5key1[j]; + #endif + } +-#ifdef CRYPTO ++#if defined(CRYPTO) && defined(USE_IDEA) + close_idearand(); + #endif + } +@@ -533,6 +539,7 @@ + an idle message, though, and tweak the timeout so we do this + only once. */ + ++#ifdef USE_IDEA + if (c->pgpkey[0] == 0) { + if (l == NULL) { + conn = n; +@@ -541,6 +548,7 @@ + } + free(c); + } ++#endif + } else { + int makereq = FALSE; + +@@ -796,6 +804,7 @@ + } + } + ++#ifdef USE_IDEA + if ((msg->compression & fEncPGP) && c->pgpkey[0]) { + unsigned short iv[4]; + LONG slen = (len + 7) & (~7); +@@ -809,6 +818,7 @@ + ideacfb(val, slen); + close_idea(); + } ++#endif + + if ((msg->compression & fEncBF) && blowfish_spec) { + unsigned char iv[8]; +@@ -822,6 +832,7 @@ + slen, &blowfishkey, iv, BF_DECRYPT); + } + ++#ifdef USE_IDEA + if ((msg->compression & fEncIDEA) && ideakey[0]) { + unsigned short iv[4]; + LONG slen = (len + 7) & (~7); +@@ -835,6 +846,7 @@ + ideacfb(val, slen); + close_idea(); + } ++#endif + + if ((msg->compression & fEncDES) && deskey[0]) { + int i; +@@ -1211,7 +1223,7 @@ + } + break; + +-#ifdef CRYPTO ++#if defined(CRYPTO) && defined(USE_IDEA) + case 'I': /* -Ikey -- Set IDEA key */ + if (strlen(op + 1) == 0) { + ideakey[0] = FALSE; +@@ -1660,7 +1672,9 @@ + + newconn = TRUE; + c->con_next = conn; ++#ifdef USE_IDEA + c->pgpkey[0] = FALSE; ++#endif + bzero(c->keymd5, 16); + c->con_uname[0] = c->con_email[0] = 0; + #ifndef CRYPTO +@@ -2496,7 +2510,7 @@ + } + + +-#ifdef CRYPTO ++#if defined(CRYPTO) && defined(USE_IDEA) + if ((sb.compression & fKeyPGP)) { + char cmd[256], f[40], kmd[16]; + FILE *kfile; diff --git a/net/speakfreely/patches/patch-ah b/net/speakfreely/patches/patch-ah new file mode 100644 index 00000000000..7aea43d8852 --- /dev/null +++ b/net/speakfreely/patches/patch-ah @@ -0,0 +1,23 @@ +$NetBSD: patch-ah,v 1.1 2000/01/17 16:02:34 jlam Exp $ + +--- speakfree.h.orig Tue Sep 14 08:17:32 1999 ++++ speakfree.h Sat Jan 15 11:59:59 2000 +@@ -20,6 +20,18 @@ + #define _BSD_SIGNALS + #endif + ++/* ++ * NetBSD is cross-platform, so determine endianness from machine-specific ++ * header files. ++ */ ++#if defined(__NetBSD__) ++#include /* needed for NetBSD <= 1.4.x */ ++#include ++#if BYTE_ORDER == LITTLE_ENDIAN ++#define M_LITTLE_ENDIAN ++#endif ++#endif /* __NetBSD__ */ ++ + #include + #include + #include diff --git a/net/speakfreely/patches/patch-ai b/net/speakfreely/patches/patch-ai new file mode 100644 index 00000000000..d45d3cb81d9 --- /dev/null +++ b/net/speakfreely/patches/patch-ai @@ -0,0 +1,22 @@ +$NetBSD: patch-ai,v 1.1 2000/01/17 16:02:34 jlam Exp $ + +--- sfmike.1.orig Mon Sep 13 10:12:50 1999 ++++ sfmike.1 Mon Jan 17 01:28:20 2000 +@@ -391,6 +391,8 @@ + to exchange keys with other parties, the + fundamental security of your voice link rests upon the IDEA + algorithm. ++This options is not available unless speakfreely was compiled ++to support IDEA. + .TP + .BI \-k key + The specified +@@ -820,6 +822,8 @@ + .BR pgp , + as long as you're entitled to use that program, you can enjoy the + convenience of public key exchange of session keys for audio as well. ++This options is not available unless speakfreely was compiled ++to support IDEA. + .SH FILES + On most Unix machines audio is read from the + .B /dev/audio -- cgit v1.2.3