# HG changeset patch # User Sebastien Decugis # Date 1283751616 -32400 # Node ID d1cb0dadc22d7ba5748ec94198c28a44adbbbfc8 # Parent 825a2992e3b9cabe797cc08a973ccbc454998cff SCTP support added upstream in OpenWRT: r22917 in openwrt, r22912 in packages diff -r 825a2992e3b9 -r d1cb0dadc22d contrib/OpenWRT/HOWTO --- a/contrib/OpenWRT/HOWTO Mon Sep 06 14:28:53 2010 +0900 +++ b/contrib/OpenWRT/HOWTO Mon Sep 06 14:40:16 2010 +0900 @@ -65,7 +65,7 @@ # echo "src/gz chavroux http://192.168.1.25/owrt/packages" >> /etc/opkg.conf # opkg update -8) Install freeDiameter, you're done. Optionnaly, install also certtool and libgnutls-extra on the router before, to +8) Install freeDiameter, you're done. Optionnaly, install also certtool on the router before, to generate the TLS certificate. # opkg install freeDiameter @@ -199,36 +199,42 @@ 3) Missing packages: ============================================== -There are other dependencies for freeDiameter that are not provided by OpenWRT packages. -For convenience, we include these meta-packages in the freeDiameter distribution -- but they -might not be up-to-date. - -a) Adding the contributed directory to the feeds - Add the following line in your feeds.conf file: -src-link freediameter /path/to/freediameter/contrib/OpenWRT/packages/ - -Then run: -$ scripts/feeds update - -This should allow you to install the missing dependencies as follow: - +UPDATE: Starting from revision r22917, sctp and kmod-sctp are included in the OpenWRT distribution, and have been removed +from freeDiameter package. One may consider using a freeDiameter package prior to 2010/09/05 in order to get the sctp +package, or a more recent OpenWRT environment. -b) SCTP library (note: you might alternatively compile freeDiameter without SCTP support). -$ scripts/feeds install sctp - - -c) Select these components in the menu: -$ make menuconfig -- Libraries ---> - sctp (M) - -Quit and save the new config, then: -$ make world - - -d) Install this on the router as well: - root@OpenWrt:~# opkg update - root@OpenWrt:~# opkg install sctp +PREVIOUS SITUATION: If you are using components prior to 2010/09/05, the following applies: +P: +P: There are other dependencies for freeDiameter that are not provided by OpenWRT packages. +P: For convenience, we include these meta-packages in the freeDiameter distribution -- but they +P: might not be up-to-date. +P: +P: a) Adding the contributed directory to the feeds +P: Add the following line in your feeds.conf file: +P: src-link freediameter /path/to/freediameter/contrib/OpenWRT/packages/ +P: +P: Then run: +P: $ scripts/feeds update +P: +P: This should allow you to install the missing dependencies as follow: +P: +P: +P: b) SCTP library (note: you might alternatively compile freeDiameter without SCTP support). +P: $ scripts/feeds install sctp +P: +P: +P: c) Select these components in the menu: +P: $ make menuconfig +P: - Libraries ---> +P: sctp (M) +P: +P: Quit and save the new config, then: +P: $ make world +P: +P: +P: d) Install this on the router as well: +P: root@OpenWrt:~# opkg update +P: root@OpenWrt:~# opkg install sctp ============================================== @@ -247,6 +253,9 @@ Quit and save the new config, then: $ make world +On your router, run: +# opkg update +# opkg install freeDiameter diff -r 825a2992e3b9 -r d1cb0dadc22d contrib/OpenWRT/packages/sctp/Makefile --- a/contrib/OpenWRT/packages/sctp/Makefile Mon Sep 06 14:28:53 2010 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,90 +0,0 @@ -# -# Software License Agreement (BSD License) -# -# Copyright (c) 2010, WIDE Project and NICT -# All rights reserved. -# -# See LICENSE file from freeDiameter source package for more information. -# - -include $(TOPDIR)/rules.mk - -PKG_NAME:=lksctp-tools -PKG_VERSION:=1.0.11 -PKG_RELEASE:=1 - -PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=@SF/lksctp/ -# PKG_MD5SUM:= - -PKG_BUILD_DEPENDS:=binutils -PKG_FIXUP:=libtool -PKG_INSTALL:=1 - -include $(INCLUDE_DIR)/package.mk - -##### -## lksctp library: provides sctp_* functions in user space -##### - -define Package/sctp - SECTION:=libs - CATEGORY:=Libraries - TITLE:=SCTP user-land library - URL:=http://lksctp.sourceforge.net - DEPENDS:=+kmod-sctp -endef - -define Package/sctp/description - SCTP user-land library for sctp_* functions (when socket API is too limited). -endef - -TARGET_LDFLAGS := -L$(STAGING_DIR)/usr/lib $(TARGET_LDFLAGS) - -define Package/sctp/install - $(INSTALL_DIR) $(1)/usr/lib - $(CP) \ - $(PKG_INSTALL_DIR)/usr/lib/libsctp.so* \ - $(1)/usr/lib/ - # And in staging for dependent packages - $(INSTALL_DIR) $(STAGING_DIR)/usr/include/netinet - $(CP) \ - $(PKG_INSTALL_DIR)/usr/include/netinet/* \ - $(STAGING_DIR)/usr/include/netinet/ - $(INSTALL_DIR) $(STAGING_DIR)/usr/lib - $(CP) \ - $(PKG_INSTALL_DIR)/usr/lib/libsctp.so* \ - $(STAGING_DIR)/usr/lib/ - -endef - -$(eval $(call BuildPackage,sctp)) - - -##### -## SCTP kernel support -##### - -include $(INCLUDE_DIR)/kernel.mk - -define KernelPackage/sctp - SUBMENU:=Network Support - TITLE:=SCTP support - KCONFIG:=\ - CONFIG_IP_SCTP=m \ - CONFIG_LIBCRC32C=m - FILES:=\ - $(LINUX_DIR)/net/sctp/sctp.$(LINUX_KMOD_SUFFIX) \ - $(LINUX_DIR)/lib/libcrc32c.$(LINUX_KMOD_SUFFIX) - AUTOLOAD:=\ - $(call AutoLoad,30,crc32c libcrc32c,1) \ - $(call AutoLoad,35,sctp) - DEPENDS:=@LINUX_2_6 +kmod-crypto-core +kmod-crypto-misc +kmod-crypto-md5 +kmod-crypto-hmac -endef - -define KernelPackage/sctp/description - Kernel modules for SCTP support -endef - -$(eval $(call KernelPackage,sctp)) -