overlay/net-wireless/ndiswrapper/files/ndiswrapper-1.59-4.0.patch

34 lines
1.3 KiB
Diff

Index: driver/ndis.c
===================================================================
--- 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;