head 1.2; access; symbols pkgsrc-2013Q2:1.2.0.54 pkgsrc-2013Q2-base:1.2 pkgsrc-2012Q4:1.2.0.52 pkgsrc-2012Q4-base:1.2 pkgsrc-2011Q4:1.2.0.50 pkgsrc-2011Q4-base:1.2 pkgsrc-2011Q2:1.2.0.48 pkgsrc-2011Q2-base:1.2 pkgsrc-2009Q4:1.2.0.46 pkgsrc-2009Q4-base:1.2 pkgsrc-2008Q4:1.2.0.44 pkgsrc-2008Q4-base:1.2 pkgsrc-2008Q3:1.2.0.42 pkgsrc-2008Q3-base:1.2 cube-native-xorg:1.2.0.40 cube-native-xorg-base:1.2 pkgsrc-2008Q2:1.2.0.38 pkgsrc-2008Q2-base:1.2 pkgsrc-2008Q1:1.2.0.36 pkgsrc-2008Q1-base:1.2 pkgsrc-2007Q4:1.2.0.34 pkgsrc-2007Q4-base:1.2 pkgsrc-2007Q3:1.2.0.32 pkgsrc-2007Q3-base:1.2 pkgsrc-2007Q2:1.2.0.30 pkgsrc-2007Q2-base:1.2 pkgsrc-2007Q1:1.2.0.28 pkgsrc-2007Q1-base:1.2 pkgsrc-2006Q4:1.2.0.26 pkgsrc-2006Q4-base:1.2 pkgsrc-2006Q3:1.2.0.24 pkgsrc-2006Q3-base:1.2 pkgsrc-2006Q2:1.2.0.22 pkgsrc-2006Q2-base:1.2 pkgsrc-2006Q1:1.2.0.20 pkgsrc-2006Q1-base:1.2 pkgsrc-2005Q4:1.2.0.18 pkgsrc-2005Q4-base:1.2 pkgsrc-2005Q3:1.2.0.16 pkgsrc-2005Q3-base:1.2 pkgsrc-2005Q2:1.2.0.14 pkgsrc-2005Q2-base:1.2 pkgsrc-2005Q1:1.2.0.12 pkgsrc-2005Q1-base:1.2 pkgsrc-2004Q4:1.2.0.10 pkgsrc-2004Q4-base:1.2 pkgsrc-2004Q3:1.2.0.8 pkgsrc-2004Q3-base:1.2 pkgsrc-2004Q2:1.2.0.6 pkgsrc-2004Q2-base:1.2 pkgsrc-2004Q1:1.2.0.4 pkgsrc-2004Q1-base:1.2 pkgsrc-2003Q4:1.2.0.2 pkgsrc-2003Q4-base:1.2; locks; strict; comment @# @; 1.2 date 2003.10.10.12.56.18; author agc; state dead; branches; next 1.1; 1.1 date 2003.09.21.08.02.24; author jmc; state Exp; branches; next ; desc @@ 1.2 log @Update to isakmpd version 20030903. No changelog available, but many bugs fixed, and these sources will compile with gcc-3.3.1 (well, after I tweaked them). With thanks to Christoph Badura for most of this work, I merely did the gcc-3.3.1 patching. @ text @$NetBSD: patch-ai,v 1.1 2003/09/21 08:02:24 jmc Exp $ --- crypto.c.orig 2003-09-21 02:46:15.000000000 +0000 +++ crypto.c 2003-09-21 02:54:49.000000000 +0000 @@@@ -99,8 +99,13 @@@@ des1_init (struct keystate *ks, u_int8_t *key, u_int16_t len) { /* des_set_key returns -1 for parity problems, and -2 for weak keys */ +#if OPENSSL_VERSION_NUMBER >= 0x0090702fL + DES_set_odd_parity (DC key); + switch (DES_set_key (DC key, &ks->ks_des[0])) +#else des_set_odd_parity (DC key); switch (des_set_key (DC key, ks->ks_des[0])) +#endif { case -2: return EWEAKKEY; @@@@ -112,19 +117,37 @@@@ void des1_encrypt (struct keystate *ks, u_int8_t *d, u_int16_t len) { +#if OPENSSL_VERSION_NUMBER >= 0x0090702fL + DES_cbc_encrypt (DC d, DC d, len, &ks->ks_des[0], DC ks->riv, DES_ENCRYPT); +#else des_cbc_encrypt (DC d, DC d, len, ks->ks_des[0], DC ks->riv, DES_ENCRYPT); +#endif } void des1_decrypt (struct keystate *ks, u_int8_t *d, u_int16_t len) { +#if OPENSSL_VERSION_NUMBER >= 0x0090702fL + DES_cbc_encrypt (DC d, DC d, len, &ks->ks_des[0], DC ks->riv, DES_DECRYPT); +#else des_cbc_encrypt (DC d, DC d, len, ks->ks_des[0], DC ks->riv, DES_DECRYPT); +#endif } #ifdef USE_TRIPLEDES enum cryptoerr des3_init (struct keystate *ks, u_int8_t *key, u_int16_t len) { +#if OPENSSL_VERSION_NUMBER >= 0x0090702fL + DES_set_odd_parity (DC key); + DES_set_odd_parity (DC (key + 8)); + DES_set_odd_parity (DC (key + 16)); + + /* As of the draft Tripe-DES does not check for weak keys */ + DES_set_key (DC key, &ks->ks_des[0]); + DES_set_key (DC (key + 8), &ks->ks_des[1]); + DES_set_key (DC (key + 16), &ks->ks_des[2]); +#else des_set_odd_parity (DC key); des_set_odd_parity (DC (key + 8)); des_set_odd_parity (DC (key + 16)); @@@@ -133,6 +156,7 @@@@ des_set_key (DC key, ks->ks_des[0]); des_set_key (DC (key + 8), ks->ks_des[1]); des_set_key (DC (key + 16), ks->ks_des[2]); +#endif return EOKAY; } @@@@ -143,8 +167,13 @@@@ u_int8_t iv[MAXBLK]; memcpy (iv, ks->riv, ks->xf->blocksize); +#if OPENSSL_VERSION_NUMBER >= 0x0090702fL + DES_ede3_cbc_encrypt (DC data, DC data, len, &ks->ks_des[0], &ks->ks_des[1], + &ks->ks_des[2], DC iv, DES_ENCRYPT); +#else des_ede3_cbc_encrypt (DC data, DC data, len, ks->ks_des[0], ks->ks_des[1], ks->ks_des[2], DC iv, DES_ENCRYPT); +#endif } void @@@@ -153,8 +182,13 @@@@ u_int8_t iv[MAXBLK]; memcpy (iv, ks->riv, ks->xf->blocksize); +#if OPENSSL_VERSION_NUMBER >= 0x0090702fL + DES_ede3_cbc_encrypt (DC data, DC data, len, &ks->ks_des[0], &ks->ks_des[1], + &ks->ks_des[2], DC iv, DES_DECRYPT); +#else des_ede3_cbc_encrypt (DC data, DC data, len, ks->ks_des[0], ks->ks_des[1], ks->ks_des[2], DC iv, DES_DECRYPT); +#endif } #undef DC #endif /* USE_TRIPLEDES */ @ 1.1 log @Add some patches so if using openssl >= 0.9.7 the new des API is used @ text @d1 1 a1 1 $NetBSD$ @