X-Git-Url: https://git.rohieb.name/openwrt.git/blobdiff_plain/384dff5eef7eabe084e7b5584388eaee88f2d3bc..340372534c675c7f78be83cfc0a690fb0ddcad92:/target/linux/generic/files/crypto/ocf/cryptodev.c diff --git a/target/linux/generic/files/crypto/ocf/cryptodev.c b/target/linux/generic/files/crypto/ocf/cryptodev.c index c1e9140a0..2ee3618cd 100644 --- a/target/linux/generic/files/crypto/ocf/cryptodev.c +++ b/target/linux/generic/files/crypto/ocf/cryptodev.c @@ -39,7 +39,8 @@ __FBSDID("$FreeBSD: src/sys/opencrypto/cryptodev.c,v 1.34 2007/05/09 19:37:02 gnn Exp $"); */ -#ifndef AUTOCONF_INCLUDED +#include +#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,38) && !defined(AUTOCONF_INCLUDED) #include #endif #include @@ -57,7 +58,6 @@ __FBSDID("$FreeBSD: src/sys/opencrypto/cryptodev.c,v 1.34 2007/05/09 19:37:02 gn #include #include #include -#include #include #include @@ -977,10 +977,16 @@ cryptodev_open(struct inode *inode, struct file *filp) struct fcrypt *fcr; dprintk("%s()\n", __FUNCTION__); +#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,35) + /* + * on 2.6.35 private_data points to a miscdevice structure, we override + * it, which is currently safe to do. + */ if (filp->private_data) { - printk("cryptodev: Private data already exists !\n"); - return(0); + printk("cryptodev: Private data already exists - %p!\n", filp->private_data); + return(-ENODEV); } +#endif fcr = kmalloc(sizeof(*fcr), GFP_KERNEL); if (!fcr) {