mirror of
				git://git.openwrt.org/openwrt/openwrt.git
				synced 2025-11-04 06:54:27 -05:00 
			
		
		
		
	Add support for IP over ATM
SVN-Revision: 8782
This commit is contained in:
		
							parent
							
								
									5011d6129c
								
							
						
					
					
						commit
						ea48798b9f
					
				@ -29,6 +29,18 @@ define Package/linux-atm/description
 | 
			
		||||
  This package contains a library for accessing the Linux ATM subsystem.
 | 
			
		||||
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
 | 
			
		||||
	$(call Build/Configure/Default)
 | 
			
		||||
	# 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
 | 
			
		||||
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,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