$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;