aboutsummaryrefslogtreecommitdiff
path: root/sys/netinet6
diff options
context:
space:
mode:
authorHajimu UMEMOTO <ume@FreeBSD.org>2003-10-13 19:26:08 +0000
committerHajimu UMEMOTO <ume@FreeBSD.org>2003-10-13 19:26:08 +0000
commit66c7fe40566e1cc1c9a64d0c3820e46ccc8b9ae7 (patch)
treef318db0e1b9e14c70285efe99a0cf03bceaf0650 /sys/netinet6
parentb42ac57f4f2c183fda94189f1516ae3c1eff851f (diff)
downloadsrc-66c7fe40566e1cc1c9a64d0c3820e46ccc8b9ae7.tar.gz
src-66c7fe40566e1cc1c9a64d0c3820e46ccc8b9ae7.zip
use BF_ecb_encrypt().
Obtained from: KAME
Notes
Notes: svn path=/head/; revision=121072
Diffstat (limited to 'sys/netinet6')
-rw-r--r--sys/netinet6/esp_core.c28
1 files changed, 6 insertions, 22 deletions
diff --git a/sys/netinet6/esp_core.c b/sys/netinet6/esp_core.c
index bfb0713a22c7..6fe977156ad9 100644
--- a/sys/netinet6/esp_core.c
+++ b/sys/netinet6/esp_core.c
@@ -475,16 +475,8 @@ esp_blowfish_blockdecrypt(algo, sav, s, d)
u_int8_t *s;
u_int8_t *d;
{
- /* HOLY COW! BF_decrypt() takes values in host byteorder */
- BF_LONG t[2];
-
- bcopy(s, t, sizeof(t));
- t[0] = ntohl(t[0]);
- t[1] = ntohl(t[1]);
- BF_decrypt(t, (BF_KEY *)sav->sched);
- t[0] = htonl(t[0]);
- t[1] = htonl(t[1]);
- bcopy(t, d, sizeof(t));
+
+ BF_ecb_encrypt(s, d, (BF_KEY *)sav->sched, 0);
return 0;
}
@@ -495,16 +487,8 @@ esp_blowfish_blockencrypt(algo, sav, s, d)
u_int8_t *s;
u_int8_t *d;
{
- /* HOLY COW! BF_encrypt() takes values in host byteorder */
- BF_LONG t[2];
-
- bcopy(s, t, sizeof(t));
- t[0] = ntohl(t[0]);
- t[1] = ntohl(t[1]);
- BF_encrypt(t, (BF_KEY *)sav->sched);
- t[0] = htonl(t[0]);
- t[1] = htonl(t[1]);
- bcopy(t, d, sizeof(t));
+
+ BF_ecb_encrypt(s, d, (BF_KEY *)sav->sched, 1);
return 0;
}
@@ -591,7 +575,7 @@ esp_3des_blockdecrypt(algo, sav, s, d)
/* assumption: d has a good alignment */
p = (des_key_schedule *)sav->sched;
bcopy(s, d, sizeof(DES_LONG) * 2);
- des_ecb3_encrypt((des_cblock *)d, (des_cblock *)d,
+ des_ecb3_encrypt((des_cblock *)d, (des_cblock *)d,
p[0], p[1], p[2], DES_DECRYPT);
return 0;
}
@@ -608,7 +592,7 @@ esp_3des_blockencrypt(algo, sav, s, d)
/* assumption: d has a good alignment */
p = (des_key_schedule *)sav->sched;
bcopy(s, d, sizeof(DES_LONG) * 2);
- des_ecb3_encrypt((des_cblock *)d, (des_cblock *)d,
+ des_ecb3_encrypt((des_cblock *)d, (des_cblock *)d,
p[0], p[1], p[2], DES_ENCRYPT);
return 0;
}