diff --git a/sys/rump/dev/lib/libopencrypto/Makefile b/sys/rump/dev/lib/libopencrypto/Makefile new file mode 100644 index 000000000000..9ee00f0a7d77 --- /dev/null +++ b/sys/rump/dev/lib/libopencrypto/Makefile @@ -0,0 +1,37 @@ +# $NetBSD: Makefile,v 1.1 2014/01/14 17:15:09 pgoyette Exp $ +# + +.PATH: ${.CURDIR}/../../../../opencrypto + +LIB= rumpdev_opencrypto + +SRCS= component.c + +# Sources for crypto framework + +SRCS+= criov.c +SRCS+= crypto.c +SRCS+= xform.c + +# Sources for crypto device, for userland access + +SRCS+= cryptodev.c +SRCS+= ocryptodev.c + +# Sources for swcrypto device to access opencrypto software algorithms +# (Other algorithms are in rumpkern_crypto) + +SRCS+= aesxcbcmac.c +SRCS+= cryptosoft.c +SRCS+= deflate.c +SRCS+= gmac.c + +.PATH: ${.CURDIR}/../../../../net + +SRCS+= zlib.c + +CPPFLAGS+= -I${RUMPTOP}/librump/rumpvfs +CPPFLAGS+= -DCOMPAT_50 + +.include +.include diff --git a/sys/rump/dev/lib/libopencrypto/component.c b/sys/rump/dev/lib/libopencrypto/component.c new file mode 100644 index 000000000000..2265b836a83b --- /dev/null +++ b/sys/rump/dev/lib/libopencrypto/component.c @@ -0,0 +1,69 @@ +/* $NetBSD: component.c,v 1.1 2014/01/14 17:15:09 pgoyette Exp $ */ + +/* + * Copyright (c) 2009 Antti Kantee. All Rights Reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS + * OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#include +__KERNEL_RCSID(0, "$NetBSD: component.c,v 1.1 2014/01/14 17:15:09 pgoyette Exp $"); + +#include +#include +#include +#include +#include +#include + +#include "rump_private.h" +#include "rump_dev_private.h" +#include "rump_vfs_private.h" + +void cryptoattach(int); +void swcryptoattach(int); +void crypto_init(void); + +RUMP_COMPONENT(RUMP_COMPONENT_DEV) +{ + extern const struct cdevsw crypto_cdevsw; + devmajor_t bmaj, cmaj; + int error; + + /* go, mydevfs */ + bmaj = cmaj = -1; + + if ((error = devsw_attach("crypto", NULL, &bmaj, + &crypto_cdevsw, &cmaj)) != 0) + panic("cannot attach crypto: %d", error); + + if ((error = rump_vfs_makeonedevnode(S_IFCHR, "/dev/crypto", + cmaj, 0)) != 0) + panic("cannot create /dev/crypto: %d", error); + + /* + * Initialize OpenCrypto and its pseudo-devices here + */ + crypto_init(); + rump_pdev_add(cryptoattach, 1); + rump_pdev_add(swcryptoattach, 0); +} diff --git a/sys/rump/dev/lib/libopencrypto/shlib_version b/sys/rump/dev/lib/libopencrypto/shlib_version new file mode 100644 index 000000000000..6ed92a3cf3b4 --- /dev/null +++ b/sys/rump/dev/lib/libopencrypto/shlib_version @@ -0,0 +1,4 @@ +# $NetBSD: shlib_version,v 1.1 2014/01/14 17:15:09 pgoyette Exp $ +# +major=0 +minor=0