mirror of
git://projects.qi-hardware.com/openwrt-xburst.git
synced 2024-11-27 18:35:55 +02:00
Add support for IP over ATM
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@8782 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
parent
f4321239b7
commit
49e910b9cd
@ -29,6 +29,18 @@ define Package/linux-atm/description
|
|||||||
This package contains a library for accessing the Linux ATM subsystem.
|
This package contains a library for accessing the Linux ATM subsystem.
|
||||||
endef
|
endef
|
||||||
|
|
||||||
|
define Package/atm-tools
|
||||||
|
SECTION:=net
|
||||||
|
CATEGORY:=Network
|
||||||
|
DEPENDS:=linux-atm
|
||||||
|
TITLE:=Linux ATM tools
|
||||||
|
URL:=http://linux-atm.sourceforge.net/
|
||||||
|
endef
|
||||||
|
|
||||||
|
define Package/atm-tools/description
|
||||||
|
This package contains the Linux ATM tools.
|
||||||
|
endef
|
||||||
|
|
||||||
define Build/Configure
|
define Build/Configure
|
||||||
$(call Build/Configure/Default)
|
$(call Build/Configure/Default)
|
||||||
# prevent autoheader invocation
|
# prevent autoheader invocation
|
||||||
@ -62,4 +74,12 @@ define Package/linux-atm/install
|
|||||||
cp -f $(PKG_INSTALL_DIR)/usr/lib/libatm.so.1 $(1)/usr/lib
|
cp -f $(PKG_INSTALL_DIR)/usr/lib/libatm.so.1 $(1)/usr/lib
|
||||||
endef
|
endef
|
||||||
|
|
||||||
|
define Package/atm-tools/install
|
||||||
|
$(INSTALL_DIR) $(1)/usr/sbin/
|
||||||
|
$(CP) $(PKG_INSTALL_DIR)/usr/sbin/atmarp{,d} $(1)/usr/sbin/
|
||||||
|
$(INSTALL_DIR) $(1)/lib/network
|
||||||
|
$(INSTALL_BIN) ./files/ipoa.sh $(1)/lib/network/
|
||||||
|
endef
|
||||||
|
|
||||||
$(eval $(call BuildPackage,linux-atm))
|
$(eval $(call BuildPackage,linux-atm))
|
||||||
|
$(eval $(call BuildPackage,atm-tools))
|
||||||
|
34
package/linux-atm/files/ipoa.sh
Normal file
34
package/linux-atm/files/ipoa.sh
Normal file
@ -0,0 +1,34 @@
|
|||||||
|
scan_ipoa() {
|
||||||
|
config_get ifname "$1" ifname
|
||||||
|
ipoadev="${ipoadev:-0}"
|
||||||
|
config_get unit "$1" unit
|
||||||
|
[ -z "$unit" ] && {
|
||||||
|
config_set "$1" ifname "atm$ipoadev"
|
||||||
|
config_set "$1" unit "$ipoadev"
|
||||||
|
ipoadev="$(($ipoadev + 1))"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
setup_interface_ipoa() {
|
||||||
|
local iface="$1"
|
||||||
|
local config="$2"
|
||||||
|
|
||||||
|
config_get device "$config" device
|
||||||
|
config_get vpi "$config" vpi
|
||||||
|
vpi=${vpi:-8}
|
||||||
|
config_get vci "$config" vci
|
||||||
|
vci=${vci:-36}
|
||||||
|
|
||||||
|
config_get encaps "$config" encaps
|
||||||
|
case "$encaps" in
|
||||||
|
1|vc) ENCAPS="vc-encaps" ;;
|
||||||
|
*) ENCAPS="llc-encaps" ;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
config_get mtu "$cfg" mtu
|
||||||
|
mtu=${mtu:-1500}
|
||||||
|
atmarp -c $device
|
||||||
|
ifconfig $device $ip netmask $mask mtu $mtu up
|
||||||
|
atmarp -s $gw $vpi.$vci null
|
||||||
|
route add default gw $gw
|
||||||
|
}
|
49
package/linux-atm/patches/500-reenable_arpd.patch
Normal file
49
package/linux-atm/patches/500-reenable_arpd.patch
Normal file
@ -0,0 +1,49 @@
|
|||||||
|
diff -urN linux-atm-2.4.1/configure linux-atm-2.4.1.new/configure
|
||||||
|
--- linux-atm-2.4.1/configure 2007-09-15 21:07:25.000000000 +0200
|
||||||
|
+++ linux-atm-2.4.1.new/configure 2007-09-15 22:07:22.000000000 +0200
|
||||||
|
@@ -8825,7 +8825,7 @@
|
||||||
|
fi;
|
||||||
|
|
||||||
|
|
||||||
|
- ac_config_files="$ac_config_files Makefile doc/Makefile m4/Makefile src/Makefile src/include/Makefile src/lib/Makefile"
|
||||||
|
+ ac_config_files="$ac_config_files Makefile doc/Makefile m4/Makefile src/Makefile src/include/Makefile src/lib/Makefile src/arpd/Makefile"
|
||||||
|
cat >confcache <<\_ACEOF
|
||||||
|
# This file is a shell script that caches the results of configure
|
||||||
|
# tests run on this system so they can be shared between configure
|
||||||
|
@@ -9367,6 +9367,7 @@
|
||||||
|
"src/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/Makefile" ;;
|
||||||
|
"src/include/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/include/Makefile" ;;
|
||||||
|
"src/lib/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/lib/Makefile" ;;
|
||||||
|
+ "src/arpd/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/arpd/Makefile" ;;
|
||||||
|
"default-1" ) CONFIG_COMMANDS="$CONFIG_COMMANDS default-1" ;;
|
||||||
|
"config.h" ) CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;;
|
||||||
|
*) { { echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5
|
||||||
|
diff -urN linux-atm-2.4.1/configure.in linux-atm-2.4.1.new/configure.in
|
||||||
|
--- linux-atm-2.4.1/configure.in 2007-09-15 21:07:13.000000000 +0200
|
||||||
|
+++ linux-atm-2.4.1.new/configure.in 2007-09-15 21:08:16.000000000 +0200
|
||||||
|
@@ -153,5 +153,6 @@
|
||||||
|
src/Makefile \
|
||||||
|
src/include/Makefile \
|
||||||
|
src/lib/Makefile \
|
||||||
|
+ src/arpd/Makefile \
|
||||||
|
)
|
||||||
|
|
||||||
|
diff -urN linux-atm-2.4.1/src/Makefile.am linux-atm-2.4.1.new/src/Makefile.am
|
||||||
|
--- linux-atm-2.4.1/src/Makefile.am 2007-09-15 21:07:13.000000000 +0200
|
||||||
|
+++ linux-atm-2.4.1.new/src/Makefile.am 2007-09-15 21:08:27.000000000 +0200
|
||||||
|
@@ -1,2 +1,2 @@
|
||||||
|
-SUBDIRS = include lib
|
||||||
|
+SUBDIRS = include lib arpd
|
||||||
|
|
||||||
|
diff -urN linux-atm-2.4.1/src/Makefile.in linux-atm-2.4.1.new/src/Makefile.in
|
||||||
|
--- linux-atm-2.4.1/src/Makefile.in 2007-09-15 21:07:25.000000000 +0200
|
||||||
|
+++ linux-atm-2.4.1.new/src/Makefile.in 2007-09-15 22:10:03.000000000 +0200
|
||||||
|
@@ -96,7 +96,7 @@
|
||||||
|
VERSION = @VERSION@
|
||||||
|
YACC = @YACC@
|
||||||
|
|
||||||
|
-SUBDIRS = include lib
|
||||||
|
+SUBDIRS = include lib arpd
|
||||||
|
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
|
||||||
|
CONFIG_HEADER = ../config.h
|
||||||
|
CONFIG_CLEAN_FILES =
|
45
package/linux-atm/patches/600-arpd_includes.patch
Normal file
45
package/linux-atm/patches/600-arpd_includes.patch
Normal file
@ -0,0 +1,45 @@
|
|||||||
|
diff -Nru linux-atm-2.4.1.orig/src/arpd/io.c linux-atm-2.4.1/src/arpd/io.c
|
||||||
|
--- linux-atm-2.4.1.orig/src/arpd/io.c 2001-09-03 21:41:05.000000000 +0300
|
||||||
|
+++ linux-atm-2.4.1/src/arpd/io.c 2007-04-14 18:30:54.000000000 +0300
|
||||||
|
@@ -16,7 +16,7 @@
|
||||||
|
#include <sys/types.h>
|
||||||
|
#include <sys/socket.h>
|
||||||
|
#include <sys/ioctl.h>
|
||||||
|
-#include <net/if.h>
|
||||||
|
+#include <linux/if.h>
|
||||||
|
#include <netinet/in.h>
|
||||||
|
#include <atm.h>
|
||||||
|
#include <linux/atmclip.h> /* for CLIP_DEFAULT_IDLETIMER */
|
||||||
|
diff -urN linux-atm-2.4.1/src/arpd/arp.c linux-atm-2.4.1.new/src/arpd/arp.c
|
||||||
|
--- linux-atm-2.4.1/src/arpd/arp.c 2001-09-03 20:41:05.000000000 +0200
|
||||||
|
+++ linux-atm-2.4.1.new/src/arpd/arp.c 2007-09-15 22:15:05.000000000 +0200
|
||||||
|
@@ -15,7 +15,6 @@
|
||||||
|
#include <sys/types.h>
|
||||||
|
#include <sys/socket.h> /* for linux/if_arp.h */
|
||||||
|
#include <netinet/in.h> /* for ntohs, etc. */
|
||||||
|
-#define _LINUX_NETDEVICE_H /* very crude hack for glibc2 */
|
||||||
|
#include <linux/if_arp.h>
|
||||||
|
#include <linux/if_ether.h>
|
||||||
|
#include <atm.h>
|
||||||
|
diff -urN linux-atm-2.4.1/src/arpd/io.c linux-atm-2.4.1.new/src/arpd/io.c
|
||||||
|
--- linux-atm-2.4.1/src/arpd/io.c 2001-09-03 20:41:05.000000000 +0200
|
||||||
|
+++ linux-atm-2.4.1.new/src/arpd/io.c 2007-09-15 22:15:05.000000000 +0200
|
||||||
|
@@ -21,7 +21,6 @@
|
||||||
|
#include <atm.h>
|
||||||
|
#include <linux/atmclip.h> /* for CLIP_DEFAULT_IDLETIMER */
|
||||||
|
#include <linux/atmarp.h>
|
||||||
|
-#define _LINUX_NETDEVICE_H /* glibc2 */
|
||||||
|
#include <linux/if_arp.h>
|
||||||
|
|
||||||
|
#include "atmd.h"
|
||||||
|
diff -urN linux-atm-2.4.1/src/arpd/itf.c linux-atm-2.4.1.new/src/arpd/itf.c
|
||||||
|
--- linux-atm-2.4.1/src/arpd/itf.c 2001-09-03 20:41:05.000000000 +0200
|
||||||
|
+++ linux-atm-2.4.1.new/src/arpd/itf.c 2007-09-15 22:15:05.000000000 +0200
|
||||||
|
@@ -12,7 +12,6 @@
|
||||||
|
#include <sys/types.h>
|
||||||
|
#include <linux/atmclip.h>
|
||||||
|
#include <sys/socket.h>
|
||||||
|
-#define _LINUX_NETDEVICE_H /* glibc2 */
|
||||||
|
#include <linux/if_arp.h>
|
||||||
|
|
||||||
|
#include "atmd.h"
|
Loading…
Reference in New Issue
Block a user