summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--pfinet/linux-src/include/linux/isdn_compat.h108
-rw-r--r--pfinet/linux-src/net/core/dev.c2
-rw-r--r--pfinet/linux-src/net/ipv4/arp.c9
3 files changed, 8 insertions, 111 deletions
diff --git a/pfinet/linux-src/include/linux/isdn_compat.h b/pfinet/linux-src/include/linux/isdn_compat.h
deleted file mode 100644
index db002c41..00000000
--- a/pfinet/linux-src/include/linux/isdn_compat.h
+++ /dev/null
@@ -1,108 +0,0 @@
-#ifdef __KERNEL__
-/* Compatibility for various Linux kernel versions */
-
-#ifndef _LINUX_ISDN_COMPAT_H
-#define _LINUX_ISDN_COMPAT_H
-
-#ifndef LINUX_VERSION_CODE
-#include <linux/version.h>
-#endif
-
-#ifndef KERNEL_VERSION
-#define KERNEL_VERSION(x,y,z) (((x)<<16)+((y)<<8)+(z))
-#endif
-
-#if LINUX_VERSION_CODE < KERNEL_VERSION(2,1,0)
-#include <linux/mm.h>
-
-#define ioremap vremap
-#define ioremap_nocache vremap
-#define iounmap vfree
-
-static inline unsigned long copy_from_user(void *to, const void *from, unsigned long n)
-{
- int i;
- if ((i = verify_area(VERIFY_READ, from, n)) != 0)
- return i;
- memcpy_fromfs(to, from, n);
- return 0;
-}
-
-static inline unsigned long copy_to_user(void *to, const void *from, unsigned long n)
-{
- int i;
- if ((i = verify_area(VERIFY_WRITE, to, n)) != 0)
- return i;
- memcpy_tofs(to, from, n);
- return 0;
-}
-
-#define GET_USER(x, addr) ( x = get_user(addr) )
-#ifdef __alpha__ /* needed for 2.0.x with alpha-patches */
-#define RWTYPE long
-#define LSTYPE long
-#define RWARG unsigned long
-#else
-#define RWTYPE int
-#define LSTYPE int
-#define RWARG int
-#endif
-#define LSARG off_t
-#else
-#include <asm/uaccess.h>
-#define GET_USER get_user
-#define PUT_USER put_user
-#define RWTYPE long
-#define LSTYPE long long
-#define RWARG unsigned long
-#define LSARG long long
-#endif /* LINUX_VERSION_CODE */
-
-#if LINUX_VERSION_CODE < KERNEL_VERSION(2,1,15)
-#define SET_SKB_FREE(x) ( x->free = 1 )
-#define idev_kfree_skb(a,b) dev_kfree_skb(a,b)
-#else
-#define SET_SKB_FREE(x)
-#define idev_kfree_skb(a,b) dev_kfree_skb(a)
-#endif
-
-#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,1,18)
-#define COMPAT_HAS_NEW_SYMTAB
-#endif
-
-#if LINUX_VERSION_CODE < KERNEL_VERSION(2,1,31)
-#define CLOSETYPE void
-#define CLOSEVAL
-#else
-#define CLOSETYPE int
-#define CLOSEVAL (0)
-#endif
-
-#if LINUX_VERSION_CODE < KERNEL_VERSION(2,1,37)
-#define test_and_clear_bit clear_bit
-#define test_and_set_bit set_bit
-#endif
-
-#if LINUX_VERSION_CODE < KERNEL_VERSION(2,1,81)
-#define kstat_irqs( PAR ) kstat.interrupts[PAR]
-#endif
-
-#if LINUX_VERSION_CODE > KERNEL_VERSION(2,1,91)
-#define COMPAT_HAS_NEW_PCI
-#if LINUX_VERSION_CODE < KERNEL_VERSION(2,3,13)
-#define get_pcibase(ps, nr) ps->base_address[nr]
-#else
-#define get_pcibase(ps, nr) ps->resource[nr].start
-#endif
-#endif
-
-#if LINUX_VERSION_CODE < KERNEL_VERSION(2,1,127)
-#define schedule_timeout(a) current->timeout = jiffies + (a); schedule ();
-#endif
-
-#if LINUX_VERSION_CODE > KERNEL_VERSION(2,3,0)
-#define COMPAT_HAS_NEW_WAITQ
-#endif
-
-#endif /* __KERNEL__ */
-#endif /* _LINUX_ISDN_COMPAT_H */
diff --git a/pfinet/linux-src/net/core/dev.c b/pfinet/linux-src/net/core/dev.c
index 1dba3926..b945acc7 100644
--- a/pfinet/linux-src/net/core/dev.c
+++ b/pfinet/linux-src/net/core/dev.c
@@ -1284,7 +1284,7 @@ static int sprintf_wireless_stats(char *buffer, struct device *dev)
stats->qual.level,
stats->qual.updated & 2 ? '.' : ' ',
stats->qual.noise,
- stats->qual.updated & 3 ? '.' : ' ',
+ stats->qual.updated & 4 ? '.' : ' ',
stats->discard.nwid,
stats->discard.code,
stats->discard.misc);
diff --git a/pfinet/linux-src/net/ipv4/arp.c b/pfinet/linux-src/net/ipv4/arp.c
index 045513a8..508142d4 100644
--- a/pfinet/linux-src/net/ipv4/arp.c
+++ b/pfinet/linux-src/net/ipv4/arp.c
@@ -194,9 +194,14 @@ int arp_mc_map(u32 addr, u8 *haddr, struct device *dev, int dir)
{
switch (dev->type) {
case ARPHRD_ETHER:
- case ARPHRD_IEEE802:
case ARPHRD_FDDI:
- ip_eth_mc_map(addr, haddr);
+ ip_eth_mc_map(addr, haddr) ;
+ return 0 ;
+ case ARPHRD_IEEE802:
+ if ( (dev->name[0] == 't') && (dev->name[1] == 'r')) /* Token Ring */
+ ip_tr_mc_map(addr,haddr) ;
+ else
+ ip_eth_mc_map(addr, haddr);
return 0;
default:
if (dir) {