ndiswrapper fix build with upstream.patch
This commit is contained in:
@@ -13,9 +13,6 @@ from pisi.actionsapi import get
|
|||||||
KDIR = kerneltools.getKernelVersion()
|
KDIR = kerneltools.getKernelVersion()
|
||||||
|
|
||||||
def build():
|
def build():
|
||||||
shelltools.system("patch -p1 < ndiswrapper-1.59.patch")
|
|
||||||
shelltools.system("patch -p1 < kernel-4.2.patch")
|
|
||||||
|
|
||||||
autotools.make("-C driver KVERS_UNAME=%s" % KDIR)
|
autotools.make("-C driver KVERS_UNAME=%s" % KDIR)
|
||||||
|
|
||||||
autotools.make("-C utils")
|
autotools.make("-C utils")
|
||||||
|
|||||||
@@ -1,33 +0,0 @@
|
|||||||
diff -Npur "ndiswrapper-1 .59.orig/driver/loader.c" "ndiswrapper-1 .59/driver/loader.c"
|
|
||||||
--- "ndiswrapper-1 .59.orig/driver/loader.c" 2013-11-28 20:42:35.000000000 +0100
|
|
||||||
+++ "ndiswrapper-1 .59/driver/loader.c" 2015-08-01 18:25:08.302141265 +0200
|
|
||||||
@@ -22,6 +22,7 @@
|
|
||||||
#include <linux/kmod.h>
|
|
||||||
#include <linux/miscdevice.h>
|
|
||||||
#include <asm/uaccess.h>
|
|
||||||
+#include <linux/vmalloc.h>
|
|
||||||
|
|
||||||
/*
|
|
||||||
Network adapter: ClassGuid = {4d36e972-e325-11ce-bfc1-08002be10318}
|
|
||||||
diff -Npur "ndiswrapper-1 .59.orig/driver/ntoskernel.c" "ndiswrapper-1 .59/driver/ntoskernel.c"
|
|
||||||
--- "ndiswrapper-1 .59.orig/driver/ntoskernel.c" 2013-11-28 20:42:36.000000000 +0100
|
|
||||||
+++ "ndiswrapper-1 .59/driver/ntoskernel.c" 2015-08-01 18:24:55.895942032 +0200
|
|
||||||
@@ -19,6 +19,7 @@
|
|
||||||
#include "pnp.h"
|
|
||||||
#include "loader.h"
|
|
||||||
#include "ntoskernel_exports.h"
|
|
||||||
+#include <linux/vmalloc.h>
|
|
||||||
|
|
||||||
/* MDLs describe a range of virtual address with an array of physical
|
|
||||||
* pages right after the header. For different ranges of virtual
|
|
||||||
diff -Npur "ndiswrapper-1 .59.orig/driver/pe_linker.c" "ndiswrapper-1 .59/driver/pe_linker.c"
|
|
||||||
--- "ndiswrapper-1 .59.orig/driver/pe_linker.c" 2013-11-28 20:42:36.000000000 +0100
|
|
||||||
+++ "ndiswrapper-1 .59/driver/pe_linker.c" 2015-08-01 18:28:37.992752176 +0200
|
|
||||||
@@ -25,6 +25,7 @@
|
|
||||||
//#define DEBUGLINKER 2
|
|
||||||
|
|
||||||
#include "ntoskernel.h"
|
|
||||||
+#include <linux/vmalloc.h>
|
|
||||||
|
|
||||||
#endif
|
|
||||||
|
|
||||||
@@ -1,41 +0,0 @@
|
|||||||
From: Julian Andres Klode <jak@debian.org>
|
|
||||||
Date: Tue, 12 May 2015 17:11:11 +0200
|
|
||||||
Subject: Support kernel 4.0
|
|
||||||
|
|
||||||
---
|
|
||||||
driver/ndis.c | 8 ++++++--
|
|
||||||
1 file changed, 6 insertions(+), 2 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/driver/ndis.c b/driver/ndis.c
|
|
||||||
index 9ace34b..fafd2e7 100644
|
|
||||||
--- a/driver/ndis.c
|
|
||||||
+++ b/driver/ndis.c
|
|
||||||
@@ -25,6 +25,10 @@
|
|
||||||
#define MAX_ALLOCATED_NDIS_PACKETS TX_RING_SIZE
|
|
||||||
#define MAX_ALLOCATED_NDIS_BUFFERS TX_RING_SIZE
|
|
||||||
|
|
||||||
+#if LINUX_VERSION_CODE < KERNEL_VERSION(4,0,0)
|
|
||||||
+#define strncasecmp strnicmp
|
|
||||||
+#endif
|
|
||||||
+
|
|
||||||
static struct work_struct ndis_work;
|
|
||||||
static struct nt_list ndis_work_list;
|
|
||||||
static spinlock_t ndis_work_list_lock;
|
|
||||||
@@ -438,7 +442,7 @@ static int read_setting(struct nt_list *setting_list, char *keyname, int length,
|
|
||||||
struct wrap_device_setting *setting;
|
|
||||||
mutex_lock(&loader_mutex);
|
|
||||||
nt_list_for_each_entry(setting, setting_list, list) {
|
|
||||||
- if (strnicmp(keyname, setting->name, length) == 0) {
|
|
||||||
+ if (strncasecmp(keyname, setting->name, length) == 0) {
|
|
||||||
TRACE2("setting %s='%s'", keyname, setting->value);
|
|
||||||
mutex_unlock(&loader_mutex);
|
|
||||||
*param = ndis_encode_setting(setting, type);
|
|
||||||
@@ -502,7 +506,7 @@ wstdcall void WIN_FUNC(NdisWriteConfiguration,4)
|
|
||||||
|
|
||||||
mutex_lock(&loader_mutex);
|
|
||||||
nt_list_for_each_entry(setting, &nmb->wnd->wd->settings, list) {
|
|
||||||
- if (strnicmp(keyname, setting->name, ansi.length) == 0) {
|
|
||||||
+ if (strncasecmp(keyname, setting->name, ansi.length) == 0) {
|
|
||||||
mutex_unlock(&loader_mutex);
|
|
||||||
if (ndis_decode_setting(setting, param))
|
|
||||||
*status = NDIS_STATUS_FAILURE;
|
|
||||||
@@ -0,0 +1,100 @@
|
|||||||
|
diff -Nuar ndiswrapper-1.60.orig/ChangeLog ndiswrapper-1.60/ChangeLog
|
||||||
|
--- ndiswrapper-1.60.orig/ChangeLog 2016-07-27 19:05:10.594950240 +0300
|
||||||
|
+++ ndiswrapper-1.60/ChangeLog 2016-07-27 19:06:04.678949272 +0300
|
||||||
|
@@ -1,7 +1,3 @@
|
||||||
|
-Version 1.60 2016-05-01
|
||||||
|
-=======================
|
||||||
|
-* Support for Linux kernel up to 4.5
|
||||||
|
-
|
||||||
|
Version 1.59 2013-11-28
|
||||||
|
=======================
|
||||||
|
* Support for Linux kernels from 2.6.13 to 3.12
|
||||||
|
diff -Nuar ndiswrapper-1.60.orig/driver/.gitignore ndiswrapper-1.60/driver/.gitignore
|
||||||
|
--- ndiswrapper-1.60.orig/driver/.gitignore 1970-01-01 02:00:00.000000000 +0200
|
||||||
|
+++ ndiswrapper-1.60/driver/.gitignore 2016-07-27 19:06:04.678949272 +0300
|
||||||
|
@@ -0,0 +1,11 @@
|
||||||
|
+*.ko
|
||||||
|
+*.mod.c
|
||||||
|
+*.o
|
||||||
|
+.*.cmd
|
||||||
|
+*_exports.h
|
||||||
|
+/.tmp_versions/
|
||||||
|
+/Module.markers
|
||||||
|
+/Module.symvers
|
||||||
|
+/modules.order
|
||||||
|
+/ndis_exports.h
|
||||||
|
+/win2lin_stubs.h
|
||||||
|
diff -Nuar ndiswrapper-1.60.orig/driver/loader.h ndiswrapper-1.60/driver/loader.h
|
||||||
|
--- ndiswrapper-1.60.orig/driver/loader.h 2016-07-27 19:05:10.593950240 +0300
|
||||||
|
+++ ndiswrapper-1.60/driver/loader.h 2016-07-27 19:06:09.795949180 +0300
|
||||||
|
@@ -16,10 +16,6 @@
|
||||||
|
#ifndef _LOADER_H_
|
||||||
|
#define _LOADER_H_
|
||||||
|
|
||||||
|
-#if LINUX_VERSION_CODE > KERNEL_VERSION(4,0,0)
|
||||||
|
-#include <linux/vmalloc.h>
|
||||||
|
-#endif
|
||||||
|
-
|
||||||
|
#include "ndiswrapper.h"
|
||||||
|
|
||||||
|
#ifndef __KERNEL__
|
||||||
|
diff -Nuar ndiswrapper-1.60.orig/driver/ntoskernel.h ndiswrapper-1.60/driver/ntoskernel.h
|
||||||
|
--- ndiswrapper-1.60.orig/driver/ntoskernel.h 2016-07-27 19:05:10.593950240 +0300
|
||||||
|
+++ ndiswrapper-1.60/driver/ntoskernel.h 2016-07-27 19:06:13.834949108 +0300
|
||||||
|
@@ -46,6 +46,8 @@
|
||||||
|
#include <linux/percpu.h>
|
||||||
|
#include <linux/kthread.h>
|
||||||
|
#include <linux/workqueue.h>
|
||||||
|
+#include <linux/vmalloc.h>
|
||||||
|
+
|
||||||
|
|
||||||
|
#if !defined(CONFIG_X86) && !defined(CONFIG_X86_64)
|
||||||
|
#error "this module is for x86 or x86_64 architectures only"
|
||||||
|
@@ -358,8 +360,18 @@
|
||||||
|
#define prandom_seed(seed) net_srandom(seed)
|
||||||
|
#endif
|
||||||
|
|
||||||
|
-#if LINUX_VERSION_CODE < KERNEL_VERSION(4,0,0)
|
||||||
|
-#define strncasecmp strnicmp
|
||||||
|
+#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,22)
|
||||||
|
+static int strncasecmp(const char *s1, const char *s2, size_t n)
|
||||||
|
+{
|
||||||
|
+ strnicmp(s1, s2, n);
|
||||||
|
+}
|
||||||
|
+#endif
|
||||||
|
+
|
||||||
|
+#if LINUX_VERSION_CODE < KERNEL_VERSION(4,7,0)
|
||||||
|
+static inline void netif_trans_update(struct net_device *dev)
|
||||||
|
+{
|
||||||
|
+ dev->trans_start = jiffies;
|
||||||
|
+}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* TICK is 100ns */
|
||||||
|
diff -Nuar ndiswrapper-1.60.orig/driver/wrapndis.c ndiswrapper-1.60/driver/wrapndis.c
|
||||||
|
--- ndiswrapper-1.60.orig/driver/wrapndis.c 2016-07-27 19:05:10.593950240 +0300
|
||||||
|
+++ ndiswrapper-1.60/driver/wrapndis.c 2016-07-27 19:06:23.295948938 +0300
|
||||||
|
@@ -704,7 +704,7 @@
|
||||||
|
n = wnd->max_tx_packets;
|
||||||
|
n = mp_tx_packets(wnd, wnd->tx_ring_start, n);
|
||||||
|
if (n) {
|
||||||
|
- wnd->net_dev->trans_start = jiffies;
|
||||||
|
+ netif_trans_update(wnd->net_dev);
|
||||||
|
wnd->tx_ring_start =
|
||||||
|
(wnd->tx_ring_start + n) % TX_RING_SIZE;
|
||||||
|
wnd->is_tx_ring_full = 0;
|
||||||
|
diff -Nuar ndiswrapper-1.60.orig/ndiswrapper.spec ndiswrapper-1.60/ndiswrapper.spec
|
||||||
|
--- ndiswrapper-1.60.orig/ndiswrapper.spec 2016-07-27 19:05:10.594950240 +0300
|
||||||
|
+++ ndiswrapper-1.60/ndiswrapper.spec 2016-07-27 19:06:28.472948846 +0300
|
||||||
|
@@ -1,5 +1,5 @@
|
||||||
|
# Define ndiswrapper_version only if it is not already defined.
|
||||||
|
-%{!?ndiswrapper_version: %define ndiswrapper_version 1.60}
|
||||||
|
+%{!?ndiswrapper_version: %define ndiswrapper_version svn}
|
||||||
|
%{!?ndiswrapper_release: %define ndiswrapper_release 1}
|
||||||
|
|
||||||
|
# Define kernel version if not already defined
|
||||||
|
diff -Nuar ndiswrapper-1.60.orig/utils/.gitignore ndiswrapper-1.60/utils/.gitignore
|
||||||
|
--- ndiswrapper-1.60.orig/utils/.gitignore 1970-01-01 02:00:00.000000000 +0200
|
||||||
|
+++ ndiswrapper-1.60/utils/.gitignore 2016-07-27 19:06:29.224948832 +0300
|
||||||
|
@@ -0,0 +1 @@
|
||||||
|
+/loadndisdriver
|
||||||
@@ -13,23 +13,19 @@
|
|||||||
<IsA>driver</IsA>
|
<IsA>driver</IsA>
|
||||||
<Summary>A network driver wrapper</Summary>
|
<Summary>A network driver wrapper</Summary>
|
||||||
<Description>module-ndiswrapper allows you to use Windows XP drivers for WLAN cards without proper Linux drivers.</Description>
|
<Description>module-ndiswrapper allows you to use Windows XP drivers for WLAN cards without proper Linux drivers.</Description>
|
||||||
<Archive sha1sum="75fbbda677fe91ee07a6f6a8e19b1f3e2479540f" type="targz">http://download.sourceforge.net/ndiswrapper/ndiswrapper-1.59.tar.gz</Archive>
|
<Archive sha1sum="20998237cf6d37b86391dc8736c10031110db578" type="targz">http://download.sourceforge.net/ndiswrapper/ndiswrapper-1.60.tar.gz</Archive>
|
||||||
<BuildDependencies>
|
<BuildDependencies>
|
||||||
<Dependency version="4.6.3">kernel-module-headers</Dependency>
|
<Dependency version="4.7.0">kernel-module-headers</Dependency>
|
||||||
</BuildDependencies>
|
</BuildDependencies>
|
||||||
<Patches>
|
<Patches>
|
||||||
<Patch>support_kernel-4.0.patch</Patch>
|
<Patch>upstream.patch</Patch>
|
||||||
</Patches>
|
</Patches>
|
||||||
<AdditionalFiles>
|
|
||||||
<AdditionalFile target="ndiswrapper-1.59.patch">ndiswrapper-1.59.patch</AdditionalFile>
|
|
||||||
<AdditionalFile target="kernel-4.2.patch">kernel-4.2.patch</AdditionalFile>
|
|
||||||
</AdditionalFiles>
|
|
||||||
</Source>
|
</Source>
|
||||||
|
|
||||||
<Package>
|
<Package>
|
||||||
<Name>ndiswrapper</Name>
|
<Name>ndiswrapper</Name>
|
||||||
<RuntimeDependencies>
|
<RuntimeDependencies>
|
||||||
<Dependency version="4.6.3">kernel</Dependency>
|
<Dependency version="4.7.0">kernel</Dependency>
|
||||||
</RuntimeDependencies>
|
</RuntimeDependencies>
|
||||||
<Files>
|
<Files>
|
||||||
<Path fileType="library" permanent="true">/lib/modules</Path>
|
<Path fileType="library" permanent="true">/lib/modules</Path>
|
||||||
@@ -45,6 +41,13 @@
|
|||||||
</Package>
|
</Package>
|
||||||
|
|
||||||
<History>
|
<History>
|
||||||
|
<Update release="3">
|
||||||
|
<Date>2016-07-27</Date>
|
||||||
|
<Version>1.60</Version>
|
||||||
|
<Comment>Release Bump, rebuild for new kernel.</Comment>
|
||||||
|
<Name>PisiLinux Community</Name>
|
||||||
|
<Email>admin@pisilinux.org</Email>
|
||||||
|
</Update>
|
||||||
<Update release="2">
|
<Update release="2">
|
||||||
<Date>2016-06-28</Date>
|
<Date>2016-06-28</Date>
|
||||||
<Version>1.59</Version>
|
<Version>1.59</Version>
|
||||||
|
|||||||
Reference in New Issue
Block a user