]> git.ipfire.org Git - ipfire-2.x.git/commitdiff
Merge branch 'kernel2.6.32.8' into next
authorArne Fitzenreiter <arne_f@ipfire.org>
Sun, 14 Feb 2010 10:33:02 +0000 (11:33 +0100)
committerArne Fitzenreiter <arne_f@ipfire.org>
Sun, 14 Feb 2010 10:33:02 +0000 (11:33 +0100)
Conflicts:
doc/packages-list.txt
lfs/linux

54 files changed:
config/kernel/kernel.config.i586-ipfire
config/rootfiles/common/compat-wireless [deleted file]
config/rootfiles/common/iptables
config/rootfiles/common/linux
config/rootfiles/common/linux-firmware
config/rootfiles/common/openswan
config/rootfiles/core/36/exclude [deleted file]
config/rootfiles/oldcore/34/exclude [moved from config/rootfiles/core/34/exclude with 100% similarity]
config/rootfiles/oldcore/34/filelists/dhcpcd [moved from config/rootfiles/core/34/filelists/dhcpcd with 100% similarity]
config/rootfiles/oldcore/34/filelists/files [moved from config/rootfiles/core/34/filelists/files with 100% similarity]
config/rootfiles/oldcore/34/filelists/linux [moved from config/rootfiles/core/34/filelists/linux with 100% similarity]
config/rootfiles/oldcore/34/filelists/linux-firmware [moved from config/rootfiles/core/34/filelists/linux-firmware with 100% similarity]
config/rootfiles/oldcore/34/filelists/mISDNuser [moved from config/rootfiles/core/34/filelists/mISDNuser with 100% similarity]
config/rootfiles/oldcore/34/filelists/mkinitcpio [moved from config/rootfiles/core/34/filelists/mkinitcpio with 100% similarity]
config/rootfiles/oldcore/34/filelists/ncurses [moved from config/rootfiles/core/34/filelists/ncurses with 100% similarity]
config/rootfiles/oldcore/34/filelists/smartmontools [moved from config/rootfiles/core/34/filelists/smartmontools with 100% similarity]
config/rootfiles/oldcore/34/filelists/usb_modeswitch [moved from config/rootfiles/core/34/filelists/usb_modeswitch with 100% similarity]
config/rootfiles/oldcore/34/meta [moved from config/rootfiles/core/34/meta with 100% similarity]
config/rootfiles/oldcore/34/update.sh [moved from config/rootfiles/core/34/update.sh with 100% similarity]
config/rootfiles/oldcore/35/exclude [new file with mode: 0644]
config/rootfiles/oldcore/35/filelists/files [moved from config/rootfiles/core/35/filelists/files with 100% similarity]
config/rootfiles/oldcore/35/filelists/openswan [new symlink]
config/rootfiles/oldcore/35/filelists/openswan-modules [new file with mode: 0644]
config/rootfiles/oldcore/35/meta [moved from config/rootfiles/core/35/meta with 100% similarity]
config/rootfiles/oldcore/35/update.sh [moved from config/rootfiles/core/35/update.sh with 100% similarity]
config/rootfiles/oldcore/36/exclude [moved from config/rootfiles/core/35/exclude with 100% similarity]
config/rootfiles/oldcore/36/filelists/cyrus-sasl [moved from config/rootfiles/core/36/filelists/cyrus-sasl with 100% similarity]
config/rootfiles/oldcore/36/filelists/files [moved from config/rootfiles/core/36/filelists/files with 100% similarity]
config/rootfiles/oldcore/36/filelists/openssh [moved from config/rootfiles/core/36/filelists/openssh with 100% similarity]
config/rootfiles/oldcore/36/filelists/openssl [moved from config/rootfiles/core/36/filelists/openssl with 100% similarity]
config/rootfiles/oldcore/36/meta [moved from config/rootfiles/core/36/meta with 100% similarity]
config/rootfiles/oldcore/36/update.sh [moved from config/rootfiles/core/36/update.sh with 100% similarity]
config/rootfiles/oldcore/37/exclude [moved from config/rootfiles/core/37/exclude with 100% similarity]
config/rootfiles/oldcore/37/filelists/files [moved from config/rootfiles/core/37/filelists/files with 100% similarity]
config/rootfiles/oldcore/37/filelists/lm_sensors [moved from config/rootfiles/core/37/filelists/lm_sensors with 100% similarity]
config/rootfiles/oldcore/37/filelists/madwifi [moved from config/rootfiles/core/37/filelists/madwifi with 100% similarity]
config/rootfiles/oldcore/37/meta [moved from config/rootfiles/core/37/meta with 100% similarity]
config/rootfiles/oldcore/37/update.sh [moved from config/rootfiles/core/37/update.sh with 100% similarity]
config/rootfiles/packages/dahdi
config/rootfiles/packages/linux-xen-disabled [moved from config/rootfiles/packages/linux-xen with 100% similarity]
doc/packages-list.txt
lfs/dahdi
lfs/initrd
lfs/iptables
lfs/klibc
lfs/linux
lfs/openswan
make.sh
src/patches/iptables-1.4.6-errorno_includes.patch [new file with mode: 0644]
src/patches/iptables-1.4.6-imq_test1.patch [new file with mode: 0644]
src/patches/iptables-1.4.6-ipp2p-0.8.2-pomng.patch [new file with mode: 0644]
src/patches/linux-2.6.32-imq-test2.patch [new file with mode: 0644]
src/patches/linux-2.6.32.8-ipp2p-0.8.2-pomng.patch [new file with mode: 0644]
src/patches/openswan-2.6.24_noxmlto.patch [moved from src/patches/openswan-2.6.20_noxmlto.patch with 71% similarity]

index f74c349a5e0e8fe0f4955e1e0bef2fd739f3bcc0..d777df192504caff524d14404f2ff7f8407119d9 100644 (file)
@@ -1,14 +1,14 @@
 #
 # Automatically generated make config: don't edit
-# Linux kernel version: 2.6.27.39
-# Tue Nov 17 16:33:58 2009
+# Linux kernel version: 2.6.32.8
+# Sat Feb 13 19:41:01 2010
 #
 # CONFIG_64BIT is not set
 CONFIG_X86_32=y
 # CONFIG_X86_64 is not set
 CONFIG_X86=y
+CONFIG_OUTPUT_FORMAT="elf32-i386"
 CONFIG_ARCH_DEFCONFIG="arch/x86/configs/i386_defconfig"
-# CONFIG_GENERIC_LOCKBREAK is not set
 CONFIG_GENERIC_TIME=y
 CONFIG_GENERIC_CMOS_UPDATE=y
 CONFIG_CLOCKSOURCE_WATCHDOG=y
@@ -17,19 +17,15 @@ CONFIG_GENERIC_CLOCKEVENTS_BROADCAST=y
 CONFIG_LOCKDEP_SUPPORT=y
 CONFIG_STACKTRACE_SUPPORT=y
 CONFIG_HAVE_LATENCYTOP_SUPPORT=y
-CONFIG_FAST_CMPXCHG_LOCAL=y
 CONFIG_MMU=y
 CONFIG_ZONE_DMA=y
 CONFIG_GENERIC_ISA_DMA=y
 CONFIG_GENERIC_IOMAP=y
 CONFIG_GENERIC_BUG=y
 CONFIG_GENERIC_HWEIGHT=y
-# CONFIG_GENERIC_GPIO is not set
 CONFIG_ARCH_MAY_HAVE_PC_FDC=y
 # CONFIG_RWSEM_GENERIC_SPINLOCK is not set
 CONFIG_RWSEM_XCHGADD_ALGORITHM=y
-# CONFIG_ARCH_HAS_ILOG2_U32 is not set
-# CONFIG_ARCH_HAS_ILOG2_U64 is not set
 CONFIG_ARCH_HAS_CPU_IDLE_WAIT=y
 CONFIG_GENERIC_CALIBRATE_DELAY=y
 # CONFIG_GENERIC_TIME_VSYSCALL is not set
@@ -37,24 +33,29 @@ CONFIG_ARCH_HAS_CPU_RELAX=y
 CONFIG_ARCH_HAS_DEFAULT_IDLE=y
 CONFIG_ARCH_HAS_CACHE_LINE_SIZE=y
 CONFIG_HAVE_SETUP_PER_CPU_AREA=y
+CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK=y
+CONFIG_NEED_PER_CPU_PAGE_FIRST_CHUNK=y
 # CONFIG_HAVE_CPUMASK_OF_CPU_MAP is not set
 CONFIG_ARCH_HIBERNATION_POSSIBLE=y
 CONFIG_ARCH_SUSPEND_POSSIBLE=y
 # CONFIG_ZONE_DMA32 is not set
 CONFIG_ARCH_POPULATES_NODE_MAP=y
 # CONFIG_AUDIT_ARCH is not set
-CONFIG_ARCH_SUPPORTS_AOUT=y
 CONFIG_ARCH_SUPPORTS_OPTIMIZED_INLINING=y
+CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
+CONFIG_HAVE_INTEL_TXT=y
 CONFIG_GENERIC_HARDIRQS=y
+CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
 CONFIG_GENERIC_IRQ_PROBE=y
 CONFIG_GENERIC_PENDING_IRQ=y
-CONFIG_X86_SMP=y
+CONFIG_USE_GENERIC_SMP_HELPERS=y
 CONFIG_X86_32_SMP=y
 CONFIG_X86_HT=y
-CONFIG_X86_BIOS_REBOOT=y
 CONFIG_X86_TRAMPOLINE=y
+CONFIG_X86_32_LAZY_GS=y
 CONFIG_KTIME_SCALAR=y
 CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
+CONFIG_CONSTRUCTORS=y
 
 #
 # General setup
@@ -64,20 +65,37 @@ CONFIG_LOCK_KERNEL=y
 CONFIG_INIT_ENV_ARG_LIMIT=32
 CONFIG_LOCALVERSION=""
 # CONFIG_LOCALVERSION_AUTO is not set
+CONFIG_HAVE_KERNEL_GZIP=y
+CONFIG_HAVE_KERNEL_BZIP2=y
+CONFIG_HAVE_KERNEL_LZMA=y
+# CONFIG_KERNEL_GZIP is not set
+CONFIG_KERNEL_BZIP2=y
+# CONFIG_KERNEL_LZMA is not set
 CONFIG_SWAP=y
 CONFIG_SYSVIPC=y
 CONFIG_SYSVIPC_SYSCTL=y
 CONFIG_POSIX_MQUEUE=y
+CONFIG_POSIX_MQUEUE_SYSCTL=y
 # CONFIG_BSD_PROCESS_ACCT is not set
 # CONFIG_TASKSTATS is not set
 CONFIG_AUDIT=y
 CONFIG_AUDITSYSCALL=y
 CONFIG_AUDIT_TREE=y
+
+#
+# RCU Subsystem
+#
+CONFIG_TREE_RCU=y
+# CONFIG_TREE_PREEMPT_RCU is not set
+# CONFIG_RCU_TRACE is not set
+CONFIG_RCU_FANOUT=32
+# CONFIG_RCU_FANOUT_EXACT is not set
+# CONFIG_TREE_RCU_TRACE is not set
 # CONFIG_IKCONFIG is not set
 CONFIG_LOG_BUF_SHIFT=15
-# CONFIG_CGROUPS is not set
 CONFIG_HAVE_UNSTABLE_SCHED_CLOCK=y
 # CONFIG_GROUP_SCHED is not set
+# CONFIG_CGROUPS is not set
 CONFIG_SYSFS_DEPRECATED=y
 CONFIG_SYSFS_DEPRECATED_V2=y
 # CONFIG_RELAY is not set
@@ -86,10 +104,15 @@ CONFIG_NAMESPACES=y
 # CONFIG_IPC_NS is not set
 # CONFIG_USER_NS is not set
 # CONFIG_PID_NS is not set
+# CONFIG_NET_NS is not set
 CONFIG_BLK_DEV_INITRD=y
 CONFIG_INITRAMFS_SOURCE=""
+CONFIG_RD_GZIP=y
+CONFIG_RD_BZIP2=y
+CONFIG_RD_LZMA=y
 CONFIG_CC_OPTIMIZE_FOR_SIZE=y
 CONFIG_SYSCTL=y
+CONFIG_ANON_INODES=y
 # CONFIG_EMBEDDED is not set
 CONFIG_UID16=y
 CONFIG_SYSCTL_SYSCALL=y
@@ -100,36 +123,45 @@ CONFIG_PRINTK=y
 CONFIG_BUG=y
 CONFIG_ELF_CORE=y
 CONFIG_PCSPKR_PLATFORM=y
-CONFIG_COMPAT_BRK=y
 CONFIG_BASE_FULL=y
 CONFIG_FUTEX=y
-CONFIG_ANON_INODES=y
 CONFIG_EPOLL=y
 CONFIG_SIGNALFD=y
 CONFIG_TIMERFD=y
 CONFIG_EVENTFD=y
 CONFIG_SHMEM=y
+CONFIG_AIO=y
+CONFIG_HAVE_PERF_EVENTS=y
+
+#
+# Kernel Performance Events And Counters
+#
+# CONFIG_PERF_EVENTS is not set
+# CONFIG_PERF_COUNTERS is not set
 CONFIG_VM_EVENT_COUNTERS=y
+CONFIG_PCI_QUIRKS=y
+CONFIG_COMPAT_BRK=y
 CONFIG_SLAB=y
 # CONFIG_SLUB is not set
 # CONFIG_SLOB is not set
 # CONFIG_PROFILING is not set
-# CONFIG_MARKERS is not set
 CONFIG_HAVE_OPROFILE=y
 # CONFIG_KPROBES is not set
 CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y
 CONFIG_HAVE_IOREMAP_PROT=y
 CONFIG_HAVE_KPROBES=y
 CONFIG_HAVE_KRETPROBES=y
-# CONFIG_HAVE_ARCH_TRACEHOOK is not set
-# CONFIG_HAVE_DMA_ATTRS is not set
-CONFIG_USE_GENERIC_SMP_HELPERS=y
-# CONFIG_HAVE_CLK is not set
-CONFIG_PROC_PAGE_MONITOR=y
+CONFIG_HAVE_ARCH_TRACEHOOK=y
+CONFIG_HAVE_DMA_ATTRS=y
+CONFIG_HAVE_DMA_API_DEBUG=y
+
+#
+# GCOV-based kernel profiling
+#
+CONFIG_SLOW_WORK=y
 CONFIG_HAVE_GENERIC_DMA_COHERENT=y
 CONFIG_SLABINFO=y
 CONFIG_RT_MUTEXES=y
-# CONFIG_TINY_SHMEM is not set
 CONFIG_BASE_SMALL=0
 CONFIG_MODULES=y
 # CONFIG_MODULE_FORCE_LOAD is not set
@@ -137,12 +169,9 @@ CONFIG_MODULE_UNLOAD=y
 CONFIG_MODULE_FORCE_UNLOAD=y
 # CONFIG_MODVERSIONS is not set
 # CONFIG_MODULE_SRCVERSION_ALL is not set
-CONFIG_KMOD=y
 CONFIG_STOP_MACHINE=y
 CONFIG_BLOCK=y
-CONFIG_LBD=y
-# CONFIG_BLK_DEV_IO_TRACE is not set
-CONFIG_LSF=y
+CONFIG_LBDAF=y
 # CONFIG_BLK_DEV_BSG is not set
 # CONFIG_BLK_DEV_INTEGRITY is not set
 
@@ -159,32 +188,32 @@ CONFIG_DEFAULT_AS=y
 # CONFIG_DEFAULT_NOOP is not set
 CONFIG_DEFAULT_IOSCHED="anticipatory"
 CONFIG_PREEMPT_NOTIFIERS=y
-CONFIG_CLASSIC_RCU=y
+CONFIG_FREEZER=y
 
 #
 # Processor type and features
 #
-# CONFIG_TICK_ONESHOT is not set
 # CONFIG_NO_HZ is not set
 # CONFIG_HIGH_RES_TIMERS is not set
 CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
 CONFIG_SMP=y
-CONFIG_X86_FIND_SMP_CONFIG=y
+CONFIG_SPARSE_IRQ=y
 CONFIG_X86_MPPARSE=y
-CONFIG_X86_PC=y
+# CONFIG_X86_BIGSMP is not set
+CONFIG_X86_EXTENDED_PLATFORM=y
 # CONFIG_X86_ELAN is not set
-# CONFIG_X86_VOYAGER is not set
-# CONFIG_X86_GENERICARCH is not set
-# CONFIG_X86_VSMP is not set
+# CONFIG_X86_MRST is not set
 # CONFIG_X86_RDC321X is not set
-CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y
+# CONFIG_X86_32_NON_STANDARD is not set
+CONFIG_X86_SUPPORTS_MEMORY_FAILURE=y
+CONFIG_SCHED_OMIT_FRAME_POINTER=y
 CONFIG_PARAVIRT_GUEST=y
-CONFIG_XEN_SAVE_RESTORE=y
 CONFIG_VMI=y
 CONFIG_KVM_CLOCK=y
 CONFIG_KVM_GUEST=y
 CONFIG_LGUEST_GUEST=y
 CONFIG_PARAVIRT=y
+CONFIG_PARAVIRT_SPINLOCKS=y
 CONFIG_PARAVIRT_CLOCK=y
 # CONFIG_MEMTEST is not set
 # CONFIG_M386 is not set
@@ -203,7 +232,6 @@ CONFIG_M586TSC=y
 # CONFIG_MCRUSOE is not set
 # CONFIG_MEFFICEON is not set
 # CONFIG_MWINCHIPC6 is not set
-# CONFIG_MWINCHIP2 is not set
 # CONFIG_MWINCHIP3D is not set
 # CONFIG_MGEODEGX1 is not set
 # CONFIG_MGEODE_LX is not set
@@ -212,11 +240,14 @@ CONFIG_M586TSC=y
 # CONFIG_MVIAC7 is not set
 # CONFIG_MPSC is not set
 # CONFIG_MCORE2 is not set
+# CONFIG_MATOM is not set
 # CONFIG_GENERIC_CPU is not set
 CONFIG_X86_GENERIC=y
 CONFIG_X86_CPU=y
+CONFIG_X86_L1_CACHE_BYTES=64
+CONFIG_X86_INTERNODE_CACHE_BYTES=64
 CONFIG_X86_CMPXCHG=y
-CONFIG_X86_L1_CACHE_SHIFT=7
+CONFIG_X86_L1_CACHE_SHIFT=5
 CONFIG_X86_XADD=y
 CONFIG_X86_PPRO_FENCE=y
 CONFIG_X86_F00F_BUG=y
@@ -228,10 +259,17 @@ CONFIG_X86_ALIGNMENT_16=y
 CONFIG_X86_INTEL_USERCOPY=y
 CONFIG_X86_TSC=y
 CONFIG_X86_MINIMUM_CPU_FAMILY=4
+CONFIG_CPU_SUP_INTEL=y
+CONFIG_CPU_SUP_CYRIX_32=y
+CONFIG_CPU_SUP_AMD=y
+CONFIG_CPU_SUP_CENTAUR=y
+CONFIG_CPU_SUP_TRANSMETA_32=y
+CONFIG_CPU_SUP_UMC_32=y
 CONFIG_HPET_TIMER=y
 CONFIG_HPET_EMULATE_RTC=y
 CONFIG_DMI=y
 # CONFIG_IOMMU_HELPER is not set
+CONFIG_IOMMU_API=y
 CONFIG_NR_CPUS=8
 CONFIG_SCHED_SMT=y
 CONFIG_SCHED_MC=y
@@ -240,14 +278,21 @@ CONFIG_PREEMPT_NONE=y
 # CONFIG_PREEMPT is not set
 CONFIG_X86_LOCAL_APIC=y
 CONFIG_X86_IO_APIC=y
+CONFIG_X86_REROUTE_FOR_BROKEN_BOOT_IRQS=y
 CONFIG_X86_MCE=y
-CONFIG_X86_MCE_NONFATAL=m
-CONFIG_X86_MCE_P4THERMAL=y
+CONFIG_X86_MCE_INTEL=y
+CONFIG_X86_MCE_AMD=y
+CONFIG_X86_ANCIENT_MCE=y
+CONFIG_X86_MCE_THRESHOLD=y
+CONFIG_X86_MCE_INJECT=m
+CONFIG_X86_THERMAL_VECTOR=y
 CONFIG_VM86=y
 CONFIG_TOSHIBA=m
 CONFIG_I8K=m
 CONFIG_X86_REBOOTFIXUPS=y
 CONFIG_MICROCODE=m
+CONFIG_MICROCODE_INTEL=y
+CONFIG_MICROCODE_AMD=y
 CONFIG_MICROCODE_OLD_INTERFACE=y
 CONFIG_X86_MSR=m
 CONFIG_X86_CPUID=y
@@ -256,6 +301,7 @@ CONFIG_HIGHMEM4G=y
 # CONFIG_HIGHMEM64G is not set
 CONFIG_PAGE_OFFSET=0xC0000000
 CONFIG_HIGHMEM=y
+# CONFIG_ARCH_PHYS_ADDR_T_64BIT is not set
 CONFIG_ARCH_FLATMEM_ENABLE=y
 CONFIG_ARCH_SPARSEMEM_ENABLE=y
 CONFIG_ARCH_SELECT_MEMORY_MODEL=y
@@ -266,24 +312,29 @@ CONFIG_FLATMEM_MANUAL=y
 CONFIG_FLATMEM=y
 CONFIG_FLAT_NODE_MEM_MAP=y
 CONFIG_SPARSEMEM_STATIC=y
-# CONFIG_SPARSEMEM_VMEMMAP_ENABLE is not set
 CONFIG_PAGEFLAGS_EXTENDED=y
 CONFIG_SPLIT_PTLOCK_CPUS=4
-# CONFIG_RESOURCES_64BIT is not set
+# CONFIG_PHYS_ADDR_T_64BIT is not set
 CONFIG_ZONE_DMA_FLAG=1
 CONFIG_BOUNCE=y
 CONFIG_VIRT_TO_BUS=y
+CONFIG_HAVE_MLOCK=y
+CONFIG_HAVE_MLOCKED_PAGE_BIT=y
 CONFIG_MMU_NOTIFIER=y
+# CONFIG_KSM is not set
 CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
+CONFIG_ARCH_SUPPORTS_MEMORY_FAILURE=y
+# CONFIG_MEMORY_FAILURE is not set
 # CONFIG_HIGHPTE is not set
+# CONFIG_X86_CHECK_BIOS_CORRUPTION is not set
 CONFIG_X86_RESERVE_LOW_64K=y
 CONFIG_MATH_EMULATION=y
 CONFIG_MTRR=y
 # CONFIG_MTRR_SANITIZER is not set
 # CONFIG_X86_PAT is not set
 # CONFIG_EFI is not set
-CONFIG_IRQBALANCE=y
 CONFIG_SECCOMP=y
+# CONFIG_CC_STACKPROTECTOR is not set
 CONFIG_HZ_100=y
 # CONFIG_HZ_250 is not set
 # CONFIG_HZ_300 is not set
@@ -292,15 +343,16 @@ CONFIG_HZ=100
 # CONFIG_SCHED_HRTICK is not set
 # CONFIG_KEXEC is not set
 # CONFIG_CRASH_DUMP is not set
-CONFIG_PHYSICAL_START=0x100000
+CONFIG_PHYSICAL_START=0x1000000
 # CONFIG_RELOCATABLE is not set
 CONFIG_PHYSICAL_ALIGN=0x100000
 CONFIG_HOTPLUG_CPU=y
 CONFIG_COMPAT_VDSO=y
+# CONFIG_CMDLINE_BOOL is not set
 CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
 
 #
-# Power management options
+# Power management and ACPI options
 #
 CONFIG_PM=y
 # CONFIG_PM_DEBUG is not set
@@ -309,10 +361,12 @@ CONFIG_PM_SLEEP=y
 CONFIG_SUSPEND=y
 CONFIG_SUSPEND_FREEZER=y
 # CONFIG_HIBERNATION is not set
+# CONFIG_PM_RUNTIME is not set
 CONFIG_ACPI=y
 CONFIG_ACPI_SLEEP=y
 # CONFIG_ACPI_PROCFS is not set
 CONFIG_ACPI_PROCFS_POWER=y
+CONFIG_ACPI_POWER_METER=m
 CONFIG_ACPI_SYSFS_POWER=y
 CONFIG_ACPI_PROC_EVENT=y
 CONFIG_ACPI_AC=m
@@ -320,25 +374,20 @@ CONFIG_ACPI_BATTERY=m
 CONFIG_ACPI_BUTTON=m
 CONFIG_ACPI_VIDEO=m
 CONFIG_ACPI_FAN=m
-CONFIG_ACPI_DOCK=m
-CONFIG_ACPI_BAY=m
+CONFIG_ACPI_DOCK=y
 CONFIG_ACPI_PROCESSOR=m
 CONFIG_ACPI_HOTPLUG_CPU=y
+CONFIG_ACPI_PROCESSOR_AGGREGATOR=m
 CONFIG_ACPI_THERMAL=m
-CONFIG_ACPI_WMI=m
-CONFIG_ACPI_ASUS=m
-CONFIG_ACPI_TOSHIBA=m
 CONFIG_ACPI_CUSTOM_DSDT_FILE=""
 # CONFIG_ACPI_CUSTOM_DSDT is not set
 CONFIG_ACPI_BLACKLIST_YEAR=0
 # CONFIG_ACPI_DEBUG is not set
-CONFIG_ACPI_EC=y
 CONFIG_ACPI_PCI_SLOT=m
-CONFIG_ACPI_POWER=y
-CONFIG_ACPI_SYSTEM=y
 CONFIG_X86_PM_TIMER=y
 CONFIG_ACPI_CONTAINER=m
 CONFIG_ACPI_SBS=m
+# CONFIG_SFI is not set
 CONFIG_X86_APM_BOOT=y
 CONFIG_APM=m
 CONFIG_APM_IGNORE_USER_SUSPEND=y
@@ -346,7 +395,6 @@ CONFIG_APM_IGNORE_USER_SUSPEND=y
 CONFIG_APM_CPU_IDLE=y
 # CONFIG_APM_DISPLAY_BLANK is not set
 # CONFIG_APM_ALLOW_INTS is not set
-# CONFIG_APM_REAL_MODE_POWER_OFF is not set
 
 #
 # CPU Frequency scaling
@@ -375,7 +423,6 @@ CONFIG_X86_POWERNOW_K6=m
 CONFIG_X86_POWERNOW_K7=m
 CONFIG_X86_POWERNOW_K7_ACPI=y
 CONFIG_X86_POWERNOW_K8=m
-CONFIG_X86_POWERNOW_K8_ACPI=y
 CONFIG_X86_GX_SUSPMOD=m
 CONFIG_X86_SPEEDSTEP_CENTRINO=m
 CONFIG_X86_SPEEDSTEP_CENTRINO_TABLE=y
@@ -390,7 +437,6 @@ CONFIG_X86_E_POWERSAVER=m
 #
 # shared options
 #
-# CONFIG_X86_ACPI_CPUFREQ_PROC_INTF is not set
 CONFIG_X86_SPEEDSTEP_LIB=m
 # CONFIG_X86_SPEEDSTEP_RELAXED_CAP_CHECK is not set
 CONFIG_CPU_IDLE=y
@@ -409,13 +455,20 @@ CONFIG_PCI_BIOS=y
 CONFIG_PCI_DIRECT=y
 CONFIG_PCI_MMCONFIG=y
 CONFIG_PCI_DOMAINS=y
+CONFIG_DMAR=y
+CONFIG_DMAR_DEFAULT_ON=y
+CONFIG_DMAR_FLOPPY_WA=y
 CONFIG_PCIEPORTBUS=y
 CONFIG_PCIEAER=y
+# CONFIG_PCIE_ECRC is not set
+# CONFIG_PCIEAER_INJECT is not set
 # CONFIG_PCIEASPM is not set
 CONFIG_ARCH_SUPPORTS_MSI=y
 CONFIG_PCI_MSI=y
 CONFIG_PCI_LEGACY=y
+CONFIG_PCI_STUB=m
 CONFIG_HT_IRQ=y
+CONFIG_PCI_IOV=y
 CONFIG_ISA_DMA_API=y
 CONFIG_ISA=y
 CONFIG_EISA=y
@@ -458,8 +511,11 @@ CONFIG_PCCARD_NONSTATIC=m
 # Executable file formats / Emulations
 #
 CONFIG_BINFMT_ELF=y
+# CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set
+CONFIG_HAVE_AOUT=y
 # CONFIG_BINFMT_AOUT is not set
 # CONFIG_BINFMT_MISC is not set
+CONFIG_HAVE_ATOMIC_IOMAP=y
 CONFIG_NET=y
 
 #
@@ -502,7 +558,7 @@ CONFIG_INET_TUNNEL=m
 CONFIG_INET_XFRM_MODE_TRANSPORT=y
 CONFIG_INET_XFRM_MODE_TUNNEL=y
 CONFIG_INET_XFRM_MODE_BEET=y
-CONFIG_INET_LRO=m
+CONFIG_INET_LRO=y
 CONFIG_INET_DIAG=m
 CONFIG_INET_TCP_DIAG=m
 CONFIG_TCP_CONG_ADVANCED=y
@@ -526,7 +582,6 @@ CONFIG_TCP_CONG_ILLINOIS=m
 CONFIG_DEFAULT_RENO=y
 CONFIG_DEFAULT_TCP_CONG="reno"
 # CONFIG_TCP_MD5SIG is not set
-# CONFIG_IP_VS is not set
 # CONFIG_IPV6 is not set
 # CONFIG_NETWORK_SECMARK is not set
 CONFIG_NETFILTER=y
@@ -558,19 +613,24 @@ CONFIG_NF_CONNTRACK_SANE=m
 CONFIG_NF_CONNTRACK_SIP=m
 CONFIG_NF_CONNTRACK_TFTP=m
 CONFIG_NF_CT_NETLINK=m
+CONFIG_NETFILTER_TPROXY=m
 CONFIG_NETFILTER_XTABLES=m
 CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m
 CONFIG_NETFILTER_XT_TARGET_CONNMARK=m
 CONFIG_NETFILTER_XT_TARGET_DSCP=m
+CONFIG_NETFILTER_XT_TARGET_HL=m
+CONFIG_NETFILTER_XT_TARGET_LED=m
 CONFIG_NETFILTER_XT_TARGET_IMQ=m
 CONFIG_NETFILTER_XT_TARGET_MARK=m
-CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m
 CONFIG_NETFILTER_XT_TARGET_NFLOG=m
+CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m
 CONFIG_NETFILTER_XT_TARGET_NOTRACK=m
 CONFIG_NETFILTER_XT_TARGET_RATEEST=m
+CONFIG_NETFILTER_XT_TARGET_TPROXY=m
 CONFIG_NETFILTER_XT_TARGET_TRACE=m
 CONFIG_NETFILTER_XT_TARGET_TCPMSS=m
 CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP=m
+CONFIG_NETFILTER_XT_MATCH_CLUSTER=m
 CONFIG_NETFILTER_XT_MATCH_COMMENT=m
 CONFIG_NETFILTER_XT_MATCH_CONNBYTES=m
 CONFIG_NETFILTER_XT_MATCH_CONNLIMIT=m
@@ -579,21 +639,26 @@ CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m
 CONFIG_NETFILTER_XT_MATCH_DCCP=m
 CONFIG_NETFILTER_XT_MATCH_DSCP=m
 CONFIG_NETFILTER_XT_MATCH_ESP=m
+CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m
 CONFIG_NETFILTER_XT_MATCH_HELPER=m
+CONFIG_NETFILTER_XT_MATCH_HL=m
 CONFIG_NETFILTER_XT_MATCH_IPRANGE=m
 CONFIG_NETFILTER_XT_MATCH_LENGTH=m
 CONFIG_NETFILTER_XT_MATCH_LIMIT=m
 CONFIG_NETFILTER_XT_MATCH_MAC=m
 CONFIG_NETFILTER_XT_MATCH_MARK=m
+CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m
 CONFIG_NETFILTER_XT_MATCH_OWNER=m
 CONFIG_NETFILTER_XT_MATCH_POLICY=m
-CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m
 CONFIG_NETFILTER_XT_MATCH_PHYSDEV=m
 CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m
 CONFIG_NETFILTER_XT_MATCH_QUOTA=m
 CONFIG_NETFILTER_XT_MATCH_RATEEST=m
 CONFIG_NETFILTER_XT_MATCH_REALM=m
+CONFIG_NETFILTER_XT_MATCH_RECENT=m
+CONFIG_NETFILTER_XT_MATCH_RECENT_PROC_COMPAT=y
 CONFIG_NETFILTER_XT_MATCH_SCTP=m
+CONFIG_NETFILTER_XT_MATCH_SOCKET=m
 CONFIG_NETFILTER_XT_MATCH_STATE=m
 CONFIG_NETFILTER_XT_MATCH_LAYER7=m
 # CONFIG_NETFILTER_XT_MATCH_LAYER7_DEBUG is not set
@@ -602,20 +667,21 @@ CONFIG_NETFILTER_XT_MATCH_STRING=m
 CONFIG_NETFILTER_XT_MATCH_TCPMSS=m
 CONFIG_NETFILTER_XT_MATCH_TIME=m
 CONFIG_NETFILTER_XT_MATCH_U32=m
-CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m
+CONFIG_NETFILTER_XT_MATCH_OSF=m
+# CONFIG_IP_VS is not set
 
 #
 # IP: Netfilter Configuration
 #
+CONFIG_NF_DEFRAG_IPV4=m
 CONFIG_NF_CONNTRACK_IPV4=m
 CONFIG_NF_CONNTRACK_PROC_COMPAT=y
 CONFIG_IP_NF_QUEUE=m
 CONFIG_IP_NF_IPTABLES=m
-CONFIG_IP_NF_MATCH_RECENT=m
-CONFIG_IP_NF_MATCH_ECN=m
+CONFIG_IP_NF_MATCH_ADDRTYPE=m
 CONFIG_IP_NF_MATCH_AH=m
+CONFIG_IP_NF_MATCH_ECN=m
 CONFIG_IP_NF_MATCH_TTL=m
-CONFIG_IP_NF_MATCH_ADDRTYPE=m
 CONFIG_IP_NF_FILTER=m
 CONFIG_IP_NF_TARGET_REJECT=m
 CONFIG_IP_NF_TARGET_LOG=m
@@ -623,8 +689,8 @@ CONFIG_IP_NF_TARGET_ULOG=m
 CONFIG_NF_NAT=m
 CONFIG_NF_NAT_NEEDED=y
 CONFIG_IP_NF_TARGET_MASQUERADE=m
-CONFIG_IP_NF_TARGET_REDIRECT=m
 CONFIG_IP_NF_TARGET_NETMAP=m
+CONFIG_IP_NF_TARGET_REDIRECT=m
 CONFIG_NF_NAT_SNMP_BASIC=m
 CONFIG_NF_NAT_PROTO_DCCP=m
 CONFIG_NF_NAT_PROTO_GRE=m
@@ -638,18 +704,14 @@ CONFIG_NF_NAT_PPTP=m
 CONFIG_NF_NAT_H323=m
 CONFIG_NF_NAT_SIP=m
 CONFIG_IP_NF_MANGLE=m
+CONFIG_IP_NF_TARGET_CLUSTERIP=m
 CONFIG_IP_NF_TARGET_ECN=m
 CONFIG_IP_NF_TARGET_TTL=m
-CONFIG_IP_NF_TARGET_CLUSTERIP=m
 CONFIG_IP_NF_RAW=m
 CONFIG_IP_NF_ARPTABLES=m
 CONFIG_IP_NF_ARPFILTER=m
 CONFIG_IP_NF_ARP_MANGLE=m
 CONFIG_IP_NF_MATCH_IPP2P=m
-
-#
-# Bridge: Netfilter Configuration
-#
 CONFIG_BRIDGE_NF_EBTABLES=m
 CONFIG_BRIDGE_EBT_BROUTE=m
 CONFIG_BRIDGE_EBT_T_FILTER=m
@@ -673,6 +735,9 @@ CONFIG_BRIDGE_EBT_ULOG=m
 CONFIG_BRIDGE_EBT_NFLOG=m
 # CONFIG_IP_DCCP is not set
 # CONFIG_IP_SCTP is not set
+CONFIG_RDS=m
+CONFIG_RDS_TCP=m
+# CONFIG_RDS_DEBUG is not set
 # CONFIG_TIPC is not set
 CONFIG_ATM=m
 CONFIG_ATM_CLIP=m
@@ -683,6 +748,15 @@ CONFIG_ATM_BR2684=m
 CONFIG_STP=m
 CONFIG_GARP=m
 CONFIG_BRIDGE=m
+CONFIG_NET_DSA=y
+CONFIG_NET_DSA_TAG_DSA=y
+CONFIG_NET_DSA_TAG_EDSA=y
+CONFIG_NET_DSA_TAG_TRAILER=y
+CONFIG_NET_DSA_MV88E6XXX=y
+CONFIG_NET_DSA_MV88E6060=y
+CONFIG_NET_DSA_MV88E6XXX_NEED_PPU=y
+CONFIG_NET_DSA_MV88E6131=y
+CONFIG_NET_DSA_MV88E6123_61_65=y
 CONFIG_VLAN_8021Q=m
 CONFIG_VLAN_8021Q_GVRP=y
 # CONFIG_DECNET is not set
@@ -694,6 +768,8 @@ CONFIG_LLC=m
 # CONFIG_LAPB is not set
 # CONFIG_ECONET is not set
 # CONFIG_WAN_ROUTER is not set
+CONFIG_PHONET=m
+CONFIG_IEEE802154=m
 CONFIG_NET_SCHED=y
 
 #
@@ -704,6 +780,7 @@ CONFIG_NET_SCH_HTB=m
 CONFIG_NET_SCH_HFSC=m
 CONFIG_NET_SCH_ATM=m
 CONFIG_NET_SCH_PRIO=m
+CONFIG_NET_SCH_MULTIQ=m
 CONFIG_NET_SCH_RED=m
 CONFIG_NET_SCH_SFQ=m
 CONFIG_NET_SCH_TEQL=m
@@ -711,6 +788,7 @@ CONFIG_NET_SCH_TBF=m
 CONFIG_NET_SCH_GRED=m
 CONFIG_NET_SCH_DSMARK=m
 CONFIG_NET_SCH_NETEM=m
+CONFIG_NET_SCH_DRR=m
 CONFIG_NET_SCH_INGRESS=m
 
 #
@@ -744,8 +822,10 @@ CONFIG_NET_ACT_IPT=m
 CONFIG_NET_ACT_NAT=m
 CONFIG_NET_ACT_PEDIT=m
 # CONFIG_NET_ACT_SIMP is not set
+CONFIG_NET_ACT_SKBEDIT=m
 CONFIG_NET_CLS_IND=y
 CONFIG_NET_SCH_FIFO=y
+# CONFIG_DCB is not set
 
 #
 # Network testing
@@ -828,37 +908,40 @@ CONFIG_BT_HCIBT3C=m
 CONFIG_BT_HCIBLUECARD=m
 CONFIG_BT_HCIBTUART=m
 CONFIG_BT_HCIVHCI=m
+CONFIG_BT_MRVL=m
+CONFIG_BT_MRVL_SDIO=m
 CONFIG_AF_RXRPC=m
 # CONFIG_AF_RXRPC_DEBUG is not set
 CONFIG_RXKAD=m
 CONFIG_FIB_RULES=y
-
-#
-# Wireless
-#
+CONFIG_WIRELESS=y
 CONFIG_CFG80211=m
-CONFIG_NL80211=y
+# CONFIG_NL80211_TESTMODE is not set
+# CONFIG_CFG80211_DEVELOPER_WARNINGS is not set
+# CONFIG_CFG80211_REG_DEBUG is not set
+# CONFIG_CFG80211_DEFAULT_PS is not set
+CONFIG_CFG80211_DEFAULT_PS_VALUE=0
+CONFIG_WIRELESS_OLD_REGULATORY=y
 CONFIG_WIRELESS_EXT=y
 CONFIG_WIRELESS_EXT_SYSFS=y
+CONFIG_LIB80211=m
+CONFIG_LIB80211_CRYPT_WEP=m
+CONFIG_LIB80211_CRYPT_CCMP=m
+CONFIG_LIB80211_CRYPT_TKIP=m
+# CONFIG_LIB80211_DEBUG is not set
 CONFIG_MAC80211=m
-
-#
-# Rate control algorithm selection
-#
-CONFIG_MAC80211_RC_PID=y
-CONFIG_MAC80211_RC_DEFAULT_PID=y
-CONFIG_MAC80211_RC_DEFAULT="pid"
+CONFIG_MAC80211_RC_MINSTREL=y
+# CONFIG_MAC80211_RC_DEFAULT_PID is not set
+CONFIG_MAC80211_RC_DEFAULT_MINSTREL=y
+CONFIG_MAC80211_RC_DEFAULT="minstrel"
 CONFIG_MAC80211_MESH=y
 CONFIG_MAC80211_LEDS=y
 # CONFIG_MAC80211_DEBUG_MENU is not set
-CONFIG_IEEE80211=m
-# CONFIG_IEEE80211_DEBUG is not set
-CONFIG_IEEE80211_CRYPT_WEP=m
-CONFIG_IEEE80211_CRYPT_CCMP=m
-CONFIG_IEEE80211_CRYPT_TKIP=m
+CONFIG_WIMAX=m
+CONFIG_WIMAX_DEBUG_LEVEL=8
 CONFIG_RFKILL=m
-CONFIG_RFKILL_INPUT=m
 CONFIG_RFKILL_LEDS=y
+CONFIG_RFKILL_INPUT=y
 # CONFIG_NET_9P is not set
 
 #
@@ -869,6 +952,7 @@ CONFIG_RFKILL_LEDS=y
 # Generic Driver Options
 #
 CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
+# CONFIG_DEVTMPFS is not set
 # CONFIG_STANDALONE is not set
 # CONFIG_PREVENT_FIRMWARE_BUILD is not set
 CONFIG_FW_LOADER=y
@@ -878,6 +962,7 @@ CONFIG_EXTRA_FIRMWARE=""
 CONFIG_CONNECTOR=m
 CONFIG_MTD=m
 # CONFIG_MTD_DEBUG is not set
+CONFIG_MTD_TESTS=m
 CONFIG_MTD_CONCAT=m
 CONFIG_MTD_PARTITIONS=y
 # CONFIG_MTD_REDBOOT_PARTS is not set
@@ -920,6 +1005,8 @@ CONFIG_MTD_CFI_I2=y
 # Mapping drivers for chip access
 #
 # CONFIG_MTD_COMPLEX_MAPPINGS is not set
+CONFIG_MTD_PHYSMAP=m
+# CONFIG_MTD_PHYSMAP_COMPAT is not set
 # CONFIG_MTD_TS5500 is not set
 # CONFIG_MTD_INTEL_VR_NOR is not set
 # CONFIG_MTD_PLATRAM is not set
@@ -942,6 +1029,12 @@ CONFIG_MTD_CFI_I2=y
 # CONFIG_MTD_NAND is not set
 # CONFIG_MTD_ONENAND is not set
 
+#
+# LPDDR flash memory drivers
+#
+CONFIG_MTD_LPDDR=m
+CONFIG_MTD_QINFO_PROBE=m
+
 #
 # UBI - Unsorted block images
 #
@@ -965,7 +1058,7 @@ CONFIG_PARPORT_AX88796=m
 CONFIG_PARPORT_1284=y
 CONFIG_PARPORT_NOT_PC=y
 CONFIG_PNP=y
-# CONFIG_PNP_DEBUG is not set
+CONFIG_PNP_DEBUG_MESSAGES=y
 
 #
 # Protocols
@@ -987,11 +1080,12 @@ CONFIG_BLK_DEV_DAC960=m
 CONFIG_BLK_DEV_LOOP=y
 CONFIG_BLK_DEV_CRYPTOLOOP=m
 CONFIG_BLK_DEV_NBD=m
+CONFIG_BLK_DEV_OSD=m
 CONFIG_BLK_DEV_SX8=m
 # CONFIG_BLK_DEV_UB is not set
 CONFIG_BLK_DEV_RAM=y
 CONFIG_BLK_DEV_RAM_COUNT=8
-CONFIG_BLK_DEV_RAM_SIZE=16384
+CONFIG_BLK_DEV_RAM_SIZE=32786
 # CONFIG_BLK_DEV_XIP is not set
 # CONFIG_CDROM_PKTCDVD is not set
 CONFIG_ATA_OVER_ETH=m
@@ -1000,47 +1094,45 @@ CONFIG_VIRTIO_BLK=m
 CONFIG_MISC_DEVICES=y
 # CONFIG_IBM_ASM is not set
 # CONFIG_PHANTOM is not set
-CONFIG_EEPROM_93CX6=m
 # CONFIG_SGI_IOC4 is not set
 CONFIG_TIFM_CORE=m
 CONFIG_TIFM_7XX1=m
-CONFIG_ACER_WMI=m
-CONFIG_ASUS_LAPTOP=m
-CONFIG_FUJITSU_LAPTOP=m
-CONFIG_FUJITSU_LAPTOP_DEBUG=y
-CONFIG_TC1100_WMI=m
-CONFIG_HP_WMI=m
-CONFIG_MSI_LAPTOP=m
-CONFIG_COMPAL_LAPTOP=m
-CONFIG_SONY_LAPTOP=m
-# CONFIG_SONYPI_COMPAT is not set
-CONFIG_THINKPAD_ACPI=m
-# CONFIG_THINKPAD_ACPI_DEBUG is not set
-CONFIG_THINKPAD_ACPI_VIDEO=y
-CONFIG_THINKPAD_ACPI_HOTKEY_POLL=y
-CONFIG_INTEL_MENLOW=m
-CONFIG_EEEPC_LAPTOP=m
+CONFIG_ICS932S401=m
 CONFIG_ENCLOSURE_SERVICES=m
 CONFIG_HP_ILO=m
+CONFIG_ISL29003=m
+CONFIG_C2PORT=m
+CONFIG_C2PORT_DURAMAR_2150=m
+
+#
+# EEPROM support
+#
+CONFIG_EEPROM_AT24=m
+CONFIG_EEPROM_LEGACY=m
+CONFIG_EEPROM_MAX6875=m
+CONFIG_EEPROM_93CX6=m
+CONFIG_CB710_CORE=m
+# CONFIG_CB710_DEBUG is not set
+CONFIG_CB710_DEBUG_ASSUMPTIONS=y
 CONFIG_HAVE_IDE=y
 CONFIG_IDE=y
-CONFIG_BLK_DEV_IDE=m
 
 #
 # Please see Documentation/ide/ide.txt for help/info on IDE drives
 #
+CONFIG_IDE_XFER_MODE=y
 CONFIG_IDE_TIMINGS=y
 CONFIG_IDE_ATAPI=y
+CONFIG_IDE_LEGACY=y
 # CONFIG_BLK_DEV_IDE_SATA is not set
-CONFIG_BLK_DEV_IDEDISK=m
-# CONFIG_IDEDISK_MULTI_MODE is not set
+CONFIG_IDE_GD=m
+CONFIG_IDE_GD_ATA=y
+# CONFIG_IDE_GD_ATAPI is not set
 CONFIG_BLK_DEV_IDECS=m
 CONFIG_BLK_DEV_DELKIN=m
 CONFIG_BLK_DEV_IDECD=m
 CONFIG_BLK_DEV_IDECD_VERBOSE_ERRORS=y
 # CONFIG_BLK_DEV_IDETAPE is not set
-CONFIG_BLK_DEV_IDEFLOPPY=m
-# CONFIG_BLK_DEV_IDESCSI is not set
 CONFIG_BLK_DEV_IDEACPI=y
 # CONFIG_IDE_TASK_IOCTL is not set
 CONFIG_IDE_PROC_FS=y
@@ -1059,6 +1151,7 @@ CONFIG_BLK_DEV_IDEDMA_SFF=y
 # PCI IDE chipsets support
 #
 CONFIG_BLK_DEV_IDEPCI=y
+CONFIG_IDEPCI_PCIBUS_ORDER=y
 # CONFIG_BLK_DEV_OFFBOARD is not set
 CONFIG_BLK_DEV_GENERIC=m
 CONFIG_BLK_DEV_OPTI621=m
@@ -1073,10 +1166,12 @@ CONFIG_BLK_DEV_TRIFLEX=m
 CONFIG_BLK_DEV_CS5520=m
 CONFIG_BLK_DEV_CS5530=m
 CONFIG_BLK_DEV_CS5535=m
+CONFIG_BLK_DEV_CS5536=m
 CONFIG_BLK_DEV_HPT366=m
 CONFIG_BLK_DEV_JMICRON=m
 CONFIG_BLK_DEV_SC1200=m
 CONFIG_BLK_DEV_PIIX=m
+CONFIG_BLK_DEV_IT8172=m
 CONFIG_BLK_DEV_IT8213=m
 CONFIG_BLK_DEV_IT821X=m
 CONFIG_BLK_DEV_NS87415=m
@@ -1126,10 +1221,6 @@ CONFIG_BLK_DEV_SR_VENDOR=y
 CONFIG_CHR_DEV_SG=m
 CONFIG_CHR_DEV_SCH=m
 CONFIG_SCSI_ENCLOSURE=m
-
-#
-# Some SCSI devices (e.g. CD jukebox) support multiple LUNs
-#
 CONFIG_SCSI_MULTI_LUN=y
 # CONFIG_SCSI_CONSTANTS is not set
 # CONFIG_SCSI_LOGGING is not set
@@ -1150,6 +1241,9 @@ CONFIG_SCSI_SAS_LIBSAS_DEBUG=y
 CONFIG_SCSI_SRP_ATTRS=m
 CONFIG_SCSI_LOWLEVEL=y
 CONFIG_ISCSI_TCP=m
+CONFIG_SCSI_CXGB3_ISCSI=m
+CONFIG_SCSI_BNX2_ISCSI=m
+CONFIG_BE2ISCSI=m
 CONFIG_BLK_DEV_3W_XXXX_RAID=m
 CONFIG_SCSI_3W_9XXX=m
 CONFIG_SCSI_7000FASST=m
@@ -1175,6 +1269,8 @@ CONFIG_AIC79XX_DEBUG_MASK=0
 # CONFIG_AIC79XX_REG_PRETTY_PRINT is not set
 CONFIG_SCSI_AIC94XX=m
 # CONFIG_AIC94XX_DEBUG is not set
+CONFIG_SCSI_MVSAS=m
+CONFIG_SCSI_MVSAS_DEBUG=y
 CONFIG_SCSI_DPT_I2O=m
 CONFIG_SCSI_ADVANSYS=m
 CONFIG_SCSI_IN2000=m
@@ -1185,9 +1281,16 @@ CONFIG_MEGARAID_MM=m
 CONFIG_MEGARAID_MAILBOX=m
 CONFIG_MEGARAID_LEGACY=m
 CONFIG_MEGARAID_SAS=m
+CONFIG_SCSI_MPT2SAS=m
+CONFIG_SCSI_MPT2SAS_MAX_SGE=128
+# CONFIG_SCSI_MPT2SAS_LOGGING is not set
 CONFIG_SCSI_HPTIOP=m
 CONFIG_SCSI_BUSLOGIC=m
 CONFIG_SCSI_FLASHPOINT=y
+CONFIG_LIBFC=m
+CONFIG_LIBFCOE=m
+CONFIG_FCOE=m
+CONFIG_FCOE_FNIC=m
 CONFIG_SCSI_DMX3191D=m
 CONFIG_SCSI_DTC3280=m
 CONFIG_SCSI_EATA=m
@@ -1210,7 +1313,6 @@ CONFIG_SCSI_PPA=m
 CONFIG_SCSI_IMM=m
 # CONFIG_SCSI_IZIP_EPP16 is not set
 # CONFIG_SCSI_IZIP_SLOW_CTR is not set
-CONFIG_SCSI_MVSAS=m
 CONFIG_SCSI_NCR53C406A=m
 CONFIG_SCSI_NCR_D700=m
 CONFIG_SCSI_STEX=m
@@ -1244,7 +1346,9 @@ CONFIG_SCSI_U14_34F_MAX_TAGS=8
 CONFIG_SCSI_ULTRASTOR=m
 CONFIG_SCSI_NSP32=m
 # CONFIG_SCSI_DEBUG is not set
+CONFIG_SCSI_PMCRAID=m
 # CONFIG_SCSI_SRP is not set
+CONFIG_SCSI_BFA_FC=m
 CONFIG_SCSI_LOWLEVEL_PCMCIA=y
 CONFIG_PCMCIA_AHA152X=m
 CONFIG_PCMCIA_FDOMAIN=m
@@ -1256,8 +1360,13 @@ CONFIG_SCSI_DH_RDAC=m
 CONFIG_SCSI_DH_HP_SW=m
 CONFIG_SCSI_DH_EMC=m
 CONFIG_SCSI_DH_ALUA=m
+CONFIG_SCSI_OSD_INITIATOR=m
+CONFIG_SCSI_OSD_ULD=m
+CONFIG_SCSI_OSD_DPRINT_SENSE=1
+# CONFIG_SCSI_OSD_DEBUG is not set
 CONFIG_ATA=m
 # CONFIG_ATA_NONSTANDARD is not set
+CONFIG_ATA_VERBOSE_ERROR=y
 CONFIG_ATA_ACPI=y
 CONFIG_SATA_PMP=y
 CONFIG_SATA_AHCI=m
@@ -1281,6 +1390,7 @@ CONFIG_PATA_ACPI=m
 CONFIG_PATA_ALI=m
 CONFIG_PATA_AMD=m
 CONFIG_PATA_ARTOP=m
+CONFIG_PATA_ATP867X=m
 CONFIG_PATA_ATIIXP=m
 CONFIG_PATA_CMD640_PCI=m
 CONFIG_PATA_CMD64X=m
@@ -1315,6 +1425,7 @@ CONFIG_PATA_PCMCIA=m
 CONFIG_PATA_PDC_OLD=m
 CONFIG_PATA_QDI=m
 CONFIG_PATA_RADISYS=m
+CONFIG_PATA_RDC=m
 CONFIG_PATA_RZ1000=m
 CONFIG_PATA_SC1200=m
 CONFIG_PATA_SERVERWORKS=m
@@ -1332,7 +1443,9 @@ CONFIG_MD_RAID0=m
 CONFIG_MD_RAID1=m
 CONFIG_MD_RAID10=m
 CONFIG_MD_RAID456=m
-CONFIG_MD_RAID5_RESHAPE=y
+CONFIG_MULTICORE_RAID456=y
+CONFIG_MD_RAID6_PQ=m
+CONFIG_ASYNC_RAID6_TEST=m
 CONFIG_MD_MULTIPATH=m
 # CONFIG_MD_FAULTY is not set
 CONFIG_BLK_DEV_DM=m
@@ -1340,8 +1453,11 @@ CONFIG_BLK_DEV_DM=m
 CONFIG_DM_CRYPT=m
 CONFIG_DM_SNAPSHOT=m
 CONFIG_DM_MIRROR=m
+CONFIG_DM_LOG_USERSPACE=m
 CONFIG_DM_ZERO=m
 CONFIG_DM_MULTIPATH=m
+CONFIG_DM_MULTIPATH_QL=m
+CONFIG_DM_MULTIPATH_ST=m
 CONFIG_DM_DELAY=m
 CONFIG_DM_UEVENT=y
 CONFIG_FUSION=y
@@ -1357,12 +1473,17 @@ CONFIG_FUSION_CTL=m
 #
 
 #
-# Enable only one of the two stacks, unless you know what you are doing
+# You can enable one or both FireWire driver stacks.
+#
+
+#
+# See the help texts for more information.
 #
 CONFIG_FIREWIRE=m
 CONFIG_FIREWIRE_OHCI=m
 CONFIG_FIREWIRE_OHCI_DEBUG=y
 CONFIG_FIREWIRE_SBP2=m
+CONFIG_FIREWIRE_NET=m
 CONFIG_IEEE1394=m
 CONFIG_IEEE1394_OHCI1394=m
 CONFIG_IEEE1394_PCILYNX=m
@@ -1392,7 +1513,7 @@ CONFIG_TUN=m
 CONFIG_VETH=m
 CONFIG_NET_SB1000=m
 # CONFIG_ARCNET is not set
-CONFIG_PHYLIB=m
+CONFIG_PHYLIB=y
 
 #
 # MII PHY device drivers
@@ -1407,6 +1528,10 @@ CONFIG_SMSC_PHY=m
 CONFIG_BROADCOM_PHY=m
 CONFIG_ICPLUS_PHY=m
 CONFIG_REALTEK_PHY=m
+CONFIG_NATIONAL_PHY=m
+CONFIG_STE10XP=m
+CONFIG_LSI_ET1011C_PHY=m
+# CONFIG_FIXED_PHY is not set
 CONFIG_MDIO_BITBANG=m
 CONFIG_NET_ETHERNET=y
 CONFIG_MII=m
@@ -1431,11 +1556,14 @@ CONFIG_ULTRAMCA=m
 CONFIG_ULTRA=m
 CONFIG_ULTRA32=m
 CONFIG_SMC9194=m
+CONFIG_ETHOC=m
 CONFIG_NET_VENDOR_RACAL=y
 CONFIG_NI52=m
 CONFIG_NI65=m
+CONFIG_DNET=m
 CONFIG_NET_TULIP=y
 CONFIG_DE2104X=m
+CONFIG_DE2104X_DSL=0
 CONFIG_TULIP=m
 # CONFIG_TULIP_MWI is not set
 # CONFIG_TULIP_MMIO is not set
@@ -1466,6 +1594,9 @@ CONFIG_IBMLANA=m
 # CONFIG_IBM_NEW_EMAC_RGMII is not set
 # CONFIG_IBM_NEW_EMAC_TAH is not set
 # CONFIG_IBM_NEW_EMAC_EMAC4 is not set
+# CONFIG_IBM_NEW_EMAC_NO_FLOW_CTRL is not set
+# CONFIG_IBM_NEW_EMAC_MAL_CLR_ICINTSTAT is not set
+# CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set
 CONFIG_NET_PCI=y
 CONFIG_PCNET32=m
 CONFIG_AMD8111_ETH=m
@@ -1479,7 +1610,6 @@ CONFIG_B44_PCI=y
 CONFIG_FORCEDETH=m
 # CONFIG_FORCEDETH_NAPI is not set
 CONFIG_CS89x0=m
-CONFIG_EEPRO100=m
 CONFIG_E100=m
 CONFIG_LNE390=m
 CONFIG_FEALNX=m
@@ -1496,9 +1626,12 @@ CONFIG_8139TOO_8129=y
 CONFIG_R6040=m
 CONFIG_SIS900=m
 CONFIG_EPIC100=m
+CONFIG_SMSC9420=m
 CONFIG_SUNDANCE=m
 CONFIG_SUNDANCE_MMIO=y
 CONFIG_TLAN=m
+CONFIG_KS8842=m
+CONFIG_KS8851_MLL=m
 CONFIG_VIA_RHINE=m
 CONFIG_VIA_RHINE_MMIO=y
 CONFIG_SC92031=m
@@ -1506,16 +1639,17 @@ CONFIG_NET_POCKET=y
 CONFIG_ATP=m
 CONFIG_DE600=m
 CONFIG_DE620=m
+CONFIG_ATL2=m
 CONFIG_NETDEV_1000=y
 CONFIG_ACENIC=m
 # CONFIG_ACENIC_OMIT_TIGON_I is not set
 CONFIG_DL2K=m
 CONFIG_E1000=m
-# CONFIG_E1000_DISABLE_PACKET_SPLIT is not set
 CONFIG_E1000E=m
 CONFIG_IP1000=m
 CONFIG_IGB=m
-# CONFIG_IGB_LRO is not set
+CONFIG_IGB_DCA=y
+CONFIG_IGBVF=m
 CONFIG_NS83820=m
 CONFIG_HAMACHI=m
 CONFIG_YELLOWFIN=m
@@ -1527,71 +1661,159 @@ CONFIG_SKY2=m
 CONFIG_VIA_VELOCITY=m
 CONFIG_TIGON3=m
 CONFIG_BNX2=m
+CONFIG_CNIC=m
 CONFIG_QLA3XXX=m
 CONFIG_ATL1=m
 CONFIG_ATL1E=m
+CONFIG_ATL1C=m
+CONFIG_JME=m
 CONFIG_NETDEV_10000=y
+CONFIG_MDIO=m
 CONFIG_CHELSIO_T1=m
 CONFIG_CHELSIO_T1_1G=y
+CONFIG_CHELSIO_T3_DEPENDS=y
 CONFIG_CHELSIO_T3=m
+CONFIG_ENIC=m
 CONFIG_IXGBE=m
+CONFIG_IXGBE_DCA=y
 CONFIG_IXGB=m
 CONFIG_S2IO=m
+CONFIG_VXGE=m
+# CONFIG_VXGE_DEBUG_TRACE_ALL is not set
 CONFIG_MYRI10GE=m
+CONFIG_MYRI10GE_DCA=y
 CONFIG_NETXEN_NIC=m
 CONFIG_NIU=m
-# CONFIG_MLX4_CORE is not set
+CONFIG_MLX4_EN=m
+CONFIG_MLX4_CORE=m
+CONFIG_MLX4_DEBUG=y
 CONFIG_TEHUTI=m
 CONFIG_BNX2X=m
+CONFIG_QLGE=m
 CONFIG_SFC=m
+CONFIG_SFC_MTD=y
+CONFIG_BE2NET=m
 # CONFIG_TR is not set
-
-#
-# Wireless LAN
-#
+CONFIG_WLAN=y
 # CONFIG_WLAN_PRE80211 is not set
 CONFIG_WLAN_80211=y
 CONFIG_PCMCIA_RAYCS=m
-# CONFIG_IPW2100 is not set
-# CONFIG_IPW2200 is not set
-# CONFIG_LIBERTAS is not set
+CONFIG_LIBERTAS=m
+CONFIG_LIBERTAS_USB=m
+CONFIG_LIBERTAS_CS=m
+CONFIG_LIBERTAS_SDIO=m
+# CONFIG_LIBERTAS_DEBUG is not set
+CONFIG_LIBERTAS_THINFIRM=m
+CONFIG_LIBERTAS_THINFIRM_USB=m
 CONFIG_AIRO=m
-CONFIG_HERMES=m
-CONFIG_PLX_HERMES=m
-CONFIG_TMD_HERMES=m
-CONFIG_NORTEL_HERMES=m
-CONFIG_PCI_HERMES=m
-CONFIG_PCMCIA_HERMES=m
-CONFIG_PCMCIA_SPECTRUM=m
 CONFIG_ATMEL=m
 CONFIG_PCI_ATMEL=m
 CONFIG_PCMCIA_ATMEL=m
+CONFIG_AT76C50X_USB=m
 CONFIG_AIRO_CS=m
 CONFIG_PCMCIA_WL3501=m
 CONFIG_PRISM54=m
 CONFIG_USB_ZD1201=m
 CONFIG_USB_NET_RNDIS_WLAN=m
-# CONFIG_RTL8180 is not set
-# CONFIG_RTL8187 is not set
-# CONFIG_ADM8211 is not set
-# CONFIG_MAC80211_HWSIM is not set
-# CONFIG_P54_COMMON is not set
-# CONFIG_ATH5K is not set
-# CONFIG_ATH9K is not set
-# CONFIG_IWLCORE is not set
+CONFIG_RTL8180=m
+CONFIG_RTL8187=m
+CONFIG_RTL8187_LEDS=y
+CONFIG_ADM8211=m
+CONFIG_MAC80211_HWSIM=m
+CONFIG_MWL8K=m
+CONFIG_P54_COMMON=m
+CONFIG_P54_USB=m
+CONFIG_P54_PCI=m
+CONFIG_P54_LEDS=y
+CONFIG_ATH_COMMON=m
+CONFIG_ATH5K=m
+# CONFIG_ATH5K_DEBUG is not set
+CONFIG_ATH9K=m
+# CONFIG_ATH9K_DEBUG is not set
+CONFIG_AR9170_USB=m
+CONFIG_AR9170_LEDS=y
+CONFIG_IPW2100=m
+# CONFIG_IPW2100_MONITOR is not set
+# CONFIG_IPW2100_DEBUG is not set
+CONFIG_IPW2200=m
+# CONFIG_IPW2200_MONITOR is not set
+# CONFIG_IPW2200_QOS is not set
+# CONFIG_IPW2200_DEBUG is not set
+CONFIG_LIBIPW=m
+# CONFIG_LIBIPW_DEBUG is not set
+CONFIG_IWLWIFI=m
 # CONFIG_IWLWIFI_LEDS is not set
-# CONFIG_IWLAGN is not set
-# CONFIG_IWL3945 is not set
+# CONFIG_IWLWIFI_SPECTRUM_MEASUREMENT is not set
+# CONFIG_IWLWIFI_DEBUG is not set
+CONFIG_IWLAGN=m
+CONFIG_IWL4965=y
+CONFIG_IWL5000=y
+CONFIG_IWL3945=m
+# CONFIG_IWL3945_SPECTRUM_MEASUREMENT is not set
 CONFIG_HOSTAP=m
 CONFIG_HOSTAP_FIRMWARE=y
 # CONFIG_HOSTAP_FIRMWARE_NVRAM is not set
 CONFIG_HOSTAP_PLX=m
 CONFIG_HOSTAP_PCI=m
 CONFIG_HOSTAP_CS=m
-# CONFIG_B43 is not set
-# CONFIG_B43LEGACY is not set
-# CONFIG_ZD1211RW is not set
-# CONFIG_RT2X00 is not set
+CONFIG_B43=m
+CONFIG_B43_PCI_AUTOSELECT=y
+CONFIG_B43_PCICORE_AUTOSELECT=y
+CONFIG_B43_PCMCIA=y
+CONFIG_B43_SDIO=y
+CONFIG_B43_PIO=y
+CONFIG_B43_PHY_LP=y
+CONFIG_B43_LEDS=y
+CONFIG_B43_HWRNG=y
+# CONFIG_B43_DEBUG is not set
+CONFIG_B43LEGACY=m
+CONFIG_B43LEGACY_PCI_AUTOSELECT=y
+CONFIG_B43LEGACY_PCICORE_AUTOSELECT=y
+CONFIG_B43LEGACY_LEDS=y
+CONFIG_B43LEGACY_HWRNG=y
+CONFIG_B43LEGACY_DEBUG=y
+CONFIG_B43LEGACY_DMA=y
+CONFIG_B43LEGACY_PIO=y
+CONFIG_B43LEGACY_DMA_AND_PIO_MODE=y
+# CONFIG_B43LEGACY_DMA_MODE is not set
+# CONFIG_B43LEGACY_PIO_MODE is not set
+CONFIG_ZD1211RW=m
+# CONFIG_ZD1211RW_DEBUG is not set
+CONFIG_RT2X00=m
+CONFIG_RT2400PCI=m
+CONFIG_RT2500PCI=m
+CONFIG_RT61PCI=m
+CONFIG_RT2500USB=m
+CONFIG_RT73USB=m
+CONFIG_RT2800USB=m
+CONFIG_RT2X00_LIB_PCI=m
+CONFIG_RT2X00_LIB_USB=m
+CONFIG_RT2X00_LIB=m
+CONFIG_RT2X00_LIB_HT=y
+CONFIG_RT2X00_LIB_FIRMWARE=y
+CONFIG_RT2X00_LIB_CRYPTO=y
+CONFIG_RT2X00_LIB_LEDS=y
+# CONFIG_RT2X00_DEBUG is not set
+CONFIG_HERMES=m
+CONFIG_HERMES_CACHE_FW_ON_INIT=y
+CONFIG_PLX_HERMES=m
+CONFIG_TMD_HERMES=m
+CONFIG_NORTEL_HERMES=m
+CONFIG_PCI_HERMES=m
+CONFIG_PCMCIA_HERMES=m
+CONFIG_PCMCIA_SPECTRUM=m
+CONFIG_WL12XX=m
+CONFIG_WL1251=m
+CONFIG_WL1251_SDIO=m
+CONFIG_IWM=m
+
+#
+# WiMAX Wireless Broadband devices
+#
+CONFIG_WIMAX_I2400M=m
+CONFIG_WIMAX_I2400M_USB=m
+CONFIG_WIMAX_I2400M_SDIO=m
+CONFIG_WIMAX_I2400M_DEBUG_LEVEL=8
 
 #
 # USB Network Adapters
@@ -1603,7 +1825,9 @@ CONFIG_USB_RTL8150=m
 CONFIG_USB_USBNET=m
 CONFIG_USB_NET_AX8817X=m
 CONFIG_USB_NET_CDCETHER=m
+CONFIG_USB_NET_CDC_EEM=m
 CONFIG_USB_NET_DM9601=m
+CONFIG_USB_NET_SMSC95XX=m
 CONFIG_USB_NET_GL620A=m
 CONFIG_USB_NET_NET1080=m
 CONFIG_USB_NET_PLUSB=m
@@ -1618,6 +1842,8 @@ CONFIG_USB_EPSON2888=y
 CONFIG_USB_KC2190=y
 CONFIG_USB_NET_ZAURUS=m
 CONFIG_USB_HSO=m
+CONFIG_USB_NET_INT51X1=m
+CONFIG_USB_CDC_PHONET=m
 CONFIG_NET_PCMCIA=y
 CONFIG_PCMCIA_3C589=m
 CONFIG_PCMCIA_3C574=m
@@ -1627,7 +1853,36 @@ CONFIG_PCMCIA_NMCLAN=m
 CONFIG_PCMCIA_SMC91C92=m
 CONFIG_PCMCIA_XIRC2PS=m
 CONFIG_PCMCIA_AXNET=m
-# CONFIG_WAN is not set
+CONFIG_WAN=y
+CONFIG_HOSTESS_SV11=m
+CONFIG_COSA=m
+CONFIG_LANMEDIA=m
+CONFIG_SEALEVEL_4021=m
+CONFIG_HDLC=m
+CONFIG_HDLC_RAW=m
+CONFIG_HDLC_RAW_ETH=m
+CONFIG_HDLC_CISCO=m
+CONFIG_HDLC_FR=m
+CONFIG_HDLC_PPP=m
+
+#
+# X.25/LAPB support is disabled
+#
+CONFIG_PCI200SYN=m
+CONFIG_WANXL=m
+# CONFIG_WANXL_BUILD_FIRMWARE is not set
+CONFIG_PC300TOO=m
+CONFIG_N2=m
+CONFIG_C101=m
+CONFIG_FARSYNC=m
+CONFIG_DSCC4=m
+CONFIG_DSCC4_PCISYNC=y
+CONFIG_DSCC4_PCI_RST=y
+CONFIG_DLCI=m
+CONFIG_DLCI_MAX=8
+CONFIG_SDLA=m
+CONFIG_SBNI=m
+CONFIG_SBNI_MULTILINE=y
 CONFIG_ATM_DRIVERS=y
 # CONFIG_ATM_DUMMY is not set
 CONFIG_ATM_TCP=m
@@ -1665,6 +1920,9 @@ CONFIG_ATM_FORE200E_TX_RETRY=16
 CONFIG_ATM_FORE200E_DEBUG=0
 CONFIG_ATM_HE=m
 CONFIG_ATM_HE_USE_SUNI=y
+CONFIG_ATM_SOLOS=m
+CONFIG_IEEE802154_DRIVERS=m
+CONFIG_IEEE802154_FAKEHARD=m
 # CONFIG_FDDI is not set
 # CONFIG_HIPPI is not set
 # CONFIG_PLIP is not set
@@ -1689,7 +1947,9 @@ CONFIG_SLIP_MODE_SLIP6=y
 # CONFIG_NETPOLL is not set
 # CONFIG_NET_POLL_CONTROLLER is not set
 CONFIG_VIRTIO_NET=m
+CONFIG_VMXNET3=m
 CONFIG_ISDN=y
+CONFIG_ISDN_I4L=m
 CONFIG_MISDN=m
 CONFIG_MISDN_DSP=m
 CONFIG_MISDN_L1OIP=m
@@ -1699,7 +1959,107 @@ CONFIG_MISDN_L1OIP=m
 #
 CONFIG_MISDN_HFCPCI=m
 CONFIG_MISDN_HFCMULTI=m
-# CONFIG_ISDN_I4L is not set
+CONFIG_MISDN_HFCUSB=m
+CONFIG_MISDN_AVMFRITZ=m
+CONFIG_MISDN_SPEEDFAX=m
+CONFIG_MISDN_INFINEON=m
+CONFIG_MISDN_W6692=m
+CONFIG_MISDN_NETJET=m
+CONFIG_MISDN_IPAC=m
+CONFIG_MISDN_ISAR=m
+CONFIG_ISDN_PPP=y
+CONFIG_ISDN_PPP_VJ=y
+CONFIG_ISDN_MPP=y
+CONFIG_IPPP_FILTER=y
+CONFIG_ISDN_PPP_BSDCOMP=m
+CONFIG_ISDN_AUDIO=y
+CONFIG_ISDN_TTY_FAX=y
+
+#
+# ISDN feature submodules
+#
+CONFIG_ISDN_DIVERSION=m
+
+#
+# ISDN4Linux hardware drivers
+#
+
+#
+# Passive cards
+#
+CONFIG_ISDN_DRV_HISAX=m
+
+#
+# D-channel protocol features
+#
+CONFIG_HISAX_EURO=y
+CONFIG_DE_AOC=y
+# CONFIG_HISAX_NO_SENDCOMPLETE is not set
+# CONFIG_HISAX_NO_LLC is not set
+# CONFIG_HISAX_NO_KEYPAD is not set
+CONFIG_HISAX_1TR6=y
+CONFIG_HISAX_NI1=y
+CONFIG_HISAX_MAX_CARDS=8
+
+#
+# HiSax supported cards
+#
+CONFIG_HISAX_16_0=y
+CONFIG_HISAX_16_3=y
+CONFIG_HISAX_TELESPCI=y
+CONFIG_HISAX_S0BOX=y
+CONFIG_HISAX_AVM_A1=y
+CONFIG_HISAX_FRITZPCI=y
+CONFIG_HISAX_AVM_A1_PCMCIA=y
+CONFIG_HISAX_ELSA=y
+CONFIG_HISAX_IX1MICROR2=y
+CONFIG_HISAX_DIEHLDIVA=y
+CONFIG_HISAX_ASUSCOM=y
+CONFIG_HISAX_TELEINT=y
+CONFIG_HISAX_HFCS=y
+CONFIG_HISAX_SEDLBAUER=y
+CONFIG_HISAX_SPORTSTER=y
+CONFIG_HISAX_MIC=y
+CONFIG_HISAX_NETJET=y
+CONFIG_HISAX_NETJET_U=y
+CONFIG_HISAX_NICCY=y
+CONFIG_HISAX_ISURF=y
+CONFIG_HISAX_HSTSAPHIR=y
+CONFIG_HISAX_BKM_A4T=y
+CONFIG_HISAX_SCT_QUADRO=y
+CONFIG_HISAX_GAZEL=y
+CONFIG_HISAX_HFC_PCI=y
+CONFIG_HISAX_W6692=y
+CONFIG_HISAX_HFC_SX=y
+CONFIG_HISAX_ENTERNOW_PCI=y
+CONFIG_HISAX_DEBUG=y
+
+#
+# HiSax PCMCIA card service modules
+#
+CONFIG_HISAX_SEDLBAUER_CS=m
+CONFIG_HISAX_ELSA_CS=m
+CONFIG_HISAX_AVM_A1_CS=m
+CONFIG_HISAX_TELES_CS=m
+
+#
+# HiSax sub driver modules
+#
+CONFIG_HISAX_ST5481=m
+CONFIG_HISAX_HFCUSB=m
+CONFIG_HISAX_HFC4S8S=m
+CONFIG_HISAX_FRITZ_PCIPNP=m
+
+#
+# Active cards
+#
+CONFIG_ISDN_DRV_ICN=m
+CONFIG_ISDN_DRV_PCBIT=m
+CONFIG_ISDN_DRV_SC=m
+CONFIG_ISDN_DRV_ACT2000=m
+CONFIG_HYSDN=m
+CONFIG_HYSDN_CAPI=y
+CONFIG_ISDN_HDLC=m
 CONFIG_ISDN_CAPI=m
 CONFIG_ISDN_DRV_AVMB1_VERBOSE_REASON=y
 CONFIG_CAPI_TRACE=y
@@ -1707,6 +2067,7 @@ CONFIG_ISDN_CAPI_MIDDLEWARE=y
 CONFIG_ISDN_CAPI_CAPI20=m
 CONFIG_ISDN_CAPI_CAPIFS_BOOL=y
 CONFIG_ISDN_CAPI_CAPIFS=m
+CONFIG_ISDN_CAPI_CAPIDRV=m
 
 #
 # CAPI hardware drivers
@@ -1727,13 +2088,18 @@ CONFIG_ISDN_DIVAS_PRIPCI=y
 CONFIG_ISDN_DIVAS_DIVACAPI=m
 CONFIG_ISDN_DIVAS_USERIDI=m
 CONFIG_ISDN_DIVAS_MAINT=m
+CONFIG_ISDN_DRV_GIGASET=m
+CONFIG_GIGASET_BASE=m
+CONFIG_GIGASET_M105=m
+CONFIG_GIGASET_M101=m
+# CONFIG_GIGASET_DEBUG is not set
 # CONFIG_PHONE is not set
 
 #
 # Input device support
 #
 CONFIG_INPUT=y
-# CONFIG_INPUT_FF_MEMLESS is not set
+CONFIG_INPUT_FF_MEMLESS=m
 CONFIG_INPUT_POLLDEV=m
 
 #
@@ -1751,12 +2117,17 @@ CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768
 # Input Device Drivers
 #
 CONFIG_INPUT_KEYBOARD=y
+CONFIG_KEYBOARD_ADP5588=m
 CONFIG_KEYBOARD_ATKBD=y
-CONFIG_KEYBOARD_SUNKBD=m
+CONFIG_QT2160=m
 CONFIG_KEYBOARD_LKKBD=m
-CONFIG_KEYBOARD_XTKBD=m
+CONFIG_KEYBOARD_LM8323=m
+CONFIG_KEYBOARD_MAX7359=m
 CONFIG_KEYBOARD_NEWTON=m
+CONFIG_KEYBOARD_OPENCORES=m
 CONFIG_KEYBOARD_STOWAWAY=m
+CONFIG_KEYBOARD_SUNKBD=m
+CONFIG_KEYBOARD_XTKBD=m
 # CONFIG_INPUT_MOUSE is not set
 # CONFIG_INPUT_JOYSTICK is not set
 # CONFIG_INPUT_TABLET is not set
@@ -1771,7 +2142,11 @@ CONFIG_INPUT_ATI_REMOTE2=m
 CONFIG_INPUT_KEYSPAN_REMOTE=m
 CONFIG_INPUT_POWERMATE=m
 CONFIG_INPUT_YEALINK=m
+CONFIG_INPUT_CM109=m
 # CONFIG_INPUT_UINPUT is not set
+CONFIG_INPUT_WINBOND_CIR=m
+CONFIG_INPUT_PCF50633_PMU=m
+CONFIG_INPUT_WM831X_ON=m
 
 #
 # Hardware I/O ports
@@ -1828,6 +2203,7 @@ CONFIG_SERIAL_CORE=y
 CONFIG_SERIAL_CORE_CONSOLE=y
 # CONFIG_SERIAL_JSM is not set
 CONFIG_UNIX98_PTYS=y
+# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
 # CONFIG_LEGACY_PTYS is not set
 CONFIG_PRINTER=m
 # CONFIG_LP_CONSOLE is not set
@@ -1842,6 +2218,7 @@ CONFIG_IPMI_SI=m
 CONFIG_IPMI_WATCHDOG=m
 CONFIG_IPMI_POWEROFF=m
 CONFIG_HW_RANDOM=m
+CONFIG_HW_RANDOM_TIMERIOMEM=m
 CONFIG_HW_RANDOM_INTEL=m
 CONFIG_HW_RANDOM_AMD=m
 CONFIG_HW_RANDOM_GEODE=m
@@ -1874,6 +2251,7 @@ CONFIG_HANGCHECK_TIMER=m
 CONFIG_DEVPORT=y
 CONFIG_I2C=m
 CONFIG_I2C_BOARDINFO=y
+CONFIG_I2C_COMPAT=y
 CONFIG_I2C_CHARDEV=m
 CONFIG_I2C_HELPER_AUTO=y
 CONFIG_I2C_ALGOBIT=m
@@ -1903,6 +2281,11 @@ CONFIG_I2C_SIS96X=m
 CONFIG_I2C_VIA=m
 CONFIG_I2C_VIAPRO=m
 
+#
+# ACPI drivers
+#
+CONFIG_I2C_SCMI=m
+
 #
 # I2C system bus drivers (mostly embedded / system-on-chip)
 #
@@ -1935,19 +2318,18 @@ CONFIG_SCx200_ACB=m
 # Miscellaneous I2C Chip support
 #
 CONFIG_DS1682=m
-CONFIG_AT24=m
-CONFIG_SENSORS_EEPROM=m
-CONFIG_SENSORS_PCF8574=m
-CONFIG_PCF8575=m
-CONFIG_SENSORS_PCA9539=m
-CONFIG_SENSORS_PCF8591=m
-CONFIG_SENSORS_MAX6875=m
 CONFIG_SENSORS_TSL2550=m
 # CONFIG_I2C_DEBUG_CORE is not set
 # CONFIG_I2C_DEBUG_ALGO is not set
 # CONFIG_I2C_DEBUG_BUS is not set
 # CONFIG_I2C_DEBUG_CHIP is not set
 # CONFIG_SPI is not set
+
+#
+# PPS support
+#
+CONFIG_PPS=m
+# CONFIG_PPS_DEBUG is not set
 CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y
 # CONFIG_GPIOLIB is not set
 CONFIG_W1=m
@@ -1965,15 +2347,28 @@ CONFIG_W1_MASTER_DS2482=m
 #
 CONFIG_W1_SLAVE_THERM=m
 CONFIG_W1_SLAVE_SMEM=m
+CONFIG_W1_SLAVE_DS2431=m
 CONFIG_W1_SLAVE_DS2433=m
 CONFIG_W1_SLAVE_DS2433_CRC=y
 CONFIG_W1_SLAVE_DS2760=m
+CONFIG_W1_SLAVE_BQ27000=m
 CONFIG_POWER_SUPPLY=y
 # CONFIG_POWER_SUPPLY_DEBUG is not set
 # CONFIG_PDA_POWER is not set
+CONFIG_WM831X_POWER=m
+CONFIG_WM8350_POWER=m
 # CONFIG_BATTERY_DS2760 is not set
+CONFIG_BATTERY_DS2782=m
+CONFIG_BATTERY_BQ27x00=m
+CONFIG_BATTERY_MAX17040=m
+CONFIG_CHARGER_PCF50633=m
 CONFIG_HWMON=m
 CONFIG_HWMON_VID=m
+# CONFIG_HWMON_DEBUG_CHIP is not set
+
+#
+# Native drivers
+#
 CONFIG_SENSORS_ABITUGURU=m
 CONFIG_SENSORS_ABITUGURU3=m
 CONFIG_SENSORS_AD7414=m
@@ -1984,8 +2379,10 @@ CONFIG_SENSORS_ADM1026=m
 CONFIG_SENSORS_ADM1029=m
 CONFIG_SENSORS_ADM1031=m
 CONFIG_SENSORS_ADM9240=m
+CONFIG_SENSORS_ADT7462=m
 CONFIG_SENSORS_ADT7470=m
 CONFIG_SENSORS_ADT7473=m
+CONFIG_SENSORS_ADT7475=m
 CONFIG_SENSORS_K8TEMP=m
 CONFIG_SENSORS_ASB100=m
 CONFIG_SENSORS_ATXP1=m
@@ -1994,9 +2391,8 @@ CONFIG_SENSORS_I5K_AMB=m
 CONFIG_SENSORS_F71805F=m
 CONFIG_SENSORS_F71882FG=m
 CONFIG_SENSORS_F75375S=m
-CONFIG_SENSORS_FSCHER=m
-CONFIG_SENSORS_FSCPOS=m
 CONFIG_SENSORS_FSCHMD=m
+CONFIG_SENSORS_G760A=m
 CONFIG_SENSORS_GL518SM=m
 CONFIG_SENSORS_GL520SM=m
 CONFIG_SENSORS_CORETEMP=m
@@ -2014,10 +2410,14 @@ CONFIG_SENSORS_LM87=m
 CONFIG_SENSORS_LM90=m
 CONFIG_SENSORS_LM92=m
 CONFIG_SENSORS_LM93=m
+CONFIG_SENSORS_LTC4215=m
+CONFIG_SENSORS_LTC4245=m
+CONFIG_SENSORS_LM95241=m
 CONFIG_SENSORS_MAX1619=m
 CONFIG_SENSORS_MAX6650=m
 CONFIG_SENSORS_PC87360=m
 CONFIG_SENSORS_PC87427=m
+CONFIG_SENSORS_PCF8591=m
 CONFIG_SENSORS_SIS5595=m
 CONFIG_SENSORS_DME1737=m
 CONFIG_SENSORS_SMSC47M1=m
@@ -2025,6 +2425,8 @@ CONFIG_SENSORS_SMSC47M192=m
 CONFIG_SENSORS_SMSC47B397=m
 CONFIG_SENSORS_ADS7828=m
 CONFIG_SENSORS_THMC50=m
+CONFIG_SENSORS_TMP401=m
+CONFIG_SENSORS_TMP421=m
 CONFIG_SENSORS_VIA686A=m
 CONFIG_SENSORS_VT1211=m
 CONFIG_SENSORS_VT8231=m
@@ -2036,9 +2438,16 @@ CONFIG_SENSORS_W83L785TS=m
 CONFIG_SENSORS_W83L786NG=m
 CONFIG_SENSORS_W83627HF=m
 CONFIG_SENSORS_W83627EHF=m
+CONFIG_SENSORS_WM831X=m
+CONFIG_SENSORS_WM8350=m
 CONFIG_SENSORS_HDAPS=m
 CONFIG_SENSORS_APPLESMC=m
-# CONFIG_HWMON_DEBUG_CHIP is not set
+
+#
+# ACPI drivers
+#
+CONFIG_SENSORS_ATK0110=m
+CONFIG_SENSORS_LIS3LV02D=m
 CONFIG_THERMAL=y
 CONFIG_WATCHDOG=y
 # CONFIG_WATCHDOG_NOWAYOUT is not set
@@ -2047,11 +2456,14 @@ CONFIG_WATCHDOG=y
 # Watchdog Device Drivers
 #
 CONFIG_SOFT_WATCHDOG=m
+CONFIG_WM831X_WATCHDOG=m
+CONFIG_WM8350_WATCHDOG=m
 CONFIG_ACQUIRE_WDT=m
 CONFIG_ADVANTECH_WDT=m
 CONFIG_ALIM1535_WDT=m
 CONFIG_ALIM7101_WDT=m
 CONFIG_SC520_WDT=m
+CONFIG_SBC_FITPC2_WATCHDOG=m
 CONFIG_EUROTECH_WDT=m
 CONFIG_IB700_WDT=m
 CONFIG_IBMASR=m
@@ -2060,6 +2472,7 @@ CONFIG_I6300ESB_WDT=m
 CONFIG_ITCO_WDT=m
 # CONFIG_ITCO_VENDOR_SUPPORT is not set
 CONFIG_IT8712F_WDT=m
+CONFIG_IT87_WDT=m
 CONFIG_HP_WATCHDOG=m
 CONFIG_SC1200_WDT=m
 CONFIG_SCx200_WDT=m
@@ -2068,9 +2481,11 @@ CONFIG_60XX_WDT=m
 CONFIG_SBC8360_WDT=m
 CONFIG_SBC7240_WDT=m
 CONFIG_CPU5_WDT=m
+CONFIG_SMSC_SCH311X_WDT=m
 CONFIG_SMSC37B787_WDT=m
 CONFIG_W83627HF_WDT=m
 CONFIG_W83697HF_WDT=m
+CONFIG_W83697UG_WDT=m
 CONFIG_W83877F_WDT=m
 CONFIG_W83977F_WDT=m
 CONFIG_MACHZ_WDT=m
@@ -2088,24 +2503,26 @@ CONFIG_SBC_EPX_C3_WATCHDOG=m
 #
 CONFIG_PCIPCWATCHDOG=m
 CONFIG_WDTPCI=m
-CONFIG_WDT_501_PCI=y
 
 #
 # USB-based Watchdog Cards
 #
 CONFIG_USBPCWATCHDOG=m
+CONFIG_SSB_POSSIBLE=y
 
 #
 # Sonics Silicon Backplane
 #
-CONFIG_SSB_POSSIBLE=y
 CONFIG_SSB=m
 CONFIG_SSB_SPROM=y
+CONFIG_SSB_BLOCKIO=y
 CONFIG_SSB_PCIHOST_POSSIBLE=y
 CONFIG_SSB_PCIHOST=y
-# CONFIG_SSB_B43_PCI_BRIDGE is not set
+CONFIG_SSB_B43_PCI_BRIDGE=y
 CONFIG_SSB_PCMCIAHOST_POSSIBLE=y
 CONFIG_SSB_PCMCIAHOST=y
+CONFIG_SSB_SDIOHOST_POSSIBLE=y
+CONFIG_SSB_SDIOHOST=y
 # CONFIG_SSB_DEBUG is not set
 CONFIG_SSB_DRIVER_PCICORE_POSSIBLE=y
 CONFIG_SSB_DRIVER_PCICORE=y
@@ -2113,14 +2530,21 @@ CONFIG_SSB_DRIVER_PCICORE=y
 #
 # Multifunction device drivers
 #
-# CONFIG_MFD_CORE is not set
+CONFIG_MFD_CORE=m
 CONFIG_MFD_SM501=m
 CONFIG_HTC_PASIC3=m
 # CONFIG_MFD_TMIO is not set
-
-#
-# Multimedia devices
-#
+CONFIG_MFD_WM8400=m
+CONFIG_MFD_WM831X=m
+CONFIG_MFD_WM8350=m
+CONFIG_MFD_WM8350_I2C=m
+CONFIG_MFD_PCF50633=m
+CONFIG_PCF50633_ADC=m
+CONFIG_PCF50633_GPIO=m
+CONFIG_AB3100_CORE=m
+CONFIG_AB3100_OTP=m
+# CONFIG_REGULATOR is not set
+CONFIG_MEDIA_SUPPORT=m
 
 #
 # Multimedia core support
@@ -2137,26 +2561,20 @@ CONFIG_VIDEO_MEDIA=m
 #
 # CONFIG_MEDIA_ATTACH is not set
 CONFIG_MEDIA_TUNER=m
-CONFIG_MEDIA_TUNER_CUSTOMIZE=y
-# CONFIG_MEDIA_TUNER_SIMPLE is not set
-# CONFIG_MEDIA_TUNER_TDA8290 is not set
-# CONFIG_MEDIA_TUNER_TDA827X is not set
-# CONFIG_MEDIA_TUNER_TDA18271 is not set
-# CONFIG_MEDIA_TUNER_TDA9887 is not set
-# CONFIG_MEDIA_TUNER_TEA5761 is not set
-# CONFIG_MEDIA_TUNER_TEA5767 is not set
-# CONFIG_MEDIA_TUNER_MT20XX is not set
-# CONFIG_MEDIA_TUNER_MT2060 is not set
-# CONFIG_MEDIA_TUNER_MT2266 is not set
-# CONFIG_MEDIA_TUNER_MT2131 is not set
-# CONFIG_MEDIA_TUNER_QT1010 is not set
-# CONFIG_MEDIA_TUNER_XC2028 is not set
-# CONFIG_MEDIA_TUNER_XC5000 is not set
-# CONFIG_MEDIA_TUNER_MXL5005S is not set
-# CONFIG_MEDIA_TUNER_MXL5007T is not set
+# CONFIG_MEDIA_TUNER_CUSTOMISE is not set
+CONFIG_MEDIA_TUNER_SIMPLE=m
+CONFIG_MEDIA_TUNER_TDA8290=m
+CONFIG_MEDIA_TUNER_TDA9887=m
+CONFIG_MEDIA_TUNER_TEA5761=m
+CONFIG_MEDIA_TUNER_TEA5767=m
+CONFIG_MEDIA_TUNER_MT20XX=m
+CONFIG_MEDIA_TUNER_XC2028=m
+CONFIG_MEDIA_TUNER_XC5000=m
+CONFIG_MEDIA_TUNER_MC44S803=m
 CONFIG_VIDEO_V4L2=m
 CONFIG_VIDEO_CAPTURE_DRIVERS=y
 # CONFIG_VIDEO_ADV_DEBUG is not set
+# CONFIG_VIDEO_FIXED_MINOR_RANGES is not set
 # CONFIG_VIDEO_HELPER_CHIPS_AUTO is not set
 
 #
@@ -2181,14 +2599,28 @@ CONFIG_VIDEO_CAPTURE_DRIVERS=y
 # CONFIG_VIDEO_WM8739 is not set
 # CONFIG_VIDEO_VP27SMPX is not set
 
+#
+# RDS decoders
+#
+# CONFIG_VIDEO_SAA6588 is not set
+
 #
 # Video decoders
 #
+# CONFIG_VIDEO_ADV7180 is not set
+# CONFIG_VIDEO_BT819 is not set
+# CONFIG_VIDEO_BT856 is not set
+# CONFIG_VIDEO_BT866 is not set
+# CONFIG_VIDEO_KS0127 is not set
 # CONFIG_VIDEO_OV7670 is not set
+# CONFIG_VIDEO_MT9V011 is not set
 # CONFIG_VIDEO_TCM825X is not set
+# CONFIG_VIDEO_SAA7110 is not set
 # CONFIG_VIDEO_SAA711X is not set
 # CONFIG_VIDEO_SAA717X is not set
+# CONFIG_VIDEO_TVP514X is not set
 # CONFIG_VIDEO_TVP5150 is not set
+# CONFIG_VIDEO_VPX3220 is not set
 
 #
 # Video and audio decoders
@@ -2204,6 +2636,11 @@ CONFIG_VIDEO_CAPTURE_DRIVERS=y
 # Video encoders
 #
 # CONFIG_VIDEO_SAA7127 is not set
+# CONFIG_VIDEO_SAA7185 is not set
+# CONFIG_VIDEO_ADV7170 is not set
+# CONFIG_VIDEO_ADV7175 is not set
+# CONFIG_VIDEO_THS7303 is not set
+# CONFIG_VIDEO_ADV7343 is not set
 
 #
 # Video improvement chips
@@ -2214,28 +2651,34 @@ CONFIG_VIDEO_CAPTURE_DRIVERS=y
 # CONFIG_VIDEO_BT848 is not set
 # CONFIG_VIDEO_SAA5246A is not set
 # CONFIG_VIDEO_SAA5249 is not set
+# CONFIG_VIDEO_ZORAN is not set
 # CONFIG_VIDEO_SAA7134 is not set
 # CONFIG_VIDEO_HEXIUM_ORION is not set
 # CONFIG_VIDEO_HEXIUM_GEMINI is not set
 # CONFIG_VIDEO_CX88 is not set
 # CONFIG_VIDEO_CX23885 is not set
 # CONFIG_VIDEO_AU0828 is not set
+# CONFIG_VIDEO_IVTV is not set
 # CONFIG_VIDEO_CX18 is not set
+# CONFIG_VIDEO_SAA7164 is not set
 # CONFIG_VIDEO_CAFE_CCIC is not set
+# CONFIG_SOC_CAMERA is not set
 CONFIG_V4L_USB_DRIVERS=y
 # CONFIG_USB_VIDEO_CLASS is not set
+CONFIG_USB_VIDEO_CLASS_INPUT_EVDEV=y
 # CONFIG_USB_GSPCA is not set
 # CONFIG_VIDEO_PVRUSB2 is not set
+# CONFIG_VIDEO_HDPVR is not set
 # CONFIG_VIDEO_EM28XX is not set
+# CONFIG_VIDEO_CX231XX is not set
 # CONFIG_VIDEO_USBVISION is not set
 # CONFIG_USB_ET61X251 is not set
 # CONFIG_USB_SN9C102 is not set
 # CONFIG_USB_ZC0301 is not set
+# CONFIG_USB_PWC_INPUT_EVDEV is not set
 # CONFIG_USB_ZR364XX is not set
 # CONFIG_USB_STKWEBCAM is not set
 # CONFIG_USB_S2255 is not set
-# CONFIG_SOC_CAMERA is not set
-# CONFIG_VIDEO_SH_MOBILE_CEU is not set
 CONFIG_RADIO_ADAPTERS=y
 # CONFIG_RADIO_CADET is not set
 # CONFIG_RADIO_RTRACK is not set
@@ -2251,8 +2694,14 @@ CONFIG_RADIO_ADAPTERS=y
 # CONFIG_RADIO_TRUST is not set
 # CONFIG_RADIO_TYPHOON is not set
 # CONFIG_RADIO_ZOLTRIX is not set
+# CONFIG_I2C_SI4713 is not set
+# CONFIG_RADIO_SI4713 is not set
 # CONFIG_USB_DSBR is not set
-# CONFIG_USB_SI470X is not set
+# CONFIG_RADIO_SI470X is not set
+# CONFIG_USB_MR800 is not set
+# CONFIG_RADIO_TEA5764 is not set
+CONFIG_DVB_MAX_ADAPTERS=8
+# CONFIG_DVB_DYNAMIC_MINORS is not set
 CONFIG_DVB_CAPTURE_DRIVERS=y
 
 #
@@ -2268,8 +2717,7 @@ CONFIG_DVB_CAPTURE_DRIVERS=y
 # CONFIG_DVB_USB is not set
 # CONFIG_DVB_TTUSB_BUDGET is not set
 # CONFIG_DVB_TTUSB_DEC is not set
-# CONFIG_DVB_CINERGYT2 is not set
-# CONFIG_DVB_SIANO_SMS1XXX is not set
+# CONFIG_SMS_SIANO_MDTV is not set
 
 #
 # Supported FlexCopII (B2C2) Adapters
@@ -2286,80 +2734,24 @@ CONFIG_DVB_CAPTURE_DRIVERS=y
 # CONFIG_DVB_PLUTO2 is not set
 
 #
-# Supported DVB Frontends
-#
-
-#
-# Customise DVB Frontends
-#
-# CONFIG_DVB_FE_CUSTOMISE is not set
-
-#
-# DVB-S (satellite) frontends
-#
-# CONFIG_DVB_CX24110 is not set
-# CONFIG_DVB_CX24123 is not set
-# CONFIG_DVB_MT312 is not set
-# CONFIG_DVB_S5H1420 is not set
-# CONFIG_DVB_STV0299 is not set
-# CONFIG_DVB_TDA8083 is not set
-# CONFIG_DVB_TDA10086 is not set
-# CONFIG_DVB_VES1X93 is not set
-# CONFIG_DVB_TUNER_ITD1000 is not set
-# CONFIG_DVB_TDA826X is not set
-# CONFIG_DVB_TUA6100 is not set
-
-#
-# DVB-T (terrestrial) frontends
-#
-# CONFIG_DVB_SP8870 is not set
-# CONFIG_DVB_SP887X is not set
-# CONFIG_DVB_CX22700 is not set
-# CONFIG_DVB_CX22702 is not set
-# CONFIG_DVB_DRX397XD is not set
-# CONFIG_DVB_L64781 is not set
-# CONFIG_DVB_TDA1004X is not set
-# CONFIG_DVB_NXT6000 is not set
-# CONFIG_DVB_MT352 is not set
-# CONFIG_DVB_ZL10353 is not set
-# CONFIG_DVB_DIB3000MB is not set
-# CONFIG_DVB_DIB3000MC is not set
-# CONFIG_DVB_DIB7000M is not set
-# CONFIG_DVB_DIB7000P is not set
-# CONFIG_DVB_TDA10048 is not set
-
-#
-# DVB-C (cable) frontends
+# Supported SDMC DM1105 Adapters
 #
-# CONFIG_DVB_VES1820 is not set
-# CONFIG_DVB_TDA10021 is not set
-# CONFIG_DVB_TDA10023 is not set
-# CONFIG_DVB_STV0297 is not set
+# CONFIG_DVB_DM1105 is not set
 
 #
-# ATSC (North American/Korean Terrestrial/Cable DTV) frontends
+# Supported FireWire (IEEE 1394) Adapters
 #
-# CONFIG_DVB_NXT200X is not set
-# CONFIG_DVB_OR51211 is not set
-# CONFIG_DVB_OR51132 is not set
-# CONFIG_DVB_BCM3510 is not set
-# CONFIG_DVB_LGDT330X is not set
-# CONFIG_DVB_S5H1409 is not set
-# CONFIG_DVB_AU8522 is not set
-# CONFIG_DVB_S5H1411 is not set
+# CONFIG_DVB_FIREDTV is not set
 
 #
-# Digital terrestrial only tuners/PLL
+# Supported Earthsoft PT1 Adapters
 #
-# CONFIG_DVB_PLL is not set
-# CONFIG_DVB_TUNER_DIB0070 is not set
+# CONFIG_DVB_PT1 is not set
 
 #
-# SEC control devices for DVB-S
+# Supported DVB Frontends
 #
-# CONFIG_DVB_LNBP21 is not set
-# CONFIG_DVB_ISL6405 is not set
-# CONFIG_DVB_ISL6421 is not set
+# CONFIG_DVB_FE_CUSTOMISE is not set
 CONFIG_DAB=y
 # CONFIG_USB_DABUSB is not set
 
@@ -2377,13 +2769,17 @@ CONFIG_AGP_SIS=m
 CONFIG_AGP_SWORKS=m
 CONFIG_AGP_VIA=m
 CONFIG_AGP_EFFICEON=m
+CONFIG_VGA_ARB=y
 CONFIG_DRM=m
+CONFIG_DRM_KMS_HELPER=m
+CONFIG_DRM_TTM=m
 CONFIG_DRM_TDFX=m
 CONFIG_DRM_R128=m
 CONFIG_DRM_RADEON=m
 CONFIG_DRM_I810=m
 CONFIG_DRM_I830=m
 CONFIG_DRM_I915=m
+CONFIG_DRM_I915_KMS=y
 CONFIG_DRM_MGA=m
 CONFIG_DRM_SIS=m
 CONFIG_DRM_VIA=m
@@ -2393,15 +2789,17 @@ CONFIG_VIDEO_OUTPUT_CONTROL=m
 CONFIG_FB=y
 CONFIG_FIRMWARE_EDID=y
 CONFIG_FB_DDC=m
+CONFIG_FB_BOOT_VESA_SUPPORT=y
 CONFIG_FB_CFB_FILLRECT=y
 CONFIG_FB_CFB_COPYAREA=y
 CONFIG_FB_CFB_IMAGEBLIT=y
 # CONFIG_FB_CFB_REV_PIXELS_IN_BYTE is not set
-# CONFIG_FB_SYS_FILLRECT is not set
-# CONFIG_FB_SYS_COPYAREA is not set
-# CONFIG_FB_SYS_IMAGEBLIT is not set
+CONFIG_FB_SYS_FILLRECT=m
+CONFIG_FB_SYS_COPYAREA=m
+CONFIG_FB_SYS_IMAGEBLIT=m
 # CONFIG_FB_FOREIGN_ENDIAN is not set
-# CONFIG_FB_SYS_FOPS is not set
+CONFIG_FB_SYS_FOPS=m
+CONFIG_FB_DEFERRED_IO=y
 CONFIG_FB_SVGALIB=m
 # CONFIG_FB_MACMODES is not set
 CONFIG_FB_BACKLIGHT=y
@@ -2421,7 +2819,6 @@ CONFIG_FB_ASILIANT=y
 # CONFIG_FB_VGA16 is not set
 CONFIG_FB_UVESA=m
 CONFIG_FB_VESA=y
-CONFIG_FB_EFI=y
 # CONFIG_FB_N411 is not set
 # CONFIG_FB_HGA is not set
 # CONFIG_FB_S1D13XXX is not set
@@ -2438,16 +2835,12 @@ CONFIG_FB_I810_GTF=y
 CONFIG_FB_I810_I2C=y
 CONFIG_FB_LE80578=m
 CONFIG_FB_CARILLO_RANCH=m
-CONFIG_FB_INTEL=m
-# CONFIG_FB_INTEL_DEBUG is not set
-CONFIG_FB_INTEL_I2C=y
 CONFIG_FB_MATROX=m
 CONFIG_FB_MATROX_MILLENIUM=y
 CONFIG_FB_MATROX_MYSTIQUE=y
 CONFIG_FB_MATROX_G=y
 CONFIG_FB_MATROX_I2C=m
 CONFIG_FB_MATROX_MAVEN=m
-CONFIG_FB_MATROX_MULTIHEAD=y
 CONFIG_FB_RADEON=m
 CONFIG_FB_RADEON_I2C=y
 CONFIG_FB_RADEON_BACKLIGHT=y
@@ -2466,15 +2859,15 @@ CONFIG_FB_SAVAGE_ACCEL=y
 CONFIG_FB_SIS=m
 CONFIG_FB_SIS_300=y
 CONFIG_FB_SIS_315=y
+CONFIG_FB_VIA=m
 CONFIG_FB_NEOMAGIC=m
 CONFIG_FB_KYRO=m
 CONFIG_FB_3DFX=m
 CONFIG_FB_3DFX_ACCEL=y
+CONFIG_FB_3DFX_I2C=y
 CONFIG_FB_VOODOO1=m
 CONFIG_FB_VT8623=m
-CONFIG_FB_CYBLA=m
 CONFIG_FB_TRIDENT=m
-CONFIG_FB_TRIDENT_ACCEL=y
 CONFIG_FB_ARK=m
 CONFIG_FB_PM3=m
 # CONFIG_FB_CARMINE is not set
@@ -2482,17 +2875,24 @@ CONFIG_FB_GEODE=y
 CONFIG_FB_GEODE_LX=m
 CONFIG_FB_GEODE_GX=m
 CONFIG_FB_GEODE_GX1=m
+CONFIG_FB_TMIO=m
+CONFIG_FB_TMIO_ACCELL=y
 CONFIG_FB_SM501=m
 # CONFIG_FB_VIRTUAL is not set
+CONFIG_FB_METRONOME=m
+# CONFIG_FB_MB862XX is not set
+# CONFIG_FB_BROADSHEET is not set
 CONFIG_BACKLIGHT_LCD_SUPPORT=y
 CONFIG_LCD_CLASS_DEVICE=m
 # CONFIG_LCD_ILI9320 is not set
 CONFIG_LCD_PLATFORM=m
 CONFIG_BACKLIGHT_CLASS_DEVICE=y
-CONFIG_BACKLIGHT_CORGI=m
+CONFIG_BACKLIGHT_GENERIC=m
 CONFIG_BACKLIGHT_PROGEAR=m
 CONFIG_BACKLIGHT_CARILLO_RANCH=m
 CONFIG_BACKLIGHT_MBP_NVIDIA=m
+CONFIG_BACKLIGHT_SAHARA=m
+CONFIG_BACKLIGHT_WM831X=m
 
 #
 # Display device support
@@ -2508,7 +2908,6 @@ CONFIG_DISPLAY_SUPPORT=m
 #
 CONFIG_VGA_CONSOLE=y
 # CONFIG_VGACON_SOFT_SCROLLBACK is not set
-CONFIG_VIDEO_SELECT=y
 # CONFIG_MDA_CONSOLE is not set
 CONFIG_DUMMY_CONSOLE=y
 CONFIG_FRAMEBUFFER_CONSOLE=y
@@ -2522,6 +2921,8 @@ CONFIG_LOGO_LINUX_MONO=y
 CONFIG_LOGO_LINUX_VGA16=y
 CONFIG_LOGO_LINUX_CLUT224=y
 CONFIG_SOUND=m
+CONFIG_SOUND_OSS_CORE=y
+CONFIG_SOUND_OSS_CORE_PRECLAIM=y
 CONFIG_SND=m
 CONFIG_SND_TIMER=m
 CONFIG_SND_PCM=m
@@ -2537,6 +2938,12 @@ CONFIG_SND_SEQUENCER_OSS=y
 CONFIG_SND_VERBOSE_PROCFS=y
 # CONFIG_SND_VERBOSE_PRINTK is not set
 # CONFIG_SND_DEBUG is not set
+CONFIG_SND_DMA_SGBUF=y
+# CONFIG_SND_RAWMIDI_SEQ is not set
+# CONFIG_SND_OPL3_LIB_SEQ is not set
+# CONFIG_SND_OPL4_LIB_SEQ is not set
+# CONFIG_SND_SBAWE_SEQ is not set
+# CONFIG_SND_EMU10K1_SEQ is not set
 CONFIG_SND_DRIVERS=y
 CONFIG_SND_DUMMY=m
 # CONFIG_SND_VIRMIDI is not set
@@ -2553,7 +2960,6 @@ CONFIG_SND_ISA=y
 # CONFIG_SND_AZT2320 is not set
 # CONFIG_SND_CMI8330 is not set
 # CONFIG_SND_CS4231 is not set
-# CONFIG_SND_CS4232 is not set
 # CONFIG_SND_CS4236 is not set
 # CONFIG_SND_DT019X is not set
 # CONFIG_SND_ES968 is not set
@@ -2576,6 +2982,8 @@ CONFIG_SND_ISA=y
 # CONFIG_SND_SGALAXY is not set
 # CONFIG_SND_SSCAPE is not set
 # CONFIG_SND_WAVEFRONT is not set
+# CONFIG_SND_MSND_PINNACLE is not set
+# CONFIG_SND_MSND_CLASSIC is not set
 CONFIG_SND_PCI=y
 # CONFIG_SND_AD1889 is not set
 # CONFIG_SND_ALS300 is not set
@@ -2596,6 +3004,7 @@ CONFIG_SND_PCI=y
 # CONFIG_SND_CS46XX is not set
 # CONFIG_SND_CS5530 is not set
 # CONFIG_SND_CS5535AUDIO is not set
+# CONFIG_SND_CTXFI is not set
 # CONFIG_SND_DARLA20 is not set
 # CONFIG_SND_GINA20 is not set
 # CONFIG_SND_LAYLA20 is not set
@@ -2608,6 +3017,8 @@ CONFIG_SND_PCI=y
 # CONFIG_SND_INDIGO is not set
 # CONFIG_SND_INDIGOIO is not set
 # CONFIG_SND_INDIGODJ is not set
+# CONFIG_SND_INDIGOIOX is not set
+# CONFIG_SND_INDIGODJX is not set
 # CONFIG_SND_EMU10K1 is not set
 # CONFIG_SND_EMU10K1X is not set
 # CONFIG_SND_ENS1370 is not set
@@ -2624,6 +3035,7 @@ CONFIG_SND_PCI=y
 # CONFIG_SND_INTEL8X0 is not set
 # CONFIG_SND_INTEL8X0M is not set
 # CONFIG_SND_KORG1212 is not set
+# CONFIG_SND_LX6464ES is not set
 # CONFIG_SND_MAESTRO3 is not set
 # CONFIG_SND_MIXART is not set
 # CONFIG_SND_NM256 is not set
@@ -2644,6 +3056,7 @@ CONFIG_SND_USB=y
 # CONFIG_SND_USB_AUDIO is not set
 # CONFIG_SND_USB_USX2Y is not set
 # CONFIG_SND_USB_CAIAQ is not set
+# CONFIG_SND_USB_US122L is not set
 CONFIG_SND_PCMCIA=y
 # CONFIG_SND_VXPOCKET is not set
 # CONFIG_SND_PDAUDIOCF is not set
@@ -2651,22 +3064,53 @@ CONFIG_SND_PCMCIA=y
 # CONFIG_SOUND_PRIME is not set
 CONFIG_HID_SUPPORT=y
 CONFIG_HID=y
-CONFIG_HID_DEBUG=y
 # CONFIG_HIDRAW is not set
 
 #
 # USB Input Devices
 #
 CONFIG_USB_HID=m
-# CONFIG_USB_HIDINPUT_POWERBOOK is not set
-# CONFIG_HID_FF is not set
+# CONFIG_HID_PID is not set
 CONFIG_USB_HIDDEV=y
 
 #
-# USB HID Boot Protocol drivers
-#
-# CONFIG_USB_KBD is not set
-# CONFIG_USB_MOUSE is not set
+# Special HID drivers
+#
+CONFIG_HID_A4TECH=m
+CONFIG_HID_APPLE=m
+CONFIG_HID_BELKIN=m
+CONFIG_HID_CHERRY=m
+CONFIG_HID_CHICONY=m
+CONFIG_HID_CYPRESS=m
+CONFIG_HID_DRAGONRISE=m
+CONFIG_DRAGONRISE_FF=y
+CONFIG_HID_EZKEY=m
+CONFIG_HID_KYE=m
+CONFIG_HID_GYRATION=m
+CONFIG_HID_TWINHAN=m
+CONFIG_HID_KENSINGTON=m
+CONFIG_HID_LOGITECH=m
+CONFIG_LOGITECH_FF=y
+CONFIG_LOGIRUMBLEPAD2_FF=y
+CONFIG_HID_MICROSOFT=m
+CONFIG_HID_MONTEREY=m
+CONFIG_HID_NTRIG=m
+CONFIG_HID_PANTHERLORD=m
+CONFIG_PANTHERLORD_FF=y
+CONFIG_HID_PETALYNX=m
+CONFIG_HID_SAMSUNG=m
+CONFIG_HID_SONY=m
+CONFIG_HID_SUNPLUS=m
+CONFIG_HID_GREENASIA=m
+CONFIG_GREENASIA_FF=y
+CONFIG_HID_SMARTJOYPLUS=m
+CONFIG_SMARTJOYPLUS_FF=y
+CONFIG_HID_TOPSEED=m
+CONFIG_HID_THRUSTMASTER=m
+CONFIG_THRUSTMASTER_FF=y
+CONFIG_HID_WACOM=m
+CONFIG_HID_ZEROPLUS=m
+CONFIG_ZEROPLUS_FF=y
 CONFIG_USB_SUPPORT=y
 CONFIG_USB_ARCH_HAS_HCD=y
 CONFIG_USB_ARCH_HAS_OHCI=y
@@ -2684,16 +3128,23 @@ CONFIG_USB_DYNAMIC_MINORS=y
 CONFIG_USB_SUSPEND=y
 # CONFIG_USB_OTG is not set
 # CONFIG_USB_MON is not set
+CONFIG_USB_WUSB=m
+CONFIG_USB_WUSB_CBAF=m
+# CONFIG_USB_WUSB_CBAF_DEBUG is not set
 
 #
 # USB Host Controller Drivers
 #
 # CONFIG_USB_C67X00_HCD is not set
+CONFIG_USB_XHCI_HCD=m
+# CONFIG_USB_XHCI_HCD_DEBUGGING is not set
 CONFIG_USB_EHCI_HCD=m
 # CONFIG_USB_EHCI_ROOT_HUB_TT is not set
 # CONFIG_USB_EHCI_TT_NEWSCHED is not set
+CONFIG_USB_OXU210HP_HCD=m
 CONFIG_USB_ISP116X_HCD=m
 # CONFIG_USB_ISP1760_HCD is not set
+CONFIG_USB_ISP1362_HCD=m
 CONFIG_USB_OHCI_HCD=m
 CONFIG_USB_OHCI_HCD_SSB=y
 # CONFIG_USB_OHCI_BIG_ENDIAN_DESC is not set
@@ -2704,6 +3155,8 @@ CONFIG_USB_U132_HCD=m
 CONFIG_USB_SL811_HCD=m
 # CONFIG_USB_SL811_CS is not set
 CONFIG_USB_R8A66597_HCD=m
+CONFIG_USB_WHCI_HCD=m
+CONFIG_USB_HWA_HCD=m
 
 #
 # Enable Host or Gadget support to see Inventra options
@@ -2715,28 +3168,28 @@ CONFIG_USB_R8A66597_HCD=m
 CONFIG_USB_ACM=m
 CONFIG_USB_PRINTER=m
 CONFIG_USB_WDM=m
+CONFIG_USB_TMC=m
 
 #
-# NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support'
+# NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may
 #
 
 #
-# may also be needed; see USB_STORAGE Help for more information
+# also be needed; see USB_STORAGE Help for more info
 #
 CONFIG_USB_STORAGE=m
 # CONFIG_USB_STORAGE_DEBUG is not set
 # CONFIG_USB_STORAGE_DATAFAB is not set
-CONFIG_USB_STORAGE_FREECOM=y
-CONFIG_USB_STORAGE_ISD200=y
-CONFIG_USB_STORAGE_DPCM=y
-CONFIG_USB_STORAGE_USBAT=y
-CONFIG_USB_STORAGE_SDDR09=y
-CONFIG_USB_STORAGE_SDDR55=y
-CONFIG_USB_STORAGE_JUMPSHOT=y
-CONFIG_USB_STORAGE_ALAUDA=y
-CONFIG_USB_STORAGE_ONETOUCH=y
-CONFIG_USB_STORAGE_KARMA=y
-CONFIG_USB_STORAGE_CYPRESS_ATACB=y
+CONFIG_USB_STORAGE_FREECOM=m
+CONFIG_USB_STORAGE_ISD200=m
+CONFIG_USB_STORAGE_USBAT=m
+CONFIG_USB_STORAGE_SDDR09=m
+CONFIG_USB_STORAGE_SDDR55=m
+CONFIG_USB_STORAGE_JUMPSHOT=m
+CONFIG_USB_STORAGE_ALAUDA=m
+CONFIG_USB_STORAGE_ONETOUCH=m
+CONFIG_USB_STORAGE_KARMA=m
+CONFIG_USB_STORAGE_CYPRESS_ATACB=m
 # CONFIG_USB_LIBUSUAL is not set
 
 #
@@ -2758,7 +3211,7 @@ CONFIG_USB_SERIAL_BELKIN=m
 CONFIG_USB_SERIAL_CH341=m
 CONFIG_USB_SERIAL_WHITEHEAT=m
 CONFIG_USB_SERIAL_DIGI_ACCELEPORT=m
-CONFIG_USB_SERIAL_CP2101=m
+CONFIG_USB_SERIAL_CP210X=m
 CONFIG_USB_SERIAL_CYPRESS_M8=m
 CONFIG_USB_SERIAL_EMPEG=m
 CONFIG_USB_SERIAL_FTDI_SIO=m
@@ -2782,16 +3235,20 @@ CONFIG_USB_SERIAL_MOTOROLA=m
 # CONFIG_USB_SERIAL_NAVMAN is not set
 CONFIG_USB_SERIAL_PL2303=m
 CONFIG_USB_SERIAL_OTI6858=m
+CONFIG_USB_SERIAL_QUALCOMM=m
 CONFIG_USB_SERIAL_SPCP8X5=m
 CONFIG_USB_SERIAL_HP4X=m
 CONFIG_USB_SERIAL_SAFE=m
 # CONFIG_USB_SERIAL_SAFE_PADDED is not set
+CONFIG_USB_SERIAL_SIEMENS_MPI=m
 CONFIG_USB_SERIAL_SIERRAWIRELESS=m
+CONFIG_USB_SERIAL_SYMBOL=m
 CONFIG_USB_SERIAL_TI=m
 # CONFIG_USB_SERIAL_CYBERJACK is not set
 CONFIG_USB_SERIAL_XIRCOM=m
 CONFIG_USB_SERIAL_OPTION=m
 # CONFIG_USB_SERIAL_OMNINET is not set
+CONFIG_USB_SERIAL_OPTICON=m
 # CONFIG_USB_SERIAL_DEBUG is not set
 
 #
@@ -2800,6 +3257,7 @@ CONFIG_USB_SERIAL_OPTION=m
 CONFIG_USB_EMI62=m
 CONFIG_USB_EMI26=m
 # CONFIG_USB_ADUTUX is not set
+CONFIG_USB_SEVSEG=m
 # CONFIG_USB_RIO500 is not set
 # CONFIG_USB_LEGOTOWER is not set
 CONFIG_USB_LCD=m
@@ -2807,7 +3265,6 @@ CONFIG_USB_BERRY_CHARGE=m
 CONFIG_USB_LED=m
 CONFIG_USB_CYPRESS_CY7C63=m
 CONFIG_USB_CYTHERM=m
-# CONFIG_USB_PHIDGET is not set
 # CONFIG_USB_IDMOUSE is not set
 CONFIG_USB_FTDI_ELAN=m
 # CONFIG_USB_APPLEDISPLAY is not set
@@ -2818,18 +3275,31 @@ CONFIG_USB_SISUSBVGA_CON=y
 CONFIG_USB_IOWARRIOR=m
 # CONFIG_USB_TEST is not set
 CONFIG_USB_ISIGHTFW=m
+CONFIG_USB_VST=m
 CONFIG_USB_ATM=m
 CONFIG_USB_SPEEDTOUCH=m
 CONFIG_USB_CXACRU=m
 CONFIG_USB_UEAGLEATM=m
 CONFIG_USB_XUSBATM=m
 # CONFIG_USB_GADGET is not set
+
+#
+# OTG and related infrastructure
+#
+CONFIG_USB_OTG_UTILS=y
+CONFIG_NOP_USB_XCEIV=m
+CONFIG_UWB=m
+CONFIG_UWB_HWA=m
+CONFIG_UWB_WHCI=m
+CONFIG_UWB_WLP=m
+CONFIG_UWB_I1480U=m
+CONFIG_UWB_I1480U_WLP=m
 CONFIG_MMC=m
 # CONFIG_MMC_DEBUG is not set
 # CONFIG_MMC_UNSAFE_RESUME is not set
 
 #
-# MMC/SD Card Drivers
+# MMC/SD/SDIO Card Drivers
 #
 CONFIG_MMC_BLOCK=m
 CONFIG_MMC_BLOCK_BOUNCE=y
@@ -2837,14 +3307,19 @@ CONFIG_SDIO_UART=m
 CONFIG_MMC_TEST=m
 
 #
-# MMC/SD Host Controller Drivers
+# MMC/SD/SDIO Host Controller Drivers
 #
 CONFIG_MMC_SDHCI=m
 CONFIG_MMC_SDHCI_PCI=m
 CONFIG_MMC_RICOH_MMC=m
+CONFIG_MMC_SDHCI_PLTFM=m
 CONFIG_MMC_WBSD=m
+# CONFIG_MMC_AT91 is not set
+# CONFIG_MMC_ATMELMCI is not set
 CONFIG_MMC_TIFM_SD=m
 CONFIG_MMC_SDRICOH_CS=m
+CONFIG_MMC_CB710=m
+CONFIG_MMC_VIA_SDMMC=m
 CONFIG_MEMSTICK=m
 # CONFIG_MEMSTICK_DEBUG is not set
 
@@ -2867,10 +3342,14 @@ CONFIG_LEDS_CLASS=m
 #
 CONFIG_LEDS_NET48XX=m
 CONFIG_LEDS_WRAP=m
-CONFIG_LEDS_ALIX=m
+CONFIG_LEDS_ALIX2=m
 CONFIG_LEDS_PCA9532=m
+CONFIG_LEDS_LP3944=m
 CONFIG_LEDS_CLEVO_MAIL=m
 CONFIG_LEDS_PCA955X=m
+CONFIG_LEDS_WM831X_STATUS=m
+CONFIG_LEDS_WM8350=m
+CONFIG_LEDS_BD2802=m
 
 #
 # LED Triggers
@@ -2879,7 +3358,12 @@ CONFIG_LEDS_TRIGGERS=y
 CONFIG_LEDS_TRIGGER_TIMER=m
 CONFIG_LEDS_TRIGGER_IDE_DISK=y
 CONFIG_LEDS_TRIGGER_HEARTBEAT=m
+CONFIG_LEDS_TRIGGER_BACKLIGHT=m
 CONFIG_LEDS_TRIGGER_DEFAULT_ON=m
+
+#
+# iptables trigger is under Netfilter config (LED target)
+#
 # CONFIG_ACCESSIBILITY is not set
 # CONFIG_INFINIBAND is not set
 # CONFIG_EDAC is not set
@@ -2911,6 +3395,8 @@ CONFIG_RTC_DRV_M41T80=m
 # CONFIG_RTC_DRV_M41T80_WDT is not set
 CONFIG_RTC_DRV_S35390A=m
 CONFIG_RTC_DRV_FM3130=m
+CONFIG_RTC_DRV_RX8581=m
+CONFIG_RTC_DRV_RX8025=m
 
 #
 # SPI RTC drivers
@@ -2920,13 +3406,20 @@ CONFIG_RTC_DRV_FM3130=m
 # Platform RTC drivers
 #
 CONFIG_RTC_DRV_CMOS=m
+CONFIG_RTC_DRV_DS1286=m
 CONFIG_RTC_DRV_DS1511=m
 CONFIG_RTC_DRV_DS1553=m
 CONFIG_RTC_DRV_DS1742=m
 CONFIG_RTC_DRV_STK17TA8=m
 CONFIG_RTC_DRV_M48T86=m
+CONFIG_RTC_DRV_M48T35=m
 CONFIG_RTC_DRV_M48T59=m
+CONFIG_RTC_DRV_BQ4802=m
 CONFIG_RTC_DRV_V3020=m
+CONFIG_RTC_DRV_WM831X=m
+CONFIG_RTC_DRV_WM8350=m
+CONFIG_RTC_DRV_PCF50633=m
+CONFIG_RTC_DRV_AB3100=m
 
 #
 # on-CPU RTC drivers
@@ -2936,6 +3429,7 @@ CONFIG_DMADEVICES=y
 #
 # DMA Devices
 #
+CONFIG_ASYNC_TX_DISABLE_CHANNEL_SWITCH=y
 CONFIG_INTEL_IOATDMA=m
 CONFIG_DMA_ENGINE=y
 
@@ -2943,6 +3437,7 @@ CONFIG_DMA_ENGINE=y
 # DMA Clients
 #
 CONFIG_NET_DMA=y
+CONFIG_ASYNC_TX_DMA=y
 CONFIG_DMATEST=m
 CONFIG_DCA=m
 # CONFIG_AUXDISPLAY is not set
@@ -2951,6 +3446,38 @@ CONFIG_UIO_CIF=m
 CONFIG_UIO_PDRV=m
 CONFIG_UIO_PDRV_GENIRQ=m
 CONFIG_UIO_SMX=m
+CONFIG_UIO_AEC=m
+CONFIG_UIO_SERCOS3=m
+CONFIG_UIO_PCI_GENERIC=m
+
+#
+# TI VLYNQ
+#
+# CONFIG_STAGING is not set
+CONFIG_X86_PLATFORM_DEVICES=y
+CONFIG_ACER_WMI=m
+CONFIG_ASUS_LAPTOP=m
+CONFIG_DELL_WMI=m
+CONFIG_FUJITSU_LAPTOP=m
+CONFIG_FUJITSU_LAPTOP_DEBUG=y
+CONFIG_TC1100_WMI=m
+CONFIG_HP_WMI=m
+CONFIG_MSI_LAPTOP=m
+CONFIG_PANASONIC_LAPTOP=m
+CONFIG_COMPAL_LAPTOP=m
+CONFIG_SONY_LAPTOP=m
+# CONFIG_SONYPI_COMPAT is not set
+CONFIG_THINKPAD_ACPI=m
+# CONFIG_THINKPAD_ACPI_DEBUGFACILITIES is not set
+# CONFIG_THINKPAD_ACPI_DEBUG is not set
+# CONFIG_THINKPAD_ACPI_UNSAFE_LEDS is not set
+CONFIG_THINKPAD_ACPI_VIDEO=y
+CONFIG_THINKPAD_ACPI_HOTKEY_POLL=y
+CONFIG_INTEL_MENLOW=m
+CONFIG_ACPI_WMI=m
+CONFIG_ACPI_ASUS=m
+CONFIG_TOPSTAR_LAPTOP=m
+CONFIG_ACPI_TOSHIBA=m
 
 #
 # Firmware Drivers
@@ -2972,11 +3499,17 @@ CONFIG_EXT2_FS_POSIX_ACL=y
 CONFIG_EXT2_FS_SECURITY=y
 # CONFIG_EXT2_FS_XIP is not set
 CONFIG_EXT3_FS=m
+# CONFIG_EXT3_DEFAULTS_TO_ORDERED is not set
 CONFIG_EXT3_FS_XATTR=y
 CONFIG_EXT3_FS_POSIX_ACL=y
 CONFIG_EXT3_FS_SECURITY=y
-# CONFIG_EXT4DEV_FS is not set
+CONFIG_EXT4_FS=m
+CONFIG_EXT4_FS_XATTR=y
+CONFIG_EXT4_FS_POSIX_ACL=y
+CONFIG_EXT4_FS_SECURITY=y
+# CONFIG_EXT4_DEBUG is not set
 CONFIG_JBD=m
+CONFIG_JBD2=m
 CONFIG_FS_MBCACHE=m
 CONFIG_REISER4_FS=m
 # CONFIG_REISER4_DEBUG is not set
@@ -2999,6 +3532,10 @@ CONFIG_XFS_POSIX_ACL=y
 CONFIG_XFS_DEBUG=y
 # CONFIG_GFS2_FS is not set
 # CONFIG_OCFS2_FS is not set
+# CONFIG_BTRFS_FS is not set
+# CONFIG_NILFS2_FS is not set
+CONFIG_FILE_LOCKING=y
+CONFIG_FSNOTIFY=y
 CONFIG_DNOTIFY=y
 CONFIG_INOTIFY=y
 CONFIG_INOTIFY_USER=y
@@ -3007,6 +3544,17 @@ CONFIG_QUOTACTL=y
 CONFIG_AUTOFS_FS=m
 CONFIG_AUTOFS4_FS=m
 CONFIG_FUSE_FS=m
+CONFIG_CUSE=m
+
+#
+# Caches
+#
+CONFIG_FSCACHE=m
+# CONFIG_FSCACHE_STATS is not set
+# CONFIG_FSCACHE_HISTOGRAM is not set
+# CONFIG_FSCACHE_DEBUG is not set
+# CONFIG_FSCACHE_OBJECT_LIST is not set
+# CONFIG_CACHEFILES is not set
 
 #
 # CD-ROM/DVD Filesystems
@@ -3033,16 +3581,14 @@ CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1"
 CONFIG_PROC_FS=y
 # CONFIG_PROC_KCORE is not set
 CONFIG_PROC_SYSCTL=y
+CONFIG_PROC_PAGE_MONITOR=y
 CONFIG_SYSFS=y
 CONFIG_TMPFS=y
 # CONFIG_TMPFS_POSIX_ACL is not set
 # CONFIG_HUGETLBFS is not set
 # CONFIG_HUGETLB_PAGE is not set
 # CONFIG_CONFIGFS_FS is not set
-
-#
-# Miscellaneous filesystems
-#
+CONFIG_MISC_FILESYSTEMS=y
 # CONFIG_ADFS_FS is not set
 # CONFIG_AFFS_FS is not set
 CONFIG_ECRYPT_FS=m
@@ -3079,11 +3625,14 @@ CONFIG_SQUASHFS_FRAGMENT_CACHE_SIZE=3
 # CONFIG_ROMFS_FS is not set
 # CONFIG_SYSV_FS is not set
 # CONFIG_UFS_FS is not set
+# CONFIG_EXOFS_FS is not set
 CONFIG_NETWORK_FILESYSTEMS=y
 CONFIG_NFS_FS=m
 CONFIG_NFS_V3=y
 # CONFIG_NFS_V3_ACL is not set
 CONFIG_NFS_V4=y
+# CONFIG_NFS_V4_1 is not set
+# CONFIG_NFS_FSCACHE is not set
 CONFIG_NFSD=m
 CONFIG_NFSD_V3=y
 # CONFIG_NFSD_V3_ACL is not set
@@ -3106,6 +3655,7 @@ CONFIG_CIFS_STATS2=y
 CONFIG_CIFS_XATTR=y
 # CONFIG_CIFS_POSIX is not set
 # CONFIG_CIFS_DEBUG2 is not set
+# CONFIG_CIFS_DFS_UPCALL is not set
 # CONFIG_CIFS_EXPERIMENTAL is not set
 # CONFIG_NCP_FS is not set
 # CONFIG_CODA_FS is not set
@@ -3183,30 +3733,42 @@ CONFIG_TRACE_IRQFLAGS_SUPPORT=y
 CONFIG_ENABLE_MUST_CHECK=y
 CONFIG_FRAME_WARN=1024
 # CONFIG_MAGIC_SYSRQ is not set
+# CONFIG_STRIP_ASM_SYMS is not set
 CONFIG_UNUSED_SYMBOLS=y
 # CONFIG_DEBUG_FS is not set
 # CONFIG_HEADERS_CHECK is not set
 # CONFIG_DEBUG_KERNEL is not set
 CONFIG_DEBUG_BUGVERBOSE=y
 CONFIG_DEBUG_MEMORY_INIT=y
+CONFIG_ARCH_WANT_FRAME_POINTERS=y
+CONFIG_FRAME_POINTER=y
+CONFIG_RCU_CPU_STALL_DETECTOR=y
 # CONFIG_LATENCYTOP is not set
 # CONFIG_SYSCTL_SYSCALL_CHECK is not set
-CONFIG_HAVE_FTRACE=y
+CONFIG_USER_STACKTRACE_SUPPORT=y
+CONFIG_HAVE_FUNCTION_TRACER=y
+CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y
+CONFIG_HAVE_FUNCTION_GRAPH_FP_TEST=y
+CONFIG_HAVE_FUNCTION_TRACE_MCOUNT_TEST=y
 CONFIG_HAVE_DYNAMIC_FTRACE=y
+CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y
+CONFIG_HAVE_SYSCALL_TRACEPOINTS=y
+CONFIG_TRACING_SUPPORT=y
 # CONFIG_FTRACE is not set
-# CONFIG_IRQSOFF_TRACER is not set
-# CONFIG_SYSPROF_TRACER is not set
-# CONFIG_SCHED_TRACER is not set
-# CONFIG_CONTEXT_SWITCH_TRACER is not set
 # CONFIG_PROVIDE_OHCI1394_DMA_INIT is not set
 # CONFIG_FIREWIRE_OHCI_REMOTE_DMA is not set
+# CONFIG_DMA_API_DEBUG is not set
 # CONFIG_SAMPLES is not set
 CONFIG_HAVE_ARCH_KGDB=y
+CONFIG_HAVE_ARCH_KMEMCHECK=y
 # CONFIG_STRICT_DEVMEM is not set
 CONFIG_X86_VERBOSE_BOOTUP=y
 CONFIG_EARLY_PRINTK=y
+# CONFIG_EARLY_PRINTK_DBGP is not set
 # CONFIG_4KSTACKS is not set
 CONFIG_DOUBLEFAULT=y
+# CONFIG_IOMMU_STRESS is not set
+CONFIG_HAVE_MMIOTRACE_SUPPORT=y
 CONFIG_IO_DELAY_TYPE_0X80=0
 CONFIG_IO_DELAY_TYPE_0XED=1
 CONFIG_IO_DELAY_TYPE_UDELAY=2
@@ -3224,23 +3786,40 @@ CONFIG_DEFAULT_IO_DELAY_TYPE=0
 CONFIG_KEYS=y
 # CONFIG_KEYS_DEBUG_PROC_KEYS is not set
 # CONFIG_SECURITY is not set
+# CONFIG_SECURITYFS is not set
 # CONFIG_SECURITY_FILE_CAPABILITIES is not set
+# CONFIG_INTEL_TXT is not set
+# CONFIG_IMA is not set
 CONFIG_XOR_BLOCKS=m
 CONFIG_ASYNC_CORE=m
 CONFIG_ASYNC_MEMCPY=m
 CONFIG_ASYNC_XOR=m
+CONFIG_ASYNC_PQ=m
+CONFIG_ASYNC_RAID6_RECOV=m
+CONFIG_ASYNC_TX_DISABLE_PQ_VAL_DMA=y
+CONFIG_ASYNC_TX_DISABLE_XOR_VAL_DMA=y
 CONFIG_CRYPTO=y
 
 #
 # Crypto core or helper
 #
+CONFIG_CRYPTO_FIPS=y
 CONFIG_CRYPTO_ALGAPI=y
+CONFIG_CRYPTO_ALGAPI2=y
 CONFIG_CRYPTO_AEAD=m
+CONFIG_CRYPTO_AEAD2=y
 CONFIG_CRYPTO_BLKCIPHER=m
+CONFIG_CRYPTO_BLKCIPHER2=y
 CONFIG_CRYPTO_HASH=y
+CONFIG_CRYPTO_HASH2=y
+CONFIG_CRYPTO_RNG=m
+CONFIG_CRYPTO_RNG2=y
+CONFIG_CRYPTO_PCOMP=y
 CONFIG_CRYPTO_MANAGER=y
+CONFIG_CRYPTO_MANAGER2=y
 CONFIG_CRYPTO_GF128MUL=m
 # CONFIG_CRYPTO_NULL is not set
+CONFIG_CRYPTO_WORKQUEUE=y
 CONFIG_CRYPTO_CRYPTD=m
 CONFIG_CRYPTO_AUTHENC=m
 # CONFIG_CRYPTO_TEST is not set
@@ -3268,11 +3847,14 @@ CONFIG_CRYPTO_XTS=m
 #
 CONFIG_CRYPTO_HMAC=y
 CONFIG_CRYPTO_XCBC=m
+CONFIG_CRYPTO_VMAC=m
 
 #
 # Digest
 #
 CONFIG_CRYPTO_CRC32C=m
+CONFIG_CRYPTO_CRC32C_INTEL=m
+CONFIG_CRYPTO_GHASH=m
 # CONFIG_CRYPTO_MD4 is not set
 CONFIG_CRYPTO_MD5=m
 CONFIG_CRYPTO_MICHAEL_MIC=m
@@ -3313,7 +3895,13 @@ CONFIG_CRYPTO_TWOFISH_586=m
 # Compression
 #
 CONFIG_CRYPTO_DEFLATE=y
+CONFIG_CRYPTO_ZLIB=m
 CONFIG_CRYPTO_LZO=m
+
+#
+# Random Number Generation
+#
+CONFIG_CRYPTO_ANSI_CPRNG=m
 CONFIG_CRYPTO_HW=y
 CONFIG_CRYPTO_DEV_PADLOCK=m
 CONFIG_CRYPTO_DEV_PADLOCK_AES=m
@@ -3322,6 +3910,9 @@ CONFIG_CRYPTO_DEV_GEODE=m
 CONFIG_CRYPTO_DEV_HIFN_795X=m
 CONFIG_CRYPTO_DEV_HIFN_795X_RNG=y
 CONFIG_HAVE_KVM=y
+CONFIG_HAVE_KVM_IRQCHIP=y
+CONFIG_HAVE_KVM_EVENTFD=y
+CONFIG_KVM_APIC_ARCHITECTURE=y
 CONFIG_VIRTUALIZATION=y
 CONFIG_KVM=m
 CONFIG_KVM_INTEL=m
@@ -3331,6 +3922,7 @@ CONFIG_VIRTIO=y
 CONFIG_VIRTIO_RING=y
 CONFIG_VIRTIO_PCI=m
 CONFIG_VIRTIO_BALLOON=m
+# CONFIG_BINARY_PRINTF is not set
 
 #
 # Library routines
@@ -3338,6 +3930,7 @@ CONFIG_VIRTIO_BALLOON=m
 CONFIG_BITREVERSE=y
 CONFIG_GENERIC_FIND_FIRST_BIT=y
 CONFIG_GENERIC_FIND_NEXT_BIT=y
+CONFIG_GENERIC_FIND_LAST_BIT=y
 CONFIG_CRC_CCITT=m
 CONFIG_CRC16=m
 CONFIG_CRC_T10DIF=m
@@ -3350,12 +3943,15 @@ CONFIG_ZLIB_INFLATE=y
 CONFIG_ZLIB_DEFLATE=y
 CONFIG_LZO_COMPRESS=m
 CONFIG_LZO_DECOMPRESS=m
+CONFIG_DECOMPRESS_GZIP=y
+CONFIG_DECOMPRESS_BZIP2=y
+CONFIG_DECOMPRESS_LZMA=y
 CONFIG_TEXTSEARCH=y
 CONFIG_TEXTSEARCH_KMP=m
 CONFIG_TEXTSEARCH_BM=m
 CONFIG_TEXTSEARCH_FSM=m
-CONFIG_PLIST=y
 CONFIG_HAS_IOMEM=y
 CONFIG_HAS_IOPORT=y
 CONFIG_HAS_DMA=y
 CONFIG_CHECK_SIGNATURE=y
+CONFIG_NLATTR=y
diff --git a/config/rootfiles/common/compat-wireless b/config/rootfiles/common/compat-wireless
deleted file mode 100644 (file)
index 7baef23..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-etc/modprobe.d/cfg80211
-etc/modprobe.d/hostap
index 9882c91e96eb83c8cb33dc4141aa98b64a6ef561..df4a177f0a8c52e9d2ad335e2f27aca7e6f3c4d3 100644 (file)
+#lib/libip4tc.la
+lib/libip4tc.so
+lib/libip4tc.so.0
+lib/libip4tc.so.0.0.0
+#lib/libip6tc.la
+lib/libip6tc.so
+lib/libip6tc.so.0
+lib/libip6tc.so.0.0.0
+#lib/libipq.a
+#lib/libiptc.la
+lib/libiptc.so
+lib/libiptc.so.0
+lib/libiptc.so.0.0.0
+#lib/libxtables.la
+lib/libxtables.so
+lib/libxtables.so.4
+lib/libxtables.so.4.0.0
+#lib/pkgconfig
+#lib/pkgconfig/libiptc.pc
+#lib/pkgconfig/xtables.pc
 lib/xtables
-#lib/xtables/libipt_CLASSIFY.so
-#lib/xtables/libipt_CONNMARK.so
+#lib/xtables/libip6t_HL.so
+#lib/xtables/libip6t_LOG.so
+#lib/xtables/libip6t_REJECT.so
+#lib/xtables/libip6t_ah.so
+#lib/xtables/libip6t_dst.so
+#lib/xtables/libip6t_eui64.so
+#lib/xtables/libip6t_frag.so
+#lib/xtables/libip6t_hbh.so
+#lib/xtables/libip6t_hl.so
+#lib/xtables/libip6t_icmp6.so
+#lib/xtables/libip6t_ipv6header.so
+#lib/xtables/libip6t_mh.so
+#lib/xtables/libip6t_rt.so
+#lib/xtables/libipt_CLUSTERIP.so
 #lib/xtables/libipt_DNAT.so
-#lib/xtables/libipt_DSCP.so
 #lib/xtables/libipt_ECN.so
+#lib/xtables/libipt_IMQ.so
 #lib/xtables/libipt_LOG.so
-#lib/xtables/libipt_MARK.so
 #lib/xtables/libipt_MASQUERADE.so
 #lib/xtables/libipt_MIRROR.so
 #lib/xtables/libipt_NETMAP.so
-#lib/xtables/libipt_NFQUEUE.so
-#lib/xtables/libipt_NOTRACK.so
 #lib/xtables/libipt_REDIRECT.so
 #lib/xtables/libipt_REJECT.so
 #lib/xtables/libipt_SAME.so
+#lib/xtables/libipt_SET.so
 #lib/xtables/libipt_SNAT.so
-#lib/xtables/libipt_TARPIT.so
-#lib/xtables/libipt_TCPMSS.so
-#lib/xtables/libipt_TOS.so
-#lib/xtables/libipt_TRACE.so
 #lib/xtables/libipt_TTL.so
 #lib/xtables/libipt_ULOG.so
 #lib/xtables/libipt_addrtype.so
 #lib/xtables/libipt_ah.so
-#lib/xtables/libipt_comment.so
-#lib/xtables/libipt_connlimit.so
-#lib/xtables/libipt_connmark.so
-#lib/xtables/libipt_conntrack.so
-#lib/xtables/libipt_dscp.so
 #lib/xtables/libipt_ecn.so
-#lib/xtables/libipt_esp.so
-#lib/xtables/libipt_hashlimit.so
-#lib/xtables/libipt_helper.so
 #lib/xtables/libipt_icmp.so
-#lib/xtables/libipt_iprange.so
-#lib/xtables/libipt_length.so
-#lib/xtables/libipt_limit.so
-#lib/xtables/libipt_mac.so
-#lib/xtables/libipt_mark.so
-#lib/xtables/libipt_multiport.so
-#lib/xtables/libipt_owner.so
-#lib/xtables/libipt_physdev.so
-#lib/xtables/libipt_pkttype.so
-#lib/xtables/libipt_policy.so
 #lib/xtables/libipt_realm.so
-#lib/xtables/libipt_rpc.so
-#lib/xtables/libipt_sctp.so
-#lib/xtables/libipt_standard.so
-#lib/xtables/libipt_state.so
-#lib/xtables/libipt_tcp.so
-#lib/xtables/libipt_tcpmss.so
-#lib/xtables/libipt_tos.so
+#lib/xtables/libipt_set.so
 #lib/xtables/libipt_ttl.so
-#lib/xtables/libipt_udp.so
 #lib/xtables/libipt_unclean.so
-sbin/iptables
-#sbin/iptables-restore
-#sbin/iptables-save
-#usr/share/man/man8/iptables-restore.8
-#usr/share/man/man8/iptables-save.8
-#usr/share/man/man8/iptables.8
-#lib/iptables/libipt_IMQ.so
-#usr/include/libnetfilter_queue
-#usr/include/libnetfilter_queue/libipq.h
-#usr/include/libnetfilter_queue/libnetfilter_queue.h
-#usr/include/libnetfilter_queue/linux_nfnetlink_queue.h
-#usr/include/libnfnetlink
-#usr/include/libnfnetlink/libnfnetlink.h
-#usr/include/libnfnetlink/linux_nfnetlink.h
-#usr/lib/libnetfilter_queue.a
-#usr/lib/libnetfilter_queue.la
-usr/lib/libnetfilter_queue.so
-usr/lib/libnetfilter_queue.so.1
-usr/lib/libnetfilter_queue.so.1.1.0
-#usr/lib/libnetfilter_queue_libipq.a
-#usr/lib/libnetfilter_queue_libipq.la
-usr/lib/libnetfilter_queue_libipq.so
-usr/lib/libnetfilter_queue_libipq.so.1
-usr/lib/libnetfilter_queue_libipq.so.1.0.0
-#usr/lib/libnfnetlink.a
-#usr/lib/libnfnetlink.la
-usr/lib/libnfnetlink.so
-usr/lib/libnfnetlink.so.0
-usr/lib/libnfnetlink.so.0.2.0
-#usr/lib/pkgconfig/libnetfilter_queue.pc
-#usr/lib/pkgconfig/libnfnetlink.pc
-#lib/libip4tc.o
-#lib/libip6tc.o
-#lib/libipq.a
-#lib/libiptc.a
-#lib/xtables/libip6t_HL.so
-#lib/xtables/libip6t_IMQ.so
-#lib/xtables/libip6t_LOG.so
-#lib/xtables/libip6t_REJECT.so
-#lib/xtables/libip6t_ah.so
-#lib/xtables/libip6t_dst.so
-#lib/xtables/libip6t_eui64.so
-#lib/xtables/libip6t_frag.so
-#lib/xtables/libip6t_hbh.so
-#lib/xtables/libip6t_hl.so
-#lib/xtables/libip6t_icmp6.so
-#lib/xtables/libip6t_ipv6header.so
-#lib/xtables/libip6t_mh.so
-#lib/xtables/libip6t_policy.so
-#lib/xtables/libip6t_rt.so
-#lib/xtables/libipt_CLUSTERIP.so
-#lib/xtables/libipt_IMQ.so
-#lib/xtables/libipt_SET.so
-#lib/xtables/libipt_ipp2p.so
-#lib/xtables/libipt_recent.so
-#lib/xtables/libipt_set.so
 #lib/xtables/libxt_CLASSIFY.so
 #lib/xtables/libxt_CONNMARK.so
 #lib/xtables/libxt_CONNSECMARK.so
@@ -123,7 +68,9 @@ usr/lib/libnfnetlink.so.0.2.0
 #lib/xtables/libxt_TCPMSS.so
 #lib/xtables/libxt_TCPOPTSTRIP.so
 #lib/xtables/libxt_TOS.so
+#lib/xtables/libxt_TPROXY.so
 #lib/xtables/libxt_TRACE.so
+#lib/xtables/libxt_cluster.so
 #lib/xtables/libxt_comment.so
 #lib/xtables/libxt_connbytes.so
 #lib/xtables/libxt_connlimit.so
@@ -140,12 +87,16 @@ usr/lib/libnfnetlink.so.0.2.0
 #lib/xtables/libxt_mac.so
 #lib/xtables/libxt_mark.so
 #lib/xtables/libxt_multiport.so
+#lib/xtables/libxt_osf.so
 #lib/xtables/libxt_owner.so
 #lib/xtables/libxt_physdev.so
 #lib/xtables/libxt_pkttype.so
+#lib/xtables/libxt_policy.so
 #lib/xtables/libxt_quota.so
 #lib/xtables/libxt_rateest.so
+#lib/xtables/libxt_recent.so
 #lib/xtables/libxt_sctp.so
+#lib/xtables/libxt_socket.so
 #lib/xtables/libxt_standard.so
 #lib/xtables/libxt_state.so
 #lib/xtables/libxt_statistic.so
@@ -160,31 +111,58 @@ usr/lib/libnfnetlink.so.0.2.0
 #sbin/ip6tables-multi
 #sbin/ip6tables-restore
 #sbin/ip6tables-save
-#sbin/iptables-multi
+sbin/iptables
+sbin/iptables-multi
+#sbin/iptables-restore
+#sbin/iptables-save
 #sbin/iptables-xml
-#usr/include/ip6tables.h
-#usr/include/iptables.h
-#usr/include/libipq
+#usr/include/asm-generic
+#usr/include/asm-generic/errno-base.h
+#usr/include/asm-generic/errno.h
 #usr/include/libipq.h
-#usr/include/libipq/libipq.h
 #usr/include/libiptc
 #usr/include/libiptc/ipt_kernel_headers.h
 #usr/include/libiptc/libip6tc.h
 #usr/include/libiptc/libiptc.h
 #usr/include/libiptc/libxtc.h
-#usr/include/libipulog
-#usr/include/libipulog/libipulog.h
+#usr/include/libnetfilter_queue
+#usr/include/libnetfilter_queue/libipq.h
+#usr/include/libnetfilter_queue/libnetfilter_queue.h
+#usr/include/libnetfilter_queue/linux_nfnetlink_queue.h
+#usr/include/libnfnetlink
+#usr/include/libnfnetlink/libnfnetlink.h
+#usr/include/libnfnetlink/linux_nfnetlink.h
 #usr/include/libnfnetlink/linux_nfnetlink_compat.h
 #usr/include/linux/netfilter
+#usr/include/linux/netfilter/Kbuild
+#usr/include/linux/netfilter/nf_conntrack_amanda.h
 #usr/include/linux/netfilter/nf_conntrack_common.h
-#usr/include/linux/netfilter/nf_conntrack_tuple.h
+#usr/include/linux/netfilter/nf_conntrack_dccp.h
+#usr/include/linux/netfilter/nf_conntrack_ftp.h
+#usr/include/linux/netfilter/nf_conntrack_h323.h
+#usr/include/linux/netfilter/nf_conntrack_h323_asn1.h
+#usr/include/linux/netfilter/nf_conntrack_h323_types.h
+#usr/include/linux/netfilter/nf_conntrack_irc.h
+#usr/include/linux/netfilter/nf_conntrack_pptp.h
+#usr/include/linux/netfilter/nf_conntrack_proto_gre.h
+#usr/include/linux/netfilter/nf_conntrack_sane.h
+#usr/include/linux/netfilter/nf_conntrack_sctp.h
+#usr/include/linux/netfilter/nf_conntrack_sip.h
+#usr/include/linux/netfilter/nf_conntrack_tcp.h
+#usr/include/linux/netfilter/nf_conntrack_tftp.h
 #usr/include/linux/netfilter/nf_conntrack_tuple_common.h
-#usr/include/linux/netfilter/nf_nat.h
+#usr/include/linux/netfilter/nfnetlink.h
+#usr/include/linux/netfilter/nfnetlink_compat.h
+#usr/include/linux/netfilter/nfnetlink_conntrack.h
+#usr/include/linux/netfilter/nfnetlink_log.h
+#usr/include/linux/netfilter/nfnetlink_queue.h
 #usr/include/linux/netfilter/x_tables.h
 #usr/include/linux/netfilter/xt_CLASSIFY.h
 #usr/include/linux/netfilter/xt_CONNMARK.h
 #usr/include/linux/netfilter/xt_CONNSECMARK.h
 #usr/include/linux/netfilter/xt_DSCP.h
+#usr/include/linux/netfilter/xt_IMQ.h
+#usr/include/linux/netfilter/xt_LED.h
 #usr/include/linux/netfilter/xt_MARK.h
 #usr/include/linux/netfilter/xt_NFLOG.h
 #usr/include/linux/netfilter/xt_NFQUEUE.h
@@ -192,6 +170,8 @@ usr/lib/libnfnetlink.so.0.2.0
 #usr/include/linux/netfilter/xt_SECMARK.h
 #usr/include/linux/netfilter/xt_TCPMSS.h
 #usr/include/linux/netfilter/xt_TCPOPTSTRIP.h
+#usr/include/linux/netfilter/xt_TPROXY.h
+#usr/include/linux/netfilter/xt_cluster.h
 #usr/include/linux/netfilter/xt_comment.h
 #usr/include/linux/netfilter/xt_connbytes.h
 #usr/include/linux/netfilter/xt_connlimit.h
@@ -203,11 +183,13 @@ usr/lib/libnfnetlink.so.0.2.0
 #usr/include/linux/netfilter/xt_hashlimit.h
 #usr/include/linux/netfilter/xt_helper.h
 #usr/include/linux/netfilter/xt_iprange.h
+#usr/include/linux/netfilter/xt_layer7.h
 #usr/include/linux/netfilter/xt_length.h
 #usr/include/linux/netfilter/xt_limit.h
 #usr/include/linux/netfilter/xt_mac.h
 #usr/include/linux/netfilter/xt_mark.h
 #usr/include/linux/netfilter/xt_multiport.h
+#usr/include/linux/netfilter/xt_osf.h
 #usr/include/linux/netfilter/xt_owner.h
 #usr/include/linux/netfilter/xt_physdev.h
 #usr/include/linux/netfilter/xt_pkttype.h
@@ -215,7 +197,9 @@ usr/lib/libnfnetlink.so.0.2.0
 #usr/include/linux/netfilter/xt_quota.h
 #usr/include/linux/netfilter/xt_rateest.h
 #usr/include/linux/netfilter/xt_realm.h
+#usr/include/linux/netfilter/xt_recent.h
 #usr/include/linux/netfilter/xt_sctp.h
+#usr/include/linux/netfilter/xt_socket.h
 #usr/include/linux/netfilter/xt_state.h
 #usr/include/linux/netfilter/xt_statistic.h
 #usr/include/linux/netfilter/xt_string.h
@@ -223,23 +207,24 @@ usr/lib/libnfnetlink.so.0.2.0
 #usr/include/linux/netfilter/xt_tcpudp.h
 #usr/include/linux/netfilter/xt_time.h
 #usr/include/linux/netfilter/xt_u32.h
-#usr/include/linux/netfilter_ipv4/ip_set.h
-#usr/include/linux/netfilter_ipv4/ipt_FTOS.h
-#usr/include/linux/netfilter_ipv4/ipt_TTL.h
-#usr/include/linux/netfilter_ipv4/ipt_connlimit.h
-#usr/include/linux/netfilter_ipv4/ipt_dstlimit.h
-#usr/include/linux/netfilter_ipv4/ipt_policy.h
-#usr/include/linux/netfilter_ipv4/ipt_rpc.h
-#usr/include/linux/netfilter_ipv4/ipt_set.h
-#usr/include/linux/netfilter_ipv6/ip6t_HL.h
-#usr/include/linux/netfilter_ipv6/ip6t_REJECT.h
-#usr/include/linux/netfilter_ipv6/ip6t_TCPMSS.h
-#usr/include/linux/netfilter_ipv6/ip6t_mh.h
-#usr/include/linux/netfilter_ipv6/ip6t_policy.h
-#usr/include/xtables
 #usr/include/xtables.h
-#usr/include/xtables.h.in
-#usr/include/xtables/internal.h
+#usr/lib/libnetfilter_queue.a
+#usr/lib/libnetfilter_queue.la
+usr/lib/libnetfilter_queue.so
+usr/lib/libnetfilter_queue.so.1
+usr/lib/libnetfilter_queue.so.1.1.0
+#usr/lib/libnetfilter_queue_libipq.a
+#usr/lib/libnetfilter_queue_libipq.la
+usr/lib/libnetfilter_queue_libipq.so
+usr/lib/libnetfilter_queue_libipq.so.1
+usr/lib/libnetfilter_queue_libipq.so.1.0.0
+#usr/lib/libnfnetlink.a
+#usr/lib/libnfnetlink.la
+usr/lib/libnfnetlink.so
+usr/lib/libnfnetlink.so.0
+usr/lib/libnfnetlink.so.0.2.0
+#usr/lib/pkgconfig/libnetfilter_queue.pc
+#usr/lib/pkgconfig/libnfnetlink.pc
 #usr/share/man/man3/ipq_create_handle.3
 #usr/share/man/man3/ipq_destroy_handle.3
 #usr/share/man/man3/ipq_errstr.3
@@ -254,10 +239,7 @@ usr/lib/libnfnetlink.so.0.2.0
 #usr/share/man/man8/ip6tables-restore.8
 #usr/share/man/man8/ip6tables-save.8
 #usr/share/man/man8/ip6tables.8
+#usr/share/man/man8/iptables-restore.8
+#usr/share/man/man8/iptables-save.8
 #usr/share/man/man8/iptables-xml.8
-#lib/libxtables.la
-lib/libxtables.so
-lib/libxtables.so.0
-lib/libxtables.so.0.0.0
-#lib/pkgconfig
-#lib/pkgconfig/xtables.pc
+#usr/share/man/man8/iptables.8
index dfd57f8623ca6d5fe7fefeaebfc22f4a8dd1a015..f1d72b9cba599142b511062e9a98722b9ad6ee3f 100644 (file)
@@ -3,14 +3,65 @@ boot/System.map-ipfire
 boot/config-KVER-ipfire
 boot/vmlinuz-KVER-ipfire
 boot/vmlinuz-ipfire
+#lib/firmware/3com
+#lib/firmware/3com/3C359.bin
+#lib/firmware/3com/typhoon.bin
+#lib/firmware/acenic
+#lib/firmware/acenic/tg1.bin
+#lib/firmware/acenic/tg2.bin
+#lib/firmware/adaptec
+#lib/firmware/adaptec/starfire_rx.bin
+#lib/firmware/adaptec/starfire_tx.bin
+#lib/firmware/advansys
+#lib/firmware/advansys/3550.bin
+#lib/firmware/advansys/38C0800.bin
+#lib/firmware/advansys/38C1600.bin
+#lib/firmware/advansys/mcode.bin
 #lib/firmware/atmsar11.fw
+#lib/firmware/av7110
+#lib/firmware/av7110/bootcode.bin
+#lib/firmware/bnx2
+#lib/firmware/bnx2/bnx2-mips-06-5.0.0.j3.fw
+#lib/firmware/bnx2/bnx2-mips-09-5.0.0.j3.fw
+#lib/firmware/bnx2/bnx2-rv2p-06-5.0.0.j3.fw
+#lib/firmware/bnx2/bnx2-rv2p-09-5.0.0.j3.fw
+#lib/firmware/bnx2/bnx2-rv2p-09ax-5.0.0.j3.fw
+#lib/firmware/bnx2x-e1-5.0.21.0.fw
+#lib/firmware/bnx2x-e1h-5.0.21.0.fw
+#lib/firmware/cis
+#lib/firmware/cis/3CCFEM556.cis
+#lib/firmware/cis/3CXEM556.cis
+#lib/firmware/cis/COMpad2.cis
+#lib/firmware/cis/COMpad4.cis
+#lib/firmware/cis/DP83903.cis
+#lib/firmware/cis/LA-PCM.cis
+#lib/firmware/cis/MT5634ZLX.cis
+#lib/firmware/cis/NE2K.cis
+#lib/firmware/cis/PCMLM28.cis
+#lib/firmware/cis/PE-200.cis
+#lib/firmware/cis/RS-COM-2P.cis
+#lib/firmware/cis/SW_555_SER.cis
+#lib/firmware/cis/SW_7xx_SER.cis
+#lib/firmware/cis/SW_8xx_SER.cis
+#lib/firmware/cis/tamarack.cis
 #lib/firmware/cpia2
 #lib/firmware/cpia2/stv0672_vp4.bin
+#lib/firmware/cxgb3
+#lib/firmware/cxgb3/ael2005_opt_edc.bin
+#lib/firmware/cxgb3/ael2005_twx_edc.bin
+#lib/firmware/cxgb3/ael2020_twx_edc.bin
+#lib/firmware/cxgb3/t3b_psram-1.1.0.bin
+#lib/firmware/cxgb3/t3c_psram-1.1.0.bin
+#lib/firmware/cxgb3/t3fw-7.4.0.bin
 #lib/firmware/dabusb
 #lib/firmware/dabusb/bitstream.bin
 #lib/firmware/dabusb/firmware.fw
 #lib/firmware/dsp56k
 #lib/firmware/dsp56k/bootstrap.bin
+#lib/firmware/e100
+#lib/firmware/e100/d101m_ucode.bin
+#lib/firmware/e100/d101s_ucode.bin
+#lib/firmware/e100/d102e_ucode.bin
 #lib/firmware/edgeport
 #lib/firmware/edgeport/boot.fw
 #lib/firmware/edgeport/boot2.fw
@@ -53,14 +104,67 @@ boot/vmlinuz-ipfire
 #lib/firmware/keyspan_pda/xircom_pgs.fw
 #lib/firmware/korg
 #lib/firmware/korg/k1212.dsp
+#lib/firmware/matrox
+#lib/firmware/matrox/g200_warp.fw
+#lib/firmware/matrox/g400_warp.fw
+#lib/firmware/mts_cdma.fw
+#lib/firmware/mts_edge.fw
+#lib/firmware/mts_gsm.fw
+#lib/firmware/myricom
+#lib/firmware/myricom/lanai.bin
+#lib/firmware/ositech
+#lib/firmware/ositech/Xilinx7OD.bin
+#lib/firmware/qlogic
+#lib/firmware/qlogic/1040.bin
+#lib/firmware/qlogic/12160.bin
+#lib/firmware/qlogic/1280.bin
+#lib/firmware/qlogic/isp1000.bin
+#lib/firmware/r128
+#lib/firmware/r128/r128_cce.bin
+#lib/firmware/radeon
+#lib/firmware/radeon/R100_cp.bin
+#lib/firmware/radeon/R200_cp.bin
+#lib/firmware/radeon/R300_cp.bin
+#lib/firmware/radeon/R420_cp.bin
+#lib/firmware/radeon/R520_cp.bin
+#lib/firmware/radeon/R600_me.bin
+#lib/firmware/radeon/R600_pfp.bin
+#lib/firmware/radeon/RS600_cp.bin
+#lib/firmware/radeon/RS690_cp.bin
+#lib/firmware/radeon/RS780_me.bin
+#lib/firmware/radeon/RS780_pfp.bin
+#lib/firmware/radeon/RV610_me.bin
+#lib/firmware/radeon/RV610_pfp.bin
+#lib/firmware/radeon/RV620_me.bin
+#lib/firmware/radeon/RV620_pfp.bin
+#lib/firmware/radeon/RV630_me.bin
+#lib/firmware/radeon/RV630_pfp.bin
+#lib/firmware/radeon/RV635_me.bin
+#lib/firmware/radeon/RV635_pfp.bin
+#lib/firmware/radeon/RV670_me.bin
+#lib/firmware/radeon/RV670_pfp.bin
+#lib/firmware/radeon/RV710_me.bin
+#lib/firmware/radeon/RV710_pfp.bin
+#lib/firmware/radeon/RV730_me.bin
+#lib/firmware/radeon/RV730_pfp.bin
+#lib/firmware/radeon/RV770_me.bin
+#lib/firmware/radeon/RV770_pfp.bin
 #lib/firmware/sb16
 #lib/firmware/sb16/alaw_main.csp
 #lib/firmware/sb16/ima_adpcm_capture.csp
 #lib/firmware/sb16/ima_adpcm_init.csp
 #lib/firmware/sb16/ima_adpcm_playback.csp
 #lib/firmware/sb16/mulaw_main.csp
+#lib/firmware/sun
+#lib/firmware/sun/cassini.bin
+#lib/firmware/tehuti
+#lib/firmware/tehuti/bdx.bin
 #lib/firmware/ti_3410.fw
 #lib/firmware/ti_5052.fw
+#lib/firmware/tigon
+#lib/firmware/tigon/tg3.bin
+#lib/firmware/tigon/tg3_tso.bin
+#lib/firmware/tigon/tg3_tso5.bin
 #lib/firmware/tr_smctr.bin
 #lib/firmware/ttusb-budget
 #lib/firmware/ttusb-budget/dspbootcode.bin
@@ -68,10 +172,15 @@ boot/vmlinuz-ipfire
 #lib/firmware/vicam/firmware.fw
 #lib/firmware/whiteheat.fw
 #lib/firmware/whiteheat_loader.fw
+#lib/firmware/yam
+#lib/firmware/yam/1200.bin
+#lib/firmware/yam/9600.bin
 #lib/firmware/yamaha
 #lib/firmware/yamaha/ds1_ctrl.fw
 #lib/firmware/yamaha/ds1_dsp.fw
 #lib/firmware/yamaha/ds1e_ctrl.fw
+#lib/firmware/yamaha/yss225_registers.bin
+#lib/modules
 lib/modules/KVER-ipfire
 #lib/modules/KVER-ipfire/build
 #lib/modules/KVER-ipfire/kernel
@@ -79,6 +188,7 @@ lib/modules/KVER-ipfire
 #lib/modules/KVER-ipfire/kernel/arch/x86
 #lib/modules/KVER-ipfire/kernel/arch/x86/crypto
 #lib/modules/KVER-ipfire/kernel/arch/x86/crypto/aes-i586.ko
+#lib/modules/KVER-ipfire/kernel/arch/x86/crypto/crc32c-intel.ko
 #lib/modules/KVER-ipfire/kernel/arch/x86/crypto/salsa20-i586.ko
 #lib/modules/KVER-ipfire/kernel/arch/x86/crypto/twofish-i586.ko
 #lib/modules/KVER-ipfire/kernel/arch/x86/kernel
@@ -100,7 +210,7 @@ lib/modules/KVER-ipfire
 #lib/modules/KVER-ipfire/kernel/arch/x86/kernel/cpu/cpufreq/speedstep-lib.ko
 #lib/modules/KVER-ipfire/kernel/arch/x86/kernel/cpu/cpufreq/speedstep-smi.ko
 #lib/modules/KVER-ipfire/kernel/arch/x86/kernel/cpu/mcheck
-#lib/modules/KVER-ipfire/kernel/arch/x86/kernel/cpu/mcheck/non-fatal.ko
+#lib/modules/KVER-ipfire/kernel/arch/x86/kernel/cpu/mcheck/mce-inject.ko
 #lib/modules/KVER-ipfire/kernel/arch/x86/kernel/microcode.ko
 #lib/modules/KVER-ipfire/kernel/arch/x86/kernel/msr.ko
 #lib/modules/KVER-ipfire/kernel/arch/x86/kernel/scx200.ko
@@ -109,14 +219,17 @@ lib/modules/KVER-ipfire
 #lib/modules/KVER-ipfire/kernel/arch/x86/kvm/kvm-intel.ko
 #lib/modules/KVER-ipfire/kernel/arch/x86/kvm/kvm.ko
 #lib/modules/KVER-ipfire/kernel/crypto
-#lib/modules/KVER-ipfire/kernel/crypto/aead.ko
 #lib/modules/KVER-ipfire/kernel/crypto/aes_generic.ko
+#lib/modules/KVER-ipfire/kernel/crypto/ansi_cprng.ko
 #lib/modules/KVER-ipfire/kernel/crypto/anubis.ko
 #lib/modules/KVER-ipfire/kernel/crypto/arc4.ko
 #lib/modules/KVER-ipfire/kernel/crypto/async_tx
 #lib/modules/KVER-ipfire/kernel/crypto/async_tx/async_memcpy.ko
+#lib/modules/KVER-ipfire/kernel/crypto/async_tx/async_pq.ko
+#lib/modules/KVER-ipfire/kernel/crypto/async_tx/async_raid6_recov.ko
 #lib/modules/KVER-ipfire/kernel/crypto/async_tx/async_tx.ko
 #lib/modules/KVER-ipfire/kernel/crypto/async_tx/async_xor.ko
+#lib/modules/KVER-ipfire/kernel/crypto/async_tx/raid6test.ko
 #lib/modules/KVER-ipfire/kernel/crypto/authenc.ko
 #lib/modules/KVER-ipfire/kernel/crypto/blowfish.ko
 #lib/modules/KVER-ipfire/kernel/crypto/camellia.ko
@@ -126,7 +239,6 @@ lib/modules/KVER-ipfire
 #lib/modules/KVER-ipfire/kernel/crypto/ccm.ko
 #lib/modules/KVER-ipfire/kernel/crypto/crc32c.ko
 #lib/modules/KVER-ipfire/kernel/crypto/cryptd.ko
-#lib/modules/KVER-ipfire/kernel/crypto/crypto_blkcipher.ko
 #lib/modules/KVER-ipfire/kernel/crypto/ctr.ko
 #lib/modules/KVER-ipfire/kernel/crypto/cts.ko
 #lib/modules/KVER-ipfire/kernel/crypto/des_generic.ko
@@ -134,6 +246,7 @@ lib/modules/KVER-ipfire
 #lib/modules/KVER-ipfire/kernel/crypto/fcrypt.ko
 #lib/modules/KVER-ipfire/kernel/crypto/gcm.ko
 #lib/modules/KVER-ipfire/kernel/crypto/gf128mul.ko
+#lib/modules/KVER-ipfire/kernel/crypto/ghash-generic.ko
 #lib/modules/KVER-ipfire/kernel/crypto/khazad.ko
 #lib/modules/KVER-ipfire/kernel/crypto/lrw.ko
 #lib/modules/KVER-ipfire/kernel/crypto/lzo.ko
@@ -155,28 +268,27 @@ lib/modules/KVER-ipfire
 #lib/modules/KVER-ipfire/kernel/crypto/tgr192.ko
 #lib/modules/KVER-ipfire/kernel/crypto/twofish.ko
 #lib/modules/KVER-ipfire/kernel/crypto/twofish_common.ko
+#lib/modules/KVER-ipfire/kernel/crypto/vmac.ko
 #lib/modules/KVER-ipfire/kernel/crypto/wp512.ko
 #lib/modules/KVER-ipfire/kernel/crypto/xcbc.ko
 #lib/modules/KVER-ipfire/kernel/crypto/xor.ko
 #lib/modules/KVER-ipfire/kernel/crypto/xts.ko
+#lib/modules/KVER-ipfire/kernel/crypto/zlib.ko
 #lib/modules/KVER-ipfire/kernel/drivers
 #lib/modules/KVER-ipfire/kernel/drivers/acpi
 #lib/modules/KVER-ipfire/kernel/drivers/acpi/ac.ko
-#lib/modules/KVER-ipfire/kernel/drivers/acpi/asus_acpi.ko
+#lib/modules/KVER-ipfire/kernel/drivers/acpi/acpi_pad.ko
 #lib/modules/KVER-ipfire/kernel/drivers/acpi/battery.ko
-#lib/modules/KVER-ipfire/kernel/drivers/acpi/bay.ko
 #lib/modules/KVER-ipfire/kernel/drivers/acpi/button.ko
 #lib/modules/KVER-ipfire/kernel/drivers/acpi/container.ko
-#lib/modules/KVER-ipfire/kernel/drivers/acpi/dock.ko
 #lib/modules/KVER-ipfire/kernel/drivers/acpi/fan.ko
 #lib/modules/KVER-ipfire/kernel/drivers/acpi/pci_slot.ko
+#lib/modules/KVER-ipfire/kernel/drivers/acpi/power_meter.ko
 #lib/modules/KVER-ipfire/kernel/drivers/acpi/processor.ko
 #lib/modules/KVER-ipfire/kernel/drivers/acpi/sbs.ko
 #lib/modules/KVER-ipfire/kernel/drivers/acpi/sbshc.ko
 #lib/modules/KVER-ipfire/kernel/drivers/acpi/thermal.ko
-#lib/modules/KVER-ipfire/kernel/drivers/acpi/toshiba_acpi.ko
 #lib/modules/KVER-ipfire/kernel/drivers/acpi/video.ko
-#lib/modules/KVER-ipfire/kernel/drivers/acpi/wmi.ko
 #lib/modules/KVER-ipfire/kernel/drivers/ata
 #lib/modules/KVER-ipfire/kernel/drivers/ata/ahci.ko
 #lib/modules/KVER-ipfire/kernel/drivers/ata/ata_generic.ko
@@ -187,6 +299,7 @@ lib/modules/KVER-ipfire
 #lib/modules/KVER-ipfire/kernel/drivers/ata/pata_amd.ko
 #lib/modules/KVER-ipfire/kernel/drivers/ata/pata_artop.ko
 #lib/modules/KVER-ipfire/kernel/drivers/ata/pata_atiixp.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ata/pata_atp867x.ko
 #lib/modules/KVER-ipfire/kernel/drivers/ata/pata_cmd640.ko
 #lib/modules/KVER-ipfire/kernel/drivers/ata/pata_cmd64x.ko
 #lib/modules/KVER-ipfire/kernel/drivers/ata/pata_cs5520.ko
@@ -218,6 +331,7 @@ lib/modules/KVER-ipfire
 #lib/modules/KVER-ipfire/kernel/drivers/ata/pata_pdc202xx_old.ko
 #lib/modules/KVER-ipfire/kernel/drivers/ata/pata_qdi.ko
 #lib/modules/KVER-ipfire/kernel/drivers/ata/pata_radisys.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ata/pata_rdc.ko
 #lib/modules/KVER-ipfire/kernel/drivers/ata/pata_rz1000.ko
 #lib/modules/KVER-ipfire/kernel/drivers/ata/pata_sc1200.ko
 #lib/modules/KVER-ipfire/kernel/drivers/ata/pata_sch.ko
@@ -255,6 +369,7 @@ lib/modules/KVER-ipfire
 #lib/modules/KVER-ipfire/kernel/drivers/atm/iphase.ko
 #lib/modules/KVER-ipfire/kernel/drivers/atm/lanai.ko
 #lib/modules/KVER-ipfire/kernel/drivers/atm/nicstar.ko
+#lib/modules/KVER-ipfire/kernel/drivers/atm/solos-pci.ko
 #lib/modules/KVER-ipfire/kernel/drivers/atm/suni.ko
 #lib/modules/KVER-ipfire/kernel/drivers/atm/uPD98402.ko
 #lib/modules/KVER-ipfire/kernel/drivers/atm/zatm.ko
@@ -267,6 +382,7 @@ lib/modules/KVER-ipfire
 #lib/modules/KVER-ipfire/kernel/drivers/block/cryptoloop.ko
 #lib/modules/KVER-ipfire/kernel/drivers/block/floppy.ko
 #lib/modules/KVER-ipfire/kernel/drivers/block/nbd.ko
+#lib/modules/KVER-ipfire/kernel/drivers/block/osdblk.ko
 #lib/modules/KVER-ipfire/kernel/drivers/block/sx8.ko
 #lib/modules/KVER-ipfire/kernel/drivers/block/virtio_blk.ko
 #lib/modules/KVER-ipfire/kernel/drivers/bluetooth
@@ -275,6 +391,8 @@ lib/modules/KVER-ipfire
 #lib/modules/KVER-ipfire/kernel/drivers/bluetooth/bluecard_cs.ko
 #lib/modules/KVER-ipfire/kernel/drivers/bluetooth/bpa10x.ko
 #lib/modules/KVER-ipfire/kernel/drivers/bluetooth/bt3c_cs.ko
+#lib/modules/KVER-ipfire/kernel/drivers/bluetooth/btmrvl.ko
+#lib/modules/KVER-ipfire/kernel/drivers/bluetooth/btmrvl_sdio.ko
 #lib/modules/KVER-ipfire/kernel/drivers/bluetooth/btsdio.ko
 #lib/modules/KVER-ipfire/kernel/drivers/bluetooth/btuart_cs.ko
 #lib/modules/KVER-ipfire/kernel/drivers/bluetooth/btusb.ko
@@ -303,6 +421,7 @@ lib/modules/KVER-ipfire
 #lib/modules/KVER-ipfire/kernel/drivers/char/hw_random/geode-rng.ko
 #lib/modules/KVER-ipfire/kernel/drivers/char/hw_random/intel-rng.ko
 #lib/modules/KVER-ipfire/kernel/drivers/char/hw_random/rng-core.ko
+#lib/modules/KVER-ipfire/kernel/drivers/char/hw_random/timeriomem-rng.ko
 #lib/modules/KVER-ipfire/kernel/drivers/char/hw_random/via-rng.ko
 #lib/modules/KVER-ipfire/kernel/drivers/char/hw_random/virtio-rng.ko
 #lib/modules/KVER-ipfire/kernel/drivers/char/i8k.ko
@@ -344,9 +463,11 @@ lib/modules/KVER-ipfire
 #lib/modules/KVER-ipfire/kernel/drivers/dca/dca.ko
 #lib/modules/KVER-ipfire/kernel/drivers/dma
 #lib/modules/KVER-ipfire/kernel/drivers/dma/dmatest.ko
-#lib/modules/KVER-ipfire/kernel/drivers/dma/ioatdma.ko
+#lib/modules/KVER-ipfire/kernel/drivers/dma/ioat
+#lib/modules/KVER-ipfire/kernel/drivers/dma/ioat/ioatdma.ko
 #lib/modules/KVER-ipfire/kernel/drivers/firewire
 #lib/modules/KVER-ipfire/kernel/drivers/firewire/firewire-core.ko
+#lib/modules/KVER-ipfire/kernel/drivers/firewire/firewire-net.ko
 #lib/modules/KVER-ipfire/kernel/drivers/firewire/firewire-ohci.ko
 #lib/modules/KVER-ipfire/kernel/drivers/firewire/firewire-sbp2.ko
 #lib/modules/KVER-ipfire/kernel/drivers/firmware
@@ -354,6 +475,7 @@ lib/modules/KVER-ipfire
 #lib/modules/KVER-ipfire/kernel/drivers/gpu
 #lib/modules/KVER-ipfire/kernel/drivers/gpu/drm
 #lib/modules/KVER-ipfire/kernel/drivers/gpu/drm/drm.ko
+#lib/modules/KVER-ipfire/kernel/drivers/gpu/drm/drm_kms_helper.ko
 #lib/modules/KVER-ipfire/kernel/drivers/gpu/drm/i810
 #lib/modules/KVER-ipfire/kernel/drivers/gpu/drm/i810/i810.ko
 #lib/modules/KVER-ipfire/kernel/drivers/gpu/drm/i830
@@ -372,9 +494,38 @@ lib/modules/KVER-ipfire
 #lib/modules/KVER-ipfire/kernel/drivers/gpu/drm/sis/sis.ko
 #lib/modules/KVER-ipfire/kernel/drivers/gpu/drm/tdfx
 #lib/modules/KVER-ipfire/kernel/drivers/gpu/drm/tdfx/tdfx.ko
+#lib/modules/KVER-ipfire/kernel/drivers/gpu/drm/ttm
+#lib/modules/KVER-ipfire/kernel/drivers/gpu/drm/ttm/ttm.ko
 #lib/modules/KVER-ipfire/kernel/drivers/gpu/drm/via
 #lib/modules/KVER-ipfire/kernel/drivers/gpu/drm/via/via.ko
 #lib/modules/KVER-ipfire/kernel/drivers/hid
+#lib/modules/KVER-ipfire/kernel/drivers/hid/hid-a4tech.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hid/hid-apple.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hid/hid-belkin.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hid/hid-cherry.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hid/hid-chicony.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hid/hid-cypress.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hid/hid-drff.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hid/hid-ezkey.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hid/hid-gaff.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hid/hid-gyration.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hid/hid-kensington.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hid/hid-kye.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hid/hid-logitech.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hid/hid-microsoft.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hid/hid-monterey.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hid/hid-ntrig.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hid/hid-petalynx.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hid/hid-pl.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hid/hid-samsung.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hid/hid-sjoy.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hid/hid-sony.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hid/hid-sunplus.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hid/hid-tmff.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hid/hid-topseed.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hid/hid-twinhan.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hid/hid-wacom.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hid/hid-zpff.ko
 #lib/modules/KVER-ipfire/kernel/drivers/hid/usbhid
 #lib/modules/KVER-ipfire/kernel/drivers/hid/usbhid/usbhid.ko
 #lib/modules/KVER-ipfire/kernel/drivers/hwmon
@@ -389,10 +540,13 @@ lib/modules/KVER-ipfire
 #lib/modules/KVER-ipfire/kernel/drivers/hwmon/adm1031.ko
 #lib/modules/KVER-ipfire/kernel/drivers/hwmon/adm9240.ko
 #lib/modules/KVER-ipfire/kernel/drivers/hwmon/ads7828.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/adt7462.ko
 #lib/modules/KVER-ipfire/kernel/drivers/hwmon/adt7470.ko
 #lib/modules/KVER-ipfire/kernel/drivers/hwmon/adt7473.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/adt7475.ko
 #lib/modules/KVER-ipfire/kernel/drivers/hwmon/applesmc.ko
 #lib/modules/KVER-ipfire/kernel/drivers/hwmon/asb100.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/asus_atk0110.ko
 #lib/modules/KVER-ipfire/kernel/drivers/hwmon/atxp1.ko
 #lib/modules/KVER-ipfire/kernel/drivers/hwmon/coretemp.ko
 #lib/modules/KVER-ipfire/kernel/drivers/hwmon/dme1737.ko
@@ -400,12 +554,12 @@ lib/modules/KVER-ipfire
 #lib/modules/KVER-ipfire/kernel/drivers/hwmon/f71805f.ko
 #lib/modules/KVER-ipfire/kernel/drivers/hwmon/f71882fg.ko
 #lib/modules/KVER-ipfire/kernel/drivers/hwmon/f75375s.ko
-#lib/modules/KVER-ipfire/kernel/drivers/hwmon/fscher.ko
 #lib/modules/KVER-ipfire/kernel/drivers/hwmon/fschmd.ko
-#lib/modules/KVER-ipfire/kernel/drivers/hwmon/fscpos.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/g760a.ko
 #lib/modules/KVER-ipfire/kernel/drivers/hwmon/gl518sm.ko
 #lib/modules/KVER-ipfire/kernel/drivers/hwmon/gl520sm.ko
 #lib/modules/KVER-ipfire/kernel/drivers/hwmon/hdaps.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/hp_accel.ko
 #lib/modules/KVER-ipfire/kernel/drivers/hwmon/hwmon-vid.ko
 #lib/modules/KVER-ipfire/kernel/drivers/hwmon/hwmon.ko
 #lib/modules/KVER-ipfire/kernel/drivers/hwmon/i5k_amb.ko
@@ -413,6 +567,7 @@ lib/modules/KVER-ipfire
 #lib/modules/KVER-ipfire/kernel/drivers/hwmon/ibmpex.ko
 #lib/modules/KVER-ipfire/kernel/drivers/hwmon/it87.ko
 #lib/modules/KVER-ipfire/kernel/drivers/hwmon/k8temp.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/lis3lv02d.ko
 #lib/modules/KVER-ipfire/kernel/drivers/hwmon/lm63.ko
 #lib/modules/KVER-ipfire/kernel/drivers/hwmon/lm75.ko
 #lib/modules/KVER-ipfire/kernel/drivers/hwmon/lm77.ko
@@ -424,15 +579,21 @@ lib/modules/KVER-ipfire
 #lib/modules/KVER-ipfire/kernel/drivers/hwmon/lm90.ko
 #lib/modules/KVER-ipfire/kernel/drivers/hwmon/lm92.ko
 #lib/modules/KVER-ipfire/kernel/drivers/hwmon/lm93.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/lm95241.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/ltc4215.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/ltc4245.ko
 #lib/modules/KVER-ipfire/kernel/drivers/hwmon/max1619.ko
 #lib/modules/KVER-ipfire/kernel/drivers/hwmon/max6650.ko
 #lib/modules/KVER-ipfire/kernel/drivers/hwmon/pc87360.ko
 #lib/modules/KVER-ipfire/kernel/drivers/hwmon/pc87427.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/pcf8591.ko
 #lib/modules/KVER-ipfire/kernel/drivers/hwmon/sis5595.ko
 #lib/modules/KVER-ipfire/kernel/drivers/hwmon/smsc47b397.ko
 #lib/modules/KVER-ipfire/kernel/drivers/hwmon/smsc47m1.ko
 #lib/modules/KVER-ipfire/kernel/drivers/hwmon/smsc47m192.ko
 #lib/modules/KVER-ipfire/kernel/drivers/hwmon/thmc50.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/tmp401.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/tmp421.ko
 #lib/modules/KVER-ipfire/kernel/drivers/hwmon/via686a.ko
 #lib/modules/KVER-ipfire/kernel/drivers/hwmon/vt1211.ko
 #lib/modules/KVER-ipfire/kernel/drivers/hwmon/vt8231.ko
@@ -444,6 +605,8 @@ lib/modules/KVER-ipfire
 #lib/modules/KVER-ipfire/kernel/drivers/hwmon/w83793.ko
 #lib/modules/KVER-ipfire/kernel/drivers/hwmon/w83l785ts.ko
 #lib/modules/KVER-ipfire/kernel/drivers/hwmon/w83l786ng.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/wm831x-hwmon.ko
+#lib/modules/KVER-ipfire/kernel/drivers/hwmon/wm8350-hwmon.ko
 #lib/modules/KVER-ipfire/kernel/drivers/i2c
 #lib/modules/KVER-ipfire/kernel/drivers/i2c/algos
 #lib/modules/KVER-ipfire/kernel/drivers/i2c/algos/i2c-algo-bit.ko
@@ -465,6 +628,7 @@ lib/modules/KVER-ipfire
 #lib/modules/KVER-ipfire/kernel/drivers/i2c/busses/i2c-pca-isa.ko
 #lib/modules/KVER-ipfire/kernel/drivers/i2c/busses/i2c-pca-platform.ko
 #lib/modules/KVER-ipfire/kernel/drivers/i2c/busses/i2c-piix4.ko
+#lib/modules/KVER-ipfire/kernel/drivers/i2c/busses/i2c-scmi.ko
 #lib/modules/KVER-ipfire/kernel/drivers/i2c/busses/i2c-simtec.ko
 #lib/modules/KVER-ipfire/kernel/drivers/i2c/busses/i2c-sis5595.ko
 #lib/modules/KVER-ipfire/kernel/drivers/i2c/busses/i2c-sis630.ko
@@ -476,63 +640,54 @@ lib/modules/KVER-ipfire
 #lib/modules/KVER-ipfire/kernel/drivers/i2c/busses/i2c-voodoo3.ko
 #lib/modules/KVER-ipfire/kernel/drivers/i2c/busses/scx200_acb.ko
 #lib/modules/KVER-ipfire/kernel/drivers/i2c/chips
-#lib/modules/KVER-ipfire/kernel/drivers/i2c/chips/at24.ko
 #lib/modules/KVER-ipfire/kernel/drivers/i2c/chips/ds1682.ko
-#lib/modules/KVER-ipfire/kernel/drivers/i2c/chips/eeprom.ko
-#lib/modules/KVER-ipfire/kernel/drivers/i2c/chips/max6875.ko
-#lib/modules/KVER-ipfire/kernel/drivers/i2c/chips/pca9539.ko
-#lib/modules/KVER-ipfire/kernel/drivers/i2c/chips/pcf8574.ko
-#lib/modules/KVER-ipfire/kernel/drivers/i2c/chips/pcf8575.ko
-#lib/modules/KVER-ipfire/kernel/drivers/i2c/chips/pcf8591.ko
 #lib/modules/KVER-ipfire/kernel/drivers/i2c/chips/tsl2550.ko
 #lib/modules/KVER-ipfire/kernel/drivers/i2c/i2c-core.ko
 #lib/modules/KVER-ipfire/kernel/drivers/i2c/i2c-dev.ko
 #lib/modules/KVER-ipfire/kernel/drivers/ide
+#lib/modules/KVER-ipfire/kernel/drivers/ide/aec62xx.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ide/ali14xx.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ide/alim15x3.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ide/amd74xx.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ide/atiixp.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ide/cmd640.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ide/cmd64x.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ide/cs5520.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ide/cs5530.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ide/cs5535.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ide/cs5536.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ide/delkin_cb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ide/dtc2278.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ide/hpt366.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ide/ht6560b.ko
 #lib/modules/KVER-ipfire/kernel/drivers/ide/ide-cd.ko
-#lib/modules/KVER-ipfire/kernel/drivers/ide/ide-core.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ide/ide-cs.ko
 #lib/modules/KVER-ipfire/kernel/drivers/ide/ide-disk.ko
-#lib/modules/KVER-ipfire/kernel/drivers/ide/ide-floppy.ko
 #lib/modules/KVER-ipfire/kernel/drivers/ide/ide-generic.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ide/ide-pci-generic.ko
 #lib/modules/KVER-ipfire/kernel/drivers/ide/ide-pnp.ko
-#lib/modules/KVER-ipfire/kernel/drivers/ide/legacy
-#lib/modules/KVER-ipfire/kernel/drivers/ide/legacy/ali14xx.ko
-#lib/modules/KVER-ipfire/kernel/drivers/ide/legacy/dtc2278.ko
-#lib/modules/KVER-ipfire/kernel/drivers/ide/legacy/ht6560b.ko
-#lib/modules/KVER-ipfire/kernel/drivers/ide/legacy/ide-cs.ko
-#lib/modules/KVER-ipfire/kernel/drivers/ide/legacy/ide_platform.ko
-#lib/modules/KVER-ipfire/kernel/drivers/ide/legacy/qd65xx.ko
-#lib/modules/KVER-ipfire/kernel/drivers/ide/legacy/umc8672.ko
-#lib/modules/KVER-ipfire/kernel/drivers/ide/pci
-#lib/modules/KVER-ipfire/kernel/drivers/ide/pci/aec62xx.ko
-#lib/modules/KVER-ipfire/kernel/drivers/ide/pci/alim15x3.ko
-#lib/modules/KVER-ipfire/kernel/drivers/ide/pci/amd74xx.ko
-#lib/modules/KVER-ipfire/kernel/drivers/ide/pci/atiixp.ko
-#lib/modules/KVER-ipfire/kernel/drivers/ide/pci/cmd640.ko
-#lib/modules/KVER-ipfire/kernel/drivers/ide/pci/cmd64x.ko
-#lib/modules/KVER-ipfire/kernel/drivers/ide/pci/cs5520.ko
-#lib/modules/KVER-ipfire/kernel/drivers/ide/pci/cs5530.ko
-#lib/modules/KVER-ipfire/kernel/drivers/ide/pci/cs5535.ko
-#lib/modules/KVER-ipfire/kernel/drivers/ide/pci/delkin_cb.ko
-#lib/modules/KVER-ipfire/kernel/drivers/ide/pci/hpt366.ko
-#lib/modules/KVER-ipfire/kernel/drivers/ide/pci/ide-pci-generic.ko
-#lib/modules/KVER-ipfire/kernel/drivers/ide/pci/it8213.ko
-#lib/modules/KVER-ipfire/kernel/drivers/ide/pci/it821x.ko
-#lib/modules/KVER-ipfire/kernel/drivers/ide/pci/jmicron.ko
-#lib/modules/KVER-ipfire/kernel/drivers/ide/pci/ns87415.ko
-#lib/modules/KVER-ipfire/kernel/drivers/ide/pci/opti621.ko
-#lib/modules/KVER-ipfire/kernel/drivers/ide/pci/pdc202xx_new.ko
-#lib/modules/KVER-ipfire/kernel/drivers/ide/pci/pdc202xx_old.ko
-#lib/modules/KVER-ipfire/kernel/drivers/ide/pci/piix.ko
-#lib/modules/KVER-ipfire/kernel/drivers/ide/pci/rz1000.ko
-#lib/modules/KVER-ipfire/kernel/drivers/ide/pci/sc1200.ko
-#lib/modules/KVER-ipfire/kernel/drivers/ide/pci/serverworks.ko
-#lib/modules/KVER-ipfire/kernel/drivers/ide/pci/siimage.ko
-#lib/modules/KVER-ipfire/kernel/drivers/ide/pci/sis5513.ko
-#lib/modules/KVER-ipfire/kernel/drivers/ide/pci/slc90e66.ko
-#lib/modules/KVER-ipfire/kernel/drivers/ide/pci/tc86c001.ko
-#lib/modules/KVER-ipfire/kernel/drivers/ide/pci/triflex.ko
-#lib/modules/KVER-ipfire/kernel/drivers/ide/pci/trm290.ko
-#lib/modules/KVER-ipfire/kernel/drivers/ide/pci/via82cxxx.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ide/ide_platform.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ide/it8172.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ide/it8213.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ide/it821x.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ide/jmicron.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ide/ns87415.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ide/opti621.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ide/pdc202xx_new.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ide/pdc202xx_old.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ide/piix.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ide/qd65xx.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ide/rz1000.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ide/sc1200.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ide/serverworks.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ide/siimage.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ide/sis5513.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ide/slc90e66.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ide/tc86c001.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ide/triflex.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ide/trm290.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ide/umc8672.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ide/via82cxxx.ko
 #lib/modules/KVER-ipfire/kernel/drivers/ieee1394
 #lib/modules/KVER-ipfire/kernel/drivers/ieee1394/eth1394.ko
 #lib/modules/KVER-ipfire/kernel/drivers/ieee1394/ieee1394.ko
@@ -541,11 +696,18 @@ lib/modules/KVER-ipfire
 #lib/modules/KVER-ipfire/kernel/drivers/ieee1394/raw1394.ko
 #lib/modules/KVER-ipfire/kernel/drivers/ieee1394/sbp2.ko
 #lib/modules/KVER-ipfire/kernel/drivers/ieee1394/video1394.ko
+#lib/modules/KVER-ipfire/kernel/drivers/ieee802154
+#lib/modules/KVER-ipfire/kernel/drivers/ieee802154/fakehard.ko
 #lib/modules/KVER-ipfire/kernel/drivers/input
+#lib/modules/KVER-ipfire/kernel/drivers/input/ff-memless.ko
 #lib/modules/KVER-ipfire/kernel/drivers/input/input-polldev.ko
 #lib/modules/KVER-ipfire/kernel/drivers/input/keyboard
+#lib/modules/KVER-ipfire/kernel/drivers/input/keyboard/adp5588-keys.ko
 #lib/modules/KVER-ipfire/kernel/drivers/input/keyboard/lkkbd.ko
+#lib/modules/KVER-ipfire/kernel/drivers/input/keyboard/lm8323.ko
+#lib/modules/KVER-ipfire/kernel/drivers/input/keyboard/max7359_keypad.ko
 #lib/modules/KVER-ipfire/kernel/drivers/input/keyboard/newtonkbd.ko
+#lib/modules/KVER-ipfire/kernel/drivers/input/keyboard/opencores-kbd.ko
 #lib/modules/KVER-ipfire/kernel/drivers/input/keyboard/stowaway.ko
 #lib/modules/KVER-ipfire/kernel/drivers/input/keyboard/sunkbd.ko
 #lib/modules/KVER-ipfire/kernel/drivers/input/keyboard/xtkbd.ko
@@ -553,14 +715,28 @@ lib/modules/KVER-ipfire
 #lib/modules/KVER-ipfire/kernel/drivers/input/misc/apanel.ko
 #lib/modules/KVER-ipfire/kernel/drivers/input/misc/ati_remote.ko
 #lib/modules/KVER-ipfire/kernel/drivers/input/misc/ati_remote2.ko
+#lib/modules/KVER-ipfire/kernel/drivers/input/misc/cm109.ko
 #lib/modules/KVER-ipfire/kernel/drivers/input/misc/keyspan_remote.ko
+#lib/modules/KVER-ipfire/kernel/drivers/input/misc/pcf50633-input.ko
 #lib/modules/KVER-ipfire/kernel/drivers/input/misc/powermate.ko
+#lib/modules/KVER-ipfire/kernel/drivers/input/misc/winbond-cir.ko
+#lib/modules/KVER-ipfire/kernel/drivers/input/misc/wm831x-on.ko
 #lib/modules/KVER-ipfire/kernel/drivers/input/misc/yealink.ko
 #lib/modules/KVER-ipfire/kernel/drivers/isdn
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/act2000
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/act2000/act2000.ko
 #lib/modules/KVER-ipfire/kernel/drivers/isdn/capi
 #lib/modules/KVER-ipfire/kernel/drivers/isdn/capi/capi.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/capi/capidrv.ko
 #lib/modules/KVER-ipfire/kernel/drivers/isdn/capi/capifs.ko
 #lib/modules/KVER-ipfire/kernel/drivers/isdn/capi/kernelcapi.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/divert
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/divert/dss1_divert.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/gigaset
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/gigaset/bas_gigaset.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/gigaset/gigaset.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/gigaset/ser_gigaset.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/gigaset/usb_gigaset.ko
 #lib/modules/KVER-ipfire/kernel/drivers/isdn/hardware
 #lib/modules/KVER-ipfire/kernel/drivers/isdn/hardware/avm
 #lib/modules/KVER-ipfire/kernel/drivers/isdn/hardware/avm/avm_cs.ko
@@ -578,14 +754,57 @@ lib/modules/KVER-ipfire
 #lib/modules/KVER-ipfire/kernel/drivers/isdn/hardware/eicon/divacapi.ko
 #lib/modules/KVER-ipfire/kernel/drivers/isdn/hardware/eicon/divadidd.ko
 #lib/modules/KVER-ipfire/kernel/drivers/isdn/hardware/eicon/divas.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/hardware/mISDN
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/hardware/mISDN/avmfritz.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/hardware/mISDN/hfcmulti.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/hardware/mISDN/hfcpci.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/hardware/mISDN/hfcsusb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/hardware/mISDN/mISDNinfineon.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/hardware/mISDN/mISDNipac.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/hardware/mISDN/mISDNisar.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/hardware/mISDN/netjet.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/hardware/mISDN/speedfax.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/hardware/mISDN/w6692.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/hisax
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/hisax/avma1_cs.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/hisax/elsa_cs.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/hisax/hfc4s8s_l1.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/hisax/hfc_usb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/hisax/hisax.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/hisax/hisax_fcpcipnp.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/hisax/hisax_isac.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/hisax/hisax_st5481.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/hisax/sedlbauer_cs.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/hisax/teles_cs.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/hysdn
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/hysdn/hysdn.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/i4l
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/i4l/isdn.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/i4l/isdn_bsdcomp.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/i4l/isdnhdlc.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/icn
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/icn/icn.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/mISDN
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/mISDN/l1oip.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/mISDN/mISDN_core.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/mISDN/mISDN_dsp.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/pcbit
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/pcbit/pcbit.ko
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/sc
+#lib/modules/KVER-ipfire/kernel/drivers/isdn/sc/sc.ko
 #lib/modules/KVER-ipfire/kernel/drivers/leds
 #lib/modules/KVER-ipfire/kernel/drivers/leds/led-class.ko
-#lib/modules/KVER-ipfire/kernel/drivers/leds/leds-alix.ko
+#lib/modules/KVER-ipfire/kernel/drivers/leds/leds-alix2.ko
+#lib/modules/KVER-ipfire/kernel/drivers/leds/leds-bd2802.ko
 #lib/modules/KVER-ipfire/kernel/drivers/leds/leds-clevo-mail.ko
+#lib/modules/KVER-ipfire/kernel/drivers/leds/leds-lp3944.ko
 #lib/modules/KVER-ipfire/kernel/drivers/leds/leds-net48xx.ko
 #lib/modules/KVER-ipfire/kernel/drivers/leds/leds-pca9532.ko
 #lib/modules/KVER-ipfire/kernel/drivers/leds/leds-pca955x.ko
+#lib/modules/KVER-ipfire/kernel/drivers/leds/leds-wm831x-status.ko
+#lib/modules/KVER-ipfire/kernel/drivers/leds/leds-wm8350.ko
 #lib/modules/KVER-ipfire/kernel/drivers/leds/leds-wrap.ko
+#lib/modules/KVER-ipfire/kernel/drivers/leds/ledtrig-backlight.ko
 #lib/modules/KVER-ipfire/kernel/drivers/leds/ledtrig-default-on.ko
 #lib/modules/KVER-ipfire/kernel/drivers/leds/ledtrig-heartbeat.ko
 #lib/modules/KVER-ipfire/kernel/drivers/leds/ledtrig-timer.ko
@@ -594,11 +813,15 @@ lib/modules/KVER-ipfire
 #lib/modules/KVER-ipfire/kernel/drivers/md
 #lib/modules/KVER-ipfire/kernel/drivers/md/dm-crypt.ko
 #lib/modules/KVER-ipfire/kernel/drivers/md/dm-delay.ko
+#lib/modules/KVER-ipfire/kernel/drivers/md/dm-log-userspace.ko
 #lib/modules/KVER-ipfire/kernel/drivers/md/dm-log.ko
 #lib/modules/KVER-ipfire/kernel/drivers/md/dm-mirror.ko
 #lib/modules/KVER-ipfire/kernel/drivers/md/dm-mod.ko
 #lib/modules/KVER-ipfire/kernel/drivers/md/dm-multipath.ko
+#lib/modules/KVER-ipfire/kernel/drivers/md/dm-queue-length.ko
+#lib/modules/KVER-ipfire/kernel/drivers/md/dm-region-hash.ko
 #lib/modules/KVER-ipfire/kernel/drivers/md/dm-round-robin.ko
+#lib/modules/KVER-ipfire/kernel/drivers/md/dm-service-time.ko
 #lib/modules/KVER-ipfire/kernel/drivers/md/dm-snapshot.ko
 #lib/modules/KVER-ipfire/kernel/drivers/md/dm-zero.ko
 #lib/modules/KVER-ipfire/kernel/drivers/md/linear.ko
@@ -608,12 +831,24 @@ lib/modules/KVER-ipfire
 #lib/modules/KVER-ipfire/kernel/drivers/md/raid1.ko
 #lib/modules/KVER-ipfire/kernel/drivers/md/raid10.ko
 #lib/modules/KVER-ipfire/kernel/drivers/md/raid456.ko
+#lib/modules/KVER-ipfire/kernel/drivers/md/raid6_pq.ko
 #lib/modules/KVER-ipfire/kernel/drivers/media
+#lib/modules/KVER-ipfire/kernel/drivers/media/common
+#lib/modules/KVER-ipfire/kernel/drivers/media/common/tuners
+#lib/modules/KVER-ipfire/kernel/drivers/media/common/tuners/mc44s803.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/common/tuners/mt20xx.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/common/tuners/tda8290.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/common/tuners/tda9887.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/common/tuners/tea5761.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/common/tuners/tea5767.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/common/tuners/tuner-simple.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/common/tuners/tuner-types.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/common/tuners/tuner-xc2028.ko
+#lib/modules/KVER-ipfire/kernel/drivers/media/common/tuners/xc5000.ko
 #lib/modules/KVER-ipfire/kernel/drivers/media/dvb
 #lib/modules/KVER-ipfire/kernel/drivers/media/dvb/dvb-core
 #lib/modules/KVER-ipfire/kernel/drivers/media/dvb/dvb-core/dvb-core.ko
 #lib/modules/KVER-ipfire/kernel/drivers/media/video
-#lib/modules/KVER-ipfire/kernel/drivers/media/video/compat_ioctl32.ko
 #lib/modules/KVER-ipfire/kernel/drivers/media/video/v4l1-compat.ko
 #lib/modules/KVER-ipfire/kernel/drivers/media/video/v4l2-common.ko
 #lib/modules/KVER-ipfire/kernel/drivers/media/video/v4l2-int-device.ko
@@ -634,23 +869,33 @@ lib/modules/KVER-ipfire
 #lib/modules/KVER-ipfire/kernel/drivers/message/fusion/mptscsih.ko
 #lib/modules/KVER-ipfire/kernel/drivers/message/fusion/mptspi.ko
 #lib/modules/KVER-ipfire/kernel/drivers/mfd
+#lib/modules/KVER-ipfire/kernel/drivers/mfd/ab3100-core.ko
+#lib/modules/KVER-ipfire/kernel/drivers/mfd/ab3100-otp.ko
 #lib/modules/KVER-ipfire/kernel/drivers/mfd/htc-pasic3.ko
+#lib/modules/KVER-ipfire/kernel/drivers/mfd/mfd-core.ko
+#lib/modules/KVER-ipfire/kernel/drivers/mfd/pcf50633-adc.ko
+#lib/modules/KVER-ipfire/kernel/drivers/mfd/pcf50633-core.ko
+#lib/modules/KVER-ipfire/kernel/drivers/mfd/pcf50633-gpio.ko
 #lib/modules/KVER-ipfire/kernel/drivers/mfd/sm501.ko
+#lib/modules/KVER-ipfire/kernel/drivers/mfd/wm831x.ko
+#lib/modules/KVER-ipfire/kernel/drivers/mfd/wm8350-i2c.ko
+#lib/modules/KVER-ipfire/kernel/drivers/mfd/wm8350.ko
+#lib/modules/KVER-ipfire/kernel/drivers/mfd/wm8400-core.ko
 #lib/modules/KVER-ipfire/kernel/drivers/misc
-#lib/modules/KVER-ipfire/kernel/drivers/misc/acer-wmi.ko
-#lib/modules/KVER-ipfire/kernel/drivers/misc/asus-laptop.ko
-#lib/modules/KVER-ipfire/kernel/drivers/misc/compal-laptop.ko
-#lib/modules/KVER-ipfire/kernel/drivers/misc/eeepc-laptop.ko
-#lib/modules/KVER-ipfire/kernel/drivers/misc/eeprom_93cx6.ko
+#lib/modules/KVER-ipfire/kernel/drivers/misc/c2port
+#lib/modules/KVER-ipfire/kernel/drivers/misc/c2port/c2port-duramar2150.ko
+#lib/modules/KVER-ipfire/kernel/drivers/misc/c2port/core.ko
+#lib/modules/KVER-ipfire/kernel/drivers/misc/cb710
+#lib/modules/KVER-ipfire/kernel/drivers/misc/cb710/cb710.ko
+#lib/modules/KVER-ipfire/kernel/drivers/misc/eeprom
+#lib/modules/KVER-ipfire/kernel/drivers/misc/eeprom/at24.ko
+#lib/modules/KVER-ipfire/kernel/drivers/misc/eeprom/eeprom.ko
+#lib/modules/KVER-ipfire/kernel/drivers/misc/eeprom/eeprom_93cx6.ko
+#lib/modules/KVER-ipfire/kernel/drivers/misc/eeprom/max6875.ko
 #lib/modules/KVER-ipfire/kernel/drivers/misc/enclosure.ko
-#lib/modules/KVER-ipfire/kernel/drivers/misc/fujitsu-laptop.ko
-#lib/modules/KVER-ipfire/kernel/drivers/misc/hp-wmi.ko
 #lib/modules/KVER-ipfire/kernel/drivers/misc/hpilo.ko
-#lib/modules/KVER-ipfire/kernel/drivers/misc/intel_menlow.ko
-#lib/modules/KVER-ipfire/kernel/drivers/misc/msi-laptop.ko
-#lib/modules/KVER-ipfire/kernel/drivers/misc/sony-laptop.ko
-#lib/modules/KVER-ipfire/kernel/drivers/misc/tc1100-wmi.ko
-#lib/modules/KVER-ipfire/kernel/drivers/misc/thinkpad_acpi.ko
+#lib/modules/KVER-ipfire/kernel/drivers/misc/ics932s401.ko
+#lib/modules/KVER-ipfire/kernel/drivers/misc/isl29003.ko
 #lib/modules/KVER-ipfire/kernel/drivers/misc/tifm_7xx1.ko
 #lib/modules/KVER-ipfire/kernel/drivers/misc/tifm_core.ko
 #lib/modules/KVER-ipfire/kernel/drivers/mmc
@@ -661,21 +906,37 @@ lib/modules/KVER-ipfire
 #lib/modules/KVER-ipfire/kernel/drivers/mmc/core
 #lib/modules/KVER-ipfire/kernel/drivers/mmc/core/mmc_core.ko
 #lib/modules/KVER-ipfire/kernel/drivers/mmc/host
+#lib/modules/KVER-ipfire/kernel/drivers/mmc/host/cb710-mmc.ko
 #lib/modules/KVER-ipfire/kernel/drivers/mmc/host/ricoh_mmc.ko
 #lib/modules/KVER-ipfire/kernel/drivers/mmc/host/sdhci-pci.ko
+#lib/modules/KVER-ipfire/kernel/drivers/mmc/host/sdhci-pltfm.ko
 #lib/modules/KVER-ipfire/kernel/drivers/mmc/host/sdhci.ko
 #lib/modules/KVER-ipfire/kernel/drivers/mmc/host/sdricoh_cs.ko
 #lib/modules/KVER-ipfire/kernel/drivers/mmc/host/tifm_sd.ko
+#lib/modules/KVER-ipfire/kernel/drivers/mmc/host/via-sdmmc.ko
 #lib/modules/KVER-ipfire/kernel/drivers/mmc/host/wbsd.ko
 #lib/modules/KVER-ipfire/kernel/drivers/mtd
 #lib/modules/KVER-ipfire/kernel/drivers/mtd/ar7part.ko
 #lib/modules/KVER-ipfire/kernel/drivers/mtd/chips
 #lib/modules/KVER-ipfire/kernel/drivers/mtd/chips/chipreg.ko
+#lib/modules/KVER-ipfire/kernel/drivers/mtd/lpddr
+#lib/modules/KVER-ipfire/kernel/drivers/mtd/lpddr/lpddr_cmds.ko
+#lib/modules/KVER-ipfire/kernel/drivers/mtd/lpddr/qinfo_probe.ko
+#lib/modules/KVER-ipfire/kernel/drivers/mtd/maps
+#lib/modules/KVER-ipfire/kernel/drivers/mtd/maps/physmap.ko
 #lib/modules/KVER-ipfire/kernel/drivers/mtd/mtd.ko
 #lib/modules/KVER-ipfire/kernel/drivers/mtd/mtd_blkdevs.ko
 #lib/modules/KVER-ipfire/kernel/drivers/mtd/mtdblock.ko
 #lib/modules/KVER-ipfire/kernel/drivers/mtd/mtdchar.ko
 #lib/modules/KVER-ipfire/kernel/drivers/mtd/mtdconcat.ko
+#lib/modules/KVER-ipfire/kernel/drivers/mtd/tests
+#lib/modules/KVER-ipfire/kernel/drivers/mtd/tests/mtd_oobtest.ko
+#lib/modules/KVER-ipfire/kernel/drivers/mtd/tests/mtd_pagetest.ko
+#lib/modules/KVER-ipfire/kernel/drivers/mtd/tests/mtd_readtest.ko
+#lib/modules/KVER-ipfire/kernel/drivers/mtd/tests/mtd_speedtest.ko
+#lib/modules/KVER-ipfire/kernel/drivers/mtd/tests/mtd_stresstest.ko
+#lib/modules/KVER-ipfire/kernel/drivers/mtd/tests/mtd_subpagetest.ko
+#lib/modules/KVER-ipfire/kernel/drivers/mtd/tests/mtd_torturetest.ko
 #lib/modules/KVER-ipfire/kernel/drivers/mtd/ubi
 #lib/modules/KVER-ipfire/kernel/drivers/mtd/ubi/ubi.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net
@@ -697,12 +958,17 @@ lib/modules/KVER-ipfire
 #lib/modules/KVER-ipfire/kernel/drivers/net/acenic.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/amd8111e.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/at1700.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/atl1c
+#lib/modules/KVER-ipfire/kernel/drivers/net/atl1c/atl1c.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/atl1e
 #lib/modules/KVER-ipfire/kernel/drivers/net/atl1e/atl1e.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/atlx
 #lib/modules/KVER-ipfire/kernel/drivers/net/atlx/atl1.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/atlx/atl2.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/atp.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/b44.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/benet
+#lib/modules/KVER-ipfire/kernel/drivers/net/benet/be2net.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/bnx2.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/bnx2x.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/bonding
@@ -711,6 +977,7 @@ lib/modules/KVER-ipfire
 #lib/modules/KVER-ipfire/kernel/drivers/net/cassini.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/chelsio
 #lib/modules/KVER-ipfire/kernel/drivers/net/chelsio/cxgb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/cnic.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/cs89x0.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/cxgb3
 #lib/modules/KVER-ipfire/kernel/drivers/net/cxgb3/cxgb3.ko
@@ -718,6 +985,7 @@ lib/modules/KVER-ipfire
 #lib/modules/KVER-ipfire/kernel/drivers/net/de620.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/depca.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/dl2k.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/dnet.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/dummy.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/e100.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/e1000
@@ -726,12 +994,14 @@ lib/modules/KVER-ipfire
 #lib/modules/KVER-ipfire/kernel/drivers/net/e1000e/e1000e.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/e2100.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/eepro.ko
-#lib/modules/KVER-ipfire/kernel/drivers/net/eepro100.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/eexpress.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/enic
+#lib/modules/KVER-ipfire/kernel/drivers/net/enic/enic.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/epic100.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/eql.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/es3210.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/eth16i.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ethoc.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/ewrk3.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/fealnx.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/forcedeth.ko
@@ -743,6 +1013,8 @@ lib/modules/KVER-ipfire
 #lib/modules/KVER-ipfire/kernel/drivers/net/ifb.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/igb
 #lib/modules/KVER-ipfire/kernel/drivers/net/igb/igb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/igbvf
+#lib/modules/KVER-ipfire/kernel/drivers/net/igbvf/igbvf.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/imq.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/ipg.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/irda
@@ -765,11 +1037,18 @@ lib/modules/KVER-ipfire
 #lib/modules/KVER-ipfire/kernel/drivers/net/ixgb/ixgb.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/ixgbe
 #lib/modules/KVER-ipfire/kernel/drivers/net/ixgbe/ixgbe.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/jme.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ks8842.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/ks8851_mll.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/lance.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/lne390.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/lp486e.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/macvlan.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/mdio.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/mii.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/mlx4
+#lib/modules/KVER-ipfire/kernel/drivers/net/mlx4/mlx4_core.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/mlx4/mlx4_en.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/myri10ge
 #lib/modules/KVER-ipfire/kernel/drivers/net/myri10ge/myri10ge.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/natsemi.ko
@@ -797,14 +1076,16 @@ lib/modules/KVER-ipfire
 #lib/modules/KVER-ipfire/kernel/drivers/net/phy/broadcom.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/phy/cicada.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/phy/davicom.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/phy/et1011c.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/phy/icplus.ko
-#lib/modules/KVER-ipfire/kernel/drivers/net/phy/libphy.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/phy/lxt.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/phy/marvell.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/phy/mdio-bitbang.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/phy/national.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/phy/qsemi.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/phy/realtek.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/phy/smsc.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/phy/ste10Xp.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/phy/vitesse.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/ppp_async.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/ppp_deflate.ko
@@ -815,6 +1096,8 @@ lib/modules/KVER-ipfire
 #lib/modules/KVER-ipfire/kernel/drivers/net/pppol2tp.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/pppox.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/qla3xxx.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/qlge
+#lib/modules/KVER-ipfire/kernel/drivers/net/qlge/qlge.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/r6040.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/r8169.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/s2io.ko
@@ -833,6 +1116,7 @@ lib/modules/KVER-ipfire
 #lib/modules/KVER-ipfire/kernel/drivers/net/smc-ultra.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/smc-ultra32.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/smc9194.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/smsc9420.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/starfire.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/sundance.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/sungem.ko
@@ -854,11 +1138,14 @@ lib/modules/KVER-ipfire
 #lib/modules/KVER-ipfire/kernel/drivers/net/usb
 #lib/modules/KVER-ipfire/kernel/drivers/net/usb/asix.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/usb/catc.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/usb/cdc-phonet.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/usb/cdc_eem.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/usb/cdc_ether.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/usb/cdc_subset.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/usb/dm9601.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/usb/gl620a.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/usb/hso.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/usb/int51x1.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/usb/kaweth.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/usb/mcs7830.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/usb/net1080.ko
@@ -866,19 +1153,59 @@ lib/modules/KVER-ipfire
 #lib/modules/KVER-ipfire/kernel/drivers/net/usb/plusb.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/usb/rndis_host.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/usb/rtl8150.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/usb/smsc95xx.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/usb/usbnet.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/usb/zaurus.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/veth.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/via-rhine.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/via-velocity.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/virtio_net.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/vmxnet3
+#lib/modules/KVER-ipfire/kernel/drivers/net/vmxnet3/vmxnet3.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/vxge
+#lib/modules/KVER-ipfire/kernel/drivers/net/vxge/vxge.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wan
+#lib/modules/KVER-ipfire/kernel/drivers/net/wan/c101.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wan/cosa.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wan/dlci.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wan/dscc4.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wan/farsync.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wan/hdlc.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wan/hdlc_cisco.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wan/hdlc_fr.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wan/hdlc_ppp.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wan/hdlc_raw.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wan/hdlc_raw_eth.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wan/hostess_sv11.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wan/lmc
+#lib/modules/KVER-ipfire/kernel/drivers/net/wan/lmc/lmc.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wan/n2.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wan/pc300too.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wan/pci200syn.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wan/sbni.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wan/sdla.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wan/sealevel.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wan/wanxl.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wan/z85230.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/wd.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wimax
+#lib/modules/KVER-ipfire/kernel/drivers/net/wimax/i2400m
+#lib/modules/KVER-ipfire/kernel/drivers/net/wimax/i2400m/i2400m-sdio.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wimax/i2400m/i2400m-usb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wimax/i2400m/i2400m.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/wireless
 #lib/modules/KVER-ipfire/kernel/drivers/net/wireless/adm8211.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/wireless/airo.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/wireless/airo_cs.ko
-#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/ath9k
-#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/ath9k/ath9k.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/at76c50x-usb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/ath
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/ath/ar9170
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/ath/ar9170/ar9170usb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/ath/ath.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/ath/ath5k
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/ath/ath5k/ath5k.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/ath/ath9k
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/ath/ath9k/ath9k.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/wireless/atmel.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/wireless/atmel_cs.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/wireless/atmel_pci.ko
@@ -886,30 +1213,39 @@ lib/modules/KVER-ipfire
 #lib/modules/KVER-ipfire/kernel/drivers/net/wireless/b43/b43.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/wireless/b43legacy
 #lib/modules/KVER-ipfire/kernel/drivers/net/wireless/b43legacy/b43legacy.ko
-#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/hermes.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/wireless/hostap
 #lib/modules/KVER-ipfire/kernel/drivers/net/wireless/hostap/hostap.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/wireless/hostap/hostap_cs.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/wireless/hostap/hostap_pci.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/wireless/hostap/hostap_plx.ko
-#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/ipw2100.ko
-#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/ipw2200.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/ipw2x00
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/ipw2x00/ipw2100.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/ipw2x00/ipw2200.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/ipw2x00/libipw.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/wireless/iwlwifi
 #lib/modules/KVER-ipfire/kernel/drivers/net/wireless/iwlwifi/iwl3945.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/wireless/iwlwifi/iwlagn.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/wireless/iwlwifi/iwlcore.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/iwmc3200wifi
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/iwmc3200wifi/iwmc3200wifi.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/wireless/libertas
 #lib/modules/KVER-ipfire/kernel/drivers/net/wireless/libertas/libertas.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/wireless/libertas/libertas_cs.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/wireless/libertas/libertas_sdio.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/wireless/libertas/usb8xxx.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/libertas_tf
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/libertas_tf/libertas_tf.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/libertas_tf/libertas_tf_usb.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/wireless/mac80211_hwsim.ko
-#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/orinoco.ko
-#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/orinoco_cs.ko
-#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/orinoco_nortel.ko
-#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/orinoco_pci.ko
-#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/orinoco_plx.ko
-#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/orinoco_tmd.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/mwl8k.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/orinoco
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/orinoco/orinoco.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/orinoco/orinoco_cs.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/orinoco/orinoco_nortel.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/orinoco/orinoco_pci.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/orinoco/orinoco_plx.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/orinoco/orinoco_tmd.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/orinoco/spectrum_cs.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/wireless/p54
 #lib/modules/KVER-ipfire/kernel/drivers/net/wireless/p54/p54common.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/wireless/p54/p54pci.ko
@@ -922,14 +1258,18 @@ lib/modules/KVER-ipfire
 #lib/modules/KVER-ipfire/kernel/drivers/net/wireless/rt2x00/rt2400pci.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/wireless/rt2x00/rt2500pci.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/wireless/rt2x00/rt2500usb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/rt2x00/rt2800usb.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/wireless/rt2x00/rt2x00lib.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/wireless/rt2x00/rt2x00pci.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/wireless/rt2x00/rt2x00usb.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/wireless/rt2x00/rt61pci.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/wireless/rt2x00/rt73usb.ko
-#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/rtl8180.ko
-#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/rtl8187.ko
-#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/spectrum_cs.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/rtl818x
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/rtl818x/rtl8180.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/rtl818x/rtl8187.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/wl12xx
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/wl12xx/wl1251.ko
+#lib/modules/KVER-ipfire/kernel/drivers/net/wireless/wl12xx/wl1251_sdio.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/wireless/wl3501_cs.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/wireless/zd1201.ko
 #lib/modules/KVER-ipfire/kernel/drivers/net/wireless/zd1211rw
@@ -942,6 +1282,8 @@ lib/modules/KVER-ipfire
 #lib/modules/KVER-ipfire/kernel/drivers/parport/parport_cs.ko
 #lib/modules/KVER-ipfire/kernel/drivers/parport/parport_pc.ko
 #lib/modules/KVER-ipfire/kernel/drivers/parport/parport_serial.ko
+#lib/modules/KVER-ipfire/kernel/drivers/pci
+#lib/modules/KVER-ipfire/kernel/drivers/pci/pci-stub.ko
 #lib/modules/KVER-ipfire/kernel/drivers/pcmcia
 #lib/modules/KVER-ipfire/kernel/drivers/pcmcia/i82092.ko
 #lib/modules/KVER-ipfire/kernel/drivers/pcmcia/i82365.ko
@@ -951,9 +1293,39 @@ lib/modules/KVER-ipfire
 #lib/modules/KVER-ipfire/kernel/drivers/pcmcia/rsrc_nonstatic.ko
 #lib/modules/KVER-ipfire/kernel/drivers/pcmcia/tcic.ko
 #lib/modules/KVER-ipfire/kernel/drivers/pcmcia/yenta_socket.ko
+#lib/modules/KVER-ipfire/kernel/drivers/platform
+#lib/modules/KVER-ipfire/kernel/drivers/platform/x86
+#lib/modules/KVER-ipfire/kernel/drivers/platform/x86/acer-wmi.ko
+#lib/modules/KVER-ipfire/kernel/drivers/platform/x86/asus-laptop.ko
+#lib/modules/KVER-ipfire/kernel/drivers/platform/x86/asus_acpi.ko
+#lib/modules/KVER-ipfire/kernel/drivers/platform/x86/compal-laptop.ko
+#lib/modules/KVER-ipfire/kernel/drivers/platform/x86/dell-wmi.ko
+#lib/modules/KVER-ipfire/kernel/drivers/platform/x86/fujitsu-laptop.ko
+#lib/modules/KVER-ipfire/kernel/drivers/platform/x86/hp-wmi.ko
+#lib/modules/KVER-ipfire/kernel/drivers/platform/x86/intel_menlow.ko
+#lib/modules/KVER-ipfire/kernel/drivers/platform/x86/msi-laptop.ko
+#lib/modules/KVER-ipfire/kernel/drivers/platform/x86/panasonic-laptop.ko
+#lib/modules/KVER-ipfire/kernel/drivers/platform/x86/sony-laptop.ko
+#lib/modules/KVER-ipfire/kernel/drivers/platform/x86/tc1100-wmi.ko
+#lib/modules/KVER-ipfire/kernel/drivers/platform/x86/thinkpad_acpi.ko
+#lib/modules/KVER-ipfire/kernel/drivers/platform/x86/topstar-laptop.ko
+#lib/modules/KVER-ipfire/kernel/drivers/platform/x86/toshiba_acpi.ko
+#lib/modules/KVER-ipfire/kernel/drivers/platform/x86/wmi.ko
+#lib/modules/KVER-ipfire/kernel/drivers/power
+#lib/modules/KVER-ipfire/kernel/drivers/power/bq27x00_battery.ko
+#lib/modules/KVER-ipfire/kernel/drivers/power/ds2782_battery.ko
+#lib/modules/KVER-ipfire/kernel/drivers/power/max17040_battery.ko
+#lib/modules/KVER-ipfire/kernel/drivers/power/pcf50633-charger.ko
+#lib/modules/KVER-ipfire/kernel/drivers/power/wm831x_power.ko
+#lib/modules/KVER-ipfire/kernel/drivers/power/wm8350_power.ko
+#lib/modules/KVER-ipfire/kernel/drivers/pps
+#lib/modules/KVER-ipfire/kernel/drivers/pps/pps_core.ko
 #lib/modules/KVER-ipfire/kernel/drivers/rtc
+#lib/modules/KVER-ipfire/kernel/drivers/rtc/rtc-ab3100.ko
+#lib/modules/KVER-ipfire/kernel/drivers/rtc/rtc-bq4802.ko
 #lib/modules/KVER-ipfire/kernel/drivers/rtc/rtc-cmos.ko
 #lib/modules/KVER-ipfire/kernel/drivers/rtc/rtc-core.ko
+#lib/modules/KVER-ipfire/kernel/drivers/rtc/rtc-ds1286.ko
 #lib/modules/KVER-ipfire/kernel/drivers/rtc/rtc-ds1307.ko
 #lib/modules/KVER-ipfire/kernel/drivers/rtc/rtc-ds1374.ko
 #lib/modules/KVER-ipfire/kernel/drivers/rtc/rtc-ds1511.ko
@@ -964,16 +1336,22 @@ lib/modules/KVER-ipfire
 #lib/modules/KVER-ipfire/kernel/drivers/rtc/rtc-isl1208.ko
 #lib/modules/KVER-ipfire/kernel/drivers/rtc/rtc-lib.ko
 #lib/modules/KVER-ipfire/kernel/drivers/rtc/rtc-m41t80.ko
+#lib/modules/KVER-ipfire/kernel/drivers/rtc/rtc-m48t35.ko
 #lib/modules/KVER-ipfire/kernel/drivers/rtc/rtc-m48t59.ko
 #lib/modules/KVER-ipfire/kernel/drivers/rtc/rtc-m48t86.ko
 #lib/modules/KVER-ipfire/kernel/drivers/rtc/rtc-max6900.ko
+#lib/modules/KVER-ipfire/kernel/drivers/rtc/rtc-pcf50633.ko
 #lib/modules/KVER-ipfire/kernel/drivers/rtc/rtc-pcf8563.ko
 #lib/modules/KVER-ipfire/kernel/drivers/rtc/rtc-pcf8583.ko
 #lib/modules/KVER-ipfire/kernel/drivers/rtc/rtc-rs5c372.ko
+#lib/modules/KVER-ipfire/kernel/drivers/rtc/rtc-rx8025.ko
+#lib/modules/KVER-ipfire/kernel/drivers/rtc/rtc-rx8581.ko
 #lib/modules/KVER-ipfire/kernel/drivers/rtc/rtc-s35390a.ko
 #lib/modules/KVER-ipfire/kernel/drivers/rtc/rtc-stk17ta8.ko
 #lib/modules/KVER-ipfire/kernel/drivers/rtc/rtc-test.ko
 #lib/modules/KVER-ipfire/kernel/drivers/rtc/rtc-v3020.ko
+#lib/modules/KVER-ipfire/kernel/drivers/rtc/rtc-wm831x.ko
+#lib/modules/KVER-ipfire/kernel/drivers/rtc/rtc-wm8350.ko
 #lib/modules/KVER-ipfire/kernel/drivers/rtc/rtc-x1205.ko
 #lib/modules/KVER-ipfire/kernel/drivers/scsi
 #lib/modules/KVER-ipfire/kernel/drivers/scsi/3w-9xxx.ko
@@ -998,7 +1376,15 @@ lib/modules/KVER-ipfire
 #lib/modules/KVER-ipfire/kernel/drivers/scsi/arcmsr
 #lib/modules/KVER-ipfire/kernel/drivers/scsi/arcmsr/arcmsr.ko
 #lib/modules/KVER-ipfire/kernel/drivers/scsi/atp870u.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/be2iscsi
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/be2iscsi/be2iscsi.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/bfa
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/bfa/bfa.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/bnx2i
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/bnx2i/bnx2i.ko
 #lib/modules/KVER-ipfire/kernel/drivers/scsi/ch.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/cxgb3i
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/cxgb3i/cxgb3i.ko
 #lib/modules/KVER-ipfire/kernel/drivers/scsi/dc395x.ko
 #lib/modules/KVER-ipfire/kernel/drivers/scsi/device_handler
 #lib/modules/KVER-ipfire/kernel/drivers/scsi/device_handler/scsi_dh.ko
@@ -1010,8 +1396,13 @@ lib/modules/KVER-ipfire
 #lib/modules/KVER-ipfire/kernel/drivers/scsi/dpt_i2o.ko
 #lib/modules/KVER-ipfire/kernel/drivers/scsi/dtc.ko
 #lib/modules/KVER-ipfire/kernel/drivers/scsi/eata.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/fcoe
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/fcoe/fcoe.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/fcoe/libfcoe.ko
 #lib/modules/KVER-ipfire/kernel/drivers/scsi/fd_mcs.ko
 #lib/modules/KVER-ipfire/kernel/drivers/scsi/fdomain.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/fnic
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/fnic/fnic.ko
 #lib/modules/KVER-ipfire/kernel/drivers/scsi/g_NCR5380.ko
 #lib/modules/KVER-ipfire/kernel/drivers/scsi/g_NCR5380_mmio.ko
 #lib/modules/KVER-ipfire/kernel/drivers/scsi/gdth.ko
@@ -1023,7 +1414,10 @@ lib/modules/KVER-ipfire
 #lib/modules/KVER-ipfire/kernel/drivers/scsi/ipr.ko
 #lib/modules/KVER-ipfire/kernel/drivers/scsi/ips.ko
 #lib/modules/KVER-ipfire/kernel/drivers/scsi/iscsi_tcp.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/libfc
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/libfc/libfc.ko
 #lib/modules/KVER-ipfire/kernel/drivers/scsi/libiscsi.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/libiscsi_tcp.ko
 #lib/modules/KVER-ipfire/kernel/drivers/scsi/libsas
 #lib/modules/KVER-ipfire/kernel/drivers/scsi/libsas/libsas.ko
 #lib/modules/KVER-ipfire/kernel/drivers/scsi/lpfc
@@ -1033,8 +1427,14 @@ lib/modules/KVER-ipfire
 #lib/modules/KVER-ipfire/kernel/drivers/scsi/megaraid/megaraid_mbox.ko
 #lib/modules/KVER-ipfire/kernel/drivers/scsi/megaraid/megaraid_mm.ko
 #lib/modules/KVER-ipfire/kernel/drivers/scsi/megaraid/megaraid_sas.ko
-#lib/modules/KVER-ipfire/kernel/drivers/scsi/mvsas.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/mpt2sas
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/mpt2sas/mpt2sas.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/mvsas
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/mvsas/mvsas.ko
 #lib/modules/KVER-ipfire/kernel/drivers/scsi/nsp32.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/osd
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/osd/libosd.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/osd/osd.ko
 #lib/modules/KVER-ipfire/kernel/drivers/scsi/pas16.ko
 #lib/modules/KVER-ipfire/kernel/drivers/scsi/pcmcia
 #lib/modules/KVER-ipfire/kernel/drivers/scsi/pcmcia/aha152x_cs.ko
@@ -1042,6 +1442,7 @@ lib/modules/KVER-ipfire
 #lib/modules/KVER-ipfire/kernel/drivers/scsi/pcmcia/nsp_cs.ko
 #lib/modules/KVER-ipfire/kernel/drivers/scsi/pcmcia/qlogic_cs.ko
 #lib/modules/KVER-ipfire/kernel/drivers/scsi/pcmcia/sym53c500_cs.ko
+#lib/modules/KVER-ipfire/kernel/drivers/scsi/pmcraid.ko
 #lib/modules/KVER-ipfire/kernel/drivers/scsi/ppa.ko
 #lib/modules/KVER-ipfire/kernel/drivers/scsi/qla1280.ko
 #lib/modules/KVER-ipfire/kernel/drivers/scsi/qla2xxx
@@ -1082,9 +1483,12 @@ lib/modules/KVER-ipfire
 #lib/modules/KVER-ipfire/kernel/drivers/ssb/ssb.ko
 #lib/modules/KVER-ipfire/kernel/drivers/uio
 #lib/modules/KVER-ipfire/kernel/drivers/uio/uio.ko
+#lib/modules/KVER-ipfire/kernel/drivers/uio/uio_aec.ko
 #lib/modules/KVER-ipfire/kernel/drivers/uio/uio_cif.ko
+#lib/modules/KVER-ipfire/kernel/drivers/uio/uio_pci_generic.ko
 #lib/modules/KVER-ipfire/kernel/drivers/uio/uio_pdrv.ko
 #lib/modules/KVER-ipfire/kernel/drivers/uio/uio_pdrv_genirq.ko
+#lib/modules/KVER-ipfire/kernel/drivers/uio/uio_sercos3.ko
 #lib/modules/KVER-ipfire/kernel/drivers/uio/uio_smx.ko
 #lib/modules/KVER-ipfire/kernel/drivers/usb
 #lib/modules/KVER-ipfire/kernel/drivers/usb/atm
@@ -1097,16 +1501,23 @@ lib/modules/KVER-ipfire
 #lib/modules/KVER-ipfire/kernel/drivers/usb/class/cdc-acm.ko
 #lib/modules/KVER-ipfire/kernel/drivers/usb/class/cdc-wdm.ko
 #lib/modules/KVER-ipfire/kernel/drivers/usb/class/usblp.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/class/usbtmc.ko
 #lib/modules/KVER-ipfire/kernel/drivers/usb/core
 #lib/modules/KVER-ipfire/kernel/drivers/usb/core/usbcore.ko
 #lib/modules/KVER-ipfire/kernel/drivers/usb/host
 #lib/modules/KVER-ipfire/kernel/drivers/usb/host/ehci-hcd.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/host/hwa-hc.ko
 #lib/modules/KVER-ipfire/kernel/drivers/usb/host/isp116x-hcd.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/host/isp1362-hcd.ko
 #lib/modules/KVER-ipfire/kernel/drivers/usb/host/ohci-hcd.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/host/oxu210hp-hcd.ko
 #lib/modules/KVER-ipfire/kernel/drivers/usb/host/r8a66597-hcd.ko
 #lib/modules/KVER-ipfire/kernel/drivers/usb/host/sl811-hcd.ko
 #lib/modules/KVER-ipfire/kernel/drivers/usb/host/u132-hcd.ko
 #lib/modules/KVER-ipfire/kernel/drivers/usb/host/uhci-hcd.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/host/whci
+#lib/modules/KVER-ipfire/kernel/drivers/usb/host/whci/whci-hcd.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/host/xhci.ko
 #lib/modules/KVER-ipfire/kernel/drivers/usb/misc
 #lib/modules/KVER-ipfire/kernel/drivers/usb/misc/berry_charge.ko
 #lib/modules/KVER-ipfire/kernel/drivers/usb/misc/cypress_cy7c63.ko
@@ -1120,13 +1531,17 @@ lib/modules/KVER-ipfire
 #lib/modules/KVER-ipfire/kernel/drivers/usb/misc/sisusbvga/sisusbvga.ko
 #lib/modules/KVER-ipfire/kernel/drivers/usb/misc/usblcd.ko
 #lib/modules/KVER-ipfire/kernel/drivers/usb/misc/usbled.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/misc/usbsevseg.ko
 #lib/modules/KVER-ipfire/kernel/drivers/usb/misc/uss720.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/misc/vstusb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/otg
+#lib/modules/KVER-ipfire/kernel/drivers/usb/otg/nop-usb-xceiv.ko
 #lib/modules/KVER-ipfire/kernel/drivers/usb/serial
 #lib/modules/KVER-ipfire/kernel/drivers/usb/serial/aircable.ko
 #lib/modules/KVER-ipfire/kernel/drivers/usb/serial/ark3116.ko
 #lib/modules/KVER-ipfire/kernel/drivers/usb/serial/belkin_sa.ko
 #lib/modules/KVER-ipfire/kernel/drivers/usb/serial/ch341.ko
-#lib/modules/KVER-ipfire/kernel/drivers/usb/serial/cp2101.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/serial/cp210x.ko
 #lib/modules/KVER-ipfire/kernel/drivers/usb/serial/cypress_m8.ko
 #lib/modules/KVER-ipfire/kernel/drivers/usb/serial/digi_acceleport.ko
 #lib/modules/KVER-ipfire/kernel/drivers/usb/serial/empeg.ko
@@ -1141,17 +1556,49 @@ lib/modules/KVER-ipfire
 #lib/modules/KVER-ipfire/kernel/drivers/usb/serial/mos7720.ko
 #lib/modules/KVER-ipfire/kernel/drivers/usb/serial/mos7840.ko
 #lib/modules/KVER-ipfire/kernel/drivers/usb/serial/moto_modem.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/serial/opticon.ko
 #lib/modules/KVER-ipfire/kernel/drivers/usb/serial/option.ko
 #lib/modules/KVER-ipfire/kernel/drivers/usb/serial/oti6858.ko
 #lib/modules/KVER-ipfire/kernel/drivers/usb/serial/pl2303.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/serial/qcserial.ko
 #lib/modules/KVER-ipfire/kernel/drivers/usb/serial/safe_serial.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/serial/siemens_mpi.ko
 #lib/modules/KVER-ipfire/kernel/drivers/usb/serial/sierra.ko
 #lib/modules/KVER-ipfire/kernel/drivers/usb/serial/spcp8x5.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/serial/symbolserial.ko
 #lib/modules/KVER-ipfire/kernel/drivers/usb/serial/ti_usb_3410_5052.ko
 #lib/modules/KVER-ipfire/kernel/drivers/usb/serial/usbserial.ko
 #lib/modules/KVER-ipfire/kernel/drivers/usb/serial/whiteheat.ko
 #lib/modules/KVER-ipfire/kernel/drivers/usb/storage
+#lib/modules/KVER-ipfire/kernel/drivers/usb/storage/ums-alauda.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/storage/ums-cypress.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/storage/ums-freecom.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/storage/ums-isd200.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/storage/ums-jumpshot.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/storage/ums-karma.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/storage/ums-onetouch.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/storage/ums-sddr09.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/storage/ums-sddr55.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/storage/ums-usbat.ko
 #lib/modules/KVER-ipfire/kernel/drivers/usb/storage/usb-storage.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/wusbcore
+#lib/modules/KVER-ipfire/kernel/drivers/usb/wusbcore/wusb-cbaf.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/wusbcore/wusb-wa.ko
+#lib/modules/KVER-ipfire/kernel/drivers/usb/wusbcore/wusbcore.ko
+#lib/modules/KVER-ipfire/kernel/drivers/uwb
+#lib/modules/KVER-ipfire/kernel/drivers/uwb/hwa-rc.ko
+#lib/modules/KVER-ipfire/kernel/drivers/uwb/i1480
+#lib/modules/KVER-ipfire/kernel/drivers/uwb/i1480/dfu
+#lib/modules/KVER-ipfire/kernel/drivers/uwb/i1480/dfu/i1480-dfu-usb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/uwb/i1480/i1480-est.ko
+#lib/modules/KVER-ipfire/kernel/drivers/uwb/i1480/i1480u-wlp
+#lib/modules/KVER-ipfire/kernel/drivers/uwb/i1480/i1480u-wlp/i1480u-wlp.ko
+#lib/modules/KVER-ipfire/kernel/drivers/uwb/umc.ko
+#lib/modules/KVER-ipfire/kernel/drivers/uwb/uwb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/uwb/whc-rc.ko
+#lib/modules/KVER-ipfire/kernel/drivers/uwb/whci.ko
+#lib/modules/KVER-ipfire/kernel/drivers/uwb/wlp
+#lib/modules/KVER-ipfire/kernel/drivers/uwb/wlp/wlp.ko
 #lib/modules/KVER-ipfire/kernel/drivers/video
 #lib/modules/KVER-ipfire/kernel/drivers/video/arkfb.ko
 #lib/modules/KVER-ipfire/kernel/drivers/video/aty
@@ -1159,26 +1606,26 @@ lib/modules/KVER-ipfire
 #lib/modules/KVER-ipfire/kernel/drivers/video/aty/atyfb.ko
 #lib/modules/KVER-ipfire/kernel/drivers/video/aty/radeonfb.ko
 #lib/modules/KVER-ipfire/kernel/drivers/video/backlight
-#lib/modules/KVER-ipfire/kernel/drivers/video/backlight/corgi_bl.ko
 #lib/modules/KVER-ipfire/kernel/drivers/video/backlight/cr_bllcd.ko
+#lib/modules/KVER-ipfire/kernel/drivers/video/backlight/generic_bl.ko
+#lib/modules/KVER-ipfire/kernel/drivers/video/backlight/kb3886_bl.ko
 #lib/modules/KVER-ipfire/kernel/drivers/video/backlight/lcd.ko
 #lib/modules/KVER-ipfire/kernel/drivers/video/backlight/mbp_nvidia_bl.ko
 #lib/modules/KVER-ipfire/kernel/drivers/video/backlight/platform_lcd.ko
 #lib/modules/KVER-ipfire/kernel/drivers/video/backlight/progear_bl.ko
+#lib/modules/KVER-ipfire/kernel/drivers/video/backlight/wm831x_bl.ko
 #lib/modules/KVER-ipfire/kernel/drivers/video/cirrusfb.ko
 #lib/modules/KVER-ipfire/kernel/drivers/video/cyber2000fb.ko
-#lib/modules/KVER-ipfire/kernel/drivers/video/cyblafb.ko
 #lib/modules/KVER-ipfire/kernel/drivers/video/display
 #lib/modules/KVER-ipfire/kernel/drivers/video/display/display.ko
 #lib/modules/KVER-ipfire/kernel/drivers/video/fb_ddc.ko
+#lib/modules/KVER-ipfire/kernel/drivers/video/fb_sys_fops.ko
 #lib/modules/KVER-ipfire/kernel/drivers/video/geode
 #lib/modules/KVER-ipfire/kernel/drivers/video/geode/gx1fb.ko
 #lib/modules/KVER-ipfire/kernel/drivers/video/geode/gxfb.ko
 #lib/modules/KVER-ipfire/kernel/drivers/video/geode/lxfb.ko
 #lib/modules/KVER-ipfire/kernel/drivers/video/i810
 #lib/modules/KVER-ipfire/kernel/drivers/video/i810/i810fb.ko
-#lib/modules/KVER-ipfire/kernel/drivers/video/intelfb
-#lib/modules/KVER-ipfire/kernel/drivers/video/intelfb/intelfb.ko
 #lib/modules/KVER-ipfire/kernel/drivers/video/kyro
 #lib/modules/KVER-ipfire/kernel/drivers/video/kyro/kyrofb.ko
 #lib/modules/KVER-ipfire/kernel/drivers/video/macmodes.ko
@@ -1193,6 +1640,7 @@ lib/modules/KVER-ipfire
 #lib/modules/KVER-ipfire/kernel/drivers/video/matrox/matroxfb_g450.ko
 #lib/modules/KVER-ipfire/kernel/drivers/video/matrox/matroxfb_maven.ko
 #lib/modules/KVER-ipfire/kernel/drivers/video/matrox/matroxfb_misc.ko
+#lib/modules/KVER-ipfire/kernel/drivers/video/metronomefb.ko
 #lib/modules/KVER-ipfire/kernel/drivers/video/neofb.ko
 #lib/modules/KVER-ipfire/kernel/drivers/video/nvidia
 #lib/modules/KVER-ipfire/kernel/drivers/video/nvidia/nvidiafb.ko
@@ -1209,13 +1657,19 @@ lib/modules/KVER-ipfire
 #lib/modules/KVER-ipfire/kernel/drivers/video/sm501fb.ko
 #lib/modules/KVER-ipfire/kernel/drivers/video/sstfb.ko
 #lib/modules/KVER-ipfire/kernel/drivers/video/svgalib.ko
+#lib/modules/KVER-ipfire/kernel/drivers/video/syscopyarea.ko
+#lib/modules/KVER-ipfire/kernel/drivers/video/sysfillrect.ko
+#lib/modules/KVER-ipfire/kernel/drivers/video/sysimgblt.ko
 #lib/modules/KVER-ipfire/kernel/drivers/video/tdfxfb.ko
+#lib/modules/KVER-ipfire/kernel/drivers/video/tmiofb.ko
 #lib/modules/KVER-ipfire/kernel/drivers/video/tridentfb.ko
 #lib/modules/KVER-ipfire/kernel/drivers/video/uvesafb.ko
 #lib/modules/KVER-ipfire/kernel/drivers/video/vermilion
 #lib/modules/KVER-ipfire/kernel/drivers/video/vermilion/crvml.ko
 #lib/modules/KVER-ipfire/kernel/drivers/video/vermilion/vmlfb.ko
 #lib/modules/KVER-ipfire/kernel/drivers/video/vgastate.ko
+#lib/modules/KVER-ipfire/kernel/drivers/video/via
+#lib/modules/KVER-ipfire/kernel/drivers/video/via/viafb.ko
 #lib/modules/KVER-ipfire/kernel/drivers/video/vt8623fb.ko
 #lib/modules/KVER-ipfire/kernel/drivers/virtio
 #lib/modules/KVER-ipfire/kernel/drivers/virtio/virtio_balloon.ko
@@ -1226,6 +1680,8 @@ lib/modules/KVER-ipfire
 #lib/modules/KVER-ipfire/kernel/drivers/w1/masters/ds2490.ko
 #lib/modules/KVER-ipfire/kernel/drivers/w1/masters/matrox_w1.ko
 #lib/modules/KVER-ipfire/kernel/drivers/w1/slaves
+#lib/modules/KVER-ipfire/kernel/drivers/w1/slaves/w1_bq27000.ko
+#lib/modules/KVER-ipfire/kernel/drivers/w1/slaves/w1_ds2431.ko
 #lib/modules/KVER-ipfire/kernel/drivers/w1/slaves/w1_ds2433.ko
 #lib/modules/KVER-ipfire/kernel/drivers/w1/slaves/w1_ds2760.ko
 #lib/modules/KVER-ipfire/kernel/drivers/w1/slaves/w1_smem.ko
@@ -1244,6 +1700,7 @@ lib/modules/KVER-ipfire
 #lib/modules/KVER-ipfire/kernel/drivers/watchdog/ib700wdt.ko
 #lib/modules/KVER-ipfire/kernel/drivers/watchdog/ibmasr.ko
 #lib/modules/KVER-ipfire/kernel/drivers/watchdog/it8712f_wdt.ko
+#lib/modules/KVER-ipfire/kernel/drivers/watchdog/it87_wdt.ko
 #lib/modules/KVER-ipfire/kernel/drivers/watchdog/machzwd.ko
 #lib/modules/KVER-ipfire/kernel/drivers/watchdog/pc87413_wdt.ko
 #lib/modules/KVER-ipfire/kernel/drivers/watchdog/pcwd_pci.ko
@@ -1252,17 +1709,22 @@ lib/modules/KVER-ipfire
 #lib/modules/KVER-ipfire/kernel/drivers/watchdog/sbc7240_wdt.ko
 #lib/modules/KVER-ipfire/kernel/drivers/watchdog/sbc8360.ko
 #lib/modules/KVER-ipfire/kernel/drivers/watchdog/sbc_epx_c3.ko
+#lib/modules/KVER-ipfire/kernel/drivers/watchdog/sbc_fitpc2_wdt.ko
 #lib/modules/KVER-ipfire/kernel/drivers/watchdog/sc1200wdt.ko
 #lib/modules/KVER-ipfire/kernel/drivers/watchdog/sc520_wdt.ko
+#lib/modules/KVER-ipfire/kernel/drivers/watchdog/sch311x_wdt.ko
 #lib/modules/KVER-ipfire/kernel/drivers/watchdog/scx200_wdt.ko
 #lib/modules/KVER-ipfire/kernel/drivers/watchdog/smsc37b787_wdt.ko
 #lib/modules/KVER-ipfire/kernel/drivers/watchdog/softdog.ko
 #lib/modules/KVER-ipfire/kernel/drivers/watchdog/w83627hf_wdt.ko
 #lib/modules/KVER-ipfire/kernel/drivers/watchdog/w83697hf_wdt.ko
+#lib/modules/KVER-ipfire/kernel/drivers/watchdog/w83697ug_wdt.ko
 #lib/modules/KVER-ipfire/kernel/drivers/watchdog/w83877f_wdt.ko
 #lib/modules/KVER-ipfire/kernel/drivers/watchdog/w83977f_wdt.ko
 #lib/modules/KVER-ipfire/kernel/drivers/watchdog/wafer5823wdt.ko
 #lib/modules/KVER-ipfire/kernel/drivers/watchdog/wdt_pci.ko
+#lib/modules/KVER-ipfire/kernel/drivers/watchdog/wm831x_wdt.ko
+#lib/modules/KVER-ipfire/kernel/drivers/watchdog/wm8350_wdt.ko
 #lib/modules/KVER-ipfire/kernel/fs
 #lib/modules/KVER-ipfire/kernel/fs/autofs
 #lib/modules/KVER-ipfire/kernel/fs/autofs/autofs.ko
@@ -1278,14 +1740,22 @@ lib/modules/KVER-ipfire
 #lib/modules/KVER-ipfire/kernel/fs/ext2/ext2.ko
 #lib/modules/KVER-ipfire/kernel/fs/ext3
 #lib/modules/KVER-ipfire/kernel/fs/ext3/ext3.ko
+#lib/modules/KVER-ipfire/kernel/fs/ext4
+#lib/modules/KVER-ipfire/kernel/fs/ext4/ext4.ko
 #lib/modules/KVER-ipfire/kernel/fs/fat
 #lib/modules/KVER-ipfire/kernel/fs/fat/fat.ko
+#lib/modules/KVER-ipfire/kernel/fs/fat/vfat.ko
+#lib/modules/KVER-ipfire/kernel/fs/fscache
+#lib/modules/KVER-ipfire/kernel/fs/fscache/fscache.ko
 #lib/modules/KVER-ipfire/kernel/fs/fuse
+#lib/modules/KVER-ipfire/kernel/fs/fuse/cuse.ko
 #lib/modules/KVER-ipfire/kernel/fs/fuse/fuse.ko
 #lib/modules/KVER-ipfire/kernel/fs/isofs
 #lib/modules/KVER-ipfire/kernel/fs/isofs/isofs.ko
 #lib/modules/KVER-ipfire/kernel/fs/jbd
 #lib/modules/KVER-ipfire/kernel/fs/jbd/jbd.ko
+#lib/modules/KVER-ipfire/kernel/fs/jbd2
+#lib/modules/KVER-ipfire/kernel/fs/jbd2/jbd2.ko
 #lib/modules/KVER-ipfire/kernel/fs/jffs2
 #lib/modules/KVER-ipfire/kernel/fs/jffs2/jffs2.ko
 #lib/modules/KVER-ipfire/kernel/fs/jfs
@@ -1305,8 +1775,6 @@ lib/modules/KVER-ipfire
 #lib/modules/KVER-ipfire/kernel/fs/smbfs/smbfs.ko
 #lib/modules/KVER-ipfire/kernel/fs/udf
 #lib/modules/KVER-ipfire/kernel/fs/udf/udf.ko
-#lib/modules/KVER-ipfire/kernel/fs/vfat
-#lib/modules/KVER-ipfire/kernel/fs/vfat/vfat.ko
 #lib/modules/KVER-ipfire/kernel/fs/xfs
 #lib/modules/KVER-ipfire/kernel/fs/xfs/xfs.ko
 #lib/modules/KVER-ipfire/kernel/lib
@@ -1371,17 +1839,14 @@ lib/modules/KVER-ipfire
 #lib/modules/KVER-ipfire/kernel/net/bridge/netfilter/ebtable_filter.ko
 #lib/modules/KVER-ipfire/kernel/net/bridge/netfilter/ebtable_nat.ko
 #lib/modules/KVER-ipfire/kernel/net/bridge/netfilter/ebtables.ko
-#lib/modules/KVER-ipfire/kernel/net/ieee80211
-#lib/modules/KVER-ipfire/kernel/net/ieee80211/ieee80211.ko
-#lib/modules/KVER-ipfire/kernel/net/ieee80211/ieee80211_crypt.ko
-#lib/modules/KVER-ipfire/kernel/net/ieee80211/ieee80211_crypt_ccmp.ko
-#lib/modules/KVER-ipfire/kernel/net/ieee80211/ieee80211_crypt_tkip.ko
-#lib/modules/KVER-ipfire/kernel/net/ieee80211/ieee80211_crypt_wep.ko
+#lib/modules/KVER-ipfire/kernel/net/ieee802154
+#lib/modules/KVER-ipfire/kernel/net/ieee802154/af_802154.ko
+#lib/modules/KVER-ipfire/kernel/net/ieee802154/nl802154.ko
+#lib/modules/KVER-ipfire/kernel/net/ieee802154/wpan-class.ko
 #lib/modules/KVER-ipfire/kernel/net/ipv4
 #lib/modules/KVER-ipfire/kernel/net/ipv4/ah4.ko
 #lib/modules/KVER-ipfire/kernel/net/ipv4/esp4.ko
 #lib/modules/KVER-ipfire/kernel/net/ipv4/inet_diag.ko
-#lib/modules/KVER-ipfire/kernel/net/ipv4/inet_lro.ko
 #lib/modules/KVER-ipfire/kernel/net/ipv4/ip_gre.ko
 #lib/modules/KVER-ipfire/kernel/net/ipv4/ipcomp.ko
 #lib/modules/KVER-ipfire/kernel/net/ipv4/ipip.ko
@@ -1398,19 +1863,17 @@ lib/modules/KVER-ipfire
 #lib/modules/KVER-ipfire/kernel/net/ipv4/netfilter/ipt_NETMAP.ko
 #lib/modules/KVER-ipfire/kernel/net/ipv4/netfilter/ipt_REDIRECT.ko
 #lib/modules/KVER-ipfire/kernel/net/ipv4/netfilter/ipt_REJECT.ko
-#lib/modules/KVER-ipfire/kernel/net/ipv4/netfilter/ipt_TTL.ko
 #lib/modules/KVER-ipfire/kernel/net/ipv4/netfilter/ipt_ULOG.ko
 #lib/modules/KVER-ipfire/kernel/net/ipv4/netfilter/ipt_addrtype.ko
 #lib/modules/KVER-ipfire/kernel/net/ipv4/netfilter/ipt_ah.ko
 #lib/modules/KVER-ipfire/kernel/net/ipv4/netfilter/ipt_ecn.ko
 #lib/modules/KVER-ipfire/kernel/net/ipv4/netfilter/ipt_ipp2p.ko
-#lib/modules/KVER-ipfire/kernel/net/ipv4/netfilter/ipt_recent.ko
-#lib/modules/KVER-ipfire/kernel/net/ipv4/netfilter/ipt_ttl.ko
 #lib/modules/KVER-ipfire/kernel/net/ipv4/netfilter/iptable_filter.ko
 #lib/modules/KVER-ipfire/kernel/net/ipv4/netfilter/iptable_mangle.ko
 #lib/modules/KVER-ipfire/kernel/net/ipv4/netfilter/iptable_nat.ko
 #lib/modules/KVER-ipfire/kernel/net/ipv4/netfilter/iptable_raw.ko
 #lib/modules/KVER-ipfire/kernel/net/ipv4/netfilter/nf_conntrack_ipv4.ko
+#lib/modules/KVER-ipfire/kernel/net/ipv4/netfilter/nf_defrag_ipv4.ko
 #lib/modules/KVER-ipfire/kernel/net/ipv4/netfilter/nf_nat.ko
 #lib/modules/KVER-ipfire/kernel/net/ipv4/netfilter/nf_nat_amanda.ko
 #lib/modules/KVER-ipfire/kernel/net/ipv4/netfilter/nf_nat_ftp.ko
@@ -1470,6 +1933,7 @@ lib/modules/KVER-ipfire
 #lib/modules/KVER-ipfire/kernel/net/netfilter/nf_conntrack_sane.ko
 #lib/modules/KVER-ipfire/kernel/net/netfilter/nf_conntrack_sip.ko
 #lib/modules/KVER-ipfire/kernel/net/netfilter/nf_conntrack_tftp.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/nf_tproxy_core.ko
 #lib/modules/KVER-ipfire/kernel/net/netfilter/nfnetlink.ko
 #lib/modules/KVER-ipfire/kernel/net/netfilter/nfnetlink_log.ko
 #lib/modules/KVER-ipfire/kernel/net/netfilter/nfnetlink_queue.ko
@@ -1477,7 +1941,9 @@ lib/modules/KVER-ipfire
 #lib/modules/KVER-ipfire/kernel/net/netfilter/xt_CLASSIFY.ko
 #lib/modules/KVER-ipfire/kernel/net/netfilter/xt_CONNMARK.ko
 #lib/modules/KVER-ipfire/kernel/net/netfilter/xt_DSCP.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_HL.ko
 #lib/modules/KVER-ipfire/kernel/net/netfilter/xt_IMQ.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_LED.ko
 #lib/modules/KVER-ipfire/kernel/net/netfilter/xt_MARK.ko
 #lib/modules/KVER-ipfire/kernel/net/netfilter/xt_NFLOG.ko
 #lib/modules/KVER-ipfire/kernel/net/netfilter/xt_NFQUEUE.ko
@@ -1485,7 +1951,9 @@ lib/modules/KVER-ipfire
 #lib/modules/KVER-ipfire/kernel/net/netfilter/xt_RATEEST.ko
 #lib/modules/KVER-ipfire/kernel/net/netfilter/xt_TCPMSS.ko
 #lib/modules/KVER-ipfire/kernel/net/netfilter/xt_TCPOPTSTRIP.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_TPROXY.ko
 #lib/modules/KVER-ipfire/kernel/net/netfilter/xt_TRACE.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_cluster.ko
 #lib/modules/KVER-ipfire/kernel/net/netfilter/xt_comment.ko
 #lib/modules/KVER-ipfire/kernel/net/netfilter/xt_connbytes.ko
 #lib/modules/KVER-ipfire/kernel/net/netfilter/xt_connlimit.ko
@@ -1496,6 +1964,7 @@ lib/modules/KVER-ipfire
 #lib/modules/KVER-ipfire/kernel/net/netfilter/xt_esp.ko
 #lib/modules/KVER-ipfire/kernel/net/netfilter/xt_hashlimit.ko
 #lib/modules/KVER-ipfire/kernel/net/netfilter/xt_helper.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_hl.ko
 #lib/modules/KVER-ipfire/kernel/net/netfilter/xt_iprange.ko
 #lib/modules/KVER-ipfire/kernel/net/netfilter/xt_layer7.ko
 #lib/modules/KVER-ipfire/kernel/net/netfilter/xt_length.ko
@@ -1503,6 +1972,7 @@ lib/modules/KVER-ipfire
 #lib/modules/KVER-ipfire/kernel/net/netfilter/xt_mac.ko
 #lib/modules/KVER-ipfire/kernel/net/netfilter/xt_mark.ko
 #lib/modules/KVER-ipfire/kernel/net/netfilter/xt_multiport.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_osf.ko
 #lib/modules/KVER-ipfire/kernel/net/netfilter/xt_owner.ko
 #lib/modules/KVER-ipfire/kernel/net/netfilter/xt_physdev.ko
 #lib/modules/KVER-ipfire/kernel/net/netfilter/xt_pkttype.ko
@@ -1510,7 +1980,9 @@ lib/modules/KVER-ipfire
 #lib/modules/KVER-ipfire/kernel/net/netfilter/xt_quota.ko
 #lib/modules/KVER-ipfire/kernel/net/netfilter/xt_rateest.ko
 #lib/modules/KVER-ipfire/kernel/net/netfilter/xt_realm.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_recent.ko
 #lib/modules/KVER-ipfire/kernel/net/netfilter/xt_sctp.ko
+#lib/modules/KVER-ipfire/kernel/net/netfilter/xt_socket.ko
 #lib/modules/KVER-ipfire/kernel/net/netfilter/xt_state.ko
 #lib/modules/KVER-ipfire/kernel/net/netfilter/xt_statistic.ko
 #lib/modules/KVER-ipfire/kernel/net/netfilter/xt_string.ko
@@ -1518,8 +1990,13 @@ lib/modules/KVER-ipfire
 #lib/modules/KVER-ipfire/kernel/net/netfilter/xt_tcpudp.ko
 #lib/modules/KVER-ipfire/kernel/net/netfilter/xt_time.ko
 #lib/modules/KVER-ipfire/kernel/net/netfilter/xt_u32.ko
+#lib/modules/KVER-ipfire/kernel/net/phonet
+#lib/modules/KVER-ipfire/kernel/net/phonet/phonet.ko
+#lib/modules/KVER-ipfire/kernel/net/phonet/pn_pep.ko
+#lib/modules/KVER-ipfire/kernel/net/rds
+#lib/modules/KVER-ipfire/kernel/net/rds/rds.ko
+#lib/modules/KVER-ipfire/kernel/net/rds/rds_tcp.ko
 #lib/modules/KVER-ipfire/kernel/net/rfkill
-#lib/modules/KVER-ipfire/kernel/net/rfkill/rfkill-input.ko
 #lib/modules/KVER-ipfire/kernel/net/rfkill/rfkill.ko
 #lib/modules/KVER-ipfire/kernel/net/rxrpc
 #lib/modules/KVER-ipfire/kernel/net/rxrpc/af-rxrpc.ko
@@ -1531,6 +2008,7 @@ lib/modules/KVER-ipfire
 #lib/modules/KVER-ipfire/kernel/net/sched/act_nat.ko
 #lib/modules/KVER-ipfire/kernel/net/sched/act_pedit.ko
 #lib/modules/KVER-ipfire/kernel/net/sched/act_police.ko
+#lib/modules/KVER-ipfire/kernel/net/sched/act_skbedit.ko
 #lib/modules/KVER-ipfire/kernel/net/sched/cls_basic.ko
 #lib/modules/KVER-ipfire/kernel/net/sched/cls_flow.ko
 #lib/modules/KVER-ipfire/kernel/net/sched/cls_fw.ko
@@ -1545,11 +2023,13 @@ lib/modules/KVER-ipfire
 #lib/modules/KVER-ipfire/kernel/net/sched/em_u32.ko
 #lib/modules/KVER-ipfire/kernel/net/sched/sch_atm.ko
 #lib/modules/KVER-ipfire/kernel/net/sched/sch_cbq.ko
+#lib/modules/KVER-ipfire/kernel/net/sched/sch_drr.ko
 #lib/modules/KVER-ipfire/kernel/net/sched/sch_dsmark.ko
 #lib/modules/KVER-ipfire/kernel/net/sched/sch_gred.ko
 #lib/modules/KVER-ipfire/kernel/net/sched/sch_hfsc.ko
 #lib/modules/KVER-ipfire/kernel/net/sched/sch_htb.ko
 #lib/modules/KVER-ipfire/kernel/net/sched/sch_ingress.ko
+#lib/modules/KVER-ipfire/kernel/net/sched/sch_multiq.ko
 #lib/modules/KVER-ipfire/kernel/net/sched/sch_netem.ko
 #lib/modules/KVER-ipfire/kernel/net/sched/sch_prio.ko
 #lib/modules/KVER-ipfire/kernel/net/sched/sch_red.ko
@@ -1561,8 +2041,14 @@ lib/modules/KVER-ipfire
 #lib/modules/KVER-ipfire/kernel/net/sunrpc/auth_gss/auth_rpcgss.ko
 #lib/modules/KVER-ipfire/kernel/net/sunrpc/auth_gss/rpcsec_gss_krb5.ko
 #lib/modules/KVER-ipfire/kernel/net/sunrpc/sunrpc.ko
+#lib/modules/KVER-ipfire/kernel/net/wimax
+#lib/modules/KVER-ipfire/kernel/net/wimax/wimax.ko
 #lib/modules/KVER-ipfire/kernel/net/wireless
 #lib/modules/KVER-ipfire/kernel/net/wireless/cfg80211.ko
+#lib/modules/KVER-ipfire/kernel/net/wireless/lib80211.ko
+#lib/modules/KVER-ipfire/kernel/net/wireless/lib80211_crypt_ccmp.ko
+#lib/modules/KVER-ipfire/kernel/net/wireless/lib80211_crypt_tkip.ko
+#lib/modules/KVER-ipfire/kernel/net/wireless/lib80211_crypt_wep.ko
 #lib/modules/KVER-ipfire/kernel/net/xfrm
 #lib/modules/KVER-ipfire/kernel/net/xfrm/xfrm_ipcomp.ko
 #lib/modules/KVER-ipfire/kernel/net/xfrm/xfrm_user.ko
index c0e8a6890374eaf3ec98228d6863357db4cac767..39441d1e60b7b31655af008af7b7ad9997c72d5a 100644 (file)
@@ -1,12 +1,62 @@
+#lib/firmware/3com
+lib/firmware/3com/3C359.bin
+lib/firmware/3com/typhoon.bin
+#lib/firmware/acenic
+lib/firmware/acenic/tg1.bin
+lib/firmware/acenic/tg2.bin
+#lib/firmware/adaptec
+lib/firmware/adaptec/starfire_rx.bin
+lib/firmware/adaptec/starfire_tx.bin
+#lib/firmware/advansys
+lib/firmware/advansys/3550.bin
+lib/firmware/advansys/38C0800.bin
+lib/firmware/advansys/38C1600.bin
+lib/firmware/advansys/mcode.bin
 lib/firmware/atmsar11.fw
-#lib/firmware/cpia2
+#lib/firmware/av7110
 lib/firmware/av7110/bootcode.bin
+#lib/firmware/bnx2
+lib/firmware/bnx2/bnx2-mips-06-5.0.0.j3.fw
+lib/firmware/bnx2/bnx2-mips-09-5.0.0.j3.fw
+lib/firmware/bnx2/bnx2-rv2p-06-5.0.0.j3.fw
+lib/firmware/bnx2/bnx2-rv2p-09-5.0.0.j3.fw
+lib/firmware/bnx2/bnx2-rv2p-09ax-5.0.0.j3.fw
+lib/firmware/bnx2x-e1-5.0.21.0.fw
+lib/firmware/bnx2x-e1h-5.0.21.0.fw
+#lib/firmware/cis
+lib/firmware/cis/3CCFEM556.cis
+lib/firmware/cis/3CXEM556.cis
+lib/firmware/cis/COMpad2.cis
+lib/firmware/cis/COMpad4.cis
+lib/firmware/cis/DP83903.cis
+lib/firmware/cis/LA-PCM.cis
+lib/firmware/cis/MT5634ZLX.cis
+lib/firmware/cis/NE2K.cis
+lib/firmware/cis/PCMLM28.cis
+lib/firmware/cis/PE-200.cis
+lib/firmware/cis/RS-COM-2P.cis
+lib/firmware/cis/SW_555_SER.cis
+lib/firmware/cis/SW_7xx_SER.cis
+lib/firmware/cis/SW_8xx_SER.cis
+lib/firmware/cis/tamarack.cis
+#lib/firmware/cpia2
 lib/firmware/cpia2/stv0672_vp4.bin
+#lib/firmware/cxgb3
+lib/firmware/cxgb3/ael2005_opt_edc.bin
+lib/firmware/cxgb3/ael2005_twx_edc.bin
+lib/firmware/cxgb3/ael2020_twx_edc.bin
+lib/firmware/cxgb3/t3b_psram-1.1.0.bin
+lib/firmware/cxgb3/t3c_psram-1.1.0.bin
+lib/firmware/cxgb3/t3fw-7.4.0.bin
 #lib/firmware/dabusb
 lib/firmware/dabusb/bitstream.bin
 lib/firmware/dabusb/firmware.fw
 #lib/firmware/dsp56k
 lib/firmware/dsp56k/bootstrap.bin
+#lib/firmware/e100
+lib/firmware/e100/d101m_ucode.bin
+lib/firmware/e100/d101s_ucode.bin
+lib/firmware/e100/d102e_ucode.bin
 #lib/firmware/edgeport
 lib/firmware/edgeport/boot.fw
 lib/firmware/edgeport/boot2.fw
@@ -49,23 +99,79 @@ lib/firmware/keyspan_pda/keyspan_pda.fw
 lib/firmware/keyspan_pda/xircom_pgs.fw
 #lib/firmware/korg
 lib/firmware/korg/k1212.dsp
+#lib/firmware/matrox
+lib/firmware/matrox/g200_warp.fw
+lib/firmware/matrox/g400_warp.fw
+lib/firmware/mts_cdma.fw
+lib/firmware/mts_edge.fw
+lib/firmware/mts_gsm.fw
+#lib/firmware/myricom
+lib/firmware/myricom/lanai.bin
+#lib/firmware/ositech
+lib/firmware/ositech/Xilinx7OD.bin
+#lib/firmware/qlogic
+lib/firmware/qlogic/1040.bin
+lib/firmware/qlogic/12160.bin
+lib/firmware/qlogic/1280.bin
+lib/firmware/qlogic/isp1000.bin
+#lib/firmware/r128
+lib/firmware/r128/r128_cce.bin
+#lib/firmware/radeon
+lib/firmware/radeon/R100_cp.bin
+lib/firmware/radeon/R200_cp.bin
+lib/firmware/radeon/R300_cp.bin
+lib/firmware/radeon/R420_cp.bin
+lib/firmware/radeon/R520_cp.bin
+lib/firmware/radeon/R600_me.bin
+lib/firmware/radeon/R600_pfp.bin
+lib/firmware/radeon/RS600_cp.bin
+lib/firmware/radeon/RS690_cp.bin
+lib/firmware/radeon/RS780_me.bin
+lib/firmware/radeon/RS780_pfp.bin
+lib/firmware/radeon/RV610_me.bin
+lib/firmware/radeon/RV610_pfp.bin
+lib/firmware/radeon/RV620_me.bin
+lib/firmware/radeon/RV620_pfp.bin
+lib/firmware/radeon/RV630_me.bin
+lib/firmware/radeon/RV630_pfp.bin
+lib/firmware/radeon/RV635_me.bin
+lib/firmware/radeon/RV635_pfp.bin
+lib/firmware/radeon/RV670_me.bin
+lib/firmware/radeon/RV670_pfp.bin
+lib/firmware/radeon/RV710_me.bin
+lib/firmware/radeon/RV710_pfp.bin
+lib/firmware/radeon/RV730_me.bin
+lib/firmware/radeon/RV730_pfp.bin
+lib/firmware/radeon/RV770_me.bin
+lib/firmware/radeon/RV770_pfp.bin
 #lib/firmware/sb16
 lib/firmware/sb16/alaw_main.csp
 lib/firmware/sb16/ima_adpcm_capture.csp
 lib/firmware/sb16/ima_adpcm_init.csp
 lib/firmware/sb16/ima_adpcm_playback.csp
 lib/firmware/sb16/mulaw_main.csp
+#lib/firmware/sun
+lib/firmware/sun/cassini.bin
+#lib/firmware/tehuti
+lib/firmware/tehuti/bdx.bin
 lib/firmware/ti_3410.fw
 lib/firmware/ti_5052.fw
+#lib/firmware/tigon
+lib/firmware/tigon/tg3.bin
+lib/firmware/tigon/tg3_tso.bin
+lib/firmware/tigon/tg3_tso5.bin
 lib/firmware/tr_smctr.bin
 #lib/firmware/ttusb-budget
 lib/firmware/ttusb-budget/dspbootcode.bin
-lib/firmware/av7110/bootcode.bin
 #lib/firmware/vicam
 lib/firmware/vicam/firmware.fw
 lib/firmware/whiteheat.fw
 lib/firmware/whiteheat_loader.fw
+#lib/firmware/yam
+lib/firmware/yam/1200.bin
+lib/firmware/yam/9600.bin
 #lib/firmware/yamaha
 lib/firmware/yamaha/ds1_ctrl.fw
 lib/firmware/yamaha/ds1_dsp.fw
 lib/firmware/yamaha/ds1e_ctrl.fw
+lib/firmware/yamaha/yss225_registers.bin
index 378792a4114601d02d8a93e318b8167482b8f89d..48837884b705dec131ca188f6ce28020be2b37f1 100644 (file)
@@ -44,14 +44,11 @@ usr/lib/ipsec
 #usr/lib/ipsec/_realsetup
 #usr/lib/ipsec/_secretcensor
 #usr/lib/ipsec/_startklips
-#usr/lib/ipsec/_startklips.old
 #usr/lib/ipsec/_startnetkey
 #usr/lib/ipsec/_updown
 #usr/lib/ipsec/_updown.klips
-#usr/lib/ipsec/_updown.klips.old
 #usr/lib/ipsec/_updown.klips~
 #usr/lib/ipsec/_updown.mast
-#usr/lib/ipsec/_updown.mast.old
 #usr/lib/ipsec/_updown.netkey
 usr/libexec/ipsec
 #usr/libexec/ipsec/_pluto_adns
@@ -185,6 +182,7 @@ usr/sbin/ipsec
 #usr/share/doc/openswan/index.html
 #usr/share/doc/openswan/ipsec.8.html
 #usr/share/doc/openswan/ipsec.conf-sample
+#usr/share/doc/openswan/ipsec.conf.5.html
 #usr/share/doc/openswan/ipsec.secrets.5.html
 #usr/share/doc/openswan/ipsec__confread.8.html
 #usr/share/doc/openswan/ipsec__copyright.8.html
diff --git a/config/rootfiles/core/36/exclude b/config/rootfiles/core/36/exclude
deleted file mode 100644 (file)
index e69de29..0000000
diff --git a/config/rootfiles/oldcore/35/exclude b/config/rootfiles/oldcore/35/exclude
new file mode 100644 (file)
index 0000000..c58d738
--- /dev/null
@@ -0,0 +1,2 @@
+etc/ipsec.conf
+etc/ipsec.secrets
diff --git a/config/rootfiles/oldcore/35/filelists/openswan b/config/rootfiles/oldcore/35/filelists/openswan
new file mode 120000 (symlink)
index 0000000..2b72682
--- /dev/null
@@ -0,0 +1 @@
+../../../common/openswan
\ No newline at end of file
diff --git a/config/rootfiles/oldcore/35/filelists/openswan-modules b/config/rootfiles/oldcore/35/filelists/openswan-modules
new file mode 100644 (file)
index 0000000..afee737
--- /dev/null
@@ -0,0 +1,2 @@
+lib/modules/2.6.27.42-ipfire-xen/kernel/net/ipsec/ipsec.ko
+lib/modules/2.6.27.42-ipfire/kernel/net/ipsec/ipsec.ko
index 4f40b71db48b12b32eb3601ed4e9a969b2d65dd1..896a8a1435896919fdca7bbc77c0b57ca3d9b4f6 100644 (file)
@@ -65,6 +65,7 @@ usr/lib/perl5/site_perl/5.8.8/Dahdi/Xpp/Xbus.pm
 usr/lib/perl5/site_perl/5.8.8/Dahdi/Xpp/Xpd.pm
 usr/sbin/astribank_allow
 usr/sbin/astribank_hexload
+usr/sbin/astribank_is_starting
 usr/sbin/astribank_tool
 usr/sbin/dahdi_cfg
 usr/sbin/dahdi_genconf
@@ -79,6 +80,7 @@ usr/sbin/fpga_load
 usr/sbin/fxotune
 usr/sbin/lsdahdi
 usr/sbin/sethdlc
+usr/sbin/twinstar
 usr/sbin/xpp_blink
 usr/sbin/xpp_sync
 #usr/share/dahdi
@@ -101,6 +103,7 @@ usr/share/dahdi/waitfor_xpds
 usr/share/dahdi/xpp_fxloader
 #usr/share/man/man8/astribank_allow.8
 #usr/share/man/man8/astribank_hexload.8
+#usr/share/man/man8/astribank_is_starting.8
 #usr/share/man/man8/astribank_tool.8
 #usr/share/man/man8/dahdi_cfg.8
 #usr/share/man/man8/dahdi_genconf.8
@@ -113,6 +116,7 @@ usr/share/dahdi/xpp_fxloader
 #usr/share/man/man8/fpga_load.8
 #usr/share/man/man8/fxotune.8
 #usr/share/man/man8/lsdahdi.8
+#usr/share/man/man8/twinstar.8
 #usr/share/man/man8/xpp_blink.8
 #usr/share/man/man8/xpp_sync.8
 #var/ipfire/asterisk
index 959af047a054ab489bd1fcce4e2d70736792b6f8..6b878a8cfe3f56cf043b1ab599372fd949318fed 100644 (file)
@@ -1,4 +1,4 @@
-== List of softwares used to build IPFire Version: 2.5 ==
+== List of softwares used to build IPFire Version: 2.6 ==
 * Archive-Tar-1.29
 * Archive-Zip-1.16
 * BerkeleyDB-0.27
 * Unix-Syslog-0.100
 * XML-Parser-2.34
 * alsa-lib-1.0.22
-* alsa-lib-1.0.22-kmod-2.6.27.45-ipfire
+* alsa-lib-1.0.22-kmod-2.6.32.8-ipfire
 * amavisd-new-2.5.2
 * apcupsd-3.14.4
 * applejuice-0.31
 * arping-2.05
 * as86-0.16.17
 * asterisk-1.4.28
-* atl1c-kmod-2.6.27.45-ipfire
-* atl1c-kmod-2.6.27.45-ipfire-xen
-* atl2-2.0.5-kmod-2.6.27.45-ipfire
-* atl2-2.0.5-kmod-2.6.27.45-ipfire-xen
 * autoconf-2.59
 * automake-1.9.6
 * backup-ipfire
@@ -71,8 +67,6 @@
 * clamav-0.95.3
 * cmake-2.4.8
 * collectd-4.5.3
-* compat-wireless-2.6.32.3-kmod-2.6.27.45-ipfire
-* compat-wireless-2.6.32.3-kmod-2.6.27.45-ipfire-xen
 * coreutils-5.96
 * cpio-2.6
 * cpufrequtils-007
@@ -80,9 +74,8 @@
 * curl-7.19.5
 * cyrus-imapd-2.2.12
 * cyrus-sasl-2.1.21
-* dahdi-2.2.0.2
-* dahdi-2.2.0.2-kmod-2.6.27.45-ipfire
-* dahdi-2.2.0.2-kmod-2.6.27.45-ipfire-xen
+* dahdi-2.2.1
+* dahdi-2.2.1-kmod-2.6.32.8-ipfire
 * db-4.4.20
 * dbus-1.0.3
 * dhcp-3.1.0
 * diffutils-2.8.1
 * dnsmasq-2.45
 * dosfstools-2.11
-* e1000e-1.0.2.5-kmod-2.6.27.45-ipfire
-* e1000e-1.0.2.5-kmod-2.6.27.45-ipfire-xen
 * e2fsprogs-1.39
 * ebtables-v2.0.8-2
 * ed-0.2
 * elinks-0.11.6
 * esniper-2-19-0
 * espgs-8.15.1
-* et131x-kmod-2.6.27.45-ipfire
-* et131x-kmod-2.6.27.45-ipfire-xen
 * etherwake-1.09
 * ethtool-3
 * expat-2.0.0
 * hdparm-8.9
 * hostapd-0.6.9
 * hplip-2.7.10
-* hso-1.9-kmod-2.6.27.45-ipfire
-* hso-1.9-kmod-2.6.27.45-ipfire-xen
 * htop-0.8.1
 * httpd-2.2.11
 * hwdata
 * iperf-2.0.4
 * ipfireseeder-1.00
 * iproute2-2.6.16-060323
-* iptables-1.4.2
+* iptables-1.4.6
 * iptstate-2.1
 * iputils-ss020927
 * iw-0.9.15
 * jpegsrc.v6b
 * kbd-1.12
 * klibc-1.5.14
-* kqemu-1.4.0pre1-kmod-2.6.27.45-ipfire
-* kqemu-1.4.0pre1-kmod-2.6.27.45-ipfire-xen
+* kqemu-1.4.0pre1-kmod-2.6.32.8-ipfire
 * kudzu-1.2.64
-* kvm-kmod-2.6.31.5-kmod-2.6.27.45-ipfire
 * l7-protocols-2009-05-10
 * lame-3.97
 * lcd4linux-0.10.1-RC2
 * libwww-perl-5.803
 * libxml2-2.6.26
 * libxslt-1.1.17
-* linux-2.6.27.45-ipfire
-* linux-2.6.27.45-ipfire-xen
+* linux-2.6.32.8-ipfire
 * linux-atm-2.4.1
 * linux-libc-headers-2.6.12.0
 * lm_sensors-3.1.2
 * lynis-1.2.6
 * lzo-2.02
 * m4-1.4.4
-* mISDN_20090906-kmod-2.6.27.45-ipfire
-* mISDN_20090906-kmod-2.6.27.45-ipfire-xen
 * mISDNuser_20090906
-* madwifi-hal-0.10.5.6-r4119-20100201-kmod-2.6.27.45-ipfire
-* madwifi-hal-0.10.5.6-r4119-20100201-kmod-2.6.27.45-ipfire-xen
+* madwifi-hal-0.10.5.6-r4119-20100201-kmod-2.6.32.8-ipfire
 * make-3.81
 * man-db-2.4.3
 * man-pages-2.34
 * openmailadmin-1.0.0
 * openssh-5.3p1
 * openssl-0.9.8l
-* openswan-2.6.23
-* openswan-2.6.23-kmod-2.6.27.45-ipfire
-* openswan-2.6.23-kmod-2.6.27.45-ipfire-xen
+* openswan-2.6.24
+* openswan-2.6.24-kmod-2.6.32.8-ipfire
 * openvpn-2.1_rc20
 * p7zip_4.65
 * pam_mysql-0.7RC1
 * procps-3.2.6
 * psmisc-22.2
 * qemu-0.12.2
-* r8101-kmod-2.6.27.45-ipfire
-* r8101-kmod-2.6.27.45-ipfire-xen
-* r8168-8.014.00-kmod-2.6.27.45-ipfire
-* r8168-8.014.00-kmod-2.6.27.45-ipfire-xen
-* r8169-6.011.00-kmod-2.6.27.45-ipfire
-* r8169-6.011.00-kmod-2.6.27.45-ipfire-xen
 * readline-5.1
 * reiser4progs-1.0.5
 * reiserfsprogs-3.6.19
 * usb_modeswitch-1.0.6
 * usbutils-0.72
 * util-linux-2.12r
-* v4l-dvb-690055993011-kmod-2.6.27.45-ipfire
-* v4l-dvb-690055993011-kmod-2.6.27.45-ipfire-xen
+* v4l-dvb-9defbd461e5f-kmod-2.6.32.8-ipfire
 * vdr-1.6.0
 * vdradmin-am-3.6.5
 * vim-7.0
index c7a65b061c15406579c4484de277e7f4fc937a82..e4062843c3f8a5838a631b35f81dc06a8ab4b894 100644 (file)
--- a/lfs/dahdi
+++ b/lfs/dahdi
@@ -30,10 +30,10 @@ else
        VERSUFIX=ipfire
 endif
 
-VER        = 2.2.0.2
-TVER       = 2.2.0
+VER        = 2.2.1
+TVER       = 2.2.1
 
-DL_FILE    = dahdi-linux-$(VER)-with-vpmadt032-1.17.0.tar.gz
+DL_FILE    = dahdi-linux-$(VER).tar.gz
 DL_FILE1   = dahdi-tools-$(TVER).tar.gz
 
 THISAPP    = dahdi-$(VER)
@@ -58,16 +58,16 @@ endif
 # Top-level Rules
 ###############################################################################
 
-objects = $(DL_FILE) $(DL_FILE1) dahdi-linux-2.2.0.2-firmware.tar.bz2
+objects = $(DL_FILE) $(DL_FILE1) dahdi-linux-2.2.1-firmware.tar.bz2
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 $(DL_FILE1) = $(DL_FROM)/$(DL_FILE1)
-dahdi-linux-2.2.0.2-firmware.tar.bz2 = $(DL_FROM)/dahdi-linux-2.2.0.2-firmware.tar.bz2
+dahdi-linux-2.2.1-firmware.tar.bz2 = $(DL_FROM)/dahdi-linux-2.2.1-firmware.tar.bz2
+
+$(DL_FILE)_MD5 = 46e4abbe743830045364fc716d293e88
+$(DL_FILE1)_MD5 = 04e7097929851f744f777400125180db
+dahdi-linux-2.2.1-firmware.tar.bz2_MD5 = ccc50ded1641cd619e8d3a4615a6ad19
 
-$(DL_FILE)_MD5 = 5cbabd47cf780305e2cba6ccec42c754
-$(DL_FILE1)_MD5 = a018f452f3851a312ff51705ac44de37
-dahdi-linux-2.2.0.2-firmware.tar.bz2_MD5 = 7d7c774d214a528b49c9a08b5350a652
 
 install : $(TARGET)
 
@@ -100,15 +100,14 @@ $(subst %,%_MD5,$(objects)) :
 $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
        @$(PREBUILD)
 
-ifeq "$(KMOD)" "1"
        rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE)
+       cd $(DIR_SRC) && tar jxf $(DIR_DL)/dahdi-linux-2.2.1-firmware.tar.bz2
        cd $(DIR_APP) && make $(MAKETUNING) clean all KVERS=$(KVER)
+
+ifeq "$(KMOD)" "1"
        cd $(DIR_APP) && make install-modules KVERS=$(KVER)-$(VERSUFIX)
        @rm -rf $(DIR_APP)
 else
-       rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE)
-       cd $(DIR_SRC) && tar jxf $(DIR_DL)/dahdi-linux-2.2.0.2-firmware.tar.bz2
-       cd $(DIR_APP) && make $(MAKETUNING) clean all KVERS=$(KVER)
        cd $(DIR_APP) && make install-devices install-include \
                install-firmware install-xpp-firm KVERS=$(KVER)-$(VERSUFIX)
        @rm -rf $(DIR_APP)
index 24835003e8004d48d9f0a8f014bb2354452368cd..ad8b135a638a8740079bc6685c9da0d706f063bc 100644 (file)
@@ -70,9 +70,9 @@ $(TARGET) :
                /install/initrd/lib/modules/$(KVER)-ipfire/dahdi
 
        # ... acpi/dock.ko is needed for libata
-       -mkdir -p /install/initrd/lib/modules/$(KVER)-ipfire/kernel/drivers/acpi
-       cp -a /lib/modules/$(KVER)-ipfire/kernel/drivers/acpi/dock.ko \
-               /install/initrd/lib/modules/$(KVER)-ipfire/kernel/drivers/acpi/dock.ko
+#      -mkdir -p /install/initrd/lib/modules/$(KVER)-ipfire/kernel/drivers/acpi
+#      cp -a /lib/modules/$(KVER)-ipfire/kernel/drivers/acpi/dock.ko \
+#              /install/initrd/lib/modules/$(KVER)-ipfire/kernel/drivers/acpi/dock.ko
 
        cp /opt/$(MACHINE)-uClibc/lib/libgcc_s.so.1 /install/initrd/lib/
 
index 99afe2bfc8754dc3836fc4e8484bf73ea59ad754..247ec1eb26bb2b083632ebb075ded77f83761143 100644 (file)
@@ -24,7 +24,7 @@
 
 include Config
 
-VER        = 1.4.2
+VER        = 1.4.6
 
 THISAPP    = iptables-$(VER)
 DL_FILE    = $(THISAPP).tar.bz2
@@ -36,17 +36,17 @@ TARGET     = $(DIR_INFO)/$(THISAPP)
 # Top-level Rules
 ###############################################################################
 objects =      $(DL_FILE) \
-                       netfilter-layer7-v2.21.tar.gz \
+                       netfilter-layer7-v2.22.tar.gz \
                        libnfnetlink-0.0.41.tar.bz2 \
                        libnetfilter_queue-0.0.17.tar.bz2
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-netfilter-layer7-v2.21.tar.gz          = $(URL_IPFIRE)/netfilter-layer7-v2.21.tar.gz
+netfilter-layer7-v2.22.tar.gz          = $(URL_IPFIRE)/netfilter-layer7-v2.22.tar.gz
 libnfnetlink-0.0.41.tar.bz2            = $(URL_IPFIRE)/libnfnetlink-0.0.41.tar.bz2
 libnetfilter_queue-0.0.17.tar.bz2      = $(URL_IPFIRE)/libnetfilter_queue-0.0.17.tar.bz2
 
-$(DL_FILE)_MD5 = a138d1c2e74321e0e4e228a9fb301c9a
-netfilter-layer7-v2.21.tar.gz_MD5 = 838422e7d9a06b42e682e9064e5210b5
+$(DL_FILE)_MD5 = c67cf30e281a924def6426be0973df56
+netfilter-layer7-v2.22.tar.gz_MD5 = 98dff8a3d5a31885b73341633f69501f
 libnfnetlink-0.0.41.tar.bz2_MD5 = 5d844ea1f557bad0364d5b85cd10c796
 libnetfilter_queue-0.0.17.tar.bz2_MD5 = 2cde35e678ead3a8f9eb896bf807a159
 
@@ -80,18 +80,21 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
        @rm -rf $(DIR_APP) $(DIR_SRC)/libnfnetlink-0.0.41 $(DIR_SRC)/netfilter-layer7* $(DIR_SRC)/libnetfilter_queue-0.0.17
 
        @cd $(DIR_SRC) && tar jxf $(DIR_DL)/$(DL_FILE)
-       cd $(DIR_SRC) && tar zxf $(DIR_DL)/netfilter-layer7-v2.21.tar.gz
-       cd $(DIR_APP) && cp -vf $(DIR_SRC)/netfilter-layer7-v2.21/iptables-1.4.1.1-for-kernel-2.6.20forward/* \
+       -cd /usr/include && patch -Np1 < $(DIR_SRC)/src/patches/iptables-1.4.6-errorno_includes.patch
+       cp -rf /usr/src/linux/include/linux/netfilter /usr/include/linux
+
+       # Layer7
+       cd $(DIR_SRC) && tar zxf $(DIR_DL)/netfilter-layer7-v2.22.tar.gz
+       cd $(DIR_APP) && cp -vf $(DIR_SRC)/netfilter-layer7-v2.22/iptables-1.4.3forward-for-kernel-2.6.20forward/* \
                         ./extensions/
 
        # ipp2p 0.8.2-pomng
-       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/iptables-1.4.1.1-ipp2p-0.8.2-pomng.patch
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/iptables-1.4.6-ipp2p-0.8.2-pomng.patch
 
-       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/iptables-1.4.2-imq.patch
+       # imq
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/iptables-1.4.6-imq_test1.patch
        chmod +x $(DIR_APP)/extensions/.IMQ-test*
 
-       # hack to disable IPv6 compilation as the configuration variable does not work when ip6.h is present
-       # cd $(DIR_APP) && sed -i -e 's/DO_IPV6:=1/DO_IPV6:=0/' Makefile
        cd $(DIR_APP) && ./configure  --prefix=/usr --with-ksource=/usr/src/linux \
                                    --libdir=/lib --includedir=/usr/include --enable-libipq \
                                    --libexecdir=/lib --bindir=/sbin \
@@ -99,13 +102,6 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
        cd $(DIR_APP) && make $(MAKETUNING)
        cd $(DIR_APP) && make install
 
-       cd $(DIR_APP) && cp -fva include/* /usr/include
-       -mkdir /usr/include/libiptc
-       cd $(DIR_APP) && cp -vf include/libiptc/{libiptc.h,ipt_kernel_headers.h} \
-               /usr/include/libiptc
-       cd $(DIR_APP) && cp -vf libiptc/{*.o,*.a} \
-               /lib
-
        cd $(DIR_SRC) && tar xfj $(DIR_DL)/libnfnetlink-0.0.41.tar.bz2
        cd $(DIR_SRC)/libnfnetlink-0.0.41 && ./configure --prefix=/usr
        cd $(DIR_SRC)/libnfnetlink-0.0.41 && make $(MAKETUNING) $(EXTRA_MAKE)
@@ -115,5 +111,6 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
        cd $(DIR_SRC)/libnetfilter_queue-0.0.17 && ./configure --prefix=/usr
        cd $(DIR_SRC)/libnetfilter_queue-0.0.17 && make $(MAKETUNING) $(EXTRA_MAKE)
        cd $(DIR_SRC)/libnetfilter_queue-0.0.17 && make install
+
        @rm -rf $(DIR_APP) $(DIR_SRC)/libnfnetlink-0.0.41 $(DIR_SRC)/netfilter-layer7* $(DIR_SRC)/libnetfilter_queue-0.0.17
        @$(POSTBUILD)
index 0ff12f3ee05145127fa151a1742af826a9f89e52..1ab1215f7f6d540e6148c21acbe61ffb95386332 100644 (file)
--- a/lfs/klibc
+++ b/lfs/klibc
@@ -37,13 +37,16 @@ TARGET     = $(DIR_INFO)/$(THISAPP)
 ###############################################################################
 
 objects = $(DL_FILE) \
-               klibc-extras-2.2.tar.gz
+               klibc-extras-2.2.tar.gz \
+               klibc-1.5.14-linux2.6.27-includes.tar.bz2
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 klibc-extras-2.2.tar.gz = $(DL_FROM)/klibc-extras-2.2.tar.gz
+klibc-1.5.14-linux2.6.27-includes.tar.bz2 = $(DL_FROM)/klibc-1.5.14-linux2.6.27-includes.tar.bz2
 
 $(DL_FILE)_MD5 = 030d978a7f16800e8ccae12d6fb5e7ba
 klibc-extras-2.2.tar.gz_MD5 = 7e5042978531048c369f59ca1a13055b
+klibc-1.5.14-linux2.6.27-includes.tar.bz2_MD5 = 1f875129d35193e35d27ed2b61a80bb6
 
 install : $(TARGET)
 
@@ -74,14 +77,13 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
        @$(PREBUILD)
        @rm -rf $(DIR_APP) $(DIR_SRC)/klibc* && cd $(DIR_SRC) && tar jxf $(DIR_DL)/$(DL_FILE) && \
                tar zxf $(DIR_DL)/klibc-extras-2.2.tar.gz
-       cd $(DIR_APP) && ln -fs ../linux linux
+       cd $(DIR_SRC) && tar jxf $(DIR_DL)/klibc-1.5.14-linux2.6.27-includes.tar.bz2
+
        cd $(DIR_SRC)/klibc-extras && sed -i "s|^INSTALL = .*|INSTALL = /usr/bin/install -c -m 755|g" Makefile
        cd $(DIR_APP) && make $(MAKETUNING) $(EXTRA_MAKE)
        cd $(DIR_APP) && make install
        cd $(DIR_SRC)/klibc-extras && make $(MAKETUNING) $(EXTRA_MAKE)
        cd $(DIR_SRC)/klibc-extras && make install
        ln -sf sh.shared /usr/lib/klibc/bin/sh
-       #mv /lib/klibc-*.so /lib/klibc-pFXBYGYRiBAAryaZ7Zw_ISKpcTk.so
-       #mv /usr/lib/klibc/lib/klibc-*.so /usr/lib/klibc/lib/klibc-pFXBYGYRiBAAryaZ7Zw_ISKpcTk.so
        @rm -rf $(DIR_APP) $(DIR_SRC)/klibc*
        @$(POSTBUILD)
index 1a7cfedbb0c27ffa75a849322c5b80ce49a8ec70..4d3742dea9e8844ca66f87a397011eb4d3263970 100644 (file)
--- a/lfs/linux
+++ b/lfs/linux
@@ -24,8 +24,8 @@
 
 include Config
 
-PATCHLEVEL = .42
-VER        = 2.6.27.42
+PATCHLEVEL = .8
+VER        = 2.6.32.8
 
 THISAPP    = linux-$(VER)
 DL_FILE    = $(THISAPP).tar.bz2
@@ -35,42 +35,42 @@ CFLAGS     =
 CXXFLAGS   =
 
 PROG      = linux-xen
-PAK_VER    = 7
+PAK_VER    = 8
 DEPS      = ""
 
 # Normal build or XEN build.
 #
+
 ifeq "$(XEN)" "1"
        VERSUFIX=ipfire-xen
 else
        VERSUFIX=ipfire
 endif
+
 TARGET = $(DIR_INFO)/linux-$(VER)-$(VERSUFIX)
 
 ###############################################################################
 # Top-level Rules
 ###############################################################################
 objects =$(DL_FILE) \
-       squashfs3.4.tar.gz \
-       netfilter-layer7-v2.21.tar.gz \
+       netfilter-layer7-v2.22.tar.gz \
        patch-2.6.16-nath323-1.3.bz2 \
-       reiser4-for-2.6.27.19.patch.bz2 \
-       linux-$(VER)-suse_xen_patches-1.tar.bz2
+       reiser4-for-2.6.32.patch.bz2 \
+#      linux-$(VER)-suse_xen_patches-1.tar.bz2
 
 $(DL_FILE)                             = $(URL_IPFIRE)/$(DL_FILE)
-netfilter-layer7-v2.21.tar.gz          = $(URL_IPFIRE)/netfilter-layer7-v2.21.tar.gz
+netfilter-layer7-v2.22.tar.gz          = $(URL_IPFIRE)/netfilter-layer7-v2.21.tar.gz
 patch-2.6.16-nath323-1.3.bz2           = $(URL_IPFIRE)/patch-2.6.16-nath323-1.3.bz2
-squashfs3.4.tar.gz                     = $(URL_IPFIRE)/squashfs3.4.tar.gz
-reiser4-for-2.6.27.19.patch.bz2                = $(URL_IPFIRE)/reiser4-for-2.6.27.19.patch.bz2
-linux-$(VER)-suse_xen_patches-1.tar.bz2        = $(URL_IPFIRE)/linux-$(VER)-suse_xen_patches-1.tar.bz2
+reiser4-for-2.6.32.patch.bz2           = $(URL_IPFIRE)/reiser4-for-2.6.32.patch.bz2
+#linux-$(VER)-suse_xen_patches-1.tar.bz2       = $(URL_IPFIRE)/linux-$(VER)-suse_xen_patches-1.tar.bz2
+
 
+$(DL_FILE)_MD5                         = 82023ede52f067fcc55c5e70b02e48ae
 
-$(DL_FILE)_MD5                         = a33e6b22d70dd010525fc43cdda36792
-netfilter-layer7-v2.21.tar.gz_MD5      = 838422e7d9a06b42e682e9064e5210b5
+netfilter-layer7-v2.22.tar.gz_MD5      = 98dff8a3d5a31885b73341633f69501f
 patch-2.6.16-nath323-1.3.bz2_MD5       = f926409ff703a307baf54b57ab75d138
-squashfs3.4.tar.gz_MD5                 = 2a4d2995ad5aa6840c95a95ffa6b1da6
-reiser4-for-2.6.27.19.patch.bz2_MD5    = 22988387f64f299489b90b484b2642cc
-linux-$(VER)-suse_xen_patches-1.tar.bz2_MD5 = ddbde50f3bc303d947531402017a3055
+reiser4-for-2.6.32.patch.bz2_MD5       = 3246397973d9271eb8e6d7c97c5d2d91
+#linux-$(VER)-suse_xen_patches-1.tar.bz2_MD5 = ddbde50f3bc303d947531402017a3055
 
 install : $(TARGET)
 
@@ -102,6 +102,7 @@ $(subst %,%_MD5,$(objects)) :
 $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
        @$(PREBUILD)
        @rm -rf $(DIR_APP) $(DIR_SRC)/linux $(DIR_SRC)/linux-*-suse_xen_patches $(DIR_SRC)/xen-* && cd $(DIR_SRC) && tar jxf $(DIR_DL)/$(DL_FILE)
+
        ln -s linux-$(VER) /usr/src/linux
 
 ifeq "$(XEN)" "1"
@@ -120,45 +121,29 @@ ifeq "$(XEN)" "1"
        cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux-2.6.27.21-imq-test3-xen.patch
 else
        # Linux Intermediate Queueing Device
-       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux-2.6.27.21-imq-test3.patch
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux-2.6.32-imq-test2.patch
 endif
 
-       # Add Vodafone K3565-Z USB ID's to option driver
-       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux-2.6.27.25-option_add_vf-k3565-z_usbids.patch
-
-       # Add Alix to Led Driver
-       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux-2.6.24-leds-alix.patch
-
-       # Patch to fix Intel e100 wake on lan
-       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux-2.6.27.39_e100-wakeonlan-fix.patch
+#      # Add Vodafone K3565-Z USB ID's to option driver
+#      cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux-2.6.27.25-option_add_vf-k3565-z_usbids.patch
 
        # Not report deprecated syscall 1.23 (for kudzu)
        cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux-2.6.25.18-not_report_sysctl_1.23.patch
+
 ifeq "$(XEN)" ""
        # Reiser4
-       -cd $(DIR_APP) && bzip2 -d -c $(DIR_DL)/reiser4-for-2.6.27.19.patch.bz2 | patch -Np1
-
-       # SquashFS (already in Suse Patchset)
-       cd $(DIR_SRC) && rm -rf squashfs*
-       cd $(DIR_SRC) && tar xfz $(DIR_DL)/squashfs3.4.tar.gz
-       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/squashfs3.4/kernel-patches/linux-2.6.27-rc4/squashfs3.4-patch
+       cd $(DIR_APP) && bzcat $(DIR_DL)/reiser4-for-2.6.32.patch.bz2 | patch -Np1
 endif
 
        # ipp2p 0.8.2-pomng
-       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux-2.6.27.19-ipp2p-0.8.2-pomng.patch
-
-       # Intel Atom Coretemp Patch
-       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux-2.6.27-atom-coretemp.patch
-       # Intel Atom P4-clockmod Patch
-       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux-2.6.27-atom-clockmod.patch
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux-2.6.32.8-ipp2p-0.8.2-pomng.patch
 
        # Layer7-patch
-       cd $(DIR_SRC) && rm -rf $(DIR_SRC)/netfilter-layer7-v2.21
-       cd $(DIR_SRC) && tar xzf $(DIR_DL)/netfilter-layer7-v2.21.tar.gz
-       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/netfilter-layer7-v2.21/kernel-2.6.25-2.6.28-layer7-2.21.patch
+       cd $(DIR_SRC) && rm -rf $(DIR_SRC)/netfilter-layer7-v2.22
+       cd $(DIR_SRC) && tar xzf $(DIR_DL)/netfilter-layer7-v2.22.tar.gz
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/netfilter-layer7-v2.22/kernel-2.6.25-2.6.28-layer7-2.22.patch
 
        # Cleanup kernel source
-       cd $(DIR_APP) && make mrproper
 
        cp $(DIR_SRC)/config/kernel/kernel.config.$(MACHINE)-$(VERSUFIX) $(DIR_APP)/.config
        cd $(DIR_APP) && make CC="$(KGCC)" oldconfig
@@ -188,10 +173,12 @@ endif
        # Rename ide-cd module to match with old kernel
        mv /lib/modules/$(VER)-$(VERSUFIX)/kernel/drivers/ide/ide-cd_mod.ko \
           /lib/modules/$(VER)-$(VERSUFIX)/kernel/drivers/ide/ide-cd.ko
+       mv /lib/modules/$(VER)-$(VERSUFIX)/kernel/drivers/ide/ide-gd_mod.ko \
+          /lib/modules/$(VER)-$(VERSUFIX)/kernel/drivers/ide/ide-disk.ko
 
-       # Remove mISDN modules
-       rm -rvf /lib/modules/$(VER)-$(VERSUFIX)/kernel/drivers/isdn/mISDN
-       rm -rvf /lib/modules/$(VER)-$(VERSUFIX)/kernel/drivers/isdn/hardware/mISDN
+#      # Remove mISDN modules
+#      rm -rvf /lib/modules/$(VER)-$(VERSUFIX)/kernel/drivers/isdn/mISDN
+#      rm -rvf /lib/modules/$(VER)-$(VERSUFIX)/kernel/drivers/isdn/hardware/mISDN
 
        @rm -rf $(DIR_SRC)/patch-o-matic* $(DIR_SRC)/iptables* $(DIR_SRC)/squashfs* $(DIR_SRC)/netfilter-layer7-*
        @$(POSTBUILD)
index f3e3a2fca9a6384935befd7eeb29e69620076b01..05a06509bca838f37a72b449c55fdfcc64d7ba14 100644 (file)
@@ -30,7 +30,7 @@ else
        VERSUFIX=ipfire
 endif
 
-VER        = 2.6.23
+VER        = 2.6.24
 
 THISAPP    = openswan-$(VER)
 DL_FILE    = $(THISAPP).tar.gz
@@ -51,7 +51,7 @@ objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_MD5 = c83053471e639bf3b97e3cf7796b7e83
+$(DL_FILE)_MD5 = 1c76b6982c05392f7c360afb92699661
 
 install : $(TARGET)
 
@@ -92,7 +92,7 @@ else
                -e 's%^KLIPSCOMPILE.*$$%KLIPSCOMPILE=$(CFLAGS)%' \
                -e 's%^XMLTO.*$$%#&%' Makefile.inc
 
-       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/openswan-2.6.20_noxmlto.patch
+       cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/openswan-2.6.24_noxmlto.patch
 
        cd $(DIR_APP) && sed -i 's/-Werror//' programs/Makefile.program
        
diff --git a/make.sh b/make.sh
index 6229cd122886a474f49c2519796b6657ecdbb6dc..6b3e2b0a6936292cf35812a1c282c38cabbf40f9 100755 (executable)
--- a/make.sh
+++ b/make.sh
@@ -24,7 +24,7 @@
 
 NAME="IPFire"                                                  # Software name
 SNAME="ipfire"                                                 # Short name
-VERSION="2.5"                                                  # Version number
+VERSION="2.6"                                                  # Version number
 CORE="37"                                                      # Core Level (Filename)
 PAKFIRE_CORE="36"                                              # Core Level (PAKFIRE)
 GIT_BRANCH=`git status | head -n1 | cut -d" " -f4`             # Git Branch
@@ -340,42 +340,26 @@ buildipfire() {
   ipfiremake pptp
   ipfiremake unzip
   ipfiremake which
-  ipfiremake linux                     XEN=1
-  ipfiremake atl1c                     XEN=1
-  ipfiremake atl2                      XEN=1
-  ipfiremake hso                       XEN=1
-  ipfiremake e1000e                    XEN=1
-  ipfiremake et131x                    XEN=1
-  ipfiremake r8101                     XEN=1
-  ipfiremake r8169                     XEN=1
-  ipfiremake r8168                     XEN=1
-  ipfiremake kqemu                     XEN=1
-  #ipfiremake kvm-kmod                 XEN=1
-  ipfiremake v4l-dvb                   XEN=1
-  ipfiremake madwifi                   XEN=1
-  #ipfiremake alsa                     XEN=1 KMOD=1
-  ipfiremake dahdi                     XEN=1 KMOD=1
-  ipfiremake openswan                  XEN=1 KMOD=1
-  ipfiremake mISDN                     XEN=1
-  ipfiremake compat-wireless           XEN=1
+#  ipfiremake linux                    XEN=1
+#  ipfiremake kqemu                    XEN=1
+#  #ipfiremake kvm-kmod                        XEN=1
+#  ipfiremake v4l-dvb                  XEN=1
+#  ipfiremake madwifi                  XEN=1
+#  #ipfiremake alsa                    XEN=1 KMOD=1
+#  ipfiremake dahdi                    XEN=1 KMOD=1
+#  ipfiremake openswan                 XEN=1 KMOD=1
+#  ipfiremake mISDN                    XEN=1
+#  ipfiremake compat-wireless          XEN=1
   ipfiremake linux
-  ipfiremake atl1c
-  ipfiremake atl2
-  ipfiremake hso
-  ipfiremake e1000e
-  ipfiremake et131x
-  ipfiremake r8101
-  ipfiremake r8169
-  ipfiremake r8168
   ipfiremake kqemu
-  ipfiremake kvm-kmod
+  #ipfiremake kvm-kmod
   ipfiremake v4l-dvb
   ipfiremake madwifi
   ipfiremake alsa                      KMOD=1
   ipfiremake dahdi                     KMOD=1
   ipfiremake openswan                  KMOD=1
-  ipfiremake mISDN
-  ipfiremake compat-wireless
+  #ipfiremake mISDN
+  #ipfiremake compat-wireless
   ipfiremake pkg-config
   ipfiremake linux-atm
   ipfiremake cpio
@@ -655,7 +639,7 @@ buildipfire() {
   echo >> $BASEDIR/build/var/ipfire/firebuild
   cat /proc/cpuinfo >> $BASEDIR/build/var/ipfire/firebuild
   echo $PAKFIRE_CORE > $BASEDIR/build/opt/pakfire/db/core/mine
-  if [ "$GIT_BRANCH" = "master" ]; then
+  if [ "$GIT_BRANCH" = "next" ]; then
        echo "$NAME $VERSION - (Development Build: $GIT_LASTCOMMIT)" > $BASEDIR/build/etc/system-release
   else
        echo "$NAME $VERSION - $GIT_BRANCH" > $BASEDIR/build/etc/system-release
@@ -740,15 +724,15 @@ buildpackages() {
 
   ipfirepackages
 
-  # Check if there is a loop device for building in virtual environments
-  if [ -e /dev/loop/0 ] || [ -e /dev/loop0 ]; then
-        cp -f $BASEDIR/packages/linux-xen-*.ipfire $LFS/install/packages/
-        cp -f $BASEDIR/packages/meta-linux-xen $LFS/install/packages/
-       ipfiremake xen-image ED=$IPFVER
-       rm -rf $LFS/install/packages/linux-xen-*.ipfire
-       rm -rf $LFS/install/packages/meta-linux-xen
-  fi
-  mv $LFS/install/images/*.bz2 $BASEDIR >> $LOGFILE 2>&1
+#  # Check if there is a loop device for building in virtual environments
+#  if [ -e /dev/loop/0 ] || [ -e /dev/loop0 ]; then
+#        cp -f $BASEDIR/packages/linux-xen-*.ipfire $LFS/install/packages/
+#        cp -f $BASEDIR/packages/meta-linux-xen $LFS/install/packages/
+#      ipfiremake xen-image ED=$IPFVER
+#      rm -rf $LFS/install/packages/linux-xen-*.ipfire
+#      rm -rf $LFS/install/packages/meta-linux-xen
+#  fi
+#  mv $LFS/install/images/*.bz2 $BASEDIR >> $LOGFILE 2>&1
 
   # Cleanup
   stdumount
diff --git a/src/patches/iptables-1.4.6-errorno_includes.patch b/src/patches/iptables-1.4.6-errorno_includes.patch
new file mode 100644 (file)
index 0000000..a25c5a3
--- /dev/null
@@ -0,0 +1,170 @@
+diff -Naur include.org/asm/errno.h include/asm/errno.h
+--- include.org/asm/errno.h    2010-02-12 18:21:40.000000000 +0100
++++ include/asm/errno.h        2010-02-12 18:19:41.000000000 +0100
+@@ -5,4 +5,8 @@
+  #include <linux/errno.h>
+ #endif
++#ifndef _ASM_GENERIC_ERRNO_H
++ #include <asm-generic/errno.h>
++#endif
++
+ #endif
+diff -Naur include.org/asm-generic/errno-base.h include/asm-generic/errno-base.h
+--- include.org/asm-generic/errno-base.h       1970-01-01 01:00:00.000000000 +0100
++++ include/asm-generic/errno-base.h   2010-02-09 13:57:19.000000000 +0100
+@@ -0,0 +1,39 @@
++#ifndef _ASM_GENERIC_ERRNO_BASE_H
++#define _ASM_GENERIC_ERRNO_BASE_H
++
++#define       EPERM            1      /* Operation not permitted */
++#define       ENOENT           2      /* No such file or directory */
++#define       ESRCH            3      /* No such process */
++#define       EINTR            4      /* Interrupted system call */
++#define       EIO              5      /* I/O error */
++#define       ENXIO            6      /* No such device or address */
++#define       E2BIG            7      /* Argument list too long */
++#define       ENOEXEC          8      /* Exec format error */
++#define       EBADF            9      /* Bad file number */
++#define       ECHILD          10      /* No child processes */
++#define       EAGAIN          11      /* Try again */
++#define       ENOMEM          12      /* Out of memory */
++#define       EACCES          13      /* Permission denied */
++#define       EFAULT          14      /* Bad address */
++#define       ENOTBLK         15      /* Block device required */
++#define       EBUSY           16      /* Device or resource busy */
++#define       EEXIST          17      /* File exists */
++#define       EXDEV           18      /* Cross-device link */
++#define       ENODEV          19      /* No such device */
++#define       ENOTDIR         20      /* Not a directory */
++#define       EISDIR          21      /* Is a directory */
++#define       EINVAL          22      /* Invalid argument */
++#define       ENFILE          23      /* File table overflow */
++#define       EMFILE          24      /* Too many open files */
++#define       ENOTTY          25      /* Not a typewriter */
++#define       ETXTBSY         26      /* Text file busy */
++#define       EFBIG           27      /* File too large */
++#define       ENOSPC          28      /* No space left on device */
++#define       ESPIPE          29      /* Illegal seek */
++#define       EROFS           30      /* Read-only file system */
++#define       EMLINK          31      /* Too many links */
++#define       EPIPE           32      /* Broken pipe */
++#define       EDOM            33      /* Math argument out of domain of func */
++#define       ERANGE          34      /* Math result not representable */
++
++#endif
+diff -Naur include.org/asm-generic/errno.h include/asm-generic/errno.h
+--- include.org/asm-generic/errno.h    1970-01-01 01:00:00.000000000 +0100
++++ include/asm-generic/errno.h        2010-02-09 13:57:19.000000000 +0100
+@@ -0,0 +1,111 @@
++#ifndef _ASM_GENERIC_ERRNO_H
++#define _ASM_GENERIC_ERRNO_H
++
++#include <asm-generic/errno-base.h>
++
++#define       EDEADLK         35      /* Resource deadlock would occur */
++#define       ENAMETOOLONG    36      /* File name too long */
++#define       ENOLCK          37      /* No record locks available */
++#define       ENOSYS          38      /* Function not implemented */
++#define       ENOTEMPTY       39      /* Directory not empty */
++#define       ELOOP           40      /* Too many symbolic links encountered */
++#define       EWOULDBLOCK     EAGAIN  /* Operation would block */
++#define       ENOMSG          42      /* No message of desired type */
++#define       EIDRM           43      /* Identifier removed */
++#define       ECHRNG          44      /* Channel number out of range */
++#define       EL2NSYNC        45      /* Level 2 not synchronized */
++#define       EL3HLT          46      /* Level 3 halted */
++#define       EL3RST          47      /* Level 3 reset */
++#define       ELNRNG          48      /* Link number out of range */
++#define       EUNATCH         49      /* Protocol driver not attached */
++#define       ENOCSI          50      /* No CSI structure available */
++#define       EL2HLT          51      /* Level 2 halted */
++#define       EBADE           52      /* Invalid exchange */
++#define       EBADR           53      /* Invalid request descriptor */
++#define       EXFULL          54      /* Exchange full */
++#define       ENOANO          55      /* No anode */
++#define       EBADRQC         56      /* Invalid request code */
++#define       EBADSLT         57      /* Invalid slot */
++
++#define       EDEADLOCK       EDEADLK
++
++#define       EBFONT          59      /* Bad font file format */
++#define       ENOSTR          60      /* Device not a stream */
++#define       ENODATA         61      /* No data available */
++#define       ETIME           62      /* Timer expired */
++#define       ENOSR           63      /* Out of streams resources */
++#define       ENONET          64      /* Machine is not on the network */
++#define       ENOPKG          65      /* Package not installed */
++#define       EREMOTE         66      /* Object is remote */
++#define       ENOLINK         67      /* Link has been severed */
++#define       EADV            68      /* Advertise error */
++#define       ESRMNT          69      /* Srmount error */
++#define       ECOMM           70      /* Communication error on send */
++#define       EPROTO          71      /* Protocol error */
++#define       EMULTIHOP       72      /* Multihop attempted */
++#define       EDOTDOT         73      /* RFS specific error */
++#define       EBADMSG         74      /* Not a data message */
++#define       EOVERFLOW       75      /* Value too large for defined data type */
++#define       ENOTUNIQ        76      /* Name not unique on network */
++#define       EBADFD          77      /* File descriptor in bad state */
++#define       EREMCHG         78      /* Remote address changed */
++#define       ELIBACC         79      /* Can not access a needed shared library */
++#define       ELIBBAD         80      /* Accessing a corrupted shared library */
++#define       ELIBSCN         81      /* .lib section in a.out corrupted */
++#define       ELIBMAX         82      /* Attempting to link in too many shared libraries */
++#define       ELIBEXEC        83      /* Cannot exec a shared library directly */
++#define       EILSEQ          84      /* Illegal byte sequence */
++#define       ERESTART        85      /* Interrupted system call should be restarted */
++#define       ESTRPIPE        86      /* Streams pipe error */
++#define       EUSERS          87      /* Too many users */
++#define       ENOTSOCK        88      /* Socket operation on non-socket */
++#define       EDESTADDRREQ    89      /* Destination address required */
++#define       EMSGSIZE        90      /* Message too long */
++#define       EPROTOTYPE      91      /* Protocol wrong type for socket */
++#define       ENOPROTOOPT     92      /* Protocol not available */
++#define       EPROTONOSUPPORT 93      /* Protocol not supported */
++#define       ESOCKTNOSUPPORT 94      /* Socket type not supported */
++#define       EOPNOTSUPP      95      /* Operation not supported on transport endpoint */
++#define       EPFNOSUPPORT    96      /* Protocol family not supported */
++#define       EAFNOSUPPORT    97      /* Address family not supported by protocol */
++#define       EADDRINUSE      98      /* Address already in use */
++#define       EADDRNOTAVAIL   99      /* Cannot assign requested address */
++#define       ENETDOWN        100     /* Network is down */
++#define       ENETUNREACH     101     /* Network is unreachable */
++#define       ENETRESET       102     /* Network dropped connection because of reset */
++#define       ECONNABORTED    103     /* Software caused connection abort */
++#define       ECONNRESET      104     /* Connection reset by peer */
++#define       ENOBUFS         105     /* No buffer space available */
++#define       EISCONN         106     /* Transport endpoint is already connected */
++#define       ENOTCONN        107     /* Transport endpoint is not connected */
++#define       ESHUTDOWN       108     /* Cannot send after transport endpoint shutdown */
++#define       ETOOMANYREFS    109     /* Too many references: cannot splice */
++#define       ETIMEDOUT       110     /* Connection timed out */
++#define       ECONNREFUSED    111     /* Connection refused */
++#define       EHOSTDOWN       112     /* Host is down */
++#define       EHOSTUNREACH    113     /* No route to host */
++#define       EALREADY        114     /* Operation already in progress */
++#define       EINPROGRESS     115     /* Operation now in progress */
++#define       ESTALE          116     /* Stale NFS file handle */
++#define       EUCLEAN         117     /* Structure needs cleaning */
++#define       ENOTNAM         118     /* Not a XENIX named type file */
++#define       ENAVAIL         119     /* No XENIX semaphores available */
++#define       EISNAM          120     /* Is a named type file */
++#define       EREMOTEIO       121     /* Remote I/O error */
++#define       EDQUOT          122     /* Quota exceeded */
++
++#define       ENOMEDIUM       123     /* No medium found */
++#define       EMEDIUMTYPE     124     /* Wrong medium type */
++#define       ECANCELED       125     /* Operation Canceled */
++#define       ENOKEY          126     /* Required key not available */
++#define       EKEYEXPIRED     127     /* Key has expired */
++#define       EKEYREVOKED     128     /* Key has been revoked */
++#define       EKEYREJECTED    129     /* Key was rejected by service */
++
++/* for robust mutexes */
++#define       EOWNERDEAD      130     /* Owner died */
++#define       ENOTRECOVERABLE 131     /* State not recoverable */
++
++#define ERFKILL               132     /* Operation not possible due to RF-kill */
++
++#endif
diff --git a/src/patches/iptables-1.4.6-imq_test1.patch b/src/patches/iptables-1.4.6-imq_test1.patch
new file mode 100644 (file)
index 0000000..2b4fb79
--- /dev/null
@@ -0,0 +1,126 @@
+diff -Naurw iptables-1.4.1/extensions/.IMQ-testx iptables-1.4.1.imq/extensions/.IMQ-testx
+--- iptables-1.4.1/extensions/.IMQ-testx       1969-12-31 21:00:00.000000000 -0300
++++ iptables-1.4.1.imq/extensions/.IMQ-testx   2008-06-24 22:20:06.000000000 -0300
+@@ -0,0 +1,3 @@
++#!/bin/sh
++# True if IMQ target patch is applied.
++[ -f $KERNEL_DIR/include/linux/netfilter/xt_IMQ.h ] && echo IMQ
+diff -Naurw iptables-1.4.1/extensions/libxt_IMQ.c iptables-1.4.1.imq/extensions/libxt_IMQ.c
+--- iptables-1.4.1/extensions/libxt_IMQ.c      1969-12-31 21:00:00.000000000 -0300
++++ iptables-1.4.1.imq/extensions/libxt_IMQ.c  2008-06-24 22:31:02.000000000 -0300
+@@ -0,0 +1,103 @@
++/* Shared library add-on to iptables to add IMQ target support. */
++#include <stdio.h>
++#include <string.h>
++#include <stdlib.h>
++#include <getopt.h>
++
++#include <xtables.h>
++#include <linux/netfilter/x_tables.h>
++#include <linux/netfilter/xt_IMQ.h>
++
++/* Function which prints out usage message. */
++static void IMQ_help(void)
++{
++      printf(
++"IMQ target options:\n"
++"  --todev <N>                enqueue to imq<N>, defaults to 0\n");
++
++}
++
++static struct option IMQ_opts[] = {
++      { "todev", 1, 0, '1' },
++      { 0 }
++};
++
++/* Initialize the target. */
++static void IMQ_init(struct xt_entry_target *t)
++{
++      struct xt_imq_info *mr = (struct xt_imq_info*)t->data;
++
++      mr->todev = 0;
++}
++
++/* Function which parses command options; returns true if it
++   ate an option */
++static int IMQ_parse(int c, char **argv, int invert, unsigned int *flags,
++      const void *entry, struct xt_entry_target **target)
++{
++      struct xt_imq_info *mr = (struct xt_imq_info*)(*target)->data;
++      
++      switch(c) {
++      case '1':
++              if (xtables_check_inverse(optarg, &invert, NULL, 0, argv))
++                      xtables_error(PARAMETER_PROBLEM,
++                                 "Unexpected `!' for --todev");
++              mr->todev=atoi(optarg);
++              break;
++      default:
++              return 0;
++      }
++      return 1;
++}
++
++/* Prints out the targinfo. */
++static void IMQ_print(const void *ip,
++      const struct xt_entry_target *target,
++      int numeric)
++{
++      struct xt_imq_info *mr = (struct xt_imq_info*)target->data;
++
++      printf("IMQ: todev %u ", mr->todev);
++}
++
++/* Saves the union ipt_targinfo in parsable form to stdout. */
++static void IMQ_save(const void *ip, const struct xt_entry_target *target)
++{
++      struct xt_imq_info *mr = (struct xt_imq_info*)target->data;
++
++      printf("--todev %u", mr->todev);
++}
++
++static struct xtables_target imq_target = {
++      .name           = "IMQ",
++      .version        = XTABLES_VERSION,
++      .family         = NFPROTO_IPV4,
++      .size           = XT_ALIGN(sizeof(struct xt_imq_info)),
++      .userspacesize  = XT_ALIGN(sizeof(struct xt_imq_info)),
++      .help           = IMQ_help,
++      .init           = IMQ_init,
++      .parse          = IMQ_parse,
++      .print          = IMQ_print,
++      .save           = IMQ_save,
++      .extra_opts     = IMQ_opts,
++};
++
++static struct xtables_target imq_target6 = {
++      .name           = "IMQ",
++      .version        = XTABLES_VERSION,
++      .family         = NFPROTO_IPV6,
++      .size           = XT_ALIGN(sizeof(struct xt_imq_info)),
++      .userspacesize  = XT_ALIGN(sizeof(struct xt_imq_info)),
++      .help           = IMQ_help,
++      .init           = IMQ_init,
++      .parse          = IMQ_parse,
++      .print          = IMQ_print,
++      .save           = IMQ_save,
++      .extra_opts     = IMQ_opts,
++};
++
++// void __attribute((constructor)) nf_ext_init(void){
++void _init(void){
++      xtables_register_target(&imq_target);
++      xtables_register_target(&imq_target6);
++}
+--- iptables-1.4.1.1/include/linux/netfilter/xt_IMQ.h  1970-01-01 02:00:00.000000000 +0200
++++ iptables-1.4.1.1.new/include/linux/netfilter/xt_IMQ.h      2008-08-05 00:41:28.000000000 +0300
+@@ -0,0 +1,9 @@
++#ifndef _XT_IMQ_H
++#define _XT_IMQ_H
++
++struct xt_imq_info {
++      unsigned int todev;     /* target imq device */
++};
++
++#endif /* _XT_IMQ_H */
++
diff --git a/src/patches/iptables-1.4.6-ipp2p-0.8.2-pomng.patch b/src/patches/iptables-1.4.6-ipp2p-0.8.2-pomng.patch
new file mode 100644 (file)
index 0000000..5f9c307
--- /dev/null
@@ -0,0 +1,481 @@
+diff -Naur iptables-1.4.6.org/extensions/.ipp2p-test iptables-1.4.6/extensions/.ipp2p-test
+--- iptables-1.4.6.org/extensions/.ipp2p-test  1970-01-01 01:00:00.000000000 +0100
++++ iptables-1.4.6/extensions/.ipp2p-test      2010-02-13 20:02:52.000000000 +0100
+@@ -0,0 +1,2 @@
++#! /bin/sh
++[ -f $KERNEL_DIR/include/linux/netfilter_ipv4/ipt_ipp2p.h ] && echo ipp2p
+diff -Naur iptables-1.4.6.org/extensions/libipt_ipp2p.c iptables-1.4.6/extensions/libipt_ipp2p.c
+--- iptables-1.4.6.org/extensions/libipt_ipp2p.c       1970-01-01 01:00:00.000000000 +0100
++++ iptables-1.4.6/extensions/libipt_ipp2p.c   2010-02-13 20:02:52.000000000 +0100
+@@ -0,0 +1,424 @@
++#include <stdio.h>
++#include <netdb.h>
++#include <string.h>
++#include <stdlib.h>
++#include <getopt.h>
++#include <ctype.h>
++
++#include <iptables.h>
++
++#include <linux/netfilter_ipv4/ipt_ipp2p.h>
++
++#ifndef XTABLES_VERSION
++#define XTABLES_VERSION IPTABLES_VERSION
++#endif
++
++#ifdef IPT_LIB_DIR
++#define xtables_target iptables_target
++#define xtables_register_target register_target
++#endif
++
++static void
++help(void)
++{
++    printf(
++    "IPP2P v%s options:\n"
++    " --ipp2p Grab all known p2p packets\n"
++    " --edk           [TCP&UDP]       All known eDonkey/eMule/Overnet packets\n"
++    " --dc            [TCP]           All known Direct Connect packets\n"
++    " --kazaa [TCP&UDP]       All known KaZaA packets\n"
++    " --gnu           [TCP&UDP]       All known Gnutella packets\n"
++    " --bit           [TCP&UDP]       All known BitTorrent packets\n"
++    " --apple [TCP]           All known AppleJuice packets\n"
++    " --winmx [TCP]           All known WinMX\n"
++    " --soul          [TCP]           All known SoulSeek\n"
++    " --ares          [TCP]           All known Ares\n\n"
++    " EXPERIMENTAL protocols (please send feedback to: ipp2p@ipp2p.org) :\n"
++    " --mute          [TCP]           All known Mute packets\n"
++    " --waste [TCP]           All known Waste packets\n"
++    " --xdcc          [TCP]           All known XDCC packets (only xdcc login)\n\n"
++    " DEBUG SUPPPORT, use only if you know why\n"
++    " --debug         Generate kernel debug output, THIS WILL SLOW DOWN THE FILTER\n"
++    "\nNote that the follwing options will have the same meaning:\n"
++    " '--ipp2p' is equal to '--edk --dc --kazaa --gnu --bit --apple --winmx --soul --ares'\n"
++    "\nIPP2P was intended for TCP only. Due to increasing usage of UDP we needed to change this.\n"
++    "You can now use -p udp to search UDP packets only or without -p switch to search UDP and TCP packets.\n"
++    "\nSee README included with this package for more details or visit http://www.ipp2p.org\n"
++    "\nExamples:\n"
++    " iptables -A FORWARD -m ipp2p --ipp2p -j MARK --set-mark 0x01\n"
++    " iptables -A FORWARD -p udp -m ipp2p --kazaa --bit -j DROP\n"
++    " iptables -A FORWARD -p tcp -m ipp2p --edk --soul -j DROP\n\n"
++    , IPP2P_VERSION);
++}
++
++static struct option opts[] = {
++        { "ipp2p", 0, 0, '1' },
++        { "edk", 0, 0, '2' }, 
++      { "dc", 0, 0, '7' },
++      { "gnu", 0, 0, '9' },
++      { "kazaa", 0, 0, 'a' },
++      { "bit", 0, 0, 'b' },
++      { "apple", 0, 0, 'c' }, 
++      { "soul", 0, 0, 'd' },  
++      { "winmx", 0, 0, 'e' }, 
++      { "ares", 0, 0, 'f' },
++      { "mute", 0, 0, 'g' },
++      { "waste", 0, 0, 'h' },
++      { "xdcc", 0, 0, 'i' },
++      { "debug", 0, 0, 'j' },
++        {0}
++};
++
++
++static void
++#ifdef _XTABLES_H
++init(struct xt_entry_match *m)
++#else
++init(struct ipt_entry_match *t, unsigned int *nfcache)
++#endif
++{
++    struct ipt_p2p_info *info = (struct ipt_p2p_info *)m->data;
++
++#ifndef _XTABLES_H
++    *nfcache |= NFC_UNKNOWN;
++#endif
++
++    /*init the module with default values*/
++    info->cmd = 0;
++    info->debug = 0;
++
++}
++
++
++static int
++parse(int c, char **argv, int invert, unsigned int *flags,
++#ifdef _XTABLES_H
++      const void *entry, struct xt_entry_match **match)
++#else
++      const struct ipt_entry *entry, unsigned int *nfcache, struct ipt_entry_match **match)
++#endif
++{
++    struct ipt_p2p_info *info = (struct ipt_p2p_info *)(*match)->data;
++    
++    switch (c) {
++      case '1':               /*cmd: ipp2p*/
++          if ((*flags & SHORT_HAND_IPP2P) == SHORT_HAND_IPP2P)
++                  exit_error(PARAMETER_PROBLEM,
++                              "ipp2p: `--ipp2p' may only be "
++                              "specified once!");
++
++/*        if ((*flags & SHORT_HAND_DATA) == SHORT_HAND_DATA)
++                  exit_error(PARAMETER_PROBLEM,
++                              "ipp2p: `--ipp2p-data' may only be "
++                              "specified alone!");
++*/
++
++          if ((*flags) != 0)
++                  exit_error(PARAMETER_PROBLEM,
++                              "ipp2p: `--ipp2p' may only be "
++                              "specified alone!");
++          if (invert) exit_error(PARAMETER_PROBLEM, "ipp2p: invert [!] is not allowed!");
++          *flags += SHORT_HAND_IPP2P;
++          info->cmd = *flags;
++          break;
++          
++      case '2':               /*cmd: edk*/
++          if ((*flags & IPP2P_EDK) == IPP2P_EDK)
++                  exit_error(PARAMETER_PROBLEM,
++                              "ipp2p: `--edk' may only be "
++                              "specified once");
++          if ((*flags & SHORT_HAND_IPP2P) == SHORT_HAND_IPP2P)
++                  exit_error(PARAMETER_PROBLEM,
++                              "ipp2p: `--ipp2p' may only be "
++                              "specified alone!");
++/*        if ((*flags & SHORT_HAND_DATA) == SHORT_HAND_DATA)
++                  exit_error(PARAMETER_PROBLEM,
++                              "ipp2p: `--ipp2p-data' may only be "
++                              "specified alone!");*/
++            if ((*flags & IPP2P_DATA_EDK) == IPP2P_DATA_EDK)
++            exit_error(PARAMETER_PROBLEM,
++                                "ipp2p: use `--edk' OR `--edk-data' but not both of them!");
++          if (invert) exit_error(PARAMETER_PROBLEM, "ipp2p: invert [!] is not allowed!");
++          *flags += IPP2P_EDK;
++          info->cmd = *flags;     
++          break;
++
++
++      case '7':               /*cmd: dc*/
++            if ((*flags & IPP2P_DC) == IPP2P_DC)
++            exit_error(PARAMETER_PROBLEM,
++                                "ipp2p: `--dc' may only be "
++                                "specified once!");
++          if ((*flags & SHORT_HAND_IPP2P) == SHORT_HAND_IPP2P)
++                  exit_error(PARAMETER_PROBLEM,
++                              "ipp2p: `--ipp2p' may only be "
++                              "specified alone!");
++/*        if ((*flags & SHORT_HAND_DATA) == SHORT_HAND_DATA)
++                  exit_error(PARAMETER_PROBLEM,
++                              "ipp2p: `--ipp2p-data' may only be "
++                              "specified alone!");*/
++            if ((*flags & IPP2P_DATA_DC) == IPP2P_DATA_DC)
++            exit_error(PARAMETER_PROBLEM,
++                                "ipp2p: use `--dc' OR `--dc-data' but not both of them!");
++          if (invert) exit_error(PARAMETER_PROBLEM, "ipp2p: invert [!] is not allowed!");
++            *flags += IPP2P_DC;
++          info->cmd = *flags;
++          break;
++
++
++      case '9':               /*cmd: gnu*/
++            if ((*flags & IPP2P_GNU) == IPP2P_GNU)
++            exit_error(PARAMETER_PROBLEM,
++                                "ipp2p: `--gnu' may only be "
++                                "specified once!");
++/*        if ((*flags & SHORT_HAND_DATA) == SHORT_HAND_DATA)
++                  exit_error(PARAMETER_PROBLEM,
++                              "ipp2p: `--ipp2p-data' may only be "
++                              "specified alone!");*/
++          if ((*flags & SHORT_HAND_IPP2P) == SHORT_HAND_IPP2P)
++                  exit_error(PARAMETER_PROBLEM,
++                              "ipp2p: `--ipp2p' may only be "
++                              "specified alone!");
++            if ((*flags & IPP2P_DATA_GNU) == IPP2P_DATA_GNU)
++            exit_error(PARAMETER_PROBLEM,
++                                "ipp2p: use `--gnu' OR `--gnu-data' but not both of them!");
++          if (invert) exit_error(PARAMETER_PROBLEM, "ipp2p: invert [!] is not allowed!");
++            *flags += IPP2P_GNU;
++          info->cmd = *flags;
++          break;
++
++      case 'a':               /*cmd: kazaa*/
++            if ((*flags & IPP2P_KAZAA) == IPP2P_KAZAA)
++            exit_error(PARAMETER_PROBLEM,
++                                "ipp2p: `--kazaa' may only be "
++                                "specified once!");
++/*        if ((*flags & SHORT_HAND_DATA) == SHORT_HAND_DATA)
++                  exit_error(PARAMETER_PROBLEM,
++                              "ipp2p: `--ipp2p-data' may only be "
++                              "specified alone!");*/
++          if ((*flags & SHORT_HAND_IPP2P) == SHORT_HAND_IPP2P)
++                  exit_error(PARAMETER_PROBLEM,
++                              "ipp2p: `--ipp2p' may only be "
++                              "specified alone!");
++            if ((*flags & IPP2P_DATA_KAZAA) == IPP2P_DATA_KAZAA)
++            exit_error(PARAMETER_PROBLEM,
++                                "ipp2p: use `--kazaa' OR `--kazaa-data' but not both of them!");
++          if (invert) exit_error(PARAMETER_PROBLEM, "ipp2p: invert [!] is not allowed!");
++            *flags += IPP2P_KAZAA;
++          info->cmd = *flags;
++          break;                                                                                                                                                                                                                      
++
++      case 'b':               /*cmd: bit*/
++            if ((*flags & IPP2P_BIT) == IPP2P_BIT)
++            exit_error(PARAMETER_PROBLEM,
++                                "ipp2p: `--bit' may only be "
++                                "specified once!");
++          if ((*flags & SHORT_HAND_IPP2P) == SHORT_HAND_IPP2P)
++                  exit_error(PARAMETER_PROBLEM,
++                              "ipp2p: `--ipp2p' may only be "
++                              "specified alone!");
++          if (invert) exit_error(PARAMETER_PROBLEM, "ipp2p: invert [!] is not allowed!");
++            *flags += IPP2P_BIT;
++          info->cmd = *flags;
++          break;                                                                                                                                                                                                                      
++
++      case 'c':               /*cmd: apple*/
++            if ((*flags & IPP2P_APPLE) == IPP2P_APPLE)
++            exit_error(PARAMETER_PROBLEM,
++                                "ipp2p: `--apple' may only be "
++                                "specified once!");
++          if ((*flags & SHORT_HAND_IPP2P) == SHORT_HAND_IPP2P)
++                  exit_error(PARAMETER_PROBLEM,
++                              "ipp2p: `--ipp2p' may only be "
++                              "specified alone!");
++          if (invert) exit_error(PARAMETER_PROBLEM, "ipp2p: invert [!] is not allowed!");
++            *flags += IPP2P_APPLE;
++          info->cmd = *flags;
++          break;                                                                                                                                                                                                                      
++
++
++      case 'd':               /*cmd: soul*/
++            if ((*flags & IPP2P_SOUL) == IPP2P_SOUL)
++            exit_error(PARAMETER_PROBLEM,
++                                "ipp2p: `--soul' may only be "
++                                "specified once!");
++          if ((*flags & SHORT_HAND_IPP2P) == SHORT_HAND_IPP2P)
++                  exit_error(PARAMETER_PROBLEM,
++                              "ipp2p: `--ipp2p' may only be "
++                              "specified alone!");
++          if (invert) exit_error(PARAMETER_PROBLEM, "ipp2p: invert [!] is not allowed!");
++            *flags += IPP2P_SOUL;
++          info->cmd = *flags;
++          break;                                                                                                                                                                                                                      
++
++
++      case 'e':               /*cmd: winmx*/
++            if ((*flags & IPP2P_WINMX) == IPP2P_WINMX)
++            exit_error(PARAMETER_PROBLEM,
++                                "ipp2p: `--winmx' may only be "
++                                "specified once!");
++          if ((*flags & SHORT_HAND_IPP2P) == SHORT_HAND_IPP2P)
++                  exit_error(PARAMETER_PROBLEM,
++                              "ipp2p: `--ipp2p' may only be "
++                              "specified alone!");
++          if (invert) exit_error(PARAMETER_PROBLEM, "ipp2p: invert [!] is not allowed!");
++            *flags += IPP2P_WINMX;
++          info->cmd = *flags;
++          break;                                                                                                                                                                                                                      
++
++      case 'f':               /*cmd: ares*/
++            if ((*flags & IPP2P_ARES) == IPP2P_ARES)
++            exit_error(PARAMETER_PROBLEM,
++                                "ipp2p: `--ares' may only be "
++                                "specified once!");
++          if ((*flags & SHORT_HAND_IPP2P) == SHORT_HAND_IPP2P)
++                  exit_error(PARAMETER_PROBLEM,
++                              "ipp2p: `--ipp2p' may only be "
++                              "specified alone!");
++          if (invert) exit_error(PARAMETER_PROBLEM, "ipp2p: invert [!] is not allowed!");
++            *flags += IPP2P_ARES;
++          info->cmd = *flags;
++          break;                                                                                                                                                                                                                      
++      
++      case 'g':               /*cmd: mute*/
++            if ((*flags & IPP2P_MUTE) == IPP2P_MUTE)
++            exit_error(PARAMETER_PROBLEM,
++                                "ipp2p: `--mute' may only be "
++                                "specified once!");
++          if (invert) exit_error(PARAMETER_PROBLEM, "ipp2p: invert [!] is not allowed!");
++            *flags += IPP2P_MUTE;
++          info->cmd = *flags;
++          break;                                                                                                                                                                                                                      
++      case 'h':               /*cmd: waste*/
++            if ((*flags & IPP2P_WASTE) == IPP2P_WASTE)
++            exit_error(PARAMETER_PROBLEM,
++                                "ipp2p: `--waste' may only be "
++                                "specified once!");
++          if (invert) exit_error(PARAMETER_PROBLEM, "ipp2p: invert [!] is not allowed!");
++            *flags += IPP2P_WASTE;
++          info->cmd = *flags;
++          break;                                                                                                                                                                                                                      
++      case 'i':               /*cmd: xdcc*/
++            if ((*flags & IPP2P_XDCC) == IPP2P_XDCC)
++            exit_error(PARAMETER_PROBLEM,
++                                "ipp2p: `--ares' may only be "
++                                "specified once!");
++          if (invert) exit_error(PARAMETER_PROBLEM, "ipp2p: invert [!] is not allowed!");
++            *flags += IPP2P_XDCC;
++          info->cmd = *flags;
++          break;                                                                                                                                                                                                                      
++
++      case 'j':               /*cmd: debug*/
++          if (invert) exit_error(PARAMETER_PROBLEM, "ipp2p: invert [!] is not allowed!");
++          info->debug = 1;
++          break;                                                                                                                                                                                                                      
++
++      default:
++//            exit_error(PARAMETER_PROBLEM,
++//        "\nipp2p-parameter problem: for ipp2p usage type: iptables -m ipp2p --help\n");
++          return 0;
++    }
++    return 1;
++}
++
++
++static void
++final_check(unsigned int flags)
++{
++    if (!flags)
++            exit_error(PARAMETER_PROBLEM,
++          "\nipp2p-parameter problem: for ipp2p usage type: iptables -m ipp2p --help\n");
++}
++
++static void
++#ifdef _XTABLES_H
++print(const void *ip,
++      const struct xt_entry_match *match,
++#else
++print(const struct ipt_ip *ip,
++      const struct ipt_entry_match *match,
++#endif
++      int numeric)
++{
++    struct ipt_p2p_info *info = (struct ipt_p2p_info *)match->data;
++    
++    printf("ipp2p v%s", IPP2P_VERSION);
++    if ((info->cmd & SHORT_HAND_IPP2P) == SHORT_HAND_IPP2P) printf(" --ipp2p");
++//    if ((info->cmd & SHORT_HAND_DATA) == SHORT_HAND_DATA) printf(" --ipp2p-data");
++    if ((info->cmd & IPP2P_KAZAA) == IPP2P_KAZAA) printf(" --kazaa");
++//    if ((info->cmd & IPP2P_DATA_KAZAA) == IPP2P_DATA_KAZAA) printf(" --kazaa-data");
++//    if ((info->cmd & IPP2P_DATA_GNU) == IPP2P_DATA_GNU) printf(" --gnu-data");
++    if ((info->cmd & IPP2P_GNU) == IPP2P_GNU) printf(" --gnu");
++    if ((info->cmd & IPP2P_EDK) == IPP2P_EDK) printf(" --edk");
++//    if ((info->cmd & IPP2P_DATA_EDK) == IPP2P_DATA_EDK) printf(" --edk-data");
++//    if ((info->cmd & IPP2P_DATA_DC) == IPP2P_DATA_DC) printf(" --dc-data");
++    if ((info->cmd & IPP2P_DC) == IPP2P_DC) printf(" --dc");
++    if ((info->cmd & IPP2P_BIT) == IPP2P_BIT) printf(" --bit");
++    if ((info->cmd & IPP2P_APPLE) == IPP2P_APPLE) printf(" --apple");
++    if ((info->cmd & IPP2P_SOUL) == IPP2P_SOUL) printf(" --soul");
++    if ((info->cmd & IPP2P_WINMX) == IPP2P_WINMX) printf(" --winmx");
++    if ((info->cmd & IPP2P_ARES) == IPP2P_ARES) printf(" --ares");
++    if ((info->cmd & IPP2P_MUTE) == IPP2P_MUTE) printf(" --mute");
++    if ((info->cmd & IPP2P_WASTE) == IPP2P_WASTE) printf(" --waste");
++    if ((info->cmd & IPP2P_XDCC) == IPP2P_XDCC) printf(" --xdcc");
++    if (info->debug != 0) printf(" --debug");
++    printf(" ");
++}
++
++static void
++#ifdef _XTABLES_H
++save(const void *ip,
++     const struct xt_entry_match *match)
++#else
++save(const struct ipt_ip *ip,
++     const struct ipt_entry_match *match)
++#endif
++{
++    struct ipt_p2p_info *info = (struct ipt_p2p_info *)match->data;
++    
++    if ((info->cmd & SHORT_HAND_IPP2P) == SHORT_HAND_IPP2P) printf("--ipp2p ");
++//    if ((info->cmd & SHORT_HAND_DATA) == SHORT_HAND_DATA) printf("--ipp2p-data ");
++    if ((info->cmd & IPP2P_KAZAA) == IPP2P_KAZAA) printf("--kazaa ");
++//    if ((info->cmd & IPP2P_DATA_KAZAA) == IPP2P_DATA_KAZAA) printf("--kazaa-data ");
++//    if ((info->cmd & IPP2P_DATA_GNU) == IPP2P_DATA_GNU) printf("--gnu-data ");
++    if ((info->cmd & IPP2P_GNU) == IPP2P_GNU) printf("--gnu ");
++    if ((info->cmd & IPP2P_EDK) == IPP2P_EDK) printf("--edk ");
++//    if ((info->cmd & IPP2P_DATA_EDK) == IPP2P_DATA_EDK) printf("--edk-data ");
++//    if ((info->cmd & IPP2P_DATA_DC) == IPP2P_DATA_DC) printf("--dc-data ");
++    if ((info->cmd & IPP2P_DC) == IPP2P_DC) printf("--dc ");
++    if ((info->cmd & IPP2P_BIT) == IPP2P_BIT) printf("--bit ");
++    if ((info->cmd & IPP2P_APPLE) == IPP2P_APPLE) printf("--apple ");
++    if ((info->cmd & IPP2P_SOUL) == IPP2P_SOUL) printf("--soul ");
++    if ((info->cmd & IPP2P_WINMX) == IPP2P_WINMX) printf("--winmx ");
++    if ((info->cmd & IPP2P_ARES) == IPP2P_ARES) printf("--ares ");
++    if ((info->cmd & IPP2P_MUTE) == IPP2P_MUTE) printf(" --mute");
++    if ((info->cmd & IPP2P_WASTE) == IPP2P_WASTE) printf(" --waste");
++    if ((info->cmd & IPP2P_XDCC) == IPP2P_XDCC) printf(" --xdcc");
++    if (info->debug != 0) printf("--debug ");
++}
++
++              
++static 
++struct xtables_match ipp2p= 
++{ 
++    .next           = NULL,
++    .name           = "ipp2p",
++    .version        = XTABLES_VERSION,
++    .size           = IPT_ALIGN(sizeof(struct ipt_p2p_info)),
++    .userspacesize  = IPT_ALIGN(sizeof(struct ipt_p2p_info)),
++    .help           = &help,
++    .init           = &init,
++    .parse          = &parse,
++    .final_check    = &final_check,
++    .print          = &print,
++    .save           = &save,
++    .extra_opts     = opts
++};
++                                          
++
++
++void _init(void)
++{
++    xtables_register_match(&ipp2p);
++}
++
+diff -Naur iptables-1.4.6.org/extensions/libipt_ipp2p.man iptables-1.4.6/extensions/libipt_ipp2p.man
+--- iptables-1.4.6.org/extensions/libipt_ipp2p.man     1970-01-01 01:00:00.000000000 +0100
++++ iptables-1.4.6/extensions/libipt_ipp2p.man 2010-02-13 20:02:52.000000000 +0100
+@@ -0,0 +1,43 @@
++This module matches certain packets in P2P flows. It is not
++designed to match all packets belonging to a P2P connection - 
++use IPP2P together with CONNMARK for this purpose. Also visit
++http://www.ipp2p.org for detailed information.
++
++Use it together with -p tcp or -p udp to search these protocols
++only or without -p switch to search packets of both protocols.
++
++IPP2P provides the following options:
++.TP
++.B "--edk "
++Matches as many eDonkey/eMule packets as possible.
++.TP
++.B "--kazaa "
++Matches as many KaZaA packets as possible.
++.TP
++.B "--gnu "
++Matches as many Gnutella packets as possible.
++.TP
++.B "--dc "
++Matches as many Direct Connect packets as possible.
++.TP
++.B "--bit "
++Matches BitTorrent packets.
++.TP
++.B "--apple "
++Matches AppleJuice packets.
++.TP
++.B "--soul "
++Matches some SoulSeek packets. Considered as beta, use careful!
++.TP
++.B "--winmx "
++Matches some WinMX packets. Considered as beta, use careful!
++.TP
++.B "--ares "
++Matches Ares and AresLite packets. Use together with -j DROP only.
++.TP
++.B "--ipp2p "
++Short hand for: --edk --kazaa --gnu --dc
++.TP
++.B "--debug "
++Prints some information about each hit into kernel logfile. May 
++produce huge logfiles so beware!
diff --git a/src/patches/linux-2.6.32-imq-test2.patch b/src/patches/linux-2.6.32-imq-test2.patch
new file mode 100644 (file)
index 0000000..17f85c3
--- /dev/null
@@ -0,0 +1,1462 @@
+diff -U 5 -Nr linux-2.6.32/drivers/net/imq.c linux-2.6.32-imq/drivers/net/imq.c
+--- linux-2.6.32/drivers/net/imq.c     1970-01-01 02:00:00.000000000 +0200
++++ linux-2.6.32-imq/drivers/net/imq.c 2009-12-11 15:08:01.958734740 +0200
+@@ -0,0 +1,632 @@
++/*
++ *             Pseudo-driver for the intermediate queue device.
++ *
++ *             This program is free software; you can redistribute it and/or
++ *             modify it under the terms of the GNU General Public License
++ *             as published by the Free Software Foundation; either version
++ *             2 of the License, or (at your option) any later version.
++ *
++ * Authors:    Patrick McHardy, <kaber@trash.net>
++ *
++ *            The first version was written by Martin Devera, <devik@cdi.cz>
++ *
++ * Credits:    Jan Rafaj <imq2t@cedric.vabo.cz>
++ *              - Update patch to 2.4.21
++ *             Sebastian Strollo <sstrollo@nortelnetworks.com>
++ *              - Fix "Dead-loop on netdevice imq"-issue
++ *             Marcel Sebek <sebek64@post.cz>
++ *              - Update to 2.6.2-rc1
++ *
++ *           After some time of inactivity there is a group taking care
++ *           of IMQ again: http://www.linuximq.net
++ *
++ *
++ *           2004/06/30 - New version of IMQ patch to kernels <=2.6.7
++ *             including the following changes:
++ *
++ *           - Correction of ipv6 support "+"s issue (Hasso Tepper)
++ *           - Correction of imq_init_devs() issue that resulted in
++ *           kernel OOPS unloading IMQ as module (Norbert Buchmuller)
++ *           - Addition of functionality to choose number of IMQ devices
++ *           during kernel config (Andre Correa)
++ *           - Addition of functionality to choose how IMQ hooks on
++ *           PRE and POSTROUTING (after or before NAT) (Andre Correa)
++ *           - Cosmetic corrections (Norbert Buchmuller) (Andre Correa)
++ *
++ *
++ *             2005/12/16 - IMQ versions between 2.6.7 and 2.6.13 were
++ *             released with almost no problems. 2.6.14-x was released
++ *             with some important changes: nfcache was removed; After
++ *             some weeks of trouble we figured out that some IMQ fields
++ *             in skb were missing in skbuff.c - skb_clone and copy_skb_header.
++ *             These functions are correctly patched by this new patch version.
++ *
++ *             Thanks for all who helped to figure out all the problems with
++ *             2.6.14.x: Patrick McHardy, Rune Kock, VeNoMouS, Max CtRiX,
++ *             Kevin Shanahan, Richard Lucassen, Valery Dachev (hopefully
++ *             I didn't forget anybody). I apologize again for my lack of time.
++ *
++ *
++ *             2008/06/17 - 2.6.25 - Changed imq.c to use qdisc_run() instead 
++ *             of qdisc_restart() and moved qdisc_run() to tasklet to avoid
++ *             recursive locking. New initialization routines to fix 'rmmod' not
++ *             working anymore. Used code from ifb.c. (Jussi Kivilinna)
++ *
++ *             2008/08/06 - 2.6.26 - (JK)
++ *              - Replaced tasklet with 'netif_schedule()'.
++ *              - Cleaned up and added comments for imq_nf_queue().
++ *
++ *             2009/04/12
++ *              - Add skb_save_cb/skb_restore_cb helper functions for backuping
++ *                control buffer. This is needed because qdisc-layer on kernels
++ *                2.6.27 and newer overwrite control buffer. (Jussi Kivilinna)
++ *              - Add better locking for IMQ device. Hopefully this will solve
++ *                SMP issues. (Jussi Kivilinna)
++ *              - Port to 2.6.27
++ *              - Port to 2.6.28
++ *              - Port to 2.6.29 + fix rmmod not working
++ *
++ *             2009/04/20 - (Jussi Kivilinna)
++ *              - Use netdevice feature flags to avoid extra packet handling
++ *                by core networking layer and possibly increase performance.
++ *
++ *             2009/09/26 - (Jussi Kivilinna)
++ *              - Add imq_nf_reinject_lockless to fix deadlock with
++ *                imq_nf_queue/imq_nf_reinject.
++ *
++ *             2009/12/08 - (Jussi Kivilinna)
++ *              - Port to 2.6.32
++ *              - Add check for skb->nf_queue_entry==NULL in imq_dev_xmit()
++ *              - Also add better error checking for skb->nf_queue_entry usage
++ *
++ *           Also, many thanks to pablo Sebastian Greco for making the initial
++ *           patch and to those who helped the testing.
++ *
++ *             More info at: http://www.linuximq.net/ (Andre Correa)
++ */
++
++#include <linux/module.h>
++#include <linux/kernel.h>
++#include <linux/moduleparam.h>
++#include <linux/list.h>
++#include <linux/skbuff.h>
++#include <linux/netdevice.h>
++#include <linux/etherdevice.h>
++#include <linux/rtnetlink.h>
++#include <linux/if_arp.h>
++#include <linux/netfilter.h>
++#include <linux/netfilter_ipv4.h>
++#if defined(CONFIG_IPV6) || defined(CONFIG_IPV6_MODULE)
++      #include <linux/netfilter_ipv6.h>
++#endif
++#include <linux/imq.h>
++#include <net/pkt_sched.h>
++#include <net/netfilter/nf_queue.h>
++
++static nf_hookfn imq_nf_hook;
++
++static struct nf_hook_ops imq_ingress_ipv4 = {
++      .hook           = imq_nf_hook,
++      .owner          = THIS_MODULE,
++      .pf             = PF_INET,
++      .hooknum        = NF_INET_PRE_ROUTING,
++#if defined(CONFIG_IMQ_BEHAVIOR_BA) || defined(CONFIG_IMQ_BEHAVIOR_BB)
++      .priority       = NF_IP_PRI_MANGLE + 1
++#else
++      .priority       = NF_IP_PRI_NAT_DST + 1
++#endif
++};
++
++static struct nf_hook_ops imq_egress_ipv4 = {
++      .hook           = imq_nf_hook,
++      .owner          = THIS_MODULE,
++      .pf             = PF_INET,
++      .hooknum        = NF_INET_POST_ROUTING,
++#if defined(CONFIG_IMQ_BEHAVIOR_AA) || defined(CONFIG_IMQ_BEHAVIOR_BA)
++      .priority       = NF_IP_PRI_LAST
++#else
++      .priority       = NF_IP_PRI_NAT_SRC - 1
++#endif
++};
++
++#if defined(CONFIG_IPV6) || defined(CONFIG_IPV6_MODULE)
++static struct nf_hook_ops imq_ingress_ipv6 = {
++      .hook           = imq_nf_hook,
++      .owner          = THIS_MODULE,
++      .pf             = PF_INET6,
++      .hooknum        = NF_INET_PRE_ROUTING,
++#if defined(CONFIG_IMQ_BEHAVIOR_BA) || defined(CONFIG_IMQ_BEHAVIOR_BB)
++      .priority       = NF_IP6_PRI_MANGLE + 1
++#else
++      .priority       = NF_IP6_PRI_NAT_DST + 1
++#endif
++};
++
++static struct nf_hook_ops imq_egress_ipv6 = {
++      .hook           = imq_nf_hook,
++      .owner          = THIS_MODULE,
++      .pf             = PF_INET6,
++      .hooknum        = NF_INET_POST_ROUTING,
++#if defined(CONFIG_IMQ_BEHAVIOR_AA) || defined(CONFIG_IMQ_BEHAVIOR_BA)
++      .priority       = NF_IP6_PRI_LAST
++#else
++      .priority       = NF_IP6_PRI_NAT_SRC - 1
++#endif
++};
++#endif
++
++#if defined(CONFIG_IMQ_NUM_DEVS)
++static unsigned int numdevs = CONFIG_IMQ_NUM_DEVS;
++#else
++static unsigned int numdevs = IMQ_MAX_DEVS;
++#endif
++
++static DEFINE_SPINLOCK(imq_nf_queue_lock);
++
++static struct net_device *imq_devs_cache[IMQ_MAX_DEVS];
++
++
++static struct net_device_stats *imq_get_stats(struct net_device *dev)
++{
++      return &dev->stats;
++}
++
++/* called for packets kfree'd in qdiscs at places other than enqueue */
++static void imq_skb_destructor(struct sk_buff *skb)
++{
++      struct nf_queue_entry *entry = skb->nf_queue_entry;
++
++      skb->nf_queue_entry = NULL;
++
++      if (entry) {
++              nf_queue_entry_release_refs(entry);
++              kfree(entry);
++      }
++
++      skb_restore_cb(skb); /* kfree backup */
++}
++
++/* locking not needed when called from imq_nf_queue */
++static void imq_nf_reinject_lockless(struct nf_queue_entry *entry,
++                                              unsigned int verdict)
++{
++      int status;
++
++      if (!entry->next_outfn) {
++              nf_reinject(entry, verdict);
++              return;
++      }
++
++      status = entry->next_outfn(entry, entry->next_queuenum);
++      if (status < 0) {
++              nf_queue_entry_release_refs(entry);
++              kfree_skb(entry->skb);
++              kfree(entry);
++      }
++}
++
++static void imq_nf_reinject(struct nf_queue_entry *entry, unsigned int verdict)
++{
++      int status;
++
++      if (!entry->next_outfn) {
++              spin_lock_bh(&imq_nf_queue_lock);
++              nf_reinject(entry, verdict);
++              spin_unlock_bh(&imq_nf_queue_lock);
++              return;
++      }
++
++      rcu_read_lock();
++      local_bh_disable();
++      status = entry->next_outfn(entry, entry->next_queuenum);
++      local_bh_enable();
++      if (status < 0) {
++              nf_queue_entry_release_refs(entry);
++              kfree_skb(entry->skb);
++              kfree(entry);
++      }
++
++      rcu_read_unlock();
++}
++
++static netdev_tx_t imq_dev_xmit(struct sk_buff *skb, struct net_device *dev)
++{
++      struct nf_queue_entry *entry = skb->nf_queue_entry;
++
++      skb->nf_queue_entry = NULL;
++      dev->trans_start = jiffies;
++
++      dev->stats.tx_bytes += skb->len;
++      dev->stats.tx_packets++;
++
++      if (entry == NULL) {
++              /* We don't know what is going on here.. packet is queued for
++               * imq device, but (probably) not by us.
++               *
++               * If this packet was not send here by imq_nf_queue(), then
++               * skb_save_cb() was not used and skb_free() should not show:
++               *   WARNING: IMQ: kfree_skb: skb->cb_next:..
++               * and/or
++               *   WARNING: IMQ: kfree_skb: skb->nf_queue_entry...
++               *
++               * However if this message is shown, then IMQ is somehow broken
++               * and you should report this to linuximq.net.
++               */
++
++              /* imq_dev_xmit is black hole that eats all packets, report that
++               * we eat this packet happily and increase dropped counters.
++               */
++
++              dev->stats.tx_dropped++;
++              dev_kfree_skb(skb);
++
++              return NETDEV_TX_OK;
++      }
++
++      skb_restore_cb(skb); /* restore skb->cb */
++
++      skb->imq_flags = 0;
++      skb->destructor = NULL;
++
++      imq_nf_reinject(entry, NF_ACCEPT);
++
++      return NETDEV_TX_OK;
++}
++
++static int imq_nf_queue(struct nf_queue_entry *entry, unsigned queue_num)
++{
++      struct net_device *dev;
++      struct sk_buff *skb_orig, *skb, *skb_shared;
++      struct Qdisc *q;
++      struct netdev_queue *txq;
++      int users, index;
++      int retval = -EINVAL;
++
++      index = entry->skb->imq_flags & IMQ_F_IFMASK;
++      if (unlikely(index > numdevs - 1)) {
++              if (net_ratelimit())
++                      printk(KERN_WARNING
++                             "IMQ: invalid device specified, highest is %u\n",
++                             numdevs - 1);
++              retval = -EINVAL;
++              goto out;
++      }
++
++      /* check for imq device by index from cache */
++      dev = imq_devs_cache[index];
++      if (unlikely(!dev)) {
++              char buf[8];
++
++              /* get device by name and cache result */
++              snprintf(buf, sizeof(buf), "imq%d", index);
++              dev = dev_get_by_name(&init_net, buf);
++              if (!dev) {
++                      /* not found ?!*/
++                      BUG();
++                      retval = -ENODEV;
++                      goto out;
++              }
++
++              imq_devs_cache[index] = dev;
++              dev_put(dev);
++      }
++
++      if (unlikely(!(dev->flags & IFF_UP))) {
++              entry->skb->imq_flags = 0;
++              imq_nf_reinject_lockless(entry, NF_ACCEPT);
++              retval = 0;
++              goto out;
++      }
++      dev->last_rx = jiffies;
++
++      skb = entry->skb;
++      skb_orig = NULL;
++
++      /* skb has owner? => make clone */
++      if (unlikely(skb->destructor)) {
++              skb_orig = skb;
++              skb = skb_clone(skb, GFP_ATOMIC);
++              if (!skb) {
++                      retval = -ENOMEM;
++                      goto out;
++              }
++              entry->skb = skb;
++      }
++
++      skb->nf_queue_entry = entry;
++
++      dev->stats.rx_bytes += skb->len;
++      dev->stats.rx_packets++;
++
++      txq = dev_pick_tx(dev, skb);
++
++      q = rcu_dereference(txq->qdisc);
++      if (unlikely(!q->enqueue))
++              goto packet_not_eaten_by_imq_dev;
++
++      spin_lock_bh(qdisc_lock(q));
++
++      users = atomic_read(&skb->users);
++
++      skb_shared = skb_get(skb); /* increase reference count by one */
++      skb_save_cb(skb_shared); /* backup skb->cb, as qdisc layer will
++                                      overwrite it */
++      qdisc_enqueue_root(skb_shared, q); /* might kfree_skb */
++
++      if (likely(atomic_read(&skb_shared->users) == users + 1)) {
++              kfree_skb(skb_shared); /* decrease reference count by one */
++
++              skb->destructor = &imq_skb_destructor;
++
++              /* cloned? */
++              if (skb_orig)
++                      kfree_skb(skb_orig); /* free original */
++
++              spin_unlock_bh(qdisc_lock(q));
++
++              /* schedule qdisc dequeue */
++              __netif_schedule(q);
++
++              retval = 0;
++              goto out;
++      } else {
++              skb_restore_cb(skb_shared); /* restore skb->cb */
++              skb->nf_queue_entry = NULL;
++              /* qdisc dropped packet and decreased skb reference count of
++               * skb, so we don't really want to and try refree as that would
++               * actually destroy the skb. */
++              spin_unlock_bh(qdisc_lock(q));
++              goto packet_not_eaten_by_imq_dev;
++      }
++
++packet_not_eaten_by_imq_dev:
++      /* cloned? restore original */
++      if (skb_orig) {
++              kfree_skb(skb);
++              entry->skb = skb_orig;
++      }
++      retval = -1;
++out:
++      return retval;
++}
++
++static struct nf_queue_handler nfqh = {
++      .name  = "imq",
++      .outfn = imq_nf_queue,
++};
++
++static unsigned int imq_nf_hook(unsigned int hook, struct sk_buff *pskb,
++                              const struct net_device *indev,
++                              const struct net_device *outdev,
++                              int (*okfn)(struct sk_buff *))
++{
++      if (pskb->imq_flags & IMQ_F_ENQUEUE)
++              return NF_QUEUE;
++
++      return NF_ACCEPT;
++}
++
++static int imq_close(struct net_device *dev)
++{
++      netif_stop_queue(dev);
++      return 0;
++}
++
++static int imq_open(struct net_device *dev)
++{
++      netif_start_queue(dev);
++      return 0;
++}
++
++static const struct net_device_ops imq_netdev_ops = {
++      .ndo_open               = imq_open,
++      .ndo_stop               = imq_close,
++      .ndo_start_xmit         = imq_dev_xmit,
++      .ndo_get_stats          = imq_get_stats,
++};
++
++static void imq_setup(struct net_device *dev)
++{
++      dev->netdev_ops         = &imq_netdev_ops;
++      dev->type               = ARPHRD_VOID;
++      dev->mtu                = 16000;
++      dev->tx_queue_len       = 11000;
++      dev->flags              = IFF_NOARP;
++      dev->features           = NETIF_F_SG | NETIF_F_FRAGLIST |
++                                NETIF_F_GSO | NETIF_F_HW_CSUM |
++                                NETIF_F_HIGHDMA;
++      dev->priv_flags         &= ~IFF_XMIT_DST_RELEASE;
++}
++
++static int imq_validate(struct nlattr *tb[], struct nlattr *data[])
++{
++      int ret = 0;
++
++      if (tb[IFLA_ADDRESS]) {
++              if (nla_len(tb[IFLA_ADDRESS]) != ETH_ALEN) {
++                      ret = -EINVAL;
++                      goto end;
++              }
++              if (!is_valid_ether_addr(nla_data(tb[IFLA_ADDRESS]))) {
++                      ret = -EADDRNOTAVAIL;
++                      goto end;
++              }
++      }
++      return 0;
++end:
++      printk(KERN_WARNING "IMQ: imq_validate failed (%d)\n", ret);
++      return ret;
++}
++
++static struct rtnl_link_ops imq_link_ops __read_mostly = {
++      .kind           = "imq",
++      .priv_size      = 0,
++      .setup          = imq_setup,
++      .validate       = imq_validate,
++};
++
++static int __init imq_init_hooks(void)
++{
++      int err;
++
++      nf_register_queue_imq_handler(&nfqh);
++
++      err = nf_register_hook(&imq_ingress_ipv4);
++      if (err)
++              goto err1;
++
++      err = nf_register_hook(&imq_egress_ipv4);
++      if (err)
++              goto err2;
++
++#if defined(CONFIG_IPV6) || defined(CONFIG_IPV6_MODULE)
++      err = nf_register_hook(&imq_ingress_ipv6);
++      if (err)
++              goto err3;
++
++      err = nf_register_hook(&imq_egress_ipv6);
++      if (err)
++              goto err4;
++#endif
++
++      return 0;
++
++#if defined(CONFIG_IPV6) || defined(CONFIG_IPV6_MODULE)
++err4:
++      nf_unregister_hook(&imq_ingress_ipv6);
++err3:
++      nf_unregister_hook(&imq_egress_ipv4);
++#endif
++err2:
++      nf_unregister_hook(&imq_ingress_ipv4);
++err1:
++      nf_unregister_queue_imq_handler();
++      return err;
++}
++
++static int __init imq_init_one(int index)
++{
++      struct net_device *dev;
++      int ret;
++
++      dev = alloc_netdev(0, "imq%d", imq_setup);
++      if (!dev)
++              return -ENOMEM;
++
++      ret = dev_alloc_name(dev, dev->name);
++      if (ret < 0)
++              goto fail;
++
++      dev->rtnl_link_ops = &imq_link_ops;
++      ret = register_netdevice(dev);
++      if (ret < 0)
++              goto fail;
++
++      return 0;
++fail:
++      free_netdev(dev);
++      return ret;
++}
++
++static int __init imq_init_devs(void)
++{
++      int err, i;
++
++      if (numdevs < 1 || numdevs > IMQ_MAX_DEVS) {
++              printk(KERN_ERR "IMQ: numdevs has to be betweed 1 and %u\n",
++                     IMQ_MAX_DEVS);
++              return -EINVAL;
++      }
++
++      rtnl_lock();
++      err = __rtnl_link_register(&imq_link_ops);
++
++      for (i = 0; i < numdevs && !err; i++)
++              err = imq_init_one(i);
++
++      if (err) {
++              __rtnl_link_unregister(&imq_link_ops);
++              memset(imq_devs_cache, 0, sizeof(imq_devs_cache));
++      }
++      rtnl_unlock();
++
++      return err;
++}
++
++static int __init imq_init_module(void)
++{
++      int err;
++
++#if defined(CONFIG_IMQ_NUM_DEVS)
++      BUILD_BUG_ON(CONFIG_IMQ_NUM_DEVS > 16);
++      BUILD_BUG_ON(CONFIG_IMQ_NUM_DEVS < 2);
++      BUILD_BUG_ON(CONFIG_IMQ_NUM_DEVS - 1 > IMQ_F_IFMASK);
++#endif
++
++      err = imq_init_devs();
++      if (err) {
++              printk(KERN_ERR "IMQ: Error trying imq_init_devs(net)\n");
++              return err;
++      }
++
++      err = imq_init_hooks();
++      if (err) {
++              printk(KERN_ERR "IMQ: Error trying imq_init_hooks()\n");
++              rtnl_link_unregister(&imq_link_ops);
++              memset(imq_devs_cache, 0, sizeof(imq_devs_cache));
++              return err;
++      }
++
++      printk(KERN_INFO "IMQ driver loaded successfully.\n");
++
++#if defined(CONFIG_IMQ_BEHAVIOR_BA) || defined(CONFIG_IMQ_BEHAVIOR_BB)
++      printk(KERN_INFO "\tHooking IMQ before NAT on PREROUTING.\n");
++#else
++      printk(KERN_INFO "\tHooking IMQ after NAT on PREROUTING.\n");
++#endif
++#if defined(CONFIG_IMQ_BEHAVIOR_AB) || defined(CONFIG_IMQ_BEHAVIOR_BB)
++      printk(KERN_INFO "\tHooking IMQ before NAT on POSTROUTING.\n");
++#else
++      printk(KERN_INFO "\tHooking IMQ after NAT on POSTROUTING.\n");
++#endif
++
++      return 0;
++}
++
++static void __exit imq_unhook(void)
++{
++#if defined(CONFIG_IPV6) || defined(CONFIG_IPV6_MODULE)
++      nf_unregister_hook(&imq_ingress_ipv6);
++      nf_unregister_hook(&imq_egress_ipv6);
++#endif
++      nf_unregister_hook(&imq_ingress_ipv4);
++      nf_unregister_hook(&imq_egress_ipv4);
++
++      nf_unregister_queue_imq_handler();
++}
++
++static void __exit imq_cleanup_devs(void)
++{
++      rtnl_link_unregister(&imq_link_ops);
++      memset(imq_devs_cache, 0, sizeof(imq_devs_cache));
++}
++
++static void __exit imq_exit_module(void)
++{
++      imq_unhook();
++      imq_cleanup_devs();
++      printk(KERN_INFO "IMQ driver unloaded successfully.\n");
++}
++
++module_init(imq_init_module);
++module_exit(imq_exit_module);
++
++module_param(numdevs, int, 0);
++MODULE_PARM_DESC(numdevs, "number of IMQ devices (how many imq* devices will "
++                      "be created)");
++MODULE_AUTHOR("http://www.linuximq.net");
++MODULE_DESCRIPTION("Pseudo-driver for the intermediate queue device. See "
++                      "http://www.linuximq.net/ for more information.");
++MODULE_LICENSE("GPL");
++MODULE_ALIAS_RTNL_LINK("imq");
++
+diff -U 5 -Nr linux-2.6.32/drivers/net/Kconfig linux-2.6.32-imq/drivers/net/Kconfig
+--- linux-2.6.32/drivers/net/Kconfig   2009-12-03 05:51:21.000000000 +0200
++++ linux-2.6.32-imq/drivers/net/Kconfig       2009-12-11 14:16:42.678730699 +0200
+@@ -107,10 +107,133 @@
+         <http://www.tldp.org/docs.html#howto>.
+         To compile this driver as a module, choose M here: the module
+         will be called eql.  If unsure, say N.
++config IMQ
++      tristate "IMQ (intermediate queueing device) support"
++      depends on NETDEVICES && NETFILTER
++      ---help---
++        The IMQ device(s) is used as placeholder for QoS queueing
++        disciplines. Every packet entering/leaving the IP stack can be
++        directed through the IMQ device where it's enqueued/dequeued to the
++        attached qdisc. This allows you to treat network devices as classes
++        and distribute bandwidth among them. Iptables is used to specify
++        through which IMQ device, if any, packets travel.
++
++        More information at: http://www.linuximq.net/
++
++        To compile this driver as a module, choose M here: the module
++        will be called imq.  If unsure, say N.
++
++choice
++      prompt "IMQ behavior (PRE/POSTROUTING)"
++      depends on IMQ
++      default IMQ_BEHAVIOR_AB
++      help
++
++              This settings defines how IMQ behaves in respect to its
++              hooking in PREROUTING and POSTROUTING.
++
++              IMQ can work in any of the following ways:
++
++                  PREROUTING   |      POSTROUTING
++              -----------------|-------------------
++              #1  After NAT    |      After NAT
++              #2  After NAT    |      Before NAT
++              #3  Before NAT   |      After NAT
++              #4  Before NAT   |      Before NAT
++
++              The default behavior is to hook before NAT on PREROUTING
++              and after NAT on POSTROUTING (#3).
++
++              This settings are specially usefull when trying to use IMQ
++              to shape NATed clients.
++
++              More information can be found at: www.linuximq.net
++
++              If not sure leave the default settings alone.
++
++config IMQ_BEHAVIOR_AA
++      bool "IMQ AA"
++      help
++              This settings defines how IMQ behaves in respect to its
++              hooking in PREROUTING and POSTROUTING.
++
++              Choosing this option will make IMQ hook like this:
++
++              PREROUTING:   After NAT
++              POSTROUTING:  After NAT
++
++              More information can be found at: www.linuximq.net
++
++              If not sure leave the default settings alone.
++
++config IMQ_BEHAVIOR_AB
++      bool "IMQ AB"
++      help
++              This settings defines how IMQ behaves in respect to its
++              hooking in PREROUTING and POSTROUTING.
++
++              Choosing this option will make IMQ hook like this:
++
++              PREROUTING:   After NAT
++              POSTROUTING:  Before NAT
++
++              More information can be found at: www.linuximq.net
++
++              If not sure leave the default settings alone.
++
++config IMQ_BEHAVIOR_BA
++      bool "IMQ BA"
++      help
++              This settings defines how IMQ behaves in respect to its
++              hooking in PREROUTING and POSTROUTING.
++
++              Choosing this option will make IMQ hook like this:
++
++              PREROUTING:   Before NAT
++              POSTROUTING:  After NAT
++
++              More information can be found at: www.linuximq.net
++
++              If not sure leave the default settings alone.
++
++config IMQ_BEHAVIOR_BB
++      bool "IMQ BB"
++      help
++              This settings defines how IMQ behaves in respect to its
++              hooking in PREROUTING and POSTROUTING.
++
++              Choosing this option will make IMQ hook like this:
++
++              PREROUTING:   Before NAT
++              POSTROUTING:  Before NAT
++
++              More information can be found at: www.linuximq.net
++
++              If not sure leave the default settings alone.
++
++endchoice
++
++config IMQ_NUM_DEVS
++
++      int "Number of IMQ devices"
++      range 2 16
++      depends on IMQ
++      default "16"
++      help
++
++              This settings defines how many IMQ devices will be
++              created.
++
++              The default value is 16.
++
++              More information can be found at: www.linuximq.net
++
++              If not sure leave the default settings alone.
++
+ config TUN
+       tristate "Universal TUN/TAP device driver support"
+       select CRC32
+       ---help---
+         TUN/TAP provides packet reception and transmission for user space
+diff -U 5 -Nr linux-2.6.32/drivers/net/Makefile linux-2.6.32-imq/drivers/net/Makefile
+--- linux-2.6.32/drivers/net/Makefile  2009-12-03 05:51:21.000000000 +0200
++++ linux-2.6.32-imq/drivers/net/Makefile      2009-12-11 14:16:42.678730699 +0200
+@@ -163,10 +163,11 @@
+ obj-$(CONFIG_SLHC) += slhc.o
+ obj-$(CONFIG_XEN_NETDEV_FRONTEND) += xen-netfront.o
+ obj-$(CONFIG_DUMMY) += dummy.o
++obj-$(CONFIG_IMQ) += imq.o
+ obj-$(CONFIG_IFB) += ifb.o
+ obj-$(CONFIG_MACVLAN) += macvlan.o
+ obj-$(CONFIG_DE600) += de600.o
+ obj-$(CONFIG_DE620) += de620.o
+ obj-$(CONFIG_LANCE) += lance.o
+diff -U 5 -Nr linux-2.6.32/include/linux/imq.h linux-2.6.32-imq/include/linux/imq.h
+--- linux-2.6.32/include/linux/imq.h   1970-01-01 02:00:00.000000000 +0200
++++ linux-2.6.32-imq/include/linux/imq.h       2009-12-11 14:16:42.678730699 +0200
+@@ -0,0 +1,13 @@
++#ifndef _IMQ_H
++#define _IMQ_H
++
++/* IFMASK (16 device indexes, 0 to 15) and flag(s) fit in 5 bits */
++#define IMQ_F_BITS    5
++
++#define IMQ_F_IFMASK  0x0f
++#define IMQ_F_ENQUEUE 0x10
++
++#define IMQ_MAX_DEVS  (IMQ_F_IFMASK + 1)
++
++#endif /* _IMQ_H */
++
+diff -U 5 -Nr linux-2.6.32/include/linux/netdevice.h linux-2.6.32-imq/include/linux/netdevice.h
+--- linux-2.6.32/include/linux/netdevice.h     2009-12-03 05:51:21.000000000 +0200
++++ linux-2.6.32-imq/include/linux/netdevice.h 2009-12-11 14:16:42.679730960 +0200
+@@ -1112,10 +1112,11 @@
+ extern struct net_device      *__dev_get_by_name(struct net *net, const char *name);
+ extern int            dev_alloc_name(struct net_device *dev, const char *name);
+ extern int            dev_open(struct net_device *dev);
+ extern int            dev_close(struct net_device *dev);
+ extern void           dev_disable_lro(struct net_device *dev);
++extern struct netdev_queue *dev_pick_tx(struct net_device *dev, struct sk_buff *skb);
+ extern int            dev_queue_xmit(struct sk_buff *skb);
+ extern int            register_netdevice(struct net_device *dev);
+ extern void           unregister_netdevice(struct net_device *dev);
+ extern void           free_netdev(struct net_device *dev);
+ extern void           synchronize_net(void);
+diff -U 5 -Nr linux-2.6.32/include/linux/netfilter/xt_IMQ.h linux-2.6.32-imq/include/linux/netfilter/xt_IMQ.h
+--- linux-2.6.32/include/linux/netfilter/xt_IMQ.h      1970-01-01 02:00:00.000000000 +0200
++++ linux-2.6.32-imq/include/linux/netfilter/xt_IMQ.h  2009-12-11 14:16:42.679730960 +0200
+@@ -0,0 +1,9 @@
++#ifndef _XT_IMQ_H
++#define _XT_IMQ_H
++
++struct xt_imq_info {
++      unsigned int todev;     /* target imq device */
++};
++
++#endif /* _XT_IMQ_H */
++
+diff -U 5 -Nr linux-2.6.32/include/linux/netfilter_ipv4/ipt_IMQ.h linux-2.6.32-imq/include/linux/netfilter_ipv4/ipt_IMQ.h
+--- linux-2.6.32/include/linux/netfilter_ipv4/ipt_IMQ.h        1970-01-01 02:00:00.000000000 +0200
++++ linux-2.6.32-imq/include/linux/netfilter_ipv4/ipt_IMQ.h    2009-12-11 14:16:42.679730960 +0200
+@@ -0,0 +1,10 @@
++#ifndef _IPT_IMQ_H
++#define _IPT_IMQ_H
++
++/* Backwards compatibility for old userspace */
++#include <linux/netfilter/xt_IMQ.h>
++
++#define ipt_imq_info xt_imq_info
++
++#endif /* _IPT_IMQ_H */
++
+diff -U 5 -Nr linux-2.6.32/include/linux/netfilter_ipv6/ip6t_IMQ.h linux-2.6.32-imq/include/linux/netfilter_ipv6/ip6t_IMQ.h
+--- linux-2.6.32/include/linux/netfilter_ipv6/ip6t_IMQ.h       1970-01-01 02:00:00.000000000 +0200
++++ linux-2.6.32-imq/include/linux/netfilter_ipv6/ip6t_IMQ.h   2009-12-11 14:16:42.679730960 +0200
+@@ -0,0 +1,10 @@
++#ifndef _IP6T_IMQ_H
++#define _IP6T_IMQ_H
++
++/* Backwards compatibility for old userspace */
++#include <linux/netfilter/xt_IMQ.h>
++
++#define ip6t_imq_info xt_imq_info
++
++#endif /* _IP6T_IMQ_H */
++
+diff -U 5 -Nr linux-2.6.32/include/linux/skbuff.h linux-2.6.32-imq/include/linux/skbuff.h
+--- linux-2.6.32/include/linux/skbuff.h        2009-12-03 05:51:21.000000000 +0200
++++ linux-2.6.32-imq/include/linux/skbuff.h    2009-12-11 14:16:42.680730834 +0200
+@@ -27,10 +27,13 @@
+ #include <linux/textsearch.h>
+ #include <net/checksum.h>
+ #include <linux/rcupdate.h>
+ #include <linux/dmaengine.h>
+ #include <linux/hrtimer.h>
++#if defined(CONFIG_IMQ) || defined(CONFIG_IMQ_MODULE)
++#include <linux/imq.h>
++#endif
+ /* Don't change this without changing skb_csum_unnecessary! */
+ #define CHECKSUM_NONE 0
+ #define CHECKSUM_UNNECESSARY 1
+ #define CHECKSUM_COMPLETE 2
+@@ -328,10 +331,13 @@
+        * layer. Please put your private variables there. If you
+        * want to keep them across layers you have to do a skb_clone()
+        * first. This is owned by whoever has the skb queued ATM.
+        */
+       char                    cb[48];
++#if defined(CONFIG_IMQ) || defined(CONFIG_IMQ_MODULE)
++      void                    *cb_next;
++#endif
+       unsigned int            len,
+                               data_len;
+       __u16                   mac_len,
+                               hdr_len;
+@@ -360,10 +366,13 @@
+       void                    (*destructor)(struct sk_buff *skb);
+ #if defined(CONFIG_NF_CONNTRACK) || defined(CONFIG_NF_CONNTRACK_MODULE)
+       struct nf_conntrack     *nfct;
+       struct sk_buff          *nfct_reasm;
+ #endif
++#if defined(CONFIG_IMQ) || defined(CONFIG_IMQ_MODULE)
++      struct nf_queue_entry   *nf_queue_entry;
++#endif
+ #ifdef CONFIG_BRIDGE_NETFILTER
+       struct nf_bridge_info   *nf_bridge;
+ #endif
+       int                     iif;
+@@ -381,10 +390,14 @@
+ #endif
+       kmemcheck_bitfield_end(flags2);
+       /* 0/14 bit hole */
++#if defined(CONFIG_IMQ) || defined(CONFIG_IMQ_MODULE)
++      __u8                    imq_flags:IMQ_F_BITS;
++#endif
++
+ #ifdef CONFIG_NET_DMA
+       dma_cookie_t            dma_cookie;
+ #endif
+ #ifdef CONFIG_NETWORK_SECMARK
+       __u32                   secmark;
+@@ -435,10 +448,16 @@
+ static inline struct rtable *skb_rtable(const struct sk_buff *skb)
+ {
+       return (struct rtable *)skb_dst(skb);
+ }
++
++#if defined(CONFIG_IMQ) || defined(CONFIG_IMQ_MODULE)
++extern int skb_save_cb(struct sk_buff *skb);
++extern int skb_restore_cb(struct sk_buff *skb);
++#endif
++
+ extern void kfree_skb(struct sk_buff *skb);
+ extern void consume_skb(struct sk_buff *skb);
+ extern void          __kfree_skb(struct sk_buff *skb);
+ extern struct sk_buff *__alloc_skb(unsigned int size,
+                                  gfp_t priority, int fclone, int node);
+@@ -1970,10 +1989,14 @@
+       nf_conntrack_get(src->nfct);
+       dst->nfctinfo = src->nfctinfo;
+       dst->nfct_reasm = src->nfct_reasm;
+       nf_conntrack_get_reasm(src->nfct_reasm);
+ #endif
++#if defined(CONFIG_IMQ) || defined(CONFIG_IMQ_MODULE)
++      dst->imq_flags = src->imq_flags;
++      dst->nf_queue_entry = src->nf_queue_entry;
++#endif
+ #ifdef CONFIG_BRIDGE_NETFILTER
+       dst->nf_bridge  = src->nf_bridge;
+       nf_bridge_get(src->nf_bridge);
+ #endif
+ }
+diff -U 5 -Nr linux-2.6.32/include/net/netfilter/nf_queue.h linux-2.6.32-imq/include/net/netfilter/nf_queue.h
+--- linux-2.6.32/include/net/netfilter/nf_queue.h      2009-12-03 05:51:21.000000000 +0200
++++ linux-2.6.32-imq/include/net/netfilter/nf_queue.h  2009-12-11 14:16:42.680730834 +0200
+@@ -11,10 +11,16 @@
+       u_int8_t                pf;
+       unsigned int            hook;
+       struct net_device       *indev;
+       struct net_device       *outdev;
+       int                     (*okfn)(struct sk_buff *);
++
++#if defined(CONFIG_IMQ) || defined(CONFIG_IMQ_MODULE)
++      int                     (*next_outfn)(struct nf_queue_entry *entry,
++                                            unsigned int queuenum);
++      unsigned int            next_queuenum;
++#endif
+ };
+ #define nf_queue_entry_reroute(x) ((void *)x + sizeof(struct nf_queue_entry))
+ /* Packet queuing */
+@@ -28,7 +34,13 @@
+                                    const struct nf_queue_handler *qh);
+ extern int nf_unregister_queue_handler(u_int8_t pf,
+                                      const struct nf_queue_handler *qh);
+ extern void nf_unregister_queue_handlers(const struct nf_queue_handler *qh);
+ extern void nf_reinject(struct nf_queue_entry *entry, unsigned int verdict);
++extern void nf_queue_entry_release_refs(struct nf_queue_entry *entry);
++
++#if defined(CONFIG_IMQ) || defined(CONFIG_IMQ_MODULE)
++extern void nf_register_queue_imq_handler(const struct nf_queue_handler *qh);
++extern void nf_unregister_queue_imq_handler(void);
++#endif
+ #endif /* _NF_QUEUE_H */
+diff -U 5 -Nr linux-2.6.32/net/core/dev.c linux-2.6.32-imq/net/core/dev.c
+--- linux-2.6.32/net/core/dev.c        2009-12-03 05:51:21.000000000 +0200
++++ linux-2.6.32-imq/net/core/dev.c    2009-12-11 14:16:42.681731014 +0200
+@@ -94,10 +94,13 @@
+ #include <linux/notifier.h>
+ #include <linux/skbuff.h>
+ #include <net/net_namespace.h>
+ #include <net/sock.h>
+ #include <linux/rtnetlink.h>
++#if defined(CONFIG_IMQ) || defined(CONFIG_IMQ_MODULE)
++#include <linux/imq.h>
++#endif
+ #include <linux/proc_fs.h>
+ #include <linux/seq_file.h>
+ #include <linux/stat.h>
+ #include <linux/if_bridge.h>
+ #include <linux/if_macvlan.h>
+@@ -1702,11 +1705,15 @@
+ {
+       const struct net_device_ops *ops = dev->netdev_ops;
+       int rc;
+       if (likely(!skb->next)) {
+-              if (!list_empty(&ptype_all))
++              if (!list_empty(&ptype_all)
++#if defined(CONFIG_IMQ) || defined(CONFIG_IMQ_MODULE)
++                  && !(skb->imq_flags & IMQ_F_ENQUEUE)
++#endif
++                  )
+                       dev_queue_xmit_nit(skb, dev);
+               if (netif_needs_gso(dev, skb)) {
+                       if (unlikely(dev_gso_segment(skb)))
+                               goto out_kfree_skb;
+@@ -1787,12 +1794,11 @@
+       return (u16) (((u64) hash * dev->real_num_tx_queues) >> 32);
+ }
+ EXPORT_SYMBOL(skb_tx_hash);
+-static struct netdev_queue *dev_pick_tx(struct net_device *dev,
+-                                      struct sk_buff *skb)
++struct netdev_queue *dev_pick_tx(struct net_device *dev, struct sk_buff *skb)
+ {
+       const struct net_device_ops *ops = dev->netdev_ops;
+       u16 queue_index = 0;
+       if (ops->ndo_select_queue)
+@@ -1801,10 +1807,11 @@
+               queue_index = skb_tx_hash(dev, skb);
+       skb_set_queue_mapping(skb, queue_index);
+       return netdev_get_tx_queue(dev, queue_index);
+ }
++EXPORT_SYMBOL(dev_pick_tx);
+ static inline int __dev_xmit_skb(struct sk_buff *skb, struct Qdisc *q,
+                                struct net_device *dev,
+                                struct netdev_queue *txq)
+ {
+diff -U 5 -Nr linux-2.6.32/net/core/skbuff.c linux-2.6.32-imq/net/core/skbuff.c
+--- linux-2.6.32/net/core/skbuff.c     2009-12-03 05:51:21.000000000 +0200
++++ linux-2.6.32-imq/net/core/skbuff.c 2009-12-11 15:12:39.294981618 +0200
+@@ -70,10 +70,13 @@
+ #include "kmap_skb.h"
+ static struct kmem_cache *skbuff_head_cache __read_mostly;
+ static struct kmem_cache *skbuff_fclone_cache __read_mostly;
++#if defined(CONFIG_IMQ) || defined(CONFIG_IMQ_MODULE)
++static struct kmem_cache *skbuff_cb_store_cache __read_mostly;
++#endif
+ static void sock_pipe_buf_release(struct pipe_inode_info *pipe,
+                                 struct pipe_buffer *buf)
+ {
+       put_page(buf->page);
+@@ -89,10 +92,87 @@
+                              struct pipe_buffer *buf)
+ {
+       return 1;
+ }
++#if defined(CONFIG_IMQ) || defined(CONFIG_IMQ_MODULE)
++/* Control buffer save/restore for IMQ devices */
++struct skb_cb_table {
++      void                    *cb_next;
++      atomic_t                refcnt;
++      char                    cb[48];
++};
++
++static DEFINE_SPINLOCK(skb_cb_store_lock);
++
++int skb_save_cb(struct sk_buff *skb)
++{
++      struct skb_cb_table *next;
++
++      next = kmem_cache_alloc(skbuff_cb_store_cache, GFP_ATOMIC);
++      if (!next)
++              return -ENOMEM;
++
++      BUILD_BUG_ON(sizeof(skb->cb) != sizeof(next->cb));
++
++      memcpy(next->cb, skb->cb, sizeof(skb->cb));
++      next->cb_next = skb->cb_next;
++
++      atomic_set(&next->refcnt, 1);
++
++      skb->cb_next = next;
++      return 0;
++}
++EXPORT_SYMBOL(skb_save_cb);
++
++int skb_restore_cb(struct sk_buff *skb)
++{
++      struct skb_cb_table *next;
++
++      if (!skb->cb_next)
++              return 0;
++
++      next = skb->cb_next;
++
++      BUILD_BUG_ON(sizeof(skb->cb) != sizeof(next->cb));
++
++      memcpy(skb->cb, next->cb, sizeof(skb->cb));
++      skb->cb_next = next->cb_next;
++
++      spin_lock(&skb_cb_store_lock);
++
++      if (atomic_dec_and_test(&next->refcnt)) {
++              kmem_cache_free(skbuff_cb_store_cache, next);
++      }
++
++      spin_unlock(&skb_cb_store_lock);
++
++      return 0;
++}
++EXPORT_SYMBOL(skb_restore_cb);
++
++static void skb_copy_stored_cb(struct sk_buff *new, const struct sk_buff *__old)
++{
++      struct skb_cb_table *next;
++      struct sk_buff *old;
++
++      if (!__old->cb_next) {
++              new->cb_next = NULL;
++              return;
++      }
++
++      spin_lock(&skb_cb_store_lock);
++
++      old = (struct sk_buff *)__old;
++
++      next = old->cb_next;
++      atomic_inc(&next->refcnt);
++      new->cb_next = next;
++
++      spin_unlock(&skb_cb_store_lock);
++}
++#endif
+ /* Pipe buffer operations for a socket. */
+ static struct pipe_buf_operations sock_pipe_buf_ops = {
+       .can_merge = 0,
+       .map = generic_pipe_buf_map,
+@@ -396,10 +476,30 @@
+ #endif
+       if (skb->destructor) {
+               WARN_ON(in_irq());
+               skb->destructor(skb);
+       }
++#if defined(CONFIG_IMQ) || defined(CONFIG_IMQ_MODULE)
++      /* This should not happen. When it does, avoid memleak by restoring
++      the chain of cb-backups. */
++      while(skb->cb_next != NULL) {
++              if (net_ratelimit())
++                      printk(KERN_WARNING "IMQ: kfree_skb: skb->cb_next: "
++                              "%08x\n", (unsigned int)skb->cb_next);
++
++              skb_restore_cb(skb);
++      }
++      /* This should not happen either, nf_queue_entry is nullified in
++       * imq_dev_xmit(). If we have non-NULL nf_queue_entry then we are
++       * leaking entry pointers, maybe memory. We don't know if this is
++       * pointer to already freed memory, or should this be freed.
++       * If this happens we need to add refcounting, etc for nf_queue_entry.
++       */
++      if (skb->nf_queue_entry && net_ratelimit())
++              printk(KERN_WARNING
++                              "IMQ: kfree_skb: skb->nf_queue_entry != NULL");
++#endif
+ #if defined(CONFIG_NF_CONNTRACK) || defined(CONFIG_NF_CONNTRACK_MODULE)
+       nf_conntrack_put(skb->nfct);
+       nf_conntrack_put_reasm(skb->nfct_reasm);
+ #endif
+ #ifdef CONFIG_BRIDGE_NETFILTER
+@@ -533,10 +633,13 @@
+       skb_dst_set(new, dst_clone(skb_dst(old)));
+ #ifdef CONFIG_XFRM
+       new->sp                 = secpath_get(old->sp);
+ #endif
+       memcpy(new->cb, old->cb, sizeof(old->cb));
++#if defined(CONFIG_IMQ) || defined(CONFIG_IMQ_MODULE)
++      skb_copy_stored_cb(new, old);
++#endif
+       new->csum               = old->csum;
+       new->local_df           = old->local_df;
+       new->pkt_type           = old->pkt_type;
+       new->ip_summed          = old->ip_summed;
+       skb_copy_queue_mapping(new, old);
+@@ -2774,10 +2877,17 @@
+                                               (2*sizeof(struct sk_buff)) +
+                                               sizeof(atomic_t),
+                                               0,
+                                               SLAB_HWCACHE_ALIGN|SLAB_PANIC,
+                                               NULL);
++#if defined(CONFIG_IMQ) || defined(CONFIG_IMQ_MODULE)
++      skbuff_cb_store_cache = kmem_cache_create("skbuff_cb_store_cache",
++                                                sizeof(struct skb_cb_table),
++                                                0,
++                                                SLAB_HWCACHE_ALIGN|SLAB_PANIC,
++                                                NULL);
++#endif
+ }
+ /**
+  *    skb_to_sgvec - Fill a scatter-gather list from a socket buffer
+  *    @skb: Socket buffer containing the buffers to be mapped
+diff -U 5 -Nr linux-2.6.32/net/netfilter/Kconfig linux-2.6.32-imq/net/netfilter/Kconfig
+--- linux-2.6.32/net/netfilter/Kconfig 2009-12-03 05:51:21.000000000 +0200
++++ linux-2.6.32-imq/net/netfilter/Kconfig     2009-12-11 14:16:42.681731014 +0200
+@@ -394,10 +394,22 @@
+           echo netfilter-ssh > /sys/class/leds/<ledname>/trigger
+         For more information on the LEDs available on your system, see
+         Documentation/leds-class.txt
++config NETFILTER_XT_TARGET_IMQ
++        tristate '"IMQ" target support'
++      depends on NETFILTER_XTABLES
++      depends on IP_NF_MANGLE || IP6_NF_MANGLE
++      select IMQ
++      default m if NETFILTER_ADVANCED=n
++        help
++          This option adds a `IMQ' target which is used to specify if and
++          to which imq device packets should get enqueued/dequeued.
++
++          To compile it as a module, choose M here.  If unsure, say N.
++
+ config NETFILTER_XT_TARGET_MARK
+       tristate '"MARK" target support'
+       default m if NETFILTER_ADVANCED=n
+       help
+         This option adds a `MARK' target, which allows you to create rules
+diff -U 5 -Nr linux-2.6.32/net/netfilter/Makefile linux-2.6.32-imq/net/netfilter/Makefile
+--- linux-2.6.32/net/netfilter/Makefile        2009-12-03 05:51:21.000000000 +0200
++++ linux-2.6.32-imq/net/netfilter/Makefile    2009-12-11 14:16:42.681731014 +0200
+@@ -44,10 +44,11 @@
+ obj-$(CONFIG_NETFILTER_XT_TARGET_CLASSIFY) += xt_CLASSIFY.o
+ obj-$(CONFIG_NETFILTER_XT_TARGET_CONNMARK) += xt_CONNMARK.o
+ obj-$(CONFIG_NETFILTER_XT_TARGET_CONNSECMARK) += xt_CONNSECMARK.o
+ obj-$(CONFIG_NETFILTER_XT_TARGET_DSCP) += xt_DSCP.o
+ obj-$(CONFIG_NETFILTER_XT_TARGET_HL) += xt_HL.o
++obj-$(CONFIG_NETFILTER_XT_TARGET_IMQ) += xt_IMQ.o
+ obj-$(CONFIG_NETFILTER_XT_TARGET_LED) += xt_LED.o
+ obj-$(CONFIG_NETFILTER_XT_TARGET_MARK) += xt_MARK.o
+ obj-$(CONFIG_NETFILTER_XT_TARGET_NFLOG) += xt_NFLOG.o
+ obj-$(CONFIG_NETFILTER_XT_TARGET_NFQUEUE) += xt_NFQUEUE.o
+ obj-$(CONFIG_NETFILTER_XT_TARGET_NOTRACK) += xt_NOTRACK.o
+diff -U 5 -Nr linux-2.6.32/net/netfilter/nf_queue.c linux-2.6.32-imq/net/netfilter/nf_queue.c
+--- linux-2.6.32/net/netfilter/nf_queue.c      2009-12-03 05:51:21.000000000 +0200
++++ linux-2.6.32-imq/net/netfilter/nf_queue.c  2009-12-11 14:16:42.681731014 +0200
+@@ -18,10 +18,30 @@
+  */
+ static const struct nf_queue_handler *queue_handler[NFPROTO_NUMPROTO] __read_mostly;
+ static DEFINE_MUTEX(queue_handler_mutex);
++#if defined(CONFIG_IMQ) || defined(CONFIG_IMQ_MODULE)
++static const struct nf_queue_handler *queue_imq_handler;
++
++void nf_register_queue_imq_handler(const struct nf_queue_handler *qh)
++{
++      mutex_lock(&queue_handler_mutex);
++      rcu_assign_pointer(queue_imq_handler, qh);
++      mutex_unlock(&queue_handler_mutex);
++}
++EXPORT_SYMBOL(nf_register_queue_imq_handler);
++
++void nf_unregister_queue_imq_handler(void)
++{
++      mutex_lock(&queue_handler_mutex);
++      rcu_assign_pointer(queue_imq_handler, NULL);
++      mutex_unlock(&queue_handler_mutex);
++}
++EXPORT_SYMBOL(nf_unregister_queue_imq_handler);
++#endif
++
+ /* return EBUSY when somebody else is registered, return EEXIST if the
+  * same handler is registered, return 0 in case of success. */
+ int nf_register_queue_handler(u_int8_t pf, const struct nf_queue_handler *qh)
+ {
+       int ret;
+@@ -78,11 +98,11 @@
+       synchronize_rcu();
+ }
+ EXPORT_SYMBOL_GPL(nf_unregister_queue_handlers);
+-static void nf_queue_entry_release_refs(struct nf_queue_entry *entry)
++void nf_queue_entry_release_refs(struct nf_queue_entry *entry)
+ {
+       /* Release those devices we held, or Alexey will kill me. */
+       if (entry->indev)
+               dev_put(entry->indev);
+       if (entry->outdev)
+@@ -98,10 +118,11 @@
+       }
+ #endif
+       /* Drop reference to owner of hook which queued us. */
+       module_put(entry->elem->owner);
+ }
++EXPORT_SYMBOL_GPL(nf_queue_entry_release_refs);
+ /*
+  * Any packet that leaves via this function must come back
+  * through nf_reinject().
+  */
+@@ -119,16 +140,30 @@
+       struct net_device *physindev;
+       struct net_device *physoutdev;
+ #endif
+       const struct nf_afinfo *afinfo;
+       const struct nf_queue_handler *qh;
++#if defined(CONFIG_IMQ) || defined(CONFIG_IMQ_MODULE)
++      const struct nf_queue_handler *qih = NULL;
++#endif
+       /* QUEUE == DROP if noone is waiting, to be safe. */
+       rcu_read_lock();
+       qh = rcu_dereference(queue_handler[pf]);
++#if defined(CONFIG_IMQ) || defined(CONFIG_IMQ_MODULE)
++#if defined(CONFIG_IPV6) || defined(CONFIG_IPV6_MODULE)
++      if (pf == PF_INET || pf == PF_INET6)
++#else
++      if (pf == PF_INET)
++#endif
++              qih = rcu_dereference(queue_imq_handler);
++
++      if (!qh && !qih)
++#else /* !IMQ */
+       if (!qh)
++#endif
+               goto err_unlock;
+       afinfo = nf_get_afinfo(pf);
+       if (!afinfo)
+               goto err_unlock;
+@@ -143,10 +178,14 @@
+               .pf     = pf,
+               .hook   = hook,
+               .indev  = indev,
+               .outdev = outdev,
+               .okfn   = okfn,
++#if defined(CONFIG_IMQ) || defined(CONFIG_IMQ_MODULE)
++              .next_outfn = qh ? qh->outfn : NULL,
++              .next_queuenum = queuenum,
++#endif
+       };
+       /* If it's going away, ignore hook. */
+       if (!try_module_get(entry->elem->owner)) {
+               rcu_read_unlock();
+@@ -168,12 +207,23 @@
+               if (physoutdev)
+                       dev_hold(physoutdev);
+       }
+ #endif
+       afinfo->saveroute(skb, entry);
++
++#if defined(CONFIG_IMQ) || defined(CONFIG_IMQ_MODULE)
++      if (qih) {
++              status = qih->outfn(entry, queuenum);
++              goto imq_skip_queue;
++      }
++#endif
++
+       status = qh->outfn(entry, queuenum);
++#if defined(CONFIG_IMQ) || defined(CONFIG_IMQ_MODULE)
++imq_skip_queue:
++#endif
+       rcu_read_unlock();
+       if (status < 0) {
+               nf_queue_entry_release_refs(entry);
+               goto err;
+diff -U 5 -Nr linux-2.6.32/net/netfilter/xt_IMQ.c linux-2.6.32-imq/net/netfilter/xt_IMQ.c
+--- linux-2.6.32/net/netfilter/xt_IMQ.c        1970-01-01 02:00:00.000000000 +0200
++++ linux-2.6.32-imq/net/netfilter/xt_IMQ.c    2009-12-11 14:16:42.681731014 +0200
+@@ -0,0 +1,73 @@
++/*
++ * This target marks packets to be enqueued to an imq device
++ */
++#include <linux/module.h>
++#include <linux/skbuff.h>
++#include <linux/netfilter/x_tables.h>
++#include <linux/netfilter/xt_IMQ.h>
++#include <linux/imq.h>
++
++static unsigned int imq_target(struct sk_buff *pskb,
++                              const struct xt_target_param *par)
++{
++      const struct xt_imq_info *mr = par->targinfo;
++
++      pskb->imq_flags = (mr->todev & IMQ_F_IFMASK) | IMQ_F_ENQUEUE;
++
++      return XT_CONTINUE;
++}
++
++static bool imq_checkentry(const struct xt_tgchk_param *par)
++{
++      struct xt_imq_info *mr = par->targinfo;
++
++      if (mr->todev > IMQ_MAX_DEVS - 1) {
++              printk(KERN_WARNING
++                     "IMQ: invalid device specified, highest is %u\n",
++                     IMQ_MAX_DEVS - 1);
++              return 0;
++      }
++
++      return 1;
++}
++
++static struct xt_target xt_imq_reg[] __read_mostly = {
++      {
++              .name           = "IMQ",
++              .family         = AF_INET,
++              .checkentry     = imq_checkentry,
++              .target         = imq_target,
++              .targetsize     = sizeof(struct xt_imq_info),
++              .table          = "mangle",
++              .me             = THIS_MODULE
++      },
++      {
++              .name           = "IMQ",
++              .family         = AF_INET6,
++              .checkentry     = imq_checkentry,
++              .target         = imq_target,
++              .targetsize     = sizeof(struct xt_imq_info),
++              .table          = "mangle",
++              .me             = THIS_MODULE
++      },
++};
++
++static int __init imq_init(void)
++{
++      return xt_register_targets(xt_imq_reg, ARRAY_SIZE(xt_imq_reg));
++}
++
++static void __exit imq_fini(void)
++{
++      xt_unregister_targets(xt_imq_reg, ARRAY_SIZE(xt_imq_reg));
++}
++
++module_init(imq_init);
++module_exit(imq_fini);
++
++MODULE_AUTHOR("http://www.linuximq.net");
++MODULE_DESCRIPTION("Pseudo-driver for the intermediate queue device. See http://www.linuximq.net/ for more information.");
++MODULE_LICENSE("GPL");
++MODULE_ALIAS("ipt_IMQ");
++MODULE_ALIAS("ip6t_IMQ");
++
diff --git a/src/patches/linux-2.6.32.8-ipp2p-0.8.2-pomng.patch b/src/patches/linux-2.6.32.8-ipp2p-0.8.2-pomng.patch
new file mode 100644 (file)
index 0000000..359892f
--- /dev/null
@@ -0,0 +1,1033 @@
+diff -Naur linux-2.6.32.8.org/include/linux/netfilter_ipv4/ipt_ipp2p.h linux-2.6.32.8/include/linux/netfilter_ipv4/ipt_ipp2p.h
+--- linux-2.6.32.8.org/include/linux/netfilter_ipv4/ipt_ipp2p.h        1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.32.8/include/linux/netfilter_ipv4/ipt_ipp2p.h    2010-02-13 19:54:30.000000000 +0100
+@@ -0,0 +1,31 @@
++#ifndef __IPT_IPP2P_H
++#define __IPT_IPP2P_H
++#define IPP2P_VERSION "0.8.2-pomng"
++
++struct ipt_p2p_info {
++    int cmd;
++    int debug;
++};
++
++#endif //__IPT_IPP2P_H
++
++#define SHORT_HAND_IPP2P      1 /* --ipp2p switch*/
++//#define SHORT_HAND_DATA             4 /* --ipp2p-data switch*/
++#define SHORT_HAND_NONE               5 /* no short hand*/
++
++#define IPP2P_EDK             (1 << 1)
++#define IPP2P_DATA_KAZAA      (1 << 2)
++#define IPP2P_DATA_EDK                (1 << 3)
++#define IPP2P_DATA_DC         (1 << 4)
++#define IPP2P_DC              (1 << 5)
++#define IPP2P_DATA_GNU                (1 << 6)
++#define IPP2P_GNU             (1 << 7)
++#define IPP2P_KAZAA           (1 << 8)
++#define IPP2P_BIT             (1 << 9)
++#define IPP2P_APPLE           (1 << 10)
++#define IPP2P_SOUL            (1 << 11)
++#define IPP2P_WINMX           (1 << 12)
++#define IPP2P_ARES            (1 << 13)
++#define IPP2P_MUTE            (1 << 14)
++#define IPP2P_WASTE           (1 << 15)
++#define IPP2P_XDCC            (1 << 16)
+diff -Naur linux-2.6.32.8.org/net/ipv4/netfilter/ipt_ipp2p.c linux-2.6.32.8/net/ipv4/netfilter/ipt_ipp2p.c
+--- linux-2.6.32.8.org/net/ipv4/netfilter/ipt_ipp2p.c  1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.32.8/net/ipv4/netfilter/ipt_ipp2p.c      2010-02-13 19:54:30.000000000 +0100
+@@ -0,0 +1,964 @@
++#if defined(MODVERSIONS)
++#include <linux/modversions.h>
++#endif
++#include <linux/module.h>
++#include <linux/version.h>
++#include <linux/netfilter_ipv4/ip_tables.h>
++#include <linux/netfilter_ipv4/ipt_ipp2p.h>
++#include <net/tcp.h>
++#include <net/udp.h>
++
++#define get_u8(X,O)  (*(__u8 *)(X + O))
++#define get_u16(X,O)  (*(__u16 *)(X + O))
++#define get_u32(X,O)  (*(__u32 *)(X + O))
++
++MODULE_AUTHOR("Eicke Friedrich/Klaus Degner <ipp2p@ipp2p.org>");
++MODULE_DESCRIPTION("An extension to iptables to identify P2P traffic.");
++MODULE_LICENSE("GPL");
++
++
++/*Search for UDP eDonkey/eMule/Kad commands*/
++int
++udp_search_edk (unsigned char *haystack, int packet_len)
++{
++    unsigned char *t = haystack;
++    t += 8;
++
++      switch (t[0]) {
++              case 0xe3: 
++              {       /*edonkey*/
++                      switch (t[1]) 
++                      {
++                              /* client -> server status request */
++                              case 0x96: 
++                                      if (packet_len == 14) return ((IPP2P_EDK * 100) + 50);
++                                      break;
++                              /* server -> client status request */
++                              case 0x97: if (packet_len == 42) return ((IPP2P_EDK * 100) + 51);
++                                      break;
++                                              /* server description request */
++                                              /* e3 2a ff f0 .. | size == 6 */
++                              case 0xa2: if ( (packet_len == 14) && ( get_u16(t,2) == __constant_htons(0xfff0) ) ) return ((IPP2P_EDK * 100) + 52);
++                                      break;
++                                              /* server description response */
++                                              /* e3 a3 ff f0 ..  | size > 40 && size < 200 */
++                              //case 0xa3: return ((IPP2P_EDK * 100) + 53);
++                              //      break;
++                              case 0x9a: if (packet_len==26) return ((IPP2P_EDK * 100) + 54);
++                                      break;
++
++                              case 0x92: if (packet_len==18) return ((IPP2P_EDK * 100) + 55);
++                                      break;
++                      }
++                      break;
++              }
++              case 0xe4: 
++              {
++                      switch (t[1]) 
++                      {
++                                              /* e4 20 .. | size == 43 */
++                              case 0x20: if ((packet_len == 43) && (t[2] != 0x00) && (t[34] != 0x00)) return ((IPP2P_EDK * 100) + 60);
++                                      break;
++                                              /* e4 00 .. 00 | size == 35 ? */
++                              case 0x00: if ((packet_len == 35) && (t[26] == 0x00)) return ((IPP2P_EDK * 100) + 61);
++                                      break;
++                                              /* e4 10 .. 00 | size == 35 ? */
++                              case 0x10: if ((packet_len == 35) && (t[26] == 0x00)) return ((IPP2P_EDK * 100) + 62);
++                                      break;
++                                              /* e4 18 .. 00 | size == 35 ? */
++                              case 0x18: if ((packet_len == 35) && (t[26] == 0x00)) return ((IPP2P_EDK * 100) + 63);
++                                      break;
++                                              /* e4 52 .. | size = 44 */
++                              case 0x52: if (packet_len == 44 ) return ((IPP2P_EDK * 100) + 64);
++                                      break;
++                                              /* e4 58 .. | size == 6 */
++                              case 0x58: if (packet_len == 14 ) return ((IPP2P_EDK * 100) + 65);
++                                      break;
++                                              /* e4 59 .. | size == 2 */
++                              case 0x59: if (packet_len == 10 )return ((IPP2P_EDK * 100) + 66);
++                                      break;
++                                      /* e4 28 .. | packet_len == 52,77,102,127... */
++                              case 0x28: if (((packet_len-52) % 25) == 0) return ((IPP2P_EDK * 100) + 67);
++                                      break;
++                                      /* e4 50 xx xx | size == 4 */
++                              case 0x50: if (packet_len == 12) return ((IPP2P_EDK * 100) + 68);
++                                      break;
++                                      /* e4 40 xx xx | size == 48 */
++                              case 0x40: if (packet_len == 56) return ((IPP2P_EDK * 100) + 69);
++                                      break;
++                      }
++                      break;
++              }
++      } /* end of switch (t[0]) */
++    return 0;
++}/*udp_search_edk*/
++
++
++/*Search for UDP Gnutella commands*/
++int
++udp_search_gnu (unsigned char *haystack, int packet_len)
++{
++    unsigned char *t = haystack;
++    t += 8;
++    
++    if (memcmp(t, "GND", 3) == 0) return ((IPP2P_GNU * 100) + 51);
++    if (memcmp(t, "GNUTELLA ", 9) == 0) return ((IPP2P_GNU * 100) + 52);
++    return 0;
++}/*udp_search_gnu*/
++
++
++/*Search for UDP KaZaA commands*/
++int
++udp_search_kazaa (unsigned char *haystack, int packet_len)
++{
++    unsigned char *t = haystack;
++    
++    if (t[packet_len-1] == 0x00){
++      t += (packet_len - 6);
++      if (memcmp(t, "KaZaA", 5) == 0) return (IPP2P_KAZAA * 100 +50);
++    }
++    
++    return 0;
++}/*udp_search_kazaa*/
++
++/*Search for UDP DirectConnect commands*/
++int
++udp_search_directconnect (unsigned char *haystack, int packet_len)
++{
++    unsigned char *t = haystack;
++    if ((*(t + 8) == 0x24) && (*(t + packet_len - 1) == 0x7c)) {
++      t+=8;
++      if (memcmp(t, "SR ", 3) == 0)                   return ((IPP2P_DC * 100) + 60);
++      if (memcmp(t, "Ping ", 5) == 0)                 return ((IPP2P_DC * 100) + 61);
++    }
++    return 0;
++}/*udp_search_directconnect*/
++
++
++
++/*Search for UDP BitTorrent commands*/
++int
++udp_search_bit (unsigned char *haystack, int packet_len)
++{
++      switch(packet_len)
++      {
++              case 24:
++                      /* ^ 00 00 04 17 27 10 19 80 */
++                      if ((ntohl(get_u32(haystack, 8)) == 0x00000417) && (ntohl(get_u32(haystack, 12)) == 0x27101980)) 
++                              return (IPP2P_BIT * 100 + 50);
++                      break;
++              case 44:
++                      if (get_u32(haystack, 16) == __constant_htonl(0x00000400) && get_u32(haystack, 36) == __constant_htonl(0x00000104)) 
++                              return (IPP2P_BIT * 100 + 51);
++                      if (get_u32(haystack, 16) == __constant_htonl(0x00000400))
++                              return (IPP2P_BIT * 100 + 61);
++                      break;
++              case 65:
++                      if (get_u32(haystack, 16) == __constant_htonl(0x00000404) && get_u32(haystack, 36) == __constant_htonl(0x00000104)) 
++                              return (IPP2P_BIT * 100 + 52);
++                      if (get_u32(haystack, 16) == __constant_htonl(0x00000404))
++                              return (IPP2P_BIT * 100 + 62);
++                      break;
++              case 67:
++                      if (get_u32(haystack, 16) == __constant_htonl(0x00000406) && get_u32(haystack, 36) == __constant_htonl(0x00000104)) 
++                              return (IPP2P_BIT * 100 + 53);
++                      if (get_u32(haystack, 16) == __constant_htonl(0x00000406))
++                              return (IPP2P_BIT * 100 + 63);
++                      break;
++              case 211:
++                      if (get_u32(haystack, 8) == __constant_htonl(0x00000405)) 
++                              return (IPP2P_BIT * 100 + 54);
++                      break;
++              case 29:
++                      if ((get_u32(haystack, 8) == __constant_htonl(0x00000401))) 
++                              return (IPP2P_BIT * 100 + 55);
++                      break;
++              case 52:
++                      if (get_u32(haystack,8)  == __constant_htonl(0x00000827) &&
++                      get_u32(haystack,12) == __constant_htonl(0x37502950))
++                              return (IPP2P_BIT * 100 + 80);
++                      break;
++              default:
++                      /* this packet does not have a constant size */
++                      if (packet_len >= 40 && get_u32(haystack, 16) == __constant_htonl(0x00000402) && get_u32(haystack, 36) == __constant_htonl(0x00000104)) 
++                              return (IPP2P_BIT * 100 + 56);
++                      break;
++      }
++    
++      /* some extra-bitcomet rules:
++      * "d1:" [a|r] "d2:id20:"
++      */
++      if (packet_len > 30 && get_u8(haystack, 8) == 'd' && get_u8(haystack, 9) == '1' && get_u8(haystack, 10) == ':' )
++      {
++              if (get_u8(haystack, 11) == 'a' || get_u8(haystack, 11) == 'r')
++              {
++                      if (memcmp(haystack+12,"d2:id20:",8)==0)
++                              return (IPP2P_BIT * 100 + 57);
++              }
++      }
++    
++#if 0
++      /* bitlord rules */
++      /* packetlen must be bigger than 40 */
++      /* first 4 bytes are zero */
++      if (packet_len > 40 && get_u32(haystack, 8) == 0x00000000)
++      {
++              /* first rule: 00 00 00 00 01 00 00 xx xx xx xx 00 00 00 00*/
++              if (get_u32(haystack, 12) == 0x00000000 && 
++                  get_u32(haystack, 16) == 0x00010000 &&
++                  get_u32(haystack, 24) == 0x00000000 )
++                      return (IPP2P_BIT * 100 + 71);
++                      
++              /* 00 01 00 00 0d 00 00 xx xx xx xx 00 00 00 00*/
++              if (get_u32(haystack, 12) == 0x00000001 && 
++                  get_u32(haystack, 16) == 0x000d0000 &&
++                  get_u32(haystack, 24) == 0x00000000 )
++                      return (IPP2P_BIT * 100 + 71);
++              
++                  
++      }
++#endif
++
++    return 0;
++}/*udp_search_bit*/
++
++
++
++/*Search for Ares commands*/
++//#define IPP2P_DEBUG_ARES
++int
++search_ares (const unsigned char *payload, const u16 plen)
++//int search_ares (unsigned char *haystack, int packet_len, int head_len)
++{
++//    const unsigned char *t = haystack + head_len;
++      
++      /* all ares packets start with  */
++      if (payload[1] == 0 && (plen - payload[0]) == 3)
++      {
++              switch (payload[2])
++              {
++                      case 0x5a:
++                              /* ares connect */
++                              if ( plen == 6 && payload[5] == 0x05 ) return ((IPP2P_ARES * 100) + 1);
++                              break;
++                      case 0x09:
++                              /* ares search, min 3 chars --> 14 bytes
++                               * lets define a search can be up to 30 chars --> max 34 bytes
++                               */
++                              if ( plen >= 14 && plen <= 34 ) return ((IPP2P_ARES * 100) + 1);
++                              break;
++#ifdef IPP2P_DEBUG_ARES
++                      default:
++                      printk(KERN_DEBUG "Unknown Ares command %x recognized, len: %u \n", (unsigned int) payload[2],plen);
++#endif /* IPP2P_DEBUG_ARES */
++              }
++      }
++
++#if 0         
++      /* found connect packet: 03 00 5a 04 03 05 */
++      /* new version ares 1.8: 03 00 5a xx xx 05 */
++    if ((plen) == 6){ /* possible connect command*/
++      if ((payload[0] == 0x03) && (payload[1] == 0x00) && (payload[2] == 0x5a) && (payload[5] == 0x05))
++          return ((IPP2P_ARES * 100) + 1);
++    }
++    if ((plen) == 60){        /* possible download command*/
++      if ((payload[59] == 0x0a) && (payload[58] == 0x0a)){
++          if (memcmp(t, "PUSH SHA1:", 10) == 0) /* found download command */
++              return ((IPP2P_ARES * 100) + 2);
++      }
++    }
++#endif
++
++    return 0;
++} /*search_ares*/
++
++/*Search for SoulSeek commands*/
++int
++search_soul (const unsigned char *payload, const u16 plen)
++{
++//#define IPP2P_DEBUG_SOUL
++    /* match: xx xx xx xx | xx = sizeof(payload) - 4 */
++    if (get_u32(payload, 0) == (plen - 4)){
++      const __u32 m=get_u32(payload, 4);
++      /* match 00 yy yy 00, yy can be everything */
++        if ( get_u8(payload, 4) == 0x00 && get_u8(payload, 7) == 0x00 )
++      {
++#ifdef IPP2P_DEBUG_SOUL
++      printk(KERN_DEBUG "0: Soulseek command 0x%x recognized\n",get_u32(payload, 4));
++#endif /* IPP2P_DEBUG_SOUL */
++              return ((IPP2P_SOUL * 100) + 1);
++      }
++      
++        /* next match: 01 yy 00 00 | yy can be everything */
++        if ( get_u8(payload, 4) == 0x01 && get_u16(payload, 6) == 0x0000 )
++      {
++#ifdef IPP2P_DEBUG_SOUL
++      printk(KERN_DEBUG "1: Soulseek command 0x%x recognized\n",get_u16(payload, 4));
++#endif /* IPP2P_DEBUG_SOUL */
++              return ((IPP2P_SOUL * 100) + 2);
++      }
++      
++      /* other soulseek commandos are: 1-5,7,9,13-18,22,23,26,28,35-37,40-46,50,51,60,62-69,91,92,1001 */
++      /* try to do this in an intelligent way */
++      /* get all small commandos */
++      switch(m)
++      {
++              case 7:
++              case 9:
++              case 22:
++              case 23:
++              case 26:
++              case 28:
++              case 50:
++              case 51:
++              case 60:
++              case 91:
++              case 92:
++              case 1001:
++#ifdef IPP2P_DEBUG_SOUL
++              printk(KERN_DEBUG "2: Soulseek command 0x%x recognized\n",get_u16(payload, 4));
++#endif /* IPP2P_DEBUG_SOUL */
++              return ((IPP2P_SOUL * 100) + 3);
++      }
++      
++      if (m > 0 && m < 6 ) 
++      {
++#ifdef IPP2P_DEBUG_SOUL
++              printk(KERN_DEBUG "3: Soulseek command 0x%x recognized\n",get_u16(payload, 4));
++#endif /* IPP2P_DEBUG_SOUL */
++              return ((IPP2P_SOUL * 100) + 4);
++      }
++      if (m > 12 && m < 19 )
++      {
++#ifdef IPP2P_DEBUG_SOUL
++              printk(KERN_DEBUG "4: Soulseek command 0x%x recognized\n",get_u16(payload, 4));
++#endif /* IPP2P_DEBUG_SOUL */
++              return ((IPP2P_SOUL * 100) + 5);
++      }
++
++      if (m > 34 && m < 38 )
++      {
++#ifdef IPP2P_DEBUG_SOUL
++              printk(KERN_DEBUG "5: Soulseek command 0x%x recognized\n",get_u16(payload, 4));
++#endif /* IPP2P_DEBUG_SOUL */
++              return ((IPP2P_SOUL * 100) + 6);
++      }
++
++      if (m > 39 && m < 47 )
++      {
++#ifdef IPP2P_DEBUG_SOUL
++              printk(KERN_DEBUG "6: Soulseek command 0x%x recognized\n",get_u16(payload, 4));
++#endif /* IPP2P_DEBUG_SOUL */
++              return ((IPP2P_SOUL * 100) + 7);
++      }
++
++      if (m > 61 && m < 70 ) 
++      {
++#ifdef IPP2P_DEBUG_SOUL
++              printk(KERN_DEBUG "7: Soulseek command 0x%x recognized\n",get_u16(payload, 4));
++#endif /* IPP2P_DEBUG_SOUL */
++              return ((IPP2P_SOUL * 100) + 8);
++      }
++
++#ifdef IPP2P_DEBUG_SOUL
++      printk(KERN_DEBUG "unknown SOULSEEK command: 0x%x, first 16 bit: 0x%x, first 8 bit: 0x%x ,soulseek ???\n",get_u32(payload, 4),get_u16(payload, 4) >> 16,get_u8(payload, 4) >> 24);
++#endif /* IPP2P_DEBUG_SOUL */
++    }
++      
++      /* match 14 00 00 00 01 yy 00 00 00 STRING(YY) 01 00 00 00 00 46|50 00 00 00 00 */
++      /* without size at the beginning !!! */
++      if ( get_u32(payload, 0) == 0x14 && get_u8(payload, 4) == 0x01 )
++      {
++              __u32 y=get_u32(payload, 5);
++              /* we need 19 chars + string */
++              if ( (y + 19) <= (plen) )
++              {
++                      const unsigned char *w=payload+9+y;
++                      if (get_u32(w, 0) == 0x01 && ( get_u16(w, 4) == 0x4600 || get_u16(w, 4) == 0x5000) && get_u32(w, 6) == 0x00);
++#ifdef IPP2P_DEBUG_SOUL
++                      printk(KERN_DEBUG "Soulssek special client command recognized\n");
++#endif /* IPP2P_DEBUG_SOUL */
++                      return ((IPP2P_SOUL * 100) + 9);
++              }
++      }
++    return 0;
++}
++
++
++/*Search for WinMX commands*/
++int
++search_winmx (const unsigned char *payload, const u16 plen)
++{
++//#define IPP2P_DEBUG_WINMX
++    if (((plen) == 4) && (memcmp(payload, "SEND", 4) == 0))  return ((IPP2P_WINMX * 100) + 1);
++    if (((plen) == 3) && (memcmp(payload, "GET", 3) == 0))  return ((IPP2P_WINMX * 100) + 2);
++    //if (packet_len < (head_len + 10)) return 0;
++    if (plen < 10) return 0;
++    
++    if ((memcmp(payload, "SEND", 4) == 0) || (memcmp(payload, "GET", 3) == 0)){
++        u16 c=4;
++        const u16 end=plen-2;
++        u8 count=0;
++        while (c < end)
++        {
++              if (payload[c]== 0x20 && payload[c+1] == 0x22)
++              {
++                      c++;
++                      count++;
++                      if (count>=2) return ((IPP2P_WINMX * 100) + 3);
++              }
++              c++;
++        }
++    }
++    
++    if ( plen == 149 && payload[0] == '8' )
++    {
++#ifdef IPP2P_DEBUG_WINMX
++      printk(KERN_INFO "maybe WinMX\n");
++#endif
++      if (get_u32(payload,17) == 0 && get_u32(payload,21) == 0 && get_u32(payload,25) == 0 &&
++//                get_u32(payload,33) == __constant_htonl(0x71182b1a) && get_u32(payload,37) == __constant_htonl(0x05050000) &&
++//                get_u32(payload,133) == __constant_htonl(0x31097edf) && get_u32(payload,145) == __constant_htonl(0xdcb8f792))
++          get_u16(payload,39) == 0 && get_u16(payload,135) == __constant_htons(0x7edf) && get_u16(payload,147) == __constant_htons(0xf792))
++          
++      {
++#ifdef IPP2P_DEBUG_WINMX
++              printk(KERN_INFO "got WinMX\n");
++#endif
++              return ((IPP2P_WINMX * 100) + 4);
++      }
++    }
++    return 0;
++} /*search_winmx*/
++
++
++/*Search for appleJuice commands*/
++int
++search_apple (const unsigned char *payload, const u16 plen)
++{
++    if ( (plen > 7) && (payload[6] == 0x0d) && (payload[7] == 0x0a) && (memcmp(payload, "ajprot", 6) == 0))  return (IPP2P_APPLE * 100);
++    
++    return 0;
++}
++
++
++/*Search for BitTorrent commands*/
++int
++search_bittorrent (const unsigned char *payload, const u16 plen)
++{
++    if (plen > 20)
++    {
++      /* test for match 0x13+"BitTorrent protocol" */
++      if (payload[0] == 0x13) 
++      {
++              if (memcmp(payload+1, "BitTorrent protocol", 19) == 0) return (IPP2P_BIT * 100);
++      }
++      
++      /* get tracker commandos, all starts with GET /
++      * then it can follow: scrape| announce
++      * and then ?hash_info=
++      */
++      if (memcmp(payload,"GET /",5) == 0)
++      {
++              /* message scrape */
++              if ( memcmp(payload+5,"scrape?info_hash=",17)==0 ) return (IPP2P_BIT * 100 + 1);
++              /* message announce */
++              if ( memcmp(payload+5,"announce?info_hash=",19)==0 ) return (IPP2P_BIT * 100 + 2);
++      }
++    } 
++    else 
++    {
++      /* bitcomet encryptes the first packet, so we have to detect another 
++       * one later in the flow */
++       /* first try failed, too many missdetections */
++      //if ( size == 5 && get_u32(t,0) == __constant_htonl(1) && t[4] < 3) return (IPP2P_BIT * 100 + 3);
++      
++      /* second try: block request packets */
++      if ( plen == 17 && get_u32(payload,0) == __constant_htonl(0x0d) && payload[4] == 0x06 && get_u32(payload,13) == __constant_htonl(0x4000) ) return (IPP2P_BIT * 100 + 3);
++    }
++
++    return 0;
++}
++
++
++
++/*check for Kazaa get command*/
++int
++search_kazaa (const unsigned char *payload, const u16 plen)
++
++{
++    if ((payload[plen-2] == 0x0d) && (payload[plen-1] == 0x0a) && memcmp(payload, "GET /.hash=", 11) == 0)
++      return (IPP2P_DATA_KAZAA * 100);
++
++    return 0;
++}
++
++
++/*check for gnutella get command*/
++int
++search_gnu (const unsigned char *payload, const u16 plen)
++{
++    if ((payload[plen-2] == 0x0d) && (payload[plen-1] == 0x0a))
++    {
++      if (memcmp(payload, "GET /get/", 9) == 0)       return ((IPP2P_DATA_GNU * 100) + 1);
++      if (memcmp(payload, "GET /uri-res/", 13) == 0) return ((IPP2P_DATA_GNU * 100) + 2); 
++    }
++    return 0;
++}
++
++
++/*check for gnutella get commands and other typical data*/
++int
++search_all_gnu (const unsigned char *payload, const u16 plen)
++{
++    
++    if ((payload[plen-2] == 0x0d) && (payload[plen-1] == 0x0a))
++    {
++      
++      if (memcmp(payload, "GNUTELLA CONNECT/", 17) == 0) return ((IPP2P_GNU * 100) + 1);
++      if (memcmp(payload, "GNUTELLA/", 9) == 0) return ((IPP2P_GNU * 100) + 2);    
++    
++    
++      if ((memcmp(payload, "GET /get/", 9) == 0) || (memcmp(payload, "GET /uri-res/", 13) == 0))
++      {        
++              u16 c=8;
++              const u16 end=plen-22;
++              while (c < end) {
++                      if ( payload[c] == 0x0a && payload[c+1] == 0x0d && ((memcmp(&payload[c+2], "X-Gnutella-", 11) == 0) || (memcmp(&payload[c+2], "X-Queue:", 8) == 0))) 
++                              return ((IPP2P_GNU * 100) + 3);
++                      c++;
++              }
++      }
++    }
++    return 0;
++}
++
++
++/*check for KaZaA download commands and other typical data*/
++int
++search_all_kazaa (const unsigned char *payload, const u16 plen)
++{
++    if ((payload[plen-2] == 0x0d) && (payload[plen-1] == 0x0a))
++    {
++
++      if (memcmp(payload, "GIVE ", 5) == 0) return ((IPP2P_KAZAA * 100) + 1);
++    
++      if (memcmp(payload, "GET /", 5) == 0) {
++              u16 c = 8;
++              const u16 end=plen-22;
++              while (c < end) {
++                      if ( payload[c] == 0x0a && payload[c+1] == 0x0d && ((memcmp(&payload[c+2], "X-Kazaa-Username: ", 18) == 0) || (memcmp(&payload[c+2], "User-Agent: PeerEnabler/", 24) == 0)))
++                              return ((IPP2P_KAZAA * 100) + 2);
++                      c++;
++              }
++      }
++    }
++    return 0;
++}
++
++/*fast check for edonkey file segment transfer command*/
++int
++search_edk (const unsigned char *payload, const u16 plen)
++{
++    if (payload[0] != 0xe3) 
++      return 0;
++    else {
++      if (payload[5] == 0x47) 
++          return (IPP2P_DATA_EDK * 100);
++      else    
++          return 0;
++    }
++}
++
++
++
++/*intensive but slower search for some edonkey packets including size-check*/
++int
++search_all_edk (const unsigned char *payload, const u16 plen)
++{
++    if (payload[0] != 0xe3) 
++      return 0;
++    else {
++      //t += head_len;        
++      const u16 cmd = get_u16(payload, 1);
++      if (cmd == (plen - 5)) {
++          switch (payload[5]) {
++              case 0x01: return ((IPP2P_EDK * 100) + 1);      /*Client: hello or Server:hello*/
++              case 0x4c: return ((IPP2P_EDK * 100) + 9);      /*Client: Hello-Answer*/
++          }
++      }
++      return 0;
++     }
++}
++
++
++/*fast check for Direct Connect send command*/
++int
++search_dc (const unsigned char *payload, const u16 plen)
++{
++
++    if (payload[0] != 0x24 ) 
++      return 0;
++    else {
++      if (memcmp(&payload[1], "Send|", 5) == 0)
++          return (IPP2P_DATA_DC * 100);
++      else
++          return 0;
++    } 
++
++}
++
++
++/*intensive but slower check for all direct connect packets*/
++int
++search_all_dc (const unsigned char *payload, const u16 plen)
++{
++//    unsigned char *t = haystack;
++
++    if (payload[0] == 0x24 && payload[plen-1] == 0x7c) 
++    {
++      const unsigned char *t=&payload[1];
++              /* Client-Hub-Protocol */
++      if (memcmp(t, "Lock ", 5) == 0)                 return ((IPP2P_DC * 100) + 1);
++      /* Client-Client-Protocol, some are already recognized by client-hub (like lock) */
++      if (memcmp(t, "MyNick ", 7) == 0)               return ((IPP2P_DC * 100) + 38); 
++    }
++    return 0;
++}
++
++/*check for mute*/
++int
++search_mute (const unsigned char *payload, const u16 plen)
++{
++      if ( plen == 209 || plen == 345 || plen == 473 || plen == 609 || plen == 1121 )
++      {
++              //printk(KERN_DEBUG "size hit: %u",size);
++              if (memcmp(payload,"PublicKey: ",11) == 0 )
++              { 
++                      return ((IPP2P_MUTE * 100) + 0);
++                      
++/*                    if (memcmp(t+size-14,"\x0aEndPublicKey\x0a",14) == 0)
++                      {
++                              printk(KERN_DEBUG "end pubic key hit: %u",size);
++                              
++                      }*/
++              }
++      }
++      return 0;
++}
++
++
++/* check for xdcc */
++int
++search_xdcc (const unsigned char *payload, const u16 plen)
++{
++      /* search in small packets only */
++      if (plen > 20 && plen < 200 && payload[plen-1] == 0x0a && payload[plen-2] == 0x0d && memcmp(payload,"PRIVMSG ",8) == 0)
++      {
++              
++              u16 x=10;
++              const u16 end=plen - 13;
++              
++              /* is seems to be a irc private massage, chedck for xdcc command */
++              while (x < end)
++              {
++                      if (payload[x] == ':')
++                      {
++                              if ( memcmp(&payload[x+1],"xdcc send #",11) == 0 )
++                                      return ((IPP2P_XDCC * 100) + 0);
++                      }
++                      x++;
++              }
++      }
++      return 0;
++}
++
++/* search for waste */
++int search_waste(const unsigned char *payload, const u16 plen)
++{
++      if ( plen >= 8 && memcmp(payload,"GET.sha1:",9) == 0)
++              return ((IPP2P_WASTE * 100) + 0);
++
++      return 0;
++}
++
++
++static struct {
++    int command;
++    __u8 short_hand;                  /*for fucntions included in short hands*/
++    int packet_len;
++    int (*function_name) (const unsigned char *, const u16);
++} matchlist[] = {
++    {IPP2P_EDK,SHORT_HAND_IPP2P,20, &search_all_edk},
++//    {IPP2P_DATA_KAZAA,SHORT_HAND_DATA,200, &search_kazaa},
++//    {IPP2P_DATA_EDK,SHORT_HAND_DATA,60, &search_edk},
++//    {IPP2P_DATA_DC,SHORT_HAND_DATA,26, &search_dc},
++    {IPP2P_DC,SHORT_HAND_IPP2P,5, search_all_dc},
++//    {IPP2P_DATA_GNU,SHORT_HAND_DATA,40, &search_gnu},
++    {IPP2P_GNU,SHORT_HAND_IPP2P,5, &search_all_gnu},
++    {IPP2P_KAZAA,SHORT_HAND_IPP2P,5, &search_all_kazaa},
++    {IPP2P_BIT,SHORT_HAND_IPP2P,20, &search_bittorrent},
++    {IPP2P_APPLE,SHORT_HAND_IPP2P,5, &search_apple},
++    {IPP2P_SOUL,SHORT_HAND_IPP2P,5, &search_soul},
++    {IPP2P_WINMX,SHORT_HAND_IPP2P,2, &search_winmx},
++    {IPP2P_ARES,SHORT_HAND_IPP2P,5, &search_ares},
++    {IPP2P_MUTE,SHORT_HAND_NONE,200, &search_mute},
++    {IPP2P_WASTE,SHORT_HAND_NONE,5, &search_waste},
++    {IPP2P_XDCC,SHORT_HAND_NONE,5, &search_xdcc},
++    {0,0,0,NULL}
++};
++
++
++static struct {
++    int command;
++    __u8 short_hand;                  /*for fucntions included in short hands*/
++    int packet_len;
++    int (*function_name) (unsigned char *, int);
++} udp_list[] = {
++    { IPP2P_KAZAA, SHORT_HAND_IPP2P, 14, &udp_search_kazaa},
++    { IPP2P_BIT,   SHORT_HAND_IPP2P, 23, &udp_search_bit},
++    { IPP2P_GNU,   SHORT_HAND_IPP2P, 11, &udp_search_gnu},
++    { IPP2P_EDK,   SHORT_HAND_IPP2P,  9, &udp_search_edk},
++    { IPP2P_DC,    SHORT_HAND_IPP2P, 12, &udp_search_directconnect},    
++    { 0, 0, 0, NULL }
++};
++
++#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,0)
++static int
++match(const struct sk_buff *skb,
++      const struct net_device *in,
++      const struct net_device *out,
++      const void *matchinfo,
++      int offset,
++      const void *hdr,
++      u_int16_t datalen,
++      int *hotdrop) 
++#elif LINUX_VERSION_CODE < KERNEL_VERSION(2,6,16)
++static int
++match(const struct sk_buff *skb,
++      const struct net_device *in,
++      const struct net_device *out,
++      const void *matchinfo,
++      int offset,
++      int *hotdrop) 
++#elif LINUX_VERSION_CODE < KERNEL_VERSION(2,6,17)
++static int
++match(const struct sk_buff *skb,
++      const struct net_device *in,
++      const struct net_device *out,
++      const void *matchinfo,
++      int offset,
++      unsigned int protoff,
++      int *hotdrop)
++#elif LINUX_VERSION_CODE < KERNEL_VERSION(2,6,23)
++static int
++match(const struct sk_buff *skb,
++      const struct net_device *in,
++      const struct net_device *out,
++      const struct xt_match *match,
++      const void *matchinfo,
++      int offset,
++      unsigned int protoff,
++      int *hotdrop)
++#elif LINUX_VERSION_CODE < KERNEL_VERSION(2,6,28)
++static bool
++match(const struct sk_buff *skb,
++      const struct net_device *in,
++      const struct net_device *out,
++      const struct xt_match *match,
++      const void *matchinfo,
++      int offset, 
++      unsigned int protoff, 
++      bool *hotdrop)
++#else /* LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,28) */
++static bool
++match(const struct sk_buff *skb,
++      const struct xt_match_param *par)
++#endif
++{
++#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,28)
++      const struct ipt_p2p_info *info = matchinfo;
++#else
++      const struct ipt_p2p_info *info = par->matchinfo;
++      const int offset = par->fragoff;
++#endif
++    unsigned char  *haystack;
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,22)
++    struct iphdr *ip = ip_hdr(skb);
++#else
++    struct iphdr *ip = skb->nh.iph;
++#endif
++    int p2p_result = 0, i = 0;
++//    int head_len;
++    int hlen = ntohs(ip->tot_len)-(ip->ihl*4);        /*hlen = packet-data length*/
++
++    /*must not be a fragment*/
++    if (offset) {
++      if (info->debug) printk("IPP2P.match: offset found %i \n",offset);
++      return 0;
++    }
++    
++    /*make sure that skb is linear*/
++    if(skb_is_nonlinear(skb)){
++      if (info->debug) printk("IPP2P.match: nonlinear skb found\n");
++      return 0;
++    }
++
++
++    haystack=(char *)ip+(ip->ihl*4);          /*haystack = packet data*/
++
++    switch (ip->protocol){
++      case IPPROTO_TCP:               /*what to do with a TCP packet*/
++      {
++          struct tcphdr *tcph = (void *) ip + ip->ihl * 4;
++          
++          if (tcph->fin) return 0;  /*if FIN bit is set bail out*/
++          if (tcph->syn) return 0;  /*if SYN bit is set bail out*/
++          if (tcph->rst) return 0;  /*if RST bit is set bail out*/
++          
++          haystack += tcph->doff * 4; /*get TCP-Header-Size*/
++          hlen -= tcph->doff * 4;
++          while (matchlist[i].command) {
++              if ((((info->cmd & matchlist[i].command) == matchlist[i].command) ||
++                  ((info->cmd & matchlist[i].short_hand) == matchlist[i].short_hand)) &&
++                  (hlen > matchlist[i].packet_len)) {
++                          p2p_result = matchlist[i].function_name(haystack, hlen);
++                          if (p2p_result) 
++                          {
++                              if (info->debug) printk("IPP2P.debug:TCP-match: %i from: %u.%u.%u.%u:%i to: %u.%u.%u.%u:%i Length: %i\n", 
++                                  p2p_result, NIPQUAD(ip->saddr),ntohs(tcph->source), NIPQUAD(ip->daddr),ntohs(tcph->dest),hlen);
++                              return p2p_result;
++                          }
++              }
++          i++;
++          }
++          return p2p_result;
++      }
++      
++      case IPPROTO_UDP:               /*what to do with an UDP packet*/
++      {
++          struct udphdr *udph = (void *) ip + ip->ihl * 4;
++          
++          while (udp_list[i].command){
++              if ((((info->cmd & udp_list[i].command) == udp_list[i].command) ||
++                  ((info->cmd & udp_list[i].short_hand) == udp_list[i].short_hand)) &&
++                  (hlen > udp_list[i].packet_len)) {
++                          p2p_result = udp_list[i].function_name(haystack, hlen);
++                          if (p2p_result){
++                              if (info->debug) printk("IPP2P.debug:UDP-match: %i from: %u.%u.%u.%u:%i to: %u.%u.%u.%u:%i Length: %i\n", 
++                                  p2p_result, NIPQUAD(ip->saddr),ntohs(udph->source), NIPQUAD(ip->daddr),ntohs(udph->dest),hlen);
++                              return p2p_result;
++                          }
++              }
++          i++;
++          }                   
++          return p2p_result;
++      }
++    
++      default: return 0;
++    }
++}
++
++#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,16)
++static int
++checkentry(const char *tablename,
++         const struct ipt_ip *ip,
++         void *matchinfo,
++         unsigned int matchsize,
++         unsigned int hook_mask)
++#elif LINUX_VERSION_CODE < KERNEL_VERSION(2,6,17)
++static int
++checkentry(const char *tablename,
++         const void *inf,
++         void *matchinfo,
++         unsigned int matchsize,
++         unsigned int hook_mask)
++#elif LINUX_VERSION_CODE < KERNEL_VERSION(2,6,19)
++static int
++checkentry(const char *tablename,
++         const void *inf,
++         const struct xt_match *match,
++         void *matchinfo,
++         unsigned int matchsize,
++         unsigned int hook_mask)
++#elif LINUX_VERSION_CODE < KERNEL_VERSION(2,6,23)
++static int
++checkentry(const char *tablename,
++         const void *inf,
++         const struct xt_match *match,
++         void *matchinfo,
++         unsigned int hook_mask)
++#elif LINUX_VERSION_CODE < KERNEL_VERSION(2,6,28)
++static bool
++checkentry(const char *tablename,
++         const void *inf,
++         const struct xt_match *match,
++         void *matchinfo,
++         unsigned int hook_mask)
++#else /* LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,28) */
++static bool
++checkentry(const struct xt_mtchk_param *par)
++#endif
++{
++        /* Must specify -p tcp */
++/*    if (ip->proto != IPPROTO_TCP || (ip->invflags & IPT_INV_PROTO)) {
++ *    printk("ipp2p: Only works on TCP packets, use -p tcp\n");
++ *    return 0;
++ *    }*/
++    return 1;
++}
++
++
++
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,21)
++static struct xt_match ipp2p_match = {
++#else
++static struct ipt_match ipp2p_match = { 
++#endif
++#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,0)
++      { NULL, NULL }, 
++      "ipp2p", 
++      &ipp2p_match, 
++      &ipp2p_checkentry, 
++      NULL, 
++      THIS_MODULE
++#endif
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0)
++      .name           = "ipp2p",
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,21)
++      .family         = AF_INET,
++#endif
++      .match          = &match,
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,17)
++      .matchsize      = sizeof(struct ipt_p2p_info),
++#endif
++      .checkentry     = &checkentry,
++      .me             = THIS_MODULE,
++#endif
++};
++
++
++static int __init init(void)
++{
++    printk(KERN_INFO "IPP2P v%s loading\n", IPP2P_VERSION);
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,21)
++    return xt_register_match(&ipp2p_match);
++#else
++    return ipt_register_match(&ipp2p_match);
++#endif
++}
++      
++static void __exit fini(void)
++{
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,21)
++    xt_unregister_match(&ipp2p_match);
++#else
++    ipt_unregister_match(&ipp2p_match);
++#endif
++    printk(KERN_INFO "IPP2P v%s unloaded\n", IPP2P_VERSION);    
++}
++      
++module_init(init);
++module_exit(fini);
++
++
+diff -Naur linux-2.6.32.8.org/net/ipv4/netfilter/Kconfig linux-2.6.32.8/net/ipv4/netfilter/Kconfig
+--- linux-2.6.32.8.org/net/ipv4/netfilter/Kconfig      2010-02-09 13:57:19.000000000 +0100
++++ linux-2.6.32.8/net/ipv4/netfilter/Kconfig  2010-02-13 19:54:30.000000000 +0100
+@@ -388,5 +388,15 @@
+ endif # IP_NF_ARPTABLES
++config IP_NF_MATCH_IPP2P
++      tristate  'IPP2P match support'
++      depends on IP_NF_IPTABLES
++      help
++        This option makes possible to match some P2P packets
++        therefore helps controlling such traffic.
++      
++        If you want to compile it as a module, say M here and read
++        <file:Documentation/modules.txt>.  If unsure, say `N'.
++
+ endmenu
+diff -Naur linux-2.6.32.8.org/net/ipv4/netfilter/Makefile linux-2.6.32.8/net/ipv4/netfilter/Makefile
+--- linux-2.6.32.8.org/net/ipv4/netfilter/Makefile     2010-02-09 13:57:19.000000000 +0100
++++ linux-2.6.32.8/net/ipv4/netfilter/Makefile 2010-02-13 19:54:30.000000000 +0100
+@@ -48,6 +48,7 @@
+ obj-$(CONFIG_IP_NF_SECURITY) += iptable_security.o
+ # matches
++obj-$(CONFIG_IP_NF_MATCH_IPP2P) += ipt_ipp2p.o
+ obj-$(CONFIG_IP_NF_MATCH_ADDRTYPE) += ipt_addrtype.o
+ obj-$(CONFIG_IP_NF_MATCH_AH) += ipt_ah.o
+ obj-$(CONFIG_IP_NF_MATCH_ECN) += ipt_ecn.o
similarity index 71%
rename from src/patches/openswan-2.6.20_noxmlto.patch
rename to src/patches/openswan-2.6.24_noxmlto.patch
index 5898bd5f406090d6f8faa4a37a0cf51e1879b160..dc0c30cbb5341025e1af4937e503aca59588a237 100644 (file)
@@ -1,7 +1,25 @@
-diff -Nur openswan-2.6.20dr2.old/programs/pluto/Makefile openswan-2.6.20dr2/programs/pluto/Makefile
---- openswan-2.6.20dr2.old/programs/pluto/Makefile     2008-12-20 19:53:00.000000000 +0100
-+++ openswan-2.6.20dr2/programs/pluto/Makefile 2008-12-20 20:14:07.000000000 +0100
-@@ -171,7 +171,7 @@
+diff -Naur openswan-2.6.24.org/programs/_confread/Makefile openswan-2.6.24/programs/_confread/Makefile
+--- openswan-2.6.24.org/programs/_confread/Makefile    2010-01-10 02:34:38.000000000 +0100
++++ openswan-2.6.24/programs/_confread/Makefile        2010-01-10 22:44:33.000000000 +0100
+@@ -16,7 +16,13 @@
+ OPENSWANSRCDIR?=$(shell cd ../..; pwd)
+ include ${OPENSWANSRCDIR}/Makefile.inc
+-EXTRA5MAN=ipsec.conf.5
++SUBDIRS=doc lib programs testing
++ifeq ($(findstring $(SUBDIRS),doc),doc)
++  EXTRA5MAN=ipsec.conf.5
++else
++  EXTRA5MAN=
++endif
++
+ CONFFILES=ipsec.conf
+ EXCONFILES=ipsec.win2k.conf
+ SOURCEDIR=_confread
+diff -Naur openswan-2.6.24.org/programs/pluto/Makefile openswan-2.6.24/programs/pluto/Makefile
+--- openswan-2.6.24.org/programs/pluto/Makefile        2010-01-10 02:34:38.000000000 +0100
++++ openswan-2.6.24/programs/pluto/Makefile    2010-01-10 22:51:15.000000000 +0100
+@@ -172,7 +172,7 @@
  all: $(BINNAMEPLUTO) $(BINNAMEADNSIFNEEDED) $(BINNAMEWHACK) #$(BINNAMEWHACKINIT) 
  programs: $(BINNAMEPLUTO) $(BINNAMEADNSIFNEEDED) $(BINNAMEWHACK) #$(BINNAMEWHACKINIT)
  clean:        cleanall
@@ -10,16 +28,16 @@ diff -Nur openswan-2.6.20dr2.old/programs/pluto/Makefile openswan-2.6.20dr2/prog
  endif
  
  doinstall: all
-@@ -187,6 +187,9 @@
+@@ -188,6 +188,9 @@
        $(INSTALL) $(INSTBINFLAGS) $(BINNAMEPLUTO) $(BINNAMEWHACK) $(LIBEXECDIR)
        #$(INSTALL) $(INSTSUIDFLAGS) $(BINNAMEWHACKINIT) $(LIBEXECDIR)
        if $(USE_ADNS) ; then $(INSTALL) $(INSTBINFLAGS) $(BINNAMEADNS)  $(LIBEXECDIR) ; fi
 +
 +ifeq ($(findstring $(SUBDIRS),doc),doc)
 +doinstalldoc:
-       ( cd ${OPENSWANSRCDIR}/programs/pluto ; xmlto man pluto.8.xml ; mv ipsec_pluto.8 pluto.8; xmlto man ipsec.secrets.5.xml)
        $(INSTALL) $(INSTMANFLAGS) ${srcdir}pluto.8 $(PMANDIR)/ipsec_pluto.8
        sh ${OPENSWANSRCDIR}/packaging/utils/manlink ${srcdir}pluto.8 | \
+               while read from to ; \
 @@ -201,10 +204,7 @@
                 ln -s -f $$from $(FMANDIR)/$$to; \
                done
@@ -48,21 +66,3 @@ diff -Nur openswan-2.6.20dr2.old/programs/pluto/Makefile openswan-2.6.20dr2/prog
  
  alg_info_test: alg_info_test.o ike_alg.o constants.o defs.o log.o db_ops.o crypto.o $(LIBDESLITE) $(OPENSWANLIB)
        $(CC) -o $@ $^ $(LDFLAGS) $(LIBSPLUTO)
-diff -Nur openswan-2.6.20dr2.old/programs/_confread/Makefile openswan-2.6.20dr2/programs/_confread/Makefile
---- openswan-2.6.20dr2.old/programs/_confread/Makefile 2008-12-20 19:53:00.000000000 +0100
-+++ openswan-2.6.20dr2/programs/_confread/Makefile     2008-12-21 00:13:23.000000000 +0100
-@@ -16,7 +16,13 @@
- OPENSWANSRCDIR?=$(shell cd ../..; pwd)
- include ${OPENSWANSRCDIR}/Makefile.inc
--EXTRA5MAN=ipsec.conf.5
-+SUBDIRS=doc lib programs testing
-+ifeq ($(findstring $(SUBDIRS),doc),doc)
-+  EXTRA5MAN=ipsec.conf.5
-+else
-+  EXTRA5MAN=
-+endif
-+
- CONFFILES=ipsec.conf
- EXCONFILES=ipsec.win2k.conf
- SOURCEDIR=_confread