Module Name:    src
Committed By:   drochner
Date:           Sat Feb 19 16:26:34 UTC 2011

Modified Files:
        src/sys/opencrypto: cryptodev.c files.opencrypto ocryptodev.c
            ocryptodev.h
Added Files:
        src/sys/opencrypto: cryptodev_internal.h

Log Message:
make the compatibility code conditional on COMPAT_50


To generate a diff of this commit:
cvs rdiff -u -r1.54 -r1.55 src/sys/opencrypto/cryptodev.c
cvs rdiff -u -r0 -r1.1 src/sys/opencrypto/cryptodev_internal.h
cvs rdiff -u -r1.20 -r1.21 src/sys/opencrypto/files.opencrypto
cvs rdiff -u -r1.2 -r1.3 src/sys/opencrypto/ocryptodev.c
cvs rdiff -u -r1.1 -r1.2 src/sys/opencrypto/ocryptodev.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/opencrypto/cryptodev.c
diff -u src/sys/opencrypto/cryptodev.c:1.54 src/sys/opencrypto/cryptodev.c:1.55
--- src/sys/opencrypto/cryptodev.c:1.54	Fri Feb 18 19:56:01 2011
+++ src/sys/opencrypto/cryptodev.c	Sat Feb 19 16:26:34 2011
@@ -1,4 +1,4 @@
-/*	$NetBSD: cryptodev.c,v 1.54 2011/02/18 19:56:01 drochner Exp $ */
+/*	$NetBSD: cryptodev.c,v 1.55 2011/02/19 16:26:34 drochner Exp $ */
 /*	$FreeBSD: src/sys/opencrypto/cryptodev.c,v 1.4.2.4 2003/06/03 00:09:02 sam Exp $	*/
 /*	$OpenBSD: cryptodev.c,v 1.53 2002/07/10 22:21:30 mickey Exp $	*/
 
@@ -64,7 +64,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: cryptodev.c,v 1.54 2011/02/18 19:56:01 drochner Exp $");
+__KERNEL_RCSID(0, "$NetBSD: cryptodev.c,v 1.55 2011/02/19 16:26:34 drochner Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -87,8 +87,9 @@
 #include <sys/stat.h>
 
 #include "opt_ocf.h"
+#include "opt_compat_netbsd.h"
 #include <opencrypto/cryptodev.h>
-#include <opencrypto/ocryptodev.h>
+#include <opencrypto/cryptodev_internal.h>
 #include <opencrypto/xform.h>
 
 struct csession {
@@ -184,7 +185,9 @@
     int);
 static int	cryptodev_getstatus(struct fcrypt *, struct crypt_result *);
 
+#ifdef COMPAT_50
 extern int	ocryptof_ioctl(struct file *, u_long, void *);
+#endif
 
 /*
  * sysctl-able control variables for /dev/crypto now defined in crypto.c:
@@ -399,8 +402,12 @@
 		error = cryptodev_getstatus(fcr, (struct crypt_result *)data); 
 		break;
 	default:
+#ifdef COMPAT_50
 		/* Check for backward compatible commands */
 		error = ocryptof_ioctl(fp, cmd, data);
+#else
+		return EINVAL;
+#endif
 	}
 	return error;
 }

Index: src/sys/opencrypto/files.opencrypto
diff -u src/sys/opencrypto/files.opencrypto:1.20 src/sys/opencrypto/files.opencrypto:1.21
--- src/sys/opencrypto/files.opencrypto:1.20	Wed Mar 25 01:26:13 2009
+++ src/sys/opencrypto/files.opencrypto	Sat Feb 19 16:26:34 2011
@@ -1,4 +1,4 @@
-#	$NetBSD: files.opencrypto,v 1.20 2009/03/25 01:26:13 darran Exp $
+#	$NetBSD: files.opencrypto,v 1.21 2011/02/19 16:26:34 drochner Exp $
 #
 #
 
@@ -23,6 +23,6 @@
 # (and thus crypto hardware accelerators).
 defpseudo crypto: opencrypto
 file	opencrypto/cryptodev.c		crypto
-file	opencrypto/ocryptodev.c		crypto
+file	opencrypto/ocryptodev.c		crypto & compat_50
 
 defflag opt_ocf.h	CRYPTO_DEBUG CRYPTO_TIMING

Index: src/sys/opencrypto/ocryptodev.c
diff -u src/sys/opencrypto/ocryptodev.c:1.2 src/sys/opencrypto/ocryptodev.c:1.3
--- src/sys/opencrypto/ocryptodev.c:1.2	Thu Mar 26 01:52:24 2009
+++ src/sys/opencrypto/ocryptodev.c	Sat Feb 19 16:26:34 2011
@@ -1,4 +1,4 @@
-/*	$NetBSD: ocryptodev.c,v 1.2 2009/03/26 01:52:24 mrg Exp $ */
+/*	$NetBSD: ocryptodev.c,v 1.3 2011/02/19 16:26:34 drochner Exp $ */
 /*	$FreeBSD: src/sys/opencrypto/cryptodev.c,v 1.4.2.4 2003/06/03 00:09:02 sam Exp $	*/
 /*	$OpenBSD: cryptodev.c,v 1.53 2002/07/10 22:21:30 mickey Exp $	*/
 
@@ -69,7 +69,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: ocryptodev.c,v 1.2 2009/03/26 01:52:24 mrg Exp $");
+__KERNEL_RCSID(0, "$NetBSD: ocryptodev.c,v 1.3 2011/02/19 16:26:34 drochner Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -92,6 +92,7 @@
 
 #include "opt_ocf.h"
 #include <opencrypto/cryptodev.h>
+#include <opencrypto/cryptodev_internal.h>
 #include <opencrypto/ocryptodev.h>
 #include <opencrypto/xform.h>
 

Index: src/sys/opencrypto/ocryptodev.h
diff -u src/sys/opencrypto/ocryptodev.h:1.1 src/sys/opencrypto/ocryptodev.h:1.2
--- src/sys/opencrypto/ocryptodev.h:1.1	Wed Mar 25 01:26:13 2009
+++ src/sys/opencrypto/ocryptodev.h	Sat Feb 19 16:26:34 2011
@@ -1,4 +1,4 @@
-/*	$NetBSD: ocryptodev.h,v 1.1 2009/03/25 01:26:13 darran Exp $ */
+/*	$NetBSD: ocryptodev.h,v 1.2 2011/02/19 16:26:34 drochner Exp $ */
 /*	$FreeBSD: src/sys/opencrypto/cryptodev.h,v 1.2.2.6 2003/07/02 17:04:50 sam Exp $	*/
 /*	$OpenBSD: cryptodev.h,v 1.33 2002/07/17 23:52:39 art Exp $	*/
 
@@ -163,20 +163,11 @@
 	struct ocrypt_n_op *	reqs;	/* where to get them */
 };
 
-struct csession;
-struct fcrypt;
-
 #define	OCIOCGSESSION	_IOWR('c', 101, struct osession_op)
 #define	OCIOCNGSESSION	_IOWR('c', 106, struct ocrypt_sgop)
 #define OCIOCCRYPT	_IOWR('c', 103, struct ocrypt_op)
 #define OCIOCNCRYPTM	_IOWR('c', 107, struct ocrypt_mop)
 
-int cryptodev_op(struct csession *, struct crypt_op *, struct lwp *);
-int cryptodev_mop(struct fcrypt *, struct crypt_n_op *, int, struct lwp *);
-int cryptodev_session(struct fcrypt *, struct session_op *);
-int cryptodev_msession(struct fcrypt *, struct session_n_op *, int);
-struct csession *cryptodev_csefind(struct fcrypt *fcr, u_int ses);
-
 int ocryptof_ioctl(struct file *, u_long, void *);
 
 #endif /* _CRYPTO_OCRYPTODEV_H_ */

Added files:

Index: src/sys/opencrypto/cryptodev_internal.h
diff -u /dev/null src/sys/opencrypto/cryptodev_internal.h:1.1
--- /dev/null	Sat Feb 19 16:26:34 2011
+++ src/sys/opencrypto/cryptodev_internal.h	Sat Feb 19 16:26:34 2011
@@ -0,0 +1,10 @@
+/* $NetBSD: cryptodev_internal.h,v 1.1 2011/02/19 16:26:34 drochner Exp $ */
+
+/* exported to compat code, not for consumers */
+
+struct csession;
+int cryptodev_op(struct csession *, struct crypt_op *, struct lwp *);
+int cryptodev_mop(struct fcrypt *, struct crypt_n_op *, int, struct lwp *);
+int cryptodev_session(struct fcrypt *, struct session_op *);
+int cryptodev_msession(struct fcrypt *, struct session_n_op *, int);
+struct csession *cryptodev_csefind(struct fcrypt *fcr, u_int ses);

Reply via email to