Witam

W załączniku poprawiony ndiswrapper, podbity do najnowszej wersji,
buduje się na x86_64 i pracuje poprawnie na kernelu 2.6.33.5 bez
grsecurity.

Pozdrawiam
Jacek Sapiński

--- ndiswrapper.spec.old	2010-06-07 08:19:25.000000000 +0200
+++ ndiswrapper.spec	2010-06-07 08:20:39.000000000 +0200
@@ -13,20 +13,19 @@
 %undefine	with_userspace
 %endif
 
-%define		rel	4
+%define		rel	1
 %define		pname	ndiswrapper
 Summary:	Tools to "wrap around" NDIS drivers
 Summary(pl.UTF-8):	Narzędzia "opakowujące" sterowniki NDIS
 Name:		ndiswrapper
-Version:	1.52
+Version:	1.56
 Release:	%{rel}
 Epoch:		1
 License:	GPL
 Group:		Base/Kernel
 Source0:	http://dl.sourceforge.net/ndiswrapper/%{pname}-%{version}.tar.gz
-# Source0-md5:	3ab2aeef398d29df3a40d40fa499405e
-Patch0:		ndiswrapper-2.6.27.patch
-Patch1:		ndiswrapper-CVE-2008-4395.patch
+# Source0-md5:	1431f7ed5f8e92e752d330bbb3aed333
+Patch0:		ndiswrapper-2.6.33.patch
 URL:		http://ndiswrapper.sourceforge.net/
 %if %{with kernel}
 %ifarch %{ix86}
@@ -94,7 +93,6 @@
 %prep
 %setup -q -n %{pname}-%{version}
 %patch0 -p1
-%patch1 -p1
 %{__sed} -i -e 's#"loader.h"#"../driver/loader.h"#g' utils/loadndisdriver.c
 %{__sed} -i -e 's#$(KBUILD)/.config#$(KBUILD)/config-%{!?with_dist_kernel:non}dist#g' driver/Makefile
 %{__sed} -i -e 's...@kbuild := $(shell readlink -f /lib/modules/$(KVERS)/source)@@g' driver/Makefile
@@ -110,15 +108,13 @@
 %endif
 
 %if %{with kernel}
-cd driver
-%{__make} win2lin_stubs.h compat.h gen_exports \
 %ifarch %{x8664}
 	CONFIG_X86_64=y \
 %endif
 	KBUILD="%{_kernelsrcdir}"
 
 export KBUILD="%{_kernelsrcdir}"
-%build_kernel_modules -m ndiswrapper \
+%build_kernel_modules -C driver -m ndiswrapper \
 %ifarch %{x8664}
 	CONFIG_X86_64=y \
 %endif
diff -urN ndiswrapper-1.55/driver/Makefile ndiswrapper-1.55-new/driver/Makefile
--- ndiswrapper-1.55/driver/Makefile	2009-06-29 04:09:27.000000000 +0200
+++ ndiswrapper-1.55-new/driver/Makefile	2010-01-12 16:41:48.000000000 +0100
@@ -171,7 +171,7 @@
 		echo; echo; \
 		exit 1; \
 	fi
-	@if [ -z "$(CONFIG_WIRELESS_EXT)$(CONFIG_NET_RADIO)" ]; then \
+	@if [ -z "$(CONFIG_CFG80211_WEXT)$(CONFIG_NET_RADIO)" ]; then \
 		echo; echo; \
 		echo "*** WARNING: This kernel lacks wireless extensions."; \
 		echo "Wireless drivers will not work properly."; \
diff -urN ndiswrapper-1.55/driver/ndis.c ndiswrapper-1.55-new/driver/ndis.c
--- ndiswrapper-1.55/driver/ndis.c	2009-06-29 04:09:27.000000000 +0200
+++ ndiswrapper-1.55-new/driver/ndis.c	2010-01-12 16:41:20.000000000 +0100
@@ -2027,7 +2027,7 @@
 		switch (si->status_type) {
 		case Ndis802_11StatusType_MediaStreamMode:
 			break;
-#ifdef CONFIG_WIRELESS_EXT
+#ifdef CONFIG_CFG80211_WEXT
 		case Ndis802_11StatusType_Authentication:
 			buf = (char *)buf + sizeof(*si);
 			len -= sizeof(*si);
diff -urN ndiswrapper-1.55/driver/ntoskernel.h ndiswrapper-1.55-new/driver/ntoskernel.h
--- ndiswrapper-1.55/driver/ntoskernel.h	2009-06-29 04:09:27.000000000 +0200
+++ ndiswrapper-1.55-new/driver/ntoskernel.h	2010-01-12 16:41:28.000000000 +0100
@@ -82,8 +82,8 @@
 #define PCI_DMA_MAP_ERROR(dma_addr) dma_mapping_error(dma_addr)
 
 
-#if defined(CONFIG_NET_RADIO) && !defined(CONFIG_WIRELESS_EXT)
-#define CONFIG_WIRELESS_EXT
+#if defined(CONFIG_NET_RADIO) && !defined(CONFIG_CFG80211_WEXT)
+#define CONFIG_CFG80211_WEXT
 #endif
 
 #define prepare_wait_condition(task, var, value)	\
diff -urN ndiswrapper-1.55/driver/wrapndis.c ndiswrapper-1.55-new/driver/wrapndis.c
--- ndiswrapper-1.55/driver/wrapndis.c	2009-06-29 04:09:27.000000000 +0200
+++ ndiswrapper-1.55-new/driver/wrapndis.c	2010-01-12 16:41:53.000000000 +0100
@@ -988,7 +988,7 @@
 
 static void link_status_off(struct ndis_device *wnd)
 {
-#ifdef CONFIG_WIRELESS_EXT
+#ifdef CONFIG_CFG80211_WEXT
 	union iwreq_data wrqu;
 
 	memset(&wrqu, 0, sizeof(wrqu));
@@ -1000,7 +1000,7 @@
 
 static void link_status_on(struct ndis_device *wnd)
 {
-#ifdef CONFIG_WIRELESS_EXT
+#ifdef CONFIG_CFG80211_WEXT
 	struct ndis_assoc_info *ndis_assoc_info;
 	union iwreq_data wrqu;
 	NDIS_STATUS res;
@@ -1008,7 +1008,7 @@
 #endif
 
 	ENTER2("");
-#ifdef CONFIG_WIRELESS_EXT
+#ifdef CONFIG_CFG80211_WEXT
 	memset(&wrqu, 0, sizeof(wrqu));
 	ndis_assoc_info = kzalloc(assoc_size, GFP_KERNEL);
 	if (!ndis_assoc_info) {
_______________________________________________
pld-devel-pl mailing list
[email protected]
http://lists.pld-linux.org/mailman/listinfo/pld-devel-pl

Odpowiedź listem elektroniczym