--- a/linux/net/ipsec/ipsec_ocf.c
+++ b/linux/net/ipsec/ipsec_ocf.c
@@ -15,10 +15,12 @@
  * for more details.
  */
 
-#ifndef AUTOCONF_INCLUDED
-#include <linux/config.h>
-#endif
 #include <linux/version.h>
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,33))
+#include <generated/autoconf.h>
+#else
+#include <linux/autoconf.h>
+#endif
 
 #define __NO_VERSION__
 #include <linux/module.h>
--- a/linux/net/ipsec/pfkey_v2_ext_process.c
+++ b/linux/net/ipsec/pfkey_v2_ext_process.c
@@ -19,10 +19,12 @@
  *		Template from klips/net/ipsec/ipsec/ipsec_netlink.c.
  */
 
-#ifndef AUTOCONF_INCLUDED
-#include <linux/config.h>
-#endif
 #include <linux/version.h>
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,33))
+#include <generated/autoconf.h>
+#else
+#include <linux/autoconf.h>
+#endif
 #include <linux/kernel.h> /* printk() */
 
 #include "openswan/ipsec_param.h"
--- a/linux/net/ipsec/version.in.c
+++ b/linux/net/ipsec/version.in.c
@@ -15,10 +15,12 @@
  */
 
 #ifdef __KERNEL__
-# ifndef AUTOCONF_INCLUDED
-#  include <linux/config.h>
-# endif
 # include <linux/version.h>
+# if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,33))
+# include <generated/autoconf.h>
+# else
+# include <linux/autoconf.h>
+# endif
 # define __NO_VERSION__
 # include <linux/module.h>
 # if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,0) && LINUX_VERSION_CODE >= KERNEL_VERSION(2,4,26)
--- a/linux/net/ipsec/ipsec_ipcomp.c
+++ b/linux/net/ipsec/ipsec_ipcomp.c
@@ -13,10 +13,12 @@
  * for more details.
  */
 
-#ifndef AUTOCONF_INCLUDED
-#include <linux/config.h>
-#endif
 #include <linux/version.h>
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,33))
+#include <generated/autoconf.h>
+#else
+#include <linux/autoconf.h>
+#endif
 
 #define __NO_VERSION__
 #include <linux/module.h>
--- a/linux/net/ipsec/radij.c
+++ b/linux/net/ipsec/radij.c
@@ -53,10 +53,12 @@
  * Routines to build and maintain radix trees for routing lookups.
  */
 
-#ifndef AUTOCONF_INCLUDED
-#include <linux/config.h>
-#endif
 #include <linux/version.h>
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,33))
+#include <generated/autoconf.h>
+#else
+#include <linux/autoconf.h>
+#endif
 #include <linux/kernel.h> /* printk() */
 
 #include "openswan/ipsec_param.h"
--- a/linux/net/ipsec/ipsec_mast.c
+++ b/linux/net/ipsec/ipsec_mast.c
@@ -17,9 +17,12 @@ char ipsec_mast_c_version[] = "Please us
 
 #define __NO_VERSION__
 #include <linux/module.h>
-#ifndef AUTOCONF_INCLUDED
-#include <linux/config.h>
-#endif	/* for CONFIG_IP_FORWARD */
+#include <linux/version.h>
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,33))
+#include <generated/autoconf.h>
+#else
+#include <linux/autoconf.h>
+#endif /* For Config IP-FORWARD */
 #include <linux/version.h>
 #include <linux/kernel.h> /* printk() */
 
--- a/linux/net/ipsec/ipsec_xmit.c
+++ b/linux/net/ipsec/ipsec_xmit.c
@@ -21,9 +21,12 @@
 
 #define __NO_VERSION__
 #include <linux/module.h>
-#ifndef AUTOCONF_INCLUDED
-#include <linux/config.h>
-#endif	/* for CONFIG_IP_FORWARD */
+#include <linux/version.h>
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,33))
+#include <generated/autoconf.h>
+#else
+#include <linux/autoconf.h>
+#endif /* for CONFIG_IP_FORWARD */
 #include <linux/version.h>
 #include <linux/kernel.h> /* printk() */
 
--- a/linux/net/ipsec/ipsec_ipip.c
+++ b/linux/net/ipsec/ipsec_ipip.c
@@ -13,8 +13,11 @@
  * for more details.
  */
 
-#ifndef AUTOCONF_INCLUDED
-#include <linux/config.h>
+#include <linux/version.h>
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,33))
+#include <generated/autoconf.h>
+#else
+#include <linux/autoconf.h>
 #endif
 #include <linux/version.h>
 
--- a/linux/net/ipsec/ipsec_snprintf.c
+++ b/linux/net/ipsec/ipsec_snprintf.c
@@ -18,10 +18,12 @@
  * Split out from ipsec_proc.c.
  */
 
-#ifndef AUTOCONF_INCLUDED
-#include <linux/config.h>
-#endif
 #include <linux/version.h>
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,33))
+#include <generated/autoconf.h>
+#else
+#include <linux/autoconf.h>
+#endif
 #define __NO_VERSION__
 #include <linux/module.h>
 #include <linux/kernel.h> /* printk() */
--- a/linux/net/ipsec/ipsec_xform.c
+++ b/linux/net/ipsec/ipsec_xform.c
@@ -16,10 +16,12 @@
  * RCSID $Id: ipsec_xform.c,v 1.65 2005/04/29 05:10:22 mcr Exp $
  */
 
-#ifndef AUTOCONF_INCLUDED
-#include <linux/config.h>
-#endif
 #include <linux/version.h>
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,33))
+#include <generated/autoconf.h>
+#else
+#include <linux/autoconf.h>
+#endif
 #include <linux/kernel.h> /* printk() */
 
 #include "freeswan/ipsec_param.h"
--- a/linux/net/ipsec/alg/ipsec_alg_cryptoapi.c
+++ b/linux/net/ipsec/alg/ipsec_alg_cryptoapi.c
@@ -27,11 +27,12 @@
  *   modprobe ipsec_cryptoapi aes=128,128                (force these keylens)
  *   modprobe ipsec_cryptoapi des_ede3=0                 (everything but 3DES)
  */
-#ifndef AUTOCONF_INCLUDED
-#include <linux/config.h>
-#endif
 #include <linux/version.h>
-
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,33))
+#include <generated/autoconf.h>
+#else
+#include <linux/autoconf.h>
+#endif
 /*	
  *	special case: ipsec core modular with this static algo inside:
  *	must avoid MODULE magic for this file
--- a/linux/net/ipsec/aes/ipsec_alg_aes.c
+++ b/linux/net/ipsec/aes/ipsec_alg_aes.c
@@ -21,10 +21,12 @@
  * 	PK:	make XCBC comply with latest draft (keylength)
  *
  */
-#ifndef AUTOCONF_INCLUDED
-#include <linux/config.h>
-#endif
 #include <linux/version.h>
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,33))
+#include <generated/autoconf.h>
+#else
+#include <linux/autoconf.h>
+#endif
 
 /*	
  *	special case: ipsec core modular with this static algo inside:
--- a/linux/net/ipsec/ipsec_proc.c
+++ b/linux/net/ipsec/ipsec_proc.c
@@ -18,10 +18,12 @@
  * Split out from ipsec_init.c version 1.70.
  */
 
-#ifndef AUTOCONF_INCLUDED
-# include <linux/config.h>
-#endif
 #include <linux/version.h>
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,33))
+#include <generated/autoconf.h>
+#else
+#include <linux/autoconf.h>
+#endif
 #define __NO_VERSION__
 #include <linux/module.h>
 #if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,0) && LINUX_VERSION_CODE >= KERNEL_VERSION(2,4,26)
--- a/linux/net/ipsec/ipcomp.c
+++ b/linux/net/ipsec/ipcomp.c
@@ -18,10 +18,12 @@
 
 /* SSS */
 
-#ifndef AUTOCONF_INCLUDED
-#include <linux/config.h>
-#endif
 #include <linux/version.h>
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,33))
+#include <generated/autoconf.h>
+#else
+#include <linux/autoconf.h>
+#endif
 
 #define __NO_VERSION__
 #include <linux/module.h>
--- a/linux/net/ipsec/ipsec_sa.c
+++ b/linux/net/ipsec/ipsec_sa.c
@@ -18,10 +18,12 @@
  *
  */
 
-#ifndef AUTOCONF_INCLUDED
-#include <linux/config.h>
-#endif
 #include <linux/version.h>
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,33))
+#include <generated/autoconf.h>
+#else
+#include <linux/autoconf.h>
+#endif
 #include <linux/kernel.h> /* printk() */
 
 #include "openswan/ipsec_param.h"
--- a/linux/net/ipsec/des/ipsec_alg_3des.c
+++ b/linux/net/ipsec/des/ipsec_alg_3des.c
@@ -18,10 +18,12 @@
  * for more details.
  *
  */
-#ifndef AUTOCONF_INCLUDED
-#include <linux/config.h>
-#endif
 #include <linux/version.h>
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,33))
+#include <generated/autoconf.h>
+#else
+#include <linux/autoconf.h>
+#endif
 
 /*	
  *	special case: ipsec core modular with this static algo inside:
--- a/linux/net/ipsec/ipsec_radij.c
+++ b/linux/net/ipsec/ipsec_radij.c
@@ -15,10 +15,12 @@
  *
  */
 
-#ifndef AUTOCONF_INCLUDED
-#include <linux/config.h>
-#endif
 #include <linux/version.h>
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,33))
+#include <generated/autoconf.h>
+#else
+#include <linux/autoconf.h>
+#endif
 #include <linux/kernel.h> /* printk() */
 
 #include "openswan/ipsec_param.h"
--- a/linux/net/ipsec/ipsec_rcv.c
+++ b/linux/net/ipsec/ipsec_rcv.c
@@ -20,10 +20,12 @@
  * for more details.
  */
 
-#ifndef AUTOCONF_INCLUDED
-#include <linux/config.h>
-#endif
 #include <linux/version.h>
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,33))
+#include <generated/autoconf.h>
+#else
+#include <linux/autoconf.h>
+#endif
 
 #define __NO_VERSION__
 #include <linux/module.h>
--- a/linux/net/ipsec/ipsec_esp.c
+++ b/linux/net/ipsec/ipsec_esp.c
@@ -13,10 +13,12 @@
  * for more details.
  */
 
-#ifndef AUTOCONF_INCLUDED
-#include <linux/config.h>
-#endif
 #include <linux/version.h>
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,33))
+#include <generated/autoconf.h>
+#else
+#include <linux/autoconf.h>
+#endif
 
 #define __NO_VERSION__
 #include <linux/module.h>
--- a/linux/net/ipsec/ipsec_life.c
+++ b/linux/net/ipsec/ipsec_life.c
@@ -30,9 +30,12 @@
 
 #define __NO_VERSION__
 #include <linux/module.h>
-#ifndef AUTOCONF_INCLUDED
-#include <linux/config.h>
-#endif	/* for CONFIG_IP_FORWARD */
+#include <linux/version.h>
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,33))
+#include <generated/autoconf.h>
+#else
+#include <linux/autoconf.h>
+#endif /* for CONFIG_IP_FORWARD */
 #include <linux/version.h>
 #include <linux/kernel.h> /* printk() */
 
--- a/linux/net/ipsec/ipsec_alg.c
+++ b/linux/net/ipsec/ipsec_alg.c
@@ -18,10 +18,12 @@
  * for more details.
  *
  */
-#ifndef AUTOCONF_INCLUDED
-#include <linux/config.h>
-#endif
 #include <linux/version.h>
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,33))
+#include <generated/autoconf.h>
+#else
+#include <linux/autoconf.h>
+#endif
 
 #define __NO_VERSION__
 #include <linux/module.h>
--- a/linux/net/ipsec/pfkey_v2.c
+++ b/linux/net/ipsec/pfkey_v2.c
@@ -22,8 +22,10 @@
 #define __NO_VERSION__
 #include <linux/module.h>
 #include <linux/version.h>
-#ifndef AUTOCONF_INCLUDED
-# include <linux/config.h>
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,33))
+#include <generated/autoconf.h>
+#else
+#include <linux/autoconf.h>
 #endif
 #include <linux/kernel.h>
 
--- a/linux/net/ipsec/ipsec_tunnel.c
+++ b/linux/net/ipsec/ipsec_tunnel.c
@@ -20,9 +20,12 @@
 
 #define __NO_VERSION__
 #include <linux/module.h>
-#ifndef AUTOCONF_INCLUDED
-#include <linux/config.h>
-#endif	/* for CONFIG_IP_FORWARD */
+#include <linux/version.h>
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,33))
+#include <generated/autoconf.h>
+#else
+#include <linux/autoconf.h>
+#endif /* for CONFIG_IP_FORWARD */
 #include <linux/version.h>
 #include <linux/kernel.h> /* printk() */
 
--- a/linux/include/openswan/ipsec_kversion.h
+++ b/linux/include/openswan/ipsec_kversion.h
@@ -43,8 +43,11 @@
  * We use a lot of config defines,  on older kernels that means we
  * need to include config.h
  */
-#ifndef AUTOCONF_INCLUDED
-#include <linux/config.h>
+#include <linux/version.h>
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,33))
+#include <generated/autoconf.h>
+#else
+#include <linux/autoconf.h>
 #endif
 
 #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0)
--- a/linux/include/openswan/ipsec_rcv.h
+++ b/linux/include/openswan/ipsec_rcv.h
@@ -36,9 +36,12 @@
 /* struct options; */
 
 #define __NO_VERSION__
-#ifndef AUTOCONF_INCLUDED
-#include <linux/config.h>
-#endif	/* for CONFIG_IP_FORWARD */
+#include <linux/version.h>
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,33))
+#include <generated/autoconf.h>
+#else
+#include <linux/autoconf.h>
+#endif /* for CONFIG_IP_FORWARD */
 #ifdef CONFIG_MODULES
 #include <linux/module.h>
 #endif
--- a/linux/net/ipsec/ipsec_ocf.h
+++ b/linux/net/ipsec/ipsec_ocf.h
@@ -18,10 +18,12 @@
  * for more details.
  */
 
-#ifndef AUTOCONF_INCLUDED
-#include <linux/config.h>
-#endif
 #include <linux/version.h>
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,33))
+#include <generated/autoconf.h>
+#else
+#include <linux/autoconf.h>
+#endif
 #include <linux/kernel.h>
 
 #ifdef CONFIG_KLIPS_OCF
--- a/linux/net/ipsec/ipsec_ah.c
+++ b/linux/net/ipsec/ipsec_ah.c
@@ -13,10 +13,12 @@
  * for more details.
  */
 
-#ifndef AUTOCONF_INCLUDED
-#include <linux/config.h>
-#endif
 #include <linux/version.h>
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,33))
+#include <generated/autoconf.h>
+#else
+#include <linux/autoconf.h>
+#endif
 
 #define __NO_VERSION__
 #include <linux/module.h>
--- a/linux/net/ipsec/pfkey_v2_parser.c
+++ b/linux/net/ipsec/pfkey_v2_parser.c
@@ -22,10 +22,12 @@
  */
 
 
-#ifndef AUTOCONF_INCLUDED
-#include <linux/config.h>
-#endif
 #include <linux/version.h>
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,33))
+#include <generated/autoconf.h>
+#else
+#include <linux/autoconf.h>
+#endif
 #include <linux/kernel.h> /* printk() */
 
 #include "openswan/ipsec_param.h"
--- a/linux/net/ipsec/ipsec_init.c
+++ b/linux/net/ipsec/ipsec_init.c
@@ -18,10 +18,12 @@
  *
  */
 
-#ifndef AUTOCONF_INCLUDED
-#include <linux/config.h>
-#endif
 #include <linux/version.h>
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,33))
+#include <generated/autoconf.h>
+#else
+#include <linux/autoconf.h>
+#endif
 #include <linux/module.h>
 #include <linux/kernel.h> /* printk() */
 
--- a/linux/net/ipsec/ipsec_alg_cryptoapi.c
+++ b/linux/net/ipsec/ipsec_alg_cryptoapi.c
@@ -27,10 +27,12 @@
  *   modprobe ipsec_cryptoapi aes=128,128                (force these keylens)
  *   modprobe ipsec_cryptoapi des_ede3=0                 (everything but 3DES)
  */
-#ifndef AUTOCONF_INCLUDED
-#include <linux/config.h>
-#endif
 #include <linux/version.h>
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,33))
+#include <generated/autoconf.h>
+#else
+#include <linux/autoconf.h>
+#endif
 
 /*	
  *	special case: ipsec core modular with this static algo inside:
--- a/linux/include/ocf-compat.h
+++ b/linux/include/ocf-compat.h
@@ -34,8 +34,11 @@
  */
 /****************************************************************************/
 #ifdef __KERNEL__
-#ifndef AUTOCONF_INCLUDED
-#include <linux/config.h>
+#include <linux/version.h>
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,33))
+#include <generated/autoconf.h>
+#else
+#include <linux/autoconf.h>
 #endif
 
 /*