aboutsummaryrefslogtreecommitdiffstats
path: root/security/isakmpd
diff options
context:
space:
mode:
authorfeld <feld@FreeBSD.org>2015-12-19 01:53:40 +0800
committerfeld <feld@FreeBSD.org>2015-12-19 01:53:40 +0800
commit0bf0ddcf43499a09987adf677ac1738338f41c14 (patch)
treee6f7adef1f712a117d526fb4b84ff5d736f546f3 /security/isakmpd
parentac93b0923c11fb73c466f030f14381aa5d6a71eb (diff)
downloadfreebsd-ports-gnome-0bf0ddcf43499a09987adf677ac1738338f41c14.tar.gz
freebsd-ports-gnome-0bf0ddcf43499a09987adf677ac1738338f41c14.tar.zst
freebsd-ports-gnome-0bf0ddcf43499a09987adf677ac1738338f41c14.zip
security/isakmpd: Fix building with libressl
PR: 198535
Diffstat (limited to 'security/isakmpd')
-rw-r--r--security/isakmpd/files/patch-crypto.c82
-rw-r--r--security/isakmpd/files/patch-crypto.h11
2 files changed, 93 insertions, 0 deletions
diff --git a/security/isakmpd/files/patch-crypto.c b/security/isakmpd/files/patch-crypto.c
new file mode 100644
index 000000000000..2a10b2b31c08
--- /dev/null
+++ b/security/isakmpd/files/patch-crypto.c
@@ -0,0 +1,82 @@
+--- crypto.c.orig 2004-06-14 11:55:41.000000000 +0200
++++ crypto.c 2015-02-28 13:23:13.232107608 +0100
+@@ -100,7 +100,7 @@
+
+ /* Hmm, the function prototypes for des are really dumb */
+ #ifdef __OpenBSD__
+-#define DC (des_cblock *)
++#define DC (DES_cblock *)
+ #else
+ #define DC (void *)
+ #endif
+@@ -109,8 +109,8 @@
+ 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 */
+- des_set_odd_parity(DC key);
+- switch (des_set_key(DC key, ks->ks_des[0])) {
++ DES_set_odd_parity(DC key);
++ switch (DES_set_key(DC key, &ks->ks_des[0])) {
+ case -2:
+ return EWEAKKEY;
+ default:
+@@ -121,14 +121,14 @@
+ void
+ des1_encrypt(struct keystate *ks, u_int8_t *d, u_int16_t len)
+ {
+- des_cbc_encrypt(DC d, DC d, len, ks->ks_des[0], DC ks->riv,
++ DES_cbc_encrypt(DC d, DC d, len, &ks->ks_des[0], DC ks->riv,
+ DES_ENCRYPT);
+ }
+
+ void
+ des1_decrypt(struct keystate *ks, u_int8_t *d, u_int16_t len)
+ {
+- des_cbc_encrypt(DC d, DC d, len, ks->ks_des[0], DC ks->riv,
++ DES_cbc_encrypt(DC d, DC d, len, &ks->ks_des[0], DC ks->riv,
+ DES_DECRYPT);
+ }
+
+@@ -136,14 +136,14 @@
+ enum cryptoerr
+ des3_init(struct keystate *ks, u_int8_t *key, u_int16_t len)
+ {
+- des_set_odd_parity(DC key);
+- des_set_odd_parity(DC(key + 8));
+- des_set_odd_parity(DC(key + 16));
++ 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]);
++ 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]);
+
+ return EOKAY;
+ }
+@@ -154,8 +154,8 @@
+ u_int8_t iv[MAXBLK];
+
+ memcpy(iv, ks->riv, ks->xf->blocksize);
+- 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);
++ 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);
+ }
+
+ void
+@@ -164,8 +164,8 @@
+ u_int8_t iv[MAXBLK];
+
+ memcpy(iv, ks->riv, ks->xf->blocksize);
+- 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);
++ 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);
+ }
+ #undef DC
+ #endif /* USE_TRIPLEDES */
diff --git a/security/isakmpd/files/patch-crypto.h b/security/isakmpd/files/patch-crypto.h
new file mode 100644
index 000000000000..c0f26b65b1f3
--- /dev/null
+++ b/security/isakmpd/files/patch-crypto.h
@@ -0,0 +1,11 @@
+--- crypto.h.orig 2004-05-14 10:42:56.000000000 +0200
++++ crypto.h 2015-02-28 13:01:05.491296206 +0100
+@@ -108,7 +108,7 @@
+ u_int8_t iv2[MAXBLK];
+ u_int8_t *riv, *liv;
+ union {
+- des_key_schedule desks[3];
++ DES_key_schedule desks[3];
+ #ifdef USE_BLOWFISH
+ blf_ctx blfks;
+ #endif