Commit Graph

14 Commits

Author SHA1 Message Date
martin
cd22f25e6f Move TNF licenses to 2 clause form 2008-05-02 18:11:04 +00:00
tls
597ee710c7 Extend crypto.4 interface:
* Asynchronous operation with result retrieval via select/poll
	* Mutliple-request submit/retrieve ioctls
	* Mutliple-session create-destroy ioctls

Revise/rewrite crypto.4 manual page.  It should now be much easier to write
new applications to this API.

Measured performance for trivial requests: 84,000 very short modular math
operations/sec, 120,000 very short md5 hashes per sec (with a hardware
accellerator of moderate performance but very low latency, whose driver
will be contributed at a later date).

Contributed to TNF by Coyote Point Systems, Inc.
2008-04-10 22:48:42 +00:00
tls
49444bc037 Make /dev/crypto properly cloning. Leave CRIOGET in place but note that
it is deprecated, no longer required, and will be removed in a future
release of NetBSD.

Dramatically reduce the size of the session structure by removing an
IOV_MAX array of iovecs where only the first was use.  Saves an 8k
bzero on each session creation.

Convert fixed-size allocations in cryptodev.c to pools.
2008-01-26 00:04:27 +00:00
tls
9675caff5e Some minor opencrypto fixes, one with a major performance impact for
OpenSSL:

1) Fix extremely misleading text in crypto.4 manual page so it does not
   appear to claim that a new cloned file descriptor is required for every
   session.

2) Fix severe performance problem (and fd leak!) in openssl cryptodev
   engine resulting from misunderstanding probably caused by said manual
   page text.

3) Check for session-ID wraparound in kernel cryptodev provider.  Also,
   start allocating sessions at 1, not 0 -- this will be necessary when
   we add ioctls for the creation of multiple sessions at once, so we
   can tell which if any creations failed.
2008-01-25 07:09:56 +00:00
elad
04ced3c62f PR/30355: der Mouse: crypto(4) gets ioctl names wrong
Patch applied, thanks!
2006-09-23 20:38:51 +00:00
riz
ef1e9e4fce Since the swcrypto pseudo-device is now needed for using the crypto
framework without a hardware accelerator card, make sure it has
some accessible documentation.
2006-03-28 20:50:57 +00:00
nathanw
e8e89790f0 The bind-session ioctl is CIOCGSESSION, not CRIOCGSESSION. 2005-04-14 18:52:23 +00:00
nathanw
c700f1d7a3 CIOCCRYPT takes a "struct crypt_op *", not a "struct crpyto_op *". 2005-04-13 16:28:06 +00:00
nathanw
1733290d22 ".XR" should be ".Xr". 2005-03-28 22:07:22 +00:00
jonathan
5267884365 Make new hifn(4) and ubsec(4) manual pages visible to system, after
review, proofing, and bug-fixing by Thomas Klausner (wiz):
1. add hifn(40 and ubsec(4) to share/man/man4/Makefile and the distrib set lists.
2. Restore commented-out cross-references to hifn(40 and ubsec(4) in crypto(4).

No change made to hifn.4 or ubsec.4; commit forced for cross-reference
and for pullup-request purposes.
2004-04-29 19:42:29 +00:00
wiz
be2b474fba Fix Dd argument; new sentence, new line; fix a typo; remove superfluous
.Pp before/after section headers; replace <> with \*[Lt] and \*[Gt] resp.
for HTML; mark up COP_*; add a missing word ("if"); comment out references
to hifn(4) and ubsec(4), which we don't have; sort sections; add missing
word ("in").
2004-04-28 15:21:43 +00:00
wiz
a7f8dce68e Drop trailing white space in preparation for more changes. 2004-04-28 15:19:20 +00:00
jonathan
1162a488a6 Update synopsis to match reality: usercode has to #include <sys/time.h>,
because sys/opencrypto/cryptodev.h currently doesn't do that on behalf
of userspace code.
2004-04-27 23:42:59 +00:00
jonathan
11600006ea Commit first draft of a manpage for crypto(4), the user-mode API
to opencrypto(9).
2004-04-27 21:34:10 +00:00