Commit Graph

39 Commits

Author SHA1 Message Date
drochner 2d89c22fc7 sprinkle some #ifdef __LINT__ until C9X named union member
initialization is digested
2003-02-09 16:25:27 +00:00
itojun f2187f5675 correct panic() condition - it was backwards.
From: Rafal Boni <rafal@attbi.com>
2002-11-18 23:38:46 +00:00
itohy f2cc0d2ae5 add non-ELF .align 2002-11-12 03:03:10 +00:00
thorpej db1c1d81f9 Fix signed/unsigned comparison warnings. 2002-11-07 07:04:13 +00:00
thorpej c74bb099e4 Make the length argument of arc4_setkey() unsigned. 2002-11-07 07:03:11 +00:00
perry e4c3c3c99a /*CONTCOND*/ a sizeof comparison 2002-11-02 07:19:51 +00:00
perry 0cbafb99fa change arc4_ctx to use unsigned values -- kills lint warnings 2002-10-22 21:50:08 +00:00
thorpej 0ab79d5327 * Move config defns for the crypto algorithms into their own files.
Define an attribute for each crypto algorithm, and use that attribute
  to select the files that implement the algorithm.
* Give the "wlan" attribute a dependency on the "arc4" attribute.
* Give the "cgd" pseudo-device the "des", "blowfish", "cast128", and
  "rijndael" attributes.
* Use the new attribute-as-option-dependencies feature of config(8) to
  give the IPSEC_ESP option dependencies on the "des", "blowfish", "cast128",
  and "rijndael" attributes.
2002-10-11 01:52:04 +00:00
elric c242f201c5 Modified to avoid compiler warnings. The specific warning related
to const BF_KEY * vars, and I chose to ``fix'' it in this file
rather than elsewhere in the framework because, although the other
fix was more appropriate, nothing seems to use the code in this
file and hence the risk of disrupting other people was lower.  In
the future, the more appropriate change would be to change blowfish.h
and bf_enc.c to have functions with signatures:

BF_encrypt(BF_LONG *, const BF_KEY *);
BF_decrypt(BF_LONG *, const BF_KEY *);
2002-09-08 07:52:41 +00:00
elric b6db42eac8 Added an include of sys/types.h to get u_int32_t and so on. 2002-09-08 07:41:01 +00:00
elric 7fbd07ccbe Include <sys/types.h> to allow compilation to occur. 2002-09-07 23:35:37 +00:00
elric 29db5af4a5 repoint include file for kernel use. 2002-09-07 22:58:04 +00:00
itojun 971ec4d861 missing IV handling in CBC mode (does not affect ESP code as we have
CBC handling in sys/netinet6/esp_core.c).  sync w/kame
2002-05-24 06:28:06 +00:00
itojun 2ff9b43758 sync blowfish function prototype between i386 assembly and C.
From: YAMAMOTO Takashi <yamt@mwd.biglobe.ne.jp>
2002-02-27 01:32:17 +00:00
thorpej 9e94d2a9fe When compiling for userland, need <stdlib.h> for abort() prototype
(noticed by gcc 3.1).
2001-12-31 20:20:28 +00:00
itojun f8321e02a6 fix cast128 with shorter key length. sync with kame 2001-11-27 11:19:36 +00:00
lukem 2565646230 don't need <sys/types.h> when including <sys/param.h> 2001-11-15 09:47:59 +00:00
lukem 4f2ad95259 add RCSIDs 2001-11-13 00:56:55 +00:00
taca 9b6c5002eb Add including <stdio.h> for compiling in user land.
This should fix compile error (really warning) in src/regress/sys/crypto/des.
2001-09-09 15:52:57 +00:00
tls 6b3afc53e0 Add asm versions of blowfish and des transforms for i386.
This also involved updating the in-kernel DES functions to correspond
to the versions in our in-tree OpenSSL, because the des_SPtrans table
has changed; the asm code will not work with the old permutation table!

C and i386 asm code for the DES, 3DES, and Blowfish CBC modes is also
included; it is not currently built as the ESP processing in esp_core.c
splits the CBC operation and the cipher transform apart.  Hopefully that
will be fixed as there is a substantial performance improvement to be had
from doing so.  It will remain necessary to use the C version of the
Blowfish CBC function on some i386 machines, however, as the asm version
uses bswapl, which ony 486 and later processors have.  The DES CBC code
doesn't have this problem.

Finally, change esp_core.c to use the ecb3_encrypt function instead of
calling ecb_encrypt three times; this improves performance a bit, in
particular in the asm case.
2001-09-09 11:03:59 +00:00
tls 3d4146e21f Add asm versions of blowfish and des transforms for i386.
This also involved updating the in-kernel DES functions to correspond
to the versions in our in-tree OpenSSL, because the des_SPtrans table
has changed; the asm code will not work with the old permutation table!

C and i386 asm code for the DES, 3DES, and Blowfish CBC modes is also
included; it is not currently built as the ESP processing in esp_core.c
splits the CBC operation and the cipher transform apart.  Hopefully that
will be fixed as there is a substantial performance improvement to be had
from doing so.  It will remain necessary to use the C version of the
Blowfish CBC function on some i386 machines, however, as the asm version
uses bswapl, which ony 486 and later processors have.  The DES CBC code
doesn't have this problem.

Finally, change esp_core.c to use the ecb3_encrypt function instead of
calling ecb_encrypt three times; this improves performance a bit, in
particular in the asm case.
2001-09-09 11:00:59 +00:00
thorpej 05b5ee3074 bzero -> memset, bcopy -> memcpy 2001-07-18 16:50:27 +00:00
itojun 7925bc6220 properl y check DES weak key. KAME PR 363 2001-07-03 14:29:45 +00:00
itojun 78458be84d correct binary key material handling. sync with kame 2001-05-27 01:40:16 +00:00
itojun 00e5ad3408 remove files we no longer need/maintain. sync with kame 2001-05-27 01:03:53 +00:00
kleink 19f61e4df3 Need a memcpy() declaration. 2001-05-23 00:02:24 +00:00
kleink 5c9e69f795 Fix several alignment problems in this implementation due to its use of
word32 pointers to access data stored in word8 arrays:
* align transformation tables on 32-bit boundaries,
* align key schedule on 32-bit boundary,
* align temporaries on 32-bit boundaries,
* align plaintext and ciphertext used in round transformations on 32-bit
  boundaries.
2001-05-22 23:45:41 +00:00
itojun dc3424f555 pass key to rijndael logic as binary, not hexadecimal string.
sync with kame
2001-03-02 15:42:39 +00:00
jdolecek 522f569810 make some more constant arrays 'const' 2001-02-21 21:39:52 +00:00
itojun 7236276c18 sync with kame.
- include string.h (instead of sys/systm.h) on userland compilation.
  make compilation under src/regress/sys/crypto happier.  from minoura
- (blowfish) KNF.
2000-11-06 14:11:40 +00:00
itojun a09dcd7432 avoid assert, memcpy and memset (necessary to BSD code sharing).
sync with kame
2000-10-03 03:17:19 +00:00
itojun b7a15a9d51 $NetBSD$ 2000-10-02 17:19:15 +00:00
itojun e3eae405da rijndael logic, based on 2.4/from kame 2000-10-02 17:16:40 +00:00
itojun e24e3dffad remove a comment, which is now bogus due to the previous change.
sync with kame.
2000-08-31 14:53:48 +00:00
itojun 65fbdbe744 repair DES on LP64. past code did not interoperate with non-LP64, due to
incorrect computed results.
remove unnecessary #ifdef/#define.  sync with kame.
2000-08-31 07:33:04 +00:00
itojun 8b93101dc8 avoid unnecessary #include <sys/mbuf.h> 2000-08-31 06:59:17 +00:00
itojun 0f1649155f make the code friendly with LP64 machines.
- use u_int32_t for 32bit quantity unsigned integer type.
- s/unsigned long/BF_LONG/ (BF_LONG = u_int32_t) where appropriate.
- prototype cleanup - due to *BSD code sharing, we still are using __P().
part of PR 10918.  sync with kame.
2000-08-31 06:46:21 +00:00
onoe 793eb28211 Support WEP functions for awi driver.
arc4 implementation by Kalle Kaukonen has been added.
	define "wlan" in files.
		XXX: only awi depends on wlan for now.
	Allow authentication for adhoc (IBSS) mode.
Disable adhoc mode without bssid (mediaopt adhoc,flag0) for FH radio.
	FH cannot work without synchronization by beacons.
Align IP header for ethernet encapsulation (IFF_FLAG0) mode.
Print available access points for IFF_DEBUG.
2000-07-04 14:27:56 +00:00
thorpej 599c8087c7 Import the IPsec crypto code from netbsd-cryptosrc-intl. 2000-06-14 19:45:33 +00:00