From a1fa6125ba6f4d538376414b4a5baadc8de7164c Mon Sep 17 00:00:00 2001 From: Jo-Philipp Wich Date: Sat, 7 Feb 2015 23:36:47 +0100 Subject: [PATCH 001/681] umurmur: use generic autoreconf fixup Use the generic autoreconf facility to pickup proper variants of autoconf, automake and libtool. Remove the unneeded Build/Configure override. Signed-off-by: Jo-Philipp Wich --- net/umurmur/Makefile | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/net/umurmur/Makefile b/net/umurmur/Makefile index d57e9e0f8..c7ada87be 100644 --- a/net/umurmur/Makefile +++ b/net/umurmur/Makefile @@ -17,6 +17,7 @@ PKG_SOURCE_PROTO:=git PKG_SOURCE_VERSION:=f66c0c3d630aaff1c4d589bc4d884067f00b6529 PKG_INSTALL:=1 +PKG_FIXUP:=autoreconf PKG_MAINTAINER:=Martin Johansson PKG_LICENSE:=BSD-3-Clause @@ -70,11 +71,6 @@ define Build/Compile $(MAKE) -C $(PKG_BUILD_DIR)/src all endef -define Build/Configure - cd $(PKG_BUILD_DIR) && ./autogen.sh - $(call Build/Configure/Default) -endef - define Package/umurmur-openssl/conffiles /etc/umurmur.conf endef From 8baab925628b74866a8976c516ad6840988756ee Mon Sep 17 00:00:00 2001 From: Jo-Philipp Wich Date: Sun, 8 Feb 2015 00:12:26 +0100 Subject: [PATCH 002/681] lxc: use generic autoreconf fixup Use the generic autoreconf facility to pickup proper variants of autoconf, automake and libtool. Remove the unneeded Build/Configure override. Signed-off-by: Jo-Philipp Wich --- utils/lxc/Makefile | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/utils/lxc/Makefile b/utils/lxc/Makefile index 3adfd5de9..943f7a4a3 100644 --- a/utils/lxc/Makefile +++ b/utils/lxc/Makefile @@ -19,7 +19,9 @@ PKG_MD5SUM:=4aad3aee84b42faa194e44091d723a3b PKG_BUILD_DEPENDS:=lua PKG_BUILD_PARALLEL:=1 + PKG_INSTALL:=1 +PKG_FIXUP:=autoreconf include $(INCLUDE_DIR)/package.mk @@ -118,11 +120,6 @@ MAKE_FLAGS += \ LUA_INSTALL_CMOD="/usr/lib/lua" \ LUA_INSTALL_LMOD="/usr/lib/lua" -define Build/Configure - ( cd $(PKG_BUILD_DIR); ./autogen.sh ); - $(call Build/Configure/Default) -endef - define Build/InstallDev $(INSTALL_DIR) $(1)/usr/include/lxc/ From e2b43afc857f9204f1ff234500d533665b8c8d35 Mon Sep 17 00:00:00 2001 From: Stijn Tintel Date: Wed, 18 Feb 2015 04:46:05 +0100 Subject: [PATCH 003/681] net-snmp: remove /etc/default/snmpd Debianism Signed-off-by: Stijn Tintel --- net/net-snmp/Makefile | 6 ------ net/net-snmp/files/snmpd.default | 1 - net/net-snmp/files/snmpd.init | 3 +-- 3 files changed, 1 insertion(+), 9 deletions(-) delete mode 100644 net/net-snmp/files/snmpd.default diff --git a/net/net-snmp/Makefile b/net/net-snmp/Makefile index 6fbf1b8bd..5736e0d7d 100644 --- a/net/net-snmp/Makefile +++ b/net/net-snmp/Makefile @@ -216,7 +216,6 @@ define Package/libnetsnmp/install endef define Package/snmpd/conffiles -/etc/default/snmpd /etc/config/snmpd endef @@ -225,8 +224,6 @@ define Package/snmpd/install $(INSTALL_DATA) ./files/snmpd.conf $(1)/etc/config/snmpd $(INSTALL_DIR) $(1)/etc/snmp ln -sf /var/run/snmpd.conf $(1)/etc/snmp/ - $(INSTALL_DIR) $(1)/etc/default - $(INSTALL_DATA) ./files/snmpd.default $(1)/etc/default/snmpd $(INSTALL_DIR) $(1)/etc/init.d $(INSTALL_BIN) ./files/snmpd.init $(1)/etc/init.d/snmpd $(INSTALL_DIR) $(1)/usr/sbin @@ -234,7 +231,6 @@ define Package/snmpd/install endef define Package/snmpd-static/conffiles -/etc/default/snmpd /etc/config/snmpd endef @@ -243,8 +239,6 @@ define Package/snmpd-static/install $(INSTALL_DATA) ./files/snmpd.conf $(1)/etc/config/snmpd $(INSTALL_DIR) $(1)/etc/snmp ln -sf /var/run/snmpd.conf $(1)/etc/snmp/ - $(INSTALL_DIR) $(1)/etc/default - $(INSTALL_DATA) ./files/snmpd.default $(1)/etc/default/snmpd $(INSTALL_DIR) $(1)/etc/init.d $(INSTALL_BIN) ./files/snmpd.init $(1)/etc/init.d/snmpd $(INSTALL_DIR) $(1)/usr/sbin diff --git a/net/net-snmp/files/snmpd.default b/net/net-snmp/files/snmpd.default deleted file mode 100644 index 758c8e44f..000000000 --- a/net/net-snmp/files/snmpd.default +++ /dev/null @@ -1 +0,0 @@ -OPTIONS="-Lf /dev/null -p /var/run/snmpd.pid" diff --git a/net/net-snmp/files/snmpd.init b/net/net-snmp/files/snmpd.init index 2668b7b3e..bde785a5b 100644 --- a/net/net-snmp/files/snmpd.init +++ b/net/net-snmp/files/snmpd.init @@ -2,7 +2,7 @@ # Copyright (C) 2008 OpenWrt.org START=50 -DEFAULT=/etc/default/snmpd +OPTIONS="-Lf /dev/null -p /var/run/snmpd.pid" LIB_D=/var/lib/snmp LOG_D=/var/log RUN_D=/var/run @@ -148,7 +148,6 @@ start() { config_foreach snmpd_exec_add exec config_foreach snmpd_disk_add disk - [ -f $DEFAULT ] && . $DEFAULT $DEBUG /usr/sbin/snmpd $OPTIONS } stop() { From 8faff3334f319f8a198e0da31b7f25263e407919 Mon Sep 17 00:00:00 2001 From: Stijn Tintel Date: Wed, 18 Feb 2015 05:05:27 +0100 Subject: [PATCH 004/681] net-snmp: convert snmpd to procd Signed-off-by: Stijn Tintel --- net/net-snmp/files/snmpd.init | 32 +++++++++++++++++--------------- 1 file changed, 17 insertions(+), 15 deletions(-) diff --git a/net/net-snmp/files/snmpd.init b/net/net-snmp/files/snmpd.init index bde785a5b..24488e7a5 100644 --- a/net/net-snmp/files/snmpd.init +++ b/net/net-snmp/files/snmpd.init @@ -2,12 +2,10 @@ # Copyright (C) 2008 OpenWrt.org START=50 -OPTIONS="-Lf /dev/null -p /var/run/snmpd.pid" -LIB_D=/var/lib/snmp -LOG_D=/var/log -RUN_D=/var/run -PID_F=$RUN_D/snmpd.pid -RUN_C=$RUN_D/snmpd.conf +USE_PROCD=1 +PROG="/usr/sbin/snmpd" + +RUN_C="/var/run/snmpd.conf" snmpd_agent_add() { local cfg="$1" @@ -129,11 +127,11 @@ snmpd_disk_add() { [ -n "$size" ] || return 0 echo "$disk $partition $size" >> $RUN_C } -start() { - [ -d $LIB_D ] || mkdir -p $LIB_D - [ -d $LOG_D ] || mkdir -p $LOG_D - [ -d $RUN_D ] || mkdir -p $RUN_D - [ -f $RUN_C ] && rm -f $RUN_C + +start_service() { + [ -f "$RUN_C" ] && rm -f "$RUN_C" + + procd_open_instance config_load snmpd @@ -148,9 +146,13 @@ start() { config_foreach snmpd_exec_add exec config_foreach snmpd_disk_add disk - $DEBUG /usr/sbin/snmpd $OPTIONS + procd_set_param command $PROG -Lf /dev/null -f + procd_set_param file $RUN_C + procd_set_param respawn + + procd_close_instance } -stop() { - [ -f $PID_F ] && kill $(cat $PID_F) - [ -f $RUN_C ] && rm -f $RUN_C + +stop_service() { + [ -f "$RUN_C" ] && rm -f "$RUN_C" } From 53fc8d3191cf9dc712cab9d7ae6a4b3d179fbdd1 Mon Sep 17 00:00:00 2001 From: Stijn Tintel Date: Wed, 18 Feb 2015 05:15:01 +0100 Subject: [PATCH 005/681] net-snmp: cosmetic changes in snmpd init script - Refactor RUN_C into CONFIGFILE, as used in dnsmasq and igmpproxy init scripts. - Add a newline after each function definition. Signed-off-by: Stijn Tintel --- net/net-snmp/files/snmpd.init | 47 +++++++++++++++++++++-------------- 1 file changed, 28 insertions(+), 19 deletions(-) diff --git a/net/net-snmp/files/snmpd.init b/net/net-snmp/files/snmpd.init index 24488e7a5..a26144766 100644 --- a/net/net-snmp/files/snmpd.init +++ b/net/net-snmp/files/snmpd.init @@ -5,30 +5,32 @@ START=50 USE_PROCD=1 PROG="/usr/sbin/snmpd" -RUN_C="/var/run/snmpd.conf" +CONFIGFILE="/var/run/snmpd.conf" snmpd_agent_add() { local cfg="$1" config_get agentaddress "$cfg" agentaddress [ -n "$agentaddress" ] || return 0 - echo "agentaddress $agentaddress" >> $RUN_C + echo "agentaddress $agentaddress" >> $CONFIGFILE } + snmpd_system_add() { local cfg="$1" config_get syslocation "$cfg" sysLocation - [ -n "$syslocation" ] && echo "sysLocation $syslocation" >> $RUN_C + [ -n "$syslocation" ] && echo "sysLocation $syslocation" >> $CONFIGFILE config_get syscontact "$cfg" sysContact - [ -n "$syscontact" ] && echo "sysContact $syscontact" >> $RUN_C + [ -n "$syscontact" ] && echo "sysContact $syscontact" >> $CONFIGFILE config_get sysname "$cfg" sysName - [ -n "$sysname" ] && echo "sysName $sysname" >> $RUN_C + [ -n "$sysname" ] && echo "sysName $sysname" >> $CONFIGFILE config_get sysservice "$cfg" sysService - [ -n "$sysservice" ] && echo "sysService $sysservice" >> $RUN_C + [ -n "$sysservice" ] && echo "sysService $sysservice" >> $CONFIGFILE config_get sysdescr "$cfg" sysDescr - [ -n "$sysdescr" ] && echo "sysDescr $sysdescr" >> $RUN_C + [ -n "$sysdescr" ] && echo "sysDescr $sysdescr" >> $CONFIGFILE config_get sysobjectid "$cfg" sysObjectID - [ -n "$sysobjectid" ] && echo "sysObjectID $sysobjectid" >> $RUN_C + [ -n "$sysobjectid" ] && echo "sysObjectID $sysobjectid" >> $CONFIGFILE } + snmpd_com2sec_add() { local cfg="$1" config_get secname "$cfg" secname @@ -37,8 +39,9 @@ snmpd_com2sec_add() { [ -n "$source" ] || return 0 config_get community "$cfg" community [ -n "$community" ] || return 0 - echo "com2sec $secname $source $community" >> $RUN_C + echo "com2sec $secname $source $community" >> $CONFIGFILE } + snmpd_com2sec6_add() { local cfg="$1" config_get secname "$cfg" secname @@ -47,8 +50,9 @@ snmpd_com2sec6_add() { [ -n "$source" ] || return 0 config_get community "$cfg" community [ -n "$community" ] || return 0 - echo "com2sec6 $secname $source $community" >> $RUN_C + echo "com2sec6 $secname $source $community" >> $CONFIGFILE } + snmpd_group_add() { local cfg="$1" config_get group "$cfg" group @@ -57,8 +61,9 @@ snmpd_group_add() { [ -n "$version" ] || return 0 config_get secname "$cfg" secname [ -n "$secname" ] || return 0 - echo "group $group $version $secname" >> $RUN_C + echo "group $group $version $secname" >> $CONFIGFILE } + snmpd_view_add() { local cfg="$1" config_get viewname "$cfg" viewname @@ -69,8 +74,9 @@ snmpd_view_add() { [ -n "$oid" ] || return 0 # optional mask config_get mask "$cfg" mask - echo "view $viewname $type $oid $mask" >> $RUN_C + echo "view $viewname $type $oid $mask" >> $CONFIGFILE } + snmpd_access_add() { local cfg="$1" config_get group "$cfg" group @@ -90,8 +96,9 @@ snmpd_access_add() { [ -n "$write" ] || return 0 config_get notify "$cfg" notify [ -n "$notify" ] || return 0 - echo "access $group $context $version $level $prefix $read $write $notify" >> $RUN_C + echo "access $group $context $version $level $prefix $read $write $notify" >> $CONFIGFILE } + snmpd_pass_add() { local cfg="$1" local pass='pass' @@ -104,8 +111,9 @@ snmpd_pass_add() { [ $persist -ne 0 ] && pass='pass_persist' config_get priority "$cfg" priority priority=${priority:+-p $priority} - echo "$pass $priority $miboid $prog" >> $RUN_C + echo "$pass $priority $miboid $prog" >> $CONFIGFILE } + snmpd_exec_add() { local cfg="$1" @@ -115,8 +123,9 @@ snmpd_exec_add() { [ -n "$prog" ] || return 0 config_get args "$cfg" args config_get miboid "$cfg" miboid - echo "exec $miboid $name $prog $args" >> $RUN_C + echo "exec $miboid $name $prog $args" >> $CONFIGFILE } + snmpd_disk_add() { local cfg="$1" local disk='disk' @@ -125,11 +134,11 @@ snmpd_disk_add() { [ -n "$partition" ] || return 0 config_get size "$cfg" size [ -n "$size" ] || return 0 - echo "$disk $partition $size" >> $RUN_C + echo "$disk $partition $size" >> $CONFIGFILE } start_service() { - [ -f "$RUN_C" ] && rm -f "$RUN_C" + [ -f "$CONFIGFILE" ] && rm -f "$CONFIGFILE" procd_open_instance @@ -147,12 +156,12 @@ start_service() { config_foreach snmpd_disk_add disk procd_set_param command $PROG -Lf /dev/null -f - procd_set_param file $RUN_C + procd_set_param file $CONFIGFILE procd_set_param respawn procd_close_instance } stop_service() { - [ -f "$RUN_C" ] && rm -f "$RUN_C" + [ -f "$CONFIGFILE" ] && rm -f "$CONFIGFILE" } From bee2865492fa8321a74627fd15a24c7caf54790d Mon Sep 17 00:00:00 2001 From: Stijn Tintel Date: Wed, 18 Feb 2015 06:03:54 +0100 Subject: [PATCH 006/681] net-snmp: monitor ifindex changes When an ifindex for an interface changes, some monitoring tools can no longer find the interface and send alerts. Monitor all network interfaces via the procd netdev parameter, so that /etc/init.d/snmpd reload will restart snmpd if any ifindex changed. Signed-off-by: Stijn Tintel --- net/net-snmp/files/snmpd.init | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/net/net-snmp/files/snmpd.init b/net/net-snmp/files/snmpd.init index a26144766..3dd8c41dc 100644 --- a/net/net-snmp/files/snmpd.init +++ b/net/net-snmp/files/snmpd.init @@ -159,6 +159,10 @@ start_service() { procd_set_param file $CONFIGFILE procd_set_param respawn + for iface in $(ls /sys/class/net 2>/dev/null); do + procd_append_param netdev "$iface" + done + procd_close_instance } From 5d276af52ad8707f108d65bdf450916cbaed190c Mon Sep 17 00:00:00 2001 From: Gergely Kiss Date: Fri, 20 Feb 2015 23:15:07 +0100 Subject: [PATCH 007/681] seafile: deleted outdated patch Signed-off-by: Gergely Kiss --- net/seafile-server/patches/010-makefile-fix.patch | 12 ------------ 1 file changed, 12 deletions(-) delete mode 100644 net/seafile-server/patches/010-makefile-fix.patch diff --git a/net/seafile-server/patches/010-makefile-fix.patch b/net/seafile-server/patches/010-makefile-fix.patch deleted file mode 100644 index 1ae971e37..000000000 --- a/net/seafile-server/patches/010-makefile-fix.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -rupN seafile-3.1.7-server.orig/fileserver/Makefile.am seafile-3.1.7-server/fileserver/Makefile.am ---- seafile-3.1.7-server.orig/fileserver/Makefile.am 2014-10-16 05:30:04.000000000 +0200 -+++ seafile-3.1.7-server/fileserver/Makefile.am 2014-12-08 00:16:44.289364980 +0100 -@@ -6,7 +6,7 @@ AM_CFLAGS = -DPKGDATADIR=\"$(pkgdatadir) - -I$(top_srcdir)/lib \ - -I$(top_builddir)/lib \ - -I$(top_srcdir)/common \ -- -I$(includedir) \ -+ -I$(STAGING_DIR)$(includedir) \ - @CCNET_CFLAGS@ \ - @SEARPC_CFLAGS@ \ - @GLIB2_CFLAGS@ \ From 3593bef2590f23a8ff3e3363ced2f2421840b204 Mon Sep 17 00:00:00 2001 From: Alexandru Ardelean Date: Sat, 21 Feb 2015 19:54:20 +0200 Subject: [PATCH 008/681] openvswitch: limit package to supported kernel versions Signed-off-by: Alexandru Ardelean --- net/openvswitch/Makefile | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/net/openvswitch/Makefile b/net/openvswitch/Makefile index 7f3737cfb..97e782e89 100644 --- a/net/openvswitch/Makefile +++ b/net/openvswitch/Makefile @@ -50,7 +50,8 @@ endef define Package/openvswitch $(call Package/openvswitch/Default) TITLE:=Open vSwitch Userspace Package - DEPENDS:=+libpcap +libopenssl +librt +libatomic +kmod-openvswitch + DEPENDS:=+libpcap +libopenssl +librt +libatomic +kmod-openvswitch \ + @(LINUX_3_8||LINUX_3_10||LINUX_3_13||LINUX_3_14) endef define Package/openvswitch/description From de7630145d3eb46d0f5f1eed293d3dc3fba6549f Mon Sep 17 00:00:00 2001 From: Nikos Mavrogiannopoulos Date: Wed, 25 Feb 2015 23:18:28 +0100 Subject: [PATCH 009/681] gnutls: updated to 3.3.13 Signed-off-by: Nikos Mavrogiannopoulos --- libs/gnutls/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libs/gnutls/Makefile b/libs/gnutls/Makefile index a7aedf9df..fed88fa13 100644 --- a/libs/gnutls/Makefile +++ b/libs/gnutls/Makefile @@ -8,13 +8,13 @@ include $(TOPDIR)/rules.mk PKG_NAME:=gnutls -PKG_VERSION:=3.3.12 +PKG_VERSION:=3.3.13 PKG_RELEASE:=1 PKG_USE_MIPS16:=0 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=ftp://ftp.gnutls.org/gcrypt/gnutls/v3.3 -PKG_MD5SUM:=a37b20b4352a5f542367ded904729c90 +PKG_MD5SUM:=a7387fe8bf3e604bf518a6da9ab2a4e6 PKG_MAINTAINER:=Nikos Mavrogiannopoulos PKG_INSTALL:=1 From fec32996ff3e0c86d7c3a1cdc3e8f4bae8d63d9f Mon Sep 17 00:00:00 2001 From: "W. Michael Petullo" Date: Thu, 26 Feb 2015 22:45:43 -0500 Subject: [PATCH 010/681] php5: update to 5.6.6 Signed-off-by: W. Michael Petullo --- lang/php5/Makefile | 6 +-- .../950-Fix-dl-cross-compiling-issue.patch | 54 +++++++++++++++++-- 2 files changed, 54 insertions(+), 6 deletions(-) diff --git a/lang/php5/Makefile b/lang/php5/Makefile index 8cbdd08ef..ccb55f4a5 100644 --- a/lang/php5/Makefile +++ b/lang/php5/Makefile @@ -8,7 +8,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=php -PKG_VERSION:=5.4.38 +PKG_VERSION:=5.6.6 PKG_RELEASE:=1 PKG_MAINTAINER:=W. Michael Petullo @@ -18,9 +18,9 @@ PKG_LICENSE_FILES:=LICENSE PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 PKG_SOURCE_URL:=http://www.php.net/distributions/ -PKG_MD5SUM:=2bf5007ba4bd012f9895c1b441dd4f50 +PKG_MD5SUM:=b198117ee1d44c8143e030cee15f1b52 -PKG_FIXUP:=libtool no-autoreconf +PKG_FIXUP:=libtool autoreconf PKG_BUILD_PARALLEL:=1 PKG_USE_MIPS16:=0 diff --git a/lang/php5/patches/950-Fix-dl-cross-compiling-issue.patch b/lang/php5/patches/950-Fix-dl-cross-compiling-issue.patch index 216a5180a..02b1f644c 100644 --- a/lang/php5/patches/950-Fix-dl-cross-compiling-issue.patch +++ b/lang/php5/patches/950-Fix-dl-cross-compiling-issue.patch @@ -1,6 +1,7 @@ ---- a/configure.in -+++ b/configure.in -@@ -453,7 +453,10 @@ PHP_CHECK_FUNC(gethostname, nsl) +diff -u --recursive php-5.6.6-vanilla/configure.in php-5.6.6/configure.in +--- php-5.6.6-vanilla/configure.in 2015-02-26 22:10:51.865487530 -0500 ++++ php-5.6.6/configure.in 2015-02-26 22:29:59.043102135 -0500 +@@ -453,7 +453,10 @@ PHP_CHECK_FUNC(gethostbyaddr, nsl) PHP_CHECK_FUNC(yp_get_default_domain, nsl) @@ -12,3 +13,50 @@ if test "$ac_cv_func_dlopen" = "yes"; then AC_DEFINE(HAVE_LIBDL, 1, [ ]) fi +diff -u --recursive php-5.6.6-vanilla/ext/fileinfo/config.m4 php-5.6.6/ext/fileinfo/config.m4 +--- php-5.6.6-vanilla/ext/fileinfo/config.m4 2015-02-26 22:10:51.639487135 -0500 ++++ php-5.6.6/ext/fileinfo/config.m4 2015-02-26 22:22:47.645609128 -0500 +@@ -46,6 +46,10 @@ + AC_MSG_RESULT(no) + AC_MSG_NOTICE(using libmagic strcasestr implementation) + libmagic_sources="$libmagic_sources libmagic/strcasestr.c" ++ ],[ ++ dnl cross-compiling; assume not present ++ AC_MSG_NOTICE(using libmagic strcasestr implementation) ++ libmagic_sources="$libmagic_sources libmagic/strcasestr.c" + ]) + + PHP_NEW_EXTENSION(fileinfo, fileinfo.c $libmagic_sources, $ext_shared,,-I@ext_srcdir@/libmagic) +diff -u --recursive php-5.6.6-vanilla/ext/opcache/config.m4 php-5.6.6/ext/opcache/config.m4 +--- php-5.6.6-vanilla/ext/opcache/config.m4 2015-02-26 22:10:51.790487399 -0500 ++++ php-5.6.6/ext/opcache/config.m4 2015-02-26 22:34:19.240414394 -0500 +@@ -341,7 +341,14 @@ + flock_type=linux + AC_DEFINE([HAVE_FLOCK_LINUX], [], [Struct flock is Linux-type]) + AC_MSG_RESULT("yes") +-], AC_MSG_RESULT("no") ) ++], [ ++ AC_MSG_RESULT("no") ++], [ ++ dnl cross-compiling; assume Linux ++ flock_type=linux ++ AC_DEFINE([HAVE_FLOCK_LINUX], [], [Struct flock is Linux-type]) ++ AC_MSG_RESULT("yes") ++]) + + AC_MSG_CHECKING("whether flock struct is BSD ordered") + AC_TRY_RUN([ +@@ -357,7 +364,12 @@ + flock_type=bsd + AC_DEFINE([HAVE_FLOCK_BSD], [], [Struct flock is BSD-type]) + AC_MSG_RESULT("yes") +-], AC_MSG_RESULT("no") ) ++], [ ++ AC_MSG_RESULT("no") ++], [ ++ dnl cross-compiling; assume Linux ++ AC_MSG_RESULT("no") ++]) + + if test "$flock_type" == "unknown"; then + AC_MSG_ERROR([Don't know how to define struct flock on this system[,] set --enable-opcache=no]) From 7c4dac51189bfc2245c8b798a2793a993d709d02 Mon Sep 17 00:00:00 2001 From: Alexandru Ardelean Date: Fri, 27 Feb 2015 18:07:52 +0200 Subject: [PATCH 011/681] python: reduce size of patch 130 Try to reduce the amount of change in this patch, since it removes a lot of stuff, when we could just 'ifdef' that stuff out, with 2 lines. The buildroot project does something similar like this: http://git.buildroot.net/buildroot/tree/package/python/005-pyc-pyo-conditional.patch Signed-off-by: Alexandru Ardelean --- .../130-do-not-compile-tests-at-build.patch | 20 ++++++++++ .../130-do-not-run-distutils-tests.patch | 37 ------------------- 2 files changed, 20 insertions(+), 37 deletions(-) create mode 100644 lang/python/patches/130-do-not-compile-tests-at-build.patch delete mode 100644 lang/python/patches/130-do-not-run-distutils-tests.patch diff --git a/lang/python/patches/130-do-not-compile-tests-at-build.patch b/lang/python/patches/130-do-not-compile-tests-at-build.patch new file mode 100644 index 000000000..a6774e174 --- /dev/null +++ b/lang/python/patches/130-do-not-compile-tests-at-build.patch @@ -0,0 +1,20 @@ +diff --git a/Makefile.pre.in b/Makefile.pre.in +index 7f4ec2f..e270bf2 100644 +--- a/Makefile.pre.in ++++ b/Makefile.pre.in +@@ -1038,6 +1038,7 @@ libinstall: build_all $(srcdir)/Lib/$(PLATDIR) $(srcdir)/Modules/xxmodule.c + done; \ + done + $(INSTALL_DATA) $(srcdir)/LICENSE $(DESTDIR)$(LIBDEST)/LICENSE.txt ++ifeq (@COMPILE_ALL_TESTS@,yes) + if test -d $(DESTDIR)$(LIBDEST)/distutils/tests; then \ + $(INSTALL_DATA) $(srcdir)/Modules/xxmodule.c \ + $(DESTDIR)$(LIBDEST)/distutils/tests ; \ +@@ -1064,6 +1065,7 @@ libinstall: build_all $(srcdir)/Lib/$(PLATDIR) $(srcdir)/Modules/xxmodule.c + $(PYTHON_FOR_BUILD) -m lib2to3.pgen2.driver $(DESTDIR)$(LIBDEST)/lib2to3/Grammar.txt + -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ + $(PYTHON_FOR_BUILD) -m lib2to3.pgen2.driver $(DESTDIR)$(LIBDEST)/lib2to3/PatternGrammar.txt ++endif + + # Create the PLATDIR source directory, if one wasn't distributed.. + $(srcdir)/Lib/$(PLATDIR): diff --git a/lang/python/patches/130-do-not-run-distutils-tests.patch b/lang/python/patches/130-do-not-run-distutils-tests.patch deleted file mode 100644 index 4fdd2bb4b..000000000 --- a/lang/python/patches/130-do-not-run-distutils-tests.patch +++ /dev/null @@ -1,37 +0,0 @@ -diff --git a/Makefile.pre.in b/Makefile.pre.in -index bcd83bf..c4dcc6d 100644 ---- a/Makefile.pre.in -+++ b/Makefile.pre.in -@@ -1005,32 +1005,6 @@ libinstall: build_all $(srcdir)/Lib/$(PLATDIR) $(srcdir)/Modules/xxmodule.c - done; \ - done - $(INSTALL_DATA) $(srcdir)/LICENSE $(DESTDIR)$(LIBDEST)/LICENSE.txt -- if test -d $(DESTDIR)$(LIBDEST)/distutils/tests; then \ -- $(INSTALL_DATA) $(srcdir)/Modules/xxmodule.c \ -- $(DESTDIR)$(LIBDEST)/distutils/tests ; \ -- fi -- PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ -- $(PYTHON_FOR_BUILD) -Wi -tt $(DESTDIR)$(LIBDEST)/compileall.py \ -- -d $(LIBDEST) -f \ -- -x 'bad_coding|badsyntax|site-packages|lib2to3/tests/data' \ -- $(DESTDIR)$(LIBDEST) -- PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ -- $(PYTHON_FOR_BUILD) -Wi -tt -O $(DESTDIR)$(LIBDEST)/compileall.py \ -- -d $(LIBDEST) -f \ -- -x 'bad_coding|badsyntax|site-packages|lib2to3/tests/data' \ -- $(DESTDIR)$(LIBDEST) -- -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ -- $(PYTHON_FOR_BUILD) -Wi -t $(DESTDIR)$(LIBDEST)/compileall.py \ -- -d $(LIBDEST)/site-packages -f \ -- -x badsyntax $(DESTDIR)$(LIBDEST)/site-packages -- -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ -- $(PYTHON_FOR_BUILD) -Wi -t -O $(DESTDIR)$(LIBDEST)/compileall.py \ -- -d $(LIBDEST)/site-packages -f \ -- -x badsyntax $(DESTDIR)$(LIBDEST)/site-packages -- -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ -- $(PYTHON_FOR_BUILD) -m lib2to3.pgen2.driver $(DESTDIR)$(LIBDEST)/lib2to3/Grammar.txt -- -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ -- $(PYTHON_FOR_BUILD) -m lib2to3.pgen2.driver $(DESTDIR)$(LIBDEST)/lib2to3/PatternGrammar.txt - - # Create the PLATDIR source directory, if one wasn't distributed.. - $(srcdir)/Lib/$(PLATDIR): From 095ae50d353a8534c00982ee8c83fe0767ac9206 Mon Sep 17 00:00:00 2001 From: Nikos Mavrogiannopoulos Date: Fri, 27 Feb 2015 17:28:44 +0100 Subject: [PATCH 012/681] libseccomp: remove legacy cruft Signed-off-by: Nikos Mavrogiannopoulos --- libs/libseccomp/Makefile | 2 -- 1 file changed, 2 deletions(-) diff --git a/libs/libseccomp/Makefile b/libs/libseccomp/Makefile index e3ff8b44e..217c847e0 100644 --- a/libs/libseccomp/Makefile +++ b/libs/libseccomp/Makefile @@ -51,8 +51,6 @@ define Package/libseccomp/description endef define Build/Configure - $(SED) 's,-I$$$${includedir},,g' $(PKG_BUILD_DIR)/configure - $(SED) 's,-L$$$${libdir},,g' $(PKG_BUILD_DIR)/configure $(call Build/Configure/Default) endef From 71b696622a31744bbb40be244c7465f1efa8047c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20=C4=8Cerm=C3=A1k?= Date: Fri, 27 Feb 2015 14:32:56 +0100 Subject: [PATCH 013/681] python: patch distutils adjusting path in scripts' shebang MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit When distutils are copying scripts, path to Python interpreter is adjusted. This does not work well in OpenWrt buildroot, because the path is adjusted to absolute path to host Python then. This patch simply disables the adjusting of the path. Signed-off-by: Jan Čermák --- .../patches/170-distutils-do-not-adjust-path.patch | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 lang/python/patches/170-distutils-do-not-adjust-path.patch diff --git a/lang/python/patches/170-distutils-do-not-adjust-path.patch b/lang/python/patches/170-distutils-do-not-adjust-path.patch new file mode 100644 index 000000000..49fe92629 --- /dev/null +++ b/lang/python/patches/170-distutils-do-not-adjust-path.patch @@ -0,0 +1,10 @@ +--- a/Lib/distutils/command/build_scripts.py ++++ b/Lib/distutils/command/build_scripts.py +@@ -89,6 +89,7 @@ class build_scripts (Command): + adjust = 1 + post_interp = match.group(1) or '' + ++ adjust = 0 + if adjust: + log.info("copying and adjusting %s -> %s", script, + self.build_dir) From ef056ee04cd6db5ad31d6706df660bd438dfd1fd Mon Sep 17 00:00:00 2001 From: Ted Hess Date: Fri, 27 Feb 2015 12:24:40 -0500 Subject: [PATCH 014/681] mjpg-streamer: Update version of cambozola.jar Signed-off-by: Ted Hess --- multimedia/mjpg-streamer/Makefile | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/multimedia/mjpg-streamer/Makefile b/multimedia/mjpg-streamer/Makefile index 24e569df8..d2e1537d9 100644 --- a/multimedia/mjpg-streamer/Makefile +++ b/multimedia/mjpg-streamer/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2006-2014 OpenWrt.org +# Copyright (C) 2006-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -10,7 +10,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=mjpg-streamer PKG_REV:=182 PKG_VERSION:=r$(PKG_REV) -PKG_RELEASE:=4 +PKG_RELEASE:=5 PKG_MAINTAINER:=Roger D PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).1.tar.bz2 @@ -54,7 +54,7 @@ CAMBOZOLA:=cambozola-latest.tar.gz define Download/cambozola URL:=http://www.andywilcock.com/code/cambozola FILE:=$(CAMBOZOLA) - MD5SUM:=6c48fd994685d4d72668850eeb613e24 + MD5SUM:=c9b0da91f8e6e72efccd307e04e2b75b endef # Fetch latest cambozola that works with latest Java(s) From 5b90cf85de58f8d2267d653b79a1078ccf993692 Mon Sep 17 00:00:00 2001 From: Maxim Storchak Date: Sat, 28 Feb 2015 12:04:51 +0200 Subject: [PATCH 015/681] haserl: update to 0.9.34 Signed-off-by: Maxim Storchak --- utils/haserl/Makefile | 4 ++-- .../patches/100-replace-lua2c-with-sed.patch | 22 ++++++++++--------- 2 files changed, 14 insertions(+), 12 deletions(-) diff --git a/utils/haserl/Makefile b/utils/haserl/Makefile index 90bfd24fd..89cfa4ab5 100644 --- a/utils/haserl/Makefile +++ b/utils/haserl/Makefile @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=haserl -PKG_VERSION:=0.9.33 +PKG_VERSION:=0.9.34 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=@SF/haserl -PKG_MD5SUM:=a9decddb508944d56f71dd2f821e2ec5 +PKG_MD5SUM:=cae2240f25040c7a0a270c35cf7abda4 PKG_MAINTAINER:=Maxim Storchak PKG_LICENSE:=GPL-2.0 PKG_LICENSE_FILES:=COPYING diff --git a/utils/haserl/patches/100-replace-lua2c-with-sed.patch b/utils/haserl/patches/100-replace-lua2c-with-sed.patch index 5b19fc1ec..4626a0289 100644 --- a/utils/haserl/patches/100-replace-lua2c-with-sed.patch +++ b/utils/haserl/patches/100-replace-lua2c-with-sed.patch @@ -1,6 +1,8 @@ ---- a/src/Makefile.in 2013-09-20 23:52:15.000000000 +0300 -+++ b/src/Makefile.in 2014-05-03 23:06:17.000000000 +0300 -@@ -76,7 +76,6 @@ +diff --git a/src/Makefile.in b/src/Makefile.in +index 31d45f7..d249f67 100644 +--- a/src/Makefile.in ++++ b/src/Makefile.in +@@ -86,7 +86,6 @@ POST_INSTALL = : NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : @@ -8,7 +10,7 @@ @INCLUDE_LUASHELL_TRUE@@USE_LUA_TRUE@am__append_1 = h_lua.c h_lua.h @INCLUDE_LUACSHELL_TRUE@@USE_LUA_TRUE@am__append_2 = h_luac.c h_luac.h bin_PROGRAMS = haserl$(EXEEXT) -@@ -115,9 +114,6 @@ +@@ -124,9 +123,6 @@ am__DEPENDENCIES_1 = haserl_DEPENDENCIES = $(am__DEPENDENCIES_1) haserl_LINK = $(CCLD) $(haserl_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \ $(LDFLAGS) -o $@ @@ -18,7 +20,7 @@ AM_V_P = $(am__v_P_@AM_V@) am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) am__v_P_0 = false -@@ -150,8 +146,8 @@ +@@ -159,8 +155,8 @@ AM_V_CCLD = $(am__v_CCLD_@AM_V@) am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@) am__v_CCLD_0 = @echo " CCLD " $@; am__v_CCLD_1 = @@ -29,7 +31,7 @@ am__can_run_installinfo = \ case $$AM_UPDATE_INFO_DIR in \ n|no|NO) false;; \ -@@ -273,7 +269,7 @@ +@@ -284,7 +280,7 @@ target_alias = @target_alias@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ @@ -38,7 +40,7 @@ # Not strictly required, but we explicitly do not distribute the generated inc file nodist_haserl_SOURCES = haserl_lualib.inc -@@ -386,10 +382,6 @@ +@@ -396,10 +392,6 @@ haserl$(EXEEXT): $(haserl_OBJECTS) $(haserl_DEPENDENCIES) $(EXTRA_haserl_DEPENDE @rm -f haserl$(EXEEXT) $(AM_V_CCLD)$(haserl_LINK) $(haserl_OBJECTS) $(haserl_LDADD) $(LIBS) @@ -49,7 +51,7 @@ mostlyclean-compile: -rm -f *.$(OBJEXT) -@@ -406,7 +398,6 @@ +@@ -416,7 +408,6 @@ distclean-compile: @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/haserl-haserl.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/haserl-rfc2388.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/haserl-sliding_buffer.Po@am__quote@ @@ -57,8 +59,8 @@ .c.o: @am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< -@@ -758,17 +749,13 @@ - tags tags-am uninstall uninstall-am uninstall-binPROGRAMS +@@ -770,17 +761,13 @@ uninstall-am: uninstall-binPROGRAMS + .PRECIOUS: Makefile -# lua2c_LIBS ?= -llua -ldl -lm From fad616a4cc370c016a89773f50b6f7ba861ef478 Mon Sep 17 00:00:00 2001 From: Christian Schoenebeck Date: Sat, 28 Feb 2015 16:43:02 +0100 Subject: [PATCH 016/681] ddns-scripts: implements usage of nsupdate to direct update DNS servers * new service "bind-nsupdate" using nsupdate to directly updates a PowerDNS or Bind server via nsupdate. suggested by Jan Riechers (Pull #957) many thanks! * updated tld-names.dat Signed-off-by: Christian Schoenebeck --- net/ddns-scripts/Makefile | 112 +++++++++++++++------- net/ddns-scripts/files/tld_names.dat | 53 ++++++++-- net/ddns-scripts/files/update_nsupdate.sh | 46 +++++++++ 3 files changed, 171 insertions(+), 40 deletions(-) create mode 100644 net/ddns-scripts/files/update_nsupdate.sh diff --git a/net/ddns-scripts/Makefile b/net/ddns-scripts/Makefile index 7c834c2ab..54379bf1d 100644 --- a/net/ddns-scripts/Makefile +++ b/net/ddns-scripts/Makefile @@ -3,17 +3,19 @@ include $(TOPDIR)/rules.mk PKG_NAME:=ddns-scripts # Version == major.minor.patch # increase on new functionality (minor) or patches (patch) -PKG_VERSION:=2.3.0 +PKG_VERSION:=2.4.0 # Release == build # increase on changes of services files or tld_names.dat PKG_RELEASE:=1 PKG_LICENSE:=GPL-2.0 PKG_MAINTAINER:=Christian Schoenebeck -PKG_BUILD_DIR := $(BUILD_DIR)/$(PKG_NAME) include $(INCLUDE_DIR)/package.mk +# no default dependencies +PKG_DEFAULT_DEPENDS= + define Package/$(PKG_NAME)/Default SECTION:=net CATEGORY:=Network @@ -21,6 +23,7 @@ define Package/$(PKG_NAME)/Default PKGARCH:=all endef +##### ********************************** define Package/$(PKG_NAME) $(call Package/$(PKG_NAME)/Default) TITLE:=Dynamic DNS Client scripts (with IPv6 support) @@ -41,31 +44,53 @@ define Package/$(PKG_NAME)/config - Proxy server support - log file support - support to run once - + . Version: $(PKG_VERSION)-$(PKG_RELEASE) Info : http://wiki.openwrt.org/doc/howto/ddns.client - + . $(PKG_MAINTAINER) endef -define Package/$(PKG_NAME)_CloudFlare +##### ********************************** +define Package/$(PKG_NAME)_cloudflare $(call Package/$(PKG_NAME)/Default) TITLE:=DDNS extension for CloudFlare DEPENDS:=$(PKG_NAME) endef -define Package/$(PKG_NAME)_CloudFlare/description +define Package/$(PKG_NAME)_cloudflare/description Dynamic DNS Client scripts extension for CloudFlare endef -define Package/$(PKG_NAME)_No-IP_com +##### ********************************** +define Package/$(PKG_NAME)_no-ip_com $(call Package/$(PKG_NAME)/Default) TITLE:=DDNS extension for No-IP.com DEPENDS:=$(PKG_NAME) endef -define Package/$(PKG_NAME)_No-IP_com/description +define Package/$(PKG_NAME)_no-ip_com/description Dynamic DNS Client scripts extension for No-IP.com endef +##### ********************************** +define Package/$(PKG_NAME)_nsupdate + $(call Package/$(PKG_NAME)/Default) + TITLE:=DDNS extension using Bind nsupdate + DEPENDS:=$(PKG_NAME) +bind-client +endef +define Package/$(PKG_NAME)_nsupdate/description + Dynamic DNS Client scripts extension for direct updates using Bind nsupdate +endef +define Package/$(PKG_NAME)_nsupdate/config + help + The script directly updates a PowerDNS (or maybe bind server) via nsupdate + from bind-client package. It requires + "option dns_server" to be set to the server to be used by nsupdate. + "option username" should be set to the key name and + "option password" to the base64 encoded shared secret. + +endef + +##### ********************************** define Build/Configure endef define Build/Compile @@ -84,6 +109,7 @@ define Package/$(PKG_NAME)/conffiles /etc/config/ddns endef +##### ********************************** define Package/$(PKG_NAME)/install $(INSTALL_DIR) $(1)/etc/hotplug.d/iface $(INSTALL_BIN) $(PKG_BUILD_DIR)/files/ddns.hotplug $(1)/etc/hotplug.d/iface/95-ddns @@ -96,16 +122,6 @@ define Package/$(PKG_NAME)/install $(INSTALL_DATA) $(PKG_BUILD_DIR)/files/services* $(1)/usr/lib/ddns $(INSTALL_BIN) $(PKG_BUILD_DIR)/files/dynamic_*.sh $(1)/usr/lib/ddns endef -define Package/$(PKG_NAME)_CloudFlare/install - $(INSTALL_DIR) $(1)/usr/lib/ddns - $(INSTALL_BIN) $(PKG_BUILD_DIR)/files/update_CloudFlare.sh $(1)/usr/lib/ddns - $(INSTALL_DATA) $(PKG_BUILD_DIR)/files/tld_names.dat $(1)/usr/lib/ddns -endef -define Package/$(PKG_NAME)_No-IP_com/install - $(INSTALL_DIR) $(1)/usr/lib/ddns - $(INSTALL_BIN) $(PKG_BUILD_DIR)/files/update_No-IP.com.sh $(1)/usr/lib/ddns -endef - define Package/$(PKG_NAME)/postinst #!/bin/sh # if run within buildroot exit @@ -123,17 +139,6 @@ define Package/$(PKG_NAME)/postinst exit 0 endef -define Package/$(PKG_NAME)_CloudFlare/postinst - #!/bin/sh - echo -e '"CloudFlare"\t"update_CloudFlare.sh"' >> $${IPKG_INSTROOT}/usr/lib/ddns/services - echo -e '"CloudFlare"\t"update_CloudFlare.sh"' >> $${IPKG_INSTROOT}/usr/lib/ddns/services_ipv6 -endef -define Package/$(PKG_NAME)_No-IP_com/postinst - #!/bin/sh - echo -e '"No-IP.com"\t"update_No-IP.com.sh"' >> $${IPKG_INSTROOT}/usr/lib/ddns/services - echo -e '"NoIP.com"\t"update_No-IP.com.sh"' >> $${IPKG_INSTROOT}/usr/lib/ddns/services -endef - define Package/$(PKG_NAME)/prerm #!/bin/sh # if run within buildroot exit @@ -148,16 +153,57 @@ define Package/$(PKG_NAME)/prerm exit 0 endef -define Package/$(PKG_NAME)_CloudFlare/prerm + +##### ********************************** +define Package/$(PKG_NAME)_cloudflare/install + $(INSTALL_DIR) $(1)/usr/lib/ddns + $(INSTALL_BIN) $(PKG_BUILD_DIR)/files/update_CloudFlare.sh $(1)/usr/lib/ddns + $(INSTALL_DATA) $(PKG_BUILD_DIR)/files/tld_names.dat $(1)/usr/lib/ddns +endef +define Package/$(PKG_NAME)_cloudflare/postinst + #!/bin/sh + echo -e '"CloudFlare"\t"update_CloudFlare.sh"' >> $${IPKG_INSTROOT}/usr/lib/ddns/services + echo -e '"CloudFlare"\t"update_CloudFlare.sh"' >> $${IPKG_INSTROOT}/usr/lib/ddns/services_ipv6 +endef +define Package/$(PKG_NAME)_cloudflare/prerm #!/bin/sh /bin/sed -i '/update_CloudFlare\.sh/ d' $${IPKG_INSTROOT}/usr/lib/ddns/services /bin/sed -i '/update_CloudFlare\.sh/ d' $${IPKG_INSTROOT}/usr/lib/ddns/services_ipv6 endef -define Package/$(PKG_NAME)_No-IP_com/prerm + +##### ********************************** +define Package/$(PKG_NAME)_no-ip_com/install + $(INSTALL_DIR) $(1)/usr/lib/ddns + $(INSTALL_BIN) $(PKG_BUILD_DIR)/files/update_No-IP.com.sh $(1)/usr/lib/ddns +endef +define Package/$(PKG_NAME)_no-ip_com/postinst + #!/bin/sh + echo -e '"No-IP.com"\t"update_No-IP.com.sh"' >> $${IPKG_INSTROOT}/usr/lib/ddns/services + echo -e '"NoIP.com"\t"update_No-IP.com.sh"' >> $${IPKG_INSTROOT}/usr/lib/ddns/services +endef +define Package/$(PKG_NAME)_no-ip_com/prerm #!/bin/sh /bin/sed -i '/update_No-IP\.com\.sh/ d' $${IPKG_INSTROOT}/usr/lib/ddns/services endef +##### ********************************** +define Package/$(PKG_NAME)_nsupdate/install + $(INSTALL_DIR) $(1)/usr/lib/ddns + $(INSTALL_BIN) $(PKG_BUILD_DIR)/files/update_nsupdate.sh $(1)/usr/lib/ddns +endef +define Package/$(PKG_NAME)_nsupdate/postinst + #!/bin/sh + echo -e '"Bind-nsupdate"\t"update_nsupdate.sh"' >> $${IPKG_INSTROOT}/usr/lib/ddns/services + echo -e '"Bind-nsupdate"\t"update_nsupdate.sh"' >> $${IPKG_INSTROOT}/usr/lib/ddns/services_ipv6 +endef +define Package/$(PKG_NAME)_nsupdate/prerm + #!/bin/sh + /bin/sed -i '/update_nsupdate\.sh/ d' $${IPKG_INSTROOT}/usr/lib/ddns/services + /bin/sed -i '/update_nsupdate\.sh/ d' $${IPKG_INSTROOT}/usr/lib/ddns/services_ipv6 +endef + +##### ********************************** $(eval $(call BuildPackage,$(PKG_NAME))) -$(eval $(call BuildPackage,$(PKG_NAME)_CloudFlare)) -$(eval $(call BuildPackage,$(PKG_NAME)_No-IP_com)) +$(eval $(call BuildPackage,$(PKG_NAME)_cloudflare)) +$(eval $(call BuildPackage,$(PKG_NAME)_no-ip_com)) +$(eval $(call BuildPackage,$(PKG_NAME)_nsupdate)) diff --git a/net/ddns-scripts/files/tld_names.dat b/net/ddns-scripts/files/tld_names.dat index 7e1959f42..f9274e43b 100644 --- a/net/ddns-scripts/files/tld_names.dat +++ b/net/ddns-scripts/files/tld_names.dat @@ -6153,6 +6153,38 @@ store.st // su : http://en.wikipedia.org/wiki/.su su +adygeya.su +arkhangelsk.su +balashov.su +bashkiria.su +bryansk.su +dagestan.su +grozny.su +ivanovo.su +kalmykia.su +kaluga.su +karelia.su +khakassia.su +krasnodar.su +kurgan.su +lenug.su +mordovia.su +msk.su +murmansk.su +nalchik.su +nov.su +obninsk.su +penza.su +pokrovsk.su +sochi.su +spb.su +togliatti.su +troitsk.su +tula.su +tuva.su +vladikavkaz.su +vladimir.su +vologda.su // sv : http://www.svnet.org.sv/niveldos.pdf sv @@ -9508,6 +9540,7 @@ zuerich // ===END ICANN DOMAINS=== // ===BEGIN PRIVATE DOMAINS=== +// (Note: these are in alphabetical order by company name) // Amazon CloudFront : https://aws.amazon.com/cloudfront/ // Submitted by Donavan Miller 2013-03-22 @@ -9941,6 +9974,10 @@ firebaseapp.com // Submitted by Jonathan Rudenberg 2014-07-12 flynnhub.com +// GDS : https://www.gov.uk/service-manual/operations/operating-servicegovuk-subdomains +// Submitted by David Illsley 2014-08-28 +service.gov.uk + // GitHub, Inc. // Submitted by Ben Toews 2014-02-06 github.io @@ -10052,17 +10089,19 @@ poznan.pl wroc.pl zakopane.pl +// priv.at : http://www.nic.priv.at/ +// Submitted by registry 2008-06-09 +priv.at + // Red Hat, Inc. OpenShift : https://openshift.redhat.com/ // Submitted by Tim Kramer 2012-10-24 rhcloud.com -// GDS : https://www.gov.uk/service-manual/operations/operating-servicegovuk-subdomains -// Submitted by David Illsley 2014-08-28 -service.gov.uk - -// priv.at : http://www.nic.priv.at/ -// Submitted by registry 2008-06-09 -priv.at +// SinaAppEngine : http://sae.sina.com.cn/ +// Submitted by SinaAppEngine 2015-02-02 +sinaapp.com +vipsinaapp.com +1kapp.com // TASK geographical domains (www.task.gda.pl/uslugi/dns) gda.pl diff --git a/net/ddns-scripts/files/update_nsupdate.sh b/net/ddns-scripts/files/update_nsupdate.sh new file mode 100644 index 000000000..1af94041e --- /dev/null +++ b/net/ddns-scripts/files/update_nsupdate.sh @@ -0,0 +1,46 @@ +# +#.Distributed under the terms of the GNU General Public License (GPL) version 2.0 +# +# The script directly updates a PowerDNS (or maybe bind server) via nsupdate from bind-client package. +#.based on github request #957 by Jan Riechers +#.2015 Christian Schoenebeck +# +# This script is parsed by dynamic_dns_functions.sh inside send_update() function +# +# using following options from /etc/config/ddns +# option username - keyname +# option password - shared secret (base64 encoded) +# option domain - full qualified domain to update +# option dns_server - DNS server to update +# +# variable __IP already defined with the ip-address to use for update +# +local __TTL=600 #.preset DNS TTL (in seconds) +local __RRTYPE __PW __TCP + +[ -x /usr/bin/nsupdate ] || write_log 14 "'nsupdate' not installed or not executable !" + +[ -z "$username" ] && write_log 14 "Service section not configured correctly! Missing 'username'" +[ -z "$password" ] && write_log 14 "Service section not configured correctly! Missing 'password'" +[ -z "$dns_server" ] && write_log 14 "Service section not configured correctly! Missing 'dns_server'" + +[ $use_ipv6 -ne 0 ] && __RRTYPE="AAAA" || __RRTYPE="A" +[ $force_dnstcp -ne 0 ] && __TCP="-v" || __TCP="" + +# create command file +cat >$DATFILE <<-EOF +server $dns_server +key $username $password +update del $domain $__RRTYPE +update add $domain $__TTL $__RRTYPE $__IP +show +send +quit +EOF + +/usr/bin/nsupdate -d $__TCP $DATFILE >$ERRFILE 2>&1 + +# nsupdate always return success +write_log 7 "nsupdate reports:\n$(cat $ERRFILE)" + +return 0 \ No newline at end of file From 32eafba860e77479937c36db5b7c441208e0da8c Mon Sep 17 00:00:00 2001 From: Ian Leonard Date: Sun, 15 Feb 2015 15:17:07 -0800 Subject: [PATCH 017/681] ffmpeg: update to 2.5.4 Signed-off-by: Ian Leonard --- multimedia/ffmpeg/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/multimedia/ffmpeg/Makefile b/multimedia/ffmpeg/Makefile index 9b46edb30..13293a83a 100644 --- a/multimedia/ffmpeg/Makefile +++ b/multimedia/ffmpeg/Makefile @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=ffmpeg -PKG_VERSION:=2.5.3 +PKG_VERSION:=2.5.4 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 PKG_SOURCE_URL:=http://ffmpeg.org/releases/ -PKG_MD5SUM:=efba7c5cfbea9ce58ff693cd08f90ffa +PKG_MD5SUM:=af92a816b642d32134a764d2d7f55b75 PKG_MAINTAINER:=Ted Hess PKG_LICENSE:=LGPL-2.1+ GPL-2+ LGPL-3 From 857a85a60dbc7ae61d722e32ae9934fb8f387c94 Mon Sep 17 00:00:00 2001 From: Amr Hassan Date: Sun, 22 Feb 2015 13:34:42 +0200 Subject: [PATCH 018/681] LuaRocks: Add new package Signed-off-by: Amr Hassan --- lang/luarocks/Makefile | 54 +++++++++++++++++++ .../patches/01_dont_modify_bin_shebang.diff | 13 +++++ 2 files changed, 67 insertions(+) create mode 100644 lang/luarocks/Makefile create mode 100644 lang/luarocks/patches/01_dont_modify_bin_shebang.diff diff --git a/lang/luarocks/Makefile b/lang/luarocks/Makefile new file mode 100644 index 000000000..15643ff5d --- /dev/null +++ b/lang/luarocks/Makefile @@ -0,0 +1,54 @@ +# +# Copyright (C) 2006-2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=luarocks +PKG_VERSION:=2.2.0-rc1 +PKG_RELEASE:=2 + +PKG_SOURCE:=v$(PKG_VERSION).tar.gz +PKG_SOURCE_URL:=https://github.com/keplerproject/$(PKG_NAME)/archive/ +PKG_MAINTAINER:=Amr Hassan +PKG_INSTALL=1 +PKG_BUILD_DEPENDS:=lua/host luac/host +PKG_LICENSE=GPL + +include $(INCLUDE_DIR)/package.mk + +define Package/luarocks + SUBMENU:=Lua + SECTION:=lang + CATEGORY:=Languages + TITLE:=luarocks + URL:=https://github.com/keplerproject/luarocks + DEPENDS:=+lua +luac +liblua +luasocket +unzip +curl +luasec +endef + +define Package/luarocks/description + LuaRocks is a deployment and management system for Lua modules. +endef + +# My custom args, copied and modified from SDK_ROOT/include/package-defaults.mk +CONFIGURE_ARGS = \ + --prefix=$(CONFIGURE_PREFIX) \ + --sysconfdir=/etc \ + --with-lua=$(STAGING_DIR_HOST) + +define Build/Compile + $(call Build/Compile/Default,build) +endef + +define Package/luarocks/install + $(INSTALL_DIR) $(1)/usr/bin + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/luarocks-5.1 $(1)/usr/bin/luarocks + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/luarocks-admin-5.1 $(1)/usr/bin/luarocks-admin + $(CP) $(PKG_INSTALL_DIR)/usr/share $(1)/usr/share + $(CP) $(PKG_INSTALL_DIR)/etc $(1)/etc +endef + +$(eval $(call BuildPackage,luarocks)) diff --git a/lang/luarocks/patches/01_dont_modify_bin_shebang.diff b/lang/luarocks/patches/01_dont_modify_bin_shebang.diff new file mode 100644 index 000000000..a1bad2151 --- /dev/null +++ b/lang/luarocks/patches/01_dont_modify_bin_shebang.diff @@ -0,0 +1,13 @@ +diff -rupN luarocks/Makefile luarocks.new/Makefile +--- luarocks/Makefile 2015-02-19 13:24:07.027310956 +0200 ++++ luarocks.new/Makefile 2015-02-22 13:28:24.497353543 +0200 +@@ -104,7 +104,7 @@ build_bins: cleanup_bins + for f in $(BIN_FILES) ;\ + do \ + sed "1d" src/bin/$$f > src/bin/$$f.bak ;\ +- echo "#!$(LUA_BINDIR)/lua$(LUA_SUFFIX)" > src/bin/$$f ;\ ++ echo "#!/usr/bin/env lua" > src/bin/$$f ;\ + echo "package.path = [[$(LUADIR)/?.lua;]]..package.path" | sed "s,//,/,g" >> src/bin/$$f ;\ + cat src/bin/$$f.bak >> src/bin/$$f ;\ + chmod +x src/bin/$$f ;\ +Binary files luarocks/src/bin/.luarocks.swp and luarocks.new/src/bin/.luarocks.swp differ From 60f106ab68906c862cb7456065306eaf17cd3066 Mon Sep 17 00:00:00 2001 From: Amr Hassan Date: Sun, 22 Feb 2015 15:52:52 +0200 Subject: [PATCH 019/681] UUID: Add new package Signed-off-by: Amr Hassan --- lang/uuid/Makefile | 48 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 lang/uuid/Makefile diff --git a/lang/uuid/Makefile b/lang/uuid/Makefile new file mode 100644 index 000000000..7ec89e353 --- /dev/null +++ b/lang/uuid/Makefile @@ -0,0 +1,48 @@ +# +# Copyright (C) 2006-2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=uuid +PKG_VERSION:=0.2.0 +PKG_RELEASE:=1 + +PKG_SOURCE:=version_$(PKG_VERSION).tar.gz +PKG_SOURCE_URL:=https://github.com/Tieske/$(PKG_NAME)/archive/ +PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-version_$(PKG_VERSION) +PKG_MAINTAINER:=Amr Hassan +PKG_LICENSE=Apache-2.0 + +LUA_MODULE_PATH:=/usr/lib/lua + +include $(INCLUDE_DIR)/package.mk + +define Package/uuid + SUBMENU:=Lua + SECTION:=lang + CATEGORY:=Languages + TITLE:=uuid + URL:=https://github.com/Tieske/uuid + DEPENDS:=+lua +luasocket +endef + +define Package/uuid/description + A pure Lua uuid generator +endef + +define Build/Configure +endef + +define Build/Compile +endef + +define Package/uuid/install + $(INSTALL_DIR) $(1)/$(LUA_MODULE_PATH) + $(INSTALL_DATA) $(PKG_BUILD_DIR)/src/uuid.lua $(1)/$(LUA_MODULE_PATH)/uuid.lua +endef + +$(eval $(call BuildPackage,uuid)) From d4969a644c516c1dbdbc541d051437e2d12da51e Mon Sep 17 00:00:00 2001 From: Amr Hassan Date: Sun, 22 Feb 2015 15:55:07 +0200 Subject: [PATCH 020/681] JSON4Lua: Add new package Signed-off-by: Amr Hassan --- lang/json4lua/Makefile | 48 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 lang/json4lua/Makefile diff --git a/lang/json4lua/Makefile b/lang/json4lua/Makefile new file mode 100644 index 000000000..ff8774cf1 --- /dev/null +++ b/lang/json4lua/Makefile @@ -0,0 +1,48 @@ +# +# Copyright (C) 2006-2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=json4lua +PKG_VERSION:=0.9.53 +PKG_RELEASE:=1 + +PKG_SOURCE:=$(PKG_VERSION).tar.gz +PKG_SOURCE_URL:=https://github.com/amrhassan/$(PKG_NAME)/archive/ +PKG_MAINTAINER:=Amr Hassan +PKG_LICENSE=MIT + +LUA_MODULE_PATH:=/usr/lib/lua + +include $(INCLUDE_DIR)/package.mk + +define Package/json4lua + SUBMENU:=Lua + SECTION:=lang + CATEGORY:=Languages + TITLE:=json4lua + URL:=https://github.com/amrhassan/json4lua + DEPENDS:=+lua +luasocket +endef + +define Package/json4lua/description + JSON and JSONRPC for Lua +endef + +define Build/Configure +endef + +define Build/Compile +endef + +define Package/json4lua/install + $(INSTALL_DIR) $(1)/$(LUA_MODULE_PATH)/json + $(INSTALL_DATA) $(PKG_BUILD_DIR)/json/json.lua $(1)/$(LUA_MODULE_PATH)/json.lua + $(INSTALL_DATA) $(PKG_BUILD_DIR)/json/rpc.lua $(1)/$(LUA_MODULE_PATH)/json/rpc.lua +endef + +$(eval $(call BuildPackage,json4lua)) From 2e9d2f3fafac7fefd13758955b73986726d1c71d Mon Sep 17 00:00:00 2001 From: Gergely Kiss Date: Sun, 1 Mar 2015 18:24:23 +0100 Subject: [PATCH 021/681] libevhtp: update to version 1.2.10 Signed-off-by: Gergely Kiss --- libs/libevhtp/Makefile | 6 +-- .../patches/020-strcmp-endianness-fix.patch | 49 ------------------- 2 files changed, 3 insertions(+), 52 deletions(-) delete mode 100644 libs/libevhtp/patches/020-strcmp-endianness-fix.patch diff --git a/libs/libevhtp/Makefile b/libs/libevhtp/Makefile index f6f61def5..8be811e67 100644 --- a/libs/libevhtp/Makefile +++ b/libs/libevhtp/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2007-2014 OpenWrt.org +# Copyright (C) 2007-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -8,13 +8,13 @@ include $(TOPDIR)/rules.mk PKG_NAME:=libevhtp -PKG_VERSION:=1.2.9 +PKG_VERSION:=1.2.10 PKG_RELEASE:=1 PKG_LICENSE:=BSD-3-Clause PKG_SOURCE:=$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=https://github.com/ellzey/libevhtp/archive/ -PKG_MD5SUM:=428a8d179fcc0cadedd914ed6456e08f +PKG_MD5SUM:=e7261c7e34654f78047431d169b88806 PKG_INSTALL:=1 diff --git a/libs/libevhtp/patches/020-strcmp-endianness-fix.patch b/libs/libevhtp/patches/020-strcmp-endianness-fix.patch deleted file mode 100644 index 072b76b0a..000000000 --- a/libs/libevhtp/patches/020-strcmp-endianness-fix.patch +++ /dev/null @@ -1,49 +0,0 @@ -diff -rupN libevhtp-1.2.9.orig/htparse/htparse.c libevhtp-1.2.9/htparse/htparse.c ---- libevhtp-1.2.9.orig/htparse/htparse.c 2014-03-23 12:50:50.000000000 +0100 -+++ libevhtp-1.2.9/htparse/htparse.c 2014-12-09 01:12:22.242001241 +0100 -@@ -197,6 +197,7 @@ static const char * method_strmap[] = { - - #define _MIN_READ(a, b) ((a) < (b) ? (a) : (b)) - -+#if __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__ - #define _str3_cmp(m, c0, c1, c2, c3) \ - *(uint32_t *)m == ((c3 << 24) | (c2 << 16) | (c1 << 8) | c0) - -@@ -226,6 +227,37 @@ static const char * method_strmap[] = { - *(uint32_t *)m == ((c3 << 24) | (c2 << 16) | (c1 << 8) | c0) \ - && ((uint32_t *)m)[1] == ((c7 << 24) | (c6 << 16) | (c5 << 8) | c4) \ - && m[8] == c8 -+#elif __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__ -+#define _str3_cmp(m, c0, c1, c2, c3) \ -+ *(uint32_t *)m == ((c0 << 24) | (c1 << 16) | (c2 << 8) | c3) -+ -+#define _str3Ocmp(m, c0, c1, c2, c3) \ -+ *(uint32_t *)m == ((c0 << 24) | (c1 << 16) | (c2 << 8) | c3) -+ -+#define _str4cmp(m, c0, c1, c2, c3) \ -+ *(uint32_t *)m == ((c0 << 24) | (c1 << 16) | (c2 << 8) | c3) -+ -+#define _str5cmp(m, c0, c1, c2, c3, c4) \ -+ *(uint32_t *)m == ((c0 << 24) | (c1 << 16) | (c2 << 8) | c3) \ -+ && m[4] == c4 -+ -+#define _str6cmp(m, c0, c1, c2, c3, c4, c5) \ -+ *(uint32_t *)m == ((c0 << 24) | (c1 << 16) | (c2 << 8) | c3) \ -+ && (((uint32_t *)m)[1] & 0xffff0000) == ((c4 << 24) | c5 << 16) -+ -+#define _str7_cmp(m, c0, c1, c2, c3, c4, c5, c6, c7) \ -+ *(uint32_t *)m == ((c0 << 24) | (c1 << 16) | (c2 << 8) | c3) \ -+ && ((uint32_t *)m)[1] == ((c4 << 24) | (c5 << 16) | (c6 << 8) | c7) -+ -+#define _str8cmp(m, c0, c1, c2, c3, c4, c5, c6, c7) \ -+ *(uint32_t *)m == ((c0 << 24) | (c1 << 16) | (c2 << 8) | c3) \ -+ && ((uint32_t *)m)[1] == ((c4 << 24) | (c5 << 16) | (c6 << 8) | c7) -+ -+#define _str9cmp(m, c0, c1, c2, c3, c4, c5, c6, c7, c8) \ -+ *(uint32_t *)m == ((c0 << 24) | (c1 << 16) | (c2 << 8) | c3) \ -+ && ((uint32_t *)m)[1] == ((c4 << 24) | (c5 << 16) | (c6 << 8) | c7) \ -+ && m[8] == c8 -+#endif - - #define __HTPARSE_GENHOOK(__n) \ - static inline int hook_ ## __n ## _run(htparser * p, htparse_hooks * hooks) { \ From b1b14b2a574e9068254ad7fa7e94ca5f9edd8aa0 Mon Sep 17 00:00:00 2001 From: Luiz Angelo Daros de Luca Date: Sun, 1 Mar 2015 21:02:01 -0300 Subject: [PATCH 022/681] gst1-plugins-bad: remove unrecognized config opts Signed-off-by: Luiz Angelo Daros de Luca --- multimedia/gst1-plugins-bad/Makefile | 14 -------------- 1 file changed, 14 deletions(-) diff --git a/multimedia/gst1-plugins-bad/Makefile b/multimedia/gst1-plugins-bad/Makefile index 105f127e9..f910017a9 100644 --- a/multimedia/gst1-plugins-bad/Makefile +++ b/multimedia/gst1-plugins-bad/Makefile @@ -106,28 +106,18 @@ CONFIGURE_ARGS += \ --disable-osx_video \ --disable-quicktime \ --disable-vcd \ - --disable-alsa \ --disable-assrender \ - --disable-amrwb \ --disable-apexsink \ --disable-bz2 \ - --disable-cdaudio \ - --disable-celt \ - --disable-cog \ --disable-dc1394 \ --disable-directfb \ - --disable-dirac \ --disable-dts \ - --disable-divx \ --disable-resindvd \ - --disable-metadata \ --disable-faac \ --disable-faad \ --disable-fbdev \ --disable-flite \ --disable-gsm \ - --disable-jack \ - --disable-jp2k \ --disable-kate \ --disable-ladspa \ --disable-lv2 \ @@ -137,7 +127,6 @@ CONFIGURE_ARGS += \ --disable-mpeg2enc \ --disable-mplex \ --disable-musepack \ - --disable-musicbrainz \ --disable-mythtv \ --disable-nas \ --disable-neon \ @@ -151,8 +140,6 @@ CONFIGURE_ARGS += \ --disable-soundtouch \ --disable-spc \ --disable-gme \ - --disable-swfdec \ - --disable-theoradec \ --disable-xvid \ --disable-dvb \ --disable-wininet \ @@ -160,7 +147,6 @@ CONFIGURE_ARGS += \ --disable-vdpau \ --disable-schro \ --disable-zbar \ - --disable-vp8 \ --disable-srtp \ \ --without-libiconv-prefix \ From f8ec4d90d6efc557d58c502f79909e46394c1dd6 Mon Sep 17 00:00:00 2001 From: Luiz Angelo Daros de Luca Date: Sun, 1 Mar 2015 21:36:59 -0300 Subject: [PATCH 023/681] gst1-plugins-bad: add shmsrc/sink This adds POSIX shared memory source and sink plugin Signed-off-by: Luiz Angelo Daros de Luca --- multimedia/gst1-plugins-bad/Makefile | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/multimedia/gst1-plugins-bad/Makefile b/multimedia/gst1-plugins-bad/Makefile index f910017a9..7ee774a95 100644 --- a/multimedia/gst1-plugins-bad/Makefile +++ b/multimedia/gst1-plugins-bad/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2011-2014 OpenWrt.org +# Copyright (C) 2011-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=gst1-plugins-bad PKG_VERSION:=1.4.4 -PKG_RELEASE:=4 +PKG_RELEASE:=5 PKG_MAINTAINER:=W. Michael Petullo @@ -261,6 +261,7 @@ $(eval $(call GstBuildPlugin,rawparse,rawparse support,audio video,,)) $(eval $(call GstBuildPlugin,rfbsrc,librfb support,video,,)) $(eval $(call GstBuildPlugin,sdpelem,sdp support,rtp sdp,,)) $(eval $(call GstBuildPlugin,segmentclip,segmentclip support,audio,,)) +$(eval $(call GstBuildPlugin,shm,POSIX shared memory source and sink,,,+librt)) $(eval $(call GstBuildPlugin,siren,siren support,audio rtp,,)) $(eval $(call GstBuildPlugin,speed,speed support,audio,,)) $(eval $(call GstBuildPlugin,subenc,subenc support,controller,,)) From 05960c50bafa04ab9a9c32e3ab590f7dc8923ca2 Mon Sep 17 00:00:00 2001 From: Luiz Angelo Daros de Luca Date: Mon, 2 Mar 2015 01:53:42 -0300 Subject: [PATCH 024/681] gst1-plugins-base: add videorate and videoscale Signed-off-by: Luiz Angelo Daros de Luca --- multimedia/gst1-plugins-base/Makefile | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/multimedia/gst1-plugins-base/Makefile b/multimedia/gst1-plugins-base/Makefile index 73b2ce16a..362a4437a 100644 --- a/multimedia/gst1-plugins-base/Makefile +++ b/multimedia/gst1-plugins-base/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=gst1-plugins-base PKG_VERSION:=1.4.4 -PKG_RELEASE:=3 +PKG_RELEASE:=4 PKG_MAINTAINER:=W. Michael Petullo @@ -133,8 +133,8 @@ CONFIGURE_ARGS += \ --disable-subparse \ $(call GST_COND_SELECT,tcp) \ $(call GST_COND_SELECT,theora) \ - --disable-videorate \ - --disable-videoscale \ + $(call GST_COND_SELECT,videorate) \ + $(call GST_COND_SELECT,videoscale) \ $(call GST_COND_SELECT,videoconvert) \ $(call GST_COND_SELECT,videotestsrc) \ $(call GST_COND_SELECT,volume) \ @@ -279,6 +279,8 @@ $(eval $(call GstBuildPlugin,tcp,TCP,,,)) $(eval $(call GstBuildPlugin,theora,Theora,tag video,,+libogg +libtheora)) $(eval $(call GstBuildPlugin,typefindfunctions,'typefind' functions,audio pbutils tag video,,)) $(eval $(call GstBuildPlugin,videoconvert,video format conversion,video,,)) +$(eval $(call GstBuildPlugin,videorate,Adjusts video frames,video,,)) +$(eval $(call GstBuildPlugin,videoscale,Resizes video,video,,)) $(eval $(call GstBuildPlugin,videotestsrc,video test,video,,+liboil)) $(eval $(call GstBuildPlugin,volume,volume,audio controller,,+liboil)) $(eval $(call GstBuildPlugin,vorbis,Vorbis,audio tag,ogg,+libvorbis)) From 1e4684c236d5ac9623d137741814d0fdc2740e35 Mon Sep 17 00:00:00 2001 From: Maxim Storchak Date: Mon, 2 Mar 2015 10:22:05 +0200 Subject: [PATCH 025/681] wget: update to 1.16.2 Signed-off-by: Maxim Storchak --- net/wget/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/net/wget/Makefile b/net/wget/Makefile index a1682b357..e8f71b779 100644 --- a/net/wget/Makefile +++ b/net/wget/Makefile @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=wget -PKG_VERSION:=1.16.1 +PKG_VERSION:=1.16.2 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=@GNU/$(PKG_NAME) -PKG_MD5SUM:=78942cc0cce0a23e18114d982789e360 +PKG_MD5SUM:=50b67a11971ecc6d142e634e8436fc0f PKG_MAINTAINER:=Maxim Storchak PKG_LICENSE:=GPL-3.0+ PKG_LICENSE_FILES:=COPYING From f2d9e75d83f6065896676acd005d6d3c007faae8 Mon Sep 17 00:00:00 2001 From: Steven Barth Date: Mon, 2 Mar 2015 10:01:47 +0100 Subject: [PATCH 026/681] libsigc++: bump to 2.4.1 Signed-off-by: Steven Barth --- libs/libsigc++/Makefile | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/libs/libsigc++/Makefile b/libs/libsigc++/Makefile index 66fffb08a..fbb0a5610 100644 --- a/libs/libsigc++/Makefile +++ b/libs/libsigc++/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2006-2014 OpenWrt.org +# Copyright (C) 2006-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=libsigc++ -PKG_VERSION:=2.4.0 +PKG_VERSION:=2.4.1 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=@GNOME/libsigc++/2.4 -PKG_MD5SUM:=c6cd2259f5ef973e4c8178d0abbdbfa7 +PKG_MD5SUM:=55945ba6e1652f89999e910f6b52047c PKG_MAINTAINER:=Steven Barth PKG_LICENSE:=LGPL-2.1 From 8bf036f0e2f6d6ecf4d0a7859fe8828417b6804f Mon Sep 17 00:00:00 2001 From: Marcel Denia Date: Mon, 2 Mar 2015 10:18:00 +0100 Subject: [PATCH 027/681] perl-uri: Update to 1.67 Signed-off-by: Marcel Denia --- lang/perl-uri/Makefile | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/lang/perl-uri/Makefile b/lang/perl-uri/Makefile index 64cc10f17..28164fd71 100644 --- a/lang/perl-uri/Makefile +++ b/lang/perl-uri/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2014 OpenWrt.org +# Copyright (C) 2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=perl-uri -PKG_VERSION:=1.65 +PKG_VERSION:=1.67 PKG_RELEASE:=1 PKG_SOURCE_URL:=http://www.cpan.org/authors/id/E/ET/ETHER/ PKG_SOURCE:=URI-$(PKG_VERSION).tar.gz -PKG_MD5SUM:=12c5d612a20ddd42041a5aa426f66269 +PKG_MD5SUM:=d0ef53b6c63bcc02ba55f405c30741e3 PKG_LICENSE:=GPL-1.0+ Artistic-1.0-Perl PKG_MAINTAINER:=Marcel Denia From e6503d16a65c2c02fa87e4bff0010c3ed925a49a Mon Sep 17 00:00:00 2001 From: Jianping Li Date: Mon, 2 Mar 2015 16:59:52 +0000 Subject: [PATCH 028/681] update opencv version as 2.4.11 Signed-off-by: Jianping Li --- libs/opencv/Makefile | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/libs/opencv/Makefile b/libs/opencv/Makefile index 9abc8ad5a..bf80fbe9b 100644 --- a/libs/opencv/Makefile +++ b/libs/opencv/Makefile @@ -9,12 +9,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=opencv -PKG_VERSION:=2.4.10 -PKG_RELEASE:=2 +PKG_VERSION:=2.4.11 +PKG_RELEASE:=3 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).zip -PKG_SOURCE_URL:=http://sourceforge.net/projects/opencvlibrary/files/opencv-unix/2.4.10/ -PKG_MD5SUM:=ec63952d3a3dff965d5fdde765926821 +PKG_SOURCE_URL:=http://sourceforge.net/projects/opencvlibrary/files/opencv-unix/$(PKG_VERSION)/ +PKG_MD5SUM:=32f498451bff1817a60e1aabc2939575 PKG_LICENSE:=BSD-3-Clause PKG_LICENSE_FILES:=LICENSE @@ -35,7 +35,7 @@ endef define Package/opencv SECTION:=libs CATEGORY:=Libraries - TITLE:=opencv-2.4.10 + TITLE:=opencv-2.4.11 URL:=http://opencv.org/ MAINTAINER:=WRTnode Team DEPENDS:=+libpthread +librt +libstdcpp +zlib +libjpeg @@ -45,8 +45,8 @@ endef PKG_INSTALL:=1 CMAKE_OPTIONS += -DBUILD_opencv_gpu:BOOL=OFF \ - -DWITH_1394:BOOL=OFF -DBUILD_opencv_stitching:BOOL=OFF \ - -DBUILD_opencv_superres:BOOL=OFF -DBUILD_opencv_ts:BOOL=OFF \ + -DWITH_1394:BOOL=OFF -DBUILD_opencv_stitching:BOOL=OFF \ + -DBUILD_opencv_superres:BOOL=OFF -DBUILD_opencv_ts:BOOL=OFF \ -DBUILD_opencv_highgui:BOOL=OFF \ -DBUILD_opencv_videostab:BOOL=OFF \ -DWITH_FFMPEG:BOOL=OFF \ From 5dfdf5374ce3844ae110d0e1c3e208d184a227b7 Mon Sep 17 00:00:00 2001 From: Hannu Nyman Date: Mon, 2 Mar 2015 19:52:46 +0200 Subject: [PATCH 029/681] collectd: update to 5.4.2 Update collectd, base of Luci statistics, to 5.4.2. Patches have been refreshed. 905-fix-sigrok-upstream-patch-post-541 was removed as unnecessary. Signed-off-by: Hannu Nyman --- utils/collectd/Makefile | 4 +-- .../100-rrdtool-add-rrasingle-option.patch | 2 +- .../patches/200-fix-git-describe-error.patch | 2 +- .../patches/900-add-iwinfo-plugin.patch | 14 ++++----- .../905-fix-sigrok-upstream-patch-post-541 | 31 ------------------- 5 files changed, 11 insertions(+), 42 deletions(-) delete mode 100644 utils/collectd/patches/905-fix-sigrok-upstream-patch-post-541 diff --git a/utils/collectd/Makefile b/utils/collectd/Makefile index 33af152a7..1127133e4 100644 --- a/utils/collectd/Makefile +++ b/utils/collectd/Makefile @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=collectd -PKG_VERSION:=5.4.1 +PKG_VERSION:=5.4.2 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 PKG_SOURCE_URL:=http://collectd.org/files/ -PKG_MD5SUM:=6f56c71c96573a7f4f7fb3bfab185974 +PKG_MD5SUM:=feff9fd0ed89e956d7cf12ba18cfc248 PKG_FIXUP:=autoreconf PKG_REMOVE_FILES:=aclocal.m4 libltdl/aclocal.m4 diff --git a/utils/collectd/patches/100-rrdtool-add-rrasingle-option.patch b/utils/collectd/patches/100-rrdtool-add-rrasingle-option.patch index d5aafa287..30a71e8d6 100644 --- a/utils/collectd/patches/100-rrdtool-add-rrasingle-option.patch +++ b/utils/collectd/patches/100-rrdtool-add-rrasingle-option.patch @@ -34,7 +34,7 @@ double tmp = atof (value); --- a/src/utils_rrdcreate.c +++ b/src/utils_rrdcreate.c -@@ -211,6 +211,9 @@ static int rra_get (char ***ret, const v +@@ -212,6 +212,9 @@ static int rra_get (char ***ret, const v rts_num = rra_timespans_num; } diff --git a/utils/collectd/patches/200-fix-git-describe-error.patch b/utils/collectd/patches/200-fix-git-describe-error.patch index 0d4120ebf..ac0a32512 100644 --- a/utils/collectd/patches/200-fix-git-describe-error.patch +++ b/utils/collectd/patches/200-fix-git-describe-error.patch @@ -2,7 +2,7 @@ +++ b/version-gen.sh @@ -2,7 +2,7 @@ - DEFAULT_VERSION="5.4.1.git" + DEFAULT_VERSION="5.4.2.git" -VERSION="`git describe 2> /dev/null | sed -e 's/^collectd-//'`" +#VERSION="`git describe 2> /dev/null | sed -e 's/^collectd-//'`" diff --git a/utils/collectd/patches/900-add-iwinfo-plugin.patch b/utils/collectd/patches/900-add-iwinfo-plugin.patch index 1b358d01e..cc95c0c75 100644 --- a/utils/collectd/patches/900-add-iwinfo-plugin.patch +++ b/utils/collectd/patches/900-add-iwinfo-plugin.patch @@ -1,6 +1,6 @@ --- a/configure.ac +++ b/configure.ac -@@ -568,6 +568,9 @@ AC_CHECK_HEADERS(net/pfvar.h, +@@ -580,6 +580,9 @@ AC_CHECK_HEADERS(net/pfvar.h, have_termios_h="no" AC_CHECK_HEADERS(termios.h, [have_termios_h="yes"]) @@ -10,7 +10,7 @@ # # Checks for typedefs, structures, and compiler characteristics. # -@@ -4819,6 +4822,7 @@ plugin_interface="no" +@@ -4841,6 +4844,7 @@ plugin_interface="no" plugin_ipmi="no" plugin_ipvs="no" plugin_irq="no" @@ -18,7 +18,7 @@ plugin_libvirt="no" plugin_load="no" plugin_memory="no" -@@ -5157,6 +5161,7 @@ AC_PLUGIN([ipmi], [$plugin_ipmi], +@@ -5179,6 +5183,7 @@ AC_PLUGIN([ipmi], [$plugin_ipmi], AC_PLUGIN([iptables], [$with_libiptc], [IPTables rule counters]) AC_PLUGIN([ipvs], [$plugin_ipvs], [IPVS connection statistics]) AC_PLUGIN([irq], [$plugin_irq], [IRQ statistics]) @@ -26,7 +26,7 @@ AC_PLUGIN([java], [$with_java], [Embed the Java Virtual Machine]) AC_PLUGIN([libvirt], [$plugin_libvirt], [Virtual machine statistics]) AC_PLUGIN([load], [$plugin_load], [System load]) -@@ -5458,6 +5463,7 @@ Configuration: +@@ -5480,6 +5485,7 @@ Configuration: protobuf-c . . . . . $have_protoc_c oracle . . . . . . . $with_oracle python . . . . . . . $with_python @@ -34,7 +34,7 @@ Features: daemon mode . . . . . $enable_daemon -@@ -5502,6 +5508,7 @@ Configuration: +@@ -5524,6 +5530,7 @@ Configuration: iptables . . . . . . $enable_iptables ipvs . . . . . . . . $enable_ipvs irq . . . . . . . . . $enable_irq @@ -52,7 +52,7 @@ #@BUILD_PLUGIN_JAVA_TRUE@LoadPlugin java #@BUILD_PLUGIN_LIBVIRT_TRUE@LoadPlugin libvirt @BUILD_PLUGIN_LOAD_TRUE@@BUILD_PLUGIN_LOAD_TRUE@LoadPlugin load -@@ -467,6 +468,12 @@ +@@ -502,6 +503,12 @@ # IgnoreSelected true # @@ -67,7 +67,7 @@ # JVMArg "-Djava.class.path=@prefix@/share/collectd/java/collectd-api.jar" --- a/src/collectd.conf.pod +++ b/src/collectd.conf.pod -@@ -2056,6 +2056,27 @@ and all other interrupts are collected. +@@ -2077,6 +2077,27 @@ and all other interrupts are collected. =back diff --git a/utils/collectd/patches/905-fix-sigrok-upstream-patch-post-541 b/utils/collectd/patches/905-fix-sigrok-upstream-patch-post-541 deleted file mode 100644 index 2b614cc8e..000000000 --- a/utils/collectd/patches/905-fix-sigrok-upstream-patch-post-541 +++ /dev/null @@ -1,31 +0,0 @@ ---- a/configure.ac -+++ b/configure.ac -@@ -3825,18 +3825,20 @@ AC_ARG_WITH(libsigrok, [AS_HELP_STRING([--with-libsigrok@<:@=PREFIX@:>@], [Path - with_libsigrok_ldflags="-L$withval/lib" - fi - fi --],[]) -+],[with_libsigrok="yes"]) - - # libsigrok has a glib dependency - if test "x$with_libsigrok" = "xyes" - then -- if test -z "m4_ifdef([AM_PATH_GLIB_2_0], [yes], [])" -- then -- with_libsigrok="no (glib not available)" -- else -- AM_PATH_GLIB_2_0([2.28.0], -- [with_libsigrok_cflags="$with_libsigrok_cflags $GLIB_CFLAGS"; with_libsigrok_ldflags="$with_libsigrok_ldflags $GLIB_LIBS"]) -- fi -+m4_ifdef([AM_PATH_GLIB_2_0], -+ [ -+ AM_PATH_GLIB_2_0([2.28.0], -+ [with_libsigrok_cflags="$with_libsigrok_cflags $GLIB_CFLAGS"; with_libsigrok_ldflags="$with_libsigrok_ldflags $GLIB_LIBS"]) -+ ], -+ [ -+ with_libsigrok="no (glib not available)" -+ ] -+) - fi - - # libsigrok headers From 39464f9cb5e411ab9735677e05b648bea9909695 Mon Sep 17 00:00:00 2001 From: Ted Hess Date: Mon, 2 Mar 2015 13:21:30 -0500 Subject: [PATCH 030/681] boost: reorganize menus, fix some build dependencies and ABI selections Add meta-package with all libraries when CONFIG_ALL selected. Signed-off-by: Ted Hess --- libs/boost/Makefile | 423 ++++++++++++-------------------------------- 1 file changed, 112 insertions(+), 311 deletions(-) diff --git a/libs/boost/Makefile b/libs/boost/Makefile index aae7fd2b4..56e294c61 100644 --- a/libs/boost/Makefile +++ b/libs/boost/Makefile @@ -17,7 +17,7 @@ include $(INCLUDE_DIR)/target.mk PKG_NAME:=boost PKG_VERSION:=1_57_0 -PKG_RELEASE:=2 +PKG_RELEASE:=3 PKG_SOURCE:=$(PKG_NAME)_$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=@SF/boost @@ -25,203 +25,139 @@ PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)_$(PKG_VERSION) HOST_BUILD_DIR:=$(BUILD_DIR_HOST)/$(PKG_NAME)_$(PKG_VERSION) PKG_MD5SUM:=25f9a8ac28beeb5ab84aa98510305299 PKG_LICENSE:=Boost Software License -PKG_MAINTAINER:=Carlos M. Ferreira (Modified from Mirko Vogt Boost 1.51 Original Makefile and patches) - +PKG_MAINTAINER:=Carlos M. Ferreira PKG_BUILD_DEPENDS += boost/host PKG_BUILD_PARALLEL:=0 PKG_USE_MIPS16:=0 -PKG_CONFIG_DEPENDS := \ - CONFIG_PACKAGE_boost-date_time \ - CONFIG_PACKAGE_boost-filesystem \ - CONFIG_PACKAGE_boost-graph \ - CONFIG_PACKAGE_boost-iostreams \ - CONFIG_PACKAGE_boost-math \ - CONFIG_PACKAGE_boost-program_options \ - CONFIG_PACKAGE_boost-python \ - CONFIG_PACKAGE_boost-regex \ - CONFIG_PACKAGE_boost-serialization \ - CONFIG_PACKAGE_boost-signals \ - CONFIG_PACKAGE_boost-system \ - CONFIG_PACKAGE_boost-test \ - CONFIG_PACKAGE_boost-thread \ - CONFIG_PACKAGE_boost-wave \ - CONFIG_PACKAGE_boost-atomic \ - CONFIG_PACKAGE_boost-context \ - CONFIG_PACKAGE_boost-container \ - CONFIG_PACKAGE_boost-coroutine \ - CONFIG_PACKAGE_boost-log \ - - - include $(INCLUDE_DIR)/package.mk include $(INCLUDE_DIR)/host-build.mk define Package/boost/Default SECTION:=libs CATEGORY:=Libraries - TITLE:=Boost C++ source libraries + TITLE:=Boost C++ source library URL:=http://www.boost.org DEPENDS:=+libstdcpp +libpthread +librt endef -define Package/boost/Default/description +define Package/boost/description/Default Boost provides free peer-reviewed portable C++ source libraries endef -define Package/boost-atomic - $(call Package/boost/Default) - TITLE+= (atomic) - DEPENDS+= +boost-system -endef - -define Package/boost-chrono - $(call Package/boost/Default) - TITLE+= (chrono) - DEPENDS+= +boost-system -endef - -define Package/boost-date_time - $(call Package/boost/Default) - TITLE+= (date_time) -endef - -define Package/boost-exception - $(call Package/boost/Default) - TITLE+= (exception) -endef - -define Package/boost-filesystem - $(call Package/boost/Default) - TITLE+= (filesystem) - DEPENDS+= +boost-system -endef +BOOST_LIBS = -define Package/boost-graph - $(call Package/boost/Default) - TITLE+= (graph) - DEPENDS+= +boost-regex +define Package/boost-libs +$(call Package/boost/Default) + TITLE+= (all libs) + DEPENDS+= $(BOOST_DEPENDS) + HIDDEN:=1 endef -define Package/boost-graph_parallel - $(call Package/boost/Default) - TITLE+= (graph_parallel) +define Package/boost-libs/description +$(call Package/boost/description/Default) + . + This meta package contains only dependencies to the other libraries from + the boost libraries collection. endef -define Package/boost-iostreams - $(call Package/boost/Default) - TITLE+= (iostreams) - DEPENDS+= +zlib +# Create a meta-package of dependent libraries (for ALL) +define Package/boost-libs/install + true endef -define Package/boost-locale +define Package/boost $(call Package/boost/Default) - TITLE+= (locale) - DEPENDS+= $(ICONV_DEPENDS) + TITLE+= packages + DEPENDS:=+ALL:boost-libs +ALL:boost-test endef -define Package/boost-math - $(call Package/boost/Default) - TITLE+= (math) -endef +define Package/boost/config + menu "Select Boost libraries" + depends on PACKAGE_boost -define Package/boost-mpi - $(call Package/boost/Default) - TITLE+= (mpi) -endef + config boost-libs-all + bool "Include all Boost libraries" + select PACKAGE_boost-libs -define Package/boost-program_options - $(call Package/boost/Default) - TITLE+= (program_options) -endef + config boost-test-pkg + bool "Boost test package" + select PACKAGE_boost-test -define Package/boost-python - $(call Package/boost/Default) - TITLE+= (python) - DEPENDS+= +PACKAGE_boost-python:python -endef + comment "Libraries" -define Package/boost-random - $(call Package/boost/Default) - TITLE+= (random) - DEPENDS+= +boost-system -endef + $(foreach lib,$(BOOST_LIBS), \ + config PACKAGE_boost-$(lib) + prompt "Boost $(lib) library" -define Package/boost-regex - $(call Package/boost/Default) - TITLE+= (regex) -endef + ) -define Package/boost-serialization - $(call Package/boost/Default) - TITLE+= (serialization) -endef + endmenu -define Package/boost-signals - $(call Package/boost/Default) - TITLE+= (signals) endef -define Package/boost-system - $(call Package/boost/Default) - TITLE+= (system) -endef +PKG_CONFIG_DEPENDS:= CONFIG_PACKAGE_boost-test define Package/boost-test $(call Package/boost/Default) TITLE+= (test) -endef - -define Package/boost-thread - $(call Package/boost/Default) - TITLE+= (thread) - DEPENDS+= +boost-system +boost-chrono +boost-atomic -endef - -define Package/boost-timer - $(call Package/boost/Default) - TITLE+= (timer) - DEPENDS+= boost-chrono -endef - -define Package/boost-wave - $(call Package/boost/Default) - TITLE+= (wave) - DEPENDS+= +boost-date_time +boost-thread +boost-filesystem -endef - -define Package/boost-context - $(call Package/boost/Default) - TITLE+= (context) -endef - -define Package/boost-container - $(call Package/boost/Default) - TITLE+= (container) -endef - -define Package/boost-coroutine - $(call Package/boost/Default) - TITLE+= (coroutine) - DEPENDS+= +boost-system +boost-chrono +boost-context +boost-thread -endef - -define Package/boost-log - $(call Package/boost/Default) - TITLE+= (log) - DEPENDS+= +boost-system +boost-chrono +boost-date_time +boost-thread +boost-filesystem +boost-regex -endef - -define Package/boost - $(call Package/boost/Default) - TITLE+= (header-only) - BUILDONLY:=1 + HIDDEN:=1 endef define Build/Configure endef +# 1: short name +# 2: dependencies on other boost libraries (short name) +# 3: dependencies on other packages +define DefineBoostLibrary + + BOOST_DEPENDS+= +boost-$(1) + BOOST_LIBS+= $(1) + + PKG_CONFIG_DEPENDS+= CONFIG_PACKAGE_boost-$(1) + + define Package/boost-$(1) + $(call Package/boost/Default) + TITLE+= ($(1)) + DEPENDS+= $$(foreach lib,$(2),+boost-$$(lib)) $(3) + HIDDEN:=1 + endef + + define Package/boost-$(1)/description + $(call Package/boost/description/Default) + . + This package contains the Boost $(1) library. + endef +endef + +$(eval $(call DefineBoostLibrary,atomic,system,)) +$(eval $(call DefineBoostLibrary,chrono,system,)) +$(eval $(call DefineBoostLibrary,container,,)) +$(eval $(call DefineBoostLibrary,context,,)) +$(eval $(call DefineBoostLibrary,coroutine,system chrono context thread,)) +$(eval $(call DefineBoostLibrary,date_time,,)) +#$(eval $(call DefineBoostLibrary,exception,,)) +$(eval $(call DefineBoostLibrary,filesystem,system,)) +$(eval $(call DefineBoostLibrary,graph,regex,)) +#$(eval $(call DefineBoostLibrary,graph_parallel,,)) +$(eval $(call DefineBoostLibrary,iostreams,,+zlib)) +$(eval $(call DefineBoostLibrary,locale,system,$(ICONV_DEPENDS))) +$(eval $(call DefineBoostLibrary,log,system chrono date_time thread filesystem regex,)) +$(eval $(call DefineBoostLibrary,math,,)) +#$(eval $(call DefineBoostLibrary,mpi,,)) +$(eval $(call DefineBoostLibrary,program_options,,)) +$(eval $(call DefineBoostLibrary,random,system,)) +$(eval $(call DefineBoostLibrary,python,,+PACKAGE_boost-python:python)) +$(eval $(call DefineBoostLibrary,regex,,)) +$(eval $(call DefineBoostLibrary,serialization,,)) +$(eval $(call DefineBoostLibrary,signals,,)) +$(eval $(call DefineBoostLibrary,system,,)) +$(eval $(call DefineBoostLibrary,thread,system chrono atomic,)) +$(eval $(call DefineBoostLibrary,timer,chrono)) +$(eval $(call DefineBoostLibrary,wave,date_time thread filesystem,)) + define Host/Compile # bjam does not provide a configure-script nor a Makefile ( cd $(HOST_BUILD_DIR)/tools/build/src/engine ; ./build.sh gcc ) @@ -231,26 +167,22 @@ CONFIGURE_PREFIX:=$(PKG_INSTALL_DIR) TARGET_LDFLAGS += -pthread -lrt - - ifneq ($(findstring mips,$(ARCH)),) - ifeq ($(ARCH),mips64) - BOOST_ABI = 64 - else ifeq ($(ARCH),octeon) - BOOST_ABI = 64 - else - BOOST_ABI = o32 + BOOST_ABI = o32 + ifneq ($(findstring 64,$(ARCH)),) + BOOST_ABI = o64 endif -else ifeq ($(ARCH),arm) - BOOST_ABI = aapcs +else ifneq ($(findstring arm,$(ARCH)),) + BOOST_ABI = aapcs +else ifeq ($(ARCH),aarch64) + BOOST_ABI = aapcs else - BOOST_ABI = sysv + BOOST_ABI = sysv endif - define Build/Compile - echo "Selected Boost API $(BOOST_ABI) for architecture $(ARCH) and cpu $(CPU_TYPE) $(CPU_SUBTYPE)"; + $(info Selected Boost API $(BOOST_ABI) for architecture $(ARCH) and cpu $(CPU_TYPE) $(CPU_SUBTYPE)) ( cd $(PKG_BUILD_DIR) ; \ echo "using gcc : $(ARCH) : $(GNU_TARGET_NAME)-gcc : \"$(TARGET_CFLAGS)\" \"$(TARGET_CXXFLAGS)\" \"$(TARGET_LDFLAGS)\" ;" > tools/build/src/user-config.jam ; \ $(if $(CONFIG_PACKAGE_boost-python), \ @@ -262,33 +194,13 @@ define Build/Compile --toolset=gcc-$(ARCH) --build-type=minimal --layout=system abi=$(BOOST_ABI) \ --disable-long-double \ $(CONFIGURE_ARGS) \ - $(if $(CONFIG_PACKAGE_boost-atomic),,--without-atomic) \ - $(if $(CONFIG_PACKAGE_boost-chrono),,--without-chrono) \ - $(if $(CONFIG_PACKAGE_boost-date_time),,--without-date_time) \ - $(if $(CONFIG_PACKAGE_boost-exception),,--without-exception) \ - $(if $(CONFIG_PACKAGE_boost-filesystem),,--without-filesystem) \ - $(if $(CONFIG_PACKAGE_boost-graph),,--without-graph) \ - $(if $(CONFIG_PACKAGE_boost-graph_parallel),,--without-graph_parallel) \ - $(if $(CONFIG_PACKAGE_boost-iostreams),,--without-iostreams) \ - $(if $(CONFIG_PACKAGE_boost-locale),boost.locale.iconv=on -sICONV_PATH=$(ICONV_PREFIX) boost.locale.posix=$(if $(USE_UCLIBC),on,off), \ - --without-locale boost.locale.iconv=off) \ - $(if $(CONFIG_PACKAGE_boost-math),,--without-math) \ - $(if $(CONFIG_PACKAGE_boost-mpi),,--without-mpi) \ - $(if $(CONFIG_PACKAGE_boost-program_options),,--without-program_options) \ - $(if $(CONFIG_PACKAGE_boost-python),,--without-python) \ - $(if $(CONFIG_PACKAGE_boost-random),,--without-random) \ - $(if $(CONFIG_PACKAGE_boost-regex),,--without-regex) \ - $(if $(CONFIG_PACKAGE_boost-serialization),,--without-serialization) \ - $(if $(CONFIG_PACKAGE_boost-signals),,--without-signals) \ - $(if $(CONFIG_PACKAGE_boost-system),,--without-system) \ + --without-mpi \ $(if $(CONFIG_PACKAGE_boost-test),,--without-test) \ - $(if $(CONFIG_PACKAGE_boost-thread),,--without-thread) \ - $(if $(CONFIG_PACKAGE_boost-timer),,--without-timer) \ - $(if $(CONFIG_PACKAGE_boost-wave),,--without-wave) \ - $(if $(CONFIG_PACKAGE_boost-context),,--without-context) \ - $(if $(CONFIG_PACKAGE_boost-container),,--without-container) \ - $(if $(CONFIG_PACKAGE_boost-coroutine),,--without-coroutine) \ - $(if $(CONFIG_PACKAGE_boost-log),,--without-log) \ + $(foreach lib,$(BOOST_LIBS), \ + $(if $(CONFIG_PACKAGE_boost-$(lib)),,--without-$(lib)) \ + ) \ + $(if $(CONFIG_PACKAGE_boost-locale),boost.locale.iconv=on -sICONV_PATH=$(ICONV_PREFIX) boost.locale.posix=$(if $(USE_UCLIBC),on,off), \ + boost.locale.iconv=off) \ \ $(if $(CONFIG_PACKAGE_boost-iostreams),-sNO_BZIP2=1 -sZLIB_INCLUDE=$(STAGING_DIR)/usr/include \ -sZLIB_LIBPATH=$(STAGING_DIR)/usr/lib) \ @@ -335,74 +247,6 @@ define Package/boost/Default/install $(1)/usr/lib/ endef -define Package/boost-atomic/install - $(call Package/boost/Default/install,$(1),atomic) -endef - -define Package/boost-chrono/install - $(call Package/boost/Default/install,$(1),chrono) -endef - -define Package/boost-date_time/install - $(call Package/boost/Default/install,$(1),date_time) -endef - -define Package/boost-exception/install - $(call Package/boost/Default/install,$(1),exception) -endef - -define Package/boost-filesystem/install - $(call Package/boost/Default/install,$(1),filesystem) -endef - -define Package/boost-graph/install - $(call Package/boost/Default/install,$(1),graph) -endef - -define Package/boost-graph_parallel/install - $(call Package/boost/Default/install,$(1),graph_parallel) -endef - -define Package/boost-iostreams/install - $(call Package/boost/Default/install,$(1),iostreams) -endef - -define Package/boost-math/install - $(call Package/boost/Default/install,$(1),math) -endef - -define Package/boost-mpi/install - $(call Package/boost/Default/install,$(1),mpi) -endef - -define Package/boost-program_options/install - $(call Package/boost/Default/install,$(1),program_options) -endef - -define Package/boost-python/install - $(call Package/boost/Default/install,$(1),python) -endef - -define Package/boost-random/install - $(call Package/boost/Default/install,$(1),random) -endef - -define Package/boost-regex/install - $(call Package/boost/Default/install,$(1),regex) -endef - -define Package/boost-serialization/install - $(call Package/boost/Default/install,$(1),serialization) -endef - -define Package/boost-signals/install - $(call Package/boost/Default/install,$(1),signals) -endef - -define Package/boost-system/install - $(call Package/boost/Default/install,$(1),system) -endef - define Package/boost-test/install $(INSTALL_DIR) \ $(1)/usr/lib @@ -416,61 +260,18 @@ define Package/boost-test/install $(1)/usr/lib/ endef -define Package/boost-thread/install - $(call Package/boost/Default/install,$(1),thread) -endef +define BuildBoostLibrary + define Package/boost-$(1)/install + $(call Package/boost/Default/install,$$(1),$(1)) + endef -define Package/boost-timer/install - $(call Package/boost/Default/install,$(1),timer) -endef - -define Package/boost-wave/install - $(call Package/boost/Default/install,$(1),wave) -endef - -define Package/boost-context/install - $(call Package/boost/Default/install,$(1),context) -endef - -define Package/boost-container/install - $(call Package/boost/Default/install,$(1),container) -endef - -define Package/boost-coroutine/install - $(call Package/boost/Default/install,$(1),coroutine) -endef - -define Package/boost-log/install - $(call Package/boost/Default/install,$(1),log) + $$(eval $$(call BuildPackage,boost-$(1))) endef +$(eval $(call HostBuild)) +$(foreach lib,$(BOOST_LIBS),$(eval $(call BuildBoostLibrary,$(lib)))) +$(eval $(call BuildPackage,boost-test)) -$(eval $(call HostBuild)) +$(eval $(call BuildPackage,boost-libs)) $(eval $(call BuildPackage,boost)) -$(eval $(call BuildPackage,boost-atomic)) -$(eval $(call BuildPackage,boost-chrono)) -$(eval $(call BuildPackage,boost-date_time)) -#$(eval $(call BuildPackage,boost-exception)) -$(eval $(call BuildPackage,boost-filesystem)) -$(eval $(call BuildPackage,boost-graph)) -#$(eval $(call BuildPackage,boost-graph_parallel)) -$(eval $(call BuildPackage,boost-iostreams)) -$(eval $(call BuildPackage,boost-locale)) -$(eval $(call BuildPackage,boost-math)) -#$(eval $(call BuildPackage,boost-mpi)) -$(eval $(call BuildPackage,boost-program_options)) -$(eval $(call BuildPackage,boost-random)) -$(eval $(call BuildPackage,boost-python)) -$(eval $(call BuildPackage,boost-regex)) -$(eval $(call BuildPackage,boost-serialization)) -$(eval $(call BuildPackage,boost-signals)) -$(eval $(call BuildPackage,boost-system)) -$(eval $(call BuildPackage,boost-test)) -$(eval $(call BuildPackage,boost-thread)) -$(eval $(call BuildPackage,boost-timer)) -$(eval $(call BuildPackage,boost-wave)) -$(eval $(call BuildPackage,boost-context)) -$(eval $(call BuildPackage,boost-container)) -$(eval $(call BuildPackage,boost-coroutine)) -$(eval $(call BuildPackage,boost-log)) From c48fe5e03084fbb80d06def08de252ce775ede1c Mon Sep 17 00:00:00 2001 From: Marko Ratkaj Date: Mon, 2 Mar 2015 16:52:12 +0100 Subject: [PATCH 031/681] vim: import from old packages Signed-off-by: Marko Ratkaj --- utils/vim/Makefile | 193 ++++++++++++++++++++++++++++ utils/vim/files/vimrc | 11 ++ utils/vim/files/vimrc.full | 28 ++++ utils/vim/patches/001-compile.patch | 41 ++++++ 4 files changed, 273 insertions(+) create mode 100644 utils/vim/Makefile create mode 100644 utils/vim/files/vimrc create mode 100644 utils/vim/files/vimrc.full create mode 100644 utils/vim/patches/001-compile.patch diff --git a/utils/vim/Makefile b/utils/vim/Makefile new file mode 100644 index 000000000..9e4382172 --- /dev/null +++ b/utils/vim/Makefile @@ -0,0 +1,193 @@ +# +# Copyright (C) 2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=vim +PKG_VERSION:=7.4 +PKG_RELEASE:=1 +VIMVER:=74 + +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 +PKG_SOURCE_URL:=ftp://ftp.vim.org/pub/vim/unix/ +PKG_MD5SUM:=607e135c559be642f210094ad023dc65 +PKG_MAINTAINER:=Marko Ratkaj + +PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)$(VIMVER) +PKG_BUILD_PARALLEL:=1 + +include $(INCLUDE_DIR)/package.mk + +define Package/vim/Default + SECTION:=utils + CATEGORY:=Utilities + DEPENDS:=+libncurses + TITLE:=Vi IMproved - enhanced vi editor + URL:=http://www.vim.org/ + SUBMENU:=Editors +endef + +define Package/vim + $(call Package/vim/Default) + TITLE+= (Tiny) +endef + +define Package/vim-full + $(call Package/vim/Default) + TITLE+= (Normal) +endef + +define Package/vim-runtime + $(call Package/vim/Default) + TITLE+= (runtime files) +endef + +define Package/vim-help + $(call Package/vim/Default) + TITLE+= (help files) +endef + +define Package/xxd + SECTION:=utils + CATEGORY:=Utilities + TITLE:=make a hexdump or do the reverse + URL:=http://www.vim.org/ +endef + +define Package/vim-full/conffiles +/usr/share/vim/vimrc +/root/.vimrc +endef + +define Package/vim/conffiles +/usr/share/vim/vimrc +/root/.vimrc +endef + +define Package/vim/description + Vim is an almost compatible version of the UNIX editor Vi. + (Tiny build) +endef + +define Package/vim-full/description + Vim is an almost compatible version of the UNIX editor Vi. + (Normal build) +endef + +define Package/vim-runtime/description + Vim is an almost compatible version of the UNIX editor Vi. + (Runtime files) +endef + +define Package/vim-help/description + Vim is an almost compatible version of the UNIX editor Vi. + (Help files) +endef + +define Package/xxd/description + xxd creates a hex dump of a given file or standard input, it can also convert + a hex dump back to its original binary form. +endef + +CONFIGURE_ARGS += \ + --disable-gui \ + --disable-gtktest \ + --disable-xim \ + --without-x \ + --disable-netbeans \ + --disable-cscope \ + --disable-gpm \ + --with-tlib=ncurses + +CONFIGURE_VARS += \ + vim_cv_getcwd_broken=no \ + vim_cv_memmove_handles_overlap=yes \ + vim_cv_stat_ignores_slash=yes \ + vim_cv_tgetent=zero \ + vim_cv_terminfo=yes \ + vim_cv_toupper_broken=no \ + vim_cv_tty_group=root \ + vim_cv_tty_mode=0620 + +ifneq ($(CONFIG_PACKAGE_vim),) +define Build/Compile/vim + $(call Build/Configure/Default, \ + --with-features=tiny \ + --disable-multibyte \ + ) + +$(MAKE) $(PKG_JOBS) -C $(PKG_BUILD_DIR) \ + DESTDIR="$(PKG_INSTALL_DIR)" all + $(CP) $(PKG_BUILD_DIR)/src/$(PKG_NAME) $(PKG_BUILD_DIR)/vim_tiny +endef +endif + +ifneq ($(CONFIG_PACKAGE_vim-full),) +define Build/Compile/vim-full + $(call Build/Configure/Default, \ + --with-features=normal \ + --enable-multibyte \ + ) + +$(MAKE) $(PKG_JOBS) -C $(PKG_BUILD_DIR) \ + DESTDIR="$(PKG_INSTALL_DIR)" all + $(CP) $(PKG_BUILD_DIR)/src/$(PKG_NAME) $(PKG_BUILD_DIR)/vim_normal +endef +endif + +ifneq ($(CONFIG_PACKAGE_xxd),) +define Build/Compile/xxd + +$(MAKE) $(PKG_JOBS) -C $(PKG_BUILD_DIR) \ + DESTDIR="$(PKG_INSTALL_DIR)" all +endef +endif + +define Build/Compile/vim-runtime + $(MAKE) -C $(PKG_BUILD_DIR)/src DESTDIR="$(PKG_INSTALL_DIR)" installrtbase + (cd $(PKG_INSTALL_DIR) && tar -cf $(PKG_BUILD_DIR)/docs.tar ./usr/share/vim/vim$(VIMVER)/doc) + rm -rf $(PKG_INSTALL_DIR)/usr/share/vim/vim$(VIMVER)/doc + rm -rf $(PKG_INSTALL_DIR)/usr/man +endef + +define Build/Compile +$(call Build/Compile/vim) +$(call Build/Compile/vim-full) +$(call Build/Compile/vim-runtime) +$(call Build/Compile/xxd) +endef + +define Package/vim/install + $(INSTALL_DIR) $(1)/usr/bin + $(INSTALL_BIN) $(PKG_BUILD_DIR)/vim_tiny $(1)/usr/bin/vim + $(INSTALL_DIR) $(1)/usr/share/vim + $(INSTALL_CONF) ./files/vimrc $(1)/usr/share/vim/ +endef + +define Package/vim-full/install + $(INSTALL_DIR) $(1)/usr/bin + $(INSTALL_BIN) $(PKG_BUILD_DIR)/vim_normal $(1)/usr/bin/vim + $(INSTALL_DIR) $(1)/usr/share/vim + $(INSTALL_CONF) ./files/vimrc.full $(1)/usr/share/vim/vimrc +endef + +define Package/vim-runtime/install + $(CP) $(PKG_INSTALL_DIR)/* $(1) + rm -rf $(1)/usr/share/vim/vim$(VIMVER)/doc +endef + +define Package/vim-help/install + tar -C $(1) -xf $(PKG_BUILD_DIR)/docs.tar +endef + +define Package/xxd/install + $(INSTALL_DIR) $(1)/usr/bin + $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/xxd/xxd $(1)/usr/bin +endef + +$(eval $(call BuildPackage,vim)) +$(eval $(call BuildPackage,vim-full)) +$(eval $(call BuildPackage,vim-runtime)) +$(eval $(call BuildPackage,vim-help)) +$(eval $(call BuildPackage,xxd)) diff --git a/utils/vim/files/vimrc b/utils/vim/files/vimrc new file mode 100644 index 000000000..2622b773b --- /dev/null +++ b/utils/vim/files/vimrc @@ -0,0 +1,11 @@ +set showcmd " show (partial) command in status line +set showmatch " show matching brackets +set incsearch " incremental search +set autowrite " automatically save before commands like :next and :make +set nocompatible " use vim defaults instead of 100% vi compatibility +set backspace=indent,eol,start " more powerful backspacing +set autoindent " always set autoindenting on +set linebreak " don't wrap words by default +set textwidth=0 " don't wrap lines by default +set ruler " show the cursor position all the time + diff --git a/utils/vim/files/vimrc.full b/utils/vim/files/vimrc.full new file mode 100644 index 000000000..56305c152 --- /dev/null +++ b/utils/vim/files/vimrc.full @@ -0,0 +1,28 @@ +set showcmd " show (partial) command in status line +set showmatch " show matching brackets +set incsearch " incremental search +set autowrite " automatically save before commands like :next and :make +set nocompatible " use Vim defaults instead of 100% vi compatibility +set backspace=indent,eol,start " more powerful backspacing +set autoindent " always set autoindenting on +set linebreak " don't wrap words by default +set textwidth=0 " don't wrap lines by default +set ruler " show the cursor position all the time + +if filereadable(expand("$VIMRUNTIME/syntax/synload.vim")) + syntax on +endif +if has("syntax") && &term =~ "xterm" + set t_Co=8 + if has("terminfo") + set t_Sf=[3%p1%dm + set t_Sb=[4%p1%dm + else + set t_Sf=[3%dm + set t_Sb=[4%dm + endif +endif + +" Uncomment out for line and/or relative numberig +" set number +" set rnu diff --git a/utils/vim/patches/001-compile.patch b/utils/vim/patches/001-compile.patch new file mode 100644 index 000000000..6740f1a8e --- /dev/null +++ b/utils/vim/patches/001-compile.patch @@ -0,0 +1,41 @@ +--- a/src/auto/configure ++++ b/src/auto/configure +@@ -12294,37 +12294,8 @@ _ACEOF + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking uint32_t is 32 bits" >&5 + $as_echo_n "checking uint32_t is 32 bits... " >&6; } +-if test "$cross_compiling" = yes; then : +- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot check uint32_t when cross-compiling." >&5 +-$as_echo "$as_me: WARNING: cannot check uint32_t when cross-compiling." >&2;} +-else +- cat confdefs.h - <<_ACEOF >conftest.$ac_ext +-/* end confdefs.h. */ +- +-#ifdef HAVE_STDINT_H +-# include +-#endif +-#ifdef HAVE_INTTYPES_H +-# include +-#endif +-main() { +- uint32_t nr1 = (uint32_t)-1; +- uint32_t nr2 = (uint32_t)0xffffffffUL; +- if (sizeof(uint32_t) != 4 || nr1 != 0xffffffffUL || nr2 + 1 != 0) exit(1); +- exit(0); +-} +-_ACEOF +-if ac_fn_c_try_run "$LINENO"; then : +- { $as_echo "$as_me:${as_lineno-$LINENO}: result: ok" >&5 ++{ $as_echo "$as_me:${as_lineno-$LINENO}: result: assuming ok" >&5 + $as_echo "ok" >&6; } +-else +- as_fn_error "WRONG! uint32_t not defined correctly." "$LINENO" 5 +-fi +-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ +- conftest.$ac_objext conftest.beam conftest.$ac_ext +-fi +- +- + + bcopy_test_prog=' + #include "confdefs.h" From c1b4af99c871ac6cae6e15258dd9a26ead451c97 Mon Sep 17 00:00:00 2001 From: Roger Date: Mon, 2 Mar 2015 13:27:35 -0600 Subject: [PATCH 032/681] micropython: update to latest Signed-off-by: Roger D --- lang/micropython/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lang/micropython/Makefile b/lang/micropython/Makefile index c1904567c..1bcc12340 100644 --- a/lang/micropython/Makefile +++ b/lang/micropython/Makefile @@ -8,7 +8,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=micropython -PKG_VERSION=1.3.7-20141209-$(PKG_SOURCE_VERSION) +PKG_VERSION=1.3.10-20150302-$(PKG_SOURCE_VERSION) PKG_RELEASE:=1 PKG_MAINTAINER:=Roger D @@ -17,7 +17,7 @@ PKG_LICENSE_FILES:=LICENSE PKG_SOURCE_PROTO:=git PKG_SOURCE_URL:=https://github.com/micropython/micropython.git -PKG_SOURCE_VERSION:=e6e8ad8ab238cd596a3eedf8f4dd635e2e84f46e +PKG_SOURCE_VERSION:=f2a889564b3a215902622b040a1247af38cb8203 PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) PKG_SOURCE:=$(PKG_SOURCE_SUBDIR).tar.gz From c69cb362d94ad30fb720466bd29664da1b9c3b48 Mon Sep 17 00:00:00 2001 From: Roger Date: Mon, 2 Mar 2015 13:30:16 -0600 Subject: [PATCH 033/681] micropython-lib: update to latest Signed-off-by: Roger D --- lang/micropython-lib/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lang/micropython-lib/Makefile b/lang/micropython-lib/Makefile index b74ad0e08..025ae1712 100644 --- a/lang/micropython-lib/Makefile +++ b/lang/micropython-lib/Makefile @@ -8,7 +8,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=micropython-lib -PKG_VERSION=0.1-20141028-$(PKG_SOURCE_VERSION) +PKG_VERSION=0.1-20150302-$(PKG_SOURCE_VERSION) PKG_RELEASE:=1 PKG_MAINTAINER:=Roger D @@ -17,7 +17,7 @@ PKG_LICENSE_FILES:=LICENSE PKG_SOURCE_PROTO:=git PKG_SOURCE_URL:=https://github.com/micropython/micropython-lib.git -PKG_SOURCE_VERSION:=610aa65ceff9f4b0a60514423f543aa807f49f76 +PKG_SOURCE_VERSION:=654c7d288603f7dae09eb09b57fb67b38c7ac6c3 PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION) PKG_SOURCE:=$(PKG_SOURCE_SUBDIR).tar.gz From 5f1006cb205f37a2027cd23e297fe8b5c9843715 Mon Sep 17 00:00:00 2001 From: Jan Sembera Date: Wed, 25 Feb 2015 22:05:49 +0100 Subject: [PATCH 034/681] aiccu: fix requiretls option handling requiretls is a boolean value in aiccu config that only accepts true and false as values, not "1" or "0" that UCI provides. Signed-off-by: Jan Sembera --- ipv6/aiccu/files/aiccu.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ipv6/aiccu/files/aiccu.sh b/ipv6/aiccu/files/aiccu.sh index 38d8191f5..584574b74 100755 --- a/ipv6/aiccu/files/aiccu.sh +++ b/ipv6/aiccu/files/aiccu.sh @@ -36,7 +36,7 @@ proto_aiccu_setup() { [ -n "$server" ] && echo "server $server" >> "$CFGFILE" [ -n "$protocol" ] && echo "protocol $protocol" >> "$CFGFILE" [ -n "$tunnelid" ] && echo "tunnel_id $tunnelid" >> "$CFGFILE" - [ -n "$requiretls" ] && echo "requiretls $requiretls" >> "$CFGFILE" + [ "$requiretls" == 1 ] && echo "requiretls true" >> "$CFGFILE" [ "$nat" == 1 ] && echo "behindnat true" >> "$CFGFILE" [ "$heartbeat" == 1 ] && echo "makebeats true" >> "$CFGFILE" [ "$verbose" == 1 ] && echo "verbose true" >> "$CFGFILE" From c23be55aa9cb4f040e5a30a1c64c7cdcf13e0068 Mon Sep 17 00:00:00 2001 From: Ted Hess Date: Mon, 2 Mar 2015 16:49:46 -0500 Subject: [PATCH 035/681] libv4l: Update to latest version 1.6.2 Signed-off-by: Ted Hess --- libs/libv4l/Makefile | 25 +++++++++---------------- 1 file changed, 9 insertions(+), 16 deletions(-) diff --git a/libs/libv4l/Makefile b/libs/libv4l/Makefile index 4fb41ed1b..baf3c7d75 100644 --- a/libs/libv4l/Makefile +++ b/libs/libv4l/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2009-2014 OpenWrt.org +# Copyright (C) 2009-2015 OpenWrt.org # Copyright (C) 2009 David Cooper # # This is free software, licensed under the GNU General Public License v2. @@ -9,19 +9,21 @@ include $(TOPDIR)/rules.mk PKG_NAME:=v4l-utils -PKG_VERSION:=1.2.1 -PKG_RELEASE:=2 -PKG_USE_MIPS16:=0 +PKG_VERSION:=1.6.2 +PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 PKG_SOURCE_URL:=http://www.linuxtv.org/downloads/v4l-utils -PKG_MD5SUM:=4cc0fb4ded302ea9e89e5e1b56a7252b +PKG_MD5SUM:=9cb3c178f937954e65bf30920af433ef PKG_MAINTAINER:=Ted Hess PKG_LICENSE:=GPL-2.0 LGPL-2.1 PKG_LICENSE_FILES:=COPYING COPYING.libv4l +PKG_USE_MIPS16:=0 +PKG_INSTALL:=1 + PKG_BUILD_DEPENDS:=argp-standalone include $(INCLUDE_DIR)/uclibc++.mk @@ -73,24 +75,15 @@ define Package/v4l-utils/description This package contains the video4linux utilities. endef -TARGET_CFLAGS += $(FPIC) +TARGET_CFLAGS += $(FPIC) -std=gnu99 TARGET_LDFLAGS += -largp CONFIGURE_ARGS+= \ + --disable-doxygen-doc \ --disable-libdvbv5 \ --disable-qv4l2 \ --without-jpeg \ -define Build/Compile - $(MAKE) -C $(PKG_BUILD_DIR) \ - DESTDIR="$(PKG_INSTALL_DIR)" \ - all install - $(MAKE) -C $(PKG_BUILD_DIR) \ - DESTDIR="$(PKG_INSTALL_DIR)" \ - LINKTYPE="static" \ - all install -endef - define Build/InstallDev $(INSTALL_DIR) $(1)/usr/include $(CP) $(PKG_INSTALL_DIR)/usr/include/*.h $(1)/usr/include/ From 8456832c95a2c59dcca913a1dc7d0258e31f0ca8 Mon Sep 17 00:00:00 2001 From: Maxim Storchak Date: Tue, 3 Mar 2015 00:17:36 +0200 Subject: [PATCH 036/681] attr: update to 20150220 Signed-off-by: Maxim Storchak --- utils/attr/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/utils/attr/Makefile b/utils/attr/Makefile index b32c5e924..80da9ccd4 100644 --- a/utils/attr/Makefile +++ b/utils/attr/Makefile @@ -8,8 +8,8 @@ include $(TOPDIR)/rules.mk PKG_NAME:=attr -PKG_REV:=c4a7fdbcc109d6e8b465a427c714926fcb85c750 -PKG_VERSION:=20141020 +PKG_REV:=c252ef434219891f616d891b46aad6b06efdd185 +PKG_VERSION:=20150220 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz From 2720fe57e504827c735988ba0992b9c163082ce6 Mon Sep 17 00:00:00 2001 From: John Szakmeister Date: Tue, 3 Mar 2015 06:37:18 -0500 Subject: [PATCH 037/681] Upgrade socat to 1.7.3.0. The cross-compiling patch is no longer necessary. Also added librt as a dependency, since it is required. This also fixes an issue where support for linux/errqueue.h was not being detected correctly and causing a build failure with 3.18. Signed-off-by: John Szakmeister --- net/socat/Makefile | 8 +++---- .../010-fix_cross_compiling_error.patch | 22 ------------------- 2 files changed, 4 insertions(+), 26 deletions(-) delete mode 100644 net/socat/patches/010-fix_cross_compiling_error.patch diff --git a/net/socat/Makefile b/net/socat/Makefile index bb3fc7d64..361a4d5cf 100644 --- a/net/socat/Makefile +++ b/net/socat/Makefile @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=socat -PKG_VERSION:=1.7.2.4 -PKG_RELEASE:=2 +PKG_VERSION:=1.7.3.0 +PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 PKG_SOURCE_URL:=http://www.dest-unreach.org/socat/download -PKG_MD5SUM:=69b8155dd442a6f24e28ef5407d868eb +PKG_MD5SUM:=b607edb65bc6c57f4a43f06247504274 PKG_MAINTAINER:= Ted Hess @@ -27,7 +27,7 @@ include $(INCLUDE_DIR)/package.mk define Package/socat SECTION:=net CATEGORY:=Network - DEPENDS:=+libpthread +SOCAT_SSL:libopenssl + DEPENDS:=+libpthread +librt +SOCAT_SSL:libopenssl TITLE:=A multipurpose relay (SOcket CAT) URL:=http://www.dest-unreach.org/socat/ endef diff --git a/net/socat/patches/010-fix_cross_compiling_error.patch b/net/socat/patches/010-fix_cross_compiling_error.patch deleted file mode 100644 index 059938b56..000000000 --- a/net/socat/patches/010-fix_cross_compiling_error.patch +++ /dev/null @@ -1,22 +0,0 @@ ---- a/configure.in -+++ b/configure.in -@@ -41,7 +41,7 @@ AC_CHECK_PROG(AR, ar, ar, gar) - # fail - AC_LANG_COMPILER_REQUIRE() - --if test "$CC" = "gcc"; then -+if test "$GCC" = yes; then - CFLAGS="$CFLAGS -D_GNU_SOURCE -Wall -Wno-parentheses" - ERRONWARN="-Werror -O0" - elif test "$CC" = "clang"; then ---- a/configure -+++ b/configure -@@ -3348,7 +3348,7 @@ fi - - - --if test "$CC" = "gcc"; then -+if test "$GCC" = yes; then - CFLAGS="$CFLAGS -D_GNU_SOURCE -Wall -Wno-parentheses" - ERRONWARN="-Werror -O0" - elif test "$CC" = "clang"; then From a778acd865fc2536bb922a9a7000e9cb0618fa63 Mon Sep 17 00:00:00 2001 From: Denis Shulyaka Date: Tue, 3 Mar 2015 18:11:09 +0300 Subject: [PATCH 038/681] mailman: version upgrade to 2.1.19 Signed-off-by: Denis Shulyaka --- mail/mailman/Makefile | 6 +++--- mail/mailman/patches/100-postfix.patch | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/mail/mailman/Makefile b/mail/mailman/Makefile index 8aadd9ee6..8becbdaa5 100644 --- a/mail/mailman/Makefile +++ b/mail/mailman/Makefile @@ -10,8 +10,8 @@ include $(TOPDIR)/rules.mk PKG_NAME:=mailman PKG_RELEASE:=1 PKG_SOURCE_URL:=ftp://ftp.gnu.org/gnu/mailman/ http://ftp.gnu.org/gnu/mailman/ -PKG_VERSION:=2.1.18-1 -PKG_MD5SUM:=dc861ed9698a98499a951eaef7d4db9f +PKG_VERSION:=2.1.19 +PKG_MD5SUM:=13a33d758f8a6308c91dd267fc3ba123 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tgz PKG_MAINTAINER:=Denis Shulyaka PKG_LICENSE:=GPL-2.0+ @@ -24,7 +24,7 @@ define Package/mailman CATEGORY:=Mail TITLE:=The GNU Mailing List Manager URL:=http://www.gnu.org/software/mailman/ - DEPENDS:=+postfix +python-mini +uhttpd +python-dns #+python-dev + DEPENDS:=+postfix +python +uhttpd +python-dns endef define Package/mailman/description diff --git a/mail/mailman/patches/100-postfix.patch b/mail/mailman/patches/100-postfix.patch index 857b99b73..22fec1eae 100644 --- a/mail/mailman/patches/100-postfix.patch +++ b/mail/mailman/patches/100-postfix.patch @@ -1,7 +1,7 @@ diff -rupN mailman-2.1.14-1/Mailman/Defaults.py.in mailman-2.1.14-1_patched/Mailman/Defaults.py.in --- mailman-2.1.14-1/Mailman/Defaults.py.in 2011-03-01 23:35:57.000000000 +0300 +++ mailman-2.1.14-1_patched/Mailman/Defaults.py.in 2011-03-09 12:26:10.000000000 +0300 -@@ -439,7 +439,7 @@ DELIVERY_MODULE = 'SMTPDirect' +@@ -461,7 +461,7 @@ DELIVERY_MODULE = 'SMTPDirect' # standard out (or send an email to the site list owner) for manual twiddling # of an /etc/aliases style file. Use 'Postfix' if you are using the Postfix # MTA -- but then also see POSTFIX_STYLE_VIRTUAL_DOMAINS. From 5b61cfba076c61cf09783a7f6ef4150e55b74a3f Mon Sep 17 00:00:00 2001 From: Sebastian Moeller Date: Tue, 3 Mar 2015 13:23:53 +0100 Subject: [PATCH 039/681] Teach SQM hotplug tricks Some interfaces like wan-pppoe go away, when the ppp connection is lost and get recreated once the link is established again. SQM now has its own hotplug script to re-enable itself on the interfae just hotplugged. SQM will not touch other instances of itself running on other interfaces if called by hotplug.d. The implementation now allows this functionality by calling run.sh like: /usr/lib/sqm/run.sh interface YOUR_INTERFACE_NAME_HERE e.g.: /usr/lib/sqm/run.sh interface ge00-pppoe If called with a specific interface SQM will only try to disable itself on that interface to clean up all left over state and the re-enable itself on just that interface. Hopefully that allows for better service with instable interfaces like pppoe. The current code passes a simple manual stop start test of the ge00-pppoe interface from the GUI and does seem to do the right thing, at least on cerowrt 3.10.50-1... --- net/sqm-scripts/Makefile | 6 ++-- .../files/etc/hotplug.d/iface/11-sqm | 7 +++++ net/sqm-scripts/files/usr/lib/sqm/run.sh | 30 +++++++++++++++++-- net/sqm-scripts/files/usr/lib/sqm/simple.qos | 3 ++ 4 files changed, 42 insertions(+), 4 deletions(-) create mode 100755 net/sqm-scripts/files/etc/hotplug.d/iface/11-sqm diff --git a/net/sqm-scripts/Makefile b/net/sqm-scripts/Makefile index 298220dfa..25c964bad 100644 --- a/net/sqm-scripts/Makefile +++ b/net/sqm-scripts/Makefile @@ -8,8 +8,8 @@ include $(TOPDIR)/rules.mk PKG_NAME:=sqm-scripts -PKG_VERSION:=7 -PKG_RELEASE:=3 +PKG_VERSION:=8 +PKG_RELEASE:=1 PKG_LICENSE:=GPLv2 PKG_BUILD_DIR := $(BUILD_DIR)/$(PKG_NAME) @@ -46,6 +46,8 @@ endef define Package/sqm-scripts/install $(INSTALL_DIR) $(1)/etc/init.d $(INSTALL_BIN) ./files/etc/init.d/sqm $(1)/etc/init.d/sqm + $(INSTALL_DIR) $(1)/etc/hotplug.d/iface + $(INSTALL_BIN) ./files/etc/hotplug.d/iface/11-sqm $(1)/etc/hotplug.d/iface/11-sqm $(INSTALL_DIR) $(1)/etc/config $(INSTALL_DATA) ./files/etc/config/sqm $(1)/etc/config/sqm $(INSTALL_DIR) $(1)/usr/lib/sqm diff --git a/net/sqm-scripts/files/etc/hotplug.d/iface/11-sqm b/net/sqm-scripts/files/etc/hotplug.d/iface/11-sqm new file mode 100755 index 000000000..9543acd76 --- /dev/null +++ b/net/sqm-scripts/files/etc/hotplug.d/iface/11-sqm @@ -0,0 +1,7 @@ +#!/bin/sh + +# teach SQM to re-enable itself when an interface re-appears +logger -t SQM -s "hotplug on interface: ${DEVICE} action: ${ACTION}" + +[ "$ACTION" = ifup ] && /usr/lib/sqm/run.sh interface ${DEVICE} + diff --git a/net/sqm-scripts/files/usr/lib/sqm/run.sh b/net/sqm-scripts/files/usr/lib/sqm/run.sh index d7b86a220..8995213d7 100755 --- a/net/sqm-scripts/files/usr/lib/sqm/run.sh +++ b/net/sqm-scripts/files/usr/lib/sqm/run.sh @@ -9,16 +9,37 @@ . /lib/functions.sh -STOP=$1 +STOP= ACTIVE_STATE_PREFIX="SQM_active_on_" ACTIVE_STATE_FILE_DIR="/var/run/SQM" mkdir -p ${ACTIVE_STATE_FILE_DIR} +PROTO_STATE_FILE_LIST=$( ls ${ACTIVE_STATE_FILE_DIR}/${ACTIVE_STATE_PREFIX}* 2> /dev/null ) + + +case ${1} in + stop) + logger -t SQM -s "run.sh stop" + STOP=$1 + ;; + interface) + START_ON_IF=$2 # only process this interface + logger -t SQM -s "Re/starting sqm on interface ${START_ON_IF}" + # TODO if $2 is empty just bail... + if [ -z ${START_ON_IF} ] ; + then + logger -t SQM -s "Interface name missing, nothing to do, bailing out" + return 0 + fi + # only try to restart the just hotplugged interface, so reduce the list of interfaces to stop to the specified one + PROTO_STATE_FILE_LIST=${ACTIVE_STATE_FILE_DIR}/${ACTIVE_STATE_PREFIX}${START_ON_IF} + ;; +esac + # the current uci config file does not necessarily contain sections for all interfaces with active # SQM instances, so use the ACTIVE_STATE_FILES to detect the interfaces on which to stop SQM. # Currently the .qos scripts start with stopping any existing traffic shaping so this should not # effectively change anything... -PROTO_STATE_FILE_LIST=$( ls ${ACTIVE_STATE_FILE_DIR}/${ACTIVE_STATE_PREFIX}* 2> /dev/null ) for STATE_FILE in ${PROTO_STATE_FILE_LIST} ; do if [ -f ${STATE_FILE} ] ; then @@ -35,6 +56,11 @@ config_load sqm run_simple_qos() { local section="$1" export IFACE=$(config_get "$section" interface) + + # If called explicitly for one interface only , so ignore anything else + [ -n "${START_ON_IF}" -a "$START_ON_IF" != "$IFACE" ] && return + #logger -t SQM -s "marching on..." + ACTIVE_STATE_FILE_FQN="${ACTIVE_STATE_FILE_DIR}/${ACTIVE_STATE_PREFIX}${IFACE}" # this marks interfaces as active with SQM [ -f "${ACTIVE_STATE_FILE_FQN}" ] && logger -t SQM -s "Uh, oh, ${ACTIVE_STATE_FILE_FQN} should already be stopped." # Not supposed to happen diff --git a/net/sqm-scripts/files/usr/lib/sqm/simple.qos b/net/sqm-scripts/files/usr/lib/sqm/simple.qos index 5df6aa7e2..6e5af4a94 100755 --- a/net/sqm-scripts/files/usr/lib/sqm/simple.qos +++ b/net/sqm-scripts/files/usr/lib/sqm/simple.qos @@ -37,6 +37,9 @@ ipt -t mangle -A QOS_MARK_${IFACE} -m tos --tos Minimize-Delay -j MARK --set-ma # Turn it on. Preserve classification if already performed +#sm: is it correct to do this in $IFACE? Should ingress not be on $DEV? since HTB acts on $DEV? +# SQUASH also does not work on $DEV (that is the IFB will still see the incoming ToS bits whether we squash or not) +# SQUASH is still useful to protect internal machines... if [ "$SQUASH_DSCP" = "1" ] then sqm_logger "Squashing differentiated services code points (DSCP) from ingress." From 487d28d2a838fb1e87ffc8ccefe1eefae895b65e Mon Sep 17 00:00:00 2001 From: Luiz Angelo Daros de Luca Date: Tue, 3 Mar 2015 16:03:33 -0300 Subject: [PATCH 040/681] ruby: update to 2.2.1 For ruby changes since 2.2.0: http://svn.ruby-lang.org/repos/ruby/tags/v2_2_1/ChangeLog No relevant changes for OpenWRT. Signed-off-by: Luiz Angelo Daros de Luca --- lang/ruby/Makefile | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/lang/ruby/Makefile b/lang/ruby/Makefile index 1d419b6b7..97a32f27f 100644 --- a/lang/ruby/Makefile +++ b/lang/ruby/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2006-2014 OpenWrt.org +# Copyright (C) 2006-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -10,14 +10,14 @@ include $(TOPDIR)/rules.mk PKG_NAME:=ruby -PKG_VERSION:=2.2.0 +PKG_VERSION:=2.2.1 PKG_RELEASE:=1 PKG_LIBVER:=2.2 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 PKG_SOURCE_URL:=http://cache.ruby-lang.org/pub/ruby/$(PKG_LIBVER)/ -PKG_MD5SUM:=d03cd4690fec1fff81d096d1c1255fde +PKG_MD5SUM:=06973777736d8e6bdad8dcaa469a9da3 PKG_MAINTAINER:=Luiz Angelo Daros de Luca PKG_LICENSE:=BSD-2-Clause PKG_LICENSE_FILES:=COPYING From 708143b780cab637e47f6d295bedf66d488f9b2e Mon Sep 17 00:00:00 2001 From: Lars Gierth Date: Tue, 3 Mar 2015 22:25:17 +0100 Subject: [PATCH 041/681] dkjson: update PKG_MD5SUM Signed-off-by: Lars Gierth --- lang/dkjson/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lang/dkjson/Makefile b/lang/dkjson/Makefile index 4a6422874..4988dc732 100644 --- a/lang/dkjson/Makefile +++ b/lang/dkjson/Makefile @@ -13,7 +13,7 @@ PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://dkolf.de/src/dkjson-lua.fsl/tarball/ -PKG_MD5SUM:=dbe706722dd64308172cf8e37395e762 +PKG_MD5SUM:=af6b5f3df681e208f1dfb1a724a87e7c PKG_LICENSE:=MIT include $(INCLUDE_DIR)/package.mk From 9f76445fa460c933caed26aa4fcbba942f12bab6 Mon Sep 17 00:00:00 2001 From: Lars Gierth Date: Tue, 3 Mar 2015 22:26:13 +0100 Subject: [PATCH 042/681] dkjson: bump release Signed-off-by: Lars Gierth --- lang/dkjson/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lang/dkjson/Makefile b/lang/dkjson/Makefile index 4988dc732..d69907898 100644 --- a/lang/dkjson/Makefile +++ b/lang/dkjson/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=dkjson PKG_VERSION:=2.5 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://dkolf.de/src/dkjson-lua.fsl/tarball/ From dc2a4e50c85e4266ee5734ff034bfa5922349246 Mon Sep 17 00:00:00 2001 From: Dirk Neukirchen Date: Thu, 19 Feb 2015 18:05:14 +0100 Subject: [PATCH 043/681] gnutls: fix build with librt compile errors in config phase with ArchLinux and Fedora 20 config.log trying to link with -I/usr/lib/librt.so: /usr/lib/librt.so: undefined reference to `gettimeofday@GLIBC_2.2.5' or Fedora20: /usr/lib/librt.so: error adding symbols: File in wrong format linkage is AC_LIB_HAVE_LINKFLAGS macro behaviour see http://marc.info/?l=gnulib-bug&m=129660262901148 Signed-off-by: Dirk Neukirchen --- libs/gnutls/Makefile | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/libs/gnutls/Makefile b/libs/gnutls/Makefile index fed88fa13..4efe5c3a2 100644 --- a/libs/gnutls/Makefile +++ b/libs/gnutls/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=gnutls PKG_VERSION:=3.3.13 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_USE_MIPS16:=0 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz @@ -123,7 +123,8 @@ CONFIGURE_ARGS+= \ --disable-tests \ --disable-rsa-export \ --with-default-trust-store-dir=/etc/ssl/certs/ \ - --disable-crywrap + --disable-crywrap \ + --with-librt-prefix="$(STAGING_DIR)/" ifneq ($(CONFIG_GNUTLS_EXT_LIBTASN1),y) CONFIGURE_ARGS += --with-included-libtasn1 From a76e6de3fff4a31e4d1524beefdc8756afd76db2 Mon Sep 17 00:00:00 2001 From: Dirk Neukirchen Date: Thu, 19 Feb 2015 19:04:57 +0100 Subject: [PATCH 044/681] gnutls: cleanup old code - rpath is not necessary (buildroot does not use it too) - SED of paths in configure does not seem needed (from pre 3.x version) - remove configure section Signed-off-by: Dirk Neukirchen --- libs/gnutls/Makefile | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/libs/gnutls/Makefile b/libs/gnutls/Makefile index 4efe5c3a2..87cb55472 100644 --- a/libs/gnutls/Makefile +++ b/libs/gnutls/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=gnutls PKG_VERSION:=3.3.13 -PKG_RELEASE:=2 +PKG_RELEASE:=3 PKG_USE_MIPS16:=0 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz @@ -114,6 +114,7 @@ endef CONFIGURE_ARGS+= \ --enable-shared \ --enable-static \ + --disable-rpath \ --disable-libdane \ --disable-guile \ --disable-nls \ @@ -175,13 +176,6 @@ CONFIGURE_ARGS += --enable-cryptodev endif TARGET_CFLAGS += $(FPIC) -TARGET_LDFLAGS += -Wl,-rpath-link=$(STAGING_DIR)/usr/lib - -define Build/Configure - $(SED) 's,-I$$$${includedir},,g' $(PKG_BUILD_DIR)/configure - $(SED) 's,-L$$$${libdir},,g' $(PKG_BUILD_DIR)/configure - $(call Build/Configure/Default) -endef define Build/InstallDev $(INSTALL_DIR) $(1)/usr/include $(1)/usr/lib/pkgconfig From 12e57878fe9a8976047cdce22e410402dd9adc1c Mon Sep 17 00:00:00 2001 From: Dirk Neukirchen Date: Thu, 19 Feb 2015 15:07:18 +0100 Subject: [PATCH 045/681] nfs-kernel-server: fix build with libblkid, libuuid config.log reports WARNING: uuid support disabled as libblkid is too old because the test macro AC_BLKID_VERS is not cross compile friendly resulting in libblkid_cv_is_recent=unknown Signed-off-by: Dirk Neukirchen --- net/nfs-kernel-server/Makefile | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/net/nfs-kernel-server/Makefile b/net/nfs-kernel-server/Makefile index 791676a23..fb67bb4ea 100644 --- a/net/nfs-kernel-server/Makefile +++ b/net/nfs-kernel-server/Makefile @@ -8,7 +8,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=nfs-kernel-server PKG_VERSION:=1.3.2 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_MD5SUM:=1e2f3c1ed468dee02d00c534c002ea10 PKG_SOURCE_URL:=@SF/nfs @@ -85,6 +85,7 @@ CONFIGURE_ARGS += \ --disable-nfsdcld CONFIGURE_VARS += \ + libblkid_cv_is_recent=yes \ CONFIG_SQLITE3_TRUE="\#" \ CONFIG_NFSDCLD_TRUE="\#" From 2e723d401983814c169c60506dbc1937d99b48d5 Mon Sep 17 00:00:00 2001 From: Dirk Neukirchen Date: Wed, 4 Mar 2015 21:25:37 +0100 Subject: [PATCH 046/681] ocserv: fix libcrypt location fix build errors on Arch Linux/Fedora 20 config.log trying to link with /usr/lib/libcrypt.so /usr/lib/libcrypt.so: undefined reference to `memset@GLIBC_2.2.5' linkage is AC_LIB_HAVE_LINKFLAGS macro behaviour see http://marc.info/?l=gnulib-bug&m=129660262901148 Signed-off-by: Dirk Neukirchen --- net/ocserv/Makefile | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/net/ocserv/Makefile b/net/ocserv/Makefile index 529071d2c..b38e9b452 100644 --- a/net/ocserv/Makefile +++ b/net/ocserv/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=ocserv PKG_VERSION:=0.9.2 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_BUILD_DIR :=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION) PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz @@ -58,6 +58,7 @@ CONFIGURE_ARGS+= \ --enable-local-libopts \ --with-libreadline-prefix="$(STAGING_DIR)/" \ --without-libnl \ + --with-libcrypt-prefix="$(STAGING_DIR)/" \ ifneq ($(CONFIG_OCSERV_PAM),y) CONFIGURE_ARGS += --without-pam From 5f49225e713ac3528aedc11fc2a78854f3ed5d8e Mon Sep 17 00:00:00 2001 From: Luka Perkov Date: Wed, 4 Mar 2015 14:41:56 +0100 Subject: [PATCH 047/681] libuv: add package Signed-off-by: Luka Perkov --- libs/libuv/Makefile | 73 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 73 insertions(+) create mode 100644 libs/libuv/Makefile diff --git a/libs/libuv/Makefile b/libs/libuv/Makefile new file mode 100644 index 000000000..6452f1af7 --- /dev/null +++ b/libs/libuv/Makefile @@ -0,0 +1,73 @@ +# +# Copyright (C) 2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=libuv +PKG_VERSION:=1.4.2 +PKG_RELEASE:=1 + +PKG_LICENSE_FILES:=LICENSE + +PKG_MAINTAINER:=Luka Perkov + +PKG_SOURCE:=$(PKG_NAME)-v$(PKG_VERSION).tar.gz +PKG_SOURCE_URL:=http://libuv.org/dist/v$(PKG_VERSION)/ +PKG_MD5SUM:=d116fbe695157b799fb8805477e24eff + +PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-v$(PKG_VERSION) +PKG_BUILD_PARALLEL:=1 + +PKG_INSTALL:=1 +PKG_FIXUP:=autoreconf + +include $(INCLUDE_DIR)/package.mk + +define Package/libuv + SECTION:=libs + CATEGORY:=Libraries + TITLE:=Cross-platform asychronous I/O library + URL:=https://github.com/libuv/libuv + DEPENDS:=+libpthread +librt +endef + +define Package/libuv/description + libuv is a multi-platform support library with a focus on asynchronous I/O. It + was primarily developed for use by Node.js, but it's also used by Luvit, Julia, + pyuv, and others. +endef + +define Build/Configure + ( cd $(PKG_BUILD_DIR); ./autogen.sh ) + $(call Build/Configure/Default) +endef + +define Build/InstallDev + $(INSTALL_DIR) $(1)/usr/include/ + $(CP) \ + $(PKG_INSTALL_DIR)/usr/include/* \ + $(1)/usr/include/ + + $(INSTALL_DIR) $(1)/usr/lib + $(CP) \ + $(PKG_INSTALL_DIR)/usr/lib/libuv.so* \ + $(1)/usr/lib/ + + $(INSTALL_DIR) $(1)/usr/lib/pkgconfig + $(CP) \ + $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/libuv.pc \ + $(1)/usr/lib/pkgconfig/ +endef + +define Package/libuv/install + $(INSTALL_DIR) $(1)/usr/lib/ + $(CP) \ + $(PKG_INSTALL_DIR)/usr/lib/libuv.so* \ + $(1)/usr/lib/ +endef + +$(eval $(call BuildPackage,libuv)) From 0b2e43d07b45fb45fe1b8b0dbd89b7a39a985d59 Mon Sep 17 00:00:00 2001 From: Ted Hess Date: Wed, 4 Mar 2015 16:52:02 -0500 Subject: [PATCH 048/681] mailsend: split into 2 packages - with SSL and without SSL Signed-off-by: Ted Hess --- mail/mailsend/Makefile | 39 ++++++++++++++++++++++++++------------- 1 file changed, 26 insertions(+), 13 deletions(-) diff --git a/mail/mailsend/Makefile b/mail/mailsend/Makefile index 5b63bae8c..f9480f152 100644 --- a/mail/mailsend/Makefile +++ b/mail/mailsend/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2014 OpenWrt.org +# Copyright (C) 2014-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=mailsend PKG_VERSION:=1.17b15 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=https://github.com/muquit/mailsend/archive/$(PKG_VERSION) @@ -20,32 +20,42 @@ PKG_MAINTAINER:=Ted Hess PKG_LICENSE:=BSD-3-Clause PKG_LICENSE_FILES:=COPYRIGHT +PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/$(PKG_NAME)-$(PKG_VERSION) + include $(INCLUDE_DIR)/package.mk -define Package/mailsend +define Package/mailsend/default SECTION:=mail CATEGORY:=Mail TITLE:=A command-line mail sender - DEPENDS:=+MAILSEND_SSL:libopenssl URL:=https://github.com/muquit/mailsend endef -define Package/mailsend/config -config MAILSEND_SSL - bool "SSL support" - depends on PACKAGE_mailsend - default n - help - Implements SSL support in mailsend (using libopenssl). +define Package/mailsend-nossl + $(call Package/mailsend/default) + TITLE+= (without SSL) + VARIANT:=nossl +endef + +define Package/mailsend + $(call Package/mailsend/default) + TITLE+= (with SSL) + DEPENDS:=+libopenssl + VARIANT:=ssl endef -ifeq ($(CONFIG_MAILSEND_SSL),y) +ifeq ($(BUILD_VARIANT),ssl) CONFIGURE_ARGS+= --with-openssl=$(STAGING_DIR)/usr endif define Package/mailsend/description + $(call Package/mailsend-nossl/description) + . + SSL supported is provided by OpenSSL. +endef + +define Package/mailsend-nossl/description Mailsend is a simple command line program to send mail via SMTP protocol. - SSL is supported via OpenSSL (optional). endef define Build/Compile @@ -57,4 +67,7 @@ define Package/mailsend/install $(INSTALL_BIN) $(PKG_BUILD_DIR)/mailsend $(1)/usr/bin/ endef +Package/mailsend-nossl/install=$(Package/mailsend/install) + $(eval $(call BuildPackage,mailsend)) +$(eval $(call BuildPackage,mailsend-nossl)) From fd62435cd42ef6ef431109ca3f15b47a50df214a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=81lvaro=20Fern=C3=A1ndez=20Rojas?= Date: Thu, 5 Mar 2015 13:52:38 +0100 Subject: [PATCH 049/681] udpxy: fix build on OS X and clean up Makefile MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Álvaro Fernández Rojas --- net/udpxy/Makefile | 10 +++--- .../patches/0001-fix-build-on-Mac-OS-X.patch | 35 +++++++++++++++++++ 2 files changed, 40 insertions(+), 5 deletions(-) create mode 100644 net/udpxy/patches/0001-fix-build-on-Mac-OS-X.patch diff --git a/net/udpxy/Makefile b/net/udpxy/Makefile index 8fc927645..6eeca1950 100644 --- a/net/udpxy/Makefile +++ b/net/udpxy/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2006-2014 OpenWrt.org +# Copyright (C) 2006-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -8,14 +8,14 @@ include $(TOPDIR)/rules.mk PKG_NAME:=udpxy -PKG_VERSION:=2014-10-27 -PKG_RELEASE:=$(PKG_SOURCE_VERSION) +PKG_SOURCE_VERSION:=c045a1e855a8033c5d70ab3e42271ba5636eb520 +PKG_VERSION:=2014-10-27-$(PKG_SOURCE_VERSION) +PKG_RELEASE:=2 PKG_SOURCE_PROTO:=git PKG_SOURCE_URL:=git://github.com/pcherenkov/udpxy.git PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) -PKG_SOURCE_VERSION:=c045a1e855a8033c5d70ab3e42271ba5636eb520 -PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.gz +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_MAINTAINER:=Álvaro Fernández Rojas PKG_LICENSE:=GPL-3.0 diff --git a/net/udpxy/patches/0001-fix-build-on-Mac-OS-X.patch b/net/udpxy/patches/0001-fix-build-on-Mac-OS-X.patch new file mode 100644 index 000000000..594206ca1 --- /dev/null +++ b/net/udpxy/patches/0001-fix-build-on-Mac-OS-X.patch @@ -0,0 +1,35 @@ +From 26f8177f799f3cf781ed89cb28f771da7ef22421 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?=C3=81lvaro=20Fern=C3=A1ndez=20Rojas?= +Date: Thu, 5 Mar 2015 13:42:09 +0100 +Subject: [PATCH] fix build on Mac OS X +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Signed-off-by: Álvaro Fernández Rojas +--- + chipmunk/Makefile | 5 ++++- + 1 file changed, 4 insertions(+), 1 deletion(-) + +diff --git a/chipmunk/Makefile b/chipmunk/Makefile +index e402128..fd41dbe 100644 +--- a/chipmunk/Makefile ++++ b/chipmunk/Makefile +@@ -32,10 +32,13 @@ DEBUG_ON := -g + ALL_CFLAGS = -W -Wall -Werror --pedantic $(CFLAGS) + + SYSTEM=$(shell uname 2>/dev/null) +-ifneq (,$(filter $(SYSTEM),FreeBSD Darwin)) ++ifneq (,$(filter $(SYSTEM),FreeBSD)) + MAKE := gmake + GZIP := /usr/bin/gzip + endif ++ifneq (,$(filter $(SYSTEM),Darwin)) ++GZIP := /usr/bin/gzip ++endif + + BUILDFILE = BUILD + BUILDNO := `cat $(BUILDFILE)` +-- +2.3.1 + From 1b5afe8f464bae8fa38317548ec95fe303334c0d Mon Sep 17 00:00:00 2001 From: Sebastian Moeller Date: Thu, 5 Mar 2015 10:42:26 +0100 Subject: [PATCH 050/681] sqm-scripts: make run.sh ignore spurious incomplete hotplug ifups During system start up pppoe devices seem to receice ifup events before the interface actually exists. This commit makes sqm's run.sh script test whether the sys files for an interface exist before actually trying to start an SQM instance on an interface. This seems to nicely avoid starting on an not fully established pppoe interface and avoids a number of error messages during startup. In addition, debug logging is disabled. Signed-off-by: Sebastian Moeller --- net/sqm-scripts/Makefile | 2 +- net/sqm-scripts/files/etc/hotplug.d/iface/11-sqm | 4 ---- net/sqm-scripts/files/usr/lib/sqm/run.sh | 10 +++++++++- 3 files changed, 10 insertions(+), 6 deletions(-) diff --git a/net/sqm-scripts/Makefile b/net/sqm-scripts/Makefile index 25c964bad..79112227d 100644 --- a/net/sqm-scripts/Makefile +++ b/net/sqm-scripts/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=sqm-scripts PKG_VERSION:=8 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_LICENSE:=GPLv2 PKG_BUILD_DIR := $(BUILD_DIR)/$(PKG_NAME) diff --git a/net/sqm-scripts/files/etc/hotplug.d/iface/11-sqm b/net/sqm-scripts/files/etc/hotplug.d/iface/11-sqm index 9543acd76..99796021d 100755 --- a/net/sqm-scripts/files/etc/hotplug.d/iface/11-sqm +++ b/net/sqm-scripts/files/etc/hotplug.d/iface/11-sqm @@ -1,7 +1,3 @@ #!/bin/sh -# teach SQM to re-enable itself when an interface re-appears -logger -t SQM -s "hotplug on interface: ${DEVICE} action: ${ACTION}" - [ "$ACTION" = ifup ] && /usr/lib/sqm/run.sh interface ${DEVICE} - diff --git a/net/sqm-scripts/files/usr/lib/sqm/run.sh b/net/sqm-scripts/files/usr/lib/sqm/run.sh index 8995213d7..968292bcd 100755 --- a/net/sqm-scripts/files/usr/lib/sqm/run.sh +++ b/net/sqm-scripts/files/usr/lib/sqm/run.sh @@ -23,7 +23,7 @@ case ${1} in ;; interface) START_ON_IF=$2 # only process this interface - logger -t SQM -s "Re/starting sqm on interface ${START_ON_IF}" + logger -t SQM -s "Trying to re-start SQM on interface ${START_ON_IF}" # TODO if $2 is empty just bail... if [ -z ${START_ON_IF} ] ; then @@ -108,6 +108,14 @@ run_simple_qos() { logger -t SQM -s "${0} SQM qdiscs on ${IFACE} removed" return 0 fi + # in case of spurious hotplug events, try double check whether the interface is really up + if [ ! -d /sys/class/net/${IFACE} ] ; + then + echo "${IFACE} does currently not exist, not even trying to start SQM on nothing." > /dev/kmsg + logger -t SQM -s "${IFACE} does currently not exist, not even trying to start SQM on nothing." + return 0 + fi + logger -t SQM -s "${0} Queue Setup Script: ${SCRIPT}" [ -x "$SCRIPT" ] && { $SCRIPT ; touch ${ACTIVE_STATE_FILE_FQN}; } } From f9fd4f88e5af772bd7a2c8070e2fa16245df2b61 Mon Sep 17 00:00:00 2001 From: Ted Hess Date: Thu, 5 Mar 2015 13:54:51 -0500 Subject: [PATCH 051/681] gst1-libav: Update to 1.4.5 Signed-off-by: Ted Hess --- multimedia/gst1-libav/Makefile | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/multimedia/gst1-libav/Makefile b/multimedia/gst1-libav/Makefile index 81ce237b3..3137e000e 100644 --- a/multimedia/gst1-libav/Makefile +++ b/multimedia/gst1-libav/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2006-2014 OpenWrt.org +# Copyright (C) 2006-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -8,14 +8,14 @@ include $(TOPDIR)/rules.mk PKG_NAME:=gst1-libav -PKG_VERSION:=1.4.4 +PKG_VERSION:=1.4.5 PKG_RELEASE:=1 PKG_MAINTAINER:=W. Michael Petullo PKG_SOURCE:=gst-libav-$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=http://gstreamer.freedesktop.org/src/gst-libav -PKG_MD5SUM:=64a3e2cda2687132cadca4efdc63f3b4 +PKG_MD5SUM:=f4922a46adbcbe7bd01331ff5dc7979d PKG_LICENSE:=GPL-2.0 LGPL-2.0 PKG_LICENSE_FILES:=COPYING COPYING.LIB From ac2d4a6cbe8dd6d09e6377e8e7128dc917771da9 Mon Sep 17 00:00:00 2001 From: Ted Hess Date: Thu, 5 Mar 2015 13:56:56 -0500 Subject: [PATCH 052/681] gstreamer1: Update to 1.4.5, refresh patches Signed-off-by: Ted Hess --- multimedia/gstreamer1/Makefile | 8 +++---- .../gstreamer1/patches/001-no_docs.patch | 16 ++++++------- .../gstreamer1/patches/002-no_tests.patch | 16 ++++++------- .../patches/003-no_translations.patch | 23 ++++++++----------- 4 files changed, 28 insertions(+), 35 deletions(-) diff --git a/multimedia/gstreamer1/Makefile b/multimedia/gstreamer1/Makefile index a73cc1d85..0ab4629fb 100644 --- a/multimedia/gstreamer1/Makefile +++ b/multimedia/gstreamer1/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2008-2014 OpenWrt.org +# Copyright (C) 2008-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -8,8 +8,8 @@ include $(TOPDIR)/rules.mk PKG_NAME:=gstreamer1 -PKG_VERSION:=1.4.4 -PKG_RELEASE:=2 +PKG_VERSION:=1.4.5 +PKG_RELEASE:=1 PKG_MAINTAINER:=W. Michael Petullo @@ -19,7 +19,7 @@ PKG_LICENSE_FILES:=COPYING PKG_BUILD_DIR:=$(BUILD_DIR)/gstreamer-$(PKG_VERSION) PKG_SOURCE:=gstreamer-$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=http://gstreamer.freedesktop.org/src/gstreamer/ -PKG_MD5SUM:=98f4a6d45a28dd195144baef0244ba38 +PKG_MD5SUM:=88a9289c64a4950ebb4f544980234289 PKG_FIXUP:=autoreconf PKG_REMOVE_FILES:=autogen.sh aclocal.m4 diff --git a/multimedia/gstreamer1/patches/001-no_docs.patch b/multimedia/gstreamer1/patches/001-no_docs.patch index 744f1c6ac..fb0e034f1 100644 --- a/multimedia/gstreamer1/patches/001-no_docs.patch +++ b/multimedia/gstreamer1/patches/001-no_docs.patch @@ -1,7 +1,6 @@ -diff -u --recursive gstreamer-1.0.7-vanilla/Makefile.am gstreamer-1.0.7/Makefile.am ---- gstreamer-1.0.7-vanilla/Makefile.am 2013-06-01 18:47:44.498057069 -0500 -+++ gstreamer-1.0.7/Makefile.am 2013-06-01 19:01:41.634143861 -0500 -@@ -8,7 +8,6 @@ +--- a/Makefile.am ++++ b/Makefile.am +@@ -8,7 +8,6 @@ aclocal_DATA = gst-element-check-@GST_AP SUBDIRS = pkgconfig \ gst libs plugins tests \ @@ -9,7 +8,7 @@ diff -u --recursive gstreamer-1.0.7-vanilla/Makefile.am gstreamer-1.0.7/Makefile po \ m4 \ common -@@ -20,7 +19,6 @@ +@@ -20,7 +19,6 @@ endif # These are all the possible subdirs DIST_SUBDIRS = pkgconfig \ gst libs plugins tools tests \ @@ -17,10 +16,9 @@ diff -u --recursive gstreamer-1.0.7-vanilla/Makefile.am gstreamer-1.0.7/Makefile po \ m4 \ common -diff -u --recursive gstreamer-1.0.7-vanilla/Makefile.in gstreamer-1.0.7/Makefile.in ---- gstreamer-1.0.7-vanilla/Makefile.in 2013-06-01 18:47:44.533056863 -0500 -+++ gstreamer-1.0.7/Makefile.in 2013-06-01 19:02:04.529246907 -0500 -@@ -508,13 +508,12 @@ +--- a/Makefile.in ++++ b/Makefile.in +@@ -554,13 +554,12 @@ top_srcdir = @top_srcdir@ DISTCHECK_CONFIGURE_FLAGS = --enable-gtk-doc --enable-docbook aclocaldir = $(datadir)/aclocal aclocal_DATA = gst-element-check-@GST_API_VERSION@.m4 diff --git a/multimedia/gstreamer1/patches/002-no_tests.patch b/multimedia/gstreamer1/patches/002-no_tests.patch index e002becfb..384dd0add 100644 --- a/multimedia/gstreamer1/patches/002-no_tests.patch +++ b/multimedia/gstreamer1/patches/002-no_tests.patch @@ -1,7 +1,6 @@ -diff -u --recursive gstreamer-1.0.7-vanilla/Makefile.am gstreamer-1.0.7/Makefile.am ---- gstreamer-1.0.7-vanilla/Makefile.am 2013-06-01 19:22:31.546496381 -0500 -+++ gstreamer-1.0.7/Makefile.am 2013-06-01 19:20:38.141070908 -0500 -@@ -7,7 +7,7 @@ +--- a/Makefile.am ++++ b/Makefile.am +@@ -7,7 +7,7 @@ aclocaldir = $(datadir)/aclocal aclocal_DATA = gst-element-check-@GST_API_VERSION@.m4 SUBDIRS = pkgconfig \ @@ -10,7 +9,7 @@ diff -u --recursive gstreamer-1.0.7-vanilla/Makefile.am gstreamer-1.0.7/Makefile po \ m4 \ common -@@ -18,7 +18,7 @@ +@@ -18,7 +18,7 @@ endif # These are all the possible subdirs DIST_SUBDIRS = pkgconfig \ @@ -19,10 +18,9 @@ diff -u --recursive gstreamer-1.0.7-vanilla/Makefile.am gstreamer-1.0.7/Makefile po \ m4 \ common -diff -u --recursive gstreamer-1.0.7-vanilla/Makefile.in gstreamer-1.0.7/Makefile.in ---- gstreamer-1.0.7-vanilla/Makefile.in 2013-06-01 19:22:31.547496342 -0500 -+++ gstreamer-1.0.7/Makefile.in 2013-06-01 19:20:48.948632307 -0500 -@@ -508,12 +508,12 @@ +--- a/Makefile.in ++++ b/Makefile.in +@@ -554,12 +554,12 @@ top_srcdir = @top_srcdir@ DISTCHECK_CONFIGURE_FLAGS = --enable-gtk-doc --enable-docbook aclocaldir = $(datadir)/aclocal aclocal_DATA = gst-element-check-@GST_API_VERSION@.m4 diff --git a/multimedia/gstreamer1/patches/003-no_translations.patch b/multimedia/gstreamer1/patches/003-no_translations.patch index e2561993f..7e918dd7e 100644 --- a/multimedia/gstreamer1/patches/003-no_translations.patch +++ b/multimedia/gstreamer1/patches/003-no_translations.patch @@ -1,7 +1,6 @@ -diff -u --recursive gstreamer-1.0.7-vanilla/configure.ac gstreamer-1.0.7/configure.ac ---- gstreamer-1.0.7-vanilla/configure.ac 2013-06-01 18:47:44.506057110 -0500 -+++ gstreamer-1.0.7/configure.ac 2013-06-01 19:24:05.035756124 -0500 -@@ -769,7 +769,6 @@ +--- a/configure.ac ++++ b/configure.ac +@@ -780,7 +780,6 @@ libs/gst/helpers/Makefile libs/gst/net/Makefile plugins/Makefile plugins/elements/Makefile @@ -9,10 +8,9 @@ diff -u --recursive gstreamer-1.0.7-vanilla/configure.ac gstreamer-1.0.7/configu tests/Makefile tests/benchmarks/Makefile tests/check/Makefile -diff -u --recursive gstreamer-1.0.7-vanilla/Makefile.am gstreamer-1.0.7/Makefile.am ---- gstreamer-1.0.7-vanilla/Makefile.am 2013-06-01 19:23:08.361020919 -0500 -+++ gstreamer-1.0.7/Makefile.am 2013-06-01 19:24:15.036357308 -0500 -@@ -8,7 +8,6 @@ +--- a/Makefile.am ++++ b/Makefile.am +@@ -8,7 +8,6 @@ aclocal_DATA = gst-element-check-@GST_AP SUBDIRS = pkgconfig \ gst libs plugins \ @@ -20,7 +18,7 @@ diff -u --recursive gstreamer-1.0.7-vanilla/Makefile.am gstreamer-1.0.7/Makefile m4 \ common -@@ -19,7 +18,6 @@ +@@ -19,7 +18,6 @@ endif # These are all the possible subdirs DIST_SUBDIRS = pkgconfig \ gst libs plugins tools \ @@ -28,10 +26,9 @@ diff -u --recursive gstreamer-1.0.7-vanilla/Makefile.am gstreamer-1.0.7/Makefile m4 \ common -diff -u --recursive gstreamer-1.0.7-vanilla/Makefile.in gstreamer-1.0.7/Makefile.in ---- gstreamer-1.0.7-vanilla/Makefile.in 2013-06-01 19:23:08.362020867 -0500 -+++ gstreamer-1.0.7/Makefile.in 2013-06-01 19:24:27.907844191 -0500 -@@ -508,13 +508,12 @@ +--- a/Makefile.in ++++ b/Makefile.in +@@ -554,13 +554,12 @@ top_srcdir = @top_srcdir@ DISTCHECK_CONFIGURE_FLAGS = --enable-gtk-doc --enable-docbook aclocaldir = $(datadir)/aclocal aclocal_DATA = gst-element-check-@GST_API_VERSION@.m4 From 511fb70f92839c85fbf21394e415306ce8b8fcb1 Mon Sep 17 00:00:00 2001 From: Ted Hess Date: Thu, 5 Mar 2015 13:58:03 -0500 Subject: [PATCH 053/681] gst1-plugins-base: Update to 1.4.5, refresh patches Signed-off-by: Ted Hess --- multimedia/gst1-plugins-base/Makefile | 8 +++--- .../patches/001-no_docs.patch | 14 +++++------ .../patches/002-no_tests.patch | 18 ++++++------- .../patches/003-no_translations.patch | 25 ++++++++----------- 4 files changed, 29 insertions(+), 36 deletions(-) diff --git a/multimedia/gst1-plugins-base/Makefile b/multimedia/gst1-plugins-base/Makefile index 362a4437a..6f7cda5d8 100644 --- a/multimedia/gst1-plugins-base/Makefile +++ b/multimedia/gst1-plugins-base/Makefile @@ -8,8 +8,8 @@ include $(TOPDIR)/rules.mk PKG_NAME:=gst1-plugins-base -PKG_VERSION:=1.4.4 -PKG_RELEASE:=4 +PKG_VERSION:=1.4.5 +PKG_RELEASE:=1 PKG_MAINTAINER:=W. Michael Petullo @@ -19,9 +19,9 @@ PKG_LICENSE_FILES:=COPYING.LIB COPYING PKG_BUILD_DIR:=$(BUILD_DIR)/gst-plugins-base-$(PKG_VERSION) PKG_SOURCE:=gst-plugins-base-$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=http://gstreamer.freedesktop.org/src/gst-plugins-base/ -PKG_MD5SUM:=0c42eca8f9e4efd56d2ce8e9249ce4a1 +PKG_MD5SUM:=357165af625c0ca353ab47c5d843920e -PKG_BUILD_DEPENDS:= libgstreamer1 liboil +PKG_BUILD_DEPENDS:= libgstreamer1 PKG_CONFIG_DEPENDS:= \ CONFIG_PACKAGE_gst1-mod-alsa \ CONFIG_PACKAGE_gst1-mod-app \ diff --git a/multimedia/gst1-plugins-base/patches/001-no_docs.patch b/multimedia/gst1-plugins-base/patches/001-no_docs.patch index 87343b29a..0044ceca8 100644 --- a/multimedia/gst1-plugins-base/patches/001-no_docs.patch +++ b/multimedia/gst1-plugins-base/patches/001-no_docs.patch @@ -1,7 +1,6 @@ -diff -u --recursive gst-plugins-base-1.0.7-vanilla/Makefile.am gst-plugins-base-1.0.7/Makefile.am ---- gst-plugins-base-1.0.7-vanilla/Makefile.am 2013-06-01 22:38:30.495678685 -0500 -+++ gst-plugins-base-1.0.7/Makefile.am 2013-06-01 22:39:04.374335121 -0500 -@@ -12,14 +12,12 @@ +--- a/Makefile.am ++++ b/Makefile.am +@@ -12,14 +12,12 @@ SUBDIRS = \ gst sys $(SUBDIRS_EXT) \ tools \ tests \ @@ -16,10 +15,9 @@ diff -u --recursive gst-plugins-base-1.0.7-vanilla/Makefile.am gst-plugins-base- gst-libs \ gst sys ext \ tools \ -diff -u --recursive gst-plugins-base-1.0.7-vanilla/Makefile.in gst-plugins-base-1.0.7/Makefile.in ---- gst-plugins-base-1.0.7-vanilla/Makefile.in 2013-06-01 22:38:30.527677416 -0500 -+++ gst-plugins-base-1.0.7/Makefile.in 2013-06-01 22:38:59.110543873 -0500 -@@ -493,14 +493,12 @@ +--- a/Makefile.in ++++ b/Makefile.in +@@ -539,14 +539,12 @@ SUBDIRS = \ gst sys $(SUBDIRS_EXT) \ tools \ tests \ diff --git a/multimedia/gst1-plugins-base/patches/002-no_tests.patch b/multimedia/gst1-plugins-base/patches/002-no_tests.patch index 9b4a513cc..3e8c93d41 100644 --- a/multimedia/gst1-plugins-base/patches/002-no_tests.patch +++ b/multimedia/gst1-plugins-base/patches/002-no_tests.patch @@ -1,7 +1,6 @@ -diff -u --recursive gst-plugins-base-1.0.7-vanilla/Makefile.am gst-plugins-base-1.0.7/Makefile.am ---- gst-plugins-base-1.0.7-vanilla/Makefile.am 2013-06-01 19:49:37.986260708 -0500 -+++ gst-plugins-base-1.0.7/Makefile.am 2013-06-01 19:49:54.998590479 -0500 -@@ -11,7 +11,6 @@ +--- a/Makefile.am ++++ b/Makefile.am +@@ -11,7 +11,6 @@ SUBDIRS = \ gst-libs \ gst sys $(SUBDIRS_EXT) \ tools \ @@ -9,7 +8,7 @@ diff -u --recursive gst-plugins-base-1.0.7-vanilla/Makefile.am gst-plugins-base- po \ common \ m4 -@@ -21,7 +20,6 @@ +@@ -21,7 +20,6 @@ DIST_SUBDIRS = \ gst-libs \ gst sys ext \ tools \ @@ -17,10 +16,9 @@ diff -u --recursive gst-plugins-base-1.0.7-vanilla/Makefile.am gst-plugins-base- po \ common \ m4 -diff -u --recursive gst-plugins-base-1.0.7-vanilla/Makefile.in gst-plugins-base-1.0.7/Makefile.in ---- gst-plugins-base-1.0.7-vanilla/Makefile.in 2013-06-01 19:49:37.987260668 -0500 -+++ gst-plugins-base-1.0.7/Makefile.in 2013-06-01 19:49:58.374457466 -0500 -@@ -492,7 +492,6 @@ +--- a/Makefile.in ++++ b/Makefile.in +@@ -538,7 +538,6 @@ SUBDIRS = \ gst-libs \ gst sys $(SUBDIRS_EXT) \ tools \ @@ -28,7 +26,7 @@ diff -u --recursive gst-plugins-base-1.0.7-vanilla/Makefile.in gst-plugins-base- po \ common \ m4 -@@ -502,7 +501,6 @@ +@@ -548,7 +547,6 @@ DIST_SUBDIRS = \ gst-libs \ gst sys ext \ tools \ diff --git a/multimedia/gst1-plugins-base/patches/003-no_translations.patch b/multimedia/gst1-plugins-base/patches/003-no_translations.patch index 581cef508..894c8da9b 100644 --- a/multimedia/gst1-plugins-base/patches/003-no_translations.patch +++ b/multimedia/gst1-plugins-base/patches/003-no_translations.patch @@ -1,7 +1,6 @@ -diff -u --recursive gst-plugins-base-1.0.7-vanilla/configure.ac gst-plugins-base-1.0.7/configure.ac ---- gst-plugins-base-1.0.7-vanilla/configure.ac 2013-06-01 19:48:21.931257133 -0500 -+++ gst-plugins-base-1.0.7/configure.ac 2013-06-01 19:51:30.371829534 -0500 -@@ -923,7 +923,6 @@ +--- a/configure.ac ++++ b/configure.ac +@@ -918,7 +918,6 @@ docs/design/Makefile docs/libs/Makefile docs/plugins/Makefile docs/version.entities @@ -9,10 +8,9 @@ diff -u --recursive gst-plugins-base-1.0.7-vanilla/configure.ac gst-plugins-base common/Makefile common/m4/Makefile m4/Makefile -diff -u --recursive gst-plugins-base-1.0.7-vanilla/Makefile.am gst-plugins-base-1.0.7/Makefile.am ---- gst-plugins-base-1.0.7-vanilla/Makefile.am 2013-06-01 19:50:30.232202309 -0500 -+++ gst-plugins-base-1.0.7/Makefile.am 2013-06-01 19:50:58.973069965 -0500 -@@ -11,7 +11,6 @@ +--- a/Makefile.am ++++ b/Makefile.am +@@ -11,7 +11,6 @@ SUBDIRS = \ gst-libs \ gst sys $(SUBDIRS_EXT) \ tools \ @@ -20,7 +18,7 @@ diff -u --recursive gst-plugins-base-1.0.7-vanilla/Makefile.am gst-plugins-base- common \ m4 -@@ -20,7 +19,6 @@ +@@ -20,7 +19,6 @@ DIST_SUBDIRS = \ gst-libs \ gst sys ext \ tools \ @@ -28,10 +26,9 @@ diff -u --recursive gst-plugins-base-1.0.7-vanilla/Makefile.am gst-plugins-base- common \ m4 -diff -u --recursive gst-plugins-base-1.0.7-vanilla/Makefile.in gst-plugins-base-1.0.7/Makefile.in ---- gst-plugins-base-1.0.7-vanilla/Makefile.in 2013-06-01 19:50:30.233202273 -0500 -+++ gst-plugins-base-1.0.7/Makefile.in 2013-06-01 19:51:22.796130711 -0500 -@@ -492,7 +492,6 @@ +--- a/Makefile.in ++++ b/Makefile.in +@@ -538,7 +538,6 @@ SUBDIRS = \ gst-libs \ gst sys $(SUBDIRS_EXT) \ tools \ @@ -39,7 +36,7 @@ diff -u --recursive gst-plugins-base-1.0.7-vanilla/Makefile.in gst-plugins-base- common \ m4 -@@ -501,7 +500,6 @@ +@@ -547,7 +546,6 @@ DIST_SUBDIRS = \ gst-libs \ gst sys ext \ tools \ From e8a8f20d3182e11e273bb8c025a019af57ca48cf Mon Sep 17 00:00:00 2001 From: Ted Hess Date: Thu, 5 Mar 2015 13:59:19 -0500 Subject: [PATCH 054/681] gst1-plugins-bad: Update to 1.4.5, fix build deps, refresh patches Signed-off-by: Ted Hess --- multimedia/gst1-plugins-bad/Makefile | 10 ++++---- .../patches/000-gettext.patch | 23 ++++++++----------- 2 files changed, 16 insertions(+), 17 deletions(-) diff --git a/multimedia/gst1-plugins-bad/Makefile b/multimedia/gst1-plugins-bad/Makefile index 7ee774a95..f4e8120ce 100644 --- a/multimedia/gst1-plugins-bad/Makefile +++ b/multimedia/gst1-plugins-bad/Makefile @@ -8,8 +8,8 @@ include $(TOPDIR)/rules.mk PKG_NAME:=gst1-plugins-bad -PKG_VERSION:=1.4.4 -PKG_RELEASE:=5 +PKG_VERSION:=1.4.5 +PKG_RELEASE:=1 PKG_MAINTAINER:=W. Michael Petullo @@ -19,9 +19,9 @@ PKG_LICENSE_FILES:=COPYING.LIB COPYING PKG_BUILD_DIR:=$(BUILD_DIR)/gst-plugins-bad-$(PKG_VERSION) PKG_SOURCE:=gst-plugins-bad-$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=http://gstreamer.freedesktop.org/src/gst-plugins-bad/ -PKG_MD5SUM:=972c6e22dd2e44fcf0b04b9d810a56be +PKG_MD5SUM:=e0bb39412cf4a48fe0397bcf3a7cd451 -PKG_BUILD_DEPENDS:= libgstreamer1 gstreamer1-plugins-base liboil +PKG_BUILD_DEPENDS:= libgstreamer1 gstreamer1-plugins-base PKG_FIXUP:=autoreconf PKG_INSTALL:=1 @@ -148,9 +148,11 @@ CONFIGURE_ARGS += \ --disable-schro \ --disable-zbar \ --disable-srtp \ + --disable-hls \ \ --without-libiconv-prefix \ --without-libintl-prefix \ + --with-libgcrypt-prefix="$(STAGING_DIR)/usr" \ --without-x \ TARGET_CFLAGS+= -std=gnu99 diff --git a/multimedia/gst1-plugins-bad/patches/000-gettext.patch b/multimedia/gst1-plugins-bad/patches/000-gettext.patch index 12b433383..1c0d88e1e 100644 --- a/multimedia/gst1-plugins-bad/patches/000-gettext.patch +++ b/multimedia/gst1-plugins-bad/patches/000-gettext.patch @@ -1,18 +1,16 @@ -diff -u --recursive gst-plugins-bad-1.0.7-vanilla/configure.ac gst-plugins-bad-1.0.7/configure.ac ---- gst-plugins-bad-1.0.7-vanilla/configure.ac 2013-06-01 19:44:32.199308073 -0500 -+++ gst-plugins-bad-1.0.7/configure.ac 2013-06-01 19:45:27.754119344 -0500 -@@ -2373,7 +2373,6 @@ - ext/timidity/Makefile +--- a/configure.ac ++++ b/configure.ac +@@ -3334,7 +3334,6 @@ ext/timidity/Makefile + ext/webp/Makefile ext/xvid/Makefile ext/zbar/Makefile -po/Makefile.in docs/Makefile docs/plugins/Makefile docs/libs/Makefile -diff -u --recursive gst-plugins-bad-1.0.7-vanilla/Makefile.am gst-plugins-bad-1.0.7/Makefile.am ---- gst-plugins-bad-1.0.7-vanilla/Makefile.am 2013-06-01 19:44:32.165309412 -0500 -+++ gst-plugins-bad-1.0.7/Makefile.am 2013-06-01 19:45:39.016675625 -0500 -@@ -2,11 +2,11 @@ +--- a/Makefile.am ++++ b/Makefile.am +@@ -2,11 +2,11 @@ DISTCHECK_CONFIGURE_FLAGS=--enable-gtk-d SUBDIRS = \ gst-libs gst sys ext pkgconfig \ @@ -26,10 +24,9 @@ diff -u --recursive gst-plugins-bad-1.0.7-vanilla/Makefile.am gst-plugins-bad-1. # include before EXTRA_DIST for win32 assignment include $(top_srcdir)/common/win32.mak -diff -u --recursive gst-plugins-bad-1.0.7-vanilla/Makefile.in gst-plugins-bad-1.0.7/Makefile.in ---- gst-plugins-bad-1.0.7-vanilla/Makefile.in 2013-06-01 19:44:32.217307364 -0500 -+++ gst-plugins-bad-1.0.7/Makefile.in 2013-06-01 19:45:44.624454691 -0500 -@@ -636,11 +636,11 @@ +--- a/Makefile.in ++++ b/Makefile.in +@@ -739,11 +739,11 @@ wayland_scanner = @wayland_scanner@ DISTCHECK_CONFIGURE_FLAGS = --enable-gtk-doc SUBDIRS = \ gst-libs gst sys ext pkgconfig \ From 44bece99a8dbd5a0579f9becb4c3d439aca361c7 Mon Sep 17 00:00:00 2001 From: Ted Hess Date: Thu, 5 Mar 2015 14:02:26 -0500 Subject: [PATCH 055/681] gst1-plugins-good: Update to 1.4.5, refresh patches Signed-off-by: Ted Hess --- multimedia/gst1-plugins-good/Makefile | 8 +++---- .../patches/001-no_docs.patch | 14 ++++++------- .../patches/002-no_tests.patch | 14 ++++++------- .../patches/003-no_translations.patch | 21 ++++++++----------- 4 files changed, 25 insertions(+), 32 deletions(-) diff --git a/multimedia/gst1-plugins-good/Makefile b/multimedia/gst1-plugins-good/Makefile index bffabb314..f5965e493 100644 --- a/multimedia/gst1-plugins-good/Makefile +++ b/multimedia/gst1-plugins-good/Makefile @@ -8,8 +8,8 @@ include $(TOPDIR)/rules.mk PKG_NAME:=gst1-plugins-good -PKG_VERSION:=1.4.4 -PKG_RELEASE:=2 +PKG_VERSION:=1.4.5 +PKG_RELEASE:=1 PKG_MAINTAINER:=W. Michael Petullo @@ -19,9 +19,9 @@ PKG_LICENSE_FILES:=COPYING PKG_BUILD_DIR:=$(BUILD_DIR)/gst-plugins-good-$(PKG_VERSION) PKG_SOURCE:=gst-plugins-good-$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=http://gstreamer.freedesktop.org/src/gst-plugins-good/ -PKG_MD5SUM:=673cf9276952bd3937dafd817c9ead2b +PKG_MD5SUM:=eaf1a6daf73749bc423feac301d60038 -PKG_BUILD_DEPENDS:= libgstreamer1 gstreamer1-plugins-base liboil +PKG_BUILD_DEPENDS:= libgstreamer1 gstreamer1-plugins-base PKG_FIXUP:=autoreconf PKG_INSTALL:=1 diff --git a/multimedia/gst1-plugins-good/patches/001-no_docs.patch b/multimedia/gst1-plugins-good/patches/001-no_docs.patch index 9257931b8..21c10c3b9 100644 --- a/multimedia/gst1-plugins-good/patches/001-no_docs.patch +++ b/multimedia/gst1-plugins-good/patches/001-no_docs.patch @@ -1,7 +1,6 @@ -diff -u --recursive gst-plugins-good-1.0.7-vanilla/Makefile.am gst-plugins-good-1.0.7/Makefile.am ---- gst-plugins-good-1.0.7-vanilla/Makefile.am 2013-06-01 19:54:57.652601127 -0500 -+++ gst-plugins-good-1.0.7/Makefile.am 2013-06-01 19:55:15.281902215 -0500 -@@ -3,7 +3,6 @@ +--- a/Makefile.am ++++ b/Makefile.am +@@ -3,7 +3,6 @@ DISTCHECK_CONFIGURE_FLAGS=--enable-gtk-d ALWAYS_SUBDIRS = \ gst sys ext \ tests \ @@ -9,10 +8,9 @@ diff -u --recursive gst-plugins-good-1.0.7-vanilla/Makefile.am gst-plugins-good- po \ common \ m4 \ -diff -u --recursive gst-plugins-good-1.0.7-vanilla/Makefile.in gst-plugins-good-1.0.7/Makefile.in ---- gst-plugins-good-1.0.7-vanilla/Makefile.in 2013-06-01 19:54:57.692599541 -0500 -+++ gst-plugins-good-1.0.7/Makefile.in 2013-06-01 19:55:23.025595255 -0500 -@@ -523,7 +523,6 @@ +--- a/Makefile.in ++++ b/Makefile.in +@@ -571,7 +571,6 @@ DISTCHECK_CONFIGURE_FLAGS = --enable-gtk ALWAYS_SUBDIRS = \ gst sys ext \ tests \ diff --git a/multimedia/gst1-plugins-good/patches/002-no_tests.patch b/multimedia/gst1-plugins-good/patches/002-no_tests.patch index 7b862d670..ed922c531 100644 --- a/multimedia/gst1-plugins-good/patches/002-no_tests.patch +++ b/multimedia/gst1-plugins-good/patches/002-no_tests.patch @@ -1,7 +1,6 @@ -diff -u --recursive gst-plugins-good-1.0.7-vanilla/Makefile.am gst-plugins-good-1.0.7/Makefile.am ---- gst-plugins-good-1.0.7-vanilla/Makefile.am 2013-06-01 19:56:00.995090476 -0500 -+++ gst-plugins-good-1.0.7/Makefile.am 2013-06-01 19:56:12.911618318 -0500 -@@ -2,7 +2,6 @@ +--- a/Makefile.am ++++ b/Makefile.am +@@ -2,7 +2,6 @@ DISTCHECK_CONFIGURE_FLAGS=--enable-gtk-d ALWAYS_SUBDIRS = \ gst sys ext \ @@ -9,10 +8,9 @@ diff -u --recursive gst-plugins-good-1.0.7-vanilla/Makefile.am gst-plugins-good- po \ common \ m4 \ -diff -u --recursive gst-plugins-good-1.0.7-vanilla/Makefile.in gst-plugins-good-1.0.7/Makefile.in ---- gst-plugins-good-1.0.7-vanilla/Makefile.in 2013-06-01 19:56:00.995090476 -0500 -+++ gst-plugins-good-1.0.7/Makefile.in 2013-06-01 19:56:16.655469989 -0500 -@@ -522,7 +522,6 @@ +--- a/Makefile.in ++++ b/Makefile.in +@@ -570,7 +570,6 @@ top_srcdir = @top_srcdir@ DISTCHECK_CONFIGURE_FLAGS = --enable-gtk-doc ALWAYS_SUBDIRS = \ gst sys ext \ diff --git a/multimedia/gst1-plugins-good/patches/003-no_translations.patch b/multimedia/gst1-plugins-good/patches/003-no_translations.patch index 84e311408..16d1b7e07 100644 --- a/multimedia/gst1-plugins-good/patches/003-no_translations.patch +++ b/multimedia/gst1-plugins-good/patches/003-no_translations.patch @@ -1,7 +1,6 @@ -diff -u --recursive gst-plugins-good-1.0.7-vanilla/configure.ac gst-plugins-good-1.0.7/configure.ac ---- gst-plugins-good-1.0.7-vanilla/configure.ac 2013-06-01 19:56:23.004218467 -0500 -+++ gst-plugins-good-1.0.7/configure.ac 2013-06-01 19:56:52.919033496 -0500 -@@ -1157,7 +1157,6 @@ +--- a/configure.ac ++++ b/configure.ac +@@ -1083,7 +1083,6 @@ sys/sunaudio/Makefile sys/v4l2/Makefile sys/waveform/Makefile sys/ximage/Makefile @@ -9,10 +8,9 @@ diff -u --recursive gst-plugins-good-1.0.7-vanilla/configure.ac gst-plugins-good tests/Makefile tests/check/Makefile tests/examples/Makefile -diff -u --recursive gst-plugins-good-1.0.7-vanilla/Makefile.am gst-plugins-good-1.0.7/Makefile.am ---- gst-plugins-good-1.0.7-vanilla/Makefile.am 2013-06-01 19:56:23.043216922 -0500 -+++ gst-plugins-good-1.0.7/Makefile.am 2013-06-01 19:56:43.671399777 -0500 -@@ -2,7 +2,6 @@ +--- a/Makefile.am ++++ b/Makefile.am +@@ -2,7 +2,6 @@ DISTCHECK_CONFIGURE_FLAGS=--enable-gtk-d ALWAYS_SUBDIRS = \ gst sys ext \ @@ -20,10 +18,9 @@ diff -u --recursive gst-plugins-good-1.0.7-vanilla/Makefile.am gst-plugins-good- common \ m4 \ pkgconfig -diff -u --recursive gst-plugins-good-1.0.7-vanilla/Makefile.in gst-plugins-good-1.0.7/Makefile.in ---- gst-plugins-good-1.0.7-vanilla/Makefile.in 2013-06-01 19:56:23.043216922 -0500 -+++ gst-plugins-good-1.0.7/Makefile.in 2013-06-01 19:56:47.703240080 -0500 -@@ -522,7 +522,6 @@ +--- a/Makefile.in ++++ b/Makefile.in +@@ -570,7 +570,6 @@ top_srcdir = @top_srcdir@ DISTCHECK_CONFIGURE_FLAGS = --enable-gtk-doc ALWAYS_SUBDIRS = \ gst sys ext \ From 62530699231ff173f84d57663e5abc02d876dfeb Mon Sep 17 00:00:00 2001 From: Ted Hess Date: Thu, 5 Mar 2015 14:04:21 -0500 Subject: [PATCH 056/681] gst1-plugins-ugly: Update to 1.4.5, refresh patches Signed-off-by: Ted Hess --- multimedia/gst1-plugins-ugly/Makefile | 8 ++++---- .../patches/001-no_docs.patch | 12 +++++------- .../patches/002-no_tests.patch | 12 +++++------- .../patches/003-no_translations.patch | 19 ++++++++----------- 4 files changed, 22 insertions(+), 29 deletions(-) diff --git a/multimedia/gst1-plugins-ugly/Makefile b/multimedia/gst1-plugins-ugly/Makefile index b8ed67080..26c7995aa 100644 --- a/multimedia/gst1-plugins-ugly/Makefile +++ b/multimedia/gst1-plugins-ugly/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2009-2014 OpenWrt.org +# Copyright (C) 2009-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -8,7 +8,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=gst1-plugins-ugly -PKG_VERSION:=1.4.4 +PKG_VERSION:=1.4.5 PKG_RELEASE:=1 PKG_MAINTAINER:=W. Michael Petullo @@ -19,9 +19,9 @@ PKG_LICENSE_FILES:=COPYING PKG_BUILD_DIR:=$(BUILD_DIR)/gst-plugins-ugly-$(PKG_VERSION) PKG_SOURCE:=gst-plugins-ugly-$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=http://gstreamer.freedesktop.org/src/gst-plugins-ugly/ -PKG_MD5SUM:=abd832c5cab1a37fb1d9d15fb08e6e59 +PKG_MD5SUM:=6954beed7bb9a93e426dee543ff46393 -PKG_BUILD_DEPENDS:= libgstreamer1 gstreamer1-plugins-base liboil +PKG_BUILD_DEPENDS:= libgstreamer1 gstreamer1-plugins-base PKG_CONFIG_DEPENDS:= \ CONFIG_PACKAGE_gst1-mod-asf \ CONFIG_PACKAGE_gst1-mod-lame \ diff --git a/multimedia/gst1-plugins-ugly/patches/001-no_docs.patch b/multimedia/gst1-plugins-ugly/patches/001-no_docs.patch index 5d99fd496..72c880a90 100644 --- a/multimedia/gst1-plugins-ugly/patches/001-no_docs.patch +++ b/multimedia/gst1-plugins-ugly/patches/001-no_docs.patch @@ -1,6 +1,5 @@ -diff -u --recursive gst-plugins-ugly-1.0.7-vanilla/Makefile.am gst-plugins-ugly-1.0.7/Makefile.am ---- gst-plugins-ugly-1.0.7-vanilla/Makefile.am 2013-06-01 19:58:12.400886469 -0500 -+++ gst-plugins-ugly-1.0.7/Makefile.am 2013-06-01 19:58:33.306059047 -0500 +--- a/Makefile.am ++++ b/Makefile.am @@ -1,7 +1,7 @@ DISTCHECK_CONFIGURE_FLAGS=--enable-gtk-doc @@ -10,10 +9,9 @@ diff -u --recursive gst-plugins-ugly-1.0.7-vanilla/Makefile.am gst-plugins-ugly- # include before EXTRA_DIST for win32 assignment include $(top_srcdir)/common/win32.mak -diff -u --recursive gst-plugins-ugly-1.0.7-vanilla/Makefile.in gst-plugins-ugly-1.0.7/Makefile.in ---- gst-plugins-ugly-1.0.7-vanilla/Makefile.in 2013-06-01 19:58:12.412885994 -0500 -+++ gst-plugins-ugly-1.0.7/Makefile.in 2013-06-01 19:58:39.810801615 -0500 -@@ -453,7 +453,7 @@ +--- a/Makefile.in ++++ b/Makefile.in +@@ -502,7 +502,7 @@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ DISTCHECK_CONFIGURE_FLAGS = --enable-gtk-doc SUBDIRS = \ diff --git a/multimedia/gst1-plugins-ugly/patches/002-no_tests.patch b/multimedia/gst1-plugins-ugly/patches/002-no_tests.patch index 1f23bf96c..1611671f0 100644 --- a/multimedia/gst1-plugins-ugly/patches/002-no_tests.patch +++ b/multimedia/gst1-plugins-ugly/patches/002-no_tests.patch @@ -1,6 +1,5 @@ -diff -u --recursive gst-plugins-ugly-1.0.7-vanilla/Makefile.am gst-plugins-ugly-1.0.7/Makefile.am ---- gst-plugins-ugly-1.0.7-vanilla/Makefile.am 2013-06-01 19:59:16.988330482 -0500 -+++ gst-plugins-ugly-1.0.7/Makefile.am 2013-06-01 19:59:28.455876771 -0500 +--- a/Makefile.am ++++ b/Makefile.am @@ -1,7 +1,7 @@ DISTCHECK_CONFIGURE_FLAGS=--enable-gtk-doc @@ -10,10 +9,9 @@ diff -u --recursive gst-plugins-ugly-1.0.7-vanilla/Makefile.am gst-plugins-ugly- # include before EXTRA_DIST for win32 assignment include $(top_srcdir)/common/win32.mak -diff -u --recursive gst-plugins-ugly-1.0.7-vanilla/Makefile.in gst-plugins-ugly-1.0.7/Makefile.in ---- gst-plugins-ugly-1.0.7-vanilla/Makefile.in 2013-06-01 19:59:16.988330482 -0500 -+++ gst-plugins-ugly-1.0.7/Makefile.in 2013-06-01 19:59:39.840426385 -0500 -@@ -453,7 +453,7 @@ +--- a/Makefile.in ++++ b/Makefile.in +@@ -502,7 +502,7 @@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ DISTCHECK_CONFIGURE_FLAGS = --enable-gtk-doc SUBDIRS = \ diff --git a/multimedia/gst1-plugins-ugly/patches/003-no_translations.patch b/multimedia/gst1-plugins-ugly/patches/003-no_translations.patch index 3adfea835..bd617713d 100644 --- a/multimedia/gst1-plugins-ugly/patches/003-no_translations.patch +++ b/multimedia/gst1-plugins-ugly/patches/003-no_translations.patch @@ -1,7 +1,6 @@ -diff -u --recursive gst-plugins-ugly-1.0.7-vanilla/configure.ac gst-plugins-ugly-1.0.7/configure.ac ---- gst-plugins-ugly-1.0.7-vanilla/configure.ac 2013-06-01 19:59:46.199174835 -0500 -+++ gst-plugins-ugly-1.0.7/configure.ac 2013-06-01 20:00:29.709453831 -0500 -@@ -479,7 +479,6 @@ +--- a/configure.ac ++++ b/configure.ac +@@ -475,7 +475,6 @@ docs/version.entities tests/Makefile tests/check/Makefile m4/Makefile @@ -9,9 +8,8 @@ diff -u --recursive gst-plugins-ugly-1.0.7-vanilla/configure.ac gst-plugins-ugly pkgconfig/Makefile pkgconfig/gstreamer-plugins-ugly-uninstalled.pc gst-plugins-ugly.spec -diff -u --recursive gst-plugins-ugly-1.0.7-vanilla/Makefile.am gst-plugins-ugly-1.0.7/Makefile.am ---- gst-plugins-ugly-1.0.7-vanilla/Makefile.am 2013-06-01 19:59:46.210174399 -0500 -+++ gst-plugins-ugly-1.0.7/Makefile.am 2013-06-01 20:00:11.351179921 -0500 +--- a/Makefile.am ++++ b/Makefile.am @@ -1,7 +1,7 @@ DISTCHECK_CONFIGURE_FLAGS=--enable-gtk-doc @@ -21,10 +19,9 @@ diff -u --recursive gst-plugins-ugly-1.0.7-vanilla/Makefile.am gst-plugins-ugly- # include before EXTRA_DIST for win32 assignment include $(top_srcdir)/common/win32.mak -diff -u --recursive gst-plugins-ugly-1.0.7-vanilla/Makefile.in gst-plugins-ugly-1.0.7/Makefile.in ---- gst-plugins-ugly-1.0.7-vanilla/Makefile.in 2013-06-01 19:59:46.210174399 -0500 -+++ gst-plugins-ugly-1.0.7/Makefile.in 2013-06-01 20:00:20.222829049 -0500 -@@ -453,7 +453,7 @@ +--- a/Makefile.in ++++ b/Makefile.in +@@ -502,7 +502,7 @@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ DISTCHECK_CONFIGURE_FLAGS = --enable-gtk-doc SUBDIRS = \ From fb36bf7286d8e814594c63f2c5c0b4131a459e32 Mon Sep 17 00:00:00 2001 From: Jeff Waugh Date: Fri, 6 Mar 2015 07:38:32 +1100 Subject: [PATCH 057/681] kmod: Update to kmod 20, enable parallel build Signed-off-by: Jeff Waugh --- utils/kmod/Makefile | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/utils/kmod/Makefile b/utils/kmod/Makefile index e59c0315f..a1cc59f63 100644 --- a/utils/kmod/Makefile +++ b/utils/kmod/Makefile @@ -8,16 +8,17 @@ include $(TOPDIR)/rules.mk PKG_NAME:=kmod -PKG_VERSION:=19 +PKG_VERSION:=20 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=https://www.kernel.org/pub/linux/utils/kernel/kmod/ -PKG_MD5SUM:=a08643f814aa4efc12211c6e5909f4d9 +PKG_MD5SUM:=d6f4fef718a50bd88080de6a43bc64d8 PKG_MAINTAINER:=Jeff Waugh PKG_LICENSE:=LGPL-2.1+ PKG_LICENSE_FILES:=COPYING +PKG_BUILD_PARALLEL:=1 PKG_INSTALL:=1 include $(INCLUDE_DIR)/package.mk From 8d6b503b4a2eed90cab13c76f5a5a738c47f3a80 Mon Sep 17 00:00:00 2001 From: Alexandru Ardelean Date: Fri, 6 Mar 2015 11:11:18 +0200 Subject: [PATCH 058/681] python: re-number patches Signed-off-by: Alexandru Ardelean --- .../patches/{110-enable-zlib.patch => 001-enable-zlib.patch} | 0 ...tch => 002-do-not-add-include-dirs-when-cross-compiling.patch} | 0 ...sts-at-build.patch => 003-do-not-compile-tests-at-build.patch} | 0 ...write-bytes-codes.patch => 004-do-not-write-bytes-codes.patch} | 0 ...6-64-configure.patch => 005-fix-libffi-x86-64-configure.patch} | 0 ...ch-support.patch => 006-remove-debian-multiarch-support.patch} | 0 ...t-adjust-path.patch => 007-distutils-do-not-adjust-path.patch} | 0 7 files changed, 0 insertions(+), 0 deletions(-) rename lang/python/patches/{110-enable-zlib.patch => 001-enable-zlib.patch} (100%) rename lang/python/patches/{120-do-not-add-include-dirs-when-cross-compiling.patch => 002-do-not-add-include-dirs-when-cross-compiling.patch} (100%) rename lang/python/patches/{130-do-not-compile-tests-at-build.patch => 003-do-not-compile-tests-at-build.patch} (100%) rename lang/python/patches/{140-do-not-write-bytes-codes.patch => 004-do-not-write-bytes-codes.patch} (100%) rename lang/python/patches/{150-fix-libffi-x86-64-configure.patch => 005-fix-libffi-x86-64-configure.patch} (100%) rename lang/python/patches/{160-remove-debian-multiarch-support.patch => 006-remove-debian-multiarch-support.patch} (100%) rename lang/python/patches/{170-distutils-do-not-adjust-path.patch => 007-distutils-do-not-adjust-path.patch} (100%) diff --git a/lang/python/patches/110-enable-zlib.patch b/lang/python/patches/001-enable-zlib.patch similarity index 100% rename from lang/python/patches/110-enable-zlib.patch rename to lang/python/patches/001-enable-zlib.patch diff --git a/lang/python/patches/120-do-not-add-include-dirs-when-cross-compiling.patch b/lang/python/patches/002-do-not-add-include-dirs-when-cross-compiling.patch similarity index 100% rename from lang/python/patches/120-do-not-add-include-dirs-when-cross-compiling.patch rename to lang/python/patches/002-do-not-add-include-dirs-when-cross-compiling.patch diff --git a/lang/python/patches/130-do-not-compile-tests-at-build.patch b/lang/python/patches/003-do-not-compile-tests-at-build.patch similarity index 100% rename from lang/python/patches/130-do-not-compile-tests-at-build.patch rename to lang/python/patches/003-do-not-compile-tests-at-build.patch diff --git a/lang/python/patches/140-do-not-write-bytes-codes.patch b/lang/python/patches/004-do-not-write-bytes-codes.patch similarity index 100% rename from lang/python/patches/140-do-not-write-bytes-codes.patch rename to lang/python/patches/004-do-not-write-bytes-codes.patch diff --git a/lang/python/patches/150-fix-libffi-x86-64-configure.patch b/lang/python/patches/005-fix-libffi-x86-64-configure.patch similarity index 100% rename from lang/python/patches/150-fix-libffi-x86-64-configure.patch rename to lang/python/patches/005-fix-libffi-x86-64-configure.patch diff --git a/lang/python/patches/160-remove-debian-multiarch-support.patch b/lang/python/patches/006-remove-debian-multiarch-support.patch similarity index 100% rename from lang/python/patches/160-remove-debian-multiarch-support.patch rename to lang/python/patches/006-remove-debian-multiarch-support.patch diff --git a/lang/python/patches/170-distutils-do-not-adjust-path.patch b/lang/python/patches/007-distutils-do-not-adjust-path.patch similarity index 100% rename from lang/python/patches/170-distutils-do-not-adjust-path.patch rename to lang/python/patches/007-distutils-do-not-adjust-path.patch From 2727b3fda35c0ecec50c2e0bbd7373d824b6a5c7 Mon Sep 17 00:00:00 2001 From: Alexandru Ardelean Date: Fri, 6 Mar 2015 11:13:25 +0200 Subject: [PATCH 059/681] python: add patch for distutils to add support for the '_python_sysroot' env var Patch taken from buildroot: http://git.buildroot.net/buildroot/tree/package/python/python-008-distutils-use-python-sysroot.patch Signed-off-by: Alexandru Ardelean --- .../008-distutils-use-python-sysroot.patch | 54 +++++++++++++++++++ 1 file changed, 54 insertions(+) create mode 100644 lang/python/patches/008-distutils-use-python-sysroot.patch diff --git a/lang/python/patches/008-distutils-use-python-sysroot.patch b/lang/python/patches/008-distutils-use-python-sysroot.patch new file mode 100644 index 000000000..7cd748761 --- /dev/null +++ b/lang/python/patches/008-distutils-use-python-sysroot.patch @@ -0,0 +1,54 @@ +Adjust library/header paths for cross-compilation + +When cross-compiling third-party extensions, the get_python_inc() or +get_python_lib() can be called, to return the path to headers or +libraries. However, they use the sys.prefix of the host Python, which +returns incorrect paths when cross-compiling (paths pointing to host +headers and libraries). + +In order to fix this, we introduce the _python_sysroot, _python_prefix +and _python_exec_prefix variables, that allow to override these +values, and get correct header/library paths when cross-compiling +third-party Python modules. + +The _python_sysroot variable is also used to prefix the LIBDIR value +taken from the sysconfigdata module. + +Signed-off-by: Thomas Petazzoni + +Index: b/Lib/distutils/sysconfig.py +=================================================================== +--- a/Lib/distutils/sysconfig.py ++++ b/Lib/distutils/sysconfig.py +@@ -19,8 +19,13 @@ + from distutils.errors import DistutilsPlatformError + + # These are needed in a couple of spots, so just compute them once. +-PREFIX = os.path.normpath(sys.prefix) +-EXEC_PREFIX = os.path.normpath(sys.exec_prefix) ++if "_python_sysroot" in os.environ: ++ _sysroot=os.environ.get('_python_sysroot') ++ PREFIX = os.path.normpath(_sysroot + os.environ.get('_python_prefix')) ++ EXEC_PREFIX = os.path.normpath(_sysroot + os.environ.get('_python_exec_prefix')) ++else: ++ PREFIX = os.path.normpath(sys.prefix) ++ EXEC_PREFIX = os.path.normpath(sys.exec_prefix) + + # Path to the base directory of the project. On Windows the binary may + # live in project/PCBuild9. If we're dealing with an x64 Windows build, +Index: b/Lib/distutils/command/build_ext.py +=================================================================== +--- a/Lib/distutils/command/build_ext.py ++++ b/Lib/distutils/command/build_ext.py +@@ -237,7 +237,10 @@ + if (sysconfig.get_config_var('Py_ENABLE_SHARED')): + if not sysconfig.python_build: + # building third party extensions +- self.library_dirs.append(sysconfig.get_config_var('LIBDIR')) ++ libdir = sysconfig.get_config_var('LIBDIR') ++ if "_python_sysroot" in os.environ: ++ libdir = os.environ.get("_python_sysroot") + libdir ++ self.library_dirs.append(libdir) + else: + # building python standard extensions + self.library_dirs.append('.') From bb87de33dd85bf49f87606c58098013ae66e536b Mon Sep 17 00:00:00 2001 From: Alexandru Ardelean Date: Fri, 6 Mar 2015 11:29:23 +0200 Subject: [PATCH 060/681] python: add '_python_*' env vars to host python Signed-off-by: Alexandru Ardelean --- lang/python/files/python-package.mk | 3 +++ 1 file changed, 3 insertions(+) diff --git a/lang/python/files/python-package.mk b/lang/python/files/python-package.mk index c8cbcda57..ed1f37e01 100644 --- a/lang/python/files/python-package.mk +++ b/lang/python/files/python-package.mk @@ -25,6 +25,9 @@ define HostPython ( export PYTHONPATH="$(PYTHONPATH)"; \ export PYTHONOPTIMIZE=""; \ export PYTHONDONTWRITEBYTECODE=1; \ + export _python_sysroot="$(STAGING_DIR)"; \ + export _python_prefix="/usr"; \ + export _python_exec_prefix="/usr"; \ $(1) \ $(HOST_PYTHON_BIN) $(2); \ ) From 0d072f2b42bf1191c42f3e44a4ae77883728ae66 Mon Sep 17 00:00:00 2001 From: Alexandru Ardelean Date: Mon, 2 Mar 2015 19:53:19 +0200 Subject: [PATCH 061/681] python: packetize some python modules MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Packetize some Python modules to reduce size of the overall Python package. Basically, a new package is introduced, call `python-light`, and everything that's extra (or big) is put in other packages. The `python` package becomes a metapackage that installs `python-light` along with the rest of the packages. Base work started by Jan Čermák. Signed-off-by: Jan Čermák Signed-off-by: Alexandru Ardelean --- lang/python/Makefile | 122 ++++++++++++-------- lang/python/files/python-package-bsddb.mk | 17 +++ lang/python/files/python-package-codecs.mk | 22 ++++ lang/python/files/python-package-dbm.mk | 16 +++ lang/python/files/python-package-gdbm.mk | 16 +++ lang/python/files/python-package-ncurses.mk | 17 +++ lang/python/files/python-package-openssl.mk | 17 +++ lang/python/files/python-package-pydoc.mk | 17 +++ lang/python/files/python-package-sqlite3.mk | 17 +++ lang/python/files/python-package.mk | 2 +- 10 files changed, 215 insertions(+), 48 deletions(-) create mode 100644 lang/python/files/python-package-bsddb.mk create mode 100644 lang/python/files/python-package-codecs.mk create mode 100644 lang/python/files/python-package-dbm.mk create mode 100644 lang/python/files/python-package-gdbm.mk create mode 100644 lang/python/files/python-package-ncurses.mk create mode 100644 lang/python/files/python-package-openssl.mk create mode 100644 lang/python/files/python-package-pydoc.mk create mode 100644 lang/python/files/python-package-sqlite3.mk diff --git a/lang/python/Makefile b/lang/python/Makefile index bb4252292..9cf476ef3 100644 --- a/lang/python/Makefile +++ b/lang/python/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2006-2014 OpenWrt.org +# Copyright (C) 2006-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -12,7 +12,7 @@ include ./files/python-package.mk PKG_NAME:=python PKG_VERSION:=$(PYTHON_VERSION).$(PYTHON_VERSION_MICRO) -PKG_RELEASE:=4 +PKG_RELEASE:=5 PKG_SOURCE:=Python-$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=http://www.python.org/ftp/python/$(PKG_VERSION) @@ -54,7 +54,7 @@ endef define Package/python-base $(call Package/python/Default) TITLE:=Python $(PYTHON_VERSION) interpreter - DEPENDS:=+libpthread +zlib +libffi +libopenssl + DEPENDS:=+libpthread +zlib endef define Package/python-base/description @@ -62,13 +62,44 @@ define Package/python-base/description for the interpreter to start. endef +define Package/python-light +$(call Package/python/Default) + TITLE:=Python $(PYTHON_VERSION) light installation + DEPENDS:=+python-base +libffi +libbz2 +endef + +define Package/python-light/description + This package is essentially the python-base package plus + a few of the rarely used (and big) libraries stripped out + into separate packages. +endef + +# Define newline here, since it's not defined in OpenWRT +define newline + + +endef + +PYTHON_LIB_FILES_DEL:= +PYTHON_PACKAGES:= +define PyBasePackage + PYTHON_PACKAGES+=$(1) + PYTHON_LIB_FILES_DEL+=$(2) + define PyPackage/$(1)/filespec + $(subst $(space),$(newline),$(foreach lib_file,$(2),+|$(lib_file))) + endef +endef + +include ./files/python-package-*.mk + define Package/python $(call Package/python/Default) - DEPENDS:=+python-base +libncursesw +libbz2 +libgdbm +libsqlite3 +libexpat +libdb47 + DEPENDS:=+python-light $(foreach package,$(PYTHON_PACKAGES),+$(package)) endef define Package/python/description This package contains the (almost) full Python install. + It's python-light + all other packages. endef MAKE_FLAGS+=\ @@ -124,31 +155,36 @@ define Build/InstallDev $(1)/usr/lib/python$(PYTHON_VERSION)/ endef +PYTHON_BASE_LIB_FILES:= \ + /usr/lib/python$(PYTHON_VERSION)/_abcoll.py \ + /usr/lib/python$(PYTHON_VERSION)/_sysconfigdata.py \ + /usr/lib/python$(PYTHON_VERSION)/_weakrefset.py \ + /usr/lib/python$(PYTHON_VERSION)/abc.py \ + /usr/lib/python$(PYTHON_VERSION)/copy_reg.py \ + /usr/lib/python$(PYTHON_VERSION)/genericpath.py \ + /usr/lib/python$(PYTHON_VERSION)/linecache.py \ + /usr/lib/python$(PYTHON_VERSION)/posixpath.py \ + /usr/lib/python$(PYTHON_VERSION)/os.py \ + /usr/lib/python$(PYTHON_VERSION)/re.py \ + /usr/lib/python$(PYTHON_VERSION)/site.py \ + /usr/lib/python$(PYTHON_VERSION)/sre_compile.py \ + /usr/lib/python$(PYTHON_VERSION)/sre_constants.py \ + /usr/lib/python$(PYTHON_VERSION)/sre_parse.py \ + /usr/lib/python$(PYTHON_VERSION)/sysconfig.py \ + /usr/lib/python$(PYTHON_VERSION)/stat.py \ + /usr/lib/python$(PYTHON_VERSION)/traceback.py \ + /usr/lib/python$(PYTHON_VERSION)/types.py \ + /usr/lib/python$(PYTHON_VERSION)/UserDict.py \ + /usr/lib/python$(PYTHON_VERSION)/warnings.py + +PYTHON_BASE_LIB_FILES+=$(PYTHON_BASE_LIB_FILES) + define PyPackage/python-base/filespec +|/usr/bin/python$(PYTHON_VERSION) -+|/usr/lib/python$(PYTHON_VERSION)/_abcoll.py -+|/usr/lib/python$(PYTHON_VERSION)/_sysconfigdata.py -+|/usr/lib/python$(PYTHON_VERSION)/_weakrefset.py -+|/usr/lib/python$(PYTHON_VERSION)/abc.py -+|/usr/lib/python$(PYTHON_VERSION)/copy_reg.py -+|/usr/lib/python$(PYTHON_VERSION)/genericpath.py -+|/usr/lib/python$(PYTHON_VERSION)/linecache.py -+|/usr/lib/python$(PYTHON_VERSION)/posixpath.py -+|/usr/lib/python$(PYTHON_VERSION)/os.py -+|/usr/lib/python$(PYTHON_VERSION)/re.py -+|/usr/lib/python$(PYTHON_VERSION)/site.py -+|/usr/lib/python$(PYTHON_VERSION)/sre_compile.py -+|/usr/lib/python$(PYTHON_VERSION)/sre_constants.py -+|/usr/lib/python$(PYTHON_VERSION)/sre_parse.py -+|/usr/lib/python$(PYTHON_VERSION)/sysconfig.py -+|/usr/lib/python$(PYTHON_VERSION)/stat.py -+|/usr/lib/python$(PYTHON_VERSION)/traceback.py -+|/usr/lib/python$(PYTHON_VERSION)/types.py -+|/usr/lib/python$(PYTHON_VERSION)/UserDict.py -+|/usr/lib/python$(PYTHON_VERSION)/warnings.py -endef - -define PyPackage/python/filespec +$(subst $(space),$(newline),$(foreach lib_file,$(PYTHON_BASE_LIB_FILES),+|$(lib_file))) +endef + +define PyPackage/python-light/filespec +|/usr/lib/python$(PYTHON_VERSION) -|/usr/lib/python$(PYTHON_VERSION)/config -|/usr/lib/python$(PYTHON_VERSION)/distutils/cygwinccompiler.py @@ -164,26 +200,7 @@ define PyPackage/python/filespec -|/usr/lib/python$(PYTHON_VERSION)/*/test -|/usr/lib/python$(PYTHON_VERSION)/*/tests -|/usr/lib/python$(PYTHON_VERSION)/lib-dynload/readline.so --|/usr/lib/python$(PYTHON_VERSION)/_abcoll.py --|/usr/lib/python$(PYTHON_VERSION)/_sysconfigdata.py --|/usr/lib/python$(PYTHON_VERSION)/_weakrefset.py --|/usr/lib/python$(PYTHON_VERSION)/abc.py --|/usr/lib/python$(PYTHON_VERSION)/copy_reg.py --|/usr/lib/python$(PYTHON_VERSION)/genericpath.py --|/usr/lib/python$(PYTHON_VERSION)/linecache.py --|/usr/lib/python$(PYTHON_VERSION)/posixpath.py --|/usr/lib/python$(PYTHON_VERSION)/os.py --|/usr/lib/python$(PYTHON_VERSION)/re.py --|/usr/lib/python$(PYTHON_VERSION)/site.py --|/usr/lib/python$(PYTHON_VERSION)/sre_compile.py --|/usr/lib/python$(PYTHON_VERSION)/sre_constants.py --|/usr/lib/python$(PYTHON_VERSION)/sre_parse.py --|/usr/lib/python$(PYTHON_VERSION)/sysconfig.py --|/usr/lib/python$(PYTHON_VERSION)/stat.py --|/usr/lib/python$(PYTHON_VERSION)/traceback.py --|/usr/lib/python$(PYTHON_VERSION)/types.py --|/usr/lib/python$(PYTHON_VERSION)/UserDict.py --|/usr/lib/python$(PYTHON_VERSION)/warnings.py +$(subst $(space),$(newline),$(foreach lib_file,$(PYTHON_LIB_FILES_DEL),-|$(lib_file))) endef define PyPackage/python-base/install @@ -192,6 +209,10 @@ define PyPackage/python-base/install $(CP) $(PKG_INSTALL_DIR)/usr/lib/libpython$(PYTHON_VERSION).so* $(1)/usr/lib/ endef +# Dummy rule so that the package gets picked up +define Package/python/install +endef + HOST_CFLAGS+= \ -I/usr/include/ncursesw \ -I/usr/include/ncurses @@ -213,8 +234,15 @@ endef $(eval $(call HostBuild)) +$(foreach package, $(PYTHON_PACKAGES), \ + $(eval $(call PyPackage,$(package))) \ + $(eval $(call BuildPackage,$(package))) \ +) + $(eval $(call PyPackage,python-base)) +$(eval $(call PyPackage,python-light)) $(eval $(call PyPackage,python)) $(eval $(call BuildPackage,python-base)) +$(eval $(call BuildPackage,python-light)) $(eval $(call BuildPackage,python)) diff --git a/lang/python/files/python-package-bsddb.mk b/lang/python/files/python-package-bsddb.mk new file mode 100644 index 000000000..601ac5436 --- /dev/null +++ b/lang/python/files/python-package-bsddb.mk @@ -0,0 +1,17 @@ +# +# Copyright (C) 2006-2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +define Package/python-bsddb +$(call Package/python/Default) + TITLE:=Python $(PYTHON_VERSION) bsddb module + DEPENDS:=+python-light +libdb47 +endef + +$(eval $(call PyBasePackage,python-bsddb, \ + /usr/lib/python$(PYTHON_VERSION)/bsddb \ + /usr/lib/python$(PYTHON_VERSION)/lib-dynload/_bsddb.so \ +)) diff --git a/lang/python/files/python-package-codecs.mk b/lang/python/files/python-package-codecs.mk new file mode 100644 index 000000000..c84c5fc39 --- /dev/null +++ b/lang/python/files/python-package-codecs.mk @@ -0,0 +1,22 @@ +# +# Copyright (C) 2006-2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +define Package/python-codecs +$(call Package/python/Default) + TITLE:=Python $(PYTHON_VERSION) codecs + unicode support + DEPENDS:=+python-light +endef + +$(eval $(call PyBasePackage,python-codecs, \ + /usr/lib/python$(PYTHON_VERSION)/lib-dynload/_codecs_cn.so \ + /usr/lib/python$(PYTHON_VERSION)/lib-dynload/_codecs_hk.so \ + /usr/lib/python$(PYTHON_VERSION)/lib-dynload/_codecs_iso2022.so \ + /usr/lib/python$(PYTHON_VERSION)/lib-dynload/_codecs_jp.so \ + /usr/lib/python$(PYTHON_VERSION)/lib-dynload/_codecs_kr.so \ + /usr/lib/python$(PYTHON_VERSION)/lib-dynload/_codecs_tw.so \ + /usr/lib/python$(PYTHON_VERSION)/lib-dynload/unicodedata.so \ +)) diff --git a/lang/python/files/python-package-dbm.mk b/lang/python/files/python-package-dbm.mk new file mode 100644 index 000000000..f72c54818 --- /dev/null +++ b/lang/python/files/python-package-dbm.mk @@ -0,0 +1,16 @@ +# +# Copyright (C) 2006-2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +define Package/python-dbm +$(call Package/python/Default) + TITLE:=Python $(PYTHON_VERSION) dbm module + DEPENDS:=+python-light +libdb47 +endef + +$(eval $(call PyBasePackage,python-dbm, \ + /usr/lib/python$(PYTHON_VERSION)/lib-dynload/dbm.so \ +)) diff --git a/lang/python/files/python-package-gdbm.mk b/lang/python/files/python-package-gdbm.mk new file mode 100644 index 000000000..8e0b16f9c --- /dev/null +++ b/lang/python/files/python-package-gdbm.mk @@ -0,0 +1,16 @@ +# +# Copyright (C) 2006-2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +define Package/python-gdbm +$(call Package/python/Default) + TITLE:=Python $(PYTHON_VERSION) gdbm module + DEPENDS:=+python-light +libgdbm +endef + +$(eval $(call PyBasePackage,python-gdbm, \ + /usr/lib/python$(PYTHON_VERSION)/lib-dynload/gdbm.so \ +)) diff --git a/lang/python/files/python-package-ncurses.mk b/lang/python/files/python-package-ncurses.mk new file mode 100644 index 000000000..a5ff20040 --- /dev/null +++ b/lang/python/files/python-package-ncurses.mk @@ -0,0 +1,17 @@ +# +# Copyright (C) 2006-2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +define Package/python-ncurses +$(call Package/python/Default) + TITLE:=Python $(PYTHON_VERSION) ncurses module + DEPENDS:=+python-light +libncursesw +endef + +$(eval $(call PyBasePackage,python-ncurses, \ + /usr/lib/python$(PYTHON_VERSION)/lib-dynload/_curses.so \ + /usr/lib/python$(PYTHON_VERSION)/lib-dynload/_curses_panel.so \ +)) diff --git a/lang/python/files/python-package-openssl.mk b/lang/python/files/python-package-openssl.mk new file mode 100644 index 000000000..4d897eb81 --- /dev/null +++ b/lang/python/files/python-package-openssl.mk @@ -0,0 +1,17 @@ +# +# Copyright (C) 2006-2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +define Package/python-openssl +$(call Package/python/Default) + TITLE:=Python $(PYTHON_VERSION) SSL module + DEPENDS:=+python-light +libopenssl +endef + +$(eval $(call PyBasePackage,python-openssl, \ + /usr/lib/python$(PYTHON_VERSION)/lib-dynload/_hashlib.so \ + /usr/lib/python$(PYTHON_VERSION)/lib-dynload/_ssl.so \ +)) diff --git a/lang/python/files/python-package-pydoc.mk b/lang/python/files/python-package-pydoc.mk new file mode 100644 index 000000000..0df3cfd16 --- /dev/null +++ b/lang/python/files/python-package-pydoc.mk @@ -0,0 +1,17 @@ +# +# Copyright (C) 2006-2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +define Package/python-pydoc +$(call Package/python/Default) + TITLE:=Python $(PYTHON_VERSION) pydoc module + DEPENDS:=+python-light +endef + +$(eval $(call PyBasePackage,python-pydoc, \ + /usr/lib/python$(PYTHON_VERSION)/pydoc.py \ + /usr/lib/python$(PYTHON_VERSION)/pydoc_data \ +)) diff --git a/lang/python/files/python-package-sqlite3.mk b/lang/python/files/python-package-sqlite3.mk new file mode 100644 index 000000000..c5abb122e --- /dev/null +++ b/lang/python/files/python-package-sqlite3.mk @@ -0,0 +1,17 @@ +# +# Copyright (C) 2006-2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +define Package/python-sqlite3 +$(call Package/python/Default) + TITLE:=Python $(PYTHON_VERSION) sqlite3 module + DEPENDS:=+python-light +libsqlite3 +endef + +$(eval $(call PyBasePackage,python-sqlite3, \ + /usr/lib/python$(PYTHON_VERSION)/lib-dynload/_sqlite3.so \ + /usr/lib/python$(PYTHON_VERSION)/sqlite3 \ +)) diff --git a/lang/python/files/python-package.mk b/lang/python/files/python-package.mk index c8cbcda57..ba692ccf2 100644 --- a/lang/python/files/python-package.mk +++ b/lang/python/files/python-package.mk @@ -1,5 +1,5 @@ # -# Copyright (C) 2007-2014 OpenWrt.org +# Copyright (C) 2006-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. From 86c614e69df3da1bcb5a45b77f3af79445093b48 Mon Sep 17 00:00:00 2001 From: Marcel Denia Date: Fri, 6 Mar 2015 14:36:25 +0100 Subject: [PATCH 062/681] libidn: Update to 1.30 Signed-off-by: Marcel Denia --- libs/libidn/Makefile | 6 +++--- libs/libidn/patches/002-disable-po-docs-examples.patch | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/libs/libidn/Makefile b/libs/libidn/Makefile index 811ebe442..b92e39240 100644 --- a/libs/libidn/Makefile +++ b/libs/libidn/Makefile @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=libidn -PKG_VERSION:=1.29 -PKG_RELEASE:=2 +PKG_VERSION:=1.30 +PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=@GNU/libidn -PKG_MD5SUM:=2b67bb507207af379f9461e1307dc84b +PKG_MD5SUM:=b17edc8551cd31cc5f14c82a9dabf58e PKG_LICENSE:=GPL-2.0+ GPL-3.0+ LGPL-2.1+ LGPL-3.0+ Apache-2.0 PKG_LICENSE_FILES:=COPYING COPYINGv2 COPYINGv3 COPYING.LESSERv2 COPYING.LESSERv3 java/LICENSE-2.0.txt diff --git a/libs/libidn/patches/002-disable-po-docs-examples.patch b/libs/libidn/patches/002-disable-po-docs-examples.patch index 27a6f947e..e99f2a11f 100644 --- a/libs/libidn/patches/002-disable-po-docs-examples.patch +++ b/libs/libidn/patches/002-disable-po-docs-examples.patch @@ -11,12 +11,12 @@ EXTRA_DIST = cfg.mk maint.mk .clcopying --- a/configure.ac +++ b/configure.ac -@@ -51,8 +51,6 @@ AC_PROG_LIBTOOL +@@ -48,8 +48,6 @@ AC_PROG_LIBTOOL # Checks for programs. AM_MISSING_PROG(PERL, perl, $missing_dir) AM_MISSING_PROG(HELP2MAN, help2man, $missing_dir) -AM_GNU_GETTEXT(external) --AM_GNU_GETTEXT_VERSION(0.18.3) +-AM_GNU_GETTEXT_VERSION(0.19.3) AM_ICONV AM_PATH_LISPDIR From c05980909caf11a2ee0e1c1f9a635c2acfaea020 Mon Sep 17 00:00:00 2001 From: Marko Ratkaj Date: Fri, 6 Mar 2015 16:52:50 +0100 Subject: [PATCH 063/681] squid: update to 3.5.2 Signed-off-by: Marko Ratkaj --- net/squid/Makefile | 8 ++++---- net/squid/patches/001-cross_compile.patch | 12 +++++------ net/squid/patches/100-mime.patch | 25 ++++++++++++----------- 3 files changed, 23 insertions(+), 22 deletions(-) diff --git a/net/squid/Makefile b/net/squid/Makefile index f06df6dcc..aeab76570 100644 --- a/net/squid/Makefile +++ b/net/squid/Makefile @@ -8,15 +8,15 @@ include $(TOPDIR)/rules.mk PKG_NAME:=squid -PKG_VERSION:=3.4.11 +PKG_VERSION:=3.5.2 PKG_RELEASE:=2 PKG_LICENSE:=GPL-2.0 PKG_MAINTAINER:=Luka Perkov PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz -PKG_SOURCE_URL:=http://www.squid-cache.org/Versions/v3/3.4/ -PKG_MD5SUM:=e79ddb108d24823da8c1dbc0fc4a31fb +PKG_SOURCE_URL:=http://www.squid-cache.org/Versions/v3/3.5/ +PKG_MD5SUM:=0330ec9f69e333c2a81fa4502ba96a22 PKG_BUILD_PARALLEL:=1 PKG_INSTALL:=1 @@ -33,7 +33,7 @@ endef define Package/squid $(call Package/squid/Default) MENU:=1 - DEPENDS:=+libopenssl +libpthread +librt +libltdl +libstdcpp + DEPENDS:=+libopenssl +libpthread +librt +libltdl +libstdcpp +libgnutls TITLE:=full-featured Web proxy cache endef diff --git a/net/squid/patches/001-cross_compile.patch b/net/squid/patches/001-cross_compile.patch index 8b1d77257..a6cc6e23c 100644 --- a/net/squid/patches/001-cross_compile.patch +++ b/net/squid/patches/001-cross_compile.patch @@ -1,17 +1,17 @@ --- a/src/Makefile.in +++ b/src/Makefile.in -@@ -7742,7 +7742,7 @@ cache_cf.o: cf_parser.cci +@@ -7759,7 +7759,7 @@ cache_cf.o: cf_parser.cci # cf_gen builds the configuration files. cf_gen$(EXEEXT): $(cf_gen_SOURCES) $(cf_gen_DEPENDENCIES) cf_gen_defines.cci -- $(HOSTCXX) -o $@ $(srcdir)/cf_gen.cc -I$(srcdir) -I$(top_builddir)/include/ -I$(top_builddir)/src +- $(BUILDCXX) $(BUILDCXXFLAGS) -o $@ $(srcdir)/cf_gen.cc -I$(srcdir) -I$(top_builddir)/include/ -I$(top_builddir)/src + g++ -o $@ $(srcdir)/cf_gen.cc -I$(srcdir) -I$(top_builddir)/include/ -I$(top_builddir)/src # squid.conf.default is built by cf_gen when making cf_parser.cci squid.conf.default squid.conf.documented: cf_parser.cci --- a/configure +++ b/configure -@@ -22226,7 +22226,7 @@ $as_echo_n "checking whether the SSL_get +@@ -22935,7 +22935,7 @@ $as_echo_n "checking whether the SSL_get if test "$cross_compiling" = yes; then : { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} @@ -20,7 +20,7 @@ See \`config.log' for more details" "$LINENO" 5; } else cat confdefs.h - <<_ACEOF >conftest.$ac_ext -@@ -22274,7 +22274,7 @@ $as_echo_n "checking whether the workaro +@@ -22983,7 +22983,7 @@ $as_echo_n "checking whether the workaro if test "$cross_compiling" = yes; then : { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} @@ -29,7 +29,7 @@ See \`config.log' for more details" "$LINENO" 5; } else cat confdefs.h - <<_ACEOF >conftest.$ac_ext -@@ -24924,7 +24924,7 @@ else +@@ -28201,7 +28201,7 @@ else if test "$cross_compiling" = yes; then : { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} @@ -38,7 +38,7 @@ See \`config.log' for more details" "$LINENO" 5; } else cat confdefs.h - <<_ACEOF >conftest.$ac_ext -@@ -24949,7 +24949,7 @@ else +@@ -28226,7 +28226,7 @@ else if test "$cross_compiling" = yes; then : { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} diff --git a/net/squid/patches/100-mime.patch b/net/squid/patches/100-mime.patch index b5f3aaf8f..1138a413d 100644 --- a/net/squid/patches/100-mime.patch +++ b/net/squid/patches/100-mime.patch @@ -1,29 +1,30 @@ --- a/src/mime.conf.default +++ b/src/mime.conf.default -@@ -1,19 +1,3 @@ --# This file associates filename extensions (for servers or services --# that don't automatically include them - like ftp) with a mime type --# and a graphical icon. --# --# --# This file has the format : --# regex content-type icon content-encoding transfer-mode --#----------------------------------------------------------------------------------- +@@ -1,20 +1,3 @@ +-## Copyright (C) 1996-2015 The Squid Software Foundation and contributors +-## +-## Squid software is distributed under GPLv2+ license and includes +-## contributions from numerous individuals and organizations. +-## Please see the COPYING and CONTRIBUTORS files for details. +-## -# +-# This file associates URL patterns for servers or services +-# that don't automatically include Content-Type (like ftp) with a mime type +-# and a graphical icon. -# -# Content-Encodings are taken from section 3.1 of RFC2068 (HTTP/1.1) -# --# +-# This file has the format : -# -# regexp content-type icon encoding mode actions -#-------------------------------------------------------------------------------------------------------- \.gif$ image/gif silk/image.png - image +download \.mime$ www/mime silk/page_white_text.png - ascii +download ^internal-dirup$ - silk/arrow_up.png - - -@@ -190,6 +174,4 @@ README text/plain silk/information.pn +@@ -191,6 +174,4 @@ README text/plain silk/information.pn \.xml$ text/xml silk/page_world.png - ascii +download \.xsl$ text/xml silk/layout.png - ascii +download \.xyz$ chemical/x-xyz silk/chart_line.png - image +download -- +-# -# the default . text/plain silk/bullet_red.png - image +download +view From a05ece16a9037884ce1ed23e9b294ea456b03ff0 Mon Sep 17 00:00:00 2001 From: Michael Heimpold Date: Fri, 6 Mar 2015 23:31:10 +0100 Subject: [PATCH 064/681] mmc-utils: add new package Signed-off-by: Michael Heimpold --- utils/mmc-utils/Makefile | 56 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 utils/mmc-utils/Makefile diff --git a/utils/mmc-utils/Makefile b/utils/mmc-utils/Makefile new file mode 100644 index 000000000..566cb9ead --- /dev/null +++ b/utils/mmc-utils/Makefile @@ -0,0 +1,56 @@ +# +# Copyright (C) 2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=mmc-utils +PKG_VERSION=2015-03-06-$(PKG_SOURCE_VERSION) +PKG_RELEASE:=1 + +PKG_SOURCE_PROTO:=git +PKG_SOURCE_URL:=https://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc-utils.git +PKG_SOURCE_VERSION:=f4eb241519f8d500ce6068a70d2389be39ac5189 +PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) +PKG_SOURCE:=$(PKG_NAME)-$(PKG_SOURCE_VERSION).tar.gz + +PKG_LICENSE:=GPL-2.0 +PKG_LICENSE_FILES:= + +PKG_MAINTAINER:=Michael Heimpold + +PKG_BUILD_PARALLEL:=1 +PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_SOURCE_VERSION) + +include $(INCLUDE_DIR)/package.mk + +define Package/mmc-utils + SECTION:=utils + CATEGORY:=Utilities + TITLE:=Userspace tools for MMC/SD devices + URL:=http://git.kernel.org/cgit/linux/kernel/git/cjb/mmc-utils.git +endef + +define Package/mmc-utils/description + This package contains the userspace mmc utils, the userspace + counterpart to the Linux MMC/SD subsystem. +endef + +define Build/Configure +endef + +define Build/Compile + $(MAKE) -C $(PKG_BUILD_DIR) \ + $(TARGET_CONFIGURE_OPTS) CFLAGS="$(TARGET_CFLAGS)" \ + mmc +endef + +define Package/mmc-utils/install + $(INSTALL_DIR) $(1)/sbin + $(INSTALL_BIN) $(PKG_BUILD_DIR)/mmc $(1)/sbin +endef + +$(eval $(call BuildPackage,mmc-utils)) From f9aed6ae3f5eefeee80a61018a40d0a601c538fc Mon Sep 17 00:00:00 2001 From: Michael Heimpold Date: Sat, 7 Mar 2015 00:10:20 +0100 Subject: [PATCH 065/681] libugpio: import from oldpackages and upgrade to 0.0.6 Signed-off-by: Michael Heimpold --- libs/libugpio/Makefile | 72 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 72 insertions(+) create mode 100644 libs/libugpio/Makefile diff --git a/libs/libugpio/Makefile b/libs/libugpio/Makefile new file mode 100644 index 000000000..66168c1e5 --- /dev/null +++ b/libs/libugpio/Makefile @@ -0,0 +1,72 @@ +# +# Copyright (C) 2012-2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=libugpio +PKG_VERSION:=0.0.6 +PKG_RELEASE:=1 + +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 +PKG_SOURCE_URL:=https://github.com/mhei/libugpio/releases/download/v$(PKG_VERSION) +PKG_MD5SUM:=09c35abbc25f7ebff125bc43ff21ac35 + +PKG_LICENSE:=LGPL-2.1+ +PKG_LICENSE_FILES:=COPYING.LESSER + +PKG_MAINTAINER:=Michael Heimpold + +PKG_INSTALL:=1 +PKG_BUILD_PARALLEL:=1 + +include $(INCLUDE_DIR)/package.mk + +define Package/libugpio + SECTION:=libs + CATEGORY:=Libraries + URL:=https://github.com/mhei/libugpio + TITLE:=Library for using sysfs gpio interface from C programs + DEPENDS:=@GPIO_SUPPORT +endef + +define Package/libugpio/description + libugpio is a library to ease the use of linux kernel's sysfs + gpio interface from C programs and/or other libraries. +endef + +define Package/gpioctl-sysfs + SECTION:=utils + CATEGORY:=Utilities + TITLE:=Tool for controlling gpio pins + DEPENDS:=+libugpio +endef + +define Package/gpioctl-sysfs/description + Tool for controlling gpio pins using the sysfs api provided by the kernel. +endef + +define Build/InstallDev + $(INSTALL_DIR) $(1)/usr/include + $(CP) $(PKG_INSTALL_DIR)/usr/include/ugpio $(1)/usr/include/ + $(INSTALL_DIR) $(1)/usr/lib + $(CP) $(PKG_INSTALL_DIR)/usr/lib/libugpio.{so*,a} $(1)/usr/lib/ + $(INSTALL_DIR) $(1)/usr/lib/pkgconfig + $(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/libugpio.pc $(1)/usr/lib/pkgconfig/ +endef + +define Package/libugpio/install + $(INSTALL_DIR) $(1)/usr/lib + $(CP) $(PKG_INSTALL_DIR)/usr/lib/libugpio.so* $(1)/usr/lib/ +endef + +define Package/gpioctl-sysfs/install + $(INSTALL_DIR) $(1)/usr/bin + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/gpioctl $(1)/usr/bin/ +endef + +$(eval $(call BuildPackage,libugpio)) +$(eval $(call BuildPackage,gpioctl-sysfs)) From 68530b44755ab3f4d1ed900f33d9d953b40d2585 Mon Sep 17 00:00:00 2001 From: Gergely Kiss Date: Sat, 7 Mar 2015 01:17:18 +0100 Subject: [PATCH 066/681] seafile: fix download issue with python dependencies Signed-off-by: Gergely Kiss --- net/seafile-seahub/Makefile | 84 +++++++++++++++++++++++++++++++++---- 1 file changed, 75 insertions(+), 9 deletions(-) diff --git a/net/seafile-seahub/Makefile b/net/seafile-seahub/Makefile index ef2d4907f..266e45c81 100644 --- a/net/seafile-seahub/Makefile +++ b/net/seafile-seahub/Makefile @@ -40,38 +40,104 @@ endef PKG_BUILD_DEPENDS:=python-setuptools PYTHONPATH:=$(PYTHONPATH):$(PKG_BUILD_DIR)/thirdpart +define Download/django + FILE=Django-1.5.8.tar.gz + URL=https://www.djangoproject.com/m/releases/1.5/ + MD5SUM:=675fc736e2c29090f005e217ccf90b5b +endef + +define Download/djblets + PROTO=git + URL=https://github.com/djblets/djblets.git + SUBDIR=djblets-0.6.14 + FILE=djblets-0.6.14.tar.gz + VERSION=58c09bae9b71ac164f78c76746fd2e545aae6c68 +endef + +define Download/gunicorn + FILE=gunicorn-0.16.1.tar.gz + URL=https://pypi.python.org/packages/source/g/gunicorn/ + MD5SUM:=d53d5d04d941f2a3089e814e753a218f +endef + +define Download/six + FILE=six-1.4.1.tar.gz + URL=https://pypi.python.org/packages/source/s/six/ + MD5SUM:=bdbb9e12d3336c198695aa4cf3a61d62 +endef + +define Download/chardet + FILE=chardet-2.1.1.tar.gz + URL=https://pypi.python.org/packages/source/c/chardet/ + MD5SUM:=295367fd210d20f3febda615a88e1ef0 +endef + +define Download/flup + FILE=flup-1.0.2-py2.6.egg + URL=https://pypi.python.org/packages/2.6/f/flup/ + MD5SUM:=93ec6e3baeee3e5649a8456105178d4e +endef + +define Download/lockfile + FILE=lockfile-0.9.1.tar.gz + URL=https://pypi.python.org/packages/source/l/lockfile/ + MD5SUM:=ce61468d4c1263e3005737bbed2641f0 +endef + +define Download/python-daemon + FILE=python-daemon-1.5.5.tar.gz + URL=https://pypi.python.org/packages/source/p/python-daemon/ + MD5SUM:=1f6cd41473c2e201021a0aeef395b2b1 +endef + +define Download/python-dateutil + FILE=python-dateutil-1.5.tar.gz + URL=https://pypi.python.org/packages/source/p/python-dateutil/ + MD5SUM:=0dcb1de5e5cad69490a3b6ab63f0cfa5 +endef + define Build/Configure endef define Build/Compile + # Download python dependencies + $(eval $(call Download,django)) + $(eval $(call Download,djblets)) + $(eval $(call Download,gunicorn)) + $(eval $(call Download,six)) + $(eval $(call Download,chardet)) + $(eval $(call Download,flup)) + $(eval $(call Download,lockfile)) + $(eval $(call Download,python-daemon)) + $(eval $(call Download,python-dateutil)) # Install python dependencies $(call HostPython,, \ $(STAGING_DIR_ROOT)/usr/bin/easy_install -d $(PKG_BUILD_DIR)/thirdpart -Z -N \ - https://www.djangoproject.com/m/releases/1.5/Django-1.5.8.tar.gz) + $(DL_DIR)/Django-1.5.8.tar.gz) $(call HostPython,, \ $(STAGING_DIR_ROOT)/usr/bin/easy_install -d $(PKG_BUILD_DIR)/thirdpart -Z -N \ - https://github.com/djblets/djblets/archive/release-0.6.14.tar.gz) + $(DL_DIR)/djblets-0.6.14.tar.gz) $(call HostPython,, \ $(STAGING_DIR_ROOT)/usr/bin/easy_install -d $(PKG_BUILD_DIR)/thirdpart -Z -N \ - https://pypi.python.org/packages/source/g/gunicorn/gunicorn-0.16.1.tar.gz) + $(DL_DIR)/gunicorn-0.16.1.tar.gz) $(call HostPython,, \ $(STAGING_DIR_ROOT)/usr/bin/easy_install -d $(PKG_BUILD_DIR)/thirdpart -Z -N \ - https://pypi.python.org/packages/source/s/six/six-1.4.1.tar.gz) + $(DL_DIR)/six-1.4.1.tar.gz) $(call HostPython,, \ $(STAGING_DIR_ROOT)/usr/bin/easy_install -d $(PKG_BUILD_DIR)/thirdpart -Z -N \ - https://pypi.python.org/packages/source/c/chardet/chardet-2.1.1.tar.gz) + $(DL_DIR)/chardet-2.1.1.tar.gz) $(call HostPython,, \ $(STAGING_DIR_ROOT)/usr/bin/easy_install -d $(PKG_BUILD_DIR)/thirdpart -Z -N \ - https://pypi.python.org/packages/2.6/f/flup/flup-1.0.2-py2.6.egg) + $(DL_DIR)/flup-1.0.2-py2.6.egg) $(call HostPython,, \ $(STAGING_DIR_ROOT)/usr/bin/easy_install -d $(PKG_BUILD_DIR)/thirdpart -Z -N \ - https://pypi.python.org/packages/source/l/lockfile/lockfile-0.9.1.tar.gz) + $(DL_DIR)/lockfile-0.9.1.tar.gz) $(call HostPython,, \ $(STAGING_DIR_ROOT)/usr/bin/easy_install -d $(PKG_BUILD_DIR)/thirdpart -Z -N \ - https://pypi.python.org/packages/source/p/python-daemon/python-daemon-1.5.5.tar.gz) + $(DL_DIR)/python-daemon-1.5.5.tar.gz) $(call HostPython,, \ $(STAGING_DIR_ROOT)/usr/bin/easy_install -d $(PKG_BUILD_DIR)/thirdpart -Z -N \ - https://pypi.python.org/packages/source/p/python-dateutil/python-dateutil-1.5.tar.gz) + $(DL_DIR)/python-dateutil-1.5.tar.gz) endef define Package/seafile-seahub/install From 5819a55155fed93fd3d67c44ca428b8ef085d33a Mon Sep 17 00:00:00 2001 From: Dirk Neukirchen Date: Thu, 5 Mar 2015 10:19:24 +0100 Subject: [PATCH 067/681] gammu: use cmake.mk - remove not needed legacy stuff - fix lib64 suffix when installing fixes build error when target is x86_64 Signed-off-by: Dirk Neukirchen --- utils/gammu/Makefile | 27 ++++++--------------------- 1 file changed, 6 insertions(+), 21 deletions(-) diff --git a/utils/gammu/Makefile b/utils/gammu/Makefile index 11a5885a7..83df842ed 100644 --- a/utils/gammu/Makefile +++ b/utils/gammu/Makefile @@ -10,7 +10,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=gammu PKG_VERSION:=1.34.0 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE_URL:=http://dl.cihar.com/gammu/releases/ PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz @@ -18,8 +18,11 @@ PKG_MD5SUM:=5bc2508389d9b291ca0b8d4f210d0012 PKG_MAINTAINER:=Vitaly Protsko PKG_LICENCE:=GPL-2.0 +PKG_INSTALL:=1 + include $(INCLUDE_DIR)/package.mk include $(INCLUDE_DIR)/nls.mk +include $(INCLUDE_DIR)/cmake.mk define Package/gammu SECTION:=utils @@ -32,30 +35,12 @@ define Package/gammu DEPENDS+=+PACKAGE_libusb-1.0:libusb-1.0 endef -CONFIGURE_ARGS:= \ - --prefix=/usr \ - --cross-root="$(STAGING_DIR) $(TOOLCHAIN_DIR)" \ - --enable-shared \ - --without-libdbi - -define Build/Compile - $(MAKE) -C $(PKG_BUILD_DIR) \ - $(TARGET_CONFIGURE_OPTS) \ - LDSHARED="$(TARGET_CROSS)ld -shared" \ - CFLAGS="$(TARGET_CFLAGS) $(FPIC)" -endef - -define Build/Install - $(MAKE) -C $(PKG_BUILD_DIR) \ - DESTDIR="$(PKG_INSTALL_DIR)" \ - install -endef define Build/InstallDev mkdir -p $(1)/usr/include $(CP) -r $(PKG_INSTALL_DIR)/usr/include/gammu $(1)/usr/include/ mkdir -p $(1)/usr/lib - $(CP) $(PKG_INSTALL_DIR)/usr/lib/lib{Gammu*,gsmsd*} $(1)/usr/lib/ + $(CP) $(PKG_INSTALL_DIR)/usr/lib$(LIB_SUFFIX)/lib{Gammu*,gsmsd*} $(1)/usr/lib/ endef define Package/gammu/install @@ -63,7 +48,7 @@ define Package/gammu/install $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/gammu $(1)/usr/bin $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/gammu-{smsd,smsd-inject,smsd-monitor} $(1)/usr/bin $(INSTALL_DIR) $(1)/usr/lib - $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/lib{Gammu*,gsmsd*} $(1)/usr/lib + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib$(LIB_SUFFIX)/lib{Gammu*,gsmsd*} $(1)/usr/lib $(INSTALL_DIR) $(1)/etc/init.d $(INSTALL_DIR) $(1)/etc/config $(INSTALL_CONF) ./files/gammu $(1)/etc/config/gammu From 7c68afaf4a8b70422dd8de662ae9f2d84b860580 Mon Sep 17 00:00:00 2001 From: Dirk Neukirchen Date: Thu, 5 Mar 2015 12:31:14 +0100 Subject: [PATCH 068/681] gammu: fix dependencies - disable libdbi via CMAKE - fix libpq dependency reported by buildbot.openwrt.org Signed-off-by: Dirk Neukirchen --- utils/gammu/Makefile | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/utils/gammu/Makefile b/utils/gammu/Makefile index 83df842ed..6b19c9dcc 100644 --- a/utils/gammu/Makefile +++ b/utils/gammu/Makefile @@ -10,7 +10,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=gammu PKG_VERSION:=1.34.0 -PKG_RELEASE:=2 +PKG_RELEASE:=3 PKG_SOURCE_URL:=http://dl.cihar.com/gammu/releases/ PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz @@ -31,10 +31,12 @@ define Package/gammu URL:=http://dl.cihar.com/gammu/releases/ DEPENDS:=+libpthread +libcurl +glib2 $(ICONV_DEPENDS) $(INTL_DEPENDS) DEPENDS+=+PACKAGE_python:python +PACKAGE_bluez-libs:bluez-libs - DEPENDS+=+PACKAGE_libmysqlclient:libmysqlclient +PACKAGE_unixodbc:unixodbc + DEPENDS+=+PACKAGE_libmysqlclient:libmysqlclient +PACKAGE_unixodbc:unixodbc +PACKAGE_libpq:libpq DEPENDS+=+PACKAGE_libusb-1.0:libusb-1.0 endef +CMAKE_OPTIONS += -DWITH_LibDBI:BOOL=OFF + define Build/InstallDev mkdir -p $(1)/usr/include From 95dce8fd6b552929f7b543464f5467c56657c390 Mon Sep 17 00:00:00 2001 From: Othmar Truniger Date: Sat, 7 Mar 2015 12:32:27 +0100 Subject: [PATCH 069/681] knxd: follow new respository Signed-off-by: Othmar Truniger --- net/knxd/Makefile | 14 +++++++------- net/knxd/patches/0099-openwrt.patch | 4 ++-- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/net/knxd/Makefile b/net/knxd/Makefile index cbf5ab18a..c278f248c 100644 --- a/net/knxd/Makefile +++ b/net/knxd/Makefile @@ -11,8 +11,8 @@ include $(TOPDIR)/rules.mk PKG_NAME:=knxd -PKG_REV:=9cdcf0f25d34ed7939ecc41029caf6213581baa8 -PKG_VERSION:=2015-02-13 +PKG_REV:=a63bc660d305e26ce3ed038607d387758fad8413 +PKG_VERSION:=2015-03-06 PKG_RELEASE:=1 PKG_MAINTAINER:=Othmar Truniger @@ -22,7 +22,7 @@ PKG_LICENSE_FILES:=LICENSE PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_PROTO:=git -PKG_SOURCE_URL:=git://github.com/Makki1/knxd.git +PKG_SOURCE_URL:=git://github.com/knxd/knxd.git PKG_SOURCE_SUBDIR:=$(PKG_NAME) PKG_SOURCE_VERSION:=$(PKG_REV) @@ -36,8 +36,8 @@ include $(INCLUDE_DIR)/package.mk define Package/knxd SECTION:=net CATEGORY:=Network - TITLE:=Eib KNX deamon - URL:=https://github.com/Makki1/knxd + TITLE:=EIB KNX daemon + URL:=https://github.com/knxd/knxd DEPENDS:=pthsem libusb-1.0 endef @@ -52,8 +52,8 @@ endef define Package/knxd-tools SECTION:=net CATEGORY:=Network - TITLE:=Eib KNX Utils - URL:=https://github.com/Makki1/knxd + TITLE:=EIB KNX Utils + URL:=https://github.com/knxd/knxd DEPENDS:=pthsem libusb-1.0 endef diff --git a/net/knxd/patches/0099-openwrt.patch b/net/knxd/patches/0099-openwrt.patch index fd73c0555..f7e33ed10 100644 --- a/net/knxd/patches/0099-openwrt.patch +++ b/net/knxd/patches/0099-openwrt.patch @@ -1,5 +1,5 @@ ---- knxd/src/client/Makefile.am.orig 2014-12-21 20:17:14.000000000 +0100 -+++ knxd/src/client/Makefile.am 2014-12-21 20:18:50.639995000 +0100 +--- a/src/client/Makefile.am 2014-12-21 20:17:14.000000000 +0100 ++++ b/src/client/Makefile.am 2014-12-21 20:18:50.639995000 +0100 @@ -4,5 +4,5 @@ BUILDJAVA = endif From ec44072a4cfca3c8b8eb9b7d9928903093a15d7f Mon Sep 17 00:00:00 2001 From: Michael Heimpold Date: Sat, 7 Mar 2015 22:47:51 +0100 Subject: [PATCH 070/681] mmc-utils: fix typo in Makefile Signed-off-by: Michael Heimpold --- utils/mmc-utils/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/utils/mmc-utils/Makefile b/utils/mmc-utils/Makefile index 566cb9ead..59da16c6c 100644 --- a/utils/mmc-utils/Makefile +++ b/utils/mmc-utils/Makefile @@ -14,7 +14,7 @@ PKG_RELEASE:=1 PKG_SOURCE_PROTO:=git PKG_SOURCE_URL:=https://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc-utils.git PKG_SOURCE_VERSION:=f4eb241519f8d500ce6068a70d2389be39ac5189 -PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) +PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_SOURCE_VERSION) PKG_SOURCE:=$(PKG_NAME)-$(PKG_SOURCE_VERSION).tar.gz PKG_LICENSE:=GPL-2.0 From a3f364b32be99dc3206a561551e77fb6600372c8 Mon Sep 17 00:00:00 2001 From: Michael Heimpold Date: Sat, 7 Mar 2015 22:38:37 +0100 Subject: [PATCH 071/681] knxd: streamline makefile - use https URL for fetching sources from GitHub, otherwise cloning sources could stall buildbots by asking to accept a/the SSH host key - do not _depend_ on DEPENDS but _select_ them, so the package(s) always appear in menuconfig, not only when all dependencies are already selected --> dependencies are automatically pulled in when package is selected by user - use PKG_INSTALL - factor out the libeibclient library as own package - use CONFIGURE_ARGS instead of dedicated Build/Configure - same for TARGET_CFLAGS and Build/Compile - do not include /etc/functions, already included by /etc/rc.common Signed-off-by: Michael Heimpold --- net/knxd/Makefile | 175 +++++++++++++++++++-------------------- net/knxd/files/knxd.init | 3 - 2 files changed, 87 insertions(+), 91 deletions(-) diff --git a/net/knxd/Makefile b/net/knxd/Makefile index c278f248c..97fcc8ea5 100644 --- a/net/knxd/Makefile +++ b/net/knxd/Makefile @@ -11,25 +11,25 @@ include $(TOPDIR)/rules.mk PKG_NAME:=knxd -PKG_REV:=a63bc660d305e26ce3ed038607d387758fad8413 -PKG_VERSION:=2015-03-06 +PKG_VERSION=2015-03-06-$(PKG_SOURCE_VERSION) PKG_RELEASE:=1 +PKG_SOURCE_PROTO:=git +PKG_SOURCE_URL:=https://github.com/knxd/knxd.git +PKG_SOURCE_VERSION:=a63bc660d305e26ce3ed038607d387758fad8413 +PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_SOURCE_VERSION) +PKG_SOURCE:=$(PKG_NAME)-$(PKG_SOURCE_VERSION).tar.gz + PKG_MAINTAINER:=Othmar Truniger + PKG_LICENSE:=GPL-2.0+ PKG_LICENSE_FILES:=LICENSE - -PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz -PKG_SOURCE_PROTO:=git -PKG_SOURCE_URL:=git://github.com/knxd/knxd.git -PKG_SOURCE_SUBDIR:=$(PKG_NAME) -PKG_SOURCE_VERSION:=$(PKG_REV) - -PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME) -PKG_BUILD_DEPENDS:=pthsem argp-standalone +PKG_BUILD_PARALLEL:=1 +PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_SOURCE_VERSION) PKG_FIXUP:=autoreconf +PKG_INSTALL:=1 include $(INCLUDE_DIR)/package.mk @@ -37,8 +37,7 @@ define Package/knxd SECTION:=net CATEGORY:=Network TITLE:=EIB KNX daemon - URL:=https://github.com/knxd/knxd - DEPENDS:=pthsem libusb-1.0 + DEPENDS:=+pthsem +libusb-1.0 endef define Package/knxd/description @@ -49,105 +48,105 @@ define Package/knxd/conffiles /etc/config/knxd endef +define Package/libeibclient + SECTION:=libs + CATEGORY:=Libraries + TITLE:=Library for EIB clients + DEPENDS:=+pthsem +endef + +define Package/knxd-tools/description +EIB KNX client library +endef + define Package/knxd-tools SECTION:=net CATEGORY:=Network TITLE:=EIB KNX Utils - URL:=https://github.com/knxd/knxd - DEPENDS:=pthsem libusb-1.0 + DEPENDS:=+libeibclient endef define Package/knxd-tools/description EIB KNX Tools endef -define Build/Prepare - $(call Build/Prepare/Default) -endef - -define Build/Configure - $(call Build/Configure/Default,\ - --disable-ft12 \ - --enable-eibnetip \ - --enable-eibnetiptunnel \ - --enable-eibnetipserver \ - --enable-usb \ - --enable-tpuart \ - --enable-tpuarts \ - --disable-pei16 \ - --disable-pei16s \ - --enable-groupcache \ - --without-pth-test \ - --without-libstdc ) -endef +CONFIGURE_ARGS+= \ + --disable-ft12 \ + --enable-eibnetip \ + --enable-eibnetiptunnel \ + --enable-eibnetipserver \ + --enable-usb \ + --enable-tpuart \ + --enable-tpuarts \ + --disable-pei16 \ + --disable-pei16s \ + --enable-groupcache \ + --without-pth-test \ + --without-libstdc + +TARGET_CFLAGS+= \ + $(FPIC) \ + -fno-builtin -nodefaultlibs -lc -lm -lgcc -largp -lpthsem + +define Build/InstallDev + $(INSTALL_DIR) $(1)/usr/include + $(CP) $(PKG_INSTALL_DIR)/usr/include/eib*.h $(1)/usr/include/ -define Build/Compile - $(MAKE) -C $(PKG_BUILD_DIR) \ - CC=$(TARGET_CC) \ - LIBS="-L$(STAGING_DIR)/lib -L$(STAGING_DIR)/usr/lib -fno-builtin -nodefaultlibs -lc -lm -lgcc -largp -lpthsem" \ - CPPFLAGS="-I$(STAGING_DIR)/include -I$(STAGING_DIR)/usr/include" + $(INSTALL_DIR) $(1)/usr/lib + $(CP) $(PKG_INSTALL_DIR)/usr/lib/libeibclient.{a,so*} $(1)/usr/lib/ endef define Package/knxd/install $(INSTALL_DIR) $(1)/usr/bin - $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/server/knxd $(1)/usr/bin/ - $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/tools/bcu/bcuaddrtab $(1)/usr/bin/ - $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/tools/bcu/bcuread $(1)/usr/bin/ - $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/tools/eibnet/eibnetsearch $(1)/usr/bin/ - $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/tools/eibnet/eibnetdescribe $(1)/usr/bin/ - $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/usb/findknxusb $(1)/usr/bin/ + $(CP) $(PKG_INSTALL_DIR)/usr/bin/* $(1)/usr/bin/ + $(INSTALL_DIR) $(1)/etc/init.d $(INSTALL_BIN) ./files/knxd.init $(1)/etc/init.d/knxd + $(INSTALL_DIR) $(1)/etc/config $(INSTALL_DATA) ./files/knxd.config $(1)/etc/config/knxd endef -define Package/knxd-tools/install +define Package/libeibclient/install $(INSTALL_DIR) $(1)/usr/lib - $(INSTALL_DATA) $(PKG_BUILD_DIR)/src/client/c/.libs/libeibclient.so.0.0.0 $(1)/usr/lib/ - ln -s libeibclient.so.0.0.0 $(1)/usr/lib/libeibclient.so - ln -s libeibclient.so.0.0.0 $(1)/usr/lib/libeibclient.so.0 + $(CP) $(PKG_INSTALL_DIR)/usr/lib/libeibclient.so* $(1)/usr/lib/ +endef + +define Package/knxd-tools/install $(INSTALL_DIR) $(1)/usr/bin - -rm -f $(1)/usr/bin/knxread - -rm -f $(1)/usr/bin/knxreadtemp - -rm -f $(1)/usr/bin/knxwrite - -rm -f $(1)/usr/bin/knxlog - -rm -f $(1)/usr/bin/knxon - -rm -f $(1)/usr/bin/knxoff - -rm -f $(1)/usr/bin/knxif - -rm -f $(1)/usr/bin/knxswrite - -rm -f $(1)/usr/bin/knxbool - -rm -f $(1)/usr/bin/knxdimup - ln -s knxtool $(1)/usr/bin/knxread - ln -s knxtool $(1)/usr/bin/knxreadtemp - ln -s knxtool $(1)/usr/bin/knxwrite - ln -s knxtool $(1)/usr/bin/knxlog - ln -s knxtool $(1)/usr/bin/knxon - ln -s knxtool $(1)/usr/bin/knxoff - ln -s knxtool $(1)/usr/bin/knxif - ln -s knxtool $(1)/usr/bin/knxswrite - ln -s knxtool $(1)/usr/bin/knxbool - ln -s knxtool $(1)/usr/bin/knxdimup - $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/examples/.libs/knxtool $(1)/usr/bin/ - $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/examples/.libs/busmonitor1 $(1)/usr/bin/ - $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/examples/.libs/busmonitor2 $(1)/usr/bin/ - $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/examples/.libs/busmonitor3 $(1)/usr/bin/ - $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/examples/.libs/eibread-cgi $(1)/usr/bin/ - $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/examples/.libs/eibwrite-cgi $(1)/usr/bin/ - $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/examples/.libs/vbusmonitor1 $(1)/usr/bin/ - $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/examples/.libs/vbusmonitor2 $(1)/usr/bin/ - $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/examples/.libs/vbusmonitor3 $(1)/usr/bin/ - $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/examples/.libs/groupwrite $(1)/usr/bin/ - $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/examples/.libs/groupswrite $(1)/usr/bin/ - $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/examples/.libs/grouplisten $(1)/usr/bin/ - $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/examples/.libs/groupread $(1)/usr/bin/ - $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/examples/.libs/groupresponse $(1)/usr/bin/ - $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/examples/.libs/groupreadresponse $(1)/usr/bin/ - $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/examples/.libs/groupsocketlisten $(1)/usr/bin/ - $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/examples/.libs/groupsocketread $(1)/usr/bin/ - $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/examples/.libs/groupsocketwrite $(1)/usr/bin/ - $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/examples/.libs/groupsocketswrite $(1)/usr/bin/ + + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/share/knxd/examples/bin/knxtool $(1)/usr/bin/ + ln -sf knxtool $(1)/usr/bin/knxread + ln -sf knxtool $(1)/usr/bin/knxreadtemp + ln -sf knxtool $(1)/usr/bin/knxwrite + ln -sf knxtool $(1)/usr/bin/knxlog + ln -sf knxtool $(1)/usr/bin/knxon + ln -sf knxtool $(1)/usr/bin/knxoff + ln -sf knxtool $(1)/usr/bin/knxif + ln -sf knxtool $(1)/usr/bin/knxswrite + ln -sf knxtool $(1)/usr/bin/knxbool + ln -sf knxtool $(1)/usr/bin/knxdimup + + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/share/knxd/examples/bin/busmonitor1 $(1)/usr/bin/ + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/share/knxd/examples/bin/busmonitor2 $(1)/usr/bin/ + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/share/knxd/examples/bin/busmonitor3 $(1)/usr/bin/ + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/share/knxd/examples/bin/eibread-cgi $(1)/usr/bin/ + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/share/knxd/examples/bin/eibwrite-cgi $(1)/usr/bin/ + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/share/knxd/examples/bin/vbusmonitor1 $(1)/usr/bin/ + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/share/knxd/examples/bin/vbusmonitor2 $(1)/usr/bin/ + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/share/knxd/examples/bin/vbusmonitor3 $(1)/usr/bin/ + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/share/knxd/examples/bin/groupwrite $(1)/usr/bin/ + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/share/knxd/examples/bin/groupswrite $(1)/usr/bin/ + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/share/knxd/examples/bin/grouplisten $(1)/usr/bin/ + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/share/knxd/examples/bin/groupread $(1)/usr/bin/ + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/share/knxd/examples/bin/groupresponse $(1)/usr/bin/ + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/share/knxd/examples/bin/groupreadresponse $(1)/usr/bin/ + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/share/knxd/examples/bin/groupsocketlisten $(1)/usr/bin/ + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/share/knxd/examples/bin/groupsocketread $(1)/usr/bin/ + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/share/knxd/examples/bin/groupsocketwrite $(1)/usr/bin/ + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/share/knxd/examples/bin/groupsocketswrite $(1)/usr/bin/ endef $(eval $(call BuildPackage,knxd)) +$(eval $(call BuildPackage,libeibclient)) $(eval $(call BuildPackage,knxd-tools)) diff --git a/net/knxd/files/knxd.init b/net/knxd/files/knxd.init index 31e909169..026e4cf6a 100644 --- a/net/knxd/files/knxd.init +++ b/net/knxd/files/knxd.init @@ -6,8 +6,6 @@ STOP=20 NAME=knxd PROG=/usr/bin/$NAME -. /lib/functions.sh - start() { local options url config_load "$NAME" @@ -19,4 +17,3 @@ start() { stop() { service_stop $PROG } - From 3681f30c78e2db184d344fd28a6dd1e28b4d157a Mon Sep 17 00:00:00 2001 From: Nicolas Thill Date: Sat, 7 Mar 2015 22:57:04 +0100 Subject: [PATCH 072/681] msmtp: use proper configure options Some configure options were renamed during last upstream update: use them! Signed-off-by: Nicolas Thill --- mail/msmtp/Makefile | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/mail/msmtp/Makefile b/mail/msmtp/Makefile index 1a7e21480..ae88d5473 100644 --- a/mail/msmtp/Makefile +++ b/mail/msmtp/Makefile @@ -85,19 +85,19 @@ CONFIGURE_ARGS += \ --without-libintl-prefix \ --without-libgsasl \ --without-libidn \ - --without-gnome-keyring \ + --without-libsecret \ --without-macosx-keyring \ MAKE_FLAGS := ifeq ($(BUILD_VARIANT),ssl) CONFIGURE_ARGS += \ - --with-ssl=openssl + --with-tls=openssl endif ifeq ($(BUILD_VARIANT),nossl) CONFIGURE_ARGS += \ - --with-ssl=no + --with-tls=no endif define Package/msmtp/install From 0a05c1340cd10ff273593ebb58d775359fc3b234 Mon Sep 17 00:00:00 2001 From: Nicolas Thill Date: Sat, 7 Mar 2015 23:16:37 +0100 Subject: [PATCH 073/681] msmtp: prevent use of IDN support on uClibc Signed-off-by: Nicolas Thill --- mail/msmtp/Makefile | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/mail/msmtp/Makefile b/mail/msmtp/Makefile index ae88d5473..8c91a95b0 100644 --- a/mail/msmtp/Makefile +++ b/mail/msmtp/Makefile @@ -10,7 +10,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=msmtp PKG_VERSION:=1.6.1 -PKG_RELEASE:=2 +PKG_RELEASE:=3 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=@SF/msmtp @@ -88,6 +88,10 @@ CONFIGURE_ARGS += \ --without-libsecret \ --without-macosx-keyring \ +ifneq ($(CONFIG_USE_UCLIBC),) + CONFIGURE_ARGS += --disable-gai-idn +endif + MAKE_FLAGS := ifeq ($(BUILD_VARIANT),ssl) From 09f4d6b549a7ed798042ee2855efcaff80dbba6a Mon Sep 17 00:00:00 2001 From: Nicolas Thill Date: Sat, 7 Mar 2015 23:20:21 +0100 Subject: [PATCH 074/681] gnupg: update to 1.4.19 Signed-off-by: Nicolas Thill --- utils/gnupg/Makefile | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/utils/gnupg/Makefile b/utils/gnupg/Makefile index 0bec41d8b..c96fbc3a6 100644 --- a/utils/gnupg/Makefile +++ b/utils/gnupg/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2006-2014 OpenWrt.org +# Copyright (C) 2006-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -8,13 +8,13 @@ include $(TOPDIR)/rules.mk PKG_NAME:=gnupg -PKG_VERSION:=1.4.18 +PKG_VERSION:=1.4.19 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 PKG_SOURCE_URL:=ftp://ftp.franken.de/pub/crypt/mirror/ftp.gnupg.org/gcrypt/gnupg \ ftp://ftp.gnupg.org/gcrypt/gnupg -PKG_MD5SUM:=54db1be9588b11afbbdd8b82d4ea883a +PKG_MD5SUM:=3af4ab5b3113b3e28d3551ecf9600785 PKG_LICENSE:=GPL-3.0 PKG_LICENSE_FILES:=COPYING From 10ed69026fc4fee52a5069c53b88bd225b6d7a0c Mon Sep 17 00:00:00 2001 From: probonopd Date: Sun, 8 Mar 2015 10:12:52 +0000 Subject: [PATCH 075/681] announce: Update Makefile to 1.0.1 Signed-off-by: Simon Peter --- net/announce/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/net/announce/Makefile b/net/announce/Makefile index d2c17dad1..60d9e63f6 100644 --- a/net/announce/Makefile +++ b/net/announce/Makefile @@ -8,7 +8,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=announce -PKG_VERSION:=1.0 +PKG_VERSION:=1.0.1 PKG_RELEASE:=1 PKG_LICENSE:=BSD-3-Clause PKG_LICENSE_FILES:=src/LICENSE.txt @@ -16,7 +16,7 @@ PKG_MAINTAINER:=Simon Peter PKG_SOURCE_PROTO:=git PKG_SOURCE_URL:=https://github.com/probonopd/announce.git -PKG_SOURCE_VERSION:=70d70f998686199deaa5d62b54688c869e237eef +PKG_SOURCE_VERSION:=1368525c7305ca5bb4134242f332344f5f7e94e3 PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION) PKG_SOURCE:=$(PKG_SOURCE_SUBDIR).tar.gz PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_SOURCE_SUBDIR) From 7b95d7263152255c78bc4c07e6488dc0300f0d95 Mon Sep 17 00:00:00 2001 From: Gergely Kiss Date: Sun, 8 Mar 2015 14:51:28 +0100 Subject: [PATCH 076/681] vala: add glib2 as a build dependency, fixes #702 Signed-off-by: Gergely Kiss --- lang/vala/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lang/vala/Makefile b/lang/vala/Makefile index d3dbc82ff..3a7c23e6a 100644 --- a/lang/vala/Makefile +++ b/lang/vala/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2006-2014 OpenWrt.org +# Copyright (C) 2006-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -16,7 +16,7 @@ PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=@GNOME/vala/0.26/ PKG_MD5SUM:=723a03b822d4cc47abc4019685970a3e -PKG_BUILD_DEPENDS:=glib2/host vala/host +PKG_BUILD_DEPENDS:=glib2 glib2/host vala/host HOST_BUILD_DEPENDS:=glib2/host include $(INCLUDE_DIR)/host-build.mk From b58d21c5ab6e365089171007c6c92f820e61c946 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=81lvaro=20Fern=C3=A1ndez=20Rojas?= Date: Sun, 8 Mar 2015 14:59:03 +0100 Subject: [PATCH 077/681] udpxy: bump PKG_VERSION in order to fix build issues and refresh patches MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Álvaro Fernández Rojas --- net/udpxy/Makefile | 4 ++-- net/udpxy/patches/0001-fix-build-on-Mac-OS-X.patch | 5 ----- 2 files changed, 2 insertions(+), 7 deletions(-) diff --git a/net/udpxy/Makefile b/net/udpxy/Makefile index 6eeca1950..7d94a99f3 100644 --- a/net/udpxy/Makefile +++ b/net/udpxy/Makefile @@ -9,8 +9,8 @@ include $(TOPDIR)/rules.mk PKG_NAME:=udpxy PKG_SOURCE_VERSION:=c045a1e855a8033c5d70ab3e42271ba5636eb520 -PKG_VERSION:=2014-10-27-$(PKG_SOURCE_VERSION) -PKG_RELEASE:=2 +PKG_VERSION:=2015-03-08-$(PKG_SOURCE_VERSION) +PKG_RELEASE:=1 PKG_SOURCE_PROTO:=git PKG_SOURCE_URL:=git://github.com/pcherenkov/udpxy.git diff --git a/net/udpxy/patches/0001-fix-build-on-Mac-OS-X.patch b/net/udpxy/patches/0001-fix-build-on-Mac-OS-X.patch index 594206ca1..24f62e7e9 100644 --- a/net/udpxy/patches/0001-fix-build-on-Mac-OS-X.patch +++ b/net/udpxy/patches/0001-fix-build-on-Mac-OS-X.patch @@ -11,8 +11,6 @@ Signed-off-by: Álvaro Fernández Rojas chipmunk/Makefile | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) -diff --git a/chipmunk/Makefile b/chipmunk/Makefile -index e402128..fd41dbe 100644 --- a/chipmunk/Makefile +++ b/chipmunk/Makefile @@ -32,10 +32,13 @@ DEBUG_ON := -g @@ -30,6 +28,3 @@ index e402128..fd41dbe 100644 BUILDFILE = BUILD BUILDNO := `cat $(BUILDFILE)` --- -2.3.1 - From a63b51fa403b6bb9747812696e9e340c16093690 Mon Sep 17 00:00:00 2001 From: Gergely Kiss Date: Sun, 8 Mar 2015 15:14:30 +0100 Subject: [PATCH 078/681] vala: update to 0.27.1 Signed-off-by: Gergely Kiss --- lang/vala/Makefile | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/lang/vala/Makefile b/lang/vala/Makefile index 3a7c23e6a..ff462a952 100644 --- a/lang/vala/Makefile +++ b/lang/vala/Makefile @@ -8,13 +8,13 @@ include $(TOPDIR)/rules.mk PKG_NAME:=vala -PKG_VERSION:=0.26.1 +PKG_VERSION:=0.27.1 PKG_RELEASE:=1 PKG_LICENSE:=LGPL-2.1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz -PKG_SOURCE_URL:=@GNOME/vala/0.26/ -PKG_MD5SUM:=723a03b822d4cc47abc4019685970a3e +PKG_SOURCE_URL:=@GNOME/vala/0.27/ +PKG_MD5SUM:=27302efb557d4a6bf634eb6444d90be8 PKG_BUILD_DEPENDS:=glib2 glib2/host vala/host HOST_BUILD_DEPENDS:=glib2/host @@ -47,21 +47,21 @@ endef define Build/InstallDev $(INSTALL_DIR) \ - $(1)/usr/share/vala-0.26/vapi \ + $(1)/usr/share/vala-0.28/vapi \ $(1)/usr/lib \ $(1)/usr/share/pkgconfig \ $(1)/usr/bin $(INSTALL_DATA) \ - $(PKG_INSTALL_DIR)/usr/share/vala-0.26/vapi/* \ - $(1)/usr/share/vala-0.26/vapi + $(PKG_INSTALL_DIR)/usr/share/vala-0.28/vapi/* \ + $(1)/usr/share/vala-0.28/vapi $(INSTALL_DATA) \ - $(PKG_INSTALL_DIR)/usr/lib/libvala-0.26.{so*,la} \ + $(PKG_INSTALL_DIR)/usr/lib/libvala-0.28.{so*,la} \ $(1)/usr/lib $(INSTALL_BIN) \ - $(PKG_INSTALL_DIR)/usr/bin/{vala,vala-0.26,valac,valac-0.26,vapicheck,vapicheck-0.26,vapigen,vapigen-0.26,vala-gen-introspect,vala-gen-introspect-0.26} \ + $(PKG_INSTALL_DIR)/usr/bin/{vala,vala-0.28,valac,valac-0.28,vapicheck,vapicheck-0.28,vapigen,vapigen-0.28,vala-gen-introspect,vala-gen-introspect-0.28} \ $(1)/usr/bin $(INSTALL_DATA) \ From ae65b9c7817ffa8d1e2ba0f00fb86ba88124441f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=81lvaro=20Fern=C3=A1ndez=20Rojas?= Date: Sun, 8 Mar 2015 15:26:34 +0100 Subject: [PATCH 079/681] unrar: update to v5.2.6 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Álvaro Fernández Rojas --- utils/unrar/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/utils/unrar/Makefile b/utils/unrar/Makefile index f74f7ad29..dc13abcfe 100644 --- a/utils/unrar/Makefile +++ b/utils/unrar/Makefile @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=unrar -PKG_VERSION:=5.2.5 +PKG_VERSION:=5.2.6 PKG_RELEASE:=1 PKG_SOURCE:=unrarsrc-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://www.rarlab.com/rar -PKG_MD5SUM:=ba69acb6c17fb4829ea7440079001c36 +PKG_MD5SUM:=86736fdc652dcbedddac6ac1dff3115a PKG_MAINTAINER:=Álvaro Fernández Rojas PKG_LICENSE:=UnRAR From 2ac8acaffdb03cbb933bed450a6e9c176c8af118 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=81lvaro=20Fern=C3=A1ndez=20Rojas?= Date: Sun, 8 Mar 2015 15:32:10 +0100 Subject: [PATCH 080/681] pciutils: add libkmod dependency MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Fixes https://github.com/openwrt/packages/issues/1003 Signed-off-by: Álvaro Fernández Rojas --- utils/pciutils/Makefile | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/utils/pciutils/Makefile b/utils/pciutils/Makefile index d3b0765f8..99416051b 100644 --- a/utils/pciutils/Makefile +++ b/utils/pciutils/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2007-2014 OpenWrt.org +# Copyright (C) 2007-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=pciutils PKG_VERSION:=3.3.0 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_USE_MIPS16:=0 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz @@ -29,7 +29,7 @@ define Package/pciutils CATEGORY:=Utilities TITLE:=Linux PCI Utilities URL:=http://mj.ucw.cz/pciutils.shtml - DEPENDS:=+zlib + DEPENDS:=+PACKAGE_libkmod:libkmod +zlib endef define Package/pciutils/description From c8c509bdadbdc5e6007fc5436f94485beb59de19 Mon Sep 17 00:00:00 2001 From: Alexandru Ardelean Date: Sun, 8 Mar 2015 17:55:13 +0200 Subject: [PATCH 081/681] python: add patches to disable runtime lib dirs When cross-compiling, we do not need to add runtime lib dirs. Also, the cross compilers that are used on OpenWRT do not support the '-R' option, which causes build failures. These build failures existed before, but were not noticed, because it fails only on some setups. This is because Python's `setup.py` does a lot of voo-doo automagic that needs handling for some cross-compilation cases. Signed-off-by: Alexandru Ardelean --- ...t-use-dblib_dir-when-cross-compiling.patch | 34 +++++++++++++++++++ ...add-rt-lib-dirs-when-cross-compiling.patch | 15 ++++++++ 2 files changed, 49 insertions(+) create mode 100644 lang/python/patches/009-do-not-use-dblib_dir-when-cross-compiling.patch create mode 100644 lang/python/patches/010-do-not-add-rt-lib-dirs-when-cross-compiling.patch diff --git a/lang/python/patches/009-do-not-use-dblib_dir-when-cross-compiling.patch b/lang/python/patches/009-do-not-use-dblib_dir-when-cross-compiling.patch new file mode 100644 index 000000000..b59809754 --- /dev/null +++ b/lang/python/patches/009-do-not-use-dblib_dir-when-cross-compiling.patch @@ -0,0 +1,34 @@ +diff --git a/setup.py b/setup.py +index 7868b7b..10ec68f 100644 +--- a/setup.py ++++ b/setup.py +@@ -1067,6 +1067,7 @@ class PyBuildExt(build_ext): + if db_setup_debug: print "db lib: ", dblib, "not found" + + except db_found: ++ rt_dblib_dir = None if cross_compiling else dblib_dir + if db_setup_debug: + print "bsddb using BerkeleyDB lib:", db_ver, dblib + print "bsddb lib dir:", dblib_dir, " inc dir:", db_incdir +@@ -1081,7 +1082,7 @@ class PyBuildExt(build_ext): + exts.append(Extension('_bsddb', ['_bsddb.c'], + depends = ['bsddb.h'], + library_dirs=dblib_dir, +- runtime_library_dirs=dblib_dir, ++ runtime_library_dirs=rt_dblib_dir, + include_dirs=db_incs, + libraries=dblibs)) + else: +@@ -1292,10 +1293,11 @@ class PyBuildExt(build_ext): + break + elif cand == "bdb": + if db_incs is not None: ++ rt_dblib_dir = None if cross_compiling else dblib_dir + print "building dbm using bdb" + dbmext = Extension('dbm', ['dbmmodule.c'], + library_dirs=dblib_dir, +- runtime_library_dirs=dblib_dir, ++ runtime_library_dirs=rt_dblib_dir, + include_dirs=db_incs, + define_macros=[ + ('HAVE_BERKDB_H', None), diff --git a/lang/python/patches/010-do-not-add-rt-lib-dirs-when-cross-compiling.patch b/lang/python/patches/010-do-not-add-rt-lib-dirs-when-cross-compiling.patch new file mode 100644 index 000000000..5a106d4e8 --- /dev/null +++ b/lang/python/patches/010-do-not-add-rt-lib-dirs-when-cross-compiling.patch @@ -0,0 +1,15 @@ +diff --git a/setup.py b/setup.py +index 7868b7b..544fa7e 100644 +--- a/setup.py ++++ b/setup.py +@@ -452,8 +452,9 @@ class PyBuildExt(build_ext): + # directly since an inconsistently reproducible issue comes up where + # the environment variable is not set even though the value were passed + # into configure and stored in the Makefile (issue found on OS X 10.3). ++ rt_lib_dirs = [] if cross_compiling else self.compiler.runtime_library_dirs + for env_var, arg_name, dir_list in ( +- ('LDFLAGS', '-R', self.compiler.runtime_library_dirs), ++ ('LDFLAGS', '-R', rt_lib_dirs), + ('LDFLAGS', '-L', self.compiler.library_dirs), + ('CPPFLAGS', '-I', self.compiler.include_dirs)): + env_val = sysconfig.get_config_var(env_var) From fff95cd4f46f11bb1c3141d6d841595b6b2babd5 Mon Sep 17 00:00:00 2001 From: Alexandru Ardelean Date: Sun, 8 Mar 2015 18:10:11 +0200 Subject: [PATCH 082/681] openvswitch: limit kernel package to supported kernel versions Signed-off-by: Alexandru Ardelean --- net/openvswitch/Makefile | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/net/openvswitch/Makefile b/net/openvswitch/Makefile index 97e782e89..3fb6ca893 100644 --- a/net/openvswitch/Makefile +++ b/net/openvswitch/Makefile @@ -95,7 +95,8 @@ define KernelPackage/openvswitch SUBMENU:=Network Support TITLE:=Open vSwitch Kernel Package KCONFIG:=CONFIG_BRIDGE - DEPENDS:=+kmod-stp +kmod-ipv6 +kmod-gre +kmod-lib-crc32c +kmod-vxlan + DEPENDS:=+kmod-stp +kmod-ipv6 +kmod-gre +kmod-lib-crc32c +kmod-vxlan \ + @(LINUX_3_8||LINUX_3_10||LINUX_3_13||LINUX_3_14) FILES:= \ $(PKG_BUILD_DIR)/datapath/linux/openvswitch.$(LINUX_KMOD_SUFFIX) AUTOLOAD:=$(call AutoLoad,21,openvswitch) From 3c5dff963e1be998b26db988b319ec596b80720c Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Sun, 8 Mar 2015 17:34:15 +0100 Subject: [PATCH 083/681] lvm2: bump version Signed-off-by: Daniel Golle --- utils/lvm2/Makefile | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/utils/lvm2/Makefile b/utils/lvm2/Makefile index 803a279fd..7bd096f1a 100644 --- a/utils/lvm2/Makefile +++ b/utils/lvm2/Makefile @@ -9,13 +9,13 @@ include $(TOPDIR)/rules.mk PKG_NAME:=LVM2 -PKG_VERSION:=2.02.116 -PKG_RELEASE:=2 +PKG_VERSION:=2.02.117 +PKG_RELEASE:=1 PKG_LICENSE:=GPL-2.0 LGPL-2.1 PKG_SOURCE:=$(PKG_NAME).$(PKG_VERSION).tgz PKG_SOURCE_URL:=ftp://sources.redhat.com/pub/lvm2 -PKG_MD5SUM:=3a1104e3d1dc4d5e92a40228161cd660 +PKG_MD5SUM:=ab5889dae7924b44ed2444161058a419 PKG_MAINTAINER:=Daniel Golle PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME).$(PKG_VERSION) From 2224d60af4d6be6d0d3ab988513b8e73754e23a2 Mon Sep 17 00:00:00 2001 From: Nicolas Thill Date: Sun, 8 Mar 2015 17:38:31 +0100 Subject: [PATCH 084/681] lttng-tools: fix build failure with libkmod (closes: #1004) Signed-off-by: Nicolas Thill --- devel/lttng-tools/Makefile | 2 ++ 1 file changed, 2 insertions(+) diff --git a/devel/lttng-tools/Makefile b/devel/lttng-tools/Makefile index 99269b325..6c902dfce 100644 --- a/devel/lttng-tools/Makefile +++ b/devel/lttng-tools/Makefile @@ -34,6 +34,8 @@ define Package/lttng-tools DEPENDS:= +lttng-ust +libpopt +libxml2 endef +CONFIGURE_ARGS += --disable-kmod + TARGET_LDFLAGS += -lurcu-bp MAKE_FLAGS += V="$(V)" From d18e118ba5fe1f7d5d7c1284674a4306e174a6c4 Mon Sep 17 00:00:00 2001 From: Nicolas Thill Date: Sun, 8 Mar 2015 17:40:03 +0100 Subject: [PATCH 085/681] pen: update to 0.27.2 Signed-off-by: Nicolas Thill --- net/pen/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/net/pen/Makefile b/net/pen/Makefile index cb597a0ab..74a78a9bf 100644 --- a/net/pen/Makefile +++ b/net/pen/Makefile @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=pen -PKG_VERSION:=0.27.1 +PKG_VERSION:=0.27.2 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://siag.nu/pub/pen/ -PKG_MD5SUM:=652c457266b6ec6a295f4c7895785674 +PKG_MD5SUM:=79014750cc0ea253437b516716932115 PKG_LICENSE:=GPL-2.0+ PKG_LICENSE_FILES:=COPYING From 64fbed7b843a4d55cb560708a4d8168b2916cfcf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=81lvaro=20Fern=C3=A1ndez=20Rojas?= Date: Sun, 8 Mar 2015 19:58:03 +0100 Subject: [PATCH 086/681] pciutils: fix libkmod depedency MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Álvaro Fernández Rojas --- utils/pciutils/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/utils/pciutils/Makefile b/utils/pciutils/Makefile index 99416051b..90deb66a4 100644 --- a/utils/pciutils/Makefile +++ b/utils/pciutils/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=pciutils PKG_VERSION:=3.3.0 -PKG_RELEASE:=2 +PKG_RELEASE:=3 PKG_USE_MIPS16:=0 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz @@ -29,7 +29,7 @@ define Package/pciutils CATEGORY:=Utilities TITLE:=Linux PCI Utilities URL:=http://mj.ucw.cz/pciutils.shtml - DEPENDS:=+PACKAGE_libkmod:libkmod +zlib + DEPENDS:=+libkmod +zlib endef define Package/pciutils/description From 16fe278cf59ee9df6f9c85d97bc841ae6acb50e2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=81lvaro=20Fern=C3=A1ndez=20Rojas?= Date: Sun, 8 Mar 2015 19:58:39 +0100 Subject: [PATCH 087/681] flashrom: update to v0.9.8 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Álvaro Fernández Rojas --- utils/flashrom/Makefile | 8 ++++---- utils/flashrom/patches/100-mipsel_fix.patch | 16 ---------------- 2 files changed, 4 insertions(+), 20 deletions(-) delete mode 100755 utils/flashrom/patches/100-mipsel_fix.patch diff --git a/utils/flashrom/Makefile b/utils/flashrom/Makefile index 45e20caf9..23b50438c 100644 --- a/utils/flashrom/Makefile +++ b/utils/flashrom/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2010-2014 OpenWrt.org +# Copyright (C) 2010-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=flashrom -PKG_VERSION:=0.9.7 -PKG_RELEASE:=2 +PKG_VERSION:=0.9.8 +PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 PKG_SOURCE_URL:=http://download.flashrom.org/releases -PKG_MD5SUM:=d239bafa1b46619d851f70f84a5b122a +PKG_MD5SUM:=ac513076b63ab7eb411a7694bb8f6fda PKG_MAINTAINER:=Álvaro Fernández Rojas PKG_LICENSE:=GPL-2.0 diff --git a/utils/flashrom/patches/100-mipsel_fix.patch b/utils/flashrom/patches/100-mipsel_fix.patch deleted file mode 100755 index 3e34aeec4..000000000 --- a/utils/flashrom/patches/100-mipsel_fix.patch +++ /dev/null @@ -1,16 +0,0 @@ -diff -uprN a/internal.c b/internal.c ---- a/internal.c 2014-06-13 16:44:14.263689579 +0200 -+++ b/internal.c 2014-06-13 16:46:04.229020785 +0200 -@@ -337,10 +337,12 @@ int internal_init(void) - init_superio_ite(); - #endif - -+#if defined(__i386__) || defined(__x86_64__) || defined (__arm__) - if (board_flash_enable(board_vendor, board_model, cb_vendor, cb_model)) { - msg_perr("Aborting to be safe.\n"); - return 1; - } -+#endif - - #if defined(__i386__) || defined(__x86_64__) || defined (__mips) - register_par_programmer(&par_programmer_internal, internal_buses_supported); From 3879265ffda3ca27bf13bb53c187b124fe0fb2f9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=81lvaro=20Fern=C3=A1ndez=20Rojas?= Date: Mon, 9 Mar 2015 03:39:57 +0100 Subject: [PATCH 088/681] flashrom: add config options MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Álvaro Fernández Rojas --- utils/flashrom/Config.in | 279 ++++++++++++++++++ utils/flashrom/Makefile | 13 +- utils/flashrom/flashrom.mk | 54 ++++ .../patches/0001-fix_internal_bitbang.patch | 11 + 4 files changed, 355 insertions(+), 2 deletions(-) create mode 100644 utils/flashrom/Config.in create mode 100644 utils/flashrom/flashrom.mk create mode 100644 utils/flashrom/patches/0001-fix_internal_bitbang.patch diff --git a/utils/flashrom/Config.in b/utils/flashrom/Config.in new file mode 100644 index 000000000..552001afc --- /dev/null +++ b/utils/flashrom/Config.in @@ -0,0 +1,279 @@ +menu "Flashrom configuration" + depends on PACKAGE_flashrom + + choice + prompt "Default Programmer" + default DEFPROG_INTERNAL if FLASHROM_PCI + default DEFPROG_LINUX_SPI + + config DEFPROG_INTERNAL + depends on FRPROG_INTERNAL + bool "Internal" + + config DEFPROG_LINUX_SPI + depends on FRPROG_LINUX_SPI + bool "Linux SPI" + + config DEFPROG_SERPROG + depends on FRPROG_SERPROG + bool "Serial" + + config DEFPROG_RAYER_SPI + depends on FRPROG_RAYER_SPI + bool "Rayer SPI" + + config DEFPROG_PONY_SPI + depends on FRPROG_PONY_SPI + bool "Pony SPI" + + config DEFPROG_NIC3COM + depends on FRPROG_NIC3COM + bool "NIC3Com" + + config DEFPROG_GFXNVIDIA + depends on FRPROG_GFXNVIDIA + bool "GFX Nvidia" + + config DEFPROG_SATASII + depends on FRPROG_SATASII + bool "SATASII" + +# config DEFPROG_ATAHPT +# depends on FRPROG_ATAHPT +# bool "Highpoint (HPT) ATA/RAID" + + config DEFPROG_ATAVIA + depends on FRPROG_ATAVIA + bool "ATAVIA" + + config DEFPROG_FT2232_SPI + depends on FRPROG_FT2232_SPI + bool "FT2232 SPI" + + config DEFPROG_USBBLASTER_SPI + depends on FRPROG_USBBLASTER_SPI + bool "USBBlaster SPI" + +# config DEFPROG_MSTARDDC_SPI +# depends on FRPROG_MSTARDDC_SPI +# bool "MSTAR DDC SPI" + + config DEFPROG_PICKIT2_SPI + depends on FRPROG_PICKIT2_SPI + bool "PICkit2 SPI" + + config DEFPROG_DUMMY + depends on FRPROG_DUMMY + bool "Dummy" + + config DEFPROG_DRKAISER + depends on FRPROG_DRKAISER + bool "Dr. Kaiser" + + config DEFPROG_NICREALTEK + depends on FRPROG_NICREALTEK + bool "Realtek NICs" + +# config DEFPROG_NICNATSEMI +# depends on FRPROG_NICNATSEMI +# bool "National Semiconductor NICs" + + config DEFPROG_NICINTEL + depends on FRPROG_NICINTEL + bool "Intel NICs" + + config DEFPROG_NICINTEL_SPI + depends on FRPROG_NICINTEL_SPI + bool "Intel NICs SPI" + + config DEFPROG_NICINTEL_EEPROM + depends on FRPROG_NICINTEL_EEPROM + bool "Intel NICs EEPROM" + + config DEFPROG_OGP_SPI + depends on FRPROG_OGP_SPI + bool "OGP SPI" + + config DEFPROG_BUSPIRATE_SPI + depends on FRPROG_BUSPIRATE_SPI + bool "SPI BUS Pirate" + +# config DEFPROG_DEDIPROG +# depends on FRPROG_DEDIPROG +# bool "Dediprog SF100" + + config DEFPROG_SATAMV + depends on FRPROG_SATAMV + bool "Marvell SATA" + + config DEFPROG_IT8212 + depends on FRPROG_IT8212 + bool "ITE IT8212F PATA" + endchoice + + + menu "Misc Programmers" + config FRPROG_LINUX_SPI + bool "Linux SPI" + default y + +# config FRPROG_MSTARDDC_SPI +# bool "MSTAR DDC" +# default n + + config FRPROG_DUMMY + bool "Dummy" + default y + endmenu + + + config FLASHROM_FTDI + bool "FTDI Support" + default y + + menu "FTDI Programmers" + depends on FLASHROM_FTDI + + config FRPROG_FT2232_SPI + depends on FLASHROM_FTDI + bool "FT2232 SPI" + default y + + config FRPROG_USBBLASTER_SPI + depends on FLASHROM_FTDI + bool "USBBlaster SPI" + default y + endmenu + + + config FLASHROM_PCI + bool "PCI Support" + default y if (TARGET_x86||TARGET_x86_64) + + menu "PCI Programmers" + depends on FLASHROM_PCI + + config FRPROG_INTERNAL + depends on FLASHROM_PCI + bool "Internal" + default y + + config FRPROG_RAYER_SPI + depends on FLASHROM_PCI + bool "Rayer SPI" + default y + + config FRPROG_NIC3COM + depends on FLASHROM_PCI + bool "NIC3Com" + default y + + config FRPROG_GFXNVIDIA + depends on FLASHROM_PCI + bool "GFX Nvidia" + default y + + config FRPROG_SATASII + depends on FLASHROM_PCI + bool "SATASII" + default y + +# config FRPROG_ATAHPT +# depends on FLASHROM_PCI +# bool "Highpoint (HPT) ATA/RAID" +# default n + + config FRPROG_ATAVIA + depends on FLASHROM_PCI + bool "ATAVIA" + default y + + config FRPROG_IT8212 + depends on FLASHROM_PCI + bool "ITE IT8212F PATA" + default y + + config FRPROG_DRKAISER + depends on FLASHROM_PCI + bool "Dr. Kaiser" + default y + + config FRPROG_NICREALTEK + depends on FLASHROM_PCI + bool "Realtek NICs" + default y + +# config FRPROG_NICNATSEMI +# depends on FLASHROM_PCI +# bool "National Semiconductor NICs" +# default n + + config FRPROG_NICINTEL + depends on FLASHROM_PCI + bool "Intel NICs" + default y + + config FRPROG_NICINTEL_SPI + depends on FLASHROM_PCI + bool "Intel NICs SPI" + default y + + config FRPROG_NICINTEL_EEPROM + depends on FLASHROM_PCI + bool "Intel NICs EEPROM" + default y + + config FRPROG_OGP_SPI + depends on FLASHROM_PCI + bool "OGP SPI" + default y + + config FRPROG_SATAMV + depends on FLASHROM_PCI + bool "Marvell SATA" + default y + endmenu + + + config FLASHROM_SERIAL + bool "Serial Support" + default y + + menu "Serial Programmers" + depends on FLASHROM_SERIAL + + config FRPROG_SERPROG + depends on FLASHROM_SERIAL + bool "Serial" + default y + + config FRPROG_PONY_SPI + depends on FLASHROM_SERIAL + bool "Pony SPI" + default y + + config FRPROG_BUSPIRATE_SPI + depends on FLASHROM_SERIAL + bool "SPI BUS Pirate" + default y + endmenu + + + config FLASHROM_USB + bool "USB Support" + default y + + menu "USB Programmers" + depends on FLASHROM_USB + + config FRPROG_PICKIT2_SPI + depends on FLASHROM_USB + bool "PICkit2 SPI" + default y + +# config FRPROG_DEDIPROG +# depends on FLASHROM_USB +# bool "Dediprog SF100" +# default n + endmenu +endmenu diff --git a/utils/flashrom/Makefile b/utils/flashrom/Makefile index 23b50438c..702e63bed 100644 --- a/utils/flashrom/Makefile +++ b/utils/flashrom/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=flashrom PKG_VERSION:=0.9.8 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 PKG_SOURCE_URL:=http://download.flashrom.org/releases @@ -22,13 +22,22 @@ PKG_LICENSE_FILES:=COPYING PKG_INSTALL:=1 include $(INCLUDE_DIR)/package.mk +include flashrom.mk define Package/flashrom SECTION:=utils CATEGORY:=Utilities TITLE:=FlashROM Utility URL:=http://www.flashrom.org/ - DEPENDS:=+zlib +pciutils +(TARGET_x86||TARGET_x86_64):dmidecode +libftdi + DEPENDS:=\ + +(TARGET_x86||TARGET_x86_64):dmidecode \ + +FLASHROM_FTDI:libftdi \ + +FLASHROM_PCI:pciutils \ + +FLASHROM_USB:libusb-compat +endef + +define Package/flashrom/config + source "$(SOURCE)/Config.in" endef define Package/flashrom/description diff --git a/utils/flashrom/flashrom.mk b/utils/flashrom/flashrom.mk new file mode 100644 index 000000000..14fc5d88d --- /dev/null +++ b/utils/flashrom/flashrom.mk @@ -0,0 +1,54 @@ +# Flashrom configuration +define DefineConfig + ifeq ($(CONFIG_FLASHROM_$(1)),) + MAKE_FLAGS += NEED_$(1)=0 + endif +endef +define DefineProgrammer + ifeq ($(CONFIG_FRPROG_$(1)),) + MAKE_FLAGS += CONFIG_$(1)=0 + endif + ifneq ($(CONFIG_DEFPROG_$(1)),) + MAKE_FLAGS += CONFIG_DEFAULT_PROGRAMMER=CONFIG_$(1) + endif +endef + +# Misc +$(eval $(call DefineProgrammer,LINUX_SPI)) +#$(eval $(call DefineProgrammer,MSTARDDC_SPI)) +$(eval $(call DefineProgrammer,DUMMY)) + +# FTDI +$(eval $(call DefineConfig,FTDI)) +$(eval $(call DefineProgrammer,FT2232_SPI)) +$(eval $(call DefineProgrammer,USBBLASTER_SPI)) + +# PCI +$(eval $(call DefineConfig,PCI)) +$(eval $(call DefineProgrammer,INTERNAL)) +$(eval $(call DefineProgrammer,RAYER_SPI)) +$(eval $(call DefineProgrammer,NIC3COM)) +$(eval $(call DefineProgrammer,GFXNVIDIA)) +$(eval $(call DefineProgrammer,SATASII)) +#$(eval $(call DefineProgrammer,ATAHPT)) +$(eval $(call DefineProgrammer,ATAVIA)) +$(eval $(call DefineProgrammer,IT8212)) +$(eval $(call DefineProgrammer,DRKAISER)) +$(eval $(call DefineProgrammer,NICREALTEK)) +#$(eval $(call DefineProgrammer,NICNATSEMI)) +$(eval $(call DefineProgrammer,NICINTEL)) +$(eval $(call DefineProgrammer,NICINTEL_SPI)) +$(eval $(call DefineProgrammer,NICINTEL_EEPROM)) +$(eval $(call DefineProgrammer,OGP_SPI)) +$(eval $(call DefineProgrammer,SATAMV)) + +# Serial +$(eval $(call DefineConfig,SERIAL)) +$(eval $(call DefineProgrammer,SERPROG)) +$(eval $(call DefineProgrammer,PONY_SPI)) +$(eval $(call DefineProgrammer,BUSPIRATE_SPI)) + +# USB +$(eval $(call DefineConfig,USB)) +$(eval $(call DefineProgrammer,PICKIT2_SPI)) +#$(eval $(call DefineProgrammer,DEDIPROG)) diff --git a/utils/flashrom/patches/0001-fix_internal_bitbang.patch b/utils/flashrom/patches/0001-fix_internal_bitbang.patch new file mode 100644 index 000000000..376d6b285 --- /dev/null +++ b/utils/flashrom/patches/0001-fix_internal_bitbang.patch @@ -0,0 +1,11 @@ +--- a/programmer.h ++++ b/programmer.h +@@ -557,7 +557,7 @@ enum spi_controller { + #if CONFIG_DEDIPROG == 1 + SPI_CONTROLLER_DEDIPROG, + #endif +-#if CONFIG_OGP_SPI == 1 || CONFIG_NICINTEL_SPI == 1 || CONFIG_RAYER_SPI == 1 || CONFIG_PONY_SPI == 1 || (CONFIG_INTERNAL == 1 && (defined(__i386__) || defined(__x86_64__))) ++#if CONFIG_OGP_SPI == 1 || CONFIG_NICINTEL_SPI == 1 || CONFIG_RAYER_SPI == 1 || CONFIG_PONY_SPI == 1 || CONFIG_INTERNAL == 1 + SPI_CONTROLLER_BITBANG, + #endif + #if CONFIG_LINUX_SPI == 1 From 1f3925de20604aa65053753401ee441391d6aa2e Mon Sep 17 00:00:00 2001 From: Nicolas Thill Date: Mon, 9 Mar 2015 03:38:58 +0100 Subject: [PATCH 089/681] kmod: fix pkgconfig file The pkgconfig file is generated at make-time, leading to absolute /usr/include & /usr/lib search paths. The patch lets autoconf handle pkgconfig file subst, like other packages do. Signed-off-by: Nicolas Thill --- .../kmod/patches/001-fix_pkgconfig_file.patch | 22 +++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 utils/kmod/patches/001-fix_pkgconfig_file.patch diff --git a/utils/kmod/patches/001-fix_pkgconfig_file.patch b/utils/kmod/patches/001-fix_pkgconfig_file.patch new file mode 100644 index 000000000..1891078d7 --- /dev/null +++ b/utils/kmod/patches/001-fix_pkgconfig_file.patch @@ -0,0 +1,22 @@ +--- a/Makefile.am ++++ b/Makefile.am +@@ -35,9 +35,6 @@ SED_PROCESS = \ + -e 's,@zlib_LIBS\@,${zlib_LIBS},g' \ + < $< > $@ || rm $@ + +-%.pc: %.pc.in Makefile +- $(SED_PROCESS) +- + LIBKMOD_CURRENT=4 + LIBKMOD_REVISION=9 + LIBKMOD_AGE=2 +--- a/configure.ac ++++ b/configure.ac +@@ -221,6 +221,7 @@ AC_CONFIG_HEADERS(config.h) + AC_CONFIG_FILES([ + Makefile + man/Makefile ++ libkmod/libkmod.pc + libkmod/docs/Makefile + libkmod/docs/version.xml + ]) From 7e6803137203e649e13f26a44003ffb8f88c1a53 Mon Sep 17 00:00:00 2001 From: Steven Barth Date: Mon, 9 Mar 2015 13:40:29 +0100 Subject: [PATCH 090/681] strongswan: fix IKEv1 support Signed-off-by: Steven Barth --- net/strongswan/Makefile | 2 +- net/strongswan/patches/001-ikev1-fix.patch | 48 ++++++++++++++++++++++ 2 files changed, 49 insertions(+), 1 deletion(-) create mode 100644 net/strongswan/patches/001-ikev1-fix.patch diff --git a/net/strongswan/Makefile b/net/strongswan/Makefile index 85816dd37..e4481c9ea 100644 --- a/net/strongswan/Makefile +++ b/net/strongswan/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=strongswan PKG_VERSION:=5.2.2 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 PKG_SOURCE_URL:=http://download.strongswan.org/ http://download2.strongswan.org/ diff --git a/net/strongswan/patches/001-ikev1-fix.patch b/net/strongswan/patches/001-ikev1-fix.patch new file mode 100644 index 000000000..a48b0acdd --- /dev/null +++ b/net/strongswan/patches/001-ikev1-fix.patch @@ -0,0 +1,48 @@ +From 627f870ee6256b4b2e36e9ca768fc578febbccef Mon Sep 17 00:00:00 2001 +From: Tobias Brunner +Date: Tue, 10 Feb 2015 19:03:44 +0100 +Subject: [PATCH] ikev1: Set protocol ID and SPIs in INITIAL-CONTACT + notification payloads + +The payload we sent before is not compliant with RFC 2407 and thus some +peers might abort negotiation (e.g. with an INVALID-PROTOCOL-ID error). +--- + src/libcharon/sa/ikev1/tasks/main_mode.c | 15 +++++++++++++-- + 1 file changed, 13 insertions(+), 2 deletions(-) + +diff --git a/src/libcharon/sa/ikev1/tasks/main_mode.c b/src/libcharon/sa/ikev1/tasks/main_mode.c +index 5065e70ffc25..3ea4a2a85e4f 100644 +--- a/src/libcharon/sa/ikev1/tasks/main_mode.c ++++ b/src/libcharon/sa/ikev1/tasks/main_mode.c +@@ -213,6 +213,10 @@ static void add_initial_contact(private_main_mode_t *this, message_t *message, + { + identification_t *idr; + host_t *host; ++ notify_payload_t *notify; ++ ike_sa_id_t *ike_sa_id; ++ u_int64_t spi_i, spi_r; ++ chunk_t spi; + + idr = this->ph1->get_id(this->ph1, this->peer_cfg, FALSE); + if (idr && !idr->contains_wildcards(idr)) +@@ -224,8 +228,15 @@ static void add_initial_contact(private_main_mode_t *this, message_t *message, + if (!charon->ike_sa_manager->has_contact(charon->ike_sa_manager, + idi, idr, host->get_family(host))) + { +- message->add_notify(message, FALSE, INITIAL_CONTACT_IKEV1, +- chunk_empty); ++ notify = notify_payload_create_from_protocol_and_type( ++ PLV1_NOTIFY, PROTO_IKE, INITIAL_CONTACT_IKEV1); ++ ike_sa_id = this->ike_sa->get_id(this->ike_sa); ++ spi_i = ike_sa_id->get_initiator_spi(ike_sa_id); ++ spi_r = ike_sa_id->get_responder_spi(ike_sa_id); ++ spi = chunk_cata("cc", chunk_from_thing(spi_i), ++ chunk_from_thing(spi_r)); ++ notify->set_spi_data(notify, spi); ++ message->add_payload(message, (payload_t*)notify); + } + } + } +-- +1.9.1 + From ac311e98015449c35502f10fc417970794996be4 Mon Sep 17 00:00:00 2001 From: Alexandru Ardelean Date: Mon, 9 Mar 2015 14:20:37 +0200 Subject: [PATCH 091/681] python: remove PyPackage rules for python package Calling `PyPackage` will install some default install rules for python packages that are not required for the `python` package specifically are not required. That will lead to some conflicts with `python-light` because the `/usr/lib/python2.7/site-packages` folder (+contents) will be available in both packages. Signed-off-by: Alexandru Ardelean --- lang/python/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lang/python/Makefile b/lang/python/Makefile index 9cf476ef3..006ad64a6 100644 --- a/lang/python/Makefile +++ b/lang/python/Makefile @@ -241,7 +241,7 @@ $(foreach package, $(PYTHON_PACKAGES), \ $(eval $(call PyPackage,python-base)) $(eval $(call PyPackage,python-light)) -$(eval $(call PyPackage,python)) +#$(eval $(call PyPackage,python)) $(eval $(call BuildPackage,python-base)) $(eval $(call BuildPackage,python-light)) From 94e7fbdda1c4ea2b09128428d373c6fa0f14b76c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=81lvaro=20Fern=C3=A1ndez=20Rojas?= Date: Mon, 9 Mar 2015 19:57:57 +0100 Subject: [PATCH 092/681] tar: import from oldpackages and upgrade to 1.28 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Álvaro Fernández Rojas --- utils/tar/Makefile | 64 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 64 insertions(+) create mode 100644 utils/tar/Makefile diff --git a/utils/tar/Makefile b/utils/tar/Makefile new file mode 100644 index 000000000..ae04f615b --- /dev/null +++ b/utils/tar/Makefile @@ -0,0 +1,64 @@ +# +# Copyright (C) 2008-2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=tar +PKG_VERSION:=1.28 +PKG_RELEASE:=1 + +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 +PKG_SOURCE_URL:=@GNU/$(PKG_NAME) +PKG_MD5SUM:=8f32b2bc1ed7ddf4cf4e4a39711341b0 +PKG_MAINTAINER:=Álvaro Fernández Rojas + +PKG_LICENSE:=GPL-3.0 +PKG_LICENSE_FILES:=COPYING + +PKG_INSTALL:=1 + +include $(INCLUDE_DIR)/package.mk + +define Package/tar + SECTION:=utils + CATEGORY:=Utilities + DEPENDS:=+bzip2 + TITLE:=GNU tar + URL:=http://www.gnu.org/software/tar/ +endef + +define Package/tar/description + Tar is a program for packaging a set of files as a + single archive in tar format. +endef + +define Package/tar/postinst +#!/bin/sh +if [ -e $${IPKG_INSTROOT}/bin/tar ]; then + rm -r $${IPKG_INSTROOT}/bin/tar; +fi +ln -sf /usr/bin/tar $${IPKG_INSTROOT}/bin/tar +endef + +define Package/tar/postrm +#!/bin/sh +rm $${IPKG_INSTROOT}/bin/tar +ln -s busybox $${IPKG_INSTROOT}/bin/tar +$${IPKG_INSTROOT}/bin/tar 2>&1 | grep 'applet not found' > /dev/null 2>&1 && rm $${IPKG_INSTROOT}/bin/tar +exit 0 +endef + +MAKE_FLAGS += \ + CFLAGS="$(TARGET_CFLAGS)" \ + LDFLAGS="$(TARGET_LDLAGS)" + +define Package/tar/install + $(INSTALL_DIR) $(1)/usr/bin/ + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/$(PKG_NAME) $(1)/usr/bin/ +endef + +$(eval $(call BuildPackage,tar)) From 2eaff113bd511f7def4d077465132163a37e8b53 Mon Sep 17 00:00:00 2001 From: Aedan Renner Date: Mon, 9 Mar 2015 15:53:57 -0700 Subject: [PATCH 093/681] version updated to 1.4-2 (mwan3 1.6 compatible) new mwan3 1.6 rule options added: -sticky -timeout -ipset --- net/mwan3-luci/Makefile | 4 +-- .../usr/lib/lua/luci/model/cbi/mwan/rule.lua | 33 +++++++++++++++++++ .../lua/luci/model/cbi/mwan/ruleconfig.lua | 13 ++++++++ 3 files changed, 48 insertions(+), 2 deletions(-) diff --git a/net/mwan3-luci/Makefile b/net/mwan3-luci/Makefile index eed234875..6656806b5 100644 --- a/net/mwan3-luci/Makefile +++ b/net/mwan3-luci/Makefile @@ -8,8 +8,8 @@ include $(TOPDIR)/rules.mk PKG_NAME:=luci-app-mwan3 -PKG_VERSION:=1.3 -PKG_RELEASE:=5 +PKG_VERSION:=1.4 +PKG_RELEASE:=2 PKG_MAINTAINER:=Aedan Renner PKG_LICENSE:=GPLv2 diff --git a/net/mwan3-luci/files/usr/lib/lua/luci/model/cbi/mwan/rule.lua b/net/mwan3-luci/files/usr/lib/lua/luci/model/cbi/mwan/rule.lua index bf524d1df..cbd8bdd03 100644 --- a/net/mwan3-luci/files/usr/lib/lua/luci/model/cbi/mwan/rule.lua +++ b/net/mwan3-luci/files/usr/lib/lua/luci/model/cbi/mwan/rule.lua @@ -88,6 +88,39 @@ proto = mwan_rule:option(DummyValue, "proto", translate("Protocol")) return self.map:get(s, "proto") or "all" end +sticky = mwan_rule:option(DummyValue, "sticky", translate("Sticky")) + sticky.rawhtml = true + function sticky.cfgvalue(self, s) + if self.map:get(s, "sticky") == "1" then + stickied = 1 + return "Yes" + else + stickied = nil + return "No" + end + end + +timeout = mwan_rule:option(DummyValue, "timeout", translate("Sticky timeout")) + timeout.rawhtml = true + function timeout.cfgvalue(self, s) + if stickied then + local timeoutValue = self.map:get(s, "timeout") + if timeoutValue then + return timeoutValue .. "s" + else + return "600s" + end + else + return "—" + end + end + +ipset = mwan_rule:option(DummyValue, "ipset", translate("IPset")) + ipset.rawhtml = true + function ipset.cfgvalue(self, s) + return self.map:get(s, "ipset") or "—" + end + use_policy = mwan_rule:option(DummyValue, "use_policy", translate("Policy assigned")) use_policy.rawhtml = true function use_policy.cfgvalue(self, s) diff --git a/net/mwan3-luci/files/usr/lib/lua/luci/model/cbi/mwan/ruleconfig.lua b/net/mwan3-luci/files/usr/lib/lua/luci/model/cbi/mwan/ruleconfig.lua index 831ab35b9..d880a72e2 100644 --- a/net/mwan3-luci/files/usr/lib/lua/luci/model/cbi/mwan/ruleconfig.lua +++ b/net/mwan3-luci/files/usr/lib/lua/luci/model/cbi/mwan/ruleconfig.lua @@ -81,6 +81,19 @@ proto = mwan_rule:option(Value, "proto", translate("Protocol"), proto:value("esp") cbiAddProtocol(proto) +sticky = mwan_rule:option(ListValue, "sticky", translate("Sticky"), + translate("Traffic from the same source IP address that previously matched this rule within the sticky timeout period will use the same WAN interface")) + sticky.default = "0" + sticky:value("1", translate("Yes")) + sticky:value("0", translate("No")) + +timeout = mwan_rule:option(Value, "timeout", translate("Sticky timeout"), + translate("Seconds. Acceptable values: 1-1000000. Defaults to 600 if not set")) + timeout.datatype = "range(1, 1000000)" + +ipset = mwan_rule:option(Value, "ipset", translate("IPset"), + translate("Name of IPset rule. Requires IPset rule in /etc/dnsmasq.conf (eg \"ipset=/youtube.com/youtube\")")) + use_policy = mwan_rule:option(Value, "use_policy", translate("Policy assigned")) cbiAddPolicy(use_policy) use_policy:value("unreachable", translate("unreachable (reject)")) From 4f5b0b6a7470b46f31a1273ae4f57a1a6e5466b8 Mon Sep 17 00:00:00 2001 From: Etienne CHAMPETIER Date: Tue, 10 Mar 2015 22:22:26 +0100 Subject: [PATCH 094/681] sqlite3: update to 3.8.8.3 run tested on ar71xx Signed-off-by: Etienne CHAMPETIER --- libs/sqlite3/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libs/sqlite3/Makefile b/libs/sqlite3/Makefile index 37a4cc760..8eda862fd 100644 --- a/libs/sqlite3/Makefile +++ b/libs/sqlite3/Makefile @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=sqlite -PKG_VERSION:=3080801 +PKG_VERSION:=3080803 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-autoconf-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://www.sqlite.org/2015/ -PKG_MD5SUM:=a6381941ffe8817ba19669ec0c0ede6f +PKG_MD5SUM:=51272e875879ee893e51070b07c33888 PKG_LICENSE:=PUBLICDOMAIN PKG_LICENSE_FILES:= From 1ded28bde9fa93786d5c37b04826721baf130af8 Mon Sep 17 00:00:00 2001 From: Etienne CHAMPETIER Date: Tue, 10 Mar 2015 22:24:56 +0100 Subject: [PATCH 095/681] monit: update to 5.12.1 refresh patches run tested on ar71xx Signed-off-by: Etienne CHAMPETIER --- admin/monit/Makefile | 4 ++-- admin/monit/patches/001-fix-default-piddir.patch | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/admin/monit/Makefile b/admin/monit/Makefile index bb3cfd09a..9d5570f9e 100644 --- a/admin/monit/Makefile +++ b/admin/monit/Makefile @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=monit -PKG_VERSION:=5.11 +PKG_VERSION:=5.12.1 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://mmonit.com/monit/dist -PKG_MD5SUM:=ff00f39d248ed7068932ed82211da9e6 +PKG_MD5SUM:=1ffde79207270925f6f7df787d19100a PKG_LICENSE:=AGPL-3.0 PKG_LICENSE_FILES:=COPYING diff --git a/admin/monit/patches/001-fix-default-piddir.patch b/admin/monit/patches/001-fix-default-piddir.patch index 72163ecb3..13d6029c2 100644 --- a/admin/monit/patches/001-fix-default-piddir.patch +++ b/admin/monit/patches/001-fix-default-piddir.patch @@ -1,6 +1,6 @@ --- a/configure +++ b/configure -@@ -13744,14 +13744,7 @@ fi +@@ -13821,14 +13821,7 @@ fi # Find the right directory to put the root-mode PID file in { $as_echo "$as_me:${as_lineno-$LINENO}: checking pid file location" >&5 $as_echo_n "checking pid file location... " >&6; } From f1c3a03ff6590bf9fe6b5c0b0802f08d4acdce8b Mon Sep 17 00:00:00 2001 From: Etienne CHAMPETIER Date: Tue, 10 Mar 2015 22:27:14 +0100 Subject: [PATCH 096/681] zabbix: update to 2.4.4 run tested on ar71xx Signed-off-by: Etienne CHAMPETIER --- admin/zabbix/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/admin/zabbix/Makefile b/admin/zabbix/Makefile index c3c618cd1..8e084a772 100644 --- a/admin/zabbix/Makefile +++ b/admin/zabbix/Makefile @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=zabbix -PKG_VERSION:=2.4.3 +PKG_VERSION:=2.4.4 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=@SF/zabbix -PKG_MD5SUM:=e8a0699c4e49999a15c63650a2280600 +PKG_MD5SUM:=400a3e2ebec80e2f1fe86d1b32bfd2e1 PKG_LICENSE:=GPL-2.0 PKG_LICENSE_FILES:=COPYING From 8d196b7c4f4d91feb6a06a171c8e0692bc47a3e6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=81lvaro=20Fern=C3=A1ndez=20Rojas?= Date: Tue, 10 Mar 2015 23:46:24 +0100 Subject: [PATCH 097/681] tar: add libacl and libattr dependencies MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Álvaro Fernández Rojas --- utils/tar/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/utils/tar/Makefile b/utils/tar/Makefile index ae04f615b..02d796b32 100644 --- a/utils/tar/Makefile +++ b/utils/tar/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=tar PKG_VERSION:=1.28 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 PKG_SOURCE_URL:=@GNU/$(PKG_NAME) @@ -26,7 +26,7 @@ include $(INCLUDE_DIR)/package.mk define Package/tar SECTION:=utils CATEGORY:=Utilities - DEPENDS:=+bzip2 + DEPENDS:=+bzip2 +libacl +libattr TITLE:=GNU tar URL:=http://www.gnu.org/software/tar/ endef From 704e2f8d89c4093b00dbbe2d1fafff9d222fcf39 Mon Sep 17 00:00:00 2001 From: Steven Barth Date: Wed, 11 Mar 2015 08:56:44 +0100 Subject: [PATCH 098/681] kmod: fixup automadness Signed-off-by: Steven Barth --- utils/kmod/Makefile | 1 + 1 file changed, 1 insertion(+) diff --git a/utils/kmod/Makefile b/utils/kmod/Makefile index a1cc59f63..96769aae5 100644 --- a/utils/kmod/Makefile +++ b/utils/kmod/Makefile @@ -17,6 +17,7 @@ PKG_MD5SUM:=d6f4fef718a50bd88080de6a43bc64d8 PKG_MAINTAINER:=Jeff Waugh PKG_LICENSE:=LGPL-2.1+ PKG_LICENSE_FILES:=COPYING +PKG_FIXUP:=autoreconf PKG_BUILD_PARALLEL:=1 PKG_INSTALL:=1 From 9c5af1f29cac498f0c44a21d8bfcd6fdc2e25a04 Mon Sep 17 00:00:00 2001 From: Alexandru Ardelean Date: Wed, 11 Mar 2015 11:22:12 +0200 Subject: [PATCH 099/681] python: revert previous patch and add a filespec Seems removing the PyPackage rule and/or adding dummy install rule causes some issues inside the build-system, where the libpython2.7.so.1.0 is not seen by packages that depend on python. Even though that libpython2.7.so.1.0 file is installed properly by `python-base`. Signed-off-by: Alexandru Ardelean --- lang/python/Makefile | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/lang/python/Makefile b/lang/python/Makefile index 006ad64a6..e928a58a4 100644 --- a/lang/python/Makefile +++ b/lang/python/Makefile @@ -209,8 +209,8 @@ define PyPackage/python-base/install $(CP) $(PKG_INSTALL_DIR)/usr/lib/libpython$(PYTHON_VERSION).so* $(1)/usr/lib/ endef -# Dummy rule so that the package gets picked up -define Package/python/install +define PyPackage/python/filespec +-|$(PYTHON_PKG_DIR) endef HOST_CFLAGS+= \ @@ -241,7 +241,7 @@ $(foreach package, $(PYTHON_PACKAGES), \ $(eval $(call PyPackage,python-base)) $(eval $(call PyPackage,python-light)) -#$(eval $(call PyPackage,python)) +$(eval $(call PyPackage,python)) $(eval $(call BuildPackage,python-base)) $(eval $(call BuildPackage,python-light)) From b17a973f141cb6f5c1d2f79b3aac9a68aac02679 Mon Sep 17 00:00:00 2001 From: Mantas Pucka Date: Wed, 11 Mar 2015 13:50:54 +0200 Subject: [PATCH 100/681] mjpg-streamer: fix compatibility with new kernels (>=3.16) input_uvc was broken with new kernel update patch source: https://github.com/oliv3r/mjpg-streamer Tested on ar71xx with Logitech C170 Signed-off-by: Mantas Pucka --- multimedia/mjpg-streamer/Makefile | 2 +- ...used-variable-from-struct-v4l2_buffe.patch | 87 +++++++ ...-leaking-data-via-struct-v4l2_buffer.patch | 242 ++++++++++++++++++ 3 files changed, 330 insertions(+), 1 deletion(-) create mode 100644 multimedia/mjpg-streamer/patches/040-Buffer-the-bytesused-variable-from-struct-v4l2_buffe.patch create mode 100644 multimedia/mjpg-streamer/patches/041-Stop-leaking-data-via-struct-v4l2_buffer.patch diff --git a/multimedia/mjpg-streamer/Makefile b/multimedia/mjpg-streamer/Makefile index d2e1537d9..0a297d4e6 100644 --- a/multimedia/mjpg-streamer/Makefile +++ b/multimedia/mjpg-streamer/Makefile @@ -10,7 +10,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=mjpg-streamer PKG_REV:=182 PKG_VERSION:=r$(PKG_REV) -PKG_RELEASE:=5 +PKG_RELEASE:=6 PKG_MAINTAINER:=Roger D PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).1.tar.bz2 diff --git a/multimedia/mjpg-streamer/patches/040-Buffer-the-bytesused-variable-from-struct-v4l2_buffe.patch b/multimedia/mjpg-streamer/patches/040-Buffer-the-bytesused-variable-from-struct-v4l2_buffe.patch new file mode 100644 index 000000000..a228f420c --- /dev/null +++ b/multimedia/mjpg-streamer/patches/040-Buffer-the-bytesused-variable-from-struct-v4l2_buffe.patch @@ -0,0 +1,87 @@ +From 19202b54698b343a0207d7e213448e32b8e58fc3 Mon Sep 17 00:00:00 2001 +From: Olliver Schinagl +Date: Wed, 29 Oct 2014 09:34:41 +0100 +Subject: [PATCH 1/7] Buffer the bytesused variable from struct v4l2_buffer + +Starting with kernel versions 3.16, (DE)Queing of buffers has been fixed +after it was leaking data for ages. in the struct v4l2_buffer is the +bytesused element which indicates the size of the buffer. This however +gets cleared whenever the buffer gets requeued and is thus no longer +valid. + +This patch copies the bytesused variable so it is available until the +next frame captured again. + +Signed-off-by: Olliver Schinagl +--- + plugins/input_uvc/input_uvc.c | 6 +++--- + plugins/input_uvc/v4l2uvc.c | 2 ++ + plugins/input_uvc/v4l2uvc.h | 1 + + 3 files changed, 6 insertions(+), 3 deletions(-) + +diff --git a/plugins/input_uvc/input_uvc.c b/plugins/input_uvc/input_uvc.c +index e6c74fd..64f66cb 100644 +--- a/plugins/input_uvc/input_uvc.c ++++ b/plugins/input_uvc/input_uvc.c +@@ -482,7 +482,7 @@ void *cam_thread(void *arg) + exit(EXIT_FAILURE); + } + +- //DBG("received frame of size: %d from plugin: %d\n", pcontext->videoIn->buf.bytesused, pcontext->id); ++ //DBG("received frame of size: %d from plugin: %d\n", pcontext->videoIn->tmpbytesused, pcontext->id); + + /* + * Workaround for broken, corrupted frames: +@@ -491,7 +491,7 @@ void *cam_thread(void *arg) + * For example a VGA (640x480) webcam picture is normally >= 8kByte large, + * corrupted frames are smaller. + */ +- if(pcontext->videoIn->buf.bytesused < minimum_size) { ++ if(pcontext->videoIn->tmpbytesused < minimum_size) { + DBG("dropping too small frame, assuming it as broken\n"); + continue; + } +@@ -529,7 +529,7 @@ void *cam_thread(void *arg) + } else { + #endif + //DBG("copying frame from input: %d\n", (int)pcontext->id); +- pglobal->in[pcontext->id].size = memcpy_picture(pglobal->in[pcontext->id].buf, pcontext->videoIn->tmpbuffer, pcontext->videoIn->buf.bytesused); ++ pglobal->in[pcontext->id].size = memcpy_picture(pglobal->in[pcontext->id].buf, pcontext->videoIn->tmpbuffer, pcontext->videoIn->tmpbytesused); + #ifndef NO_LIBJPEG + } + #endif +diff --git a/plugins/input_uvc/v4l2uvc.c b/plugins/input_uvc/v4l2uvc.c +index c5a5aa4..d11510c 100644 +--- a/plugins/input_uvc/v4l2uvc.c ++++ b/plugins/input_uvc/v4l2uvc.c +@@ -532,6 +532,7 @@ int uvcGrab(struct vdIn *vd) + */ + + memcpy(vd->tmpbuffer, vd->mem[vd->buf.index], vd->buf.bytesused); ++ vd->tmpbytesused = vd->buf.bytesused; + + if(debug) + fprintf(stderr, "bytes in used %d \n", vd->buf.bytesused); +@@ -570,6 +571,7 @@ int close_v4l2(struct vdIn *vd) + if(vd->tmpbuffer) + free(vd->tmpbuffer); + vd->tmpbuffer = NULL; ++ vd->tmpbytesused = 0; + free(vd->framebuffer); + vd->framebuffer = NULL; + free(vd->videodevice); +diff --git a/plugins/input_uvc/v4l2uvc.h b/plugins/input_uvc/v4l2uvc.h +index 022c57e..2c7c8ba 100644 +--- a/plugins/input_uvc/v4l2uvc.h ++++ b/plugins/input_uvc/v4l2uvc.h +@@ -83,6 +83,7 @@ struct vdIn { + struct v4l2_requestbuffers rb; + void *mem[NB_BUFFER]; + unsigned char *tmpbuffer; ++ int tmpbytesused; + unsigned char *framebuffer; + streaming_state streamingState; + int grabmethod; +-- +1.9.1 + diff --git a/multimedia/mjpg-streamer/patches/041-Stop-leaking-data-via-struct-v4l2_buffer.patch b/multimedia/mjpg-streamer/patches/041-Stop-leaking-data-via-struct-v4l2_buffer.patch new file mode 100644 index 000000000..4f45da5d6 --- /dev/null +++ b/multimedia/mjpg-streamer/patches/041-Stop-leaking-data-via-struct-v4l2_buffer.patch @@ -0,0 +1,242 @@ +From 11b28b36a8711b53658e8bbc50435595522f91ba Mon Sep 17 00:00:00 2001 +From: Olliver Schinagl +Date: Wed, 29 Oct 2014 11:21:16 +0100 +Subject: [PATCH 2/7] Stop leaking data via struct v4l2_buffer + +Before the 3.16 kernel, the v4l2_buffer was leaking data and violating +its own spec. Since 3.16 this has been corrected and after calling the +QBUF ioctl, the struct gets cleaned up. + +Right now, input_uvc assumes the buffer is valid at all times. This no +longer being true, this patch removes the v4l2_buffer from the vdIn +struct. Certain values are still needed outside of this buffer however, +the length buffer in the buffer array 'mem' and the timestamp. These are +now stored in the vdIn struct. + +All of this is still somewhat hackish, as a) the processing of the image +should really be done inside the uvcGrab function between the queuing +and dequeing of the buffers (or separate that into 3 functions, deq, q +and process and call them from input_uvc). b) we are still copying the +image using memcpy, which is something we don't really want and defeats +the purpose of using a mmap in the first place. Changing this however +requires some heavier re-architecting and in the end, may still not be avoided. + +More information about this bug and change can be found on the +linux-media mailing list[0] with the title uvcvideo fails on 3.16 and +3.17 kernels. + +[0] http://www.spinics.net/lists/linux-media/msg81515.html + +Signed-off-by: Olliver Schinagl +--- + plugins/input_uvc/input_uvc.c | 6 ++-- + plugins/input_uvc/v4l2uvc.c | 64 +++++++++++++++++++++++-------------------- + plugins/input_uvc/v4l2uvc.h | 4 ++- + 3 files changed, 41 insertions(+), 33 deletions(-) + +diff --git a/plugins/input_uvc/input_uvc.c b/plugins/input_uvc/input_uvc.c +index 64f66cb..64ef56c 100644 +--- a/plugins/input_uvc/input_uvc.c ++++ b/plugins/input_uvc/input_uvc.c +@@ -500,8 +500,8 @@ void *cam_thread(void *arg) + if (pcontext->videoIn->soft_framedrop == 1) { + unsigned long last = pglobal->in[pcontext->id].timestamp.tv_sec * 1000 + + (pglobal->in[pcontext->id].timestamp.tv_usec/1000); // convert to ms +- unsigned long current = pcontext->videoIn->buf.timestamp.tv_sec * 1000 + +- pcontext->videoIn->buf.timestamp.tv_usec/1000; // convert to ms ++ unsigned long current = pcontext->videoIn->tmptimestamp.tv_sec * 1000 + ++ pcontext->videoIn->tmptimestamp.tv_usec/1000; // convert to ms + + // if the requested time did not esplashed skip the frame + if ((current - last) < pcontext->videoIn->frame_period_time) { +@@ -543,7 +543,7 @@ void *cam_thread(void *arg) + #endif + + /* copy this frame's timestamp to user space */ +- pglobal->in[pcontext->id].timestamp = pcontext->videoIn->buf.timestamp; ++ pglobal->in[pcontext->id].timestamp = pcontext->videoIn->tmptimestamp; + + /* signal fresh_frame */ + pthread_cond_broadcast(&pglobal->in[pcontext->id].db_update); +diff --git a/plugins/input_uvc/v4l2uvc.c b/plugins/input_uvc/v4l2uvc.c +index d11510c..7ec5eec 100644 +--- a/plugins/input_uvc/v4l2uvc.c ++++ b/plugins/input_uvc/v4l2uvc.c +@@ -217,6 +217,9 @@ static int init_v4l2(struct vdIn *vd) + { + int i; + int ret = 0; ++ struct v4l2_buffer buf; ++ ++ + if((vd->fd = OPEN_VIDEO(vd->videodevice, O_RDWR)) == -1) { + perror("ERROR opening V4L interface"); + DBG("errno: %d", errno); +@@ -375,26 +378,27 @@ static int init_v4l2(struct vdIn *vd) + * map the buffers + */ + for(i = 0; i < NB_BUFFER; i++) { +- memset(&vd->buf, 0, sizeof(struct v4l2_buffer)); +- vd->buf.index = i; +- vd->buf.type = V4L2_BUF_TYPE_VIDEO_CAPTURE; +- vd->buf.memory = V4L2_MEMORY_MMAP; +- ret = xioctl(vd->fd, VIDIOC_QUERYBUF, &vd->buf); ++ memset(&buf, 0, sizeof(struct v4l2_buffer)); ++ buf.index = i; ++ buf.type = V4L2_BUF_TYPE_VIDEO_CAPTURE; ++ buf.memory = V4L2_MEMORY_MMAP; ++ ret = xioctl(vd->fd, VIDIOC_QUERYBUF, &buf); + if(ret < 0) { + perror("Unable to query buffer"); + goto fatal; + } + + if(debug) +- fprintf(stderr, "length: %u offset: %u\n", vd->buf.length, vd->buf.m.offset); ++ fprintf(stderr, "length: %u offset: %u\n", buf.length, buf.m.offset); + + vd->mem[i] = mmap(0 /* start anywhere */ , +- vd->buf.length, PROT_READ | PROT_WRITE, MAP_SHARED, vd->fd, +- vd->buf.m.offset); ++ buf.length, PROT_READ | PROT_WRITE, MAP_SHARED, vd->fd, ++ buf.m.offset); + if(vd->mem[i] == MAP_FAILED) { + perror("Unable to map buffer"); + goto fatal; + } ++ vd->memlength[i] = buf.length; + if(debug) + fprintf(stderr, "Buffer mapped at address %p.\n", vd->mem[i]); + } +@@ -403,11 +407,11 @@ static int init_v4l2(struct vdIn *vd) + * Queue the buffers. + */ + for(i = 0; i < NB_BUFFER; ++i) { +- memset(&vd->buf, 0, sizeof(struct v4l2_buffer)); +- vd->buf.index = i; +- vd->buf.type = V4L2_BUF_TYPE_VIDEO_CAPTURE; +- vd->buf.memory = V4L2_MEMORY_MMAP; +- ret = xioctl(vd->fd, VIDIOC_QBUF, &vd->buf); ++ memset(&buf, 0, sizeof(struct v4l2_buffer)); ++ buf.index = i; ++ buf.type = V4L2_BUF_TYPE_VIDEO_CAPTURE; ++ buf.memory = V4L2_MEMORY_MMAP; ++ ret = xioctl(vd->fd, VIDIOC_QBUF, &buf); + if(ret < 0) { + perror("Unable to queue buffer"); + goto fatal;; +@@ -499,17 +503,18 @@ int memcpy_picture(unsigned char *out, unsigned char *buf, int size) + int uvcGrab(struct vdIn *vd) + { + #define HEADERFRAME1 0xaf ++ struct v4l2_buffer buf; + int ret; + + if(vd->streamingState == STREAMING_OFF) { + if(video_enable(vd)) + goto err; + } +- memset(&vd->buf, 0, sizeof(struct v4l2_buffer)); +- vd->buf.type = V4L2_BUF_TYPE_VIDEO_CAPTURE; +- vd->buf.memory = V4L2_MEMORY_MMAP; ++ memset(&buf, 0, sizeof(struct v4l2_buffer)); ++ buf.type = V4L2_BUF_TYPE_VIDEO_CAPTURE; ++ buf.memory = V4L2_MEMORY_MMAP; + +- ret = xioctl(vd->fd, VIDIOC_DQBUF, &vd->buf); ++ ret = xioctl(vd->fd, VIDIOC_DQBUF, &buf); + if(ret < 0) { + perror("Unable to dequeue buffer"); + goto err; +@@ -517,33 +522,34 @@ int uvcGrab(struct vdIn *vd) + + switch(vd->formatIn) { + case V4L2_PIX_FMT_MJPEG: +- if(vd->buf.bytesused <= HEADERFRAME1) { ++ if(buf.bytesused <= HEADERFRAME1) { + /* Prevent crash + * on empty image */ + fprintf(stderr, "Ignoring empty buffer ...\n"); + return 0; + } + +- /* memcpy(vd->tmpbuffer, vd->mem[vd->buf.index], vd->buf.bytesused); ++ /* memcpy(vd->tmpbuffer, vd->mem[buf.index], buf.bytesused); + +- memcpy (vd->tmpbuffer, vd->mem[vd->buf.index], HEADERFRAME1); ++ memcpy (vd->tmpbuffer, vd->mem[buf.index], HEADERFRAME1); + memcpy (vd->tmpbuffer + HEADERFRAME1, dht_data, sizeof(dht_data)); +- memcpy (vd->tmpbuffer + HEADERFRAME1 + sizeof(dht_data), vd->mem[vd->buf.index] + HEADERFRAME1, (vd->buf.bytesused - HEADERFRAME1)); ++ memcpy (vd->tmpbuffer + HEADERFRAME1 + sizeof(dht_data), vd->mem[buf.index] + HEADERFRAME1, (buf.bytesused - HEADERFRAME1)); + */ + +- memcpy(vd->tmpbuffer, vd->mem[vd->buf.index], vd->buf.bytesused); +- vd->tmpbytesused = vd->buf.bytesused; ++ memcpy(vd->tmpbuffer, vd->mem[buf.index], buf.bytesused); ++ vd->tmpbytesused = buf.bytesused; ++ vd->tmptimestamp = buf.timestamp; + + if(debug) +- fprintf(stderr, "bytes in used %d \n", vd->buf.bytesused); ++ fprintf(stderr, "bytes in used %d \n", buf.bytesused); + break; + case V4L2_PIX_FMT_RGB565: + case V4L2_PIX_FMT_YUYV: + case V4L2_PIX_FMT_RGB24: +- if(vd->buf.bytesused > vd->framesizeIn) +- memcpy(vd->framebuffer, vd->mem[vd->buf.index], (size_t) vd->framesizeIn); ++ if(buf.bytesused > vd->framesizeIn) ++ memcpy(vd->framebuffer, vd->mem[buf.index], (size_t) vd->framesizeIn); + else +- memcpy(vd->framebuffer, vd->mem[vd->buf.index], (size_t) vd->buf.bytesused); ++ memcpy(vd->framebuffer, vd->mem[buf.index], (size_t) buf.bytesused); + break; + + default: +@@ -551,7 +557,7 @@ int uvcGrab(struct vdIn *vd) + break; + } + +- ret = xioctl(vd->fd, VIDIOC_QBUF, &vd->buf); ++ ret = xioctl(vd->fd, VIDIOC_QBUF, &buf); + if(ret < 0) { + perror("Unable to requeue buffer"); + goto err; +@@ -947,7 +953,7 @@ int setResolution(struct vdIn *vd, int width, int height) + DBG("Unmap buffers\n"); + int i; + for(i = 0; i < NB_BUFFER; i++) +- munmap(vd->mem[i], vd->buf.length); ++ munmap(vd->mem[i], vd->memlength[i]); + + if(CLOSE_VIDEO(vd->fd) == 0) { + DBG("Device closed successfully\n"); +diff --git a/plugins/input_uvc/v4l2uvc.h b/plugins/input_uvc/v4l2uvc.h +index 2c7c8ba..e625957 100644 +--- a/plugins/input_uvc/v4l2uvc.h ++++ b/plugins/input_uvc/v4l2uvc.h +@@ -35,6 +35,7 @@ + #include + #include + #include ++#include + + #include /* for videodev2.h */ + #include +@@ -79,11 +80,12 @@ struct vdIn { + char *pictName; + struct v4l2_capability cap; + struct v4l2_format fmt; +- struct v4l2_buffer buf; + struct v4l2_requestbuffers rb; + void *mem[NB_BUFFER]; ++ int memlength[NB_BUFFER]; + unsigned char *tmpbuffer; + int tmpbytesused; ++ struct timeval tmptimestamp; + unsigned char *framebuffer; + streaming_state streamingState; + int grabmethod; +-- +1.9.1 + From 84f3028036e710d304d3bcecffdb8ec552749317 Mon Sep 17 00:00:00 2001 From: Mantas Pucka Date: Wed, 11 Mar 2015 14:23:35 +0200 Subject: [PATCH 101/681] mjpg-streamer: fix YUV capture mode Update to r182-experimental (071481e626b2ceef94) broke YUV capture mode in input_uvc. This patch fixes it. Tested on ar71xx with Logitech C170 Signed-off-by: Mantas Pucka --- .../patches/050-fix-yuv-capture.patch | 58 +++++++++++++++++++ 1 file changed, 58 insertions(+) create mode 100644 multimedia/mjpg-streamer/patches/050-fix-yuv-capture.patch diff --git a/multimedia/mjpg-streamer/patches/050-fix-yuv-capture.patch b/multimedia/mjpg-streamer/patches/050-fix-yuv-capture.patch new file mode 100644 index 000000000..0c4d27a60 --- /dev/null +++ b/multimedia/mjpg-streamer/patches/050-fix-yuv-capture.patch @@ -0,0 +1,58 @@ +Binary files a/ipkg-ar71xx/mjpg-streamer/usr/lib/input_uvc.so and b/ipkg-ar71xx/mjpg-streamer/usr/lib/input_uvc.so differ +diff -ur a/plugins/input_uvc/input_uvc.c b/plugins/input_uvc/input_uvc.c +--- a/plugins/input_uvc/input_uvc.c 2015-03-02 09:14:05.000000000 +0200 ++++ b/plugins/input_uvc/input_uvc.c 2015-03-02 09:18:22.000000000 +0200 +@@ -311,6 +311,10 @@ + } + memset(cams[id].videoIn, 0, sizeof(struct vdIn)); + ++ /* Non-MJPEG formats seem to fail with unlimited FPS */ ++ if (format != V4L2_PIX_FMT_MJPEG && fps == -1) ++ fps = 15; ++ + /* display the parsed values */ + IPRINT("Using V4L2 device.: %s\n", dev); + IPRINT("Desired Resolution: %i x %i\n", width, height); +diff -ur a/plugins/input_uvc/jpeg_utils.c b/plugins/input_uvc/jpeg_utils.c +--- a/plugins/input_uvc/jpeg_utils.c 2015-03-02 09:17:02.000000000 +0300 ++++ b/plugins/input_uvc/jpeg_utils.c 2015-03-02 09:25:18.000000000 +0200 +@@ -198,7 +198,7 @@ + } + + row_pointer = (JSAMPROW*)line_buffer; +- jpeg_write_scanlines(&cinfo, row_pointer, 1); ++ jpeg_write_scanlines(&cinfo, &row_pointer, 1); + } + } else if (vd->formatIn == V4L2_PIX_FMT_RGB565) { + while(cinfo.next_scanline < vd->height) { +@@ -220,7 +220,7 @@ + } + + row_pointer = (JSAMPROW*)line_buffer; +- jpeg_write_scanlines(&cinfo, row_pointer, 1); ++ jpeg_write_scanlines(&cinfo, &row_pointer, 1); + } + } else if (vd->formatIn == V4L2_PIX_FMT_RGB24) { + jpeg_write_scanlines(&cinfo, (JSAMPROW*)vd->framebuffer, vd->height); +diff -ur a/plugins/input_uvc/v4l2uvc.c b/plugins/input_uvc/v4l2uvc.c +--- a/plugins/input_uvc/v4l2uvc.c 2015-03-02 09:14:05.000000000 +0200 ++++ b/plugins/input_uvc/v4l2uvc.c 2015-03-02 09:22:09.000000000 +0200 +@@ -338,11 +338,15 @@ + vd->frame_period_time = 1000/vd->fps; // calcualate frame period time in ms + IPRINT("Frame period time ......: %ld ms\n", vd->frame_period_time); + +- // set FPS to maximum in order to minimize the lagging + memset(setfps, 0, sizeof(struct v4l2_streamparm)); + setfps->type = V4L2_BUF_TYPE_VIDEO_CAPTURE; + setfps->parm.capture.timeperframe.numerator = 1; +- setfps->parm.capture.timeperframe.denominator = 255; ++ if (vd->formatIn == V4L2_PIX_FMT_MJPEG) ++ // set FPS to maximum in order to minimize the lagging ++ setfps->parm.capture.timeperframe.denominator = 255; ++ else ++ setfps->parm.capture.timeperframe.denominator = vd->fps; ++ + ret = xioctl(vd->fd, VIDIOC_S_PARM, setfps); + if (ret) { + perror("Unable to set the FPS\n"); + From 8a307ac786c9e9b1fe4a3ab4eec92f6088d73ac3 Mon Sep 17 00:00:00 2001 From: Dirk Neukirchen Date: Thu, 29 Jan 2015 18:27:13 +0100 Subject: [PATCH 102/681] bogofilter: remove host includes - host GSL libs are sometimes found leading to errors reported by buildbot, replicated locally (Arch Linux) Error: configure: GSL_LIBS=-L/usr/lib -lgsl -lgslcblas -lm leading to /usr/include/features.h:398:23: fatal error: gnu/stubs.h: No such file or directory - explicit libdb location to prevent host includes Signed-off-by: Dirk Neukirchen --- mail/bogofilter/Makefile | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/mail/bogofilter/Makefile b/mail/bogofilter/Makefile index de3646b01..d31dfa8c1 100644 --- a/mail/bogofilter/Makefile +++ b/mail/bogofilter/Makefile @@ -35,7 +35,10 @@ define Package/bogofilter/description Bogofilter is a fast Bayesian spam filter endef -CONFIGURE_ARGS += --disable-unicode +CONFIGURE_ARGS += \ + --disable-unicode \ + --with-libdb-prefix=$(STAGING_DIR) \ + --with-included-gsl define Package/bogofilter/install $(INSTALL_DIR) $(1)/etc/ \ From 4d393adb672c56dddb5eeb24d12c5b032947edeb Mon Sep 17 00:00:00 2001 From: Othmar Truniger Date: Wed, 11 Mar 2015 23:10:10 +0100 Subject: [PATCH 103/681] pthsem: streamline makefile Signed-off-by: Othmar Truniger --- libs/pthsem/Makefile | 29 +++++++++++------------------ 1 file changed, 11 insertions(+), 18 deletions(-) diff --git a/libs/pthsem/Makefile b/libs/pthsem/Makefile index 43fd7aec0..6e07e6854 100644 --- a/libs/pthsem/Makefile +++ b/libs/pthsem/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2008-2014 OpenWrt.org +# Copyright (C) 2008-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=pthsem PKG_VERSION:=2.0.8 -PKG_RELEASE:=2 +PKG_RELEASE:=3 PKG_MAINTAINER:=Othmar Truniger PKG_LICENSE:=LGPL-2.1+ @@ -37,26 +37,19 @@ define Package/pthsem/description pthsem is an extend version, with support for semaphores added. It can be installed parallel to a normal pth. endef -MAKE_FLAGS += \ - OPTIM="$(TARGET_CFLAGS)" \ - CFLAGS="$(TARGET_CFLAGS)" \ - DESTDIR="$(PKG_INSTALL_DIR)" - define Build/InstallDev - $(INSTALL_DIR) $(2)/bin - $(INSTALL_BIN) \ - $(PKG_INSTALL_DIR)/usr/bin/pthsem-config \ - $(2)/bin/ - $(SED) \ - 's,^\(prefix\|exec_prefix\)=.*,\1=$(STAGING_DIR)/usr,g' \ - $(2)/bin/pthsem-config + $(INSTALL_DIR) $(1)/usr/bin + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/pthsem-config $(1)/usr/bin/ + $(SED) 's,^\(prefix\|exec_prefix\)=.*,\1=$(STAGING_DIR)/usr,g' $(1)/usr/bin/pthsem-config $(INSTALL_DIR) $(1)/usr/include - $(CP) $(PKG_INSTALL_DIR)/usr/include/*.h \ - $(1)/usr/include/ + $(CP) $(PKG_INSTALL_DIR)/usr/include/*.h $(1)/usr/include/ $(INSTALL_DIR) $(1)/usr/lib - $(CP) $(PKG_INSTALL_DIR)/usr/lib/libpthsem.{a,la,so*} \ - $(1)/usr/lib/ + $(CP) $(PKG_INSTALL_DIR)/usr/lib/libpthsem.{a,la,so*} $(1)/usr/lib/ + $(INSTALL_DIR) $(1)/usr/lib/pkgconfig + $(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/pthsem.pc $(1)/usr/lib/pkgconfig/ + $(INSTALL_DIR) $(2)/bin + $(LN) ../../usr/bin/pthsem-config $(2)/bin/ endef define Package/pthsem/install From 7ae9c98341a8134dd358b455bc6e37be52aa39a6 Mon Sep 17 00:00:00 2001 From: Othmar Truniger Date: Wed, 11 Mar 2015 23:33:42 +0100 Subject: [PATCH 104/681] libesmtp: streamline makefile Signed-off-by: Othmar Truniger --- libs/libesmtp/Makefile | 45 ++++++++++++++++-------------------------- 1 file changed, 17 insertions(+), 28 deletions(-) diff --git a/libs/libesmtp/Makefile b/libs/libesmtp/Makefile index cd6269623..fa402c660 100644 --- a/libs/libesmtp/Makefile +++ b/libs/libesmtp/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2008-2014 OpenWrt.org +# Copyright (C) 2008-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=libesmtp PKG_VERSION:=1.0.6 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_MD5SUM:=c4fedc999b6c3820296b0eb92cc2e252 PKG_MAINTAINER:=Othmar Truniger @@ -19,6 +19,9 @@ PKG_LICENSE_FILES:=COPYING PKG_SOURCE_URL:=http://www.stafford.uklinux.net/libesmtp PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz +PKG_BUILD_PARALLEL:=1 +PKG_INSTALL:=1 + include $(INCLUDE_DIR)/package.mk define Package/libesmtp @@ -29,38 +32,24 @@ define Package/libesmtp DEPENDS:=+libpthread endef -define Build/Configure - $(call Build/Configure/Default,--without-openssl) -endef - -define Build/Compile - $(MAKE) -C $(PKG_BUILD_DIR) \ - DESTDIR="$(PKG_INSTALL_DIR)" \ - all install -endef +CONFIGURE_ARGS += \ + --without-openssl define Build/InstallDev - mkdir -p $(STAGING_DIR)/usr/include - $(CP) $(PKG_INSTALL_DIR)/usr/include/libesmtp.h $(STAGING_DIR)/usr/include/ - $(CP) $(PKG_INSTALL_DIR)/usr/include/auth-client.h $(STAGING_DIR)/usr/include/ - $(CP) $(PKG_INSTALL_DIR)/usr/include/auth-plugin.h $(STAGING_DIR)/usr/include/ - mkdir -p $(STAGING_DIR)/usr/lib - $(CP) $(PKG_INSTALL_DIR)/usr/lib/libesmtp.{a,so*} $(STAGING_DIR)/usr/lib/ + $(INSTALL_DIR) $(1)/usr/bin + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/libesmtp-config $(1)/usr/bin/ + $(SED) 's,^\(prefix\|exec_prefix\)=.*,\1=$(STAGING_DIR)/usr,g' $(1)/usr/bin/libesmtp-config + + $(INSTALL_DIR) $(1)/usr/include + $(CP) $(PKG_INSTALL_DIR)/usr/include/*.h $(1)/usr/include/ + $(INSTALL_DIR) $(1)/usr/lib + $(CP) $(PKG_INSTALL_DIR)/usr/lib/libesmtp.{a,so*} $(1)/usr/lib/ $(INSTALL_DIR) $(2)/bin - $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/libesmtp-config $(2)/bin/ - $(SED) 's,^\(prefix\|exec_prefix\)=.*,\1=$(STAGING_DIR)/usr,g' $(2)/bin/libesmtp-config -endef - -define Build/UninstallDev - rm -rf \ - $(STAGING_DIR)/usr/include/libesmtp.h \ - $(STAGING_DIR)/usr/include/auth-client.h \ - $(STAGING_DIR)/usr/include/auth-plugin.h \ - $(STAGING_DIR)/usr/lib/libesmtp.{a,so*} + $(LN) ../../usr/bin/libesmtp-config $(2)/bin/ endef define Package/libesmtp/install - mkdir -p $(1)/usr/lib + $(INSTALL_DIR) $(1)/usr/lib $(CP) $(PKG_INSTALL_DIR)/usr/lib/libesmtp.so.* $(1)/usr/lib/ endef From b0cb516206c731d3ae94edcfec44d74f422ca1c6 Mon Sep 17 00:00:00 2001 From: Dora Budic Date: Wed, 11 Mar 2015 20:00:03 +0100 Subject: [PATCH 105/681] taskwarrior: update to 2.4.1. Signed-off-by: Dora Budic --- utils/taskwarrior/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/utils/taskwarrior/Makefile b/utils/taskwarrior/Makefile index d42e9ab57..0a2d62c0c 100644 --- a/utils/taskwarrior/Makefile +++ b/utils/taskwarrior/Makefile @@ -8,14 +8,14 @@ include $(TOPDIR)/rules.mk PKG_NAME:=taskwarrior -PKG_VERSION:=2.4.0 +PKG_VERSION:=2.4.1 PKG_RELEASE:=1 PKG_LICENSE:=MIT PKG_SOURCE:=task-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://www.taskwarrior.org/download/ -PKG_MD5SUM:=de4b64b3d28bb9636af219a486552cd0 +PKG_MD5SUM:=f250f3fb3922e4153c6ad1b1270dceb8 PKG_MAINTAINER:=Luka Perkov PKG_BUILD_DIR:=$(BUILD_DIR)/task-$(PKG_VERSION) From b64c2dc39999c94914df03a0075686f85c5568c8 Mon Sep 17 00:00:00 2001 From: Stanislav German-Evtushenko Date: Thu, 12 Mar 2015 00:38:14 +0300 Subject: [PATCH 106/681] wshaper: start wshaper on ifup --- net/wshaper/Makefile | 3 ++- net/wshaper/files/wshaper.iface | 3 +++ 2 files changed, 5 insertions(+), 1 deletion(-) create mode 100644 net/wshaper/files/wshaper.iface diff --git a/net/wshaper/Makefile b/net/wshaper/Makefile index 5007a8735..65b4045be 100644 --- a/net/wshaper/Makefile +++ b/net/wshaper/Makefile @@ -44,9 +44,10 @@ define Build/Compile endef define Package/wshaper/install - $(INSTALL_DIR) $(1)/usr/sbin/ $(1)/etc/init.d $(1)/etc/config + $(INSTALL_DIR) $(1)/usr/sbin/ $(1)/etc/init.d $(1)/etc/config $(1)/etc/hotplug.d/iface $(INSTALL_BIN) ./files/wshaper.htb $(1)/usr/sbin/ $(INSTALL_BIN) ./files/wshaper.init $(1)/etc/init.d/wshaper + $(INSTALL_BIN) ./files/wshaper.iface $(1)/etc/hotplug.d/iface/10-wshaper $(INSTALL_DATA) ./files/wshaper.config $(1)/etc/config/wshaper endef diff --git a/net/wshaper/files/wshaper.iface b/net/wshaper/files/wshaper.iface new file mode 100644 index 000000000..2964005df --- /dev/null +++ b/net/wshaper/files/wshaper.iface @@ -0,0 +1,3 @@ +#!/bin/sh + +[ "$ACTION" = ifup ] && /etc/init.d/wshaper enabled && /etc/init.d/wshaper start || exit 0 From e3199d1ffe814cc604e1300a0778b9e6b0d4e861 Mon Sep 17 00:00:00 2001 From: Nikos Mavrogiannopoulos Date: Thu, 12 Mar 2015 18:29:52 +0100 Subject: [PATCH 107/681] seccomp: depends on CONFIG_KERNEL_SECCOMP Resolves #935 Signed-off-by: Nikos Mavrogiannopoulos --- libs/libseccomp/Makefile | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libs/libseccomp/Makefile b/libs/libseccomp/Makefile index 217c847e0..d8fc31ba2 100644 --- a/libs/libseccomp/Makefile +++ b/libs/libseccomp/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=libseccomp PKG_VERSION:=2.2.0 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_USE_MIPS16:=0 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz @@ -21,6 +21,9 @@ PKG_INSTALL:=1 PKG_LIBTOOL_PATHS:=. lib PKG_CHECK_FORMAT_SECURITY:=0 +PKG_CONFIG_DEPENDS:= \ + CONFIG_KERNEL_SECCOMP + include $(INCLUDE_DIR)/package.mk From 522e047be2663893e2b46a51eb54e357548bc3a2 Mon Sep 17 00:00:00 2001 From: Nikos Mavrogiannopoulos Date: Thu, 12 Mar 2015 18:50:19 +0100 Subject: [PATCH 108/681] removed Build/Configure part Signed-off-by: Nikos Mavrogiannopoulos --- libs/libseccomp/Makefile | 4 ---- 1 file changed, 4 deletions(-) diff --git a/libs/libseccomp/Makefile b/libs/libseccomp/Makefile index d8fc31ba2..8c40fdcb7 100644 --- a/libs/libseccomp/Makefile +++ b/libs/libseccomp/Makefile @@ -53,10 +53,6 @@ define Package/libseccomp/description This package contains the seccomp library. endef -define Build/Configure - $(call Build/Configure/Default) -endef - define Build/InstallDev $(INSTALL_DIR) $(1)/usr/include $(1)/usr/lib/pkgconfig $(CP) \ From 01eff3fc591fc1b79925cf98d75f3e06b50506f0 Mon Sep 17 00:00:00 2001 From: Alexandru Ardelean Date: Thu, 12 Mar 2015 19:45:30 +0200 Subject: [PATCH 109/681] python: fix conflicts between python-light & python-base Signed-off-by: Alexandru Ardelean --- lang/python/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lang/python/Makefile b/lang/python/Makefile index e928a58a4..4a740dcd8 100644 --- a/lang/python/Makefile +++ b/lang/python/Makefile @@ -177,7 +177,7 @@ PYTHON_BASE_LIB_FILES:= \ /usr/lib/python$(PYTHON_VERSION)/UserDict.py \ /usr/lib/python$(PYTHON_VERSION)/warnings.py -PYTHON_BASE_LIB_FILES+=$(PYTHON_BASE_LIB_FILES) +PYTHON_LIB_FILES_DEL+=$(PYTHON_BASE_LIB_FILES) define PyPackage/python-base/filespec +|/usr/bin/python$(PYTHON_VERSION) From 98be2ca3e0d365d8f1150987cedb145360de582f Mon Sep 17 00:00:00 2001 From: John Crispin Date: Thu, 12 Mar 2015 18:23:49 +0100 Subject: [PATCH 110/681] global: change all instances of USE_EGLIBC to USE_GLIBC Signed-off-by: John Crispin --- devel/diffutils/Makefile | 2 +- lang/luaposix/Makefile | 2 +- lang/perl/Config.in | 2 +- lang/perl/Makefile | 6 +++--- lang/perl/perlmod.mk | 2 +- utils/pciutils/Makefile | 2 +- 6 files changed, 8 insertions(+), 8 deletions(-) diff --git a/devel/diffutils/Makefile b/devel/diffutils/Makefile index 33cdc1216..b313dafa4 100644 --- a/devel/diffutils/Makefile +++ b/devel/diffutils/Makefile @@ -24,7 +24,7 @@ include $(INCLUDE_DIR)/package.mk define Package/diffutils SECTION:=devel CATEGORY:=Development - DEPENDS:=+USE_EGLIBC:librt + DEPENDS:=+USE_GLIBC:librt TITLE:=diffutils URL:=http://www.gnu.org/software/diffutils/ endef diff --git a/lang/luaposix/Makefile b/lang/luaposix/Makefile index dd4a05671..40cddc054 100644 --- a/lang/luaposix/Makefile +++ b/lang/luaposix/Makefile @@ -42,7 +42,7 @@ CONFIGURE_VARS += ac_cv_path_LDOC="" TARGET_CFLAGS += -DLUA_USE_LINUX $(FPIC) -std=gnu99 -ifneq ($(CONFIG_USE_EGLIBC),) +ifneq ($(CONFIG_USE_GLIBC),) ifeq ($(CONFIG_EGLIBC_OPTION_EGLIBC_UTMP),) TARGET_CFLAGS += -DNO_GETLOGIN endif diff --git a/lang/perl/Config.in b/lang/perl/Config.in index 11cb5eb11..f4c4f8870 100644 --- a/lang/perl/Config.in +++ b/lang/perl/Config.in @@ -3,7 +3,7 @@ menu "Configuration" config PERL_THREADS bool "Enable threading support" - default y if (mips || mipsel || i386 || i686 || x86_64 || armeb || arm) && (USE_UCLIBC || USE_EGLIBC) + default y if (mips || mipsel || i386 || i686 || x86_64 || armeb || arm) && (USE_UCLIBC || USE_GLIBC) default n config PERL_TESTS diff --git a/lang/perl/Makefile b/lang/perl/Makefile index c3fe981f9..abd327f62 100644 --- a/lang/perl/Makefile +++ b/lang/perl/Makefile @@ -36,7 +36,7 @@ HOST_BUILD_PARALLEL:=1 # Variables used during configuration/build HOST_PERL_PREFIX:=$(STAGING_DIR_HOST)/usr -ifneq ($(CONFIG_USE_EGLIBC),) +ifneq ($(CONFIG_USE_GLIBC),) EXTRA_LIBS:=bsd EXTRA_LIBDIRS:=$(STAGING_DIR)/lib endif @@ -50,7 +50,7 @@ ifdef CONFIG_PERL_THREADS PERL_CONFIG_SUFFIX:=-mt # uclibc doesn't provide crypt_r(). Enable crypt() usage for glibc builds only - ifdef CONFIG_USE_EGLIBC + ifdef CONFIG_USE_GLIBC CRYPT_R_PROTO:=REENTRANT_PROTO_B_CCS CRYPT:=define else @@ -79,7 +79,7 @@ define Package/perl CATEGORY:=Languages TITLE:=The Perl intepreter URL:=http://www.perl.com/ - DEPENDS:=+USE_EGLIBC:libbsd +PERL_THREADS:libpthread + DEPENDS:=+USE_GLIBC:libbsd +PERL_THREADS:libpthread endef define Package/perl/description diff --git a/lang/perl/perlmod.mk b/lang/perl/perlmod.mk index 4a4181d28..5b6ba1655 100644 --- a/lang/perl/perlmod.mk +++ b/lang/perl/perlmod.mk @@ -3,7 +3,7 @@ # Build environment HOST_PERL_PREFIX:=$(STAGING_DIR_HOST)/usr -ifneq ($(CONFIG_USE_EGLIBC),) +ifneq ($(CONFIG_USE_GLIBC),) EXTRA_LIBS:=bsd EXTRA_LIBDIRS:=$(STAGING_DIR)/lib endif diff --git a/utils/pciutils/Makefile b/utils/pciutils/Makefile index 90deb66a4..0d7ec33f9 100644 --- a/utils/pciutils/Makefile +++ b/utils/pciutils/Makefile @@ -50,7 +50,7 @@ MAKE_FLAGS += \ HOST="$(GNU_TARGET_NAME)" \ ZLIB="yes" \ -ifneq ($(CONFIG_USE_EGLIBC),) +ifneq ($(CONFIG_USE_GLIBC),) TARGET_LDFLAGS += -lresolv endif From 1c9dfa57bb7e168d4cb1a7e8100e67569c020878 Mon Sep 17 00:00:00 2001 From: Marko Ratkaj Date: Thu, 12 Mar 2015 18:52:33 +0100 Subject: [PATCH 111/681] vim: fix acl detection bug Signed-off-by: Marko Ratkaj --- utils/vim/Makefile | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/utils/vim/Makefile b/utils/vim/Makefile index 9e4382172..da01c671e 100644 --- a/utils/vim/Makefile +++ b/utils/vim/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=vim PKG_VERSION:=7.4 -PKG_RELEASE:=1 +PKG_RELEASE:=2 VIMVER:=74 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 @@ -101,6 +101,7 @@ CONFIGURE_ARGS += \ --disable-netbeans \ --disable-cscope \ --disable-gpm \ + --disable-acl \ --with-tlib=ncurses CONFIGURE_VARS += \ From 4ecbe056636d3eb968acc139a929dfd5829daae0 Mon Sep 17 00:00:00 2001 From: Luka Perkov Date: Fri, 13 Mar 2015 09:15:42 +0100 Subject: [PATCH 112/681] cshark: update to latest git HEAD Signed-off-by: Luka Perkov --- net/cshark/Makefile | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/net/cshark/Makefile b/net/cshark/Makefile index 15cc1203e..cbfbed5fa 100644 --- a/net/cshark/Makefile +++ b/net/cshark/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2014 OpenWrt.org +# Copyright (C) 2014-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -8,13 +8,13 @@ include $(TOPDIR)/rules.mk PKG_NAME:=cshark -PKG_VERSION:=2014-07-02 +PKG_VERSION:=2015-03-13 PKG_RELEASE=$(PKG_SOURCE_VERSION) PKG_SOURCE_PROTO:=git PKG_SOURCE_URL:=https://github.com/cloudshark/cshark.git PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) -PKG_SOURCE_VERSION:=ec638311b0b8ef74baf0be06dcf03a641e3308a2 +PKG_SOURCE_VERSION:=ab2ae2fbd72b6cbd57c95e3192edc3c1f475412b PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.gz PKG_BUILD_PARALLEL:=1 From d69d8ec0b913f764204ea2a7cf63044db7c6f853 Mon Sep 17 00:00:00 2001 From: Alexandru Ardelean Date: Fri, 13 Mar 2015 18:12:46 +0200 Subject: [PATCH 113/681] python: refine packaging and split more modules into packages Rule of thumb is: any Python file that is greater than 100kb (or adds a dependency with which it adds more than 100 kb) should be a pretty useful/commonly used lib to stay in `python-light`. An example, is the Python IO lib, which summarized (Python source + binary module) is over 200kb. Also moved some files that should have been put into previously existing packages before, and re-organized the packages a bit. Signed-off-by: Alexandru Ardelean --- lang/python/files/python-package-codecs.mk | 1 + lang/python/files/python-package-compiler.mk | 16 +++++++++++++++ lang/python/files/python-package-ctypes.mk | 18 +++++++++++++++++ ...-package-bsddb.mk => python-package-db.mk} | 7 ++++--- lang/python/files/python-package-dbm.mk | 16 --------------- lang/python/files/python-package-decimal.mk | 16 +++++++++++++++ lang/python/files/python-package-distutils.mk | 16 +++++++++++++++ lang/python/files/python-package-email.mk | 16 +++++++++++++++ lang/python/files/python-package-logging.mk | 16 +++++++++++++++ .../files/python-package-multiprocessing.mk | 17 ++++++++++++++++ lang/python/files/python-package-ncurses.mk | 1 + lang/python/files/python-package-pydoc.mk | 1 + lang/python/files/python-package-unittest.mk | 16 +++++++++++++++ lang/python/files/python-package-xml.mk | 20 +++++++++++++++++++ 14 files changed, 158 insertions(+), 19 deletions(-) create mode 100644 lang/python/files/python-package-compiler.mk create mode 100644 lang/python/files/python-package-ctypes.mk rename lang/python/files/{python-package-bsddb.mk => python-package-db.mk} (66%) delete mode 100644 lang/python/files/python-package-dbm.mk create mode 100644 lang/python/files/python-package-decimal.mk create mode 100644 lang/python/files/python-package-distutils.mk create mode 100644 lang/python/files/python-package-email.mk create mode 100644 lang/python/files/python-package-logging.mk create mode 100644 lang/python/files/python-package-multiprocessing.mk create mode 100644 lang/python/files/python-package-unittest.mk create mode 100644 lang/python/files/python-package-xml.mk diff --git a/lang/python/files/python-package-codecs.mk b/lang/python/files/python-package-codecs.mk index c84c5fc39..d6e183500 100644 --- a/lang/python/files/python-package-codecs.mk +++ b/lang/python/files/python-package-codecs.mk @@ -12,6 +12,7 @@ $(call Package/python/Default) endef $(eval $(call PyBasePackage,python-codecs, \ + /usr/lib/python$(PYTHON_VERSION)/encodings \ /usr/lib/python$(PYTHON_VERSION)/lib-dynload/_codecs_cn.so \ /usr/lib/python$(PYTHON_VERSION)/lib-dynload/_codecs_hk.so \ /usr/lib/python$(PYTHON_VERSION)/lib-dynload/_codecs_iso2022.so \ diff --git a/lang/python/files/python-package-compiler.mk b/lang/python/files/python-package-compiler.mk new file mode 100644 index 000000000..fbe8bf2e6 --- /dev/null +++ b/lang/python/files/python-package-compiler.mk @@ -0,0 +1,16 @@ +# +# Copyright (C) 2006-2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +define Package/python-compiler +$(call Package/python/Default) + TITLE:=Python $(PYTHON_VERSION) compiler module + DEPENDS:=+python-light +endef + +$(eval $(call PyBasePackage,python-compiler, \ + /usr/lib/python$(PYTHON_VERSION)/compiler \ +)) diff --git a/lang/python/files/python-package-ctypes.mk b/lang/python/files/python-package-ctypes.mk new file mode 100644 index 000000000..66b303310 --- /dev/null +++ b/lang/python/files/python-package-ctypes.mk @@ -0,0 +1,18 @@ +# +# Copyright (C) 2006-2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +define Package/python-ctypes +$(call Package/python/Default) + TITLE:=Python $(PYTHON_VERSION) ctypes module + DEPENDS:=+python-light +endef + +$(eval $(call PyBasePackage,python-ctypes, \ + /usr/lib/python$(PYTHON_VERSION)/ctypes \ + /usr/lib/python$(PYTHON_VERSION)/lib-dynload/_ctypes.so \ + /usr/lib/python$(PYTHON_VERSION)/lib-dynload/_ctypes_test.so \ +)) diff --git a/lang/python/files/python-package-bsddb.mk b/lang/python/files/python-package-db.mk similarity index 66% rename from lang/python/files/python-package-bsddb.mk rename to lang/python/files/python-package-db.mk index 601ac5436..26f35d882 100644 --- a/lang/python/files/python-package-bsddb.mk +++ b/lang/python/files/python-package-db.mk @@ -5,13 +5,14 @@ # See /LICENSE for more information. # -define Package/python-bsddb +define Package/python-db $(call Package/python/Default) - TITLE:=Python $(PYTHON_VERSION) bsddb module + TITLE:=Python $(PYTHON_VERSION) db module DEPENDS:=+python-light +libdb47 endef -$(eval $(call PyBasePackage,python-bsddb, \ +$(eval $(call PyBasePackage,python-db, \ /usr/lib/python$(PYTHON_VERSION)/bsddb \ /usr/lib/python$(PYTHON_VERSION)/lib-dynload/_bsddb.so \ + /usr/lib/python$(PYTHON_VERSION)/lib-dynload/dbm.so \ )) diff --git a/lang/python/files/python-package-dbm.mk b/lang/python/files/python-package-dbm.mk deleted file mode 100644 index f72c54818..000000000 --- a/lang/python/files/python-package-dbm.mk +++ /dev/null @@ -1,16 +0,0 @@ -# -# Copyright (C) 2006-2015 OpenWrt.org -# -# This is free software, licensed under the GNU General Public License v2. -# See /LICENSE for more information. -# - -define Package/python-dbm -$(call Package/python/Default) - TITLE:=Python $(PYTHON_VERSION) dbm module - DEPENDS:=+python-light +libdb47 -endef - -$(eval $(call PyBasePackage,python-dbm, \ - /usr/lib/python$(PYTHON_VERSION)/lib-dynload/dbm.so \ -)) diff --git a/lang/python/files/python-package-decimal.mk b/lang/python/files/python-package-decimal.mk new file mode 100644 index 000000000..33e3a21d2 --- /dev/null +++ b/lang/python/files/python-package-decimal.mk @@ -0,0 +1,16 @@ +# +# Copyright (C) 2006-2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +define Package/python-decimal +$(call Package/python/Default) + TITLE:=Python $(PYTHON_VERSION) decimal module + DEPENDS:=+python-light +endef + +$(eval $(call PyBasePackage,python-decimal, \ + /usr/lib/python$(PYTHON_VERSION)/decimal.py \ +)) diff --git a/lang/python/files/python-package-distutils.mk b/lang/python/files/python-package-distutils.mk new file mode 100644 index 000000000..f5119fac3 --- /dev/null +++ b/lang/python/files/python-package-distutils.mk @@ -0,0 +1,16 @@ +# +# Copyright (C) 2006-2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +define Package/python-distutils +$(call Package/python/Default) + TITLE:=Python $(PYTHON_VERSION) distutils + DEPENDS:=+python-light +endef + +$(eval $(call PyBasePackage,python-distutils, \ + /usr/lib/python$(PYTHON_VERSION)/distutils \ +)) diff --git a/lang/python/files/python-package-email.mk b/lang/python/files/python-package-email.mk new file mode 100644 index 000000000..51fa8d12a --- /dev/null +++ b/lang/python/files/python-package-email.mk @@ -0,0 +1,16 @@ +# +# Copyright (C) 2006-2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +define Package/python-email +$(call Package/python/Default) + TITLE:=Python $(PYTHON_VERSION) email module + DEPENDS:=+python-light +endef + +$(eval $(call PyBasePackage,python-email, \ + /usr/lib/python$(PYTHON_VERSION)/email \ +)) diff --git a/lang/python/files/python-package-logging.mk b/lang/python/files/python-package-logging.mk new file mode 100644 index 000000000..f45de35dc --- /dev/null +++ b/lang/python/files/python-package-logging.mk @@ -0,0 +1,16 @@ +# +# Copyright (C) 2006-2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +define Package/python-logging +$(call Package/python/Default) + TITLE:=Python $(PYTHON_VERSION) logging module + DEPENDS:=+python-light +endef + +$(eval $(call PyBasePackage,python-logging, \ + /usr/lib/python$(PYTHON_VERSION)/logging \ +)) diff --git a/lang/python/files/python-package-multiprocessing.mk b/lang/python/files/python-package-multiprocessing.mk new file mode 100644 index 000000000..2a9f5b185 --- /dev/null +++ b/lang/python/files/python-package-multiprocessing.mk @@ -0,0 +1,17 @@ +# +# Copyright (C) 2006-2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +define Package/python-multiprocessing +$(call Package/python/Default) + TITLE:=Python $(PYTHON_VERSION) multiprocessing + DEPENDS:=+python-light +endef + +$(eval $(call PyBasePackage,python-multiprocessing, \ + /usr/lib/python$(PYTHON_VERSION)/multiprocessing \ + /usr/lib/python$(PYTHON_VERSION)/lib-dynload/_multiprocessing.so \ +)) diff --git a/lang/python/files/python-package-ncurses.mk b/lang/python/files/python-package-ncurses.mk index a5ff20040..04751ef83 100644 --- a/lang/python/files/python-package-ncurses.mk +++ b/lang/python/files/python-package-ncurses.mk @@ -12,6 +12,7 @@ $(call Package/python/Default) endef $(eval $(call PyBasePackage,python-ncurses, \ + /usr/lib/python$(PYTHON_VERSION)/curses \ /usr/lib/python$(PYTHON_VERSION)/lib-dynload/_curses.so \ /usr/lib/python$(PYTHON_VERSION)/lib-dynload/_curses_panel.so \ )) diff --git a/lang/python/files/python-package-pydoc.mk b/lang/python/files/python-package-pydoc.mk index 0df3cfd16..ca27f9b36 100644 --- a/lang/python/files/python-package-pydoc.mk +++ b/lang/python/files/python-package-pydoc.mk @@ -12,6 +12,7 @@ $(call Package/python/Default) endef $(eval $(call PyBasePackage,python-pydoc, \ + /usr/lib/python$(PYTHON_VERSION)/doctest.py \ /usr/lib/python$(PYTHON_VERSION)/pydoc.py \ /usr/lib/python$(PYTHON_VERSION)/pydoc_data \ )) diff --git a/lang/python/files/python-package-unittest.mk b/lang/python/files/python-package-unittest.mk new file mode 100644 index 000000000..6e1ab552d --- /dev/null +++ b/lang/python/files/python-package-unittest.mk @@ -0,0 +1,16 @@ +# +# Copyright (C) 2006-2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +define Package/python-unittest +$(call Package/python/Default) + TITLE:=Python $(PYTHON_VERSION) unittest module + DEPENDS:=+python-light +endef + +$(eval $(call PyBasePackage,python-unittest, \ + /usr/lib/python$(PYTHON_VERSION)/unittest \ +)) diff --git a/lang/python/files/python-package-xml.mk b/lang/python/files/python-package-xml.mk new file mode 100644 index 000000000..69074ccb4 --- /dev/null +++ b/lang/python/files/python-package-xml.mk @@ -0,0 +1,20 @@ +# +# Copyright (C) 2006-2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +define Package/python-xml +$(call Package/python/Default) + TITLE:=Python $(PYTHON_VERSION) xml libs + DEPENDS:=+python-light +endef + +$(eval $(call PyBasePackage,python-xml, \ + /usr/lib/python$(PYTHON_VERSION)/xml \ + /usr/lib/python$(PYTHON_VERSION)/xmllib.py \ + /usr/lib/python$(PYTHON_VERSION)/xmlrpclib.py \ + /usr/lib/python$(PYTHON_VERSION)/lib-dynload/_elementtree.so \ + /usr/lib/python$(PYTHON_VERSION)/lib-dynload/pyexpat.so \ +)) From 5b0b49234b9889d18ef72df5b926c784c133455c Mon Sep 17 00:00:00 2001 From: Michael Heimpold Date: Fri, 13 Mar 2015 21:47:51 +0100 Subject: [PATCH 114/681] libmodbus: update to 3.1.2 Although this version is marked 'unstable' by upstream, it's very robust and stable. So give it a broader audience for testing. Signed-off-by: Michael Heimpold --- libs/libmodbus/Makefile | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/libs/libmodbus/Makefile b/libs/libmodbus/Makefile index 5610a0946..65fb00e03 100644 --- a/libs/libmodbus/Makefile +++ b/libs/libmodbus/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2006-2014 OpenWrt.org +# Copyright (C) 2006-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=libmodbus -PKG_VERSION:=3.0.6 +PKG_VERSION:=3.1.2 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://libmodbus.org/releases -PKG_MD5SUM:=c80f88b6ca19cabc4ceffc195ca07771 +PKG_MD5SUM:=dd4262f87ed835c4d1e560f8321a222c PKG_MAINTAINER:=Michael Heimpold @@ -36,6 +36,7 @@ define Package/libmodbus/description A Modbus library for Linux, Mac OS X, FreeBSD, QNX and Win32. endef +CONFIGURE_ARGS += --without-documentation TARGET_CFLAGS += $(FPIC) define Build/InstallDev From f59d4a76f843c04f08f8829c96fad041c8011197 Mon Sep 17 00:00:00 2001 From: Michael Heimpold Date: Fri, 13 Mar 2015 21:48:39 +0100 Subject: [PATCH 115/681] collectd: unbreak collectd-mod-modbus I tested it successfully on a Asus WL-500gP V2, querying a Modbus TCP server. Signed-off-by: Michael Heimpold --- utils/collectd/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/utils/collectd/Makefile b/utils/collectd/Makefile index 1127133e4..61b05a884 100644 --- a/utils/collectd/Makefile +++ b/utils/collectd/Makefile @@ -298,7 +298,7 @@ $(eval $(call BuildPlugin,logfile,log files output,logfile,)) $(eval $(call BuildPlugin,madwifi,MadWifi status input,madwifi,)) #$(eval $(call BuildPlugin,mysql,MySQL status input,mysql,+PACKAGE_collectd-mod-mysql:libmysqlclient-r)) $(eval $(call BuildPlugin,memory,physical memory usage input,memory,)) -$(eval $(call BuildPlugin,modbus,read variables through libmodbus,modbus,+PACKAGE_collectd-mod-modbus:libmodbus @BROKEN)) +$(eval $(call BuildPlugin,modbus,read variables through libmodbus,modbus,+PACKAGE_collectd-mod-modbus:libmodbus)) $(eval $(call BuildPlugin,netlink,netlink input,netlink,+PACKAGE_collectd-mod-netlink:ip @BROKEN)) $(eval $(call BuildPlugin,network,network input/output,network)) $(eval $(call BuildPlugin,nginx,nginx status input,nginx,+PACKAGE_collectd-mod-nginx:libcurl)) From 3b6fd83312a8c405fd0bc156d1cb37c376b0f788 Mon Sep 17 00:00:00 2001 From: Hannu Nyman Date: Sat, 14 Mar 2015 12:09:34 +0200 Subject: [PATCH 116/681] patch: bump version to 2.7.5 Bump GNU patch from 2.7.4 to 2.7.5. Changelog: http://git.savannah.gnu.org/cgit/patch.git/tree/NEWS Changes in version 2.7.5: * There are users which expect patch to follow symbolic links in the working directory, so patch now again follows symbolic links as long as they do not leave the working directory. Signed-off-by: Hannu Nyman --- devel/patch/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/devel/patch/Makefile b/devel/patch/Makefile index b7119a485..d705a30a1 100644 --- a/devel/patch/Makefile +++ b/devel/patch/Makefile @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=patch -PKG_VERSION:=2.7.4 +PKG_VERSION:=2.7.5 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=@GNU/patch -PKG_MD5SUM:=abc59498fcdddd44e0d07764aa105fd2 +PKG_MD5SUM:=e3da7940431633fb65a01b91d3b7a27a PKG_LICENSE:=GPL-3.0+ PKG_LICENSE_FILES:=COPYING From 678e0e46f0b1fa8c3fee4fc1a977f4cedb46bbd8 Mon Sep 17 00:00:00 2001 From: Nikos Mavrogiannopoulos Date: Sat, 14 Mar 2015 14:11:57 +0100 Subject: [PATCH 117/681] openconnect: upgraded to 7.05 Signed-off-by: Nikos Mavrogiannopoulos --- net/openconnect/Makefile | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/net/openconnect/Makefile b/net/openconnect/Makefile index c3098b4d3..605d65380 100644 --- a/net/openconnect/Makefile +++ b/net/openconnect/Makefile @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=openconnect -PKG_VERSION:=7.04 -PKG_RELEASE:=3 +PKG_VERSION:=7.05 +PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=ftp://ftp.infradead.org/pub/openconnect/ -PKG_MD5SUM:=828fe81388b7ea1155419b8be64a350f +PKG_MD5SUM:=10cd4f61e8a11cdf793da2b0fd7a6003 PKG_CONFIG_DEPENDS:= \ CONFIG_OPENCONNECT_GNUTLS \ From 2ad3706813c21c1f65f4ed5bc910f3d36304ef6b Mon Sep 17 00:00:00 2001 From: Nikos Mavrogiannopoulos Date: Sat, 14 Mar 2015 14:14:19 +0100 Subject: [PATCH 118/681] libtasn1: updated to 4.3 Signed-off-by: Nikos Mavrogiannopoulos --- libs/libtasn1/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libs/libtasn1/Makefile b/libs/libtasn1/Makefile index dd106bd1d..fe8a2c254 100644 --- a/libs/libtasn1/Makefile +++ b/libs/libtasn1/Makefile @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=libtasn1 -PKG_VERSION:=4.2 +PKG_VERSION:=4.3 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=ftp://ftp.gnu.org/gnu/libtasn1 -PKG_MD5SUM:=414df906df421dee0a5cf7548788d153 +PKG_MD5SUM:=67e98988f966a34fbf1b82d33eef9e7e #PKG_FIXUP:=autoreconf PKG_INSTALL:=1 From e9eea7891049c42d255c87cc5b385e50799b9813 Mon Sep 17 00:00:00 2001 From: Luiz Angelo Daros de Luca Date: Sun, 8 Mar 2015 02:32:02 -0300 Subject: [PATCH 119/681] git: configure as cross compiling Previously, ./configure was running checking local system and not OpenWRT target. This would avoid any configure test about OpenWRT libraries. With a patch in configure, non cross-compiling-friend test are ignored and Makefile can use default configure. As side effect, git commands are now at /usr/lib/git-core and not /usr/libexec/git-core. Signed-off-by: Luiz Angelo Daros de Luca --- net/git/Makefile | 9 +++--- .../patches/300-configure_for_crosscompiling | 32 +++++++++++++++++++ 2 files changed, 36 insertions(+), 5 deletions(-) create mode 100644 net/git/patches/300-configure_for_crosscompiling diff --git a/net/git/Makefile b/net/git/Makefile index eea0593d7..30f8ebd57 100644 --- a/net/git/Makefile +++ b/net/git/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2009-2014 OpenWrt.org +# Copyright (C) 2009-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=git PKG_VERSION:=2.3.0 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=@KERNEL/software/scm/git/ @@ -17,6 +17,7 @@ PKG_MD5SUM:=e5880760d1f43f4f49b3bf94b9046eee PKG_INSTALL:=1 PKG_BUILD_PARALLEL:=1 +PKG_FIXUP:=autoreconf include $(INCLUDE_DIR)/package.mk @@ -57,9 +58,7 @@ define Build/Configure $(MAKE) -C $(PKG_BUILD_DIR) \ configure - ( cd $(PKG_BUILD_DIR); \ - ./configure --prefix=/usr \ - ); + $(call Build/Configure/Default,) endef define Package/git/install diff --git a/net/git/patches/300-configure_for_crosscompiling b/net/git/patches/300-configure_for_crosscompiling new file mode 100644 index 000000000..a62bcc938 --- /dev/null +++ b/net/git/patches/300-configure_for_crosscompiling @@ -0,0 +1,32 @@ +--- git-2.3.0/configure.ac.old 2015-03-08 01:19:33.675810197 -0300 ++++ git-2.3.0/configure.ac 2015-03-08 01:27:10.688033125 -0300 +@@ -844,7 +844,8 @@ + FILE *f = fopen(".", "r"); + return f && fread(&c, 1, 1, f)]])], + [ac_cv_fread_reads_directories=no], +- [ac_cv_fread_reads_directories=yes]) ++ [ac_cv_fread_reads_directories=yes], ++ [ac_cv_fread_reads_directories=no]) + ]) + if test $ac_cv_fread_reads_directories = yes; then + FREAD_READS_DIRECTORIES=UnfortunatelyYes +@@ -878,7 +879,8 @@ + if (snprintf(buf, 3, "%s", "12345") != 5 + || strcmp(buf, "12")) return 1]])], + [ac_cv_snprintf_returns_bogus=no], +- [ac_cv_snprintf_returns_bogus=yes]) ++ [ac_cv_snprintf_returns_bogus=yes], ++ [ac_cv_snprintf_returns_bogus=no]) + ]) + if test $ac_cv_snprintf_returns_bogus = yes; then + SNPRINTF_RETURNS_BOGUS=UnfortunatelyYes +@@ -901,7 +903,8 @@ + #endif + ]), + [ac_cv_sane_mode_bits=yes], +- [ac_cv_sane_mode_bits=no]) ++ [ac_cv_sane_mode_bits=no], ++ [ac_cv_sane_mode_bits=yes]) + ]) + if test $ac_cv_sane_mode_bits = yes; then + NEEDS_MODE_TRANSLATION= From dccc2268bb11ea65ee98ed7c355b913375d089f5 Mon Sep 17 00:00:00 2001 From: Luiz Angelo Daros de Luca Date: Sun, 8 Mar 2015 05:46:46 -0300 Subject: [PATCH 120/681] git: add subpackage for http(s)/ftp(s) commands This patch add a new package, git-http, that contains all http related commands (and ftp as extra). All http/ftp depends on libcurl. Even without SSL suport in libcurl, git compiles and it returns an informative error only at runtime. The use of symlinks now are trigged using NO_INSTALL_HARDLINKS env and not based only on Makefile patch. imap-send was kept builtin and idependent of curl (just as it was before) Template files, which are not necessary, where removed. Signed-off-by: Luiz Angelo Daros de Luca --- net/git/Makefile | 56 +++++++++++++++++-- net/git/patches/100-convert_builtin.patch | 44 ++------------- .../patches/400-imapsend_without_curl.patch | 11 ++++ 3 files changed, 67 insertions(+), 44 deletions(-) create mode 100644 net/git/patches/400-imapsend_without_curl.patch diff --git a/net/git/Makefile b/net/git/Makefile index 30f8ebd57..6c3ac796e 100644 --- a/net/git/Makefile +++ b/net/git/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=git PKG_VERSION:=2.3.0 -PKG_RELEASE:=2 +PKG_RELEASE:=3 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=@KERNEL/software/scm/git/ @@ -21,7 +21,7 @@ PKG_FIXUP:=autoreconf include $(INCLUDE_DIR)/package.mk -define Package/git +define Package/git/Default SECTION:=net CATEGORY:=Network SUBMENU:=Version Control Systems @@ -31,18 +31,35 @@ define Package/git MAINTAINER:=Peter Wagner endef +define Package/git +$(call Package/git/Default) + DEPENDS:=+libopenssl +libpthread +librt + TITLE:=The fast version control system +endef + define Package/git/description Git is a free & open source, distributed version control system designed to handle everything from small to very large projects with speed and efficiency. endef +define Package/git-http +$(call Package/git/Default) + DEPENDS:=git +libcurl +ca-certificates + TITLE:=Git HTTP commands +endef + +define Package/git-http/description +$(call Package/git/description) + + This package allows git push/fetch over http(s) and ftp(s) +endef + MAKE_FLAGS := \ CC="$(TARGET_CC)" \ CFLAGS="$(TARGET_CFLAGS)" \ CPPFLAGS="$(TARGET_CPPFLAGS)" \ LDFLAGS="$(TARGET_LDFLAGS)" \ - NO_CURL="YesPlease" \ NO_EXPAT="YesPlease" \ NO_MKSTEMPS="YesPlease" \ NO_GETTEXT="YesPlease" \ @@ -52,7 +69,11 @@ MAKE_FLAGS := \ NO_NSEC="YesPlease" \ NO_PERL="YesPlease" \ NO_PYTHON="YesPlease" \ - NO_TCLTK="YesPlease" + NO_TCLTK="YesPlease" \ + NO_INSTALL_HARDLINKS="yes" \ + +CONFIGURE_ARGS += \ + --without-iconv \ define Build/Configure $(MAKE) -C $(PKG_BUILD_DIR) \ @@ -62,9 +83,32 @@ define Build/Configure endef define Package/git/install - $(INSTALL_DIR) $(1) + $(INSTALL_DIR) $(1)/usr/bin + $(CP) $(PKG_INSTALL_DIR)/usr/bin/git $(1)/usr/bin $(RM) $(PKG_INSTALL_DIR)/usr/bin/git-cvsserver - $(CP) $(PKG_INSTALL_DIR)/* $(1)/ + $(CP) $(PKG_INSTALL_DIR)/usr/bin/git-* $(1)/usr/bin + $(INSTALL_DIR) $(1)/usr/lib/git-core + ( cd $(PKG_INSTALL_DIR); $(TAR) \ + --exclude=usr/lib/git-core/git-http-backend \ + --exclude=usr/lib/git-core/git-http-fetch \ + --exclude=usr/lib/git-core/git-remote-ftp \ + --exclude=usr/lib/git-core/git-remote-ftps \ + --exclude=usr/lib/git-core/git-remote-http \ + --exclude=usr/lib/git-core/git-remote-https \ + -cf - \ + usr/lib/git-core \ + ) | ( cd $(1); $(TAR) -xf - ) +endef + +define Package/git-http/install + $(INSTALL_DIR) $(1)/usr/lib/git-core + $(CP) $(PKG_INSTALL_DIR)/usr/lib/git-core/git-http-backend $(1)/usr/lib/git-core + $(CP) $(PKG_INSTALL_DIR)/usr/lib/git-core/git-http-fetch $(1)/usr/lib/git-core + $(CP) $(PKG_INSTALL_DIR)/usr/lib/git-core/git-remote-ftp $(1)/usr/lib/git-core + $(CP) $(PKG_INSTALL_DIR)/usr/lib/git-core/git-remote-ftps $(1)/usr/lib/git-core + $(CP) $(PKG_INSTALL_DIR)/usr/lib/git-core/git-remote-http $(1)/usr/lib/git-core + $(CP) $(PKG_INSTALL_DIR)/usr/lib/git-core/git-remote-https $(1)/usr/lib/git-core endef $(eval $(call BuildPackage,git)) +$(eval $(call BuildPackage,git-http)) diff --git a/net/git/patches/100-convert_builtin.patch b/net/git/patches/100-convert_builtin.patch index 20199611c..52bebaa6c 100644 --- a/net/git/patches/100-convert_builtin.patch +++ b/net/git/patches/100-convert_builtin.patch @@ -14,17 +14,16 @@ -PROGRAM_OBJS += show-index.o -PROGRAM_OBJS += upload-pack.o -PROGRAM_OBJS += remote-testsvn.o -+PROGRAM_OBJS = ++PROGRAM_OBJS += http-backend.o # Binary suffix, set to .exe for Windows builds X = -@@ -896,6 +887,12 @@ BUILTIN_OBJS += builtin/verify-commit.o +@@ -896,6 +887,11 @@ BUILTIN_OBJS += builtin/verify-commit.o BUILTIN_OBJS += builtin/verify-pack.o BUILTIN_OBJS += builtin/verify-tag.o BUILTIN_OBJS += builtin/write-tree.o +BUILTIN_OBJS += builtin/daemon.o +BUILTIN_OBJS += builtin/fast-import.o -+BUILTIN_OBJS += builtin/http-backend.o +BUILTIN_OBJS += builtin/imap-send.o +BUILTIN_OBJS += builtin/shell.o +BUILTIN_OBJS += builtin/upload-pack.o @@ -51,7 +50,7 @@ git-http-fetch$X: http.o http-walker.o http-fetch.o GIT-LDFLAGS $(GITLIBS) $(QUIET_LINK)$(CC) $(ALL_CFLAGS) -o $@ $(ALL_LDFLAGS) $(filter %.o,$^) \ $(LIBS) $(CURL_LIBCURL) -@@ -2254,24 +2247,22 @@ endif +@@ -2254,10 +2247,11 @@ endif bindir=$$(cd '$(DESTDIR_SQ)$(bindir_SQ)' && pwd) && \ execdir=$$(cd '$(DESTDIR_SQ)$(gitexec_instdir_SQ)' && pwd) && \ { test "$$bindir/" = "$$execdir/" || \ @@ -59,34 +58,19 @@ + for p in $(filter $(install_bindir_programs),$(ALL_PROGRAMS)); do \ $(RM) "$$execdir/$$p" && \ test -z "$(NO_INSTALL_HARDLINKS)$(NO_CROSS_DIRECTORY_HARDLINKS)" && \ -- ln "$$bindir/$$p" "$$execdir/$$p" 2>/dev/null || \ + ln "$$bindir/$$p" "$$execdir/$$p" 2>/dev/null || \ + ln -s git "$$execdir/$$p" 2>/dev/null || \ cp "$$bindir/$$p" "$$execdir/$$p" || exit; \ done; \ } && \ - for p in $(filter $(install_bindir_programs),$(BUILT_INS)); do \ - $(RM) "$$bindir/$$p" && \ - test -z "$(NO_INSTALL_HARDLINKS)" && \ -- ln "$$bindir/git$X" "$$bindir/$$p" 2>/dev/null || \ - ln -s "git$X" "$$bindir/$$p" 2>/dev/null || \ - cp "$$bindir/git$X" "$$bindir/$$p" || exit; \ - done && \ - for p in $(BUILT_INS); do \ - $(RM) "$$execdir/$$p" && \ - test -z "$(NO_INSTALL_HARDLINKS)" && \ -- ln "$$execdir/git$X" "$$execdir/$$p" 2>/dev/null || \ - ln -s "git$X" "$$execdir/$$p" 2>/dev/null || \ - cp "$$execdir/git$X" "$$execdir/$$p" || exit; \ - done && \ --- a/builtin.h +++ b/builtin.h -@@ -138,5 +138,11 @@ extern int cmd_verify_pack(int argc, con +@@ -138,5 +138,10 @@ extern int cmd_verify_pack(int argc, con extern int cmd_show_ref(int argc, const char **argv, const char *prefix); extern int cmd_pack_refs(int argc, const char **argv, const char *prefix); extern int cmd_replace(int argc, const char **argv, const char *prefix); +extern int cmd_daemon(int argc, char **argv, const char *prefix); +extern int cmd_fast_import(int argc, char **argv, const char *prefix); -+extern int cmd_http_backend(int argc, char **argv, const char *prefix); +extern int cmd_imap_send(int argc, char **argv, const char *prefix); +extern int cmd_shell(int argc, char **argv, const char *prefix); +extern int cmd_upload_pack(int argc, char **argv, const char *prefix); @@ -101,10 +85,6 @@ @@ -0,0 +1 @@ +#include "../fast-import.c" --- /dev/null -+++ b/builtin/http-backend.c -@@ -0,0 +1 @@ -+#include "../http-backend.c" ---- /dev/null +++ b/builtin/imap-send.c @@ -0,0 +1 @@ +#include "../imap-send.c" @@ -181,11 +161,10 @@ { "describe", cmd_describe, RUN_SETUP }, { "diff", cmd_diff }, { "diff-files", cmd_diff_files, RUN_SETUP | NEED_WORK_TREE }, -@@ -411,6 +412,8 @@ static struct cmd_struct commands[] = { +@@ -411,6 +412,7 @@ static struct cmd_struct commands[] = { { "grep", cmd_grep, RUN_SETUP_GENTLY }, { "hash-object", cmd_hash_object }, { "help", cmd_help }, -+ { "http-backend", cmd_http_backend }, + { "imap-send", cmd_imap_send }, { "index-pack", cmd_index_pack, RUN_SETUP_GENTLY }, { "init", cmd_init_db, NO_SETUP }, @@ -206,17 +185,6 @@ { "var", cmd_var, RUN_SETUP_GENTLY }, { "verify-commit", cmd_verify_commit, RUN_SETUP }, { "verify-pack", cmd_verify_pack }, ---- a/http-backend.c -+++ b/http-backend.c -@@ -557,7 +557,7 @@ static struct service_cmd { - {"POST", "/git-receive-pack$", service_rpc} - }; - --int main(int argc, char **argv) -+int cmd_http_backend(int argc, char **argv, const char *prefix) - { - char *method = getenv("REQUEST_METHOD"); - char *dir; --- a/imap-send.c +++ b/imap-send.c @@ -1484,7 +1484,7 @@ static int curl_append_msgs_to_imap(stru diff --git a/net/git/patches/400-imapsend_without_curl.patch b/net/git/patches/400-imapsend_without_curl.patch new file mode 100644 index 000000000..1b5dff30d --- /dev/null +++ b/net/git/patches/400-imapsend_without_curl.patch @@ -0,0 +1,11 @@ +--- git-2.3.0/Makefile.old 2015-03-08 02:14:42.857845824 -0300 ++++ git-2.3.0/Makefile 2015-03-08 02:15:06.697451372 -0300 +@@ -1039,7 +1039,7 @@ + endif + curl_check := $(shell (echo 072200; curl-config --vernum) 2>/dev/null | sort -r | sed -ne 2p) + ifeq "$(curl_check)" "072200" +- USE_CURL_FOR_IMAP_SEND = YesPlease ++# USE_CURL_FOR_IMAP_SEND = YesPlease + endif + ifdef USE_CURL_FOR_IMAP_SEND + BASIC_CFLAGS += -DUSE_CURL_FOR_IMAP_SEND From dd091f235f76bc360f802bcef5033cce5edaced7 Mon Sep 17 00:00:00 2001 From: Alexandru Ardelean Date: Fri, 13 Mar 2015 22:19:13 +0200 Subject: [PATCH 121/681] python3: re-number patches Signed-off-by: Alexandru Ardelean --- .../patches/{110-enable-zlib.patch => 001-enable-zlib.patch} | 0 ...tch => 002-do-not-add-include-dirs-when-cross-compiling.patch} | 0 ...distutils-tests.patch => 003-do-not-run-distutils-tests.patch} | 0 ...write-bytes-codes.patch => 004-do-not-write-bytes-codes.patch} | 0 4 files changed, 0 insertions(+), 0 deletions(-) rename lang/python3/patches/{110-enable-zlib.patch => 001-enable-zlib.patch} (100%) rename lang/python3/patches/{120-do-not-add-include-dirs-when-cross-compiling.patch => 002-do-not-add-include-dirs-when-cross-compiling.patch} (100%) rename lang/python3/patches/{130-do-not-run-distutils-tests.patch => 003-do-not-run-distutils-tests.patch} (100%) rename lang/python3/patches/{140-do-not-write-bytes-codes.patch => 004-do-not-write-bytes-codes.patch} (100%) diff --git a/lang/python3/patches/110-enable-zlib.patch b/lang/python3/patches/001-enable-zlib.patch similarity index 100% rename from lang/python3/patches/110-enable-zlib.patch rename to lang/python3/patches/001-enable-zlib.patch diff --git a/lang/python3/patches/120-do-not-add-include-dirs-when-cross-compiling.patch b/lang/python3/patches/002-do-not-add-include-dirs-when-cross-compiling.patch similarity index 100% rename from lang/python3/patches/120-do-not-add-include-dirs-when-cross-compiling.patch rename to lang/python3/patches/002-do-not-add-include-dirs-when-cross-compiling.patch diff --git a/lang/python3/patches/130-do-not-run-distutils-tests.patch b/lang/python3/patches/003-do-not-run-distutils-tests.patch similarity index 100% rename from lang/python3/patches/130-do-not-run-distutils-tests.patch rename to lang/python3/patches/003-do-not-run-distutils-tests.patch diff --git a/lang/python3/patches/140-do-not-write-bytes-codes.patch b/lang/python3/patches/004-do-not-write-bytes-codes.patch similarity index 100% rename from lang/python3/patches/140-do-not-write-bytes-codes.patch rename to lang/python3/patches/004-do-not-write-bytes-codes.patch From 70df2d9a0c6d7fd40dc0de203cb43ea9008c3169 Mon Sep 17 00:00:00 2001 From: Alexandru Ardelean Date: Thu, 12 Mar 2015 20:02:42 +0200 Subject: [PATCH 122/681] python3: upgrade to version 3.4.3 Signed-off-by: Alexandru Ardelean --- lang/python3/Makefile | 4 ++-- lang/python3/files/python3-package.mk | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/lang/python3/Makefile b/lang/python3/Makefile index d13a9f4da..2c0ecc2b9 100644 --- a/lang/python3/Makefile +++ b/lang/python3/Makefile @@ -14,12 +14,12 @@ PYTHON_VERSION:=$(PYTHON3_VERSION) PYTHON_VERSION_MICRO:=$(PYTHON3_VERSION_MICRO) PKG_NAME:=python3 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_VERSION:=$(PYTHON_VERSION).$(PYTHON_VERSION_MICRO) PKG_SOURCE:=Python-$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=http://www.python.org/ftp/python/$(PKG_VERSION) -PKG_MD5SUM:=36fc7327c02c6f12fa24fc9ba78039e3 +PKG_MD5SUM:=7d092d1bba6e17f0d9bd21b49e441dd5 PKG_LICENSE:=PSF PKG_LICENSE_FILES:=LICENSE Modules/_ctypes/libffi_msvc/LICENSE Modules/_ctypes/darwin/LICENSE Modules/_ctypes/libffi/LICENSE Modules/_ctypes/libffi_osx/LICENSE Tools/pybench/LICENSE diff --git a/lang/python3/files/python3-package.mk b/lang/python3/files/python3-package.mk index b28ec5833..e76dc0bc8 100644 --- a/lang/python3/files/python3-package.mk +++ b/lang/python3/files/python3-package.mk @@ -6,7 +6,7 @@ # PYTHON3_VERSION:=3.4 -PYTHON3_VERSION_MICRO:=2 +PYTHON3_VERSION_MICRO:=3 PYTHON3_DIR:=$(STAGING_DIR)/usr PYTHON3_BIN_DIR:=$(PYTHON3_DIR)/bin From 741fdfd1e036bf758262c2ded8a31a1b4c73d8ac Mon Sep 17 00:00:00 2001 From: Alexandru Ardelean Date: Thu, 12 Mar 2015 20:01:20 +0200 Subject: [PATCH 123/681] python3: replicate packaging work done in python package Signed-off-by: Alexandru Ardelean --- lang/python3/Makefile | 92 +++++++++++++++---- lang/python3/files/python3-package-asyncio.mk | 16 ++++ lang/python3/files/python3-package-codecs.mk | 23 +++++ lang/python3/files/python3-package-ctypes.mk | 18 ++++ lang/python3/files/python3-package-dbm.mk | 17 ++++ lang/python3/files/python3-package-decimal.mk | 17 ++++ .../files/python3-package-distutils.mk | 16 ++++ lang/python3/files/python3-package-email.mk | 16 ++++ lang/python3/files/python3-package-gdbm.mk | 16 ++++ lang/python3/files/python3-package-logging.mk | 16 ++++ .../files/python3-package-multiprocessing.mk | 17 ++++ lang/python3/files/python3-package-ncurses.mk | 18 ++++ lang/python3/files/python3-package-openssl.mk | 17 ++++ lang/python3/files/python3-package-pydoc.mk | 18 ++++ lang/python3/files/python3-package-sqlite3.mk | 17 ++++ .../python3/files/python3-package-unittest.mk | 16 ++++ lang/python3/files/python3-package-xml.mk | 19 ++++ 17 files changed, 350 insertions(+), 19 deletions(-) create mode 100644 lang/python3/files/python3-package-asyncio.mk create mode 100644 lang/python3/files/python3-package-codecs.mk create mode 100644 lang/python3/files/python3-package-ctypes.mk create mode 100644 lang/python3/files/python3-package-dbm.mk create mode 100644 lang/python3/files/python3-package-decimal.mk create mode 100644 lang/python3/files/python3-package-distutils.mk create mode 100644 lang/python3/files/python3-package-email.mk create mode 100644 lang/python3/files/python3-package-gdbm.mk create mode 100644 lang/python3/files/python3-package-logging.mk create mode 100644 lang/python3/files/python3-package-multiprocessing.mk create mode 100644 lang/python3/files/python3-package-ncurses.mk create mode 100644 lang/python3/files/python3-package-openssl.mk create mode 100644 lang/python3/files/python3-package-pydoc.mk create mode 100644 lang/python3/files/python3-package-sqlite3.mk create mode 100644 lang/python3/files/python3-package-unittest.mk create mode 100644 lang/python3/files/python3-package-xml.mk diff --git a/lang/python3/Makefile b/lang/python3/Makefile index 2c0ecc2b9..1fb001aa0 100644 --- a/lang/python3/Makefile +++ b/lang/python3/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2006-2014 OpenWrt.org +# Copyright (C) 2006-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -57,7 +57,7 @@ endef define Package/python3-base $(call Package/python3/Default) TITLE:=Python $(PYTHON_VERSION) interpreter - DEPENDS:=+libpthread +zlib +libffi +libopenssl + DEPENDS:=+libpthread +zlib endef define Package/python3-base/description @@ -65,13 +65,45 @@ define Package/python3-base/description for the interpreter to start. endef +define Package/python3-light +$(call Package/python3/Default) + TITLE:=Python $(PYTHON_VERSION) light installation + DEPENDS:=+python3-base +libffi +libbz2 +endef + +define Package/python3-light/description + This package is essentially the python3-base package plus + a few of the rarely used (and big) libraries stripped out + into separate packages. +endef + +# Define newline here, since it's not defined in OpenWRT +define newline + + +endef + +PYTHON3_LIB_FILES_DEL:= +PYTHON3_PACKAGES:= +PYTHON3_SO_SUFFIX:=cpython-34.so +define Py3BasePackage + PYTHON3_PACKAGES+=$(1) + PYTHON3_LIB_FILES_DEL+=$(2) + define Py3Package/$(1)/filespec + $(subst $(space),$(newline),$(foreach lib_file,$(2),+|$(lib_file))) + endef +endef + +include ./files/python3-package-*.mk + define Package/python3 $(call Package/python3/Default) - DEPENDS:=+python3-base +libncursesw +libbz2 +libgdbm +libsqlite3 +libdb47 + DEPENDS:=+python3-light $(foreach package,$(PYTHON3_PACKAGES),+$(package)) endef define Package/python3/description This package contains the (almost) full Python install. + It's python3-light + all other packages. endef MAKE_FLAGS+=\ @@ -123,29 +155,34 @@ define Build/InstallDev $(1)/usr/lib/python$(PYTHON_VERSION)/ endef +PYTHON3_BASE_LIB_FILES:= \ + /usr/lib/python$(PYTHON_VERSION)/_collections_abc.py \ + /usr/lib/python$(PYTHON_VERSION)/_sitebuiltins.py \ + /usr/lib/python$(PYTHON_VERSION)/_sysconfigdata.py \ + /usr/lib/python$(PYTHON_VERSION)/_weakrefset.py \ + /usr/lib/python$(PYTHON_VERSION)/abc.py \ + /usr/lib/python$(PYTHON_VERSION)/codecs.py \ + /usr/lib/python$(PYTHON_VERSION)/genericpath.py \ + /usr/lib/python$(PYTHON_VERSION)/io.py \ + /usr/lib/python$(PYTHON_VERSION)/os.py \ + /usr/lib/python$(PYTHON_VERSION)/posixpath.py \ + /usr/lib/python$(PYTHON_VERSION)/site.py \ + /usr/lib/python$(PYTHON_VERSION)/sysconfig.py \ + /usr/lib/python$(PYTHON_VERSION)/stat.py + +PYTHON3_LIB_FILES_DEL+=$(PYTHON3_BASE_LIB_FILES) + define Py3Package/python3-base/filespec +|/usr/bin/python$(PYTHON_VERSION) -+|/usr/lib/python$(PYTHON_VERSION)/encodings -+|/usr/lib/python$(PYTHON_VERSION)/_collections_abc.py -+|/usr/lib/python$(PYTHON_VERSION)/_sitebuiltins.py -+|/usr/lib/python$(PYTHON_VERSION)/_sysconfigdata.py -+|/usr/lib/python$(PYTHON_VERSION)/_weakrefset.py -+|/usr/lib/python$(PYTHON_VERSION)/abc.py -+|/usr/lib/python$(PYTHON_VERSION)/codecs.py -+|/usr/lib/python$(PYTHON_VERSION)/genericpath.py -+|/usr/lib/python$(PYTHON_VERSION)/io.py -+|/usr/lib/python$(PYTHON_VERSION)/os.py -+|/usr/lib/python$(PYTHON_VERSION)/posixpath.py -+|/usr/lib/python$(PYTHON_VERSION)/site.py -+|/usr/lib/python$(PYTHON_VERSION)/sysconfig.py -+|/usr/lib/python$(PYTHON_VERSION)/stat.py +$(subst $(space),$(newline),$(foreach lib_file,$(PYTHON3_BASE_LIB_FILES),+|$(lib_file))) endef -define Py3Package/python3/filespec +define Py3Package/python3-light/filespec +|/usr/lib/python$(PYTHON_VERSION) -|/usr/lib/python$(PYTHON_VERSION)/config-$(PYTHON_VERSION) -|/usr/lib/python$(PYTHON_VERSION)/distutils/cygwinccompiler.py -|/usr/lib/python$(PYTHON_VERSION)/distutils/command/wininst* +-|/usr/lib/python$(PYTHON_VERSION)/ensurepip -|/usr/lib/python$(PYTHON_VERSION)/idlelib -|/usr/lib/python$(PYTHON_VERSION)/lib2to3 -|/usr/lib/python$(PYTHON_VERSION)/tkinter @@ -157,6 +194,8 @@ define Py3Package/python3/filespec -|/usr/lib/python$(PYTHON_VERSION)/webbrowser.py -|/usr/lib/python$(PYTHON_VERSION)/*/test -|/usr/lib/python$(PYTHON_VERSION)/*/tests +-|/usr/lib/python$(PYTHON_VERSION)/_osx_support.py +$(subst $(space),$(newline),$(foreach lib_file,$(PYTHON3_LIB_FILES_DEL),-|$(lib_file))) endef define Py3Package/python3-base/install @@ -167,6 +206,14 @@ define Py3Package/python3-base/install $(CP) $(PKG_INSTALL_DIR)/usr/lib/libpython$(PYTHON_VERSION).so* $(1)/usr/lib/ endef +define Py3Package/python3/filespec +-|$(PYTHON3_PKG_DIR) +endef + +HOST_CFLAGS+= \ + -I/usr/include/ncursesw \ + -I/usr/include/ncurses + HOST_CONFIGURE_ARGS+= \ --without-cxx-main \ --without-pymalloc \ @@ -174,7 +221,7 @@ HOST_CONFIGURE_ARGS+= \ --prefix=$(STAGING_DIR_HOST) \ --with-ensurepip=upgrade \ CONFIG_SITE= \ - OPT="$(HOST_CFLAGS)" + CFLAGS="$(HOST_CFLAGS)" define Host/Compile +$(MAKE) $(HOST_JOBS) -C $(HOST_BUILD_DIR) python Parser/pgen @@ -189,8 +236,15 @@ endef $(eval $(call HostBuild)) +$(foreach package, $(PYTHON3_PACKAGES), \ + $(eval $(call Py3Package,$(package))) \ + $(eval $(call BuildPackage,$(package))) \ +) + $(eval $(call Py3Package,python3-base)) +$(eval $(call Py3Package,python3-light)) $(eval $(call Py3Package,python3)) $(eval $(call BuildPackage,python3-base)) +$(eval $(call BuildPackage,python3-light)) $(eval $(call BuildPackage,python3)) diff --git a/lang/python3/files/python3-package-asyncio.mk b/lang/python3/files/python3-package-asyncio.mk new file mode 100644 index 000000000..1d2faab3f --- /dev/null +++ b/lang/python3/files/python3-package-asyncio.mk @@ -0,0 +1,16 @@ +# +# Copyright (C) 2006-2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +define Package/python3-asyncio +$(call Package/python3/Default) + TITLE:=Python $(PYTHON3_VERSION) asyncio module + DEPENDS:=+python3-light +endef + +$(eval $(call Py3BasePackage,python3-asyncio, \ + /usr/lib/python$(PYTHON3_VERSION)/asyncio \ +)) diff --git a/lang/python3/files/python3-package-codecs.mk b/lang/python3/files/python3-package-codecs.mk new file mode 100644 index 000000000..67c3ee51a --- /dev/null +++ b/lang/python3/files/python3-package-codecs.mk @@ -0,0 +1,23 @@ +# +# Copyright (C) 2006-2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +define Package/python3-codecs +$(call Package/python3/Default) + TITLE:=Python $(PYTHON3_VERSION) codecs + unicode support + DEPENDS:=+python3-light +endef + +$(eval $(call Py3BasePackage,python3-codecs, \ + /usr/lib/python$(PYTHON3_VERSION)/encodings \ + /usr/lib/python$(PYTHON3_VERSION)/lib-dynload/_codecs_cn.$(PYTHON3_SO_SUFFIX) \ + /usr/lib/python$(PYTHON3_VERSION)/lib-dynload/_codecs_hk.$(PYTHON3_SO_SUFFIX) \ + /usr/lib/python$(PYTHON3_VERSION)/lib-dynload/_codecs_iso2022.$(PYTHON3_SO_SUFFIX) \ + /usr/lib/python$(PYTHON3_VERSION)/lib-dynload/_codecs_jp.$(PYTHON3_SO_SUFFIX) \ + /usr/lib/python$(PYTHON3_VERSION)/lib-dynload/_codecs_kr.$(PYTHON3_SO_SUFFIX) \ + /usr/lib/python$(PYTHON3_VERSION)/lib-dynload/_codecs_tw.$(PYTHON3_SO_SUFFIX) \ + /usr/lib/python$(PYTHON3_VERSION)/lib-dynload/unicodedata.$(PYTHON3_SO_SUFFIX) \ +)) diff --git a/lang/python3/files/python3-package-ctypes.mk b/lang/python3/files/python3-package-ctypes.mk new file mode 100644 index 000000000..97c2c768a --- /dev/null +++ b/lang/python3/files/python3-package-ctypes.mk @@ -0,0 +1,18 @@ +# +# Copyright (C) 2006-2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +define Package/python3-ctypes +$(call Package/python3/Default) + TITLE:=Python $(PYTHON3_VERSION) ctypes module + DEPENDS:=+python3-light +endef + +$(eval $(call Py3BasePackage,python3-ctypes, \ + /usr/lib/python$(PYTHON3_VERSION)/ctypes \ + /usr/lib/python$(PYTHON3_VERSION)/lib-dynload/_ctypes.$(PYTHON3_SO_SUFFIX) \ + /usr/lib/python$(PYTHON3_VERSION)/lib-dynload/_ctypes_test.$(PYTHON3_SO_SUFFIX) \ +)) diff --git a/lang/python3/files/python3-package-dbm.mk b/lang/python3/files/python3-package-dbm.mk new file mode 100644 index 000000000..ed343d81a --- /dev/null +++ b/lang/python3/files/python3-package-dbm.mk @@ -0,0 +1,17 @@ +# +# Copyright (C) 2006-2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +define Package/python3-dbm +$(call Package/python3/Default) + TITLE:=Python $(PYTHON3_VERSION) dbm module + DEPENDS:=+python3-light +libdb47 +endef + +$(eval $(call Py3BasePackage,python3-dbm, \ + /usr/lib/python$(PYTHON3_VERSION)/dbm \ + /usr/lib/python$(PYTHON3_VERSION)/lib-dynload/_dbm.$(PYTHON3_SO_SUFFIX) \ +)) diff --git a/lang/python3/files/python3-package-decimal.mk b/lang/python3/files/python3-package-decimal.mk new file mode 100644 index 000000000..81ecbb0d4 --- /dev/null +++ b/lang/python3/files/python3-package-decimal.mk @@ -0,0 +1,17 @@ +# +# Copyright (C) 2006-2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +define Package/python3-decimal +$(call Package/python3/Default) + TITLE:=Python $(PYTHON3_VERSION) decimal module + DEPENDS:=+python3-light +endef + +$(eval $(call Py3BasePackage,python3-decimal, \ + /usr/lib/python$(PYTHON3_VERSION)/decimal.py \ + /usr/lib/python$(PYTHON3_VERSION)/lib-dynload/_decimal.$(PYTHON3_SO_SUFFIX) \ +)) diff --git a/lang/python3/files/python3-package-distutils.mk b/lang/python3/files/python3-package-distutils.mk new file mode 100644 index 000000000..65f4b5aa6 --- /dev/null +++ b/lang/python3/files/python3-package-distutils.mk @@ -0,0 +1,16 @@ +# +# Copyright (C) 2006-2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +define Package/python3-distutils +$(call Package/python3/Default) + TITLE:=Python $(PYTHON3_VERSION) distutils module + DEPENDS:=+python3-light +endef + +$(eval $(call Py3BasePackage,python3-distutils, \ + /usr/lib/python$(PYTHON3_VERSION)/distutils \ +)) diff --git a/lang/python3/files/python3-package-email.mk b/lang/python3/files/python3-package-email.mk new file mode 100644 index 000000000..dae351979 --- /dev/null +++ b/lang/python3/files/python3-package-email.mk @@ -0,0 +1,16 @@ +# +# Copyright (C) 2006-2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +define Package/python3-email +$(call Package/python3/Default) + TITLE:=Python $(PYTHON3_VERSION) email module + DEPENDS:=+python3-light +endef + +$(eval $(call Py3BasePackage,python3-email, \ + /usr/lib/python$(PYTHON3_VERSION)/email \ +)) diff --git a/lang/python3/files/python3-package-gdbm.mk b/lang/python3/files/python3-package-gdbm.mk new file mode 100644 index 000000000..cc929132c --- /dev/null +++ b/lang/python3/files/python3-package-gdbm.mk @@ -0,0 +1,16 @@ +# +# Copyright (C) 2006-2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +define Package/python3-gdbm +$(call Package/python3/Default) + TITLE:=Python $(PYTHON3_VERSION) gdbm module + DEPENDS:=+python3-light +libgdbm +endef + +$(eval $(call Py3BasePackage,python3-gdbm, \ + /usr/lib/python$(PYTHON3_VERSION)/lib-dynload/_gdbm.$(PYTHON3_SO_SUFFIX) \ +)) diff --git a/lang/python3/files/python3-package-logging.mk b/lang/python3/files/python3-package-logging.mk new file mode 100644 index 000000000..4cd6ea979 --- /dev/null +++ b/lang/python3/files/python3-package-logging.mk @@ -0,0 +1,16 @@ +# +# Copyright (C) 2006-2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +define Package/python3-logging +$(call Package/python3/Default) + TITLE:=Python $(PYTHON3_VERSION) logging module + DEPENDS:=+python3-light +endef + +$(eval $(call Py3BasePackage,python3-logging, \ + /usr/lib/python$(PYTHON3_VERSION)/logging \ +)) diff --git a/lang/python3/files/python3-package-multiprocessing.mk b/lang/python3/files/python3-package-multiprocessing.mk new file mode 100644 index 000000000..784aabb8b --- /dev/null +++ b/lang/python3/files/python3-package-multiprocessing.mk @@ -0,0 +1,17 @@ +# +# Copyright (C) 2006-2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +define Package/python3-multiprocessing +$(call Package/python3/Default) + TITLE:=Python $(PYTHON3_VERSION) multiprocessing + DEPENDS:=+python3-light +endef + +$(eval $(call Py3BasePackage,python3-multiprocessing, \ + /usr/lib/python$(PYTHON3_VERSION)/multiprocessing \ + /usr/lib/python$(PYTHON3_VERSION)/lib-dynload/_multiprocessing.$(PYTHON3_SO_SUFFIX) \ +)) diff --git a/lang/python3/files/python3-package-ncurses.mk b/lang/python3/files/python3-package-ncurses.mk new file mode 100644 index 000000000..74bedfe2f --- /dev/null +++ b/lang/python3/files/python3-package-ncurses.mk @@ -0,0 +1,18 @@ +# +# Copyright (C) 2006-2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +define Package/python3-ncurses +$(call Package/python3/Default) + TITLE:=Python $(PYTHON3_VERSION) ncurses module + DEPENDS:=+python3-light +libncursesw +endef + +$(eval $(call Py3BasePackage,python3-ncurses, \ + /usr/lib/python$(PYTHON3_VERSION)/curses \ + /usr/lib/python$(PYTHON3_VERSION)/lib-dynload/_curses.$(PYTHON3_SO_SUFFIX) \ + /usr/lib/python$(PYTHON3_VERSION)/lib-dynload/_curses_panel.$(PYTHON3_SO_SUFFIX) \ +)) diff --git a/lang/python3/files/python3-package-openssl.mk b/lang/python3/files/python3-package-openssl.mk new file mode 100644 index 000000000..255d58099 --- /dev/null +++ b/lang/python3/files/python3-package-openssl.mk @@ -0,0 +1,17 @@ +# +# Copyright (C) 2006-2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +define Package/python3-openssl +$(call Package/python3/Default) + TITLE:=Python $(PYTHON3_VERSION) SSL module + DEPENDS:=+python3-light +libopenssl +endef + +$(eval $(call Py3BasePackage,python3-openssl, \ + /usr/lib/python$(PYTHON3_VERSION)/lib-dynload/_hashlib.$(PYTHON3_SO_SUFFIX) \ + /usr/lib/python$(PYTHON3_VERSION)/lib-dynload/_ssl.$(PYTHON3_SO_SUFFIX) \ +)) diff --git a/lang/python3/files/python3-package-pydoc.mk b/lang/python3/files/python3-package-pydoc.mk new file mode 100644 index 000000000..7ed8c2110 --- /dev/null +++ b/lang/python3/files/python3-package-pydoc.mk @@ -0,0 +1,18 @@ +# +# Copyright (C) 2006-2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +define Package/python3-pydoc +$(call Package/python3/Default) + TITLE:=Python $(PYTHON3_VERSION) pydoc module + DEPENDS:=+python3-light +endef + +$(eval $(call Py3BasePackage,python3-pydoc, \ + /usr/lib/python$(PYTHON3_VERSION)/doctest.py \ + /usr/lib/python$(PYTHON3_VERSION)/pydoc.py \ + /usr/lib/python$(PYTHON3_VERSION)/pydoc_data \ +)) diff --git a/lang/python3/files/python3-package-sqlite3.mk b/lang/python3/files/python3-package-sqlite3.mk new file mode 100644 index 000000000..4b097a36b --- /dev/null +++ b/lang/python3/files/python3-package-sqlite3.mk @@ -0,0 +1,17 @@ +# +# Copyright (C) 2006-2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +define Package/python3-sqlite3 +$(call Package/python3/Default) + TITLE:=Python $(PYTHON3_VERSION) sqlite3 module + DEPENDS:=+python3-light +libsqlite3 +endef + +$(eval $(call Py3BasePackage,python3-sqlite3, \ + /usr/lib/python$(PYTHON3_VERSION)/lib-dynload/_sqlite3.$(PYTHON3_SO_SUFFIX) \ + /usr/lib/python$(PYTHON3_VERSION)/sqlite3 \ +)) diff --git a/lang/python3/files/python3-package-unittest.mk b/lang/python3/files/python3-package-unittest.mk new file mode 100644 index 000000000..6d3643a71 --- /dev/null +++ b/lang/python3/files/python3-package-unittest.mk @@ -0,0 +1,16 @@ +# +# Copyright (C) 2006-2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +define Package/python3-unittest +$(call Package/python3/Default) + TITLE:=Python $(PYTHON3_VERSION) unittest module + DEPENDS:=+python3-light +endef + +$(eval $(call Py3BasePackage,python3-unittest, \ + /usr/lib/python$(PYTHON3_VERSION)/unittest \ +)) diff --git a/lang/python3/files/python3-package-xml.mk b/lang/python3/files/python3-package-xml.mk new file mode 100644 index 000000000..e734f0c72 --- /dev/null +++ b/lang/python3/files/python3-package-xml.mk @@ -0,0 +1,19 @@ +# +# Copyright (C) 2006-2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +define Package/python3-xml +$(call Package/python3/Default) + TITLE:=Python $(PYTHON3_VERSION) xml libs + DEPENDS:=+python3-light +endef + +$(eval $(call Py3BasePackage,python3-xml, \ + /usr/lib/python$(PYTHON3_VERSION)/xml \ + /usr/lib/python$(PYTHON3_VERSION)/xmlrpc \ + /usr/lib/python$(PYTHON3_VERSION)/lib-dynload/_elementtree.$(PYTHON3_SO_SUFFIX) \ + /usr/lib/python$(PYTHON3_VERSION)/lib-dynload/pyexpat.$(PYTHON3_SO_SUFFIX) \ +)) From cfe31ca3d3791fc0559908a254427f35e725ce47 Mon Sep 17 00:00:00 2001 From: Alexandru Ardelean Date: Fri, 13 Mar 2015 22:46:47 +0200 Subject: [PATCH 124/681] python3: port some patches from python Based on the idea that 'what-works-on-python-should-work-on-python3' because they share the same trunk, these patches have been copied over from the python package. Signed-off-by: Alexandru Ardelean --- .../005-fix-libffi-x86-64-configure.patch | 31 +++++++++++++++++++ .../006-remove-debian-multiarch-support.patch | 12 +++++++ .../007-distutils-do-not-adjust-path.patch | 10 ++++++ ...add-rt-lib-dirs-when-cross-compiling.patch | 15 +++++++++ 4 files changed, 68 insertions(+) create mode 100644 lang/python3/patches/005-fix-libffi-x86-64-configure.patch create mode 100644 lang/python3/patches/006-remove-debian-multiarch-support.patch create mode 100644 lang/python3/patches/007-distutils-do-not-adjust-path.patch create mode 100644 lang/python3/patches/010-do-not-add-rt-lib-dirs-when-cross-compiling.patch diff --git a/lang/python3/patches/005-fix-libffi-x86-64-configure.patch b/lang/python3/patches/005-fix-libffi-x86-64-configure.patch new file mode 100644 index 000000000..ea062a350 --- /dev/null +++ b/lang/python3/patches/005-fix-libffi-x86-64-configure.patch @@ -0,0 +1,31 @@ +diff --git a/Modules/_ctypes/libffi/configure b/Modules/_ctypes/libffi/configure +index 75f62a7..4d6c9f2 100755 +--- a/Modules/_ctypes/libffi/configure ++++ b/Modules/_ctypes/libffi/configure +@@ -17257,20 +17257,12 @@ case "$host" in + fi + ;; + +- i?86-*-* | x86_64-*-*) +- TARGETDIR=x86 +- if test $ac_cv_sizeof_size_t = 4; then +- case "$host" in +- *-gnux32) +- TARGET=X86_64 +- ;; +- *) +- TARGET=X86 +- ;; +- esac +- else +- TARGET=X86_64; +- fi ++ i?86-*-*) ++ TARGET=X86; TARGETDIR=x86 ++ ;; ++ ++ x86_64-*-*) ++ TARGET=X86_64; TARGETDIR=x86 + ;; + + ia64*-*-*) diff --git a/lang/python3/patches/006-remove-debian-multiarch-support.patch b/lang/python3/patches/006-remove-debian-multiarch-support.patch new file mode 100644 index 000000000..52d52b94e --- /dev/null +++ b/lang/python3/patches/006-remove-debian-multiarch-support.patch @@ -0,0 +1,12 @@ +diff --git a/setup.py b/setup.py +index 7868b7b..9ae0ef2 100644 +--- a/setup.py ++++ b/setup.py +@@ -444,7 +444,6 @@ class PyBuildExt(build_ext): + add_dir_to_list(self.compiler.include_dirs, '/usr/local/include') + if cross_compiling: + self.add_gcc_paths() +- self.add_multiarch_paths() + + # Add paths specified in the environment variables LDFLAGS and + # CPPFLAGS for header and library files. diff --git a/lang/python3/patches/007-distutils-do-not-adjust-path.patch b/lang/python3/patches/007-distutils-do-not-adjust-path.patch new file mode 100644 index 000000000..49fe92629 --- /dev/null +++ b/lang/python3/patches/007-distutils-do-not-adjust-path.patch @@ -0,0 +1,10 @@ +--- a/Lib/distutils/command/build_scripts.py ++++ b/Lib/distutils/command/build_scripts.py +@@ -89,6 +89,7 @@ class build_scripts (Command): + adjust = 1 + post_interp = match.group(1) or '' + ++ adjust = 0 + if adjust: + log.info("copying and adjusting %s -> %s", script, + self.build_dir) diff --git a/lang/python3/patches/010-do-not-add-rt-lib-dirs-when-cross-compiling.patch b/lang/python3/patches/010-do-not-add-rt-lib-dirs-when-cross-compiling.patch new file mode 100644 index 000000000..5a106d4e8 --- /dev/null +++ b/lang/python3/patches/010-do-not-add-rt-lib-dirs-when-cross-compiling.patch @@ -0,0 +1,15 @@ +diff --git a/setup.py b/setup.py +index 7868b7b..544fa7e 100644 +--- a/setup.py ++++ b/setup.py +@@ -452,8 +452,9 @@ class PyBuildExt(build_ext): + # directly since an inconsistently reproducible issue comes up where + # the environment variable is not set even though the value were passed + # into configure and stored in the Makefile (issue found on OS X 10.3). ++ rt_lib_dirs = [] if cross_compiling else self.compiler.runtime_library_dirs + for env_var, arg_name, dir_list in ( +- ('LDFLAGS', '-R', self.compiler.runtime_library_dirs), ++ ('LDFLAGS', '-R', rt_lib_dirs), + ('LDFLAGS', '-L', self.compiler.library_dirs), + ('CPPFLAGS', '-I', self.compiler.include_dirs)): + env_val = sysconfig.get_config_var(env_var) From 12bba3562773a278dca26c3e7dcf4ee8b6ce0866 Mon Sep 17 00:00:00 2001 From: Alexandru Ardelean Date: Sat, 14 Mar 2015 16:13:51 +0200 Subject: [PATCH 125/681] python3: revert puting the encodings folder into a python3-codecs Some notes about the 'encodings' module, which is about 1.7 MB. Unfortunately that one cannot be moved into the 'python3-codecs' package, because Python tries to load up all available encodings at startup. Some efforts to add a dummy folder/python file have failed so far, since there's a C code (Python/codecs.c) that tries to evaluate that all encodings (in the encodings folder/module) are valid. Basically the encodings module is a repository of encodings, and it seemst there are quite a few of them. Maybe a request to upstream Python would work for this, to make encodings a bit more decoupled from the interpreter. Signed-off-by: Alexandru Ardelean --- lang/python3/Makefile | 1 + lang/python3/files/python3-package-codecs.mk | 1 - 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/lang/python3/Makefile b/lang/python3/Makefile index 1fb001aa0..1cd18750d 100644 --- a/lang/python3/Makefile +++ b/lang/python3/Makefile @@ -156,6 +156,7 @@ define Build/InstallDev endef PYTHON3_BASE_LIB_FILES:= \ + /usr/lib/python$(PYTHON_VERSION)/encodings \ /usr/lib/python$(PYTHON_VERSION)/_collections_abc.py \ /usr/lib/python$(PYTHON_VERSION)/_sitebuiltins.py \ /usr/lib/python$(PYTHON_VERSION)/_sysconfigdata.py \ diff --git a/lang/python3/files/python3-package-codecs.mk b/lang/python3/files/python3-package-codecs.mk index 67c3ee51a..66101e1fb 100644 --- a/lang/python3/files/python3-package-codecs.mk +++ b/lang/python3/files/python3-package-codecs.mk @@ -12,7 +12,6 @@ $(call Package/python3/Default) endef $(eval $(call Py3BasePackage,python3-codecs, \ - /usr/lib/python$(PYTHON3_VERSION)/encodings \ /usr/lib/python$(PYTHON3_VERSION)/lib-dynload/_codecs_cn.$(PYTHON3_SO_SUFFIX) \ /usr/lib/python$(PYTHON3_VERSION)/lib-dynload/_codecs_hk.$(PYTHON3_SO_SUFFIX) \ /usr/lib/python$(PYTHON3_VERSION)/lib-dynload/_codecs_iso2022.$(PYTHON3_SO_SUFFIX) \ From 73094db36f8d1e4fdd5108b8414d0036a5f8eecf Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Sun, 15 Mar 2015 12:09:05 +0100 Subject: [PATCH 126/681] avahi: avahi-autoipd uses libssp if SSP_SUPPORT is enabled Found on an all-y build with SSP enabled: Package avahi-autoipd is missing dependencies for the following libraries: libssp.so.0 Adding the missing dependency to address that. Signed-off-by: Daniel Golle --- libs/avahi/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libs/avahi/Makefile b/libs/avahi/Makefile index 5f7ac1374..4a56b6155 100644 --- a/libs/avahi/Makefile +++ b/libs/avahi/Makefile @@ -70,7 +70,7 @@ endef define Package/avahi-autoipd $(call Package/avahi/Default) SUBMENU:=IP Addresses and Names - DEPENDS:=+libdaemon + DEPENDS:=+libdaemon +SSP_SUPPORT:libssp TITLE:=IPv4LL network address configuration daemon endef From 387f31560ff66d328cf238b383473b4055d7afed Mon Sep 17 00:00:00 2001 From: Jonathan McCrohan Date: Sun, 15 Mar 2015 18:15:18 +0000 Subject: [PATCH 127/681] sslh: update to 1.17 Signed-off-by: Jonathan McCrohan --- net/sslh/Makefile | 6 +++--- net/sslh/patches/001-no_sslh_select.patch | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/net/sslh/Makefile b/net/sslh/Makefile index 9b13e7db5..e7f1c0e6b 100644 --- a/net/sslh/Makefile +++ b/net/sslh/Makefile @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=sslh -PKG_VERSION:=v1.16 -PKG_RELEASE:=2 +PKG_VERSION:=v1.17 +PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://rutschle.net/tech/ -PKG_MD5SUM:=c6e7d1cb0adb15f6efe480e36d98c560 +PKG_MD5SUM:=1fc3ada4bafaca5a9786cc1431f48ed4 PKG_LICENSE:=GPL-2.0+ PKG_LICENSE_FILES:=COPYING diff --git a/net/sslh/patches/001-no_sslh_select.patch b/net/sslh/patches/001-no_sslh_select.patch index 2ff68116f..2b461f672 100644 --- a/net/sslh/patches/001-no_sslh_select.patch +++ b/net/sslh/patches/001-no_sslh_select.patch @@ -18,7 +18,7 @@ echosrv: $(OBJS) echosrv.o $(CC) $(CFLAGS) $(LDFLAGS) -o echosrv echosrv.o probe.o common.o $(LIBS) -@@ -86,7 +82,7 @@ distclean: clean +@@ -85,7 +81,7 @@ distclean: clean rm -f tags cscope.* clean: From ba4338d6f7753c77b03357aa74cc63771e94074a Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Sun, 15 Mar 2015 12:21:36 +0100 Subject: [PATCH 128/681] mmc-utils: don't set -D_FORTIFY_SOURCE in Makefile Now that security features are set globally, having the FORTIFY_SOURCE option set in Makefile breaks the build when CONFIG_PKG_FORTIFY_SOURCE_{1,2} is enabled as well. arm-openwrt-linux-uclibcgnueabi-gcc -Wall -Werror -Wuninitialized -Wundef -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -Os -pipe -march=armv6k -mtune=mpcore -fno-caller-saves -fhonour-copts -Wno-error=unused-but-set-variable -mfloat-abi=soft -Wformat -Werror=format-security -fstack-protector -D_FORTIFY_SOURCE=1 -Wl,-z,now -Wl,-z,relro -Wp,-MMD,./.mmc.o.d,-MT,mmc.o -c mmc.c -o mmc.o :0:0: error: "_FORTIFY_SOURCE" redefined [-Werror] :0:0: note: this is the location of the previous definition cc1: all warnings being treated as errors Makefile:35: recipe for target 'mmc.o' failed Fix this by removing -D_FORTIFY_SOURCE=2 from Makefile. Signed-off-by: Daniel Golle Signed-off-by: Michael Heimpold --- utils/mmc-utils/Makefile | 2 +- .../001-dont-set-fortify-source-in-makefile.patch | 11 +++++++++++ 2 files changed, 12 insertions(+), 1 deletion(-) create mode 100644 utils/mmc-utils/patches/001-dont-set-fortify-source-in-makefile.patch diff --git a/utils/mmc-utils/Makefile b/utils/mmc-utils/Makefile index 59da16c6c..a5c425b6a 100644 --- a/utils/mmc-utils/Makefile +++ b/utils/mmc-utils/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=mmc-utils PKG_VERSION=2015-03-06-$(PKG_SOURCE_VERSION) -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE_PROTO:=git PKG_SOURCE_URL:=https://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc-utils.git diff --git a/utils/mmc-utils/patches/001-dont-set-fortify-source-in-makefile.patch b/utils/mmc-utils/patches/001-dont-set-fortify-source-in-makefile.patch new file mode 100644 index 000000000..9b2b8ba25 --- /dev/null +++ b/utils/mmc-utils/patches/001-dont-set-fortify-source-in-makefile.patch @@ -0,0 +1,11 @@ +Index: mmc-utils-f4eb241519f8d500ce6068a70d2389be39ac5189/Makefile +=================================================================== +--- mmc-utils-f4eb241519f8d500ce6068a70d2389be39ac5189.orig/Makefile ++++ mmc-utils-f4eb241519f8d500ce6068a70d2389be39ac5189/Makefile +@@ -1,5 +1,5 @@ + CC ?= gcc +-AM_CFLAGS = -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 ++AM_CFLAGS = -D_FILE_OFFSET_BITS=64 + CFLAGS ?= -g -O2 + objects = \ + mmc.o \ From f3527d974eb52e80721f3e9b6e3fbe7590e6d88d Mon Sep 17 00:00:00 2001 From: Peter Wagner Date: Mon, 16 Mar 2015 02:34:13 +0100 Subject: [PATCH 129/681] git: update to 2.3.3 Signed-off-by: Peter Wagner --- net/git/Makefile | 6 +++--- net/git/patches/100-convert_builtin.patch | 19 +++++++++---------- .../patches/300-configure_for_crosscompiling | 10 +++++----- .../patches/400-imapsend_without_curl.patch | 8 ++++---- 4 files changed, 21 insertions(+), 22 deletions(-) diff --git a/net/git/Makefile b/net/git/Makefile index 6c3ac796e..f161dcb13 100644 --- a/net/git/Makefile +++ b/net/git/Makefile @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=git -PKG_VERSION:=2.3.0 -PKG_RELEASE:=3 +PKG_VERSION:=2.3.3 +PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=@KERNEL/software/scm/git/ -PKG_MD5SUM:=e5880760d1f43f4f49b3bf94b9046eee +PKG_MD5SUM:=14a885da3b432455b606cc1a25a6c681 PKG_INSTALL:=1 PKG_BUILD_PARALLEL:=1 diff --git a/net/git/patches/100-convert_builtin.patch b/net/git/patches/100-convert_builtin.patch index 52bebaa6c..05a3f3f33 100644 --- a/net/git/patches/100-convert_builtin.patch +++ b/net/git/patches/100-convert_builtin.patch @@ -7,14 +7,13 @@ -PROGRAM_OBJS += credential-store.o -PROGRAM_OBJS += daemon.o -PROGRAM_OBJS += fast-import.o --PROGRAM_OBJS += http-backend.o + PROGRAM_OBJS += http-backend.o -PROGRAM_OBJS += imap-send.o -PROGRAM_OBJS += sh-i18n--envsubst.o -PROGRAM_OBJS += shell.o -PROGRAM_OBJS += show-index.o -PROGRAM_OBJS += upload-pack.o -PROGRAM_OBJS += remote-testsvn.o -+PROGRAM_OBJS += http-backend.o # Binary suffix, set to .exe for Windows builds X = @@ -30,7 +29,7 @@ GITLIBS = $(LIB_FILE) $(XDIFF_LIB) EXTLIBS = -@@ -1070,7 +1067,7 @@ endif +@@ -1070,7 +1066,7 @@ endif EXTLIBS += -lz ifndef NO_OPENSSL @@ -39,7 +38,7 @@ ifdef OPENSSLDIR BASIC_CFLAGS += -I$(OPENSSLDIR)/include OPENSSL_LINK = -L$(OPENSSLDIR)/$(lib) $(CC_LD_DYNPATH)$(OPENSSLDIR)/$(lib) -@@ -1933,10 +1930,6 @@ endif +@@ -1933,10 +1929,6 @@ endif git-%$X: %.o GIT-LDFLAGS $(GITLIBS) $(QUIET_LINK)$(CC) $(ALL_CFLAGS) -o $@ $(ALL_LDFLAGS) $(filter %.o,$^) $(LIBS) @@ -50,7 +49,7 @@ git-http-fetch$X: http.o http-walker.o http-fetch.o GIT-LDFLAGS $(GITLIBS) $(QUIET_LINK)$(CC) $(ALL_CFLAGS) -o $@ $(ALL_LDFLAGS) $(filter %.o,$^) \ $(LIBS) $(CURL_LIBCURL) -@@ -2254,10 +2247,11 @@ endif +@@ -2254,10 +2246,11 @@ endif bindir=$$(cd '$(DESTDIR_SQ)$(bindir_SQ)' && pwd) && \ execdir=$$(cd '$(DESTDIR_SQ)$(gitexec_instdir_SQ)' && pwd) && \ { test "$$bindir/" = "$$execdir/" || \ @@ -98,7 +97,7 @@ +#include "../upload-pack.c" --- a/daemon.c +++ b/daemon.c -@@ -1096,7 +1096,7 @@ static int serve(struct string_list *lis +@@ -1193,7 +1193,7 @@ static int serve(struct string_list *lis return service_loop(&socklist); } @@ -107,7 +106,7 @@ { int listen_port = 0; struct string_list listen_addr = STRING_LIST_INIT_NODUP; -@@ -1292,12 +1292,13 @@ int main(int argc, char **argv) +@@ -1389,12 +1389,13 @@ int main(int argc, char **argv) store_pid(pid_file); /* prepare argv for serving-processes */ @@ -128,7 +127,7 @@ } --- a/fast-import.c +++ b/fast-import.c -@@ -3350,7 +3350,7 @@ static void parse_argv(void) +@@ -3354,7 +3354,7 @@ static void parse_argv(void) read_marks(); } @@ -169,7 +168,7 @@ { "index-pack", cmd_index_pack, RUN_SETUP_GENTLY }, { "init", cmd_init_db, NO_SETUP }, { "init-db", cmd_init_db, NO_SETUP }, -@@ -459,6 +462,7 @@ static struct cmd_struct commands[] = { +@@ -459,6 +461,7 @@ static struct cmd_struct commands[] = { { "revert", cmd_revert, RUN_SETUP | NEED_WORK_TREE }, { "rm", cmd_rm, RUN_SETUP }, { "send-pack", cmd_send_pack, RUN_SETUP }, @@ -177,7 +176,7 @@ { "shortlog", cmd_shortlog, RUN_SETUP_GENTLY | USE_PAGER }, { "show", cmd_show, RUN_SETUP }, { "show-branch", cmd_show_branch, RUN_SETUP }, -@@ -475,6 +479,7 @@ static struct cmd_struct commands[] = { +@@ -475,6 +478,7 @@ static struct cmd_struct commands[] = { { "update-server-info", cmd_update_server_info, RUN_SETUP }, { "upload-archive", cmd_upload_archive }, { "upload-archive--writer", cmd_upload_archive_writer }, diff --git a/net/git/patches/300-configure_for_crosscompiling b/net/git/patches/300-configure_for_crosscompiling index a62bcc938..0ccfaecd0 100644 --- a/net/git/patches/300-configure_for_crosscompiling +++ b/net/git/patches/300-configure_for_crosscompiling @@ -1,6 +1,6 @@ ---- git-2.3.0/configure.ac.old 2015-03-08 01:19:33.675810197 -0300 -+++ git-2.3.0/configure.ac 2015-03-08 01:27:10.688033125 -0300 -@@ -844,7 +844,8 @@ +--- a/configure.ac ++++ b/configure.ac +@@ -844,7 +844,8 @@ AC_RUN_IFELSE( FILE *f = fopen(".", "r"); return f && fread(&c, 1, 1, f)]])], [ac_cv_fread_reads_directories=no], @@ -10,7 +10,7 @@ ]) if test $ac_cv_fread_reads_directories = yes; then FREAD_READS_DIRECTORIES=UnfortunatelyYes -@@ -878,7 +879,8 @@ +@@ -878,7 +879,8 @@ AC_RUN_IFELSE( if (snprintf(buf, 3, "%s", "12345") != 5 || strcmp(buf, "12")) return 1]])], [ac_cv_snprintf_returns_bogus=no], @@ -20,7 +20,7 @@ ]) if test $ac_cv_snprintf_returns_bogus = yes; then SNPRINTF_RETURNS_BOGUS=UnfortunatelyYes -@@ -901,7 +903,8 @@ +@@ -901,7 +903,8 @@ yippeeyeswehaveit #endif ]), [ac_cv_sane_mode_bits=yes], diff --git a/net/git/patches/400-imapsend_without_curl.patch b/net/git/patches/400-imapsend_without_curl.patch index 1b5dff30d..44ceb013f 100644 --- a/net/git/patches/400-imapsend_without_curl.patch +++ b/net/git/patches/400-imapsend_without_curl.patch @@ -1,8 +1,8 @@ ---- git-2.3.0/Makefile.old 2015-03-08 02:14:42.857845824 -0300 -+++ git-2.3.0/Makefile 2015-03-08 02:15:06.697451372 -0300 -@@ -1039,7 +1039,7 @@ +--- a/Makefile ++++ b/Makefile +@@ -1039,7 +1039,7 @@ else endif - curl_check := $(shell (echo 072200; curl-config --vernum) 2>/dev/null | sort -r | sed -ne 2p) + curl_check := $(shell (echo 072200; curl-config --vernum | sed -e '/^70[BC]/s/^/0/') 2>/dev/null | sort -r | sed -ne 2p) ifeq "$(curl_check)" "072200" - USE_CURL_FOR_IMAP_SEND = YesPlease +# USE_CURL_FOR_IMAP_SEND = YesPlease From a5d784de0b8c50d9dc0684879ed7a26687f5c060 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20=C4=8Cerm=C3=A1k?= Date: Mon, 16 Mar 2015 10:41:33 +0100 Subject: [PATCH 130/681] python: added configure args for distutils path detection MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit python-package.mk now defines (extends) CONFIGURE_ARGS that are adjusting PREFIX and EXEC_PREFIX in distutils.sysconfig during compilation. These variables are sometimes used by autotools to detect path to Python header files. Adding these variables to python-package.mk fixes compilation of legacy autotools-configured packages that already include python-package.mk and do not overwrite CONFIGURE_ARGS. Signed-off-by: Jan Čermák Cc: Alexandru Ardelean --- lang/python/files/python-package.mk | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/lang/python/files/python-package.mk b/lang/python/files/python-package.mk index 6936a0748..4895b91a1 100644 --- a/lang/python/files/python-package.mk +++ b/lang/python/files/python-package.mk @@ -33,6 +33,13 @@ define HostPython ) endef +# These configure args are needed in detection of path to Python header files +# using autotools. +CONFIGURE_ARGS += \ + _python_sysroot="$(STAGING_DIR)" \ + _python_prefix="/usr" \ + _python_exec_prefix="/usr" + PKG_USE_MIPS16:=0 # This is required in addition to PKG_USE_MIPS16:=0 because otherwise MIPS16 # flags are inherited from the Python base package (via sysconfig module) From 6aa5742fb56f68d326c7f689d629f1d68772fe1e Mon Sep 17 00:00:00 2001 From: Karl Palsson Date: Mon, 16 Mar 2015 11:09:34 +0000 Subject: [PATCH 131/681] lua-penlight: Bump to version 1.3.2 And include the pkg md5sum finally. Signed-off-by: Karl Palsson --- lang/lua-penlight/Makefile | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lang/lua-penlight/Makefile b/lang/lua-penlight/Makefile index e06f4c25b..89192e29a 100644 --- a/lang/lua-penlight/Makefile +++ b/lang/lua-penlight/Makefile @@ -8,11 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=lua-penlight -PKG_VERSION:=1.3.1 +PKG_VERSION:=1.3.2 PKG_RELEASE:=1 PKG_BUILD_DIR:=$(BUILD_DIR)/Penlight-$(PKG_VERSION) PKG_SOURCE:=$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=https://github.com/stevedonovan/Penlight/archive/ +PKG_MD5SUM:=0315a39834bb6fab07741ec04ede1bf4 PKG_LICENSE:=MIT PKG_LICENSE_FILE:=LICENSE.md From a001565a104cfe763cc3a11cc0cca5815912fd78 Mon Sep 17 00:00:00 2001 From: Jaehoon You Date: Mon, 16 Mar 2015 13:00:44 +0900 Subject: [PATCH 132/681] coova-chilli: fix typo prevents compile with cyassl Signed-off-by: Jaehoon You --- net/coova-chilli/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/net/coova-chilli/Makefile b/net/coova-chilli/Makefile index 2ff8729ed..29bfca682 100644 --- a/net/coova-chilli/Makefile +++ b/net/coova-chilli/Makefile @@ -80,7 +80,7 @@ define Build/Configure $(if $(CONFIG_COOVACHILLI_LARGELIMITS),--enable,--disable)-largelimits \ $(if $(CONFIG_COOVACHILLI_UAMDOMAINFILE),--enable,--disable)-uamdomainfile \ $(if $(CONFIG_COOVACHILLI_MATRIXSSL),--with,--without)-matrixssl \ - $(if $(CONFIG_COOVACHILLI_CYASSL),--with,--without)-cyaxssl \ + $(if $(CONFIG_COOVACHILLI_CYASSL),--with,--without)-cyassl \ $(if $(CONFIG_COOVACHILLI_OPENSSL),--with,--without)-openssl \ ) endef From f6927350e4f5aedd9870a65923ceff232bd10bf3 Mon Sep 17 00:00:00 2001 From: Michael Haas Date: Tue, 10 Mar 2015 09:54:17 +0100 Subject: [PATCH 133/681] stunnel: Bring it back at v5.10 From: Michael Haas * init script no longer creates certificates (consider client mode as use case) * patches/010_fix_getnameinfo.patch: Fix getnameinfo signature * patches/011_disable_ssp_linking.patch: Disable -fstack-protector as it is not always available in OpenWRT * old patches (in oldpackages) no longer necessary * remove libwrap dependency * remove libpthread dependency * respect CONFIG_IPV6 * init script uses procd * sample stunnel.conf runs in client mode - prevents start failure, does not require cert Possible enhancement: automatically generate certificate as done in uhttpd. However, as client mode is a possible use case, I'd rather not. Additionally, stunnel may use several certs with user-defined locations and we can't easily set a cert location via command-line args. The package is based on https://sites.google.com/site/twisteroidambassador/openwrt/stunnel Signed-off-by: Michael Haas --- net/stunnel/Makefile | 77 ++++++++++ net/stunnel/files/stunnel.conf | 45 ++++++ net/stunnel/files/stunnel.init | 12 ++ net/stunnel/patches/010_fix_getnameinfo.patch | 25 ++++ .../patches/011_disable_ssp_linking.patch | 140 ++++++++++++++++++ 5 files changed, 299 insertions(+) create mode 100644 net/stunnel/Makefile create mode 100644 net/stunnel/files/stunnel.conf create mode 100644 net/stunnel/files/stunnel.init create mode 100644 net/stunnel/patches/010_fix_getnameinfo.patch create mode 100644 net/stunnel/patches/011_disable_ssp_linking.patch diff --git a/net/stunnel/Makefile b/net/stunnel/Makefile new file mode 100644 index 000000000..9238331d7 --- /dev/null +++ b/net/stunnel/Makefile @@ -0,0 +1,77 @@ +# +# Copyright (C) 2006-2014 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=stunnel +PKG_VERSION:=5.10 +PKG_RELEASE:=1 + +PKG_LICENSE:=GPL-2.0+ +PKG_MAINTAINER:=Michael Haas +PKG_LICENSE_FILES:=COPYING COPYRIGHT.GPL + +PKG_SOURCE_URL:=http://stunnel.cybermirror.org/archive/5.x/ +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz +PKG_MD5SUM:=a0edda805eb7d6ea600a230fb0979ea1 + +PKG_FIXUP:=autoreconf +PKG_INSTALL:=1 + +include $(INCLUDE_DIR)/package.mk + +define Package/stunnel + SECTION:=net + CATEGORY:=Network + DEPENDS:=+libopenssl + TITLE:=SSL TCP Wrapper + URL:=http://www.stunnel.org/ +endef + +define Package/stunnel/description + Stunnel is a program that allows you to encrypt arbitrary TCP + connections inside SSL (Secure Sockets Layer) available on both Unix + and Windows. Stunnel can allow you to secure non-SSL aware daemons and + protocols (like POP, IMAP, LDAP, etc) by having Stunnel provide the + encryption, requiring no changes to the daemon's code. +endef + +define Package/stunnel/conffiles +/etc/stunnel/stunnel.conf +endef + + +CONFIGURE_ARGS+= \ + --with-random=/dev/urandom \ + --with-threads=fork \ + --with-ssl=$(STAGING_DIR)/usr \ + --disable-libwrap \ + --disable-systemd + +ifeq ($(CONFIG_IPV6),n) +CONFIGURE_ARGS+= \ + --disable-ipv6 +endif + +define Build/Compile + mkdir -p $(PKG_INSTALL_DIR)/etc/stunnel + echo '#dummy' > $(PKG_INSTALL_DIR)/etc/stunnel/stunnel.pem + $(call Build/Compile/Default) +endef + +define Package/stunnel/install + $(INSTALL_DIR) $(1)/usr/bin + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/stunnel $(1)/usr/bin/ + $(INSTALL_DIR) $(1)/usr/lib/stunnel + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/stunnel/libstunnel.so $(1)/usr/lib/stunnel/ + $(INSTALL_DIR) $(1)/etc/stunnel + $(INSTALL_CONF) ./files/stunnel.conf $(1)/etc/stunnel/stunnel.conf + $(INSTALL_DIR) $(1)/etc/init.d + $(INSTALL_BIN) ./files/stunnel.init $(1)/etc/init.d/stunnel +endef + +$(eval $(call BuildPackage,stunnel)) diff --git a/net/stunnel/files/stunnel.conf b/net/stunnel/files/stunnel.conf new file mode 100644 index 000000000..2f10800b9 --- /dev/null +++ b/net/stunnel/files/stunnel.conf @@ -0,0 +1,45 @@ +; Drop privileges +setuid = nobody +setgid = nogroup + +; When running under procd, stay in foreground +foreground = yes + +; Don't log to stderr, use syslog +syslog = yes + +; 1-7. Use 7 for greatest verbosity +;debug = 5 + +; Starting here, enter your services or uncomment the examples + +; Example: +; If your local httpd does not support HTTPS, use stunnel in remote +; mode to forward TLS connections coming in on port 443 to non-TLS +; on port 80. +; Make sure that the cert is available. +;[httpd] +;accept = 443 +;connect = 127.0.0.1:80 +;cert = /etc/stunnel/stunnel.pem + +; Example: +; If your local email client does not support TLS, +; use stunnel in client mode to forward non-TLS connections on +; port 143 to TLS-enabled servername:993. +;[imap] +;client = yes +;accept = 143 +;connect = servername:993 +; Disable peer verification - be sure to understand the limitations of peer +; verification in stunnel when enabling. +;verify = 0 + +; Default client section: +; stunnel requires at least one section to start successfully. +; You can safely remove this section once you have configured +; your own. We use client mode here as server requires a certificate. +[dummy] +client = yes +accept = localhost:6000 +connect = localhost:6001 diff --git a/net/stunnel/files/stunnel.init b/net/stunnel/files/stunnel.init new file mode 100644 index 000000000..e622205b8 --- /dev/null +++ b/net/stunnel/files/stunnel.init @@ -0,0 +1,12 @@ +#!/bin/sh /etc/rc.common +# Copyright (C) 2006-2008 OpenWrt.org + +START=90 +USE_PROCD=1 + +start_service() { + procd_open_instance + procd_set_param command /usr/bin/stunnel /etc/stunnel/stunnel.conf + procd_set_param respawn # respawn automatically if something died + procd_close_instance +} diff --git a/net/stunnel/patches/010_fix_getnameinfo.patch b/net/stunnel/patches/010_fix_getnameinfo.patch new file mode 100644 index 000000000..f0a9faa7b --- /dev/null +++ b/net/stunnel/patches/010_fix_getnameinfo.patch @@ -0,0 +1,25 @@ +--- a/src/prototypes.h ++++ b/src/prototypes.h +@@ -559,7 +559,7 @@ extern GETNAMEINFO s_getnameinfo; + + #endif /* USE_WIN32 */ + +-int getnameinfo(const struct sockaddr *, int, char *, int, char *, int, int); ++int getnameinfo(const struct sockaddr *, socklen_t, char *, socklen_t, char *, socklen_t, unsigned int); + + #endif /* !defined HAVE_GETNAMEINFO */ + +--- a/src/resolver.c ++++ b/src/resolver.c +@@ -535,8 +535,9 @@ const char *s_gai_strerror(int err) { + /* implementation is limited to functionality needed by stunnel */ + + #ifndef HAVE_GETNAMEINFO +-int getnameinfo(const struct sockaddr *sa, int salen, +- char *host, int hostlen, char *serv, int servlen, int flags) { ++int getnameinfo(const struct sockaddr *sa, socklen_t salen, ++ char *host, socklen_t hostlen, char *serv, socklen_t servlen, ++ unsigned int flags) { + + #if defined(USE_WIN32) && !defined(_WIN32_WCE) + if(s_getnameinfo) diff --git a/net/stunnel/patches/011_disable_ssp_linking.patch b/net/stunnel/patches/011_disable_ssp_linking.patch new file mode 100644 index 000000000..459c016da --- /dev/null +++ b/net/stunnel/patches/011_disable_ssp_linking.patch @@ -0,0 +1,140 @@ +--- a/configure ++++ b/configure +@@ -5646,66 +5646,66 @@ done + + + +-for flag in -fstack-protector; do +- as_CACHEVAR=`$as_echo "ax_cv_check_cflags__$flag" | $as_tr_sh` +-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C compiler accepts $flag" >&5 +-$as_echo_n "checking whether C compiler accepts $flag... " >&6; } +-if eval \${$as_CACHEVAR+:} false; then : +- $as_echo_n "(cached) " >&6 +-else +- +- ax_check_save_flags=$CFLAGS +- CFLAGS="$CFLAGS $flag" +- cat confdefs.h - <<_ACEOF >conftest.$ac_ext +-/* end confdefs.h. */ +- +-int +-main () +-{ +- +- ; +- return 0; +-} +-_ACEOF +-if ac_fn_c_try_compile "$LINENO"; then : +- eval "$as_CACHEVAR=yes" +-else +- eval "$as_CACHEVAR=no" +-fi +-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +- CFLAGS=$ax_check_save_flags +-fi +-eval ac_res=\$$as_CACHEVAR +- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +-$as_echo "$ac_res" >&6; } +-if test x"`eval 'as_val=${'$as_CACHEVAR'};$as_echo "$as_val"'`" = xyes; then : +- if ${CFLAGS+:} false; then : +- case " $CFLAGS " in +- *" $flag "*) +- { { $as_echo "$as_me:${as_lineno-$LINENO}: : CFLAGS already contains \$flag"; } >&5 +- (: CFLAGS already contains $flag) 2>&5 +- ac_status=$? +- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 +- test $ac_status = 0; } +- ;; +- *) +- { { $as_echo "$as_me:${as_lineno-$LINENO}: : CFLAGS=\"\$CFLAGS \$flag\""; } >&5 +- (: CFLAGS="$CFLAGS $flag") 2>&5 +- ac_status=$? +- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 +- test $ac_status = 0; } +- CFLAGS="$CFLAGS $flag" +- ;; +- esac +-else +- CFLAGS="$flag" +-fi +- +-else +- : +-fi +- +-done ++#for flag in -fstack-protector; do ++# as_CACHEVAR=`$as_echo "ax_cv_check_cflags__$flag" | $as_tr_sh` ++#{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C compiler accepts $flag" >&5 ++#$as_echo_n "checking whether C compiler accepts $flag... " >&6; } ++#if eval \${$as_CACHEVAR+:} false; then : ++# $as_echo_n "(cached) " >&6 ++#else ++# ++# ax_check_save_flags=$CFLAGS ++# CFLAGS="$CFLAGS $flag" ++# cat confdefs.h - <<_ACEOF >conftest.$ac_ext ++#/* end confdefs.h. */ ++ ++#int ++#main () ++#{ ++# ++# ; ++# return 0; ++#} ++#_ACEOF ++#if ac_fn_c_try_compile "$LINENO"; then : ++# eval "$as_CACHEVAR=yes" ++#else ++# eval "$as_CACHEVAR=no" ++#fi ++#rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext ++# CFLAGS=$ax_check_save_flags ++#fi ++#eval ac_res=\$$as_CACHEVAR ++# { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 ++#$as_echo "$ac_res" >&6; } ++#if test x"`eval 'as_val=${'$as_CACHEVAR'};$as_echo "$as_val"'`" = xyes; then : ++# if ${CFLAGS+:} false; then : ++# case " $CFLAGS " in ++# *" $flag "*) ++# { { $as_echo "$as_me:${as_lineno-$LINENO}: : CFLAGS already contains \$flag"; } >&5 ++# (: CFLAGS already contains $flag) 2>&5 ++# ac_status=$? ++# $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 ++# test $ac_status = 0; } ++# ;; ++# *) ++# { { $as_echo "$as_me:${as_lineno-$LINENO}: : CFLAGS=\"\$CFLAGS \$flag\""; } >&5 ++# (: CFLAGS="$CFLAGS $flag") 2>&5 ++# ac_status=$? ++# $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 ++# test $ac_status = 0; } ++# CFLAGS="$CFLAGS $flag" ++# ;; ++# esac ++#else ++# CFLAGS="$flag" ++#fi ++# ++#else ++# : ++#fi ++# ++#done + + + +--- a/configure.ac ++++ b/configure.ac +@@ -71,7 +71,7 @@ AX_APPEND_COMPILE_FLAGS([-Wformat=2]) + AX_APPEND_COMPILE_FLAGS([-Wconversion]) + AX_APPEND_COMPILE_FLAGS([-Wno-long-long]) + AX_APPEND_COMPILE_FLAGS([-Wno-deprecated-declarations]) +-AX_APPEND_COMPILE_FLAGS([-fstack-protector]) ++#AX_APPEND_COMPILE_FLAGS([-fstack-protector]) + AX_APPEND_COMPILE_FLAGS([-fPIE]) + AX_APPEND_COMPILE_FLAGS([-D_FORTIFY_SOURCE=2]) + AX_APPEND_LINK_FLAGS([-fPIE -pie]) From 74c9585abc7ba7495466f5e76767a6353ee33717 Mon Sep 17 00:00:00 2001 From: Adze1502 Date: Tue, 17 Mar 2015 19:57:49 +0100 Subject: [PATCH 134/681] mwan3: update to version 1.6-1 Add ipset support (ipset version >6.22 with ipmark required) Add stickiness feature Signed-off-by: Jeroen Louwes --- net/mwan3/Makefile | 6 +- net/mwan3/files/etc/config/mwan3 | 15 +- net/mwan3/files/etc/hotplug.d/iface/15-mwan3 | 169 +++++++++++++------ net/mwan3/files/usr/sbin/mwan3 | 48 +++--- 4 files changed, 155 insertions(+), 83 deletions(-) diff --git a/net/mwan3/Makefile b/net/mwan3/Makefile index c0f720bae..d714d4fe9 100644 --- a/net/mwan3/Makefile +++ b/net/mwan3/Makefile @@ -8,8 +8,8 @@ include $(TOPDIR)/rules.mk PKG_NAME:=mwan3 -PKG_VERSION:=1.5 -PKG_RELEASE:=10 +PKG_VERSION:=1.6 +PKG_RELEASE:=1 PKG_MAINTAINER:=Jeroen Louwes PKG_LICENSE:=GPLv2 @@ -19,7 +19,7 @@ define Package/mwan3 SECTION:=net CATEGORY:=Network SUBMENU:=Routing and Redirection - DEPENDS:=+ip +iptables +iptables-mod-conntrack-extra +iptables-mod-ipopt + DEPENDS:=+ip +ipset +iptables +iptables-mod-conntrack-extra +iptables-mod-ipopt TITLE:=Multiwan hotplug script with connection tracking support MAINTAINER:=Jeroen Louwes PKGARCH:=all diff --git a/net/mwan3/files/etc/config/mwan3 b/net/mwan3/files/etc/config/mwan3 index 53f2f9832..f66c024c0 100644 --- a/net/mwan3/files/etc/config/mwan3 +++ b/net/mwan3/files/etc/config/mwan3 @@ -61,17 +61,18 @@ config policy 'wan2_wan' list use_member 'wan_m2_w3' list use_member 'wan2_m1_w2' -config rule 'sticky_even' - option src_ip '0.0.0.0/0.0.0.1' - option dest_port '443' +config rule 'youtube' + option sticky '1' + option ipset 'youtube' + option dest_port '80,443' option proto 'tcp' - option use_policy 'wan_wan2' + option use_policy 'balanced' -config rule 'sticky_odd' - option src_ip '0.0.0.1/0.0.0.1' +config rule 'https' + option sticky '1' option dest_port '443' option proto 'tcp' - option use_policy 'wan2_wan' + option use_policy 'balanced' config rule 'default_rule' option dest_ip '0.0.0.0/0' diff --git a/net/mwan3/files/etc/hotplug.d/iface/15-mwan3 b/net/mwan3/files/etc/hotplug.d/iface/15-mwan3 index 25044c4d3..f117e49e6 100644 --- a/net/mwan3/files/etc/hotplug.d/iface/15-mwan3 +++ b/net/mwan3/files/etc/hotplug.d/iface/15-mwan3 @@ -12,12 +12,18 @@ mwan3_set_general_iptables() $IPT -N mwan3_ifaces fi - if ! $IPT -S mwan3_rules &> /dev/null; then - $IPT -N mwan3_rules - fi - if ! $IPT -S mwan3_connected &> /dev/null; then $IPT -N mwan3_connected + $IPS create mwan3_connected hash:net + $IPT -A mwan3_connected -m set --match-set mwan3_connected dst -j MARK --set-xmark 0xff00/0xff00 + fi + + if ! $IPT -S mwan3_track &> /dev/null; then + $IPT -N mwan3_track + fi + + if ! $IPT -S mwan3_rules &> /dev/null; then + $IPT -N mwan3_rules fi if ! $IPT -S mwan3_hook &> /dev/null; then @@ -25,15 +31,12 @@ mwan3_set_general_iptables() $IPT -A mwan3_hook -j CONNMARK --restore-mark --nfmask 0xff00 --ctmask 0xff00 $IPT -A mwan3_hook -m mark --mark 0x0/0xff00 -j mwan3_ifaces $IPT -A mwan3_hook -m mark --mark 0x0/0xff00 -j mwan3_connected + $IPT -A mwan3_hook -m mark --mark 0x0/0xff00 -j mwan3_track $IPT -A mwan3_hook -m mark --mark 0x0/0xff00 -j mwan3_rules $IPT -A mwan3_hook -j CONNMARK --save-mark --nfmask 0xff00 --ctmask 0xff00 $IPT -A mwan3_hook -m mark ! --mark 0xff00/0xff00 -j mwan3_connected fi - if ! $IPT -S mwan3_output_hook &> /dev/null; then - $IPT -N mwan3_output_hook - fi - if ! $IPT -S PREROUTING | grep mwan3_hook &> /dev/null; then $IPT -A PREROUTING -j mwan3_hook fi @@ -42,10 +45,6 @@ mwan3_set_general_iptables() $IPT -A OUTPUT -j mwan3_hook fi - if ! $IPT -S OUTPUT | grep mwan3_output_hook &> /dev/null; then - $IPT -A OUTPUT -j mwan3_output_hook - fi - $IPT -F mwan3_rules } @@ -62,28 +61,29 @@ mwan3_set_general_rules() mwan3_set_connected_iptables() { - local connected_networks + local connected_network if $IPT -S mwan3_connected &> /dev/null; then - $IPT -F mwan3_connected - for connected_networks in $($IP route | awk '{print $1}' | egrep '[0-9]{1,3}(\.[0-9]{1,3}){3}'); do - $IPT -A mwan3_connected -d $connected_networks -j MARK --set-xmark 0xff00/0xff00 + $IPS create mwan3_connected_temp hash:net + + for connected_network in $($IP route | awk '{print $1}' | egrep '[0-9]{1,3}(\.[0-9]{1,3}){3}'); do + $IPS -! add mwan3_connected_temp $connected_network done - for connected_networks in $($IP route list table 0 | awk '{print $2}' | egrep '[0-9]{1,3}(\.[0-9]{1,3}){3}'); do - $IPT -A mwan3_connected -d $connected_networks -j MARK --set-xmark 0xff00/0xff00 + for connected_network in $($IP route list table 0 | awk '{print $2}' | egrep '[0-9]{1,3}(\.[0-9]{1,3}){3}'); do + $IPS -! add mwan3_connected_temp $connected_network done - $IPT -I mwan3_connected -d 224.0.0.0/3 -j MARK --set-xmark 0xff00/0xff00 - $IPT -I mwan3_connected -d 127.0.0.0/8 -j MARK --set-xmark 0xff00/0xff00 + $IPS add mwan3_connected_temp 224.0.0.0/3 + $IPS swap mwan3_connected_temp mwan3_connected + $IPS destroy mwan3_connected_temp + fi } mwan3_set_iface_iptables() { - local local_net local_nets - if ! $IPT -S mwan3_iface_$INTERFACE &> /dev/null; then $IPT -N mwan3_iface_$INTERFACE fi @@ -92,16 +92,7 @@ mwan3_set_iface_iptables() $IPT -D mwan3_ifaces -m mark --mark 0x0/0xff00 -j mwan3_iface_$INTERFACE &> /dev/null if [ $ACTION == "ifup" ]; then - local_nets=$($IP route list dev $DEVICE scope link | awk '{print $1}' | egrep '[0-9]{1,3}(\.[0-9]{1,3}){3}') - - if [ -n "$local_nets" ]; then - for local_net in $local_nets ; do - if [ $ACTION == "ifup" ]; then - $IPT -I mwan3_iface_$INTERFACE -i $DEVICE -s $local_net -m mark --mark 0x0/0xff00 -m comment --comment "default" -j MARK --set-xmark 0xff00/0xff00 - fi - done - fi - + $IPT -I mwan3_iface_$INTERFACE -i $DEVICE -m set --match-set mwan3_connected src -m mark --mark 0x0/0xff00 -m comment --comment "default" -j MARK --set-xmark 0xff00/0xff00 $IPT -A mwan3_iface_$INTERFACE -i $DEVICE -m mark --mark 0x0/0xff00 -m comment --comment "$INTERFACE" -j MARK --set-xmark $(($iface_id*256))/0xff00 $IPT -A mwan3_ifaces -m mark --mark 0x0/0xff00 -j mwan3_iface_$INTERFACE fi @@ -131,6 +122,17 @@ mwan3_set_iface_rules() [ $ACTION == "ifup" ] && $IP rule add pref $(($iface_id+2000)) fwmark $(($iface_id*256))/0xff00 lookup $iface_id } +mwan3_set_iface_ipset() +{ + local setname entry + + for setname in $(ipset -n list | grep ^mwan3_sticky_); do + for entry in $(ipset list $setname | grep "$(echo $(($iface_id*256)) | awk '{ printf "0x%08x", $1; }')" | cut -d ' ' -f 1); do + $IPS del $setname $entry + done + done +} + mwan3_track() { local track_ip track_ips reliability count timeout interval down up @@ -154,22 +156,23 @@ mwan3_track() config_get down $INTERFACE down 5 config_get up $INTERFACE up 5 - if ! $IPT -S mwan3_track_$INTERFACE &> /dev/null; then - $IPT -N mwan3_track_$INTERFACE - $IPT -A mwan3_output_hook -p icmp -m icmp --icmp-type 8 -m length --length 32 -j mwan3_track_$INTERFACE - fi - - $IPT -F mwan3_track_$INTERFACE + $IPS -! create mwan3_track_$INTERFACE hash:ip + $IPS create mwan3_track_temp_$INTERFACE hash:ip for track_ip in $track_ips; do - $IPT -A mwan3_track_$INTERFACE -d $track_ip -j MARK --set-xmark 0xff00/0xff00 + $IPS -! add mwan3_track_temp_$INTERFACE $track_ip done + $IPS swap mwan3_track_temp_$INTERFACE mwan3_track_$INTERFACE + $IPS destroy mwan3_track_temp_$INTERFACE + + $IPT -D mwan3_track -p icmp -m set --match-set mwan3_track_$INTERFACE dst -m icmp --icmp-type 8 -m length --length 32 -j MARK --set-xmark 0xff00/0xff00 &> /dev/null + $IPT -A mwan3_track -p icmp -m set --match-set mwan3_track_$INTERFACE dst -m icmp --icmp-type 8 -m length --length 32 -j MARK --set-xmark 0xff00/0xff00 + [ -x /usr/sbin/mwan3track ] && /usr/sbin/mwan3track $INTERFACE $DEVICE $reliability $count $timeout $interval $down $up $track_ips & else - $IPT -D mwan3_output_hook -p icmp -m icmp --icmp-type 8 -m length --length 32 -j mwan3_track_$INTERFACE &> /dev/null - $IPT -F mwan3_track_$INTERFACE &> /dev/null - $IPT -X mwan3_track_$INTERFACE &> /dev/null + $IPT -D mwan3_track -p icmp -m set --match-set mwan3_track_$INTERFACE dst -m icmp --icmp-type 8 -m length --length 32 -j MARK --set-xmark 0xff00/0xff00 &> /dev/null + $IPS destroy mwan3_track_$INTERFACE fi } @@ -182,7 +185,7 @@ mwan3_set_policy() config_get weight $1 weight 1 [ -n "$INTERFACE" ] || return 0 - + config_foreach mwan3_get_iface_id interface [ -n "$iface_id" ] || return 0 @@ -200,19 +203,19 @@ mwan3_set_policy() total_weight=$(($total_weight+$weight)) probability=$(($weight*1000/$total_weight)) - + if [ "$probability" -lt 10 ]; then probability="0.00$probability" - elif [ $probability -lt 100 ]; then + elif [ $probability -lt 100 ]; then probability="0.0$probability" - elif [ $probability -lt 1000 ]; then + elif [ $probability -lt 1000 ]; then probability="0.$probability" else probability="1" fi probability="-m statistic --mode random --probability $probability" - + $IPT -I mwan3_policy_$policy -m mark --mark 0x0/0xff00 $probability -m comment --comment "$INTERFACE $weight $total_weight" -j MARK --set-xmark $(($iface_id*256))/0xff00 fi fi @@ -254,10 +257,34 @@ mwan3_set_policies_iptables() config_list_foreach $policy use_member mwan3_set_policy } +mwan3_set_sticky_iptables() +{ + local INTERFACE iface_count iface_id + + INTERFACE="$1" + + config_foreach mwan3_get_iface_id interface + unset iface_count + + $IPS -! create mwan3_sticky_$rule hash:ip,mark markmask 0xff00 timeout $timeout + + if [ -n "$iface_id" ]; then + if [ -n "$($IPT -S mwan3_iface_$1 2> /dev/null)" ]; then + $IPT -I mwan3_rule_$rule -m set ! --match-set mwan3_sticky_$rule src,src -j MARK --set-xmark 0x0/0xff00 + $IPT -I mwan3_rule_$rule -m mark --mark 0/0xff00 -j MARK --set-xmark $(($iface_id*256))/0xff00 + fi + fi + + unset iface_id +} + mwan3_set_user_rules_iptables() { - local proto src_ip src_port dest_ip dest_port use_policy + local ipset proto src_ip src_port sticky dest_ip dest_port use_policy rule timeout + config_get sticky $1 sticky 0 + config_get timeout $1 timeout 600 + config_get ipset $1 ipset config_get proto $1 proto all config_get src_ip $1 src_ip 0.0.0.0/0 config_get src_port $1 src_port 0:65535 @@ -265,6 +292,20 @@ mwan3_set_user_rules_iptables() config_get dest_port $1 dest_port 0:65535 config_get use_policy $1 use_policy + rule="$1" + + if [ "$rule" != $(echo "$rule" | cut -c1-15) ]; then + $LOG warn "Rule $rule exceeds max of 15 chars. Not setting rule" && return 0 + fi + + if [ -n "$ipset" ]; then + if [ -z "$($IPS -n list $ipset)" ]; then + $IPS create $ipset hash:ip timeout 3600 + fi + + ipset="-m set --match-set $ipset dst" + fi + if [ -n "$use_policy" ]; then if [ "$use_policy" == "default" ]; then use_policy="MARK --set-xmark 0xff00/0xff00" @@ -273,15 +314,32 @@ mwan3_set_user_rules_iptables() elif [ "$use_policy" == "blackhole" ]; then use_policy="MARK --set-xmark 0xfd00/0xff00" else - use_policy="mwan3_policy_$use_policy" + if [ "$sticky" -eq 1 ]; then + + if ! $IPT -S mwan3_rule_$rule &> /dev/null; then + $IPT -N mwan3_rule_$rule + fi + + $IPT -F mwan3_rule_$rule + + config_foreach mwan3_set_sticky_iptables interface + + $IPT -A mwan3_rule_$rule -m mark --mark 0/0xff00 -j mwan3_policy_$use_policy + $IPT -A mwan3_rule_$rule -m mark ! --mark 0xfc00/0xfc00 -j SET --del-set mwan3_sticky_$rule src,src + $IPT -A mwan3_rule_$rule -m mark ! --mark 0xfc00/0xfc00 -j SET --add-set mwan3_sticky_$rule src,src + + use_policy="mwan3_rule_$rule" + else + use_policy="mwan3_policy_$use_policy" + fi fi case $proto in tcp|udp) - $IPT -A mwan3_rules -p $proto -s $src_ip -d $dest_ip -m multiport --sports $src_port -m multiport --dports $dest_port -m mark --mark 0/0xff00 -m comment --comment "$1" -j $use_policy &> /dev/null + $IPT -A mwan3_rules -p $proto -s $src_ip -d $dest_ip $ipset -m multiport --sports $src_port -m multiport --dports $dest_port -m mark --mark 0/0xff00 -m comment --comment "$1" -j $use_policy &> /dev/null ;; *) - $IPT -A mwan3_rules -p $proto -s $src_ip -d $dest_ip -m mark --mark 0/0xff00 -m comment --comment "$1" -j $use_policy &> /dev/null + $IPT -A mwan3_rules -p $proto -s $src_ip -d $dest_ip $ipset -m mark --mark 0/0xff00 -m comment --comment "$1" -j $use_policy &> /dev/null ;; esac fi @@ -333,6 +391,7 @@ mwan3_ifupdown() mwan3_set_iface_route mwan3_set_iface_rules + [ $ACTION == "ifdown" ] && mwan3_set_iface_ipset [ $ACTION == "ifup" ] && mwan3_track config_foreach mwan3_set_policies_iptables policy @@ -346,9 +405,15 @@ if [ $ACTION == "ifup" ]; then [ -n "$DEVICE" ] || exit 0 fi -local IP IPT LOG +[ -x /usr/sbin/ip ] || exit 1 +[ -x /usr/sbin/ipset ] || exit 1 +[ -x /usr/sbin/iptables ] || exit 1 +[ -x /usr/bin/logger ] || exit 1 + +local IP IPS IPT LOG IP="/usr/sbin/ip -4" +IPS="/usr/sbin/ipset" IPT="/usr/sbin/iptables -t mangle -w" LOG="/usr/bin/logger -t mwan3 -p" diff --git a/net/mwan3/files/usr/sbin/mwan3 b/net/mwan3/files/usr/sbin/mwan3 index 286603a85..c69d94eeb 100755 --- a/net/mwan3/files/usr/sbin/mwan3 +++ b/net/mwan3/files/usr/sbin/mwan3 @@ -2,14 +2,15 @@ . /lib/functions.sh IP="/usr/sbin/ip -4" +IPS="/usr/sbin/ipset" IPT="/usr/sbin/iptables -t mangle -w" help() -{ - cat <" && exit 0 fi - + config_get enabled "$1" enabled 0 device=$(uci get -p /var/state network.$1.ifname) &> /dev/null - + if [ -n "$device" ] ; then [ "$enabled" -eq 1 ] && ACTION=ifup INTERFACE=$1 DEVICE=$device /sbin/hotplug-call iface fi @@ -71,14 +72,14 @@ interfaces() config_load mwan3 echo "Interface status:" - + check_iface_status() { let iface_id++ device=$(uci get -p /var/state network.$1.ifname) &> /dev/null if [ -z "$device" ]; then - echo "Interface $1 is unknown" + echo " interface $1 is unknown" return 0 fi @@ -92,21 +93,21 @@ interfaces() if [ -n "$($IP rule | awk '$5 == "'$device'"')" -a -n "$($IPT -S mwan3_iface_$1 2> /dev/null)" -a -n "$($IP route list table $iface_id default dev $device 2> /dev/null)" ]; then if [ -n "$(uci get -p /var/state mwan3.$1.track_ip 2> /dev/null)" ]; then - echo "Interface $1 is online (tracking $tracking)" + echo " interface $1 is online (tracking $tracking)" else - echo "Interface $1 is online" + echo " interface $1 is online" fi elif [ -n "$($IP rule | awk '$5 == "'$device'"')" -o -n "$($IPT -S mwan3_iface_$1 2> /dev/null)" -o -n "$($IP route list table $iface_id default dev $device 2> /dev/null)" ]; then - echo "Interface $1 error" + echo " interface $1 error" else if [ "$enabled" -eq 1 ]; then if [ -n "$(uci get -p /var/state mwan3.$1.track_ip 2> /dev/null)" ]; then - echo "Interface $1 is offline (tracking $tracking)" + echo " interface $1 is offline (tracking $tracking)" else - echo "Interface $1 is offline" + echo " interface $1 is offline" fi else - echo "Interface $1 is disabled" + echo " interface $1 is disabled" fi fi } @@ -141,17 +142,19 @@ policies() } rules() { + local address + if [ -n "$($IPT -S mwan3_connected 2> /dev/null)" ]; then echo "Known networks:" - echo "destination policy hits" | awk '{ printf "%-19s%-19s%-9s%s\n",$1,$2,$3}' | awk '1; {gsub(".","-")}1' - $IPT -L mwan3_connected -n -v 2> /dev/null | tail -n+3 | sed 's/mark.*//' | sed 's/mwan3_policy_//' | awk '{printf "%-19s%-19s%-9s%s\n",$9,"default",$1}' + for address in $($IPS list mwan3_connected | egrep '[0-9]{1,3}(\.[0-9]{1,3}){3}'); do + echo " $address" + done echo -e fi if [ -n "$($IPT -S mwan3_rules 2> /dev/null)" ]; then echo "Active rules:" - echo "source destination proto src-port dest-port policy hits" | awk '{ printf "%-19s%-19s%-7s%-14s%-14s%-16s%-9s%s\n",$1,$2,$3,$4,$5,$6,$7}' | awk '1; {gsub(".","-")}1' - $IPT -L mwan3_rules -n -v 2> /dev/null | tail -n+3 | sed 's/mark.*//' | sed 's/mwan3_policy_//' | awk '{ printf "%-19s%-19s%-7s%-14s%-14s%-16s%-9s%s\n",$8,$9,$4,$12,$15,$3,$1}' + $IPT -L mwan3_rules -n -v 2> /dev/null | tail -n+3 | sed 's/mark.*//' | sed 's/mwan3_policy_/- /' | sed 's/mwan3_rule_/S /' echo -e fi } @@ -171,7 +174,7 @@ start() stop() { - local route rule table + local ipset route rule table killall mwan3track &> /dev/null rm /var/run/mwan3track-* &> /dev/null @@ -186,7 +189,6 @@ stop() $IPT -D PREROUTING -j mwan3_hook &> /dev/null $IPT -D OUTPUT -j mwan3_hook &> /dev/null - $IPT -D OUTPUT -j mwan3_output_hook &> /dev/null for table in $($IPT -S | awk '{print $2}' | grep mwan3 | sort -u); do $IPT -F $table &> /dev/null @@ -195,6 +197,10 @@ stop() for table in $($IPT -S | awk '{print $2}' | grep mwan3 | sort -u); do $IPT -X $table &> /dev/null done + + for ipset in $(ipset -n list | grep mwan3); do + $IPS destroy $ipset + done } restart() { From 6f78dcc31d1ba4379003770d68831557423b7b7a Mon Sep 17 00:00:00 2001 From: Othmar Truniger Date: Tue, 17 Mar 2015 20:41:51 +0100 Subject: [PATCH 135/681] linknx: streamline makefile Signed-off-by: Othmar Truniger --- net/linknx/Makefile | 32 ++++++++++++-------------------- 1 file changed, 12 insertions(+), 20 deletions(-) diff --git a/net/linknx/Makefile b/net/linknx/Makefile index e3aed3b15..3472e48c7 100644 --- a/net/linknx/Makefile +++ b/net/linknx/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2008-2014 OpenWrt.org +# Copyright (C) 2008-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=linknx PKG_VERSION:=0.0.1.32 -PKG_RELEASE:=4 +PKG_RELEASE:=5 PKG_MD5SUM:=7ecc1208f59bceb05068c752b2250b63 PKG_MAINTAINER:=Othmar Truniger @@ -17,7 +17,6 @@ PKG_LICENSE:=GPL-2.0+ PKG_SOURCE_URL:=@SF/linknx PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz -PKG_BUILD_DEPENDS:=pthsem curl libesmtp include $(INCLUDE_DIR)/package.mk @@ -26,26 +25,19 @@ define Package/linknx CATEGORY:=Network TITLE:=KNX home automation platform URL:=http://sourceforge.net/projects/linknx/ - DEPENDS:=pthsem +lua +luac +libstdcpp +libcurl +libesmtp + DEPENDS:=+pthsem +argp-standalone +lua +luac +libstdcpp +libcurl +libesmtp endef -define Build/Configure - (cd $(PKG_BUILD_DIR); touch aclocal.m4 Makefile.in config.h.in configure; \ - $(SED) 's,\"2.0.4\",\"2.0.4\"\n_pth_version=\"2.0.8\",g' $(PKG_BUILD_DIR)/configure ) - $(call Build/Configure/Default,--verbose --without-pth-test --with-pth=$(STAGING_DIR) --without-log4cpp --with-lua --with-libcurl --without-mysql, \ - CXXFLAGS="$(TARGET_CFLAGS) -fno-builtin -lcrypt" \ - ) -endef +CONFIGURE_ARGS+= \ + --verbose \ + --without-pth-test \ + --without-log4cpp \ + --with-lua \ + --with-libcurl \ + --without-mysql -define Build/Compile - $(MAKE) -C $(PKG_BUILD_DIR)/ \ - LIBDIR="$(TARGET_LDFLAGS)" \ - CC="$(TARGET_CC) $(TARGET_CFLAGS) $(TARGET_CPPFLAGS) " \ - LD="$(TARGET_CROSS)ld -shared" \ - LUA="$(STAGING_DIR_HOST)/bin/lua" \ - LUAC="$(STAGING_DIR_HOST)/bin/luac" \ - CFLAGS="$(TARGET_CFLAGS) -nodefaultlibs" all -endef +EXTRA_LDFLAGS+= \ + -fno-builtin define Package/linknx/install $(INSTALL_DIR) $(1)/usr/bin From 98622bb83ee29d94623aec4b3a1d87913cafd4c8 Mon Sep 17 00:00:00 2001 From: Othmar Truniger Date: Tue, 17 Mar 2015 20:10:13 +0100 Subject: [PATCH 136/681] knxd: tune Makefile, new upstream version Signed-off-by: Othmar Truniger --- net/knxd/Makefile | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/net/knxd/Makefile b/net/knxd/Makefile index 97fcc8ea5..a140aece9 100644 --- a/net/knxd/Makefile +++ b/net/knxd/Makefile @@ -11,13 +11,13 @@ include $(TOPDIR)/rules.mk PKG_NAME:=knxd -PKG_VERSION=2015-03-06-$(PKG_SOURCE_VERSION) +PKG_VERSION=2015-03-17-$(PKG_SOURCE_VERSION) PKG_RELEASE:=1 PKG_SOURCE_PROTO:=git PKG_SOURCE_URL:=https://github.com/knxd/knxd.git -PKG_SOURCE_VERSION:=a63bc660d305e26ce3ed038607d387758fad8413 -PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_SOURCE_VERSION) +PKG_SOURCE_VERSION:=2c6c6732a684dffb87b391ea92cccdf07c8385b8 +PKG_SOURCE_SUBDIR:=$(PKG_NAME) PKG_SOURCE:=$(PKG_NAME)-$(PKG_SOURCE_VERSION).tar.gz PKG_MAINTAINER:=Othmar Truniger @@ -26,7 +26,7 @@ PKG_LICENSE:=GPL-2.0+ PKG_LICENSE_FILES:=LICENSE PKG_BUILD_PARALLEL:=1 -PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_SOURCE_VERSION) +PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME) PKG_FIXUP:=autoreconf PKG_INSTALL:=1 @@ -37,7 +37,7 @@ define Package/knxd SECTION:=net CATEGORY:=Network TITLE:=EIB KNX daemon - DEPENDS:=+pthsem +libusb-1.0 + DEPENDS:=+pthsem +argp-standalone +libusb-1.0 endef define Package/knxd/description @@ -55,7 +55,7 @@ define Package/libeibclient DEPENDS:=+pthsem endef -define Package/knxd-tools/description +define Package/libeibclient/description EIB KNX client library endef @@ -84,9 +84,8 @@ CONFIGURE_ARGS+= \ --without-pth-test \ --without-libstdc -TARGET_CFLAGS+= \ - $(FPIC) \ - -fno-builtin -nodefaultlibs -lc -lm -lgcc -largp -lpthsem +EXTRA_LDFLAGS+= \ + -fno-builtin -nodefaultlibs -lc -lgcc define Build/InstallDev $(INSTALL_DIR) $(1)/usr/include From 7829fb225a6a744d3d724a7038c8407887882456 Mon Sep 17 00:00:00 2001 From: Mario Halambek Date: Wed, 18 Mar 2015 14:11:06 +0100 Subject: [PATCH 137/681] snort: bump to 2.9.7.2 Signed-off-by: Mario Halambek --- net/snort/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/net/snort/Makefile b/net/snort/Makefile index 2c948665c..06b690600 100644 --- a/net/snort/Makefile +++ b/net/snort/Makefile @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=snort -PKG_VERSION:=2.9.7.0 +PKG_VERSION:=2.9.7.2 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=https://www.snort.org/downloads/snort/ -PKG_MD5SUM:=c2a45bc56441ee9456478f219dd8d1e2 +PKG_MD5SUM:=b01e9964827394c39194a0147bc15705 PKG_BUILD_DEPENDS:=librpc PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/$(PKG_NAME)-$(PKG_VERSION) From 9322b6e80b27f41096b9b1ec72e48d43fb1a95af Mon Sep 17 00:00:00 2001 From: Peter Wagner Date: Thu, 19 Mar 2015 10:35:24 +0100 Subject: [PATCH 138/681] openssh: update to 6.8p1 Signed-off-by: Peter Wagner --- net/openssh/Makefile | 6 +++--- net/openssh/patches/130-implicit_memset_decl_fix.patch | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/net/openssh/Makefile b/net/openssh/Makefile index 055b0030e..0534b2a15 100644 --- a/net/openssh/Makefile +++ b/net/openssh/Makefile @@ -8,13 +8,13 @@ include $(TOPDIR)/rules.mk PKG_NAME:=openssh -PKG_VERSION:=6.7p1 -PKG_RELEASE:=3 +PKG_VERSION:=6.8p1 +PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable/ \ http://ftp.belnet.be/pub/OpenBSD/OpenSSH/portable/ -PKG_MD5SUM:=3246aa79317b1d23cae783a3bf8275d6 +PKG_MD5SUM:=08f72de6751acfbd0892b5f003922701 PKG_LICENSE:=BSD ISC PKG_LICENSE_FILES:=LICENCE diff --git a/net/openssh/patches/130-implicit_memset_decl_fix.patch b/net/openssh/patches/130-implicit_memset_decl_fix.patch index be8bbcf9c..7d46d20d3 100644 --- a/net/openssh/patches/130-implicit_memset_decl_fix.patch +++ b/net/openssh/patches/130-implicit_memset_decl_fix.patch @@ -1,6 +1,6 @@ --- a/includes.h +++ b/includes.h -@@ -59,6 +59,9 @@ +@@ -60,6 +60,9 @@ /* *-*-nto-qnx needs these headers for strcasecmp and LASTLOG_FILE respectively */ From 99d0b5147d1c019f6cfc03c374b26dc992f06bdf Mon Sep 17 00:00:00 2001 From: Zero_Chaos Date: Wed, 4 Feb 2015 20:57:33 -0500 Subject: [PATCH 139/681] ethtool: add optional libssp dep Package ethtool is missing dependencies for the following libraries: libssp.so.0 Makefile:45: recipe for target '/home/zero/development/openwrt/bin/ar71xx/packages/packages/ethtool_3.18-1_ar71xx.ipk' failed Signed-off-by: Rick Farina (Zero_Chaos) --- net/ethtool/Makefile | 1 + 1 file changed, 1 insertion(+) diff --git a/net/ethtool/Makefile b/net/ethtool/Makefile index 5ffb8253c..dd13277ad 100644 --- a/net/ethtool/Makefile +++ b/net/ethtool/Makefile @@ -29,6 +29,7 @@ define Package/ethtool SECTION:=net CATEGORY:=Network TITLE:=Display or change ethernet card settings + DEPENDS:=+SSP_SUPPORT:libssp URL:=http://www.kernel.org/pub/software/network/ethtool/ endef From 27762817f1493bfdb140707251b0013719717d7e Mon Sep 17 00:00:00 2001 From: Othmar Truniger Date: Thu, 19 Mar 2015 22:48:56 +0100 Subject: [PATCH 140/681] linknx: fix dependency Signed-off-by: Othmar Truniger --- net/linknx/Makefile | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/net/linknx/Makefile b/net/linknx/Makefile index 3472e48c7..06083fc96 100644 --- a/net/linknx/Makefile +++ b/net/linknx/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=linknx PKG_VERSION:=0.0.1.32 -PKG_RELEASE:=5 +PKG_RELEASE:=6 PKG_MD5SUM:=7ecc1208f59bceb05068c752b2250b63 PKG_MAINTAINER:=Othmar Truniger @@ -17,6 +17,7 @@ PKG_LICENSE:=GPL-2.0+ PKG_SOURCE_URL:=@SF/linknx PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz +PKG_BUILD_DEPENDS:=argp-standalone include $(INCLUDE_DIR)/package.mk @@ -25,7 +26,7 @@ define Package/linknx CATEGORY:=Network TITLE:=KNX home automation platform URL:=http://sourceforge.net/projects/linknx/ - DEPENDS:=+pthsem +argp-standalone +lua +luac +libstdcpp +libcurl +libesmtp + DEPENDS:=+pthsem +lua +luac +libstdcpp +libcurl +libesmtp endef CONFIGURE_ARGS+= \ @@ -37,7 +38,7 @@ CONFIGURE_ARGS+= \ --without-mysql EXTRA_LDFLAGS+= \ - -fno-builtin + -fno-builtin define Package/linknx/install $(INSTALL_DIR) $(1)/usr/bin From 735a525ee8c0b8b1aa8e46e040b08b7554b4ea44 Mon Sep 17 00:00:00 2001 From: Stijn Tintel Date: Fri, 20 Mar 2015 17:45:23 +0100 Subject: [PATCH 141/681] avahi: remove optional dependency on libssp Signed-off-by: Stijn Tintel --- libs/avahi/Makefile | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/libs/avahi/Makefile b/libs/avahi/Makefile index 4a56b6155..7aaea8968 100644 --- a/libs/avahi/Makefile +++ b/libs/avahi/Makefile @@ -56,7 +56,7 @@ define Package/libavahi/Default SECTION:=libs CATEGORY:=Libraries PROVIDES:=libavahi - DEPENDS:=+libpthread +SSP_SUPPORT:libssp + DEPENDS:=+libpthread endef define Package/libavahi/description @@ -70,7 +70,7 @@ endef define Package/avahi-autoipd $(call Package/avahi/Default) SUBMENU:=IP Addresses and Names - DEPENDS:=+libdaemon +SSP_SUPPORT:libssp + DEPENDS:=+libdaemon TITLE:=IPv4LL network address configuration daemon endef @@ -155,7 +155,7 @@ endef define Package/avahi-dnsconfd $(call Package/avahi/Default) SUBMENU:=IP Addresses and Names - DEPENDS:=+libavahi +libdaemon +libpthread +SSP_SUPPORT:libssp + DEPENDS:=+libavahi +libdaemon +libpthread TITLE:=A Unicast DNS server using avahi-daemon endef From 54b01d214f231d7b7ed5b6b895ddd1e40e3d0057 Mon Sep 17 00:00:00 2001 From: Stijn Tintel Date: Fri, 20 Mar 2015 17:46:00 +0100 Subject: [PATCH 142/681] ethtool: remove optional dependency on libssp Signed-off-by: Stijn Tintel --- net/ethtool/Makefile | 1 - 1 file changed, 1 deletion(-) diff --git a/net/ethtool/Makefile b/net/ethtool/Makefile index dd13277ad..5ffb8253c 100644 --- a/net/ethtool/Makefile +++ b/net/ethtool/Makefile @@ -29,7 +29,6 @@ define Package/ethtool SECTION:=net CATEGORY:=Network TITLE:=Display or change ethernet card settings - DEPENDS:=+SSP_SUPPORT:libssp URL:=http://www.kernel.org/pub/software/network/ethtool/ endef From e996c1cc369620272cdb760fcc836289cfe5df39 Mon Sep 17 00:00:00 2001 From: Stijn Tintel Date: Fri, 20 Mar 2015 17:46:37 +0100 Subject: [PATCH 143/681] openssh: remove optional dependency on libssp Signed-off-by: Stijn Tintel --- net/openssh/Makefile | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/net/openssh/Makefile b/net/openssh/Makefile index 0534b2a15..5eb7a2bd8 100644 --- a/net/openssh/Makefile +++ b/net/openssh/Makefile @@ -29,7 +29,7 @@ include $(INCLUDE_DIR)/package.mk define Package/openssh/Default SECTION:=net CATEGORY:=Network - DEPENDS:=+libopenssl +zlib +SSP_SUPPORT:libssp + DEPENDS:=+libopenssl +zlib TITLE:=OpenSSH MAINTAINER:=Peter Wagner URL:=http://www.openssh.com/ @@ -124,7 +124,6 @@ endef define Package/openssh-sftp-server $(call Package/openssh/Default) TITLE+= SFTP server - DEPENDS:=+SSP_SUPPORT:libssp endef define Package/openssh-sftp-server/description From 2eae664f5f2d334be7d9c6285f2473f732ead9c7 Mon Sep 17 00:00:00 2001 From: Stijn Tintel Date: Fri, 20 Mar 2015 18:23:39 +0100 Subject: [PATCH 144/681] tor: remove optional dependency on libssp Signed-off-by: Stijn Tintel --- net/tor/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/net/tor/Makefile b/net/tor/Makefile index 6ffcf43bd..8550f8358 100644 --- a/net/tor/Makefile +++ b/net/tor/Makefile @@ -41,7 +41,7 @@ endef define Package/tor $(call Package/tor/Default) TITLE:=An anonymous Internet communication system - DEPENDS:=+libevent2 +libopenssl +libpthread +librt +SSP_SUPPORT:libssp + DEPENDS:=+libevent2 +libopenssl +libpthread +librt endef define Package/tor/description From 1ba6028cc1efcfc3eeeaa7120caa3d6bd77aac77 Mon Sep 17 00:00:00 2001 From: Ted Hess Date: Fri, 20 Mar 2015 14:05:22 -0400 Subject: [PATCH 145/681] pianod: Add Pandora Radio player daemon * Integrate as OpenWrt daemon * Build with PolarSSL (replaces GNUTLS) * Add optional client WebUI * Fix some socket failure handling and segfaults Signed-off-by: Ted Hess --- sound/pianod/Makefile | 110 ++++++ sound/pianod/files/pianod.init | 42 +++ .../005-Fix_IPV6_socket_handling.patch | 29 ++ .../010-Configure_add_SSL_options.patch | 42 +++ ...Use_package_config_h_for_all_modules.patch | 59 +++ .../030-Waitress_add_polarssl_variant.patch | 344 ++++++++++++++++++ 6 files changed, 626 insertions(+) create mode 100644 sound/pianod/Makefile create mode 100644 sound/pianod/files/pianod.init create mode 100644 sound/pianod/patches/005-Fix_IPV6_socket_handling.patch create mode 100644 sound/pianod/patches/010-Configure_add_SSL_options.patch create mode 100644 sound/pianod/patches/020-Use_package_config_h_for_all_modules.patch create mode 100644 sound/pianod/patches/030-Waitress_add_polarssl_variant.patch diff --git a/sound/pianod/Makefile b/sound/pianod/Makefile new file mode 100644 index 000000000..758805c70 --- /dev/null +++ b/sound/pianod/Makefile @@ -0,0 +1,110 @@ +# +# Copyright (C) 2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=pianod +PKG_VERSION:=173 +PKG_RELEASE:=2 + +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz +PKG_SOURCE_URL:=http://deviousfish.com/Downloads/pianod/ +PKG_MD5SUM:=be0cec19ea6df1c4bc6c1cac8e253445 + +PKG_MAINTAINER:=Ted Hess + +PKG_LICENSE:=MIT VARIOUS +PKG_LICENSE_FILES:=COPYING + +PKG_FIXUP:=autoreconf +PKG_INSTALL:=1 + +include $(INCLUDE_DIR)/package.mk + +define Package/pianod + SECTION:=sound + CATEGORY:=Sound + DEPENDS:=+libao +libfaad2 +libmad +libpolarssl +libjson-c +libgcrypt +libpthread + TITLE:=Pandora radio daemon + USERID:=pianod=88:pianod=88 + URL:=http://deviousfish.com/pianod/ +endef + +define Package/pianod/description + pianod is a Pandora music player client with line-oriented and Websocket control interfaces. + A simple protocol makes for easy clients, mix scripting, integration with a + home automation system, use as multiple-user music system for home or office. + Documentation and configuration information can be found at: + http://deviousfish.com/pianod/ +endef + +define Package/pianod-client + SECTION:=sound + CATEGORY:=Sound + DEPENDS:=+pianod + TITLE:=Pandora radio daemon WebUI + URL:=http://deviousfish.com/pianod/ +endef + +define Package/pianod-client/description + Web client UI and remote player viewer for pianod + Examples --- (Note: The viewer.* files need not be on the pianod host) + Main interface: http://pianod-host:4446/pianod + Remote viewer: file:////viewer.html?server=pianod-host:4446 --or-- + http://pianod-host:4446/pianod/viewer.html?server=pianod-host:4446 +endef + +CONFIGURE_ARGS+= --with-polarssl + +PIANOD_CLIENT:=pianod-client-compiled-51.tar.gz + +define Download/pianod-client + URL:=$(PKG_SOURCE_URL)/Devel + FILE:=$(PIANOD_CLIENT) + MD5SUM:=abbdee5627bcee6a00c8304da8b4e2e7 +endef + +define Package/pianod/conffiles +/etc/pianod/startscript +/etc/pianod/users +endef + +define Build/Prepare + $(call Build/Prepare/Default) + ifeq ($(CONFIG_PACKAGE_pianod-client),y) + $(eval $(call Download,pianod-client)) + mkdir -p $(PKG_BUILD_DIR)/pianod-client + $(TAR) -xf $(DL_DIR)/$(PIANOD_CLIENT) --strip=1 -C $(PKG_BUILD_DIR)/pianod-client + endif +endef + +define Package/pianod-client/Configure +endef + +define Package/pianod-client/Compile +endef + +define Package/pianod/install + $(INSTALL_DIR) $(1)/usr/bin + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/pianod $(1)/usr/bin/ +# These scripts need ksh (install mksh and link) +# $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/piano $(1)/usr/bin/ +# $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/runmix $(1)/usr/bin/ + + $(INSTALL_DIR) $(1)/etc/pianod + $(INSTALL_DATA) $(PKG_BUILD_DIR)/contrib/startscript-example $(1)/etc/pianod/startscript + $(INSTALL_DIR) $(1)/etc/init.d + $(INSTALL_BIN) ./files/pianod.init $(1)/etc/init.d/pianod +endef + +define Package/pianod-client/install + $(INSTALL_DIR) $(1)/www/pianod + $(INSTALL_DATA) $(PKG_BUILD_DIR)/pianod-client/*.{html,js,gif,jpeg,css} $(1)/www/pianod/ +endef + +$(eval $(call BuildPackage,pianod)) +$(eval $(call BuildPackage,pianod-client)) diff --git a/sound/pianod/files/pianod.init b/sound/pianod/files/pianod.init new file mode 100644 index 000000000..b232944e5 --- /dev/null +++ b/sound/pianod/files/pianod.init @@ -0,0 +1,42 @@ +#!/bin/sh /etc/rc.common +# Copyright (C) 2015 OpenWrt.org + +NAME=pianod +START=95 + +USE_PROCD=1 + +PD_USER=$NAME +PD_STARTSCRIPT=/etc/$NAME/startscript +PD_PASSWDFILE=/etc/$NAME/users +PD_WEBUI=/www/$NAME + +start_service() { + # Take group ownership of audio devices + chown root:$NAME /dev/snd/* /dev/mixer /dev/dsp + chmod 664 /dev/snd/* /dev/mixer /dev/dsp + + procd_open_instance + + procd_set_param command "/usr/bin/$NAME" + + procd_append_param command -n $PD_USER + procd_append_param command -i "$PD_STARTSCRIPT" + procd_append_param command -u "$PD_PASSWDFILE" + [ -d "$PD_WEBUI" ] && procd_append_param command -c "$PD_WEBUI" + # No HTTPS support without certificates + procd_append_param command -s 0 + + procd_close_instance +} + +# Wait for service to exit and release sockets +reload_service() { + stop + sleep 2 + start +} + +restart() { + reload_service +} diff --git a/sound/pianod/patches/005-Fix_IPV6_socket_handling.patch b/sound/pianod/patches/005-Fix_IPV6_socket_handling.patch new file mode 100644 index 000000000..68f7c365d --- /dev/null +++ b/sound/pianod/patches/005-Fix_IPV6_socket_handling.patch @@ -0,0 +1,29 @@ +--- a/src/libwaitress/waitress.c ++++ b/src/libwaitress/waitress.c +@@ -813,7 +813,14 @@ static WaitressReturn_t WaitressConnect + sizeof (sockopt)); + + /* non-blocking connect will return immediately */ +- connect (sock, gacurr->ai_addr, gacurr->ai_addrlen); ++ if (connect (sock, gacurr->ai_addr, gacurr->ai_addrlen) == -1) { ++ // Error if not in-progress or immediate success ++ if (errno != EINPROGRESS) { ++ // Close socket and try alternatives ++ close (sock); ++ continue; ++ } ++ } + + pollres = WaitressPollLoop (sock, POLLOUT, waith->timeout); + if (pollres == 0) { +--- a/src/libfootball/fb_service.c ++++ b/src/libfootball/fb_service.c +@@ -111,6 +111,8 @@ static bool fb_setup_socket (FB_SERVICE + service->socket [which] = 0; + } else { + fb_perror ("socket"); ++ // Element must be zero (not -1) ++ service->socket [which] = 0; + }; + return false; + } diff --git a/sound/pianod/patches/010-Configure_add_SSL_options.patch b/sound/pianod/patches/010-Configure_add_SSL_options.patch new file mode 100644 index 000000000..2c2677965 --- /dev/null +++ b/sound/pianod/patches/010-Configure_add_SSL_options.patch @@ -0,0 +1,42 @@ +--- a/configure.ac ++++ b/configure.ac +@@ -31,8 +31,6 @@ AC_CHECK_LIB([pthread], [pthread_create] + # with it, but don't consider it an error. + # PKG_CHECK_MODULES only validates that pkg-config returns stuff; it doesn't + # validate that these are correct, so check lib to make sure they're right. +-PKG_CHECK_MODULES([gnutls], [gnutls],, +- [AC_MSG_WARN([No pkg-config for libgnutls])]) + PKG_CHECK_MODULES([ao], [ao],, + [AC_MSG_WARN([No pkg-config for libao])]) + PKG_CHECK_MODULES([mad], [mad],, +@@ -42,12 +40,28 @@ PKG_CHECK_MODULES([json], [json-c],, + [PKG_CHECK_MODULES([json], [json0],, + [AC_MSG_WARN([No pkg-config for json-c (aka libjson0, libjson)])])])]) + ++ + # Network communication stuff: + AC_CHECK_LIB([gcrypt], [gcry_cipher_open],, + [AC_MSG_ERROR([Cannot find required library: libgcrypt],1)]) +-AC_CHECK_LIB([gnutls], [gnutls_record_recv],, ++# Check for SSL option ++AC_ARG_WITH(polarssl, [ --with-polarssl Build waitress with PolarSSL (default GNUTLS)], [ ++ AC_MSG_RESULT(>>Using PolarSSL) ++ HAS_POLARSSL=1 ++ AC_DEFINE([USE_POLARSSL], 1, [Build for PolarSSL]) ++ PKG_CHECK_MODULES([polarssl], [polarssl],, ++ [AC_MSG_WARN([No pkg-config for libpolarssl])]) ++ AC_CHECK_LIB([polarssl], [ssl_set_session],, ++ [AC_MSG_ERROR([Cannot find required library: libpolarssl (aka polarssl)],1)])] ) ++AM_CONDITIONAL([USE_POLARSSL],[test "x$HAS_POLARSSL" = "x1"]) ++ ++if test "x$HAS_POLARSSL" != x1 ; then ++ PKG_CHECK_MODULES([gnutls], [gnutls],, ++ [AC_MSG_WARN([No pkg-config for libgnutls])]) ++ AC_CHECK_LIB([gnutls], [gnutls_record_recv],, + [AC_MSG_ERROR([Cannot find required library: libgnutls (aka gnutls)],1)]) +-AC_CHECK_FUNCS(gnutls_transport_set_int2 gnutls_sec_param_to_pk_bits) ++ AC_CHECK_FUNCS(gnutls_transport_set_int2 gnutls_sec_param_to_pk_bits) ++fi + + # Bloody json library may be linked via -ljson, or -ljson-c depending on + # the platform. Try both. diff --git a/sound/pianod/patches/020-Use_package_config_h_for_all_modules.patch b/sound/pianod/patches/020-Use_package_config_h_for_all_modules.patch new file mode 100644 index 000000000..25569ccc2 --- /dev/null +++ b/sound/pianod/patches/020-Use_package_config_h_for_all_modules.patch @@ -0,0 +1,59 @@ +--- a/src/libpiano/config.h ++++ /dev/null +@@ -1 +0,0 @@ +-#define PACKAGE "libpiano" +--- a/src/libwaitress/config.h ++++ /dev/null +@@ -1 +0,0 @@ +-#define PACKAGE "libwaitress" +--- a/src/libpiano/piano.h ++++ b/src/libpiano/piano.h +@@ -39,6 +39,8 @@ THE SOFTWARE. + * http://pan-do-ra-api.wikia.com + */ + ++#define LIBPIANO_NAME "libpiano" ++ + #define PIANO_RPC_HOST "tuner.pandora.com" + #define PIANO_RPC_PATH "/services/json/?" + +--- a/src/libwaitress/waitress.c ++++ b/src/libwaitress/waitress.c +@@ -922,14 +922,14 @@ static WaitressReturn_t WaitressSendRequ + if (WaitressProxyEnabled (waith) && !waith->url.tls) { + snprintf (buf, WAITRESS_BUFFER_SIZE, + "%s http://%s:%s/%s HTTP/" WAITRESS_HTTP_VERSION "\r\n" +- "Host: %s\r\nUser-Agent: " PACKAGE "\r\nConnection: Close\r\n", ++ "Host: %s\r\nUser-Agent: " LIBWAITRESS_NAME "\r\nConnection: Close\r\n", + (waith->method == WAITRESS_METHOD_GET ? "GET" : "POST"), + waith->url.host, + WaitressDefaultPort (&waith->url), path, waith->url.host); + } else { + snprintf (buf, WAITRESS_BUFFER_SIZE, + "%s /%s HTTP/" WAITRESS_HTTP_VERSION "\r\n" +- "Host: %s\r\nUser-Agent: " PACKAGE "\r\nConnection: Close\r\n", ++ "Host: %s\r\nUser-Agent: " LIBWAITRESS_NAME "\r\nConnection: Close\r\n", + (waith->method == WAITRESS_METHOD_GET ? "GET" : "POST"), + path, waith->url.host); + } +--- a/src/libwaitress/waitress.h ++++ b/src/libwaitress/waitress.h +@@ -29,6 +29,8 @@ THE SOFTWARE. + #include + #include + ++#define LIBWAITRESS_NAME "libwaitress" ++ + #define WAITRESS_BUFFER_SIZE 10*1024 + + typedef enum { +--- a/src/libpiano/request.c ++++ b/src/libpiano/request.c +@@ -40,6 +40,7 @@ THE SOFTWARE. + #include + #include + /* needed for urlencode */ ++#include + #include + + #include "piano.h" diff --git a/sound/pianod/patches/030-Waitress_add_polarssl_variant.patch b/sound/pianod/patches/030-Waitress_add_polarssl_variant.patch new file mode 100644 index 000000000..de40b35c9 --- /dev/null +++ b/sound/pianod/patches/030-Waitress_add_polarssl_variant.patch @@ -0,0 +1,344 @@ +--- a/src/libwaitress/waitress.h ++++ b/src/libwaitress/waitress.h +@@ -27,7 +27,12 @@ THE SOFTWARE. + #include + #include + #include ++ ++#if defined(USE_POLARSSL) ++typedef struct _polarssl_ctx polarssl_ctx; ++#else + #include ++#endif + + #define LIBWAITRESS_NAME "libwaitress" + +@@ -102,8 +107,9 @@ typedef struct { + WaitressUrl_t url; + WaitressUrl_t proxy; + ++#if !defined(USE_POLARSSL) + gnutls_certificate_credentials_t tlsCred; +- ++#endif + /* per-request data */ + struct { + int sockfd; +@@ -121,7 +127,11 @@ typedef struct { + WaitressReturn_t (*read) (void *, char *, const size_t, size_t *); + WaitressReturn_t (*write) (void *, const char *, const size_t); + ++#if defined(USE_POLARSSL) ++ polarssl_ctx* sslCtx; ++#else + gnutls_session_t tlsSession; ++#endif + } request; + } WaitressHandle_t; + +--- a/src/pianod.c ++++ b/src/pianod.c +@@ -531,8 +531,11 @@ static bool initialize_libraries (APPSTA + gcry_check_version (NULL); + gcry_control (GCRYCTL_DISABLE_SECMEM, 0); + gcry_control (GCRYCTL_INITIALIZATION_FINISHED, 0); ++ ++#if !defined(USE_POLARSSL) + int crystatus = gnutls_global_init (); + if (crystatus == GNUTLS_E_SUCCESS) { ++#endif + PianoReturn_t status = PianoInit (&app->ph, app->settings.partnerUser, app->settings.partnerPassword, + app->settings.device, app->settings.inkey, app->settings.outkey); + if (status == PIANO_RET_OK) { +@@ -545,11 +548,13 @@ static bool initialize_libraries (APPSTA + } else { + flog (LOG_ERROR, "initialize_libraries: PianoInit: %s", PianoErrorToStr (status)); + } ++#if !defined(USE_POLARSSL) + gnutls_global_deinit (); + } else { + flog (LOG_ERROR, "initialize_libraries: gnutls_global_init: %s", gcry_strerror (crystatus)); + + } ++#endif + return false; + } + +@@ -728,7 +733,9 @@ int main (int argc, char **argv) { + PianoDestroyPlaylist (app.song_history); + PianoDestroyPlaylist (app.playlist); + WaitressFree (&app.waith); ++#if !defined(USE_POLARSSL) + gnutls_global_deinit (); ++#endif + settings_destroy (&app.settings); + } + +--- a/src/libwaitress/waitress.c ++++ b/src/libwaitress/waitress.c +@@ -41,11 +41,33 @@ THE SOFTWARE. + #include + #include + +-#include + + #include "config.h" + #include "waitress.h" + ++#if defined(USE_POLARSSL) ++ ++#include ++#include ++#include ++#include ++#include ++ ++struct _polarssl_ctx ++{ ++ ssl_context ssl; ++ ssl_session session; ++ entropy_context entrophy; ++ ctr_drbg_context rnd; ++}; ++ ++#else ++ ++// Use gnutls by default (USE_POLARSSL not defined) ++#include ++ ++#endif ++ + #define strcaseeq(a,b) (strcasecmp(a,b) == 0) + #define WAITRESS_HTTP_VERSION "1.1" + +@@ -56,6 +78,13 @@ typedef struct { + + static WaitressReturn_t WaitressReceiveHeaders (WaitressHandle_t *, size_t *); + ++// gnutls wants (void *) and polarssl want (unsigned char *) ++#if defined(USE_POLARSSL) ++#define BUFFER_CAST unsigned char ++#else ++#define BUFFER_CAST void ++#endif ++ + #define READ_RET(buf, count, size) \ + if ((wRet = waith->request.read (waith, buf, count, size)) != \ + WAITRESS_RET_OK) { \ +@@ -444,7 +473,7 @@ static int WaitressPollLoop (int fd, sho + * @param write count bytes + * @return number of written bytes or -1 on error + */ +-static ssize_t WaitressPollWrite (void *data, const void *buf, size_t count) { ++static ssize_t WaitressPollWrite (void *data, const BUFFER_CAST *buf, size_t count) { + int pollres = -1; + ssize_t retSize; + WaitressHandle_t *waith = data; +@@ -478,13 +507,20 @@ static WaitressReturn_t WaitressOrdinary + return waith->request.readWriteRet; + } + +-static WaitressReturn_t WaitressGnutlsWrite (void *data, const char *buf, ++static WaitressReturn_t WaitressTlsWrite (void *data, const char *buf, + const size_t size) { + WaitressHandle_t *waith = data; ++#if defined(USE_POLARSSL) ++ ++ if (ssl_write (&waith->request.sslCtx->ssl, buf, size) < 0) { ++ return WAITRESS_RET_TLS_WRITE_ERR; ++ } ++#else + + if (gnutls_record_send (waith->request.tlsSession, buf, size) < 0) { + return WAITRESS_RET_TLS_WRITE_ERR; + } ++#endif + return waith->request.readWriteRet; + } + +@@ -494,7 +530,7 @@ static WaitressReturn_t WaitressGnutlsWr + * @param buffer size + * @return number of read bytes or -1 on error + */ +-static ssize_t WaitressPollRead (void *data, void *buf, size_t count) { ++static ssize_t WaitressPollRead (void *data, BUFFER_CAST *buf, size_t count) { + int pollres = -1; + ssize_t retSize; + WaitressHandle_t *waith = data; +@@ -531,16 +567,34 @@ static WaitressReturn_t WaitressOrdinary + return waith->request.readWriteRet; + } + +-static WaitressReturn_t WaitressGnutlsRead (void *data, char *buf, ++static WaitressReturn_t WaitressTlsRead (void *data, char *buf, + const size_t size, size_t *retSize) { + WaitressHandle_t *waith = data; + ++#if defined(USE_POLARSSL) ++ int ret; ++ ++ *retSize = 0; ++ waith->request.readWriteRet = WAITRESS_RET_OK; ++ ret = ssl_read (&waith->request.sslCtx->ssl, buf, size); ++ ++ if (ret < 0) { ++ if (ret != POLARSSL_ERR_SSL_PEER_CLOSE_NOTIFY) { ++ waith->request.readWriteRet = WAITRESS_RET_TLS_READ_ERR; ++ } ++ ++ return waith->request.readWriteRet; ++ } ++ ++ *retSize = ret; ++#else + ssize_t ret = gnutls_record_recv (waith->request.tlsSession, buf, size); + if (ret < 0) { + return WAITRESS_RET_TLS_READ_ERR; + } else { + *retSize = ret; + } ++#endif + return waith->request.readWriteRet; + } + +@@ -727,10 +781,28 @@ static int WaitressParseStatusline (cons + /* verify server certificate + */ + static WaitressReturn_t WaitressTlsVerify (const WaitressHandle_t *waith) { ++ ++#if defined(USE_POLARSSL) ++ unsigned char fingerprint[20]; ++ ++ const x509_crt* cert = ssl_get_peer_cert (&waith->request.sslCtx->ssl); ++ ++ if (NULL == cert) { ++ return WAITRESS_RET_TLS_HANDSHAKE_ERR; ++ } ++ ++ sha1 (cert->raw.p, cert->raw.len, fingerprint); ++ ++ if (memcmp (fingerprint, waith->tlsFingerprint, sizeof (fingerprint)) != 0) { ++ return WAITRESS_RET_TLS_FINGERPRINT_MISMATCH; ++ } ++ ++#else + gnutls_session_t session = waith->request.tlsSession; + unsigned int certListSize; + const gnutls_datum_t *certList; + gnutls_x509_crt_t cert; ++ char fingerprint[20]; + + if (gnutls_certificate_type_get (session) != GNUTLS_CRT_X509) { + return WAITRESS_RET_TLS_HANDSHAKE_ERR; +@@ -750,7 +822,6 @@ static WaitressReturn_t WaitressTlsVerif + return WAITRESS_RET_TLS_HANDSHAKE_ERR; + } + +- char fingerprint[20]; + size_t fingerprintSize = sizeof (fingerprint); + if (gnutls_x509_crt_get_fingerprint (cert, GNUTLS_DIG_SHA1, fingerprint, + &fingerprintSize) != 0) { +@@ -763,7 +834,7 @@ static WaitressReturn_t WaitressTlsVerif + } + + gnutls_x509_crt_deinit (cert); +- ++#endif + return WAITRESS_RET_OK; + } + +@@ -807,11 +878,6 @@ static WaitressReturn_t WaitressConnect + /* we need shorter timeouts for connect() */ + fcntl (sock, F_SETFL, O_NONBLOCK); + +- /* increase socket receive buffer */ +- const int sockopt = 256*1024; +- setsockopt (sock, SOL_SOCKET, SO_RCVBUF, &sockopt, +- sizeof (sockopt)); +- + /* non-blocking connect will return immediately */ + if (connect (sock, gacurr->ai_addr, gacurr->ai_addrlen) == -1) { + // Error if not in-progress or immediate success +@@ -880,6 +946,11 @@ static WaitressReturn_t WaitressConnect + } + } + ++#if defined(USE_POLARSSL) ++ if (ssl_handshake (&waith->request.sslCtx->ssl) != 0) { ++ return WAITRESS_RET_TLS_HANDSHAKE_ERR; ++ } ++#else + /* Ignore return code as connection will likely still succeed */ + gnutls_server_name_set (waith->request.tlsSession, GNUTLS_NAME_DNS, + waith->url.host, strlen (waith->url.host)); +@@ -887,14 +958,15 @@ static WaitressReturn_t WaitressConnect + if (gnutls_handshake (waith->request.tlsSession) != GNUTLS_E_SUCCESS) { + return WAITRESS_RET_TLS_HANDSHAKE_ERR; + } ++#endif + + if ((wRet = WaitressTlsVerify (waith)) != WAITRESS_RET_OK) { + return wRet; + } + + /* now we can talk encrypted */ +- waith->request.read = WaitressGnutlsRead; +- waith->request.write = WaitressGnutlsWrite; ++ waith->request.read = WaitressTlsRead; ++ waith->request.write = WaitressTlsWrite; + } + + return WAITRESS_RET_OK; +@@ -1120,6 +1192,21 @@ WaitressReturn_t WaitressFetchCall (Wait + waith->request.contentLengthKnown = false; + + if (waith->url.tls) { ++#if defined(USE_POLARSSL) ++ waith->request.sslCtx = calloc (1, sizeof(polarssl_ctx)); ++ ++ entropy_init (&waith->request.sslCtx->entrophy); ++ ctr_drbg_init (&waith->request.sslCtx->rnd, entropy_func, &waith->request.sslCtx->entrophy, "libwaitress", 11); ++ ssl_init (&waith->request.sslCtx->ssl); ++ ++ ssl_set_endpoint (&waith->request.sslCtx->ssl, SSL_IS_CLIENT); ++ ssl_set_authmode (&waith->request.sslCtx->ssl, SSL_VERIFY_NONE); ++ ssl_set_rng (&waith->request.sslCtx->ssl, ctr_drbg_random, &waith->request.sslCtx->rnd); ++ ssl_set_session (&waith->request.sslCtx->ssl, &waith->request.sslCtx->session); ++ ssl_set_bio (&waith->request.sslCtx->ssl, ++ WaitressPollRead, waith, ++ WaitressPollWrite, waith); ++#else + gnutls_init (&waith->request.tlsSession, GNUTLS_CLIENT); + gnutls_set_default_priority (waith->request.tlsSession); + +@@ -1137,6 +1224,7 @@ WaitressReturn_t WaitressFetchCall (Wait + WaitressPollRead); + gnutls_transport_set_push_function (waith->request.tlsSession, + WaitressPollWrite); ++#endif + } + + /* buffer is required for connect already */ +@@ -1148,15 +1236,22 @@ WaitressReturn_t WaitressFetchCall (Wait + if ((wRet = WaitressSendRequest (waith)) == WAITRESS_RET_OK) { + wRet = WaitressReceiveResponse (waith); + } ++#if !defined(USE_POLARSSL) + if (waith->url.tls) { + gnutls_bye (waith->request.tlsSession, GNUTLS_SHUT_RDWR); + } ++#endif + } + + /* cleanup */ + if (waith->url.tls) { ++#if defined(USE_POLARSSL) ++ ssl_free (&waith->request.sslCtx->ssl); ++ free (waith->request.sslCtx); ++#else + gnutls_deinit (waith->request.tlsSession); + gnutls_certificate_free_credentials (waith->tlsCred); ++#endif + } + if (waith->request.sockfd != -1) { + close (waith->request.sockfd); From 7c4d779f3e48ce313b201513bee4a25d2bb602da Mon Sep 17 00:00:00 2001 From: Michael Heimpold Date: Sun, 22 Mar 2015 20:17:15 +0100 Subject: [PATCH 146/681] php5: upgrade to 5.6.7 This fixes CVE-2015-0231, CVE-2015-2305 and CVE-2015-2331. Signed-off-by: Michael Heimpold --- lang/php5/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lang/php5/Makefile b/lang/php5/Makefile index ccb55f4a5..1092b5cde 100644 --- a/lang/php5/Makefile +++ b/lang/php5/Makefile @@ -8,7 +8,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=php -PKG_VERSION:=5.6.6 +PKG_VERSION:=5.6.7 PKG_RELEASE:=1 PKG_MAINTAINER:=W. Michael Petullo @@ -18,7 +18,7 @@ PKG_LICENSE_FILES:=LICENSE PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 PKG_SOURCE_URL:=http://www.php.net/distributions/ -PKG_MD5SUM:=b198117ee1d44c8143e030cee15f1b52 +PKG_MD5SUM:=2e4b0534d4b8aa9aabedeef12e7c0aa8 PKG_FIXUP:=libtool autoreconf PKG_BUILD_PARALLEL:=1 From 623a8a0d0cab1fb5d81c66da10fab8275a69644f Mon Sep 17 00:00:00 2001 From: "W. Michael Petullo" Date: Sun, 22 Mar 2015 17:24:51 -0400 Subject: [PATCH 147/681] dmapd: update to 0.0.71 Signed-off-by: W. Michael Petullo --- net/dmapd/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/net/dmapd/Makefile b/net/dmapd/Makefile index f69622e9c..e573523bb 100644 --- a/net/dmapd/Makefile +++ b/net/dmapd/Makefile @@ -8,7 +8,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=dmapd -PKG_VERSION:=0.0.70 +PKG_VERSION:=0.0.71 PKG_RELEASE:=1 PKG_MAINTAINER:=W. Michael Petullo @@ -18,7 +18,7 @@ PKG_LICENSE_FILES:=COPYING PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://www.flyn.org/projects/dmapd -PKG_MD5SUM:=f503bf95f79b5c1f9418cccf26203952 +PKG_MD5SUM:=cee310509e39db782110267edac4fe9a PKG_FIXUP:=autoreconf PKG_INSTALL:=2 From 733ce321dee4b72a918d33e4c17efc44238d5fb3 Mon Sep 17 00:00:00 2001 From: Ian Leonard Date: Sun, 22 Mar 2015 21:32:06 -0700 Subject: [PATCH 148/681] ffmpeg: upgrade to 2.5.5 Signed-off-by: Ian Leonard --- multimedia/ffmpeg/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/multimedia/ffmpeg/Makefile b/multimedia/ffmpeg/Makefile index 13293a83a..4d146c246 100644 --- a/multimedia/ffmpeg/Makefile +++ b/multimedia/ffmpeg/Makefile @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=ffmpeg -PKG_VERSION:=2.5.4 +PKG_VERSION:=2.5.5 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 PKG_SOURCE_URL:=http://ffmpeg.org/releases/ -PKG_MD5SUM:=af92a816b642d32134a764d2d7f55b75 +PKG_MD5SUM:=46e5697fc43d21de531de3b5f7b97e24 PKG_MAINTAINER:=Ted Hess PKG_LICENSE:=LGPL-2.1+ GPL-2+ LGPL-3 From 8137ce26fd8fd6673b888972069161e62f9e3f90 Mon Sep 17 00:00:00 2001 From: Oliver Middleton Date: Mon, 23 Mar 2015 16:20:37 +0100 Subject: [PATCH 149/681] openssh: strip openssh-sftp-server dependencies again Reapply 99c6c3d830156ce13f415c698343353c477cd9f9 Signed-off-by: Oliver Middleton --- net/openssh/Makefile | 2 ++ 1 file changed, 2 insertions(+) diff --git a/net/openssh/Makefile b/net/openssh/Makefile index 5eb7a2bd8..279fa0ba4 100644 --- a/net/openssh/Makefile +++ b/net/openssh/Makefile @@ -124,6 +124,8 @@ endef define Package/openssh-sftp-server $(call Package/openssh/Default) TITLE+= SFTP server + # Strip dependencies to avoid pulling in OpenSSL etc. + DEPENDS:= endef define Package/openssh-sftp-server/description From 471cf1a9ef35566a7dcc3cce179227bda60715af Mon Sep 17 00:00:00 2001 From: Vladimir Ulrich Date: Mon, 23 Mar 2015 18:31:20 +0300 Subject: [PATCH 150/681] [utils/zoneinfo] Updated package to the latest version Signed-off-by: Vladimir Ulrich --- utils/zoneinfo/Makefile | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/utils/zoneinfo/Makefile b/utils/zoneinfo/Makefile index 6f1b6ef8f..3327fddc4 100644 --- a/utils/zoneinfo/Makefile +++ b/utils/zoneinfo/Makefile @@ -9,8 +9,8 @@ include $(TOPDIR)/rules.mk PKG_NAME:=zoneinfo -PKG_VERSION:=2015a -PKG_VERSION_CODE:=2015a +PKG_VERSION:=2015b +PKG_VERSION_CODE:=2015b PKG_RELEASE:=1 #As i couldn't find real license used "Public Domain" @@ -20,14 +20,14 @@ PKG_LICENSE:=Public Domain PKG_SOURCE:=tzdata$(PKG_VERSION).tar.gz PKG_SOURCE_CODE:=tzcode$(PKG_VERSION_CODE).tar.gz PKG_SOURCE_URL:=http://www.iana.org/time-zones/repository/releases -PKG_MD5SUM:=4ed11c894a74a5ea64201b1c6dbb8831 +PKG_MD5SUM:=75571bb17c7b6be88a9f8872e45bc726 include $(INCLUDE_DIR)/package.mk define Download/tzcode FILE=$(PKG_SOURCE_CODE) URL=$(PKG_SOURCE_URL) - MD5SUM:=8f375ede46ae137fbac047ac431bda37 + MD5SUM:=f073a7c9bca7f9fe408491f826e92968 endef $(eval $(call Download,tzcode)) From 1f22744069439f2e5ba078bb41cec07dd8faefa0 Mon Sep 17 00:00:00 2001 From: Jonathan Bennett Date: Mon, 23 Mar 2015 08:29:20 -0500 Subject: [PATCH 151/681] Update Nano to 2.4 release, update copyright info, and add license tags Signed-off-by: Jonathan Bennett jbennett@incomsystems.biz --- utils/nano/Makefile | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/utils/nano/Makefile b/utils/nano/Makefile index 49f0b9bb9..6d000425d 100644 --- a/utils/nano/Makefile +++ b/utils/nano/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2007-2014 OpenWrt.org +# Copyright (C) 2007-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -8,12 +8,14 @@ include $(TOPDIR)/rules.mk PKG_NAME:=nano -PKG_VERSION:=2.3.6 +PKG_VERSION:=2.4.0 PKG_RELEASE:=1 +PKG_LICENSE:=GPL-3.0+ +PKG_LICENSE_FILES:=COPYING PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=http://www.nano-editor.org/dist/v2.3 -PKG_MD5SUM:=df3d201aecb3155a80633990cc467831 +PKG_SOURCE_URL:=http://www.nano-editor.org/dist/v2.4 +PKG_MD5SUM:=e5c9c6424ee2303663ae4b99ecd4b493 PKG_INSTALL:=1 PKG_BUILD_PARALLEL:=1 From c8c6157e7eb3f5f47295d5eac0281f7de583dfa6 Mon Sep 17 00:00:00 2001 From: Steven Barth Date: Mon, 23 Mar 2015 17:28:54 +0100 Subject: [PATCH 152/681] mdnsresponder: bump to 567 Signed-off-by: Steven Barth --- net/mdnsresponder/Makefile | 4 +-- .../patches/001-cross_compile.patch | 32 +++++++------------ .../patches/100-linux_fixes.patch | 24 +++++++------- 3 files changed, 26 insertions(+), 34 deletions(-) diff --git a/net/mdnsresponder/Makefile b/net/mdnsresponder/Makefile index 91e7e9827..5eaedd2ec 100644 --- a/net/mdnsresponder/Makefile +++ b/net/mdnsresponder/Makefile @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=mDNSResponder -PKG_VERSION:=561.1.1 +PKG_VERSION:=567 PKG_RELEASE:=1 PKG_SOURCE:=mDNSResponder-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://opensource.apple.com/tarballs/mDNSResponder/ -PKG_MD5SUM:=d4b56e22798d6f45e29b42cd6720ab6e +PKG_MD5SUM:=6eff6d243a12a3d4b6fca03c05a9893b PKG_MAINTAINER:=Steven Barth PKG_LICENSE:=Apache-2.0 diff --git a/net/mdnsresponder/patches/001-cross_compile.patch b/net/mdnsresponder/patches/001-cross_compile.patch index ad4eaee44..b1685fc45 100644 --- a/net/mdnsresponder/patches/001-cross_compile.patch +++ b/net/mdnsresponder/patches/001-cross_compile.patch @@ -1,6 +1,6 @@ --- a/Clients/Makefile +++ b/Clients/Makefile -@@ -23,6 +23,8 @@ +@@ -27,6 +27,8 @@ ############################################################################# @@ -9,22 +9,22 @@ # On OS X the dns_sd library functions are included in libSystem, which is implicitly linked with every executable # If /usr/lib/libSystem.dylib exists, then we're on OS X, so we don't need also to link the "dns_sd" shared library ifneq "$(wildcard /usr/lib/libSystem.dylib)" "" -@@ -42,10 +44,10 @@ build: +@@ -46,10 +48,10 @@ build: mkdir build build/dns-sd: build dns-sd.c ClientCommon.c -- cc $(filter %.c %.o, $+) $(LIBS) -I../mDNSShared -Wall -o $@ +- $(CC) $(filter %.c %.o, $+) $(LIBS) -I../mDNSShared -Wall -o $@ + $(CC) $(CFLAGS) $(filter %.c %.o, $+) $(LIBS) -I../mDNSShared -Wall -o $@ build/dns-sd64: build dns-sd.c ClientCommon.c -- cc $(filter %.c %.o, $+) $(LIBS) -I../mDNSShared -Wall -o $@ -m64 +- $(CC) $(filter %.c %.o, $+) $(LIBS) -I../mDNSShared -Wall -o $@ -m64 + $(CC) $(CFLAGS) $(filter %.c %.o, $+) $(LIBS) -I../mDNSShared -Wall -o $@ -m64 # Note, we can make a 'fat' version of dns-sd using 'lipo', as shown below, but we # don't, because we don't want or need a 'fat' version of dns-sd, because it will --- a/mDNSPosix/Makefile +++ b/mDNSPosix/Makefile -@@ -54,10 +54,11 @@ COREDIR = ../mDNSCore +@@ -54,11 +54,12 @@ COREDIR = ../mDNSCore SHAREDDIR ?= ../mDNSShared JDK = /usr/jdk @@ -32,22 +32,14 @@ +CC = @gcc BISON = @bison FLEX = @flex + ST = @strip -LD = ld -shared +LD = @ld +SOOPTS = -shared CP = cp RM = rm LN = ln -s -f -@@ -82,7 +83,7 @@ else - CFLAGS_DEBUG = -Os -DMDNS_DEBUGMSGS=0 - OBJDIR ?= objects/prod - BUILDDIR ?= build/prod --STRIP = strip -S -+STRIP = @strip -S - endif - - # Configure per-OS peculiarities -@@ -91,7 +92,7 @@ CFLAGS_DEBUG = -O0 -DMDNS_DEBUGMSGS=0 +@@ -92,7 +93,7 @@ CFLAGS_DEBUG = -O0 -DMDNS_DEBUGMSGS=0 CFLAGS_OS = -DNOT_HAVE_DAEMON -DNOT_HAVE_SA_LEN -DNOT_HAVE_SOCKLEN_T -DNOT_HAVE_IF_NAMETOINDEX \ -DLOG_PERROR=0 -D_XPG4_2 -D__EXTENSIONS__ -DHAVE_BROKEN_RECVIF_NAME -DTARGET_OS_SOLARIS CC = gcc @@ -56,7 +48,7 @@ LINKOPTS = -lsocket -lnsl -lresolv JAVACFLAGS_OS += -I$(JDK)/include/solaris ifneq ($(DEBUG),1) -@@ -147,7 +148,8 @@ CFLAGS_OS = -DHAVE_IPV6 -no-cpp-precomp +@@ -148,7 +149,8 @@ CFLAGS_OS = -DHAVE_IPV6 -no-cpp-precomp -D__MAC_OS_X_VERSION_MIN_REQUIRED=__MAC_OS_X_VERSION_10_4 \ -D__APPLE_USE_RFC_2292 #-Wunreachable-code CC = gcc @@ -66,7 +58,7 @@ LINKOPTS = -lSystem LDSUFFIX = dylib JDK = /System/Library/Frameworks/JavaVM.framework/Home -@@ -169,8 +171,9 @@ NSSLIBFILE := $(NSSLIBNAME)-$(NSSVERSIO +@@ -170,8 +172,9 @@ NSSLIBFILE := $(NSSLIBNAME)-$(NSSVERSIO NSSLINKNAME := $(NSSLIBNAME).so.2 NSSINSTPATH := /lib @@ -77,7 +69,7 @@ INSTBASE?=/usr STARTUPSCRIPTNAME?=mdns -@@ -256,7 +259,7 @@ libdns_sd: setup $(BUILDDIR)/libdns_sd.$ +@@ -257,7 +260,7 @@ libdns_sd: setup $(BUILDDIR)/libdns_sd.$ CLIENTLIBOBJS = $(OBJDIR)/dnssd_clientlib.c.so.o $(OBJDIR)/dnssd_clientstub.c.so.o $(OBJDIR)/dnssd_ipc.c.so.o $(BUILDDIR)/libdns_sd.$(LDSUFFIX): $(CLIENTLIBOBJS) @@ -86,7 +78,7 @@ @$(STRIP) $@ Clients: setup libdns_sd ../Clients/build/dns-sd -@@ -291,7 +294,7 @@ InstalledManPages: $(MANPATH)/man8/mdnsd +@@ -292,7 +295,7 @@ InstalledManPages: $(MANPATH)/man8/mdnsd InstalledClients: $(INSTBASE)/bin/dns-sd @echo $+ " installed" @@ -95,7 +87,7 @@ @echo $+ " installed" # Note: If daemon already installed, we make sure it's stopped before overwriting it -@@ -346,19 +349,21 @@ $(INSTBASE)/bin/dns-sd: ../Clients/build +@@ -347,19 +350,21 @@ $(INSTBASE)/bin/dns-sd: ../Clients/build $(NSSINSTPATH)/$(NSSLINKNAME): $(NSSINSTPATH)/$(NSSLIBFILE) $(LN) $< $@ diff --git a/net/mdnsresponder/patches/100-linux_fixes.patch b/net/mdnsresponder/patches/100-linux_fixes.patch index ea598a75d..512c1738a 100644 --- a/net/mdnsresponder/patches/100-linux_fixes.patch +++ b/net/mdnsresponder/patches/100-linux_fixes.patch @@ -84,7 +84,7 @@ } --- a/mDNSPosix/mDNSPosix.c +++ b/mDNSPosix/mDNSPosix.c -@@ -136,7 +136,7 @@ mDNSlocal void SockAddrTomDNSAddr(const +@@ -138,7 +138,7 @@ mDNSlocal void SockAddrTomDNSAddr(const // mDNS core calls this routine when it needs to send a packet. mDNSexport mStatus mDNSPlatformSendUDP(const mDNS *const m, const void *const msg, const mDNSu8 *const end, @@ -93,7 +93,7 @@ mDNSIPPort dstPort, mDNSBool useBackgroundTrafficClass) { int err = 0; -@@ -574,9 +574,17 @@ mDNSlocal void FreePosixNetworkInterface +@@ -583,9 +583,17 @@ mDNSlocal void FreePosixNetworkInterface { assert(intf != NULL); if (intf->intfName != NULL) free((void *)intf->intfName); @@ -111,9 +111,9 @@ + assert(rv == 0); + } #endif - free(intf); - } -@@ -703,6 +711,29 @@ mDNSlocal int SetupSocket(struct sockadd + + // Move interface to the RecentInterfaces list for a minute +@@ -724,6 +732,29 @@ mDNSlocal int SetupSocket(struct sockadd if (err < 0) { err = errno; perror("setsockopt - IP_MULTICAST_TTL"); } } @@ -143,7 +143,7 @@ // And start listening for packets if (err == 0) { -@@ -784,6 +815,29 @@ mDNSlocal int SetupSocket(struct sockadd +@@ -805,6 +836,29 @@ mDNSlocal int SetupSocket(struct sockadd if (err < 0) { err = errno; perror("setsockopt - IPV6_MULTICAST_HOPS"); } } @@ -173,7 +173,7 @@ // And start listening for packets if (err == 0) { -@@ -815,7 +869,12 @@ mDNSlocal int SetupSocket(struct sockadd +@@ -836,7 +890,12 @@ mDNSlocal int SetupSocket(struct sockadd } // Clean up @@ -187,7 +187,7 @@ assert((err == 0) == (*sktPtr != -1)); return err; } -@@ -994,7 +1053,7 @@ mDNSlocal mStatus OpenIfNotifySocket(int +@@ -1026,7 +1085,7 @@ mDNSlocal mStatus OpenIfNotifySocket(int /* Subscribe the socket to Link & IP addr notifications. */ mDNSPlatformMemZero(&snl, sizeof snl); snl.nl_family = AF_NETLINK; @@ -196,7 +196,7 @@ ret = bind(sock, (struct sockaddr *) &snl, sizeof snl); if (0 == ret) *pFD = sock; -@@ -1072,11 +1131,18 @@ mDNSlocal mDNSu32 ProcessRoutingNo +@@ -1104,11 +1163,18 @@ mDNSlocal mDNSu32 ProcessRoutingNo PrintNetLinkMsg(pNLMsg); #endif @@ -217,7 +217,7 @@ // Advance pNLMsg to the next message in the buffer if ((pNLMsg->nlmsg_flags & NLM_F_MULTI) != 0 && pNLMsg->nlmsg_type != NLMSG_DONE) -@@ -1247,8 +1313,12 @@ mDNSexport mStatus mDNSPlatformInit(mDNS +@@ -1279,8 +1345,12 @@ mDNSexport mStatus mDNSPlatformInit(mDNS if (err == mStatus_NoError) err = SetupSocket(&sa, zeroIPPort, 0, &m->p->unicastSocket6); #endif @@ -230,7 +230,7 @@ // Tell mDNS core about DNS Servers mDNS_Lock(m); -@@ -1281,9 +1351,17 @@ mDNSexport void mDNSPlatformClose(mDNS * +@@ -1313,9 +1383,17 @@ mDNSexport void mDNSPlatformClose(mDNS * { assert(m != NULL); ClearInterfaceList(m); @@ -250,7 +250,7 @@ #endif } -@@ -1533,14 +1611,14 @@ mDNSexport mStatus mDNSPlatformClearS +@@ -1571,14 +1649,14 @@ mDNSexport mStatus mDNSPlatformClearS mDNSexport mDNSu16 mDNSPlatformGetUDPPort(UDPSocket *sock) { (void) sock; // unused From d6b77026402383b4c3bae32b41fc90cb4cf4d51b Mon Sep 17 00:00:00 2001 From: Mirko Vogt Date: Mon, 23 Mar 2015 20:59:08 +0100 Subject: [PATCH 153/681] [pcre] also package 16bit variant --- libs/pcre/Makefile | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/libs/pcre/Makefile b/libs/pcre/Makefile index 2c708ec86..007af93d6 100644 --- a/libs/pcre/Makefile +++ b/libs/pcre/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2006-2014 OpenWrt.org +# Copyright (C) 2006-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -36,6 +36,11 @@ define Package/libpcre TITLE:=A Perl Compatible Regular Expression library endef +define Package/libpcre16 + $(call Package/libpcre/default) + TITLE:=A Perl Compatible Regular Expression library (16bit support) +endef + define Package/libpcrecpp $(call Package/libpcre/default) TITLE:=C++ wrapper for Perl Compatible Regular Expression library @@ -47,6 +52,7 @@ TARGET_CFLAGS += $(FPIC) CONFIGURE_ARGS += \ --enable-utf8 \ --enable-unicode-properties \ + --enable-pcre16 \ ifneq ($(CONFIG_PACKAGE_libpcrecpp),) CONFIGURE_ARGS+= --enable-cpp @@ -68,7 +74,7 @@ define Build/InstallDev $(CP) $(PKG_INSTALL_DIR)/usr/include/pcre*.h $(1)/usr/include/ $(INSTALL_DIR) $(1)/usr/lib - $(CP) $(PKG_INSTALL_DIR)/usr/lib/libpcre*.{a,so*} $(1)/usr/lib// + $(CP) $(PKG_INSTALL_DIR)/usr/lib/libpcre*.{a,so*} $(1)/usr/lib/ $(INSTALL_DIR) $(1)/usr/lib/pkgconfig $(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/libpcre*.pc $(1)/usr/lib/pkgconfig/ @@ -77,6 +83,12 @@ endef define Package/libpcre/install $(INSTALL_DIR) $(1)/usr/lib $(CP) $(PKG_INSTALL_DIR)/usr/lib/libpcre{,posix}.so.* $(1)/usr/lib/ + $(CP) $(PKG_INSTALL_DIR)/usr/lib/libpcre.so $(1)/usr/lib/ +endef + +define Package/libpcre16/install + $(INSTALL_DIR) $(1)/usr/lib + $(CP) $(PKG_INSTALL_DIR)/usr/lib/libpcre16.so* $(1)/usr/lib/ endef define Package/libpcrecpp/install @@ -85,4 +97,5 @@ define Package/libpcrecpp/install endef $(eval $(call BuildPackage,libpcre)) +$(eval $(call BuildPackage,libpcre16)) $(eval $(call BuildPackage,libpcrecpp)) From 62c97cd90cb68c6cc296b499e0dff7dc0f9ad702 Mon Sep 17 00:00:00 2001 From: Gergely Kiss Date: Mon, 23 Mar 2015 21:11:15 +0100 Subject: [PATCH 154/681] sudo: updated to 1.8.13 Signed-off-by: Gergely Kiss --- admin/sudo/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/admin/sudo/Makefile b/admin/sudo/Makefile index 25a0ff348..69ace6060 100644 --- a/admin/sudo/Makefile +++ b/admin/sudo/Makefile @@ -8,14 +8,14 @@ include $(TOPDIR)/rules.mk PKG_NAME:=sudo -PKG_VERSION:=1.8.12 +PKG_VERSION:=1.8.13 PKG_RELEASE:=1 PKG_LICENSE:=ISC PKG_LICENSE_FILES:=doc/LICENSE PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://www.sudo.ws/sudo/dist -PKG_MD5SUM:=87558f3a55c62bc9244b19594f103ffa +PKG_MD5SUM:=f61577ec330ad1bd504c0e2eec6ea2d8 PKG_INSTALL:=1 From 9f1070dd989ad5bde1a803ce20782c75fbd17f0c Mon Sep 17 00:00:00 2001 From: dibdot Date: Mon, 23 Mar 2015 21:26:26 +0100 Subject: [PATCH 155/681] mc: bump version to 4.8.14 Update Midnight Commander to latest stable release. Major changes described here: https://www.midnight-commander.org/wiki/NEWS-4.8.14 Signed-off-by: Dirk Brenken --- utils/mc/Makefile | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/utils/mc/Makefile b/utils/mc/Makefile index 1fb7beccc..617b48a71 100644 --- a/utils/mc/Makefile +++ b/utils/mc/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2006-2014 OpenWrt.org +# Copyright (C) 2006-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -8,14 +8,14 @@ include $(TOPDIR)/rules.mk PKG_NAME:=mc -PKG_VERSION:=4.8.13 -PKG_RELEASE:=1.2 +PKG_VERSION:=4.8.14 +PKG_RELEASE:=1.3 PKG_MAINTAINER:=Dirk Brenken PKG_LICENSE:=GPL-3.0+ PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=http://ftp.midnight-commander.org/ -PKG_MD5SUM:=d967caa12765eb86e52a6a63ca202500 +PKG_MD5SUM:=fbdaddb9edcf8925dcf3231331a8720b PKG_BUILD_PARALLEL:=1 PKG_FIXUP:=autoreconf From bd78782e2e949b94f7386149dacde4d05dc2d4f2 Mon Sep 17 00:00:00 2001 From: Lawrence D'Anna Date: Sun, 22 Mar 2015 03:36:10 -0700 Subject: [PATCH 156/681] tmux: build fix: don't -I /usr/local/include Tmux is forcing -I /usr/local/include on the compiler. Obviously, this is not good for cross compiles. God only knows why they put it here in the first place. Signed-off-by: Lawrence D'Anna --- utils/tmux/patches/200-usr-local.patch | 14 ++++++++++++++ 1 file changed, 14 insertions(+) create mode 100644 utils/tmux/patches/200-usr-local.patch diff --git a/utils/tmux/patches/200-usr-local.patch b/utils/tmux/patches/200-usr-local.patch new file mode 100644 index 000000000..07336deb8 --- /dev/null +++ b/utils/tmux/patches/200-usr-local.patch @@ -0,0 +1,14 @@ +--- a/Makefile.in ++++ b/Makefile.in +@@ -101,9 +101,9 @@ bin_PROGRAMS = tmux$(EXEEXT) + @IS_DEBUG_TRUE@@IS_GCC_TRUE@ -Wdeclaration-after-statement + @IS_DEBUG_TRUE@@IS_GCC_TRUE@am__append_4 = -DDEBUG + @IS_DEBUG_FALSE@@IS_GCC_TRUE@am__append_5 = -O2 +-@IS_GCC4_TRUE@@IS_GCC_TRUE@am__append_6 = -iquote. -I/usr/local/include ++@IS_GCC4_TRUE@@IS_GCC_TRUE@am__append_6 = -iquote. + @IS_DEBUG_TRUE@@IS_GCC4_TRUE@@IS_GCC_TRUE@am__append_7 = -Wno-pointer-sign +-@IS_GCC4_FALSE@@IS_GCC_TRUE@am__append_8 = -I. -I- -I/usr/local/include ++@IS_GCC4_FALSE@@IS_GCC_TRUE@am__append_8 = -I. -I- + + # Set flags for Solaris. + @IS_GCC_TRUE@@IS_SUNOS_TRUE@am__append_9 = -D_XPG6 -D__EXTENSIONS__ -D_POSIX_PTHREAD_SEMANTICS From 3aca029e5486e901a3a3b0d8cda61b947259edb1 Mon Sep 17 00:00:00 2001 From: dibdot Date: Tue, 24 Mar 2015 08:32:11 +0100 Subject: [PATCH 157/681] mc: add missing libmount dependency Fix compile error: add newly required libmount dependency. Signed-off-by: Dirk Brenken --- utils/mc/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/utils/mc/Makefile b/utils/mc/Makefile index 617b48a71..ab8cd1b03 100644 --- a/utils/mc/Makefile +++ b/utils/mc/Makefile @@ -36,7 +36,7 @@ include $(INCLUDE_DIR)/nls.mk define Package/mc SECTION:=utils CATEGORY:=Utilities - DEPENDS:=+glib2 +libncurses +MC_VFS:libssh2 $(LIBRPC_DEPENDS) $(ICONV_DEPENDS) + DEPENDS:=+glib2 +libncurses +libmount +MC_VFS:libssh2 $(LIBRPC_DEPENDS) $(ICONV_DEPENDS) TITLE:=Midnight Commander - a powerful visual file manager URL:=http://www.midnight-commander.org/ MENU:=1 From e3532da37046246d7f60f21a0201d9d32f5d94d2 Mon Sep 17 00:00:00 2001 From: Ted Hess Date: Tue, 24 Mar 2015 11:45:12 -0400 Subject: [PATCH 158/681] avahi: Enable IPv6 by default Signed-off-by: Ted Hess --- libs/avahi/Makefile | 3 ++- libs/avahi/files/avahi-daemon.conf | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/libs/avahi/Makefile b/libs/avahi/Makefile index 7aaea8968..2d1a64b31 100644 --- a/libs/avahi/Makefile +++ b/libs/avahi/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=avahi PKG_VERSION:=0.6.31 -PKG_RELEASE:=11 +PKG_RELEASE:=12 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://avahi.org/download/ @@ -100,6 +100,7 @@ define Package/avahi-nodbus-daemon SUBMENU:=IP Addresses and Names DEPENDS:=+libavahi-nodbus-support +libexpat +librt +libdaemon TITLE+= (daemon) + USERID:=avahi=105:avahi=105 endef define Package/avahi-daemon/description diff --git a/libs/avahi/files/avahi-daemon.conf b/libs/avahi/files/avahi-daemon.conf index 4ef64df2a..3ef0788eb 100644 --- a/libs/avahi/files/avahi-daemon.conf +++ b/libs/avahi/files/avahi-daemon.conf @@ -2,7 +2,7 @@ #host-name=foo #domain-name=local use-ipv4=yes -use-ipv6=no +use-ipv6=yes check-response-ttl=no use-iff-running=no From 34b21dc910ca6519904a62ede9e78fa9da964f17 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20=C4=8Cerm=C3=A1k?= Date: Tue, 24 Mar 2015 16:34:41 +0100 Subject: [PATCH 159/681] luasocket: add socket.unix module MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Previous build was missing module socket.unix that is required for interaction with Unix domain sockets and is distributed in a separate shared library. This commit adds the file to the created package. Signed-off-by: Jan Čermák --- lang/luasocket/Makefile | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lang/luasocket/Makefile b/lang/luasocket/Makefile index ceb707729..5e7c98300 100644 --- a/lang/luasocket/Makefile +++ b/lang/luasocket/Makefile @@ -10,7 +10,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=luasocket PKG_SOURCE_VERSION:=6d5e40c324c84d9c1453ae88e0ad5bdd0a631448 PKG_VERSION:=3.0-rc1-20130909 -PKG_RELEASE:=2 +PKG_RELEASE:=3 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 PKG_SOURCE_URL:=https://github.com/diegonehab/luasocket.git @@ -56,6 +56,7 @@ define Package/luasocket/install ln -sf ../mime.so.1.0.3 $(1)/usr/lib/lua/mime/core.so $(INSTALL_DIR) $(1)/usr/lib/lua/socket $(INSTALL_DATA) $(PKG_BUILD_DIR)/src/{ftp,http,smtp,tp,url,headers}.lua $(1)/usr/lib/lua/socket + $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/unix.so $(1)/usr/lib/lua/socket ln -sf ../socket.so.3.0-rc1 $(1)/usr/lib/lua/socket/core.so endef From e9072e50fe807ddd8c4f4b686be93794b28c94ea Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Tue, 24 Mar 2015 19:18:14 +0100 Subject: [PATCH 160/681] debootstrap: bump version Signed-off-by: Daniel Golle --- admin/debootstrap/Makefile | 4 ++-- sound/pulseaudio/Makefile | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/admin/debootstrap/Makefile b/admin/debootstrap/Makefile index f2e18d5d8..a55ba353f 100644 --- a/admin/debootstrap/Makefile +++ b/admin/debootstrap/Makefile @@ -9,13 +9,13 @@ include $(TOPDIR)/rules.mk PKG_NAME:=debootstrap -PKG_VERSION:=1.0.66 +PKG_VERSION:=1.0.67 PKG_RELEASE:=1 PKG_MAINTAINER=Daniel Golle PKG_SOURCE:=$(PKG_NAME)-udeb_$(PKG_VERSION)_all.udeb PKG_SOURCE_URL:=http://ftp.debian.org/debian/pool/main/d/debootstrap -PKG_MD5SUM:=bf6370ea0aa80308dfb03a4a35e33ad1 +PKG_MD5SUM:=e7854d4b10ab860f08921525406debdd PKG_LICENSE:=Unique PKG_LICENSE_FILES:=debian/copyright diff --git a/sound/pulseaudio/Makefile b/sound/pulseaudio/Makefile index e75e2c80c..91e96fc08 100644 --- a/sound/pulseaudio/Makefile +++ b/sound/pulseaudio/Makefile @@ -32,7 +32,7 @@ define Package/pulseaudio/Default SECTION:=sound CATEGORY:=Sound DEPENDS:=+libspeexdsp +libsndfile +libltdl +libpthread \ - +librt +alsa-lib +libjson +libopenssl +libwrap +libcap $(ICONV_DEPENDS) $(INTL_DEPENDS) + +librt +alsa-lib +libjson-c +libopenssl +libwrap +libcap $(ICONV_DEPENDS) $(INTL_DEPENDS) TITLE:=Network sound server MAINTAINER:=Peter Wagner URL:=http://www.pulseaudio.org From 99d4c95ad390a7f8e0195decc8753cef80e15470 Mon Sep 17 00:00:00 2001 From: Ted Hess Date: Tue, 24 Mar 2015 09:10:35 -0400 Subject: [PATCH 161/681] pianod: Sync patches with upstream. Fix SNI support Signed-off-by: Ted Hess --- sound/pianod/Makefile | 4 +- .../005-Fix_IPV6_socket_handling.patch | 74 +++++++++++++++---- ...Use_package_config_h_for_all_modules.patch | 2 +- .../030-Waitress_add_polarssl_variant.patch | 23 ++---- 4 files changed, 69 insertions(+), 34 deletions(-) diff --git a/sound/pianod/Makefile b/sound/pianod/Makefile index 758805c70..bb2d50928 100644 --- a/sound/pianod/Makefile +++ b/sound/pianod/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=pianod PKG_VERSION:=173 -PKG_RELEASE:=2 +PKG_RELEASE:=3 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://deviousfish.com/Downloads/pianod/ @@ -63,7 +63,7 @@ CONFIGURE_ARGS+= --with-polarssl PIANOD_CLIENT:=pianod-client-compiled-51.tar.gz define Download/pianod-client - URL:=$(PKG_SOURCE_URL)/Devel + URL:=$(PKG_SOURCE_URL) FILE:=$(PIANOD_CLIENT) MD5SUM:=abbdee5627bcee6a00c8304da8b4e2e7 endef diff --git a/sound/pianod/patches/005-Fix_IPV6_socket_handling.patch b/sound/pianod/patches/005-Fix_IPV6_socket_handling.patch index 68f7c365d..883495a1a 100644 --- a/sound/pianod/patches/005-Fix_IPV6_socket_handling.patch +++ b/sound/pianod/patches/005-Fix_IPV6_socket_handling.patch @@ -1,21 +1,67 @@ --- a/src/libwaitress/waitress.c +++ b/src/libwaitress/waitress.c -@@ -813,7 +813,14 @@ static WaitressReturn_t WaitressConnect - sizeof (sockopt)); +@@ -805,34 +805,37 @@ static WaitressReturn_t WaitressConnect + int pollres; - /* non-blocking connect will return immediately */ -- connect (sock, gacurr->ai_addr, gacurr->ai_addrlen); -+ if (connect (sock, gacurr->ai_addr, gacurr->ai_addrlen) == -1) { -+ // Error if not in-progress or immediate success -+ if (errno != EINPROGRESS) { -+ // Close socket and try alternatives -+ close (sock); -+ continue; -+ } -+ } + /* we need shorter timeouts for connect() */ +- fcntl (sock, F_SETFL, O_NONBLOCK); ++ pollres = fcntl (sock, F_SETFL, O_NONBLOCK); ++ assert (pollres != -1); - pollres = WaitressPollLoop (sock, POLLOUT, waith->timeout); - if (pollres == 0) { +- /* increase socket receive buffer */ +- const int sockopt = 256*1024; +- setsockopt (sock, SOL_SOCKET, SO_RCVBUF, &sockopt, +- sizeof (sockopt)); +- +- /* non-blocking connect will return immediately */ +- connect (sock, gacurr->ai_addr, gacurr->ai_addrlen); +- +- pollres = WaitressPollLoop (sock, POLLOUT, waith->timeout); +- if (pollres == 0) { +- ret = WAITRESS_RET_TIMEOUT; +- } else if (pollres == -1) { +- ret = WAITRESS_RET_ERR; +- } else { +- /* check connect () return value */ +- socklen_t pollresSize = sizeof (pollres); +- getsockopt (sock, SOL_SOCKET, SO_ERROR, &pollres, +- &pollresSize); +- if (pollres != 0) { +- ret = WAITRESS_RET_CONNECT_REFUSED; ++ if (connect (sock, gacurr->ai_addr, gacurr->ai_addrlen) != -1) { ++ /* working */ ++ waith->request.sockfd = sock; ++ break; ++ } else if (errno == EINPROGRESS) { ++ /* wait for connect to succeed */ ++ pollres = WaitressPollLoop (sock, POLLOUT, waith->timeout); ++ if (pollres == 0) { ++ ret = WAITRESS_RET_TIMEOUT; ++ } else if (pollres == -1) { ++ ret = WAITRESS_RET_ERR; + } else { +- /* this one is working */ +- waith->request.sockfd = sock; +- break; ++ /* check connect () return value */ ++ socklen_t pollresSize = sizeof (pollres); ++ getsockopt (sock, SOL_SOCKET, SO_ERROR, &pollres, ++ &pollresSize); ++ if (pollres != 0) { ++ ret = WAITRESS_RET_CONNECT_REFUSED; ++ } else { ++ /* this one is working */ ++ waith->request.sockfd = sock; ++ break; ++ } + } ++ } else { ++ ret = WAITRESS_RET_ERR; + } ++ + close (sock); + } + } --- a/src/libfootball/fb_service.c +++ b/src/libfootball/fb_service.c @@ -111,6 +111,8 @@ static bool fb_setup_socket (FB_SERVICE diff --git a/sound/pianod/patches/020-Use_package_config_h_for_all_modules.patch b/sound/pianod/patches/020-Use_package_config_h_for_all_modules.patch index 25569ccc2..228710b05 100644 --- a/sound/pianod/patches/020-Use_package_config_h_for_all_modules.patch +++ b/sound/pianod/patches/020-Use_package_config_h_for_all_modules.patch @@ -19,7 +19,7 @@ --- a/src/libwaitress/waitress.c +++ b/src/libwaitress/waitress.c -@@ -922,14 +922,14 @@ static WaitressReturn_t WaitressSendRequ +@@ -918,14 +918,14 @@ static WaitressReturn_t WaitressSendRequ if (WaitressProxyEnabled (waith) && !waith->url.tls) { snprintf (buf, WAITRESS_BUFFER_SIZE, "%s http://%s:%s/%s HTTP/" WAITRESS_HTTP_VERSION "\r\n" diff --git a/sound/pianod/patches/030-Waitress_add_polarssl_variant.patch b/sound/pianod/patches/030-Waitress_add_polarssl_variant.patch index de40b35c9..b2a657645 100644 --- a/sound/pianod/patches/030-Waitress_add_polarssl_variant.patch +++ b/sound/pianod/patches/030-Waitress_add_polarssl_variant.patch @@ -247,23 +247,12 @@ return WAITRESS_RET_OK; } -@@ -807,11 +878,6 @@ static WaitressReturn_t WaitressConnect - /* we need shorter timeouts for connect() */ - fcntl (sock, F_SETFL, O_NONBLOCK); - -- /* increase socket receive buffer */ -- const int sockopt = 256*1024; -- setsockopt (sock, SOL_SOCKET, SO_RCVBUF, &sockopt, -- sizeof (sockopt)); -- - /* non-blocking connect will return immediately */ - if (connect (sock, gacurr->ai_addr, gacurr->ai_addrlen) == -1) { - // Error if not in-progress or immediate success -@@ -880,6 +946,11 @@ static WaitressReturn_t WaitressConnect +@@ -876,6 +947,12 @@ static WaitressReturn_t WaitressConnect } } +#if defined(USE_POLARSSL) ++ ssl_set_hostname (&waith->request.sslCtx->ssl, waith->url.host); + if (ssl_handshake (&waith->request.sslCtx->ssl) != 0) { + return WAITRESS_RET_TLS_HANDSHAKE_ERR; + } @@ -271,7 +260,7 @@ /* Ignore return code as connection will likely still succeed */ gnutls_server_name_set (waith->request.tlsSession, GNUTLS_NAME_DNS, waith->url.host, strlen (waith->url.host)); -@@ -887,14 +958,15 @@ static WaitressReturn_t WaitressConnect +@@ -883,14 +960,15 @@ static WaitressReturn_t WaitressConnect if (gnutls_handshake (waith->request.tlsSession) != GNUTLS_E_SUCCESS) { return WAITRESS_RET_TLS_HANDSHAKE_ERR; } @@ -289,7 +278,7 @@ } return WAITRESS_RET_OK; -@@ -1120,6 +1192,21 @@ WaitressReturn_t WaitressFetchCall (Wait +@@ -1116,6 +1194,21 @@ WaitressReturn_t WaitressFetchCall (Wait waith->request.contentLengthKnown = false; if (waith->url.tls) { @@ -311,7 +300,7 @@ gnutls_init (&waith->request.tlsSession, GNUTLS_CLIENT); gnutls_set_default_priority (waith->request.tlsSession); -@@ -1137,6 +1224,7 @@ WaitressReturn_t WaitressFetchCall (Wait +@@ -1133,6 +1226,7 @@ WaitressReturn_t WaitressFetchCall (Wait WaitressPollRead); gnutls_transport_set_push_function (waith->request.tlsSession, WaitressPollWrite); @@ -319,7 +308,7 @@ } /* buffer is required for connect already */ -@@ -1148,15 +1236,22 @@ WaitressReturn_t WaitressFetchCall (Wait +@@ -1144,15 +1238,22 @@ WaitressReturn_t WaitressFetchCall (Wait if ((wRet = WaitressSendRequest (waith)) == WAITRESS_RET_OK) { wRet = WaitressReceiveResponse (waith); } From 1561003a7017cf9bffae25b82c71bc26d749f411 Mon Sep 17 00:00:00 2001 From: Sebastian Moeller Date: Fri, 20 Mar 2015 22:13:37 +0100 Subject: [PATCH 162/681] sqm-scripts: change default for qdisc target parameter Alan Jenkins noted a bug in the smq luci GUI that effectively erased several configuration paramters if two checkboxes were deselected. This behaviour seems consistent in luci but certainly has the potential to confuse users. While confusion can not really be avoided generally it seems wise to change the default interpretation for empty or non-existent itarget and etarget variables from the qdisc's default (5ms in the case of one of the codels) to automatic determination of tghis variable dependent on the configured bandwidth, as codels target variable should be large enough to contain at least one full packet. With this change sqm-scripts will do the right thing by default, but will yet allow the user to specify over-ridding values (as long as the user does not un-check the entry-field exposing check boxes). Survives light testing... This change set also changes the sqm-scripts luci gui to note the user of the change. For compatibility with existing setups sqm-scripts will still honor "auto" as an alternative explicit way of requesting automatic target selection. This might turn into a warning in the future and might be phased out... Signed-off-by: Sebastian Moeller --- net/luci-app-sqm/files/sqm-cbi.lua | 8 ++-- .../files/usr/lib/sqm/functions.sh | 38 ++++++++++++++++--- 2 files changed, 37 insertions(+), 9 deletions(-) diff --git a/net/luci-app-sqm/files/sqm-cbi.lua b/net/luci-app-sqm/files/sqm-cbi.lua index e7d79df00..837902597 100644 --- a/net/luci-app-sqm/files/sqm-cbi.lua +++ b/net/luci-app-sqm/files/sqm-cbi.lua @@ -89,7 +89,7 @@ sc.default = "simple.qos" sc.rmempty = false sc.description = qos_desc -ad = s:taboption("tab_qdisc", Flag, "qdisc_advanced", translate("Show Advanced Configuration")) +ad = s:taboption("tab_qdisc", Flag, "qdisc_advanced", translate("Show and Use Advanced Configuration")) ad.default = false ad.rmempty = true @@ -121,7 +121,7 @@ eecn.default = "NOECN" eecn.rmempty = true eecn:depends("qdisc_advanced", "1") -ad2 = s:taboption("tab_qdisc", Flag, "qdisc_really_really_advanced", translate("Show Dangerous Configuration")) +ad2 = s:taboption("tab_qdisc", Flag, "qdisc_really_really_advanced", translate("Show and Use Dangerous Configuration")) ad2.default = false ad2.rmempty = true ad2:depends("qdisc_advanced", "1") @@ -140,12 +140,12 @@ elim.rmempty = true elim:depends("qdisc_really_really_advanced", "1") -itarg = s:taboption("tab_qdisc", Value, "itarget", translate("Latency target for ingress, e.g 5ms [units: s, ms, or us]; leave empty for default, or auto for automatic selection.")) +itarg = s:taboption("tab_qdisc", Value, "itarget", translate("Latency target for ingress, e.g 5ms [units: s, ms, or us]; leave empty for automatic selection, put in the word default for the qdisc's default.")) itarg.datatype = "string" itarg.rmempty = true itarg:depends("qdisc_really_really_advanced", "1") -etarg = s:taboption("tab_qdisc", Value, "etarget", translate("Latency target for egress, e.g. 5ms [units: s, ms, or us]; leave empty for default, or auto for automatic selection.")) +etarg = s:taboption("tab_qdisc", Value, "etarget", translate("Latency target for egress, e.g. 5ms [units: s, ms, or us]; leave empty for automatic selection, put in the word default for the qdisc's default.")) etarg.datatype = "string" etarg.rmempty = true etarg:depends("qdisc_really_really_advanced", "1") diff --git a/net/sqm-scripts/files/usr/lib/sqm/functions.sh b/net/sqm-scripts/files/usr/lib/sqm/functions.sh index 3411b8f31..a0b2c6ffd 100644 --- a/net/sqm-scripts/files/usr/lib/sqm/functions.sh +++ b/net/sqm-scripts/files/usr/lib/sqm/functions.sh @@ -253,8 +253,8 @@ get_target() { # either e.g. 100ms or auto CUR_TARGET_VALUE=$( echo ${CUR_TARGET} | grep -o -e \^'[[:digit:]]\+' ) CUR_TARGET_UNIT=$( echo ${CUR_TARGET} | grep -o -e '[[:alpha:]]\+'\$ ) -# [ ! -z "$CUR_TARGET" ] && sqm_logger "CUR_TARGET_VALUE: $CUR_TARGET_VALUE" -# [ ! -z "$CUR_TARGET" ] && sqm_logger "CUR_TARGET_UNIT: $CUR_TARGET_UNIT" + #[ ! -z "$CUR_TARGET" ] && sqm_logger "CUR_TARGET_VALUE: $CUR_TARGET_VALUE" + #[ ! -z "$CUR_TARGET" ] && sqm_logger "CUR_TARGET_UNIT: $CUR_TARGET_UNIT" AUTO_TARGET= UNIT_VALID= @@ -271,14 +271,42 @@ get_target() { ;; esac fi - case ${CUR_TARGET_UNIT} in - auto|Auto|AUTO) + # empty field in GUI or undefined GUI variable now defaults to auto + if [ -z "${CUR_TARGET_VALUE}" -a -z "${CUR_TARGET_UNIT}" ]; + then if [ ! -z "${CUR_LINK_KBPS}" ]; then TMP_TARGET_US=$( adapt_target_to_slow_link $CUR_LINK_KBPS ) TMP_INTERVAL_STRING=$( adapt_interval_to_slow_link $TMP_TARGET_US ) CUR_TARGET_STRING="target ${TMP_TARGET_US}us ${TMP_INTERVAL_STRING}" AUTO_TARGET="1" + sqm_logger "get_target defaulting to auto." + else + sqm_logger "required link bandwidth in kbps not passed to get_target()." + fi + fi + # but still allow explicit use of the keyword auto for backward compatibility + case ${CUR_TARGET_UNIT} in + auto|Auto|AUTO) + if [ ! -z "${CUR_LINK_KBPS}" ]; + then + TMP_TARGET_US=$( adapt_target_to_slow_link $CUR_LINK_KBPS ) + TMP_INTERVAL_STRING=$( adapt_interval_to_slow_link $TMP_TARGET_US ) + CUR_TARGET_STRING="target ${TMP_TARGET_US}us ${TMP_INTERVAL_STRING}" + AUTO_TARGET="1" + else + sqm_logger "required link bandwidth in kbps not passed to get_target()." + fi + ;; + esac + + case ${CUR_TARGET_UNIT} in + default|Default|DEFAULT) + if [ ! -z "${CUR_LINK_KBPS}" ]; + then + CUR_TARGET_STRING="" # return nothing so the default target is not over-ridden... + AUTO_TARGET="1" + #sqm_logger "get_target using qdisc default, no explicit target string passed." else sqm_logger "required link bandwidth in kbps not passed to get_target()." fi @@ -288,7 +316,7 @@ get_target() { then if [ -z "${CUR_TARGET_VALUE}" -o -z "${UNIT_VALID}" ]; then - [ -z "$AUTO_TARGET" ] && sqm_logger "${CUR_TARGET} is not a well formed tc target specifier; e.g.: 5ms (or s, us), or the string auto." + [ -z "$AUTO_TARGET" ] && sqm_logger "${CUR_TARGET} is not a well formed tc target specifier; e.g.: 5ms (or s, us), or one of the strings auto or default." fi fi ;; From d5a203f1eba6f93894b9185df763b945c3a72941 Mon Sep 17 00:00:00 2001 From: Sebastian Moeller Date: Fri, 20 Mar 2015 22:47:45 +0100 Subject: [PATCH 163/681] sqm-scripts: clean up interface selection for hotplugging The initial conversion to restart sqm on interfaces it is configured for in case of (transient) dis- and reappearance was half finished. These changes clean up the handling of exlicitly passed interfaces in run.sh: no second argument defaults to all configured interfaces the alternative is an individual interface name passed as 2nd argument to run.sh. The first argument either is start or stop. No argument at all will behave as if start was passed. Survives light testing... Signed-off-by: Sebastian Moeller --- .../files/etc/hotplug.d/iface/11-sqm | 2 +- net/sqm-scripts/files/etc/init.d/sqm | 2 +- net/sqm-scripts/files/usr/lib/sqm/run.sh | 36 ++++++++++++------- 3 files changed, 25 insertions(+), 15 deletions(-) diff --git a/net/sqm-scripts/files/etc/hotplug.d/iface/11-sqm b/net/sqm-scripts/files/etc/hotplug.d/iface/11-sqm index 99796021d..439307e31 100755 --- a/net/sqm-scripts/files/etc/hotplug.d/iface/11-sqm +++ b/net/sqm-scripts/files/etc/hotplug.d/iface/11-sqm @@ -1,3 +1,3 @@ #!/bin/sh -[ "$ACTION" = ifup ] && /usr/lib/sqm/run.sh interface ${DEVICE} +[ "$ACTION" = ifup ] && /usr/lib/sqm/run.sh start ${DEVICE} diff --git a/net/sqm-scripts/files/etc/init.d/sqm b/net/sqm-scripts/files/etc/init.d/sqm index 70307a6e1..2a40afb5a 100755 --- a/net/sqm-scripts/files/etc/init.d/sqm +++ b/net/sqm-scripts/files/etc/init.d/sqm @@ -4,7 +4,7 @@ START=50 reload() { -/usr/lib/sqm/run.sh +/usr/lib/sqm/run.sh start } restart() diff --git a/net/sqm-scripts/files/usr/lib/sqm/run.sh b/net/sqm-scripts/files/usr/lib/sqm/run.sh index 968292bcd..7aa20ddba 100755 --- a/net/sqm-scripts/files/usr/lib/sqm/run.sh +++ b/net/sqm-scripts/files/usr/lib/sqm/run.sh @@ -13,29 +13,39 @@ STOP= ACTIVE_STATE_PREFIX="SQM_active_on_" ACTIVE_STATE_FILE_DIR="/var/run/SQM" mkdir -p ${ACTIVE_STATE_FILE_DIR} -PROTO_STATE_FILE_LIST=$( ls ${ACTIVE_STATE_FILE_DIR}/${ACTIVE_STATE_PREFIX}* 2> /dev/null ) + + +START_ON_IF=$2 # only process this interface +# TODO if $2 is empty select all interfaces with running sqm instance +if [ -z ${START_ON_IF} ] ; +then + # find all interfaces with active sqm instance + logger -t SQM -s "Trying to start/stop SQM on all interfaces." + PROTO_STATE_FILE_LIST=$( ls ${ACTIVE_STATE_FILE_DIR}/${ACTIVE_STATE_PREFIX}* 2> /dev/null ) +else + # only try to restart the just hotplugged interface, so reduce the list of interfaces to stop to the specified one + logger -t SQM -s "Trying to start/stop SQM on interface ${START_ON_IF}" + PROTO_STATE_FILE_LIST=${ACTIVE_STATE_FILE_DIR}/${ACTIVE_STATE_PREFIX}${START_ON_IF} +fi + + case ${1} in + start) + # just run through, same as passing no argument + ;; stop) logger -t SQM -s "run.sh stop" STOP=$1 ;; - interface) - START_ON_IF=$2 # only process this interface - logger -t SQM -s "Trying to re-start SQM on interface ${START_ON_IF}" - # TODO if $2 is empty just bail... - if [ -z ${START_ON_IF} ] ; - then - logger -t SQM -s "Interface name missing, nothing to do, bailing out" - return 0 - fi - # only try to restart the just hotplugged interface, so reduce the list of interfaces to stop to the specified one - PROTO_STATE_FILE_LIST=${ACTIVE_STATE_FILE_DIR}/${ACTIVE_STATE_PREFIX}${START_ON_IF} - ;; esac + + + + # the current uci config file does not necessarily contain sections for all interfaces with active # SQM instances, so use the ACTIVE_STATE_FILES to detect the interfaces on which to stop SQM. # Currently the .qos scripts start with stopping any existing traffic shaping so this should not From f49ab7c61abf2378aa48f05b2dd0da4d0bbc1a4b Mon Sep 17 00:00:00 2001 From: Peter Wagner Date: Wed, 25 Mar 2015 13:02:11 +0100 Subject: [PATCH 164/681] Revert "debootstrap: bump version" This reverts commit e9072e50fe807ddd8c4f4b686be93794b28c94ea. --- admin/debootstrap/Makefile | 4 ++-- sound/pulseaudio/Makefile | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/admin/debootstrap/Makefile b/admin/debootstrap/Makefile index a55ba353f..f2e18d5d8 100644 --- a/admin/debootstrap/Makefile +++ b/admin/debootstrap/Makefile @@ -9,13 +9,13 @@ include $(TOPDIR)/rules.mk PKG_NAME:=debootstrap -PKG_VERSION:=1.0.67 +PKG_VERSION:=1.0.66 PKG_RELEASE:=1 PKG_MAINTAINER=Daniel Golle PKG_SOURCE:=$(PKG_NAME)-udeb_$(PKG_VERSION)_all.udeb PKG_SOURCE_URL:=http://ftp.debian.org/debian/pool/main/d/debootstrap -PKG_MD5SUM:=e7854d4b10ab860f08921525406debdd +PKG_MD5SUM:=bf6370ea0aa80308dfb03a4a35e33ad1 PKG_LICENSE:=Unique PKG_LICENSE_FILES:=debian/copyright diff --git a/sound/pulseaudio/Makefile b/sound/pulseaudio/Makefile index 91e96fc08..e75e2c80c 100644 --- a/sound/pulseaudio/Makefile +++ b/sound/pulseaudio/Makefile @@ -32,7 +32,7 @@ define Package/pulseaudio/Default SECTION:=sound CATEGORY:=Sound DEPENDS:=+libspeexdsp +libsndfile +libltdl +libpthread \ - +librt +alsa-lib +libjson-c +libopenssl +libwrap +libcap $(ICONV_DEPENDS) $(INTL_DEPENDS) + +librt +alsa-lib +libjson +libopenssl +libwrap +libcap $(ICONV_DEPENDS) $(INTL_DEPENDS) TITLE:=Network sound server MAINTAINER:=Peter Wagner URL:=http://www.pulseaudio.org From 368c113db70f9e75e1e7b1c350b6b8aadd3b6746 Mon Sep 17 00:00:00 2001 From: Peter Wagner Date: Wed, 25 Mar 2015 13:06:39 +0100 Subject: [PATCH 165/681] pulseaudio: pulseaudio-daemon depends on libjson-c Signed-off-by: Peter Wagner --- sound/pulseaudio/Makefile | 1 + 1 file changed, 1 insertion(+) diff --git a/sound/pulseaudio/Makefile b/sound/pulseaudio/Makefile index e75e2c80c..23a8c80d1 100644 --- a/sound/pulseaudio/Makefile +++ b/sound/pulseaudio/Makefile @@ -42,6 +42,7 @@ endef define Package/pulseaudio-daemon $(call Package/pulseaudio/Default) + DEPENDS+=+libjson-c endef define Package/pulseaudio/Default/description From 8aa5931d9389778a338b88a83d810e4393d33c74 Mon Sep 17 00:00:00 2001 From: Ted Hess Date: Wed, 25 Mar 2015 10:27:58 -0400 Subject: [PATCH 166/681] pianod: Fix client build on buildbot Signed-off-by: Ted Hess --- sound/pianod/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sound/pianod/Makefile b/sound/pianod/Makefile index bb2d50928..0c6689454 100644 --- a/sound/pianod/Makefile +++ b/sound/pianod/Makefile @@ -75,7 +75,7 @@ endef define Build/Prepare $(call Build/Prepare/Default) - ifeq ($(CONFIG_PACKAGE_pianod-client),y) + ifneq ($(CONFIG_PACKAGE_pianod-client),) $(eval $(call Download,pianod-client)) mkdir -p $(PKG_BUILD_DIR)/pianod-client $(TAR) -xf $(DL_DIR)/$(PIANOD_CLIENT) --strip=1 -C $(PKG_BUILD_DIR)/pianod-client From 268dd7c603dc223a675d6053c6494b15560912d3 Mon Sep 17 00:00:00 2001 From: Mario Halambek Date: Fri, 20 Mar 2015 14:18:00 +0100 Subject: [PATCH 167/681] lxc: bump to 1.1.1 Signed-off-by: Mario Halambek --- utils/lxc/Makefile | 4 +- utils/lxc/patches/030-lxc-download.patch | 43 ++++++++ utils/lxc/patches/300-fix-lxc-destroy.patch | 48 --------- utils/lxc/patches/300-lxc-destroy.patch | 113 ++++++++++++++++++++ 4 files changed, 158 insertions(+), 50 deletions(-) create mode 100644 utils/lxc/patches/030-lxc-download.patch delete mode 100644 utils/lxc/patches/300-fix-lxc-destroy.patch create mode 100644 utils/lxc/patches/300-lxc-destroy.patch diff --git a/utils/lxc/Makefile b/utils/lxc/Makefile index eaf77efdb..3b2d1e435 100644 --- a/utils/lxc/Makefile +++ b/utils/lxc/Makefile @@ -8,7 +8,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=lxc -PKG_VERSION:=1.1.0 +PKG_VERSION:=1.1.1 PKG_RELEASE:=1 PKG_LICENSE:=LGPL-2.1+ BSD-2-Clause GPL-2.0 @@ -16,7 +16,7 @@ PKG_MAINTAINER:=Luka Perkov PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://linuxcontainers.org/downloads/lxc/ -PKG_MD5SUM:=ab1cbabf859abc15165050c854979c5c +PKG_MD5SUM:=d80cb08f0edf36f0887e32c96aec8c13 PKG_BUILD_DEPENDS:=lua PKG_BUILD_PARALLEL:=1 diff --git a/utils/lxc/patches/030-lxc-download.patch b/utils/lxc/patches/030-lxc-download.patch new file mode 100644 index 000000000..295bae0aa --- /dev/null +++ b/utils/lxc/patches/030-lxc-download.patch @@ -0,0 +1,43 @@ +--- a/templates/lxc-download.in ++++ b/templates/lxc-download.in +@@ -39,7 +39,7 @@ DOWNLOAD_LIST_IMAGES="false" + DOWNLOAD_MODE="system" + DOWNLOAD_READY_GPG="false" + DOWNLOAD_RELEASE= +-DOWNLOAD_SERVER="images.linuxcontainers.org" ++DOWNLOAD_SERVER="virtualwrt.org/containers/" + DOWNLOAD_SHOW_GPG_WARNING="true" + DOWNLOAD_SHOW_HTTP_WARNING="true" + DOWNLOAD_TARGET="system" +@@ -257,14 +257,6 @@ for bin in tar xz wget; do + fi + done + +-# Check for GPG +-if [ "$DOWNLOAD_VALIDATE" = "true" ]; then +- if ! type gpg >/dev/null 2>&1; then +- echo "ERROR: Missing recommended tool: gpg" 1>&2 +- echo "You can workaround this by using --no-validate." 1>&2 +- exit 1 +- fi +-fi + + # Check that we have all variables we need + if [ -z "$LXC_NAME" ] || [ -z "$LXC_PATH" ] || [ -z "$LXC_ROOTFS" ]; then +@@ -456,16 +448,9 @@ if [ "$DOWNLOAD_USE_CACHE" = "false" ]; + echo "Downloading the rootfs" + download_file $DOWNLOAD_URL/rootfs.tar.xz \ + ${DOWNLOAD_TEMP}/rootfs.tar.xz normal +- download_sig $DOWNLOAD_URL/rootfs.tar.xz.asc \ +- ${DOWNLOAD_TEMP}/rootfs.tar.xz.asc normal +- gpg_validate ${DOWNLOAD_TEMP}/rootfs.tar.xz.asc +- + echo "Downloading the metadata" + download_file $DOWNLOAD_URL/meta.tar.xz \ + ${DOWNLOAD_TEMP}/meta.tar.xz normal +- download_sig $DOWNLOAD_URL/meta.tar.xz.asc \ +- ${DOWNLOAD_TEMP}/meta.tar.xz.asc normal +- gpg_validate ${DOWNLOAD_TEMP}/meta.tar.xz.asc + + if [ -d $LXC_CACHE_PATH ]; then + rm -Rf $LXC_CACHE_PATH diff --git a/utils/lxc/patches/300-fix-lxc-destroy.patch b/utils/lxc/patches/300-fix-lxc-destroy.patch deleted file mode 100644 index 241f38713..000000000 --- a/utils/lxc/patches/300-fix-lxc-destroy.patch +++ /dev/null @@ -1,48 +0,0 @@ -From bdeafb7bc4857e80dbca5192a751eedcf7b69abd Mon Sep 17 00:00:00 2001 -From: Luka Perkov -Date: Mon, 27 Oct 2014 21:49:46 +0100 -Subject: [PATCH] utils: remove unnecessary check of mystat.st_dev - -The check is not needed and it breaks lxc-destroy when container is installed -on top of overlayfs. More information why this is a problem on overlayfs can be -found here: - -https://kernel.googlesource.com/pub/scm/linux/kernel/git/mszeredi/vfs/+/overlayfs.current/Documentation/filesystems/overlayfs.txt - -Signed-off-by: Luka Perkov ---- - src/lxc/utils.c | 10 ++++------ - 1 file changed, 4 insertions(+), 6 deletions(-) - ---- a/src/lxc/utils.c -+++ b/src/lxc/utils.c -@@ -47,7 +47,7 @@ - - lxc_log_define(lxc_utils, lxc); - --static int _recursive_rmdir_onedev(char *dirname, dev_t pdev, -+static int _recursive_rmdir_onedev(char *dirname, - const char *exclude, int level) - { - struct dirent dirent, *direntp; -@@ -108,10 +108,8 @@ static int _recursive_rmdir_onedev(char - failed=1; - continue; - } -- if (mystat.st_dev != pdev) -- continue; - if (S_ISDIR(mystat.st_mode)) { -- if (_recursive_rmdir_onedev(pathname, pdev, exclude, level+1) < 0) -+ if (_recursive_rmdir_onedev(pathname, exclude, level+1) < 0) - failed=1; - } else { - if (unlink(pathname) < 0) { -@@ -147,7 +145,7 @@ extern int lxc_rmdir_onedev(char *path, - return -1; - } - -- return _recursive_rmdir_onedev(path, mystat.st_dev, exclude, 0); -+ return _recursive_rmdir_onedev(path, exclude, 0); - } - - static int mount_fs(const char *source, const char *target, const char *type) diff --git a/utils/lxc/patches/300-lxc-destroy.patch b/utils/lxc/patches/300-lxc-destroy.patch new file mode 100644 index 000000000..a76e27a6f --- /dev/null +++ b/utils/lxc/patches/300-lxc-destroy.patch @@ -0,0 +1,113 @@ +One of the 'features' of overlayfs is that depending on whether a file +is on the upper or lower dir you get back a different device from stat. +That breaks our lxc_rmdir_onedev. + +So at lxc_rmdir_ondev check the device of the directory being deleted. +If it is overlayfs, then skip the device check. + +Note this is unrelated to overlayfs snapshots - in those cases when you +delete a container, /var/lib/lxc/$container/ does not actually have an +overlayfs under it. Rather, to reproduce this you would + +sudo mkdir /opt/{lower,upper,workdir} +sudo mount -t overlayfs -o lower=/opt/lower,upper=/opt/upper,workdir=/opt/workdir \ + lxc /var/lib/lxc +sudo lxc-create -t download -n c1 -- -d ubuntu -r trusty -a amd64 +sudo lxc-destroy -n c1 + +Signed-off-by: Serge Hallyn +--- + src/lxc/utils.c | 39 ++++++++++++++++++++++++++++++++------- + 1 file changed, 32 insertions(+), 7 deletions(-) + +--- a/src/lxc/utils.c ++++ b/src/lxc/utils.c +@@ -29,6 +29,7 @@ + #include + #include + #include ++#include + #include + #include + #include +@@ -68,8 +69,8 @@ + + lxc_log_define(lxc_utils, lxc); + +-static int _recursive_rmdir_onedev(char *dirname, dev_t pdev, +- const char *exclude, int level) ++static int _recursive_rmdir(char *dirname, dev_t pdev, ++ const char *exclude, int level, bool onedev) + { + struct dirent dirent, *direntp; + DIR *dir; +@@ -106,7 +107,7 @@ static int _recursive_rmdir_onedev(char + if (ret < 0) { + switch(errno) { + case ENOTEMPTY: +- INFO("Not deleting snapshots"); ++ INFO("Not deleting snapshot %s", pathname); + hadexclude = true; + break; + case ENOTDIR: +@@ -129,14 +130,14 @@ static int _recursive_rmdir_onedev(char + failed=1; + continue; + } +- if (mystat.st_dev != pdev) ++ if (onedev && mystat.st_dev != pdev) + continue; + if (S_ISDIR(mystat.st_mode)) { +- if (_recursive_rmdir_onedev(pathname, pdev, exclude, level+1) < 0) ++ if (_recursive_rmdir(pathname, pdev, exclude, level+1, onedev) < 0) + failed=1; + } else { + if (unlink(pathname) < 0) { +- ERROR("%s: failed to delete %s", __func__, pathname); ++ SYSERROR("%s: failed to delete %s", __func__, pathname); + failed=1; + } + } +@@ -158,17 +159,41 @@ static int _recursive_rmdir_onedev(char + return failed ? -1 : 0; + } + ++/* we have two different magic values for overlayfs, yay */ ++#define OVERLAYFS_SUPER_MAGIC 0x794c764f ++#define OVERLAY_SUPER_MAGIC 0x794c7630 ++/* ++ * In overlayfs, st_dev is unreliable. so on overlayfs we don't do ++ * the lxc_rmdir_onedev() ++ */ ++static bool is_native_overlayfs(const char *path) ++{ ++ struct statfs sb; ++ ++ if (statfs(path, &sb) < 0) ++ return false; ++ if (sb.f_type == OVERLAYFS_SUPER_MAGIC || ++ sb.f_type == OVERLAY_SUPER_MAGIC) ++ return true; ++ return false; ++} ++ + /* returns 0 on success, -1 if there were any failures */ + extern int lxc_rmdir_onedev(char *path, const char *exclude) + { + struct stat mystat; ++ bool onedev = true; ++ ++ if (is_native_overlayfs(path)) { ++ onedev = false; ++ } + + if (lstat(path, &mystat) < 0) { + ERROR("%s: failed to stat %s", __func__, path); + return -1; + } + +- return _recursive_rmdir_onedev(path, mystat.st_dev, exclude, 0); ++ return _recursive_rmdir(path, mystat.st_dev, exclude, 0, onedev); + } + + static int mount_fs(const char *source, const char *target, const char *type) From a7ec4ae13cd66ab28d33e3c45e9d2553a58006fd Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Fri, 27 Mar 2015 02:23:51 +0100 Subject: [PATCH 168/681] debootstrap: bump version (again) Signed-off-by: Daniel Golle --- admin/debootstrap/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/admin/debootstrap/Makefile b/admin/debootstrap/Makefile index f2e18d5d8..a55ba353f 100644 --- a/admin/debootstrap/Makefile +++ b/admin/debootstrap/Makefile @@ -9,13 +9,13 @@ include $(TOPDIR)/rules.mk PKG_NAME:=debootstrap -PKG_VERSION:=1.0.66 +PKG_VERSION:=1.0.67 PKG_RELEASE:=1 PKG_MAINTAINER=Daniel Golle PKG_SOURCE:=$(PKG_NAME)-udeb_$(PKG_VERSION)_all.udeb PKG_SOURCE_URL:=http://ftp.debian.org/debian/pool/main/d/debootstrap -PKG_MD5SUM:=bf6370ea0aa80308dfb03a4a35e33ad1 +PKG_MD5SUM:=e7854d4b10ab860f08921525406debdd PKG_LICENSE:=Unique PKG_LICENSE_FILES:=debian/copyright From 96d4953662826ee798d72494aa79df8f63c35e76 Mon Sep 17 00:00:00 2001 From: Alexandru Ardelean Date: Fri, 27 Mar 2015 16:42:33 +0200 Subject: [PATCH 169/681] python3: override machine definition for i386 to build the decimal module Signed-off-by: Alexandru Ardelean --- lang/python3/Makefile | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/lang/python3/Makefile b/lang/python3/Makefile index 1cd18750d..b9d29aab2 100644 --- a/lang/python3/Makefile +++ b/lang/python3/Makefile @@ -111,6 +111,10 @@ MAKE_FLAGS+=\ LD="$(TARGET_CC)" \ PGEN=pgen3 +ifeq ($(ARCH),i386) +MAKE_FLAGS+=PYTHON_DECIMAL_WITH_MACHINE=ansi32 +endif + EXTRA_CFLAGS+= \ -DNDEBUG -fno-inline EXTRA_LDFLAGS+= \ From 3a3156040b69ddfd8481767db4a8b937632f5b50 Mon Sep 17 00:00:00 2001 From: Florian Fainelli Date: Fri, 27 Mar 2015 19:43:59 -0700 Subject: [PATCH 170/681] open-plc-utils: bump to 2015-02-23 Update to commit 1f6e7e372b313cf570aa63314037588ed01ec0de ("Add QPSI recommended wording for mac2pw and mac2pwd.") Signed-off-by: Florian Fainelli --- utils/open-plc-utils/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/utils/open-plc-utils/Makefile b/utils/open-plc-utils/Makefile index c7e19f18b..1c8ef9d51 100644 --- a/utils/open-plc-utils/Makefile +++ b/utils/open-plc-utils/Makefile @@ -8,13 +8,13 @@ include $(TOPDIR)/rules.mk PKG_NAME:=open-plc-utils -PKG_VERSION:=2013-01-29 +PKG_VERSION:=2015-02-23 PKG_RELEASE:=$(PKG_SOURCE_VERSION) PKG_SOURCE_PROTO:=git PKG_SOURCE_URL:=git://github.com/qca/open-plc-utils.git PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) -PKG_SOURCE_VERSION:=6beeb6fe6ce2b16b14284c26e1b9220b68044591 +PKG_SOURCE_VERSION:=1f6e7e372b313cf570aa63314037588ed01ec0de PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.gz PKG_MAINTAINER:=Florian Fainelli From 4a02aa766f8f35471b2704b5607a6f5da3a30769 Mon Sep 17 00:00:00 2001 From: Lawrence D'Anna Date: Fri, 27 Mar 2015 19:58:12 -0700 Subject: [PATCH 171/681] bind: build fix: remove autoconf AR cruft This patch removes some autoconf goo which is causing bind to use the host's ar instead the ar from the toolchain. If they're both elf platforms this is fine, but it's no good if host is darwin. Signed-off-by: Lawrence D'Anna --- net/bind/patches/002-autoconf-ar-fix.patch | 29 ++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 net/bind/patches/002-autoconf-ar-fix.patch diff --git a/net/bind/patches/002-autoconf-ar-fix.patch b/net/bind/patches/002-autoconf-ar-fix.patch new file mode 100644 index 000000000..501fa7d3b --- /dev/null +++ b/net/bind/patches/002-autoconf-ar-fix.patch @@ -0,0 +1,29 @@ +--- a/configure.in ++++ b/configure.in +@@ -93,26 +93,11 @@ esac + # + AC_CONFIG_FILES([make/rules make/includes]) + +-AC_PATH_PROG(AR, ar) +-ARFLAGS="cruv" +-AC_SUBST(AR) +-AC_SUBST(ARFLAGS) +- + # The POSIX ln(1) program. Non-POSIX systems may substitute + # "copy" or something. + LN=ln + AC_SUBST(LN) + +-case "$AR" in +- "") +- AC_MSG_ERROR([ +-ar program not found. Please fix your PATH to include the directory in +-which ar resides, or set AR in the environment with the full path to ar. +-]) +- +- ;; +-esac +- + # + # Etags. + # From ca8e7b831a96627178df95eaf106bd3542c85691 Mon Sep 17 00:00:00 2001 From: Lawrence D'Anna Date: Fri, 27 Mar 2015 19:56:18 -0700 Subject: [PATCH 172/681] new package: noip This is the client program for noip.com, which is a dynamic dns provider. Signed-off-by: Lawrence D'Anna --- net/noip/Makefile | 59 ++++++++++++++++++++ net/noip/files/etc/init.d/noip | 17 ++++++ net/noip/files/etc/no-ip2.conf | 2 + net/noip/patches/001-Makefile-DESTDIR.patch | 13 +++++ net/noip/patches/002-Makefile-dont-run.patch | 14 +++++ 5 files changed, 105 insertions(+) create mode 100644 net/noip/Makefile create mode 100755 net/noip/files/etc/init.d/noip create mode 100644 net/noip/files/etc/no-ip2.conf create mode 100644 net/noip/patches/001-Makefile-DESTDIR.patch create mode 100644 net/noip/patches/002-Makefile-dont-run.patch diff --git a/net/noip/Makefile b/net/noip/Makefile new file mode 100644 index 000000000..c2b6aa381 --- /dev/null +++ b/net/noip/Makefile @@ -0,0 +1,59 @@ +# +# Copyright (C) 2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=noip +PKG_REV:=1 +PKG_VERSION:=2.1.9-1 +PKG_RELEASE:=1 + +PKG_SOURCE:=noip-duc-linux.tar.gz +PKG_SOURCE_URL=http://www.noip.com/client/linux/ +PKG_MD5SUM:=3b0f5f2ff8637c73ab337be403252a60 +PKG_MAINTAINER:="Lawrence D'Anna " + +PKG_LICENSE:=GPLv2 +PKG_LICENSE_FILES:=COPYING + +PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION) + +include $(INCLUDE_DIR)/package.mk + +define Package/noip + SECTION:=net + CATEGORY:=Network + DEPENDS:= + TITLE:=noip.com client + URL:=http://noip.com +endef + +define Package/noip/description + This is the ip address update client for noip.com +endef + +define Build/Configure +endef + +define Build/Compile + $(MAKE) -C $(PKG_BUILD_DIR) \ + PREFIX="" \ + DESTDIR="$(PKG_INSTALL_DIR)" \ + BINDIR="$(PKG_INSTALL_DIR)/usr/bin" \ + CFLAGS="$(TARGET_CFLAGS)" \ + CC="$(TARGET_CC) $(TARGET_CFLAGS)" -O $(TARGET_CPPFLAGS) \ + LD="$(TARGET_CC) $(TARGET_LDFLAGS)" \ + install +endef + +define Package/noip/install + $(INSTALL_DIR) $(1)/usr/bin/ + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/* $(1)/usr/bin/ + $(CP) ./files/* $(1)/ +endef + +$(eval $(call BuildPackage,noip)) diff --git a/net/noip/files/etc/init.d/noip b/net/noip/files/etc/init.d/noip new file mode 100755 index 000000000..e08583f4a --- /dev/null +++ b/net/noip/files/etc/init.d/noip @@ -0,0 +1,17 @@ +#!/bin/sh /etc/rc.common +START=99 + +BIN=noip2 + +start() { + $BIN +} + +stop() { + $BIN -K `pgrep $BIN` +} + +reload() { + stop + start +} diff --git a/net/noip/files/etc/no-ip2.conf b/net/noip/files/etc/no-ip2.conf new file mode 100644 index 000000000..e70f3d638 --- /dev/null +++ b/net/noip/files/etc/no-ip2.conf @@ -0,0 +1,2 @@ +# run this to autoconfigure: +# noip2 -C -c /etc/no-ip2.conf diff --git a/net/noip/patches/001-Makefile-DESTDIR.patch b/net/noip/patches/001-Makefile-DESTDIR.patch new file mode 100644 index 000000000..349d56148 --- /dev/null +++ b/net/noip/patches/001-Makefile-DESTDIR.patch @@ -0,0 +1,13 @@ +--- a/Makefile ++++ b/Makefile +@@ -3,8 +3,8 @@ CC=gcc + PKG=noip-2.1.tgz + + PREFIX=/usr/local +-CONFDIR=${PREFIX}/etc +-BINDIR=${PREFIX}/bin ++CONFDIR=${DESTDIR}/${PREFIX}/etc ++BINDIR=${DESTDIR}/${PREFIX}/bin + + # these defines are for Linux + LIBS= diff --git a/net/noip/patches/002-Makefile-dont-run.patch b/net/noip/patches/002-Makefile-dont-run.patch new file mode 100644 index 000000000..88602aa72 --- /dev/null +++ b/net/noip/patches/002-Makefile-dont-run.patch @@ -0,0 +1,14 @@ +--- a/Makefile ++++ b/Makefile +@@ -28,8 +28,9 @@ install: ${TGT} + if [ ! -d ${BINDIR} ]; then mkdir -p ${BINDIR};fi + if [ ! -d ${CONFDIR} ]; then mkdir -p ${CONFDIR};fi + cp ${TGT} ${BINDIR}/${TGT} +- ${BINDIR}/${TGT} -C -c /tmp/no-ip2.conf +- mv /tmp/no-ip2.conf ${CONFDIR}/no-ip2.conf ++ echo "# run this to autoconfigure:" >no-ip2.conf ++ echo "# ${TGT} -C -c /etc/no-ip2.conf " >>no-ip2.conf ++ mv no-ip2.conf ${CONFDIR}/no-ip2.conf + + package: ${TGT} + rm -f *.bak From 197e6a5a1c4218d839b1d5b717ab7759c327038c Mon Sep 17 00:00:00 2001 From: Florian Fainelli Date: Fri, 27 Mar 2015 22:06:59 -0700 Subject: [PATCH 173/681] hfsprogs: initial import Adds supports for hfsprogs, allowing the creation and verification of HFS/HFS+ filesystems. This creates two selectable packages: - hfsfsck - mkhfs A filesystem checking script is included with hfsfsck to allow OpenWrt to check/repair filesystem errors. Using Ubuntu's 332.25 sources plus their patches from debian/patches/. Signed-off-by: Florian Fainelli --- utils/hfsprogs/Makefile | 81 + utils/hfsprogs/files/hfsfsck.sh | 30 + ...01-Create-short-Makefiles-for-Debian.patch | 93 ++ ...002-Add-exclude-Darwin-specific-code.patch | 1407 +++++++++++++++++ ...de-files-absent-from-the-upstream-pa.patch | 1024 ++++++++++++ ...004-Fix-compilation-on-64-bit-arches.patch | 131 ++ ...Remove-Apple-specific-p-from-strings.patch | 291 ++++ .../0006-Adjust-types-for-printing.patch | 37 + .../0007-Fix-path-for-HFS-wrapper-block.patch | 23 + .../0008-Provide-command-line-option-a.patch | 40 + .../0009-Rename-dprintf-to-dbg_printf.patch | 187 +++ ...10-Rename-custom-macro-nil-with-NULL.patch | 1319 +++++++++++++++ utils/hfsprogs/patches/0011-Fix-types.patch | 71 + ...t-creating-UUIDs-for-new-filesystems.patch | 50 + .../hfsprogs/patches/0013-Fix-manpages.patch | 157 ++ .../patches/0014-uClibc_no_loadavg.patch | 15 + 16 files changed, 4956 insertions(+) create mode 100644 utils/hfsprogs/Makefile create mode 100644 utils/hfsprogs/files/hfsfsck.sh create mode 100644 utils/hfsprogs/patches/0001-Create-short-Makefiles-for-Debian.patch create mode 100644 utils/hfsprogs/patches/0002-Add-exclude-Darwin-specific-code.patch create mode 100644 utils/hfsprogs/patches/0003-Add-helper-include-files-absent-from-the-upstream-pa.patch create mode 100644 utils/hfsprogs/patches/0004-Fix-compilation-on-64-bit-arches.patch create mode 100644 utils/hfsprogs/patches/0005-Remove-Apple-specific-p-from-strings.patch create mode 100644 utils/hfsprogs/patches/0006-Adjust-types-for-printing.patch create mode 100644 utils/hfsprogs/patches/0007-Fix-path-for-HFS-wrapper-block.patch create mode 100644 utils/hfsprogs/patches/0008-Provide-command-line-option-a.patch create mode 100644 utils/hfsprogs/patches/0009-Rename-dprintf-to-dbg_printf.patch create mode 100644 utils/hfsprogs/patches/0010-Rename-custom-macro-nil-with-NULL.patch create mode 100644 utils/hfsprogs/patches/0011-Fix-types.patch create mode 100644 utils/hfsprogs/patches/0012-Fix-mkfs-not-creating-UUIDs-for-new-filesystems.patch create mode 100644 utils/hfsprogs/patches/0013-Fix-manpages.patch create mode 100644 utils/hfsprogs/patches/0014-uClibc_no_loadavg.patch diff --git a/utils/hfsprogs/Makefile b/utils/hfsprogs/Makefile new file mode 100644 index 000000000..9c44a3558 --- /dev/null +++ b/utils/hfsprogs/Makefile @@ -0,0 +1,81 @@ +# +# Copyright (C) 2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=hfsprogs +PKG_VERSION:=332.25 +PKG_RELEASE:=1 + +PKG_LICENSE:=GPL-3.0+ +PKG_LICENSE_FILES:=COPYING + +PKG_MAINTAINER:=Florian Fainelli + +PKG_SOURCE:=$(PKG_NAME)_$(PKG_VERSION).orig.tar.gz +PKG_SOURCE_URL:=http://archive.ubuntu.com/ubuntu/pool/universe/h/$(PKG_NAME) +PKG_BUILD_DIR:=$(BUILD_DIR)/diskdev_cmds-$(PKG_VERSION) +PKG_MD5SUM:=261c3de5ec0dcf5244e3f60d79c1d6f1 +PKG_LICENSE:=APSL 2.0 + +include $(INCLUDE_DIR)/package.mk +include $(INCLUDE_DIR)/nls.mk + +define Package/hfsprogs/Default + SECTION:=utils + CATEGORY:=Utilities + SUBMENU:=Filesystem + DEPENDS:=+libopenssl +endef + +define Package/hfsfsck + $(call Package/hfsprogs/Default) + TITLE:=fsck (fsck.hfs) utility from hfsprogs +endef + +define Package/mkhfs + $(call Package/hfsprogs/Default) + TITLE:=mkfs (mkfs.hfs) utility from hfsprogs +endef + +define Package/hfsfsck/description + Utilities to create and check HFS/HFS+ filesystems. + (fsck.hfs and fsck.hfsplus for checking integrity of HFS/HFS+ volumes) +endef + +define Package/mkhfs/description + Utilities to create and check HFS/HFS+ filesystems. + (mkfs.hfs and mkfs.hfsplus for creating HFS/HFS+ volumes) +endef + +define Build/Configure +endef + +define Build/Compile + $(MAKE) -C $(PKG_BUILD_DIR) \ + -f Makefile.lnx \ + $(TARGET_CONFIGURE_OPTS) \ + CFLAGS+="$(TARGET_CFLAGS) -I$(PKG_BUILD_DIR)/include -DDEBUG_BUILD=0 -D_FILE_OFFSET_BITS=64 -D LINUX=1 -D BSD=1" \ + all +endef + +define Package/hfsfsck/install + $(INSTALL_DIR) $(1)/lib/functions/fsck + $(INSTALL_DATA) ./files/hfsfsck.sh $(1)/lib/functions/fsck/ + $(INSTALL_DIR) $(1)/usr/sbin + $(INSTALL_BIN) $(PKG_BUILD_DIR)/fsck_hfs.tproj/fsck_hfs $(1)/usr/sbin/fsck.hfsplus + (cd $(1)/usr/sbin; ln -sf fsck.hfsplus fsck.hfs;) +endef + +define Package/mkhfs/install + $(INSTALL_DIR) $(1)/usr/sbin + $(INSTALL_BIN) $(PKG_BUILD_DIR)/newfs_hfs.tproj/newfs_hfs $(1)/usr/sbin/mkfs.hfsplus + (cd $(1)/usr/sbin; ln -sf mkfs.hfsplus mkfs.hfs;) +endef + +$(eval $(call BuildPackage,hfsfsck)) +$(eval $(call BuildPackage,mkhfs)) diff --git a/utils/hfsprogs/files/hfsfsck.sh b/utils/hfsprogs/files/hfsfsck.sh new file mode 100644 index 000000000..8bcd2c1fd --- /dev/null +++ b/utils/hfsprogs/files/hfsfsck.sh @@ -0,0 +1,30 @@ +#!/bin/sh +# Copyright 2015 OpenWrt.org +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +fsck_hfsfsck() { + hfsfsck "$device" 2>&1 | logger -t "fstab: hfsfsck ($device)" + local status="$?" + case "$status" in + 0) ;; #success + 4) reboot;; + 8) echo "hfsfsck ($device): Warning! Uncorrected errors."| logger -t fstab + return 1 + ;; + *) echo "hfsfsck ($device): Error $status. Check not complete."| logger -t fstab;; + esac + return 0 +} + +fsck_hfs() { + fsck_hfsfsck "$@" +} + +fsck_hfsplus() { + fsck_hfsfsck "$@" +} + +append libmount_known_fsck "hfs" +append libmount_known_fsck "hfsplus" diff --git a/utils/hfsprogs/patches/0001-Create-short-Makefiles-for-Debian.patch b/utils/hfsprogs/patches/0001-Create-short-Makefiles-for-Debian.patch new file mode 100644 index 000000000..a8c419369 --- /dev/null +++ b/utils/hfsprogs/patches/0001-Create-short-Makefiles-for-Debian.patch @@ -0,0 +1,93 @@ +From: =?UTF-8?q?Rog=C3=A9rio=20Brito?= +Date: Thu, 24 Oct 2013 01:11:21 -0200 +Subject: Create short Makefiles for Debian + +Create short Makefiles for compiling just the necessary parts for a +Debian-based (and possibly other distributions) HFS+ filesystem +utilities. +--- + Makefile.lnx | 8 ++++++++ + fsck_hfs.tproj/Makefile.lnx | 16 ++++++++++++++++ + fsck_hfs.tproj/dfalib/Makefile.lnx | 15 +++++++++++++++ + newfs_hfs.tproj/Makefile.lnx | 12 ++++++++++++ + 4 files changed, 51 insertions(+) + create mode 100644 Makefile.lnx + create mode 100644 fsck_hfs.tproj/Makefile.lnx + create mode 100644 fsck_hfs.tproj/dfalib/Makefile.lnx + create mode 100644 newfs_hfs.tproj/Makefile.lnx + +diff --git a/Makefile.lnx b/Makefile.lnx +new file mode 100644 +index 0000000..687d1e7 +--- /dev/null ++++ b/Makefile.lnx +@@ -0,0 +1,8 @@ ++CC := gcc ++CFLAGS += -I$(PWD)/include -DDEBUG_BUILD=0 -D_FILE_OFFSET_BITS=64 -D LINUX=1 -D BSD=1 ++SUBDIRS := newfs_hfs.tproj fsck_hfs.tproj ++ ++all clean: ++ for d in $(SUBDIRS); do $(MAKE) -C $$d -f Makefile.lnx $@; done ++ ++export CC CFLAGS +diff --git a/fsck_hfs.tproj/Makefile.lnx b/fsck_hfs.tproj/Makefile.lnx +new file mode 100644 +index 0000000..977d7e8 +--- /dev/null ++++ b/fsck_hfs.tproj/Makefile.lnx +@@ -0,0 +1,16 @@ ++CFILES = fsck_hfs.c strings.c utilities.c cache.c fsck_debug.c ++OFILES = $(CFILES:.c=.o) ++ ++all: fsck_hfs ++ ++fsck_hfs: $(OFILES) dfalib/libdfa.a ++ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(OFILES) dfalib/libdfa.a ++ ++dfalib/libdfa.a: FORCE ++ $(MAKE) -C dfalib -f Makefile.lnx CFLAGS="$(CFLAGS)" LDFLAGS="$(LDFLAGS)" libdfa.a ++ ++clean: ++ $(RM) fsck_hfs $(OFILES) ++ $(MAKE) -C dfalib -f Makefile.lnx clean ++ ++.PHONY : FORCE clean +diff --git a/fsck_hfs.tproj/dfalib/Makefile.lnx b/fsck_hfs.tproj/dfalib/Makefile.lnx +new file mode 100644 +index 0000000..8c07196 +--- /dev/null ++++ b/fsck_hfs.tproj/dfalib/Makefile.lnx +@@ -0,0 +1,15 @@ ++CFILES = hfs_endian.c BlockCache.c\ ++ BTree.c BTreeAllocate.c BTreeMiscOps.c \ ++ BTreeNodeOps.c BTreeScanner.c BTreeTreeOps.c\ ++ CatalogCheck.c HardLinkCheck.c\ ++ SBTree.c SControl.c SVerify1.c SVerify2.c\ ++ SRepair.c SRebuildCatalogBTree.c\ ++ SUtils.c SKeyCompare.c SDevice.c SExtents.c SAllocate.c\ ++ SCatalog.c SStubs.c VolumeBitmapCheck.c ++OFILES = $(CFILES:.c=.o) ++ ++libdfa.a: $(OFILES) ++ ar rc $@ $? ++ ++clean: ++ $(RM) $(OFILES) libdfa.a +diff --git a/newfs_hfs.tproj/Makefile.lnx b/newfs_hfs.tproj/Makefile.lnx +new file mode 100644 +index 0000000..58e6700 +--- /dev/null ++++ b/newfs_hfs.tproj/Makefile.lnx +@@ -0,0 +1,12 @@ ++CFILES = hfs_endian.c makehfs.c newfs_hfs.c ++OFILES = $(CFILES:.c=.o) ++ ++all: newfs_hfs ++ ++newfs_hfs: $(OFILES) ++ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(OFILES) -lcrypto ++ ++clean: ++ $(RM) newfs_hfs $(OFILES) ++ ++.PHONY : FORCE clean diff --git a/utils/hfsprogs/patches/0002-Add-exclude-Darwin-specific-code.patch b/utils/hfsprogs/patches/0002-Add-exclude-Darwin-specific-code.patch new file mode 100644 index 000000000..0046c364f --- /dev/null +++ b/utils/hfsprogs/patches/0002-Add-exclude-Darwin-specific-code.patch @@ -0,0 +1,1407 @@ +From: =?UTF-8?q?Rog=C3=A9rio=20Brito?= +Date: Thu, 24 Oct 2013 01:11:21 -0200 +Subject: Add/exclude Darwin-specific code + +Modify some of the files so that they can be compiled without the +Apple owned frameworks in a Debian system (and possibly others). +--- + fsck_hfs.tproj/cache.c | 4 ++ + fsck_hfs.tproj/dfalib/BTree.c | 2 + + fsck_hfs.tproj/dfalib/BlockCache.c | 3 + + fsck_hfs.tproj/dfalib/SBTree.c | 2 + + fsck_hfs.tproj/dfalib/SDevice.c | 92 ++++++++++++++++++++--------- + fsck_hfs.tproj/dfalib/SKeyCompare.c | 2 + + fsck_hfs.tproj/dfalib/SRepair.c | 2 + + fsck_hfs.tproj/dfalib/SRuntime.h | 7 ++- + fsck_hfs.tproj/dfalib/SUtils.c | 5 +- + fsck_hfs.tproj/dfalib/SVerify2.c | 7 +++ + fsck_hfs.tproj/dfalib/Scavenger.h | 11 +++- + fsck_hfs.tproj/dfalib/hfs_endian.c | 4 ++ + fsck_hfs.tproj/dfalib/hfs_endian.h | 7 ++- + fsck_hfs.tproj/fsck_hfs.c | 61 +++++++++++++++---- + fsck_hfs.tproj/utilities.c | 8 ++- + include/missing.h | 115 ++++++++++++++++++++++++++++++++++++ + newfs_hfs.tproj/hfs_endian.c | 5 ++ + newfs_hfs.tproj/hfs_endian.h | 5 ++ + newfs_hfs.tproj/makehfs.c | 72 ++++++++++++++++------ + newfs_hfs.tproj/newfs_hfs.c | 74 ++++++++++++++++++++--- + newfs_hfs.tproj/newfs_hfs.h | 26 ++++---- + 21 files changed, 429 insertions(+), 85 deletions(-) + create mode 100644 include/missing.h + +diff --git a/fsck_hfs.tproj/cache.c b/fsck_hfs.tproj/cache.c +index be46195..527088a 100644 +--- a/fsck_hfs.tproj/cache.c ++++ b/fsck_hfs.tproj/cache.c +@@ -26,7 +26,11 @@ + #include + #include + #include ++#if LINUX ++#include "missing.h" ++#else + #include ++#endif /* __LINUX__ */ + #include + #include + #include +diff --git a/fsck_hfs.tproj/dfalib/BTree.c b/fsck_hfs.tproj/dfalib/BTree.c +index edd8301..7ad9fe0 100644 +--- a/fsck_hfs.tproj/dfalib/BTree.c ++++ b/fsck_hfs.tproj/dfalib/BTree.c +@@ -1705,7 +1705,9 @@ OSStatus BTGetInformation (SFCB *filePtr, + UInt16 version, + BTreeInfoRec *info ) + { ++#if !LINUX + #pragma unused (version) ++#endif + + BTreeControlBlockPtr btreePtr; + +diff --git a/fsck_hfs.tproj/dfalib/BlockCache.c b/fsck_hfs.tproj/dfalib/BlockCache.c +index 1bb952f..e3a28a2 100644 +--- a/fsck_hfs.tproj/dfalib/BlockCache.c ++++ b/fsck_hfs.tproj/dfalib/BlockCache.c +@@ -20,6 +20,9 @@ + * @APPLE_LICENSE_HEADER_END@ + */ + ++#if LINUX ++#include "missing.h" ++#endif + #include "SRuntime.h" + #include "Scavenger.h" + #include "../cache.h" +diff --git a/fsck_hfs.tproj/dfalib/SBTree.c b/fsck_hfs.tproj/dfalib/SBTree.c +index 2fbcd1d..cd81b13 100644 +--- a/fsck_hfs.tproj/dfalib/SBTree.c ++++ b/fsck_hfs.tproj/dfalib/SBTree.c +@@ -322,7 +322,9 @@ ErrorExit: + OSStatus + SetEndOfForkProc ( SFCB *filePtr, FSSize minEOF, FSSize maxEOF ) + { ++#if !LINUX + #pragma unused (maxEOF) ++#endif + + OSStatus result; + UInt32 actualSectorsAdded; +diff --git a/fsck_hfs.tproj/dfalib/SDevice.c b/fsck_hfs.tproj/dfalib/SDevice.c +index bf6f61c..9a46023 100644 +--- a/fsck_hfs.tproj/dfalib/SDevice.c ++++ b/fsck_hfs.tproj/dfalib/SDevice.c +@@ -2,7 +2,7 @@ + * Copyright (c) 1999 Apple Computer, Inc. All rights reserved. + * + * @APPLE_LICENSE_HEADER_START@ +- * ++ * + * "Portions Copyright (c) 1999 Apple Computer, Inc. All Rights + * Reserved. This file contains Original Code and/or Modifications of + * Original Code as defined in and that are subject to the Apple Public +@@ -10,7 +10,7 @@ + * except in compliance with the License. Please obtain a copy of the + * License at http://www.apple.com/publicsource and read it before using + * this file. +- * ++ * + * The Original Code and all software distributed under the License are + * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER + * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES, +@@ -18,7 +18,7 @@ + * FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT. Please see the + * License for the specific language governing rights and limitations + * under the License." +- * ++ * + * @APPLE_LICENSE_HEADER_END@ + */ + #include "SRuntime.h" +@@ -28,33 +28,71 @@ + #include + #include + #include +- ++#if LINUX ++#include ++#include ++#else + #include +- ++#endif /* LINUX */ + #else +- + #include + #include + #include + + #endif + +- + OSErr GetDeviceSize(int driveRefNum, UInt64 *numBlocks, UInt32 *blockSize) + { + #if BSD + UInt64 devBlockCount = 0; + int devBlockSize = 0; ++#if LINUX ++ struct stat stbuf; ++ ++ devBlockSize = 512; + ++#ifndef BLKGETSIZE ++#define BLKGETSIZE _IO(0x12,96) ++#endif ++#ifndef BLKGETSIZE64 ++#define BLKGETSIZE64 _IOR(0x12,114,size_t) ++#endif ++ if (fstat(driveRefNum, &stbuf) < 0){ ++ printf("Error: %s\n", strerror(errno)); ++ return(-1); ++ } ++ ++ if (S_ISREG(stbuf.st_mode)) { ++ devBlockCount = stbuf.st_size / 512; ++ } ++ else if (S_ISBLK(stbuf.st_mode)) { ++ unsigned long size; ++ u_int64_t size64; ++ if (!ioctl(driveRefNum, BLKGETSIZE64, &size64)) ++ devBlockCount = size64 / 512; ++ else if (!ioctl(driveRefNum, BLKGETSIZE, &size)) ++ devBlockCount = size; ++ else{ ++ printf("Error: %s\n", strerror(errno)); ++ return(-1); ++ } ++ ++ } ++ else{ ++ printf("Device is not a block device"); ++ return(-1); ++ } ++#elif BSD + if (ioctl(driveRefNum, DKIOCGETBLOCKCOUNT, &devBlockCount) < 0) { + printf("ioctl(DKIOCGETBLOCKCOUNT) for fd %d: %s\n", driveRefNum, strerror(errno)); + return (-1); + } +- ++ + if (ioctl(driveRefNum, DKIOCGETBLOCKSIZE, &devBlockSize) < 0) { + printf("ioctl(DKIOCGETBLOCKSIZE) for fd %d: %s\n", driveRefNum, strerror(errno)); + return (-1); + } ++#endif /* BSD */ + + if (devBlockSize != 512) { + *numBlocks = (devBlockCount * (UInt64)devBlockSize) / 512; +@@ -70,24 +108,24 @@ OSErr GetDeviceSize(int driveRefNum, UInt64 *numBlocks, UInt32 *blockSize) + { + /* return format list status code */ + kFmtLstCode = 6, +- ++ + /* reference number of .SONY driver */ + kSonyRefNum = 0xfffb, +- ++ + /* values returned by DriveStatus in DrvSts.twoSideFmt */ + kSingleSided = 0, + kDoubleSided = -1, + kSingleSidedSize = 800, /* 400K */ + kDoubleSidedSize = 1600, /* 800K */ +- ++ + /* values in DrvQEl.qType */ + kWordDrvSiz = 0, + kLongDrvSiz = 1, +- ++ + /* more than enough formatListRecords */ + kMaxFormatListRecs = 16 + }; +- ++ + ParamBlockRec pb; + FormatListRec formatListRecords[kMaxFormatListRecs]; + DrvSts status; +@@ -95,22 +133,22 @@ OSErr GetDeviceSize(int driveRefNum, UInt64 *numBlocks, UInt32 *blockSize) + OSErr result; + unsigned long blocks = 0; + +- ++ + /* Attempt to get the drive's format list. */ + /* (see the Technical Note "What Your Sony Drives For You") */ +- ++ + pb.cntrlParam.ioVRefNum = driveQElementPtr->dQDrive; + pb.cntrlParam.ioCRefNum = driveQElementPtr->dQRefNum; + pb.cntrlParam.csCode = kFmtLstCode; + pb.cntrlParam.csParam[0] = kMaxFormatListRecs; + *(long *)&pb.cntrlParam.csParam[1] = (long)&formatListRecords[0]; +- ++ + result = PBStatusSync(&pb); +- ++ + if ( result == noErr ) + { + /* The drive supports ReturnFormatList status call. */ +- ++ + /* Get the current disk's size. */ + for( formatListRecIndex = 0; + formatListRecIndex < pb.cntrlParam.csParam[0]; +@@ -131,7 +169,7 @@ OSErr GetDeviceSize(int driveRefNum, UInt64 *numBlocks, UInt32 *blockSize) + else if ( driveQElementPtr->dQRefNum == (short)kSonyRefNum ) + { + /* The drive is a non-SuperDrive floppy which only supports 400K and 800K disks */ +- ++ + result = DriveStatus(driveQElementPtr->dQDrive, &status); + if ( result == noErr ) + { +@@ -140,11 +178,11 @@ OSErr GetDeviceSize(int driveRefNum, UInt64 *numBlocks, UInt32 *blockSize) + case kSingleSided: + blocks = kSingleSidedSize; + break; +- ++ + case kDoubleSided: + blocks = kDoubleSidedSize; + break; +- ++ + default: // This should never happen + result = paramErr; + break; +@@ -155,20 +193,20 @@ OSErr GetDeviceSize(int driveRefNum, UInt64 *numBlocks, UInt32 *blockSize) + { + /* The drive is not a floppy and it doesn't support ReturnFormatList */ + /* so use the dQDrvSz field(s) */ +- ++ + result = noErr; /* reset result */ +- ++ + switch ( driveQElementPtr->qType ) + { + case kWordDrvSiz: + blocks = driveQElementPtr->dQDrvSz; + break; +- ++ + case kLongDrvSiz: + blocks = ((unsigned long)driveQElementPtr->dQDrvSz2 << 16) + + driveQElementPtr->dQDrvSz; + break; +- ++ + default: // This should never happen + result = paramErr; + break; +@@ -177,7 +215,7 @@ OSErr GetDeviceSize(int driveRefNum, UInt64 *numBlocks, UInt32 *blockSize) + + *numBlocks = blocks; + *blockSize = 512; +- ++ + return( result ); + #endif + } +@@ -188,7 +226,7 @@ OSErr DeviceRead(int device, int drive, void* buffer, SInt64 offset, UInt32 reqB + #if BSD + off_t seek_off; + ssize_t nbytes; +- ++ + *actBytes = 0; + + seek_off = lseek(device, offset, SEEK_SET); +diff --git a/fsck_hfs.tproj/dfalib/SKeyCompare.c b/fsck_hfs.tproj/dfalib/SKeyCompare.c +index 46e145f..18d99c5 100644 +--- a/fsck_hfs.tproj/dfalib/SKeyCompare.c ++++ b/fsck_hfs.tproj/dfalib/SKeyCompare.c +@@ -454,7 +454,9 @@ SInt32 CompareExtentKeysPlus( const HFSPlusExtentKey *searchKey, const HFSPlusEx + * The name portion of the key is compared using a 16-bit binary comparison. + * This is called from the b-tree code. + */ ++#if !LINUX + __private_extern__ ++#endif + SInt32 + CompareAttributeKeys(const AttributeKey *searchKey, const AttributeKey *trialKey) + { +diff --git a/fsck_hfs.tproj/dfalib/SRepair.c b/fsck_hfs.tproj/dfalib/SRepair.c +index 01c1a10..8eb759c 100644 +--- a/fsck_hfs.tproj/dfalib/SRepair.c ++++ b/fsck_hfs.tproj/dfalib/SRepair.c +@@ -1617,7 +1617,9 @@ Output: + + static OSErr FixWrapperExtents( SGlobPtr GPtr, RepairOrderPtr p ) + { ++#if !LINUX + #pragma unused (p) ++#endif + + OSErr err; + HFSMasterDirectoryBlock *mdb; +diff --git a/fsck_hfs.tproj/dfalib/SRuntime.h b/fsck_hfs.tproj/dfalib/SRuntime.h +index 646917b..770e3ef 100644 +--- a/fsck_hfs.tproj/dfalib/SRuntime.h ++++ b/fsck_hfs.tproj/dfalib/SRuntime.h +@@ -27,8 +27,11 @@ + #define __SRUNTIME__ + + #if BSD +- ++#if LINUX ++#include "missing.h" ++#else + #include ++#endif + #include + #include + #include +@@ -91,10 +94,12 @@ typedef const unsigned char * ConstStr255Param; + + typedef u_int32_t HFSCatalogNodeID; + ++#if !LINUX + enum { + false = 0, + true = 1 + }; ++#endif + + /* OS error codes */ + enum { +diff --git a/fsck_hfs.tproj/dfalib/SUtils.c b/fsck_hfs.tproj/dfalib/SUtils.c +index 72035f0..6e9253e 100644 +--- a/fsck_hfs.tproj/dfalib/SUtils.c ++++ b/fsck_hfs.tproj/dfalib/SUtils.c +@@ -380,7 +380,8 @@ void InvalidateCalculatedVolumeBitMap( SGlobPtr GPtr ) + // GPtr->realVCB Real in-memory vcb + //------------------------------------------------------------------------------ + +-#if !BSD ++#if BSD ++#if !LINUX + OSErr GetVolumeFeatures( SGlobPtr GPtr ) + { + OSErr err; +@@ -418,7 +419,7 @@ OSErr GetVolumeFeatures( SGlobPtr GPtr ) + return( noErr ); + } + #endif +- ++#endif + + + /*------------------------------------------------------------------------------- +diff --git a/fsck_hfs.tproj/dfalib/SVerify2.c b/fsck_hfs.tproj/dfalib/SVerify2.c +index 6a47935..c68f3d8 100644 +--- a/fsck_hfs.tproj/dfalib/SVerify2.c ++++ b/fsck_hfs.tproj/dfalib/SVerify2.c +@@ -32,7 +32,9 @@ + */ + + #include ++#if !LINUX + #include ++#endif + + #include "BTree.h" + #include "BTreePrivate.h" +@@ -1354,8 +1356,13 @@ OSErr CompareVolumeHeader( SGlobPtr GPtr, HFSPlusVolumeHeader *volumeHeader ) + * clump size for read-only media is irrelevant we skip the clump size + * check to avoid non useful warnings. + */ ++#if LINUX ++ // FIXME ++ isWriteable = 1; ++#else + isWriteable = 0; + ioctl( GPtr->DrvNum, DKIOCISWRITABLE, &isWriteable ); ++#endif + if ( isWriteable != 0 && + volumeHeader->catalogFile.clumpSize != vcb->vcbCatalogFile->fcbClumpSize ) { + PrintError(GPtr, E_InvalidClumpSize, 0); +diff --git a/fsck_hfs.tproj/dfalib/Scavenger.h b/fsck_hfs.tproj/dfalib/Scavenger.h +index cf53970..edb3a80 100644 +--- a/fsck_hfs.tproj/dfalib/Scavenger.h ++++ b/fsck_hfs.tproj/dfalib/Scavenger.h +@@ -37,11 +37,16 @@ + #include "../fsck_debug.h" + + #include ++#if LINUX ++#define XATTR_MAXNAMELEN 127 ++#include ++#else + #include + #include + #include +-#include + #include ++#endif ++#include + + #ifdef __cplusplus + extern "C" { +@@ -1465,4 +1470,8 @@ extern int AllocateContigBitmapBits (SVCB *vcb, UInt32 numBlocks, UInt32 *actua + }; + #endif + ++/* #if LINUX ++#undef XATTR_MAXNAMELEN ++#endif */ ++ + #endif /* __SCAVENGER__ */ +diff --git a/fsck_hfs.tproj/dfalib/hfs_endian.c b/fsck_hfs.tproj/dfalib/hfs_endian.c +index 7fa5385..69500c1 100755 +--- a/fsck_hfs.tproj/dfalib/hfs_endian.c ++++ b/fsck_hfs.tproj/dfalib/hfs_endian.c +@@ -31,7 +31,11 @@ + #include + #include + ++#if LINUX ++#include "missing.h" ++#else + #include ++#endif + #include + + #include "Scavenger.h" +diff --git a/fsck_hfs.tproj/dfalib/hfs_endian.h b/fsck_hfs.tproj/dfalib/hfs_endian.h +index 52d0c3a..0763d9d 100755 +--- a/fsck_hfs.tproj/dfalib/hfs_endian.h ++++ b/fsck_hfs.tproj/dfalib/hfs_endian.h +@@ -27,9 +27,14 @@ + * + * This file prototypes endian swapping routines for the HFS/HFS Plus + * volume format. +- */ ++*/ + #include ++#if LINUX ++#include ++#include ++#else + #include ++#endif + #include "SRuntime.h" + + /*********************/ +diff --git a/fsck_hfs.tproj/fsck_hfs.c b/fsck_hfs.tproj/fsck_hfs.c +index 90532fd..f1a18bd 100644 +--- a/fsck_hfs.tproj/fsck_hfs.c ++++ b/fsck_hfs.tproj/fsck_hfs.c +@@ -24,10 +24,14 @@ + #include + #include + #include ++#if !LINUX + #include ++#endif + #include + #include ++#if !LINUX + #include ++#endif + + #include + +@@ -195,8 +199,12 @@ main(argc, argv) + if (guiControl) + debug = 0; /* debugging is for command line only */ + ++#if LINUX ++// FIXME ++#else + if (signal(SIGINT, SIG_IGN) != SIG_IGN) + (void)signal(SIGINT, catch); ++#endif + + if (argc < 1) { + (void) fprintf(stderr, "%s: missing special-device\n", progname); +@@ -218,7 +226,9 @@ checkfilesys(char * filesys) + int chkLev, repLev, logLev; + int blockDevice_fd, canWrite; + char *unraw, *mntonname; ++#if !LINUX + struct statfs *fsinfo; ++#endif + int fs_fd=-1; // fd to the root-dir of the fs we're checking (only w/lfag == 1) + + flags = 0; +@@ -227,7 +237,9 @@ checkfilesys(char * filesys) + canWrite = 0; + unraw = NULL; + mntonname = NULL; +- ++#if LINUX ++ // FIXME ++#else + if (lflag) { + result = getmntinfo(&fsinfo, MNT_NOWAIT); + +@@ -257,10 +269,10 @@ checkfilesys(char * filesys) + } + } + } +- ++#endif + if (debug && preen) + pwarn("starting\n"); +- ++ + if (setup( filesys, &blockDevice_fd, &canWrite ) == 0) { + if (preen) + pfatal("CAN'T CHECK FILE SYSTEM."); +@@ -278,7 +290,7 @@ checkfilesys(char * filesys) + repLev = kMajorRepairs; + logLev = kVerboseLog; + +- if (yflag) ++ if (yflag) + repLev = kMajorRepairs; + + if (quick) { +@@ -298,16 +310,16 @@ checkfilesys(char * filesys) + + if (nflag) + repLev = kNeverRepair; +- ++ + if ( rebuildCatalogBtree ) { + chkLev = kPartialCheck; + repLev = kForceRepairs; // this will force rebuild of catalog B-Tree file + } +- ++ + /* + * go check HFS volume... + */ +- result = CheckHFS( fsreadfd, fswritefd, chkLev, repLev, logLev, ++ result = CheckHFS( fsreadfd, fswritefd, chkLev, repLev, logLev, + guiControl, lostAndFoundMode, canWrite, &fsmodified ); + if (!hotroot) { + ckfini(1); +@@ -330,6 +342,9 @@ checkfilesys(char * filesys) + } + } + } else { ++#if LINUX ++ // FIXME ++#else + struct statfs stfs_buf; + /* + * Check to see if root is mounted read-write. +@@ -339,19 +354,25 @@ checkfilesys(char * filesys) + else + flags = 0; + ckfini(flags & MNT_RDONLY); ++#endif + } + + /* XXX free any allocated memory here */ + + if (hotroot && fsmodified) { ++#if !LINUX + struct hfs_mount_args args; ++#endif + /* + * We modified the root. Do a mount update on + * it, unless it is read-write, so we can continue. + */ + if (!preen) + printf("\n***** FILE SYSTEM WAS MODIFIED *****\n"); +- if (flags & MNT_RDONLY) { ++#if LINUX ++ // FIXME ++#else ++ if (flags & MNT_RDONLY) { + bzero(&args, sizeof(args)); + flags |= MNT_UPDATE | MNT_RELOAD; + if (mount("hfs", "/", flags, &args) == 0) { +@@ -359,6 +380,7 @@ checkfilesys(char * filesys) + goto ExitThisRoutine; + } + } ++#endif + if (!preen) + printf("\n***** REBOOT NOW *****\n"); + sync(); +@@ -367,7 +389,7 @@ checkfilesys(char * filesys) + } + + result = (result == 0) ? 0 : EEXIT; +- ++ + ExitThisRoutine: + if (lflag) { + fcntl(fs_fd, F_THAW_FS, NULL); +@@ -401,16 +423,18 @@ setup( char *dev, int *blockDevice_fdPtr, int *canWritePtr ) + fswritefd = -1; + *blockDevice_fdPtr = -1; + *canWritePtr = 0; +- ++ + if (stat(dev, &statb) < 0) { + printf("Can't stat %s: %s\n", dev, strerror(errno)); + return (0); + } ++#if !LINUX + if ((statb.st_mode & S_IFMT) != S_IFCHR) { + pfatal("%s is not a character device", dev); + if (reply("CONTINUE") == 0) + return (0); + } ++#endif + if ((fsreadfd = open(dev, O_RDONLY)) < 0) { + printf("Can't open %s: %s\n", dev, strerror(errno)); + return (0); +@@ -419,7 +443,7 @@ setup( char *dev, int *blockDevice_fdPtr, int *canWritePtr ) + /* attempt to get write access to the block device and if not check if volume is */ + /* mounted read-only. */ + getWriteAccess( dev, blockDevice_fdPtr, canWritePtr ); +- ++ + if (preen == 0 && !guiControl) + printf("** %s", dev); + if (nflag || (fswritefd = open(dev, O_WRONLY)) < 0) { +@@ -433,10 +457,14 @@ setup( char *dev, int *blockDevice_fdPtr, int *canWritePtr ) + printf("\n"); + + /* Get device block size to initialize cache */ ++#if LINUX ++ devBlockSize = 512; ++#else + if (ioctl(fsreadfd, DKIOCGETBLOCKSIZE, &devBlockSize) < 0) { + pfatal ("Can't get device block size\n"); + return (0); + } ++#endif + + /* calculate the cache block size and total blocks */ + if (CalculateCacheSize(userCacheSize, &cacheBlockSize, &cacheTotalBlocks, debug) != 0) { +@@ -463,11 +491,15 @@ setup( char *dev, int *blockDevice_fdPtr, int *canWritePtr ) + + static void getWriteAccess( char *dev, int *blockDevice_fdPtr, int *canWritePtr ) + { ++#if !LINUX + int i; + int myMountsCount; ++#endif + void * myPtr; + char * myCharPtr; ++#if !LINUX + struct statfs * myBufPtr; ++#endif + void * myNamePtr; + + myPtr = NULL; +@@ -490,6 +522,9 @@ static void getWriteAccess( char *dev, int *blockDevice_fdPtr, int *canWritePtr + } + + // get count of mounts then get the info for each ++#if LINUX ++ // FIXME ++#else + myMountsCount = getfsstat( NULL, 0, MNT_NOWAIT ); + if ( myMountsCount < 0 ) + goto ExitThisRoutine; +@@ -513,8 +548,8 @@ static void getWriteAccess( char *dev, int *blockDevice_fdPtr, int *canWritePtr + } + myBufPtr++; + } +- *canWritePtr = 1; // single user will get us here, f_mntfromname is not /dev/diskXXXX +- ++#endif ++ *canWritePtr = 1; // single user will get us here, f_mntfromname is not /dev/diskXXXX + ExitThisRoutine: + if ( myPtr != NULL ) + free( myPtr ); +diff --git a/fsck_hfs.tproj/utilities.c b/fsck_hfs.tproj/utilities.c +index ee41bef..8e1cd77 100644 +--- a/fsck_hfs.tproj/utilities.c ++++ b/fsck_hfs.tproj/utilities.c +@@ -183,12 +183,14 @@ retry: + printf("Can't stat %s\n", raw); + return (origname); + } ++#if !LINUX + if ((stchar.st_mode & S_IFMT) == S_IFCHR) { + return (raw); + } else { + printf("%s is not a character device\n", raw); + return (origname); + } ++#endif + } else if ((stblock.st_mode & S_IFMT) == S_IFCHR && !retried) { + newname = unrawname(newname); + retried++; +@@ -214,7 +216,11 @@ rawname(char *name) + *dp = 0; + (void)strcpy(rawbuf, name); + *dp = '/'; +- (void)strcat(rawbuf, "/r"); ++#if LINUX ++ (void)strcat(rawbuf, "/"); ++#else ++ (void)strcat(rawbuf,"/r"); ++#endif + (void)strcat(rawbuf, &dp[1]); + + return (rawbuf); +diff --git a/include/missing.h b/include/missing.h +new file mode 100644 +index 0000000..0a859c4 +--- /dev/null ++++ b/include/missing.h +@@ -0,0 +1,114 @@ ++#ifndef _MISSING_H_ ++#define _MISSING_H_ ++ ++#include ++#include ++#include ++#include ++#include ++ ++#define MAXBSIZE (256 * 4096) ++ ++#ifndef true ++#define true 1 ++#endif ++#ifndef false ++#define false 0 ++#endif ++ ++/* Mac types */ ++ ++/* 8 Bit */ ++#ifndef UInt8 ++#define UInt8 uint8_t ++#endif ++#ifndef u_int8_t ++#define u_int8_t UInt8 ++#endif ++#ifndef SInt8 ++#define SInt8 int8_t ++#endif ++ ++/* 16 Bit */ ++#ifndef UInt16 ++#define UInt16 uint16_t ++#endif ++#ifndef u_int16_t ++#define u_int16_t UInt16 ++#endif ++#ifndef SInt16 ++#define SInt16 int16_t ++#endif ++ ++/* 32 Bit */ ++#ifndef UInt32 ++#define UInt32 uint32_t ++#endif ++#ifndef u_int32_t ++#define u_int32_t UInt32 ++#endif ++#ifndef SInt32 ++#define SInt32 int32_t ++#endif ++ ++/* 64 Bit */ ++#ifndef UInt64 ++#define UInt64 uint64_t ++#endif ++#ifndef u_int64_t ++#define u_int64_t UInt64 ++#endif ++#ifndef SInt64 ++#define SInt64 int64_t ++#endif ++ ++#define UniChar u_int16_t ++#define Boolean u_int8_t ++ ++#define UF_NODUMP 0x00000001 ++ ++/* syslimits.h */ ++#define NAME_MAX 255 ++ ++/* Byteswap stuff */ ++#define NXSwapHostLongToBig(x) cpu_to_be64(x) ++#define NXSwapBigShortToHost(x) be16_to_cpu(x) ++#define OSSwapBigToHostInt16(x) be16_to_cpu(x) ++#define NXSwapBigLongToHost(x) be32_to_cpu(x) ++#define OSSwapBigToHostInt32(x) be32_to_cpu(x) ++#define NXSwapBigLongLongToHost(x) be64_to_cpu(x) ++#define OSSwapBigToHostInt64(x) be64_to_cpu(x) ++ ++#if __BYTE_ORDER == __LITTLE_ENDIAN ++/* Big Endian Swaps */ ++#ifndef be16_to_cpu ++#define be16_to_cpu(x) bswap_16(x) ++#endif ++#ifndef be32_to_cpu ++#define be32_to_cpu(x) bswap_32(x) ++#endif ++#ifndef be64_to_cpu ++#define be64_to_cpu(x) bswap_64(x) ++#endif ++#ifndef cpu_to_be64 ++#define cpu_to_be64(x) bswap_64(x) ++#endif ++#elif __BYTE_ORDER == __BIG_ENDIAN ++/* Big endian doesn't swap */ ++#ifndef be16_to_cpu ++#define be16_to_cpu(x) (x) ++#endif ++#ifndef be32_to_cpu ++#define be32_to_cpu(x) (x) ++#endif ++#ifndef be64_to_cpu ++#define be64_to_cpu(x) (x) ++#endif ++#ifndef cpu_to_be64 ++#define cpu_to_be64(x) (x) ++#endif ++#endif ++ ++#define KAUTH_FILESEC_XATTR "com.apple.system.Security" ++ ++#endif +diff --git a/newfs_hfs.tproj/hfs_endian.c b/newfs_hfs.tproj/hfs_endian.c +index 117b7f8..fdf7353 100644 +--- a/newfs_hfs.tproj/hfs_endian.c ++++ b/newfs_hfs.tproj/hfs_endian.c +@@ -30,7 +30,12 @@ + #include + #include + ++#if LINUX ++#include "missing.h" ++#else + #include ++#endif ++ + #include + + #include "hfs_endian.h" +diff --git a/newfs_hfs.tproj/hfs_endian.h b/newfs_hfs.tproj/hfs_endian.h +index 8d9d01d..5c7ff57 100644 +--- a/newfs_hfs.tproj/hfs_endian.h ++++ b/newfs_hfs.tproj/hfs_endian.h +@@ -29,7 +29,12 @@ + * volume format. + */ + #include ++#if LINUX ++#include ++#include ++#else + #include ++#endif + + /*********************/ + /* BIG ENDIAN Macros */ +diff --git a/newfs_hfs.tproj/makehfs.c b/newfs_hfs.tproj/makehfs.c +index 085222f..7609779 100644 +--- a/newfs_hfs.tproj/makehfs.c ++++ b/newfs_hfs.tproj/makehfs.c +@@ -31,10 +31,16 @@ + #include + #include + #include ++#if LINUX ++#include ++#include "missing.h" ++#endif + #include + #include + #include ++#if !LINUX + #include ++#endif + + #include + #include +@@ -47,13 +53,14 @@ + + #include + ++#if !LINUX + #include + + #include + #include + + extern Boolean _CFStringGetFileSystemRepresentation(CFStringRef string, UInt8 *buffer, CFIndex maxBufLen); +- ++#endif + + #include + #include +@@ -129,7 +136,9 @@ static UInt32 Largest __P((UInt32 a, UInt32 b, UInt32 c, UInt32 d )); + static void MarkBitInAllocationBuffer __P((HFSPlusVolumeHeader *header, + UInt32 allocationBlock, void* sectorBuffer, UInt32 *sector)); + ++#if !LINUX + static UInt32 GetDefaultEncoding(); ++#endif + + static UInt32 UTCToLocal __P((UInt32 utcTime)); + +@@ -158,11 +167,14 @@ void SETOFFSET (void *buffer, UInt16 btNodeSize, SInt16 recOffset, SInt16 vecOff + + #define ROUNDUP(x, u) (((x) % (u) == 0) ? (x) : ((x)/(u) + 1) * (u)) + +-#define ENCODING_TO_BIT(e) \ ++#if LINUX ++#define ENCODING_TO_BIT(e) (e) ++#else ++#define ENCODING_TO_BIT(e) + ((e) < 48 ? (e) : \ + ((e) == kCFStringEncodingMacUkrainian ? 48 : \ + ((e) == kCFStringEncodingMacFarsi ? 49 : 0))) +- ++#endif + /* + * make_hfs + * +@@ -528,6 +540,7 @@ InitMDB(hfsparams_t *defaults, UInt32 driveBlocks, HFS_MDB *mdbp) + * Map UTF-8 input into a Mac encoding. + * On conversion errors "untitled" is used as a fallback. + */ ++#if !LINUX + { + UniChar unibuf[kHFSMaxVolumeNameChars]; + CFStringRef cfstr; +@@ -553,7 +566,11 @@ InitMDB(hfsparams_t *defaults, UInt32 driveBlocks, HFS_MDB *mdbp) + bcopy(&mdbp->drVN[1], defaults->volumeName, mdbp->drVN[0]); + defaults->volumeName[mdbp->drVN[0]] = '\0'; + } ++#endif + /* Save the encoding hint in the Finder Info (field 4). */ ++ mdbp->drVN[0] = strlen(defaults->volumeName); ++ bcopy(defaults->volumeName,&mdbp->drVN[1],mdbp->drVN[0]); ++ + mdbp->drFndrInfo[4] = SET_HFS_TEXT_ENCODING(defaults->encodingHint); + + mdbp->drWrCnt = kWriteSeqNum; +@@ -1100,9 +1117,11 @@ InitCatalogRoot_HFSPlus(const hfsparams_t *dp, const HFSPlusVolumeHeader *header + UInt16 nodeSize; + SInt16 offset; + UInt32 unicodeBytes; ++#if !LINUX + UInt8 canonicalName[256]; + CFStringRef cfstr; + Boolean cfOK; ++#endif + int index = 0; + + nodeSize = dp->catalogNodeSize; +@@ -1122,7 +1141,9 @@ InitCatalogRoot_HFSPlus(const hfsparams_t *dp, const HFSPlusVolumeHeader *header + * First record is always the root directory... + */ + ckp = (HFSPlusCatalogKey *)((UInt8 *)buffer + offset); +- ++#if LINUX ++ ConvertUTF8toUnicode(dp->volumeName, sizeof(ckp->nodeName.unicode), ckp->nodeName.unicode, &ckp->nodeName.length); ++#else + /* Use CFString functions to get a HFSPlus Canonical name */ + cfstr = CFStringCreateWithCString(kCFAllocatorDefault, (char *)dp->volumeName, kCFStringEncodingUTF8); + cfOK = _CFStringGetFileSystemRepresentation(cfstr, canonicalName, sizeof(canonicalName)); +@@ -1139,6 +1160,7 @@ InitCatalogRoot_HFSPlus(const hfsparams_t *dp, const HFSPlusVolumeHeader *header + dp->volumeName, kDefaultVolumeNameStr); + } + CFRelease(cfstr); ++#endif + ckp->nodeName.length = SWAP_BE16 (ckp->nodeName.length); + + unicodeBytes = sizeof(UniChar) * SWAP_BE16 (ckp->nodeName.length); +@@ -1821,15 +1843,15 @@ WriteBuffer(const DriveInfo *driveInfo, UInt64 startingSector, UInt32 byteCount, + off_t sector; + + if ((byteCount % driveInfo->sectorSize) != 0) +- errx(1, "WriteBuffer: byte count %ld is not sector size multiple", byteCount); ++ errx(1, "WriteBuffer: byte count %i is not sector size multiple", byteCount); + + sector = driveInfo->sectorOffset + startingSector; + + if (lseek(driveInfo->fd, sector * driveInfo->sectorSize, SEEK_SET) < 0) +- err(1, "seek (sector %qd)", sector); ++ err(1, "seek (sector %lld)", sector); + + if (write(driveInfo->fd, buffer, byteCount) != byteCount) +- err(1, "write (sector %qd, %ld bytes)", sector, byteCount); ++ err(1, "write (sector %lld, %i bytes)", sector, byteCount); + } + + +@@ -1913,7 +1935,7 @@ DivideAndRoundUp(UInt32 numerator, UInt32 denominator) + return quotient; + } + +- ++#if !LINUX + #define __kCFUserEncodingFileName ("/.CFUserTextEncoding") + + static UInt32 +@@ -1939,7 +1961,7 @@ GetDefaultEncoding() + } + return 0; + } +- ++#endif + + static int + ConvertUTF8toUnicode(const UInt8* source, UInt32 bufsize, UniChar* unibuf, +@@ -2006,6 +2028,9 @@ ConvertUTF8toUnicode(const UInt8* source, UInt32 bufsize, UniChar* unibuf, + static int + getencodinghint(unsigned char *name) + { ++#if LINUX ++ return(0); ++#else + int mib[3]; + size_t buflen = sizeof(int); + struct vfsconf vfc; +@@ -2023,7 +2048,8 @@ getencodinghint(unsigned char *name) + return (hint); + error: + hint = GetDefaultEncoding(); +- return (hint); ++ return (0); ++#endif + } + + +@@ -2034,12 +2060,14 @@ void GenerateVolumeUUID(VolumeUUID *newVolumeID) { + unsigned char digest[20]; + time_t now; + clock_t uptime; +- int mib[2]; +- int sysdata; +- char sysctlstring[128]; + size_t datalen; + double sysloadavg[3]; ++#if !LINUX ++ int sysdata; ++ int mib[2]; ++ char sysctlstring[128]; + struct vmtotal sysvmtotal; ++#endif + + do { + /* Initialize the SHA-1 context for processing: */ +@@ -2052,52 +2080,58 @@ void GenerateVolumeUUID(VolumeUUID *newVolumeID) { + SHA1_Update(&context, &uptime, sizeof(uptime)); + + /* The kernel's boot time: */ ++#if !LINUX + mib[0] = CTL_KERN; + mib[1] = KERN_BOOTTIME; + datalen = sizeof(sysdata); + sysctl(mib, 2, &sysdata, &datalen, NULL, 0); + SHA1_Update(&context, &sysdata, datalen); +- ++#endif + /* The system's host id: */ ++#if !LINUX + mib[0] = CTL_KERN; + mib[1] = KERN_HOSTID; + datalen = sizeof(sysdata); + sysctl(mib, 2, &sysdata, &datalen, NULL, 0); + SHA1_Update(&context, &sysdata, datalen); +- ++#endif + /* The system's host name: */ ++#if !LINUX + mib[0] = CTL_KERN; + mib[1] = KERN_HOSTNAME; + datalen = sizeof(sysctlstring); + sysctl(mib, 2, sysctlstring, &datalen, NULL, 0); + SHA1_Update(&context, sysctlstring, datalen); +- ++#endif + /* The running kernel's OS release string: */ ++#if !LINUX + mib[0] = CTL_KERN; + mib[1] = KERN_OSRELEASE; + datalen = sizeof(sysctlstring); + sysctl(mib, 2, sysctlstring, &datalen, NULL, 0); + SHA1_Update(&context, sysctlstring, datalen); +- ++#endif + /* The running kernel's version string: */ ++#if !LINUX + mib[0] = CTL_KERN; + mib[1] = KERN_VERSION; + datalen = sizeof(sysctlstring); + sysctl(mib, 2, sysctlstring, &datalen, NULL, 0); + SHA1_Update(&context, sysctlstring, datalen); +- ++#endif + /* The system's load average: */ + datalen = sizeof(sysloadavg); + getloadavg(sysloadavg, 3); + SHA1_Update(&context, &sysloadavg, datalen); + + /* The system's VM statistics: */ ++#if !LINUX + mib[0] = CTL_VM; + mib[1] = VM_METER; + datalen = sizeof(sysvmtotal); + sysctl(mib, 2, &sysvmtotal, &datalen, NULL, 0); + SHA1_Update(&context, &sysvmtotal, datalen); +- ++#endif + /* The current GMT (26 ASCII characters): */ + time(&now); + strncpy(randomInputBuffer, asctime(gmtime(&now)), 26); /* "Mon Mar 27 13:46:26 2000" */ +diff --git a/newfs_hfs.tproj/newfs_hfs.c b/newfs_hfs.tproj/newfs_hfs.c +index c4176a9..bf2ed21 100644 +--- a/newfs_hfs.tproj/newfs_hfs.c ++++ b/newfs_hfs.tproj/newfs_hfs.c +@@ -38,8 +38,13 @@ + #include + #include + #include ++#if LINUX ++#include ++#endif + ++#if !LINUX + #include ++#endif + + #include + #include "newfs_hfs.h" +@@ -73,7 +78,9 @@ static void usage __P((void)); + + char *progname; + char gVolumeName[kHFSPlusMaxFileNameChars + 1] = {kDefaultVolumeNameStr}; ++#if !LINUX + char rawdevice[MAXPATHLEN]; ++#endif + char blkdevice[MAXPATHLEN]; + UInt32 gBlockSize = 0; + UInt32 gNextCNID = kHFSFirstUserCatalogNodeID; +@@ -158,8 +165,10 @@ main(argc, argv) + extern int optind; + int ch; + int forceHFS; ++#if !LINUX + char *cp, *special; + struct statfs *mp; ++#endif + int n; + + if ((progname = strrchr(*argv, '/'))) +@@ -260,16 +269,19 @@ main(argc, argv) + usage(); + } + +- argc -= optind; +- argv += optind; ++ argc -= optind; ++ argv += optind; + +- if (gPartitionSize != 0) { +- if (argc != 0) +- usage(); +- } else { +- if (argc != 1) +- usage(); ++ if (gPartitionSize != 0) { ++ if (argc != 0) ++ usage(); ++ } else { ++ if (argc != 1) ++ usage(); + ++#if LINUX ++ (void) sprintf(blkdevice, "%s", argv[0]); ++#else + special = argv[0]; + cp = strrchr(special, '/'); + if (cp != 0) +@@ -278,6 +290,7 @@ main(argc, argv) + special++; + (void) sprintf(rawdevice, "%sr%s", _PATH_DEV, special); + (void) sprintf(blkdevice, "%s%s", _PATH_DEV, special); ++#endif + } + + if (forceHFS && gJournaled) { +@@ -301,6 +314,9 @@ main(argc, argv) + /* + * Check if target device is aready mounted + */ ++#if LINUX ++ // FIXME ++#else + n = getmntinfo(&mp, MNT_NOWAIT); + if (n == 0) + fatal("%s: getmntinfo: %s", blkdevice, strerror(errno)); +@@ -310,15 +326,20 @@ main(argc, argv) + fatal("%s is mounted on %s", blkdevice, mp->f_mntonname); + ++mp; + } ++#endif + } + +- if (hfs_newfs(rawdevice, forceHFS, true) < 0) { ++ if (hfs_newfs(blkdevice, forceHFS, true) < 0) { ++#if LINUX ++ err(1, NULL); ++#else + /* On ENXIO error use the block device (to get de-blocking) */ + if (errno == ENXIO) { + if (hfs_newfs(blkdevice, forceHFS, false) < 0) + err(1, NULL); + } else + err(1, NULL); ++#endif + } + + exit(0); +@@ -506,7 +527,9 @@ hfs_newfs(char *device, int forceHFS, int isRaw) + int fso = 0; + int retval = 0; + hfsparams_t defaults = {0}; ++#if !LINUX + u_int64_t maxSectorsPerIO; ++#endif + + if (gPartitionSize) { + dip.sectorSize = kBytesPerSector; +@@ -526,6 +549,34 @@ hfs_newfs(char *device, int forceHFS, int isRaw) + + if (fstat( fso, &stbuf) < 0) + fatal("%s: %s", device, strerror(errno)); ++#if LINUX ++ dip.sectorSize = 512; ++ dip.sectorsPerIO = 256; ++ ++# ifndef BLKGETSIZE ++# define BLKGETSIZE _IO(0x12,96) ++# endif ++ ++# ifndef BLKGETSIZE64 ++# define BLKGETSIZE64 _IOR(0x12,114,size_t) ++# endif ++ ++ if (S_ISREG(stbuf.st_mode)) { ++ dip.totalSectors = stbuf.st_size / 512; ++ } ++ else if (S_ISBLK(stbuf.st_mode)) { ++ unsigned long size; ++ u_int64_t size64; ++ if (!ioctl(fso, BLKGETSIZE64, &size64)) ++ dip.totalSectors = size64 / 512; ++ else if (!ioctl(fso, BLKGETSIZE, &size)) ++ dip.totalSectors = size; ++ else ++ fatal("%s: %s", device, strerror(errno)); ++ } ++ else ++ fatal("%s: is not a block device", device); ++#else + + if (ioctl(fso, DKIOCGETBLOCKCOUNT, &dip.totalSectors) < 0) + fatal("%s: %s", device, strerror(errno)); +@@ -537,11 +588,14 @@ hfs_newfs(char *device, int forceHFS, int isRaw) + dip.sectorsPerIO = (128 * 1024) / dip.sectorSize; /* use 128K as default */ + else + dip.sectorsPerIO = MIN(maxSectorsPerIO, (1024 * 1024) / dip.sectorSize); ++#endif ++ + /* + * The make_hfs code currentlydoes 512 byte sized I/O. + * If the sector size is bigger than 512, start over + * using the block device (to get de-blocking). + */ ++#if !LINUX + if (dip.sectorSize != kBytesPerSector) { + if (isRaw) { + close(fso); +@@ -556,7 +610,9 @@ hfs_newfs(char *device, int forceHFS, int isRaw) + dip.sectorSize = kBytesPerSector; + } + } ++#endif + } ++ + dip.sectorOffset = 0; + time(&createtime); + +diff --git a/newfs_hfs.tproj/newfs_hfs.h b/newfs_hfs.tproj/newfs_hfs.h +index 968ff10..5680a34 100644 +--- a/newfs_hfs.tproj/newfs_hfs.h ++++ b/newfs_hfs.tproj/newfs_hfs.h +@@ -19,8 +19,12 @@ + * + * @APPLE_LICENSE_HEADER_END@ + */ +- ++ ++#if LINUX ++#include "missing.h" ++#else + #include ++#endif + + /* + * Mac OS Finder flags +@@ -122,33 +126,33 @@ enum { + #define kDTDF_FileID 16 + #define kDTDF_Name "Desktop DF" + #define kDTDF_Chars 10 +-#define kDTDF_Type 'DTFL' +-#define kDTDF_Creator 'DMGR' ++#define kDTDF_Type 0x4454464C /* 'DTFL' */ ++#define kDTDF_Creator 0x444D4752 /* 'DMGR' */ + + #define kDTDB_FileID 17 + #define kDTDB_Name "Desktop DB" + #define kDTDB_Chars 10 +-#define kDTDB_Type 'BTFL' +-#define kDTDB_Creator 'DMGR' ++#define kDTDB_Type 0x4254464C /* 'BTFL' */ ++#define kDTDB_Creator 0x444D4752 /* 'DMGR' */ + #define kDTDB_Size 1024 + + #define kReadMe_FileID 18 + #define kReadMe_Name "ReadMe" + #define kReadMe_Chars 6 +-#define kReadMe_Type 'ttro' +-#define kReadMe_Creator 'ttxt' ++#define kReadMe_Type 0x7474726F /* 'ttro' */ ++#define kReadMe_Creator 0x74747974 /* 'ttxt' */ + + #define kFinder_FileID 19 + #define kFinder_Name "Finder" + #define kFinder_Chars 6 +-#define kFinder_Type 'FNDR' +-#define kFinder_Creator 'MACS' ++#define kFinder_Type 0x464E4452 /* 'FNDR' */ ++#define kFinder_Creator 0x4D414353 /* 'MACS' */ + + #define kSystem_FileID 20 + #define kSystem_Name "System" + #define kSystem_Chars 6 +-#define kSystem_Type 'zsys' +-#define kSystem_Creator 'MACS' ++#define kSystem_Type 0x7A737973 /* 'zsys' */ ++#define kSystem_Creator 0x4D414353 /* 'MACS' */ + + + diff --git a/utils/hfsprogs/patches/0003-Add-helper-include-files-absent-from-the-upstream-pa.patch b/utils/hfsprogs/patches/0003-Add-helper-include-files-absent-from-the-upstream-pa.patch new file mode 100644 index 000000000..003f8440b --- /dev/null +++ b/utils/hfsprogs/patches/0003-Add-helper-include-files-absent-from-the-upstream-pa.patch @@ -0,0 +1,1024 @@ +From: =?UTF-8?q?Rog=C3=A9rio=20Brito?= +Date: Thu, 24 Oct 2013 01:11:21 -0200 +Subject: Add helper include files absent from the upstream package + +Add some include files from an Apple system that contain the definition of +the data structures used by the programs that manipulate the filesystems. +--- + include/bitstring.h | 164 +++++++++++ + include/hfs/hfs_format.h | 689 +++++++++++++++++++++++++++++++++++++++++++++ + include/hfs/hfs_mount.h | 78 +++++ + include/sys/appleapiopts.h | 52 ++++ + 4 files changed, 983 insertions(+) + create mode 100644 include/bitstring.h + create mode 100644 include/hfs/hfs_format.h + create mode 100644 include/hfs/hfs_mount.h + create mode 100644 include/sys/appleapiopts.h + +diff --git a/include/bitstring.h b/include/bitstring.h +new file mode 100644 +index 0000000..fbecfbe +--- /dev/null ++++ b/include/bitstring.h +@@ -0,0 +1,164 @@ ++/* ++ * Copyright (c) 2000 Apple Computer, Inc. All rights reserved. ++ * ++ * @APPLE_LICENSE_HEADER_START@ ++ * ++ * The contents of this file constitute Original Code as defined in and ++ * are subject to the Apple Public Source License Version 1.1 (the ++ * "License"). You may not use this file except in compliance with the ++ * License. Please obtain a copy of the License at ++ * http://www.apple.com/publicsource and read it before using this file. ++ * ++ * This Original Code and all software distributed under the License are ++ * distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, EITHER ++ * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES, ++ * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, ++ * FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT. Please see the ++ * License for the specific language governing rights and limitations ++ * under the License. ++ * ++ * @APPLE_LICENSE_HEADER_END@ ++ */ ++/* ++ * Copyright (c) 1989, 1993 ++ * The Regents of the University of California. All rights reserved. ++ * ++ * This code is derived from software contributed to Berkeley by ++ * Paul Vixie. ++ * ++ * Redistribution and use in source and binary forms, with or without ++ * modification, are permitted provided that the following conditions ++ * are met: ++ * 1. Redistributions of source code must retain the above copyright ++ * notice, this list of conditions and the following disclaimer. ++ * 2. Redistributions in binary form must reproduce the above copyright ++ * notice, this list of conditions and the following disclaimer in the ++ * documentation and/or other materials provided with the distribution. ++ * 3. All advertising materials mentioning features or use of this software ++ * must display the following acknowledgement: ++ * This product includes software developed by the University of ++ * California, Berkeley and its contributors. ++ * 4. Neither the name of the University nor the names of its contributors ++ * may be used to endorse or promote products derived from this software ++ * without specific prior written permission. ++ * ++ * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND ++ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE ++ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ++ * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE ++ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL ++ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS ++ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) ++ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT ++ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY ++ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF ++ * SUCH DAMAGE. ++ * ++ * @(#)bitstring.h 8.1 (Berkeley) 7/19/93 ++ */ ++ ++#ifndef _BITSTRING_H_ ++#define _BITSTRING_H_ ++ ++typedef unsigned char bitstr_t; ++ ++/* internal macros */ ++ /* byte of the bitstring bit is in */ ++#define _bit_byte(bit) \ ++ ((bit) >> 3) ++ ++ /* mask for the bit within its byte */ ++#define _bit_mask(bit) \ ++ (1 << ((bit)&0x7)) ++ ++/* external macros */ ++ /* bytes in a bitstring of nbits bits */ ++#define bitstr_size(nbits) \ ++ ((((nbits) - 1) >> 3) + 1) ++ ++ /* allocate a bitstring */ ++#define bit_alloc(nbits) \ ++ (bitstr_t *)calloc(1, \ ++ (unsigned int)bitstr_size(nbits) * sizeof(bitstr_t)) ++ ++ /* allocate a bitstring on the stack */ ++#define bit_decl(name, nbits) \ ++ (name)[bitstr_size(nbits)] ++ ++ /* is bit N of bitstring name set? */ ++#define bit_test(name, bit) \ ++ ((name)[_bit_byte(bit)] & _bit_mask(bit)) ++ ++ /* set bit N of bitstring name */ ++#define bit_set(name, bit) \ ++ (name)[_bit_byte(bit)] |= _bit_mask(bit) ++ ++ /* clear bit N of bitstring name */ ++#define bit_clear(name, bit) \ ++ (name)[_bit_byte(bit)] &= ~_bit_mask(bit) ++ ++ /* clear bits start ... stop in bitstring */ ++#define bit_nclear(name, start, stop) { \ ++ register bitstr_t *_name = name; \ ++ register int _start = start, _stop = stop; \ ++ register int _startbyte = _bit_byte(_start); \ ++ register int _stopbyte = _bit_byte(_stop); \ ++ if (_startbyte == _stopbyte) { \ ++ _name[_startbyte] &= ((0xff >> (8 - (_start&0x7))) | \ ++ (0xff << ((_stop&0x7) + 1))); \ ++ } else { \ ++ _name[_startbyte] &= 0xff >> (8 - (_start&0x7)); \ ++ while (++_startbyte < _stopbyte) \ ++ _name[_startbyte] = 0; \ ++ _name[_stopbyte] &= 0xff << ((_stop&0x7) + 1); \ ++ } \ ++} ++ ++ /* set bits start ... stop in bitstring */ ++#define bit_nset(name, start, stop) { \ ++ register bitstr_t *_name = name; \ ++ register int _start = start, _stop = stop; \ ++ register int _startbyte = _bit_byte(_start); \ ++ register int _stopbyte = _bit_byte(_stop); \ ++ if (_startbyte == _stopbyte) { \ ++ _name[_startbyte] |= ((0xff << (_start&0x7)) & \ ++ (0xff >> (7 - (_stop&0x7)))); \ ++ } else { \ ++ _name[_startbyte] |= 0xff << ((_start)&0x7); \ ++ while (++_startbyte < _stopbyte) \ ++ _name[_startbyte] = 0xff; \ ++ _name[_stopbyte] |= 0xff >> (7 - (_stop&0x7)); \ ++ } \ ++} ++ ++ /* find first bit clear in name */ ++#define bit_ffc(name, nbits, value) { \ ++ register bitstr_t *_name = name; \ ++ register int _byte, _nbits = nbits; \ ++ register int _stopbyte = _bit_byte(_nbits), _value = -1; \ ++ for (_byte = 0; _byte <= _stopbyte; ++_byte) \ ++ if (_name[_byte] != 0xff) { \ ++ _value = _byte << 3; \ ++ for (_stopbyte = _name[_byte]; (_stopbyte&0x1); \ ++ ++_value, _stopbyte >>= 1); \ ++ break; \ ++ } \ ++ *(value) = _value; \ ++} ++ ++ /* find first bit set in name */ ++#define bit_ffs(name, nbits, value) { \ ++ register bitstr_t *_name = name; \ ++ register int _byte, _nbits = nbits; \ ++ register int _stopbyte = _bit_byte(_nbits), _value = -1; \ ++ for (_byte = 0; _byte <= _stopbyte; ++_byte) \ ++ if (_name[_byte]) { \ ++ _value = _byte << 3; \ ++ for (_stopbyte = _name[_byte]; !(_stopbyte&0x1); \ ++ ++_value, _stopbyte >>= 1); \ ++ break; \ ++ } \ ++ *(value) = _value; \ ++} ++ ++#endif /* !_BITSTRING_H_ */ +diff --git a/include/hfs/hfs_format.h b/include/hfs/hfs_format.h +new file mode 100644 +index 0000000..d820329 +--- /dev/null ++++ b/include/hfs/hfs_format.h +@@ -0,0 +1,689 @@ ++/* ++ * Copyright (c) 2000-2004 Apple Computer, Inc. All rights reserved. ++ * ++ * @APPLE_LICENSE_HEADER_START@ ++ * ++ * The contents of this file constitute Original Code as defined in and ++ * are subject to the Apple Public Source License Version 1.1 (the ++ * "License"). You may not use this file except in compliance with the ++ * License. Please obtain a copy of the License at ++ * http://www.apple.com/publicsource and read it before using this file. ++ * ++ * This Original Code and all software distributed under the License are ++ * distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, EITHER ++ * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES, ++ * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, ++ * FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT. Please see the ++ * License for the specific language governing rights and limitations ++ * under the License. ++ * ++ * @APPLE_LICENSE_HEADER_END@ ++ */ ++#ifndef __HFS_FORMAT__ ++#define __HFS_FORMAT__ ++ ++#include "missing.h" ++ ++#include ++ ++/* ++ * hfs_format.c ++ * ++ * This file describes the on-disk format for HFS and HFS Plus volumes. ++ * The HFS Plus volume format is desciibed in detail in Apple Technote 1150. ++ * ++ * http://developer.apple.com/technotes/tn/tn1150.html ++ * ++ */ ++ ++#ifdef __cplusplus ++extern "C" { ++#endif ++ ++/* some on-disk hfs structures have 68K alignment (misaligned) */ ++ ++#define PACKED_S __attribute__((packed)) ++ ++/* Signatures used to differentiate between HFS and HFS Plus volumes */ ++enum { ++ kHFSSigWord = 0x4244, /* 'BD' in ASCII */ ++ kHFSPlusSigWord = 0x482B, /* 'H+' in ASCII */ ++ kHFSXSigWord = 0x4858, /* 'HX' in ASCII */ ++ ++ kHFSPlusVersion = 0x0004, /* 'H+' volumes are version 4 only */ ++ kHFSXVersion = 0x0005, /* 'HX' volumes start with version 5 */ ++ ++ kHFSPlusMountVersion = 0x31302E30, /* '10.0' for Mac OS X */ ++ kHFSJMountVersion = 0x4846534a, /* 'HFSJ' for journaled HFS+ on OS X */ ++ kFSKMountVersion = 0x46534b21 /* 'FSK!' for failed journal replay */ ++}PACKED_S; ++ ++ ++#if 1 ++/* ++ * Mac OS X has a special directory for linked and unlinked files (HFS Plus only). ++ * This directory and its contents are never exported from the filesystem under ++ * Mac OS X. ++ * ++ * To make this folder name sort last, it has embedded null prefix. ++ * (0xC0, 0x80 in UTF-8) ++ */ ++#define HFSPLUSMETADATAFOLDER "\xC0\x80\xC0\x80\xC0\x80\xC0\x80HFS+ Private Data" ++ ++/* ++ * Files in the HFS Private Data folder have one of the following prefixes ++ * followed by a decimal number (no leading zeros). For indirect nodes this ++ * number is a 32 bit random number. For unlinked (deleted) files that are ++ * still open, the number is the file ID for that file. ++ * ++ * e.g. iNode7182000 and temp3296 ++ */ ++#define HFS_INODE_PREFIX "iNode" ++#define HFS_DELETE_PREFIX "temp" ++ ++#endif /* __APPLE_API_PRIVATE */ ++ ++/* ++ * Indirect link files (hard links) have the following type/creator. ++ */ ++enum { ++ kHardLinkFileType = 0x686C6E6B, /* 'hlnk' */ ++ kHFSPlusCreator = 0x6866732B /* 'hfs+' */ ++}PACKED_S; ++ ++ ++#ifndef _HFSUNISTR255_DEFINED_ ++#define _HFSUNISTR255_DEFINED_ ++/* Unicode strings are used for HFS Plus file and folder names */ ++struct HFSUniStr255 { ++ u_int16_t length; /* number of unicode characters */ ++ u_int16_t unicode[255]; /* unicode characters */ ++} PACKED_S; ++typedef struct HFSUniStr255 HFSUniStr255; ++typedef const HFSUniStr255 *ConstHFSUniStr255Param; ++#endif /* _HFSUNISTR255_DEFINED_ */ ++ ++enum { ++ kHFSMaxVolumeNameChars = 27, ++ kHFSMaxFileNameChars = 31, ++ kHFSPlusMaxFileNameChars = 255 ++}PACKED_S; ++ ++ ++/* Extent overflow file data structures */ ++ ++/* HFS Extent key */ ++struct HFSExtentKey { ++ u_int8_t keyLength; /* length of key, excluding this field */ ++ u_int8_t forkType; /* 0 = data fork, FF = resource fork */ ++ u_int32_t fileID; /* file ID */ ++ u_int16_t startBlock; /* first file allocation block number in this extent */ ++}PACKED_S; ++typedef struct HFSExtentKey HFSExtentKey; ++ ++/* HFS Plus Extent key */ ++struct HFSPlusExtentKey { ++ u_int16_t keyLength; /* length of key, excluding this field */ ++ u_int8_t forkType; /* 0 = data fork, FF = resource fork */ ++ u_int8_t pad; /* make the other fields align on 32-bit boundary */ ++ u_int32_t fileID; /* file ID */ ++ u_int32_t startBlock; /* first file allocation block number in this extent */ ++}PACKED_S; ++typedef struct HFSPlusExtentKey HFSPlusExtentKey; ++ ++/* Number of extent descriptors per extent record */ ++enum { ++ kHFSExtentDensity = 3, ++ kHFSPlusExtentDensity = 8 ++}PACKED_S; ++ ++/* HFS extent descriptor */ ++struct HFSExtentDescriptor { ++ u_int16_t startBlock; /* first allocation block */ ++ u_int16_t blockCount; /* number of allocation blocks */ ++}PACKED_S; ++typedef struct HFSExtentDescriptor HFSExtentDescriptor; ++ ++/* HFS Plus extent descriptor */ ++struct HFSPlusExtentDescriptor { ++ u_int32_t startBlock; /* first allocation block */ ++ u_int32_t blockCount; /* number of allocation blocks */ ++}PACKED_S; ++typedef struct HFSPlusExtentDescriptor HFSPlusExtentDescriptor; ++ ++/* HFS extent record */ ++typedef HFSExtentDescriptor HFSExtentRecord[3]; ++ ++/* HFS Plus extent record */ ++typedef HFSPlusExtentDescriptor HFSPlusExtentRecord[8]; ++ ++ ++/* Finder information */ ++struct FndrFileInfo { ++ u_int32_t fdType; /* file type */ ++ u_int32_t fdCreator; /* file creator */ ++ u_int16_t fdFlags; /* Finder flags */ ++ struct { ++ int16_t v; /* file's location */ ++ int16_t h; ++ } PACKED_S fdLocation; ++ int16_t opaque; ++}PACKED_S; ++typedef struct FndrFileInfo FndrFileInfo; ++ ++struct FndrDirInfo { ++ struct { /* folder's window rectangle */ ++ int16_t top; ++ int16_t left; ++ int16_t bottom; ++ int16_t right; ++ }PACKED_S frRect; ++ unsigned short frFlags; /* Finder flags */ ++ struct { ++ u_int16_t v; /* folder's location */ ++ u_int16_t h; ++ }PACKED_S frLocation; ++ int16_t opaque; ++}PACKED_S; ++typedef struct FndrDirInfo FndrDirInfo; ++ ++struct FndrOpaqueInfo { ++ int8_t opaque[16]; ++}PACKED_S; ++typedef struct FndrOpaqueInfo FndrOpaqueInfo; ++ ++ ++/* HFS Plus Fork data info - 80 bytes */ ++struct HFSPlusForkData { ++ u_int64_t logicalSize; /* fork's logical size in bytes */ ++ u_int32_t clumpSize; /* fork's clump size in bytes */ ++ u_int32_t totalBlocks; /* total blocks used by this fork */ ++ HFSPlusExtentRecord extents; /* initial set of extents */ ++}PACKED_S; ++typedef struct HFSPlusForkData HFSPlusForkData; ++ ++ ++/* Mac OS X has 16 bytes worth of "BSD" info. ++ * ++ * Note: Mac OS 9 implementations and applications ++ * should preserve, but not change, this information. ++ */ ++struct HFSPlusBSDInfo { ++ u_int32_t ownerID; /* user or group ID of file/folder owner */ ++ u_int32_t groupID; /* additional user of group ID */ ++ u_int8_t adminFlags; /* super-user changeable flags */ ++ u_int8_t ownerFlags; /* owner changeable flags */ ++ u_int16_t fileMode; /* file type and permission bits */ ++ union { ++ u_int32_t iNodeNum; /* indirect node number (hard links only) */ ++ u_int32_t linkCount; /* links that refer to this indirect node */ ++ u_int32_t rawDevice; /* special file device (FBLK and FCHR only) */ ++ }PACKED_S special; ++}PACKED_S; ++typedef struct HFSPlusBSDInfo HFSPlusBSDInfo; ++ ++ ++/* Catalog file data structures */ ++ ++enum { ++ kHFSRootParentID = 1, /* Parent ID of the root folder */ ++ kHFSRootFolderID = 2, /* Folder ID of the root folder */ ++ kHFSExtentsFileID = 3, /* File ID of the extents file */ ++ kHFSCatalogFileID = 4, /* File ID of the catalog file */ ++ kHFSBadBlockFileID = 5, /* File ID of the bad allocation block file */ ++ kHFSAllocationFileID = 6, /* File ID of the allocation file (HFS Plus only) */ ++ kHFSStartupFileID = 7, /* File ID of the startup file (HFS Plus only) */ ++ kHFSAttributesFileID = 8, /* File ID of the attribute file (HFS Plus only) */ ++ kHFSRepairCatalogFileID = 14, /* Used when rebuilding Catalog B-tree */ ++ kHFSBogusExtentFileID = 15, /* Used for exchanging extents in extents file */ ++ kHFSFirstUserCatalogNodeID = 16 ++}PACKED_S; ++ ++/* HFS catalog key */ ++struct HFSCatalogKey { ++ u_int8_t keyLength; /* key length (in bytes) */ ++ u_int8_t reserved; /* reserved (set to zero) */ ++ u_int32_t parentID; /* parent folder ID */ ++ u_int8_t nodeName[kHFSMaxFileNameChars + 1]; /* catalog node name */ ++}PACKED_S; ++typedef struct HFSCatalogKey HFSCatalogKey; ++ ++/* HFS Plus catalog key */ ++struct HFSPlusCatalogKey { ++ u_int16_t keyLength; /* key length (in bytes) */ ++ u_int32_t parentID; /* parent folder ID */ ++ HFSUniStr255 nodeName; /* catalog node name */ ++}PACKED_S; ++typedef struct HFSPlusCatalogKey HFSPlusCatalogKey; ++ ++/* Catalog record types */ ++enum { ++ /* HFS Catalog Records */ ++ kHFSFolderRecord = 0x0100, /* Folder record */ ++ kHFSFileRecord = 0x0200, /* File record */ ++ kHFSFolderThreadRecord = 0x0300, /* Folder thread record */ ++ kHFSFileThreadRecord = 0x0400, /* File thread record */ ++ ++ /* HFS Plus Catalog Records */ ++ kHFSPlusFolderRecord = 1, /* Folder record */ ++ kHFSPlusFileRecord = 2, /* File record */ ++ kHFSPlusFolderThreadRecord = 3, /* Folder thread record */ ++ kHFSPlusFileThreadRecord = 4 /* File thread record */ ++}PACKED_S; ++ ++ ++/* Catalog file record flags */ ++enum { ++ kHFSFileLockedBit = 0x0000, /* file is locked and cannot be written to */ ++ kHFSFileLockedMask = 0x0001, ++ ++ kHFSThreadExistsBit = 0x0001, /* a file thread record exists for this file */ ++ kHFSThreadExistsMask = 0x0002, ++ ++ kHFSHasAttributesBit = 0x0002, /* object has extended attributes */ ++ kHFSHasAttributesMask = 0x0004, ++ ++ kHFSHasSecurityBit = 0x0003, /* object has security data (ACLs) */ ++ kHFSHasSecurityMask = 0x0008 ++}PACKED_S; ++ ++ ++/* HFS catalog folder record - 70 bytes */ ++struct HFSCatalogFolder { ++ int16_t recordType; /* == kHFSFolderRecord */ ++ u_int16_t flags; /* folder flags */ ++ u_int16_t valence; /* folder valence */ ++ u_int32_t folderID; /* folder ID */ ++ u_int32_t createDate; /* date and time of creation */ ++ u_int32_t modifyDate; /* date and time of last modification */ ++ u_int32_t backupDate; /* date and time of last backup */ ++ FndrDirInfo userInfo; /* Finder information */ ++ FndrOpaqueInfo finderInfo; /* additional Finder information */ ++ u_int32_t reserved[4]; /* reserved - initialized as zero */ ++}PACKED_S; ++typedef struct HFSCatalogFolder HFSCatalogFolder; ++ ++/* HFS Plus catalog folder record - 88 bytes */ ++struct HFSPlusCatalogFolder { ++ int16_t recordType; /* == kHFSPlusFolderRecord */ ++ u_int16_t flags; /* file flags */ ++ u_int32_t valence; /* folder's valence (limited to 2^16 in Mac OS) */ ++ u_int32_t folderID; /* folder ID */ ++ u_int32_t createDate; /* date and time of creation */ ++ u_int32_t contentModDate; /* date and time of last content modification */ ++ u_int32_t attributeModDate; /* date and time of last attribute modification */ ++ u_int32_t accessDate; /* date and time of last access (MacOS X only) */ ++ u_int32_t backupDate; /* date and time of last backup */ ++ HFSPlusBSDInfo bsdInfo; /* permissions (for MacOS X) */ ++ FndrDirInfo userInfo; /* Finder information */ ++ FndrOpaqueInfo finderInfo; /* additional Finder information */ ++ u_int32_t textEncoding; /* hint for name conversions */ ++ u_int32_t attrBlocks; /* cached count of attribute data blocks */ ++}PACKED_S; ++typedef struct HFSPlusCatalogFolder HFSPlusCatalogFolder; ++ ++/* HFS catalog file record - 102 bytes */ ++struct HFSCatalogFile { ++ int16_t recordType; /* == kHFSFileRecord */ ++ u_int8_t flags; /* file flags */ ++ int8_t fileType; /* file type (unused ?) */ ++ FndrFileInfo userInfo; /* Finder information */ ++ u_int32_t fileID; /* file ID */ ++ u_int16_t dataStartBlock; /* not used - set to zero */ ++ int32_t dataLogicalSize; /* logical EOF of data fork */ ++ int32_t dataPhysicalSize; /* physical EOF of data fork */ ++ u_int16_t rsrcStartBlock; /* not used - set to zero */ ++ int32_t rsrcLogicalSize; /* logical EOF of resource fork */ ++ int32_t rsrcPhysicalSize; /* physical EOF of resource fork */ ++ u_int32_t createDate; /* date and time of creation */ ++ u_int32_t modifyDate; /* date and time of last modification */ ++ u_int32_t backupDate; /* date and time of last backup */ ++ FndrOpaqueInfo finderInfo; /* additional Finder information */ ++ u_int16_t clumpSize; /* file clump size (not used) */ ++ HFSExtentRecord dataExtents; /* first data fork extent record */ ++ HFSExtentRecord rsrcExtents; /* first resource fork extent record */ ++ u_int32_t reserved; /* reserved - initialized as zero */ ++}PACKED_S; ++typedef struct HFSCatalogFile HFSCatalogFile; ++ ++/* HFS Plus catalog file record - 248 bytes */ ++struct HFSPlusCatalogFile { ++ int16_t recordType; /* == kHFSPlusFileRecord */ ++ u_int16_t flags; /* file flags */ ++ u_int32_t reserved1; /* reserved - initialized as zero */ ++ u_int32_t fileID; /* file ID */ ++ u_int32_t createDate; /* date and time of creation */ ++ u_int32_t contentModDate; /* date and time of last content modification */ ++ u_int32_t attributeModDate; /* date and time of last attribute modification */ ++ u_int32_t accessDate; /* date and time of last access (MacOS X only) */ ++ u_int32_t backupDate; /* date and time of last backup */ ++ HFSPlusBSDInfo bsdInfo; /* permissions (for MacOS X) */ ++ FndrFileInfo userInfo; /* Finder information */ ++ FndrOpaqueInfo finderInfo; /* additional Finder information */ ++ u_int32_t textEncoding; /* hint for name conversions */ ++ u_int32_t attrBlocks; /* cached count of attribute data blocks */ ++ ++ /* Note: these start on double long (64 bit) boundry */ ++ HFSPlusForkData dataFork; /* size and block data for data fork */ ++ HFSPlusForkData resourceFork; /* size and block data for resource fork */ ++}PACKED_S; ++typedef struct HFSPlusCatalogFile HFSPlusCatalogFile; ++ ++/* HFS catalog thread record - 46 bytes */ ++struct HFSCatalogThread { ++ int16_t recordType; /* == kHFSFolderThreadRecord or kHFSFileThreadRecord */ ++ int32_t reserved[2]; /* reserved - initialized as zero */ ++ u_int32_t parentID; /* parent ID for this catalog node */ ++ u_int8_t nodeName[kHFSMaxFileNameChars + 1]; /* name of this catalog node */ ++}PACKED_S; ++typedef struct HFSCatalogThread HFSCatalogThread; ++ ++/* HFS Plus catalog thread record -- 264 bytes */ ++struct HFSPlusCatalogThread { ++ int16_t recordType; /* == kHFSPlusFolderThreadRecord or kHFSPlusFileThreadRecord */ ++ int16_t reserved; /* reserved - initialized as zero */ ++ u_int32_t parentID; /* parent ID for this catalog node */ ++ HFSUniStr255 nodeName; /* name of this catalog node (variable length) */ ++}PACKED_S; ++typedef struct HFSPlusCatalogThread HFSPlusCatalogThread; ++ ++#ifdef __APPLE_API_UNSTABLE ++/* ++ These are the types of records in the attribute B-tree. The values were ++ chosen so that they wouldn't conflict with the catalog record types. ++*/ ++enum { ++ kHFSPlusAttrInlineData = 0x10, /* if size < kAttrOverflowSize */ ++ kHFSPlusAttrForkData = 0x20, /* if size >= kAttrOverflowSize */ ++ kHFSPlusAttrExtents = 0x30 /* overflow extents for large attributes */ ++}PACKED_S; ++ ++ ++/* ++ HFSPlusAttrForkData ++ For larger attributes, whose value is stored in allocation blocks. ++ If the attribute has more than 8 extents, there will be additonal ++ records (of type HFSPlusAttrExtents) for this attribute. ++*/ ++struct HFSPlusAttrForkData { ++ u_int32_t recordType; /* == kHFSPlusAttrForkData*/ ++ u_int32_t reserved; ++ HFSPlusForkData theFork; /* size and first extents of value*/ ++}PACKED_S; ++typedef struct HFSPlusAttrForkData HFSPlusAttrForkData; ++ ++/* ++ HFSPlusAttrExtents ++ This record contains information about overflow extents for large, ++ fragmented attributes. ++*/ ++struct HFSPlusAttrExtents { ++ u_int32_t recordType; /* == kHFSPlusAttrExtents*/ ++ u_int32_t reserved; ++ HFSPlusExtentRecord extents; /* additional extents*/ ++}PACKED_S; ++typedef struct HFSPlusAttrExtents HFSPlusAttrExtents; ++ ++/* ++ * Atrributes B-tree Data Record ++ * ++ * For small attributes, whose entire value is stored ++ * within a single B-tree record. ++ */ ++struct HFSPlusAttrData { ++ u_int32_t recordType; /* == kHFSPlusAttrInlineData */ ++ u_int32_t reserved[2]; ++ u_int32_t attrSize; /* size of attribute data in bytes */ ++ u_int8_t attrData[2]; /* variable length */ ++}PACKED_S; ++typedef struct HFSPlusAttrData HFSPlusAttrData; ++ ++ ++/* HFSPlusAttrInlineData is obsolete use HFSPlusAttrData instead */ ++struct HFSPlusAttrInlineData { ++ u_int32_t recordType; ++ u_int32_t reserved; ++ u_int32_t logicalSize; ++ u_int8_t userData[2]; ++}PACKED_S; ++typedef struct HFSPlusAttrInlineData HFSPlusAttrInlineData; ++ ++ ++/* A generic Attribute Record*/ ++union HFSPlusAttrRecord { ++ u_int32_t recordType; ++ HFSPlusAttrInlineData inlineData; /* NOT USED */ ++ HFSPlusAttrData attrData; ++ HFSPlusAttrForkData forkData; ++ HFSPlusAttrExtents overflowExtents; ++}PACKED_S; ++typedef union HFSPlusAttrRecord HFSPlusAttrRecord; ++ ++/* Attribute key */ ++enum { kHFSMaxAttrNameLen = 127 }; ++struct HFSPlusAttrKey { ++ u_int16_t keyLength; /* key length (in bytes) */ ++ u_int16_t pad; /* set to zero */ ++ u_int32_t fileID; /* file associated with attribute */ ++ u_int32_t startBlock; /* first attribue allocation block number for extents */ ++ u_int16_t attrNameLen; /* number of unicode characters */ ++ u_int16_t attrName[127]; /* attribute name (Unicode) */ ++}PACKED_S; ++typedef struct HFSPlusAttrKey HFSPlusAttrKey; ++ ++#define kHFSPlusAttrKeyMaximumLength (sizeof(HFSPlusAttrKey) - sizeof(u_int16_t)) ++#define kHFSPlusAttrKeyMinimumLength (kHFSPlusAttrKeyMaximumLength - (127 * sizeof(u_int16_t))) ++ ++#endif /* __APPLE_API_UNSTABLE */ ++ ++ ++/* Key and node lengths */ ++enum { ++ kHFSPlusExtentKeyMaximumLength = sizeof(HFSPlusExtentKey) - sizeof(u_int16_t), ++ kHFSExtentKeyMaximumLength = sizeof(HFSExtentKey) - sizeof(u_int8_t), ++ kHFSPlusCatalogKeyMaximumLength = sizeof(HFSPlusCatalogKey) - sizeof(u_int16_t), ++ kHFSPlusCatalogKeyMinimumLength = kHFSPlusCatalogKeyMaximumLength - sizeof(HFSUniStr255) + sizeof(u_int16_t), ++ kHFSCatalogKeyMaximumLength = sizeof(HFSCatalogKey) - sizeof(u_int8_t), ++ kHFSCatalogKeyMinimumLength = kHFSCatalogKeyMaximumLength - (kHFSMaxFileNameChars + 1) + sizeof(u_int8_t), ++ kHFSPlusCatalogMinNodeSize = 4096, ++ kHFSPlusExtentMinNodeSize = 512, ++ kHFSPlusAttrMinNodeSize = 4096 ++}PACKED_S; ++ ++/* HFS and HFS Plus volume attribute bits */ ++enum { ++ /* Bits 0-6 are reserved (always cleared by MountVol call) */ ++ kHFSVolumeHardwareLockBit = 7, /* volume is locked by hardware */ ++ kHFSVolumeUnmountedBit = 8, /* volume was successfully unmounted */ ++ kHFSVolumeSparedBlocksBit = 9, /* volume has bad blocks spared */ ++ kHFSVolumeNoCacheRequiredBit = 10, /* don't cache volume blocks (i.e. RAM or ROM disk) */ ++ kHFSBootVolumeInconsistentBit = 11, /* boot volume is inconsistent (System 7.6 and later) */ ++ kHFSCatalogNodeIDsReusedBit = 12, ++ kHFSVolumeJournaledBit = 13, /* this volume has a journal on it */ ++ kHFSVolumeInconsistentBit = 14, /* serious inconsistencies detected at runtime */ ++ kHFSVolumeSoftwareLockBit = 15, /* volume is locked by software */ ++ ++ kHFSVolumeHardwareLockMask = 1 << kHFSVolumeHardwareLockBit, ++ kHFSVolumeUnmountedMask = 1 << kHFSVolumeUnmountedBit, ++ kHFSVolumeSparedBlocksMask = 1 << kHFSVolumeSparedBlocksBit, ++ kHFSVolumeNoCacheRequiredMask = 1 << kHFSVolumeNoCacheRequiredBit, ++ kHFSBootVolumeInconsistentMask = 1 << kHFSBootVolumeInconsistentBit, ++ kHFSCatalogNodeIDsReusedMask = 1 << kHFSCatalogNodeIDsReusedBit, ++ kHFSVolumeJournaledMask = 1 << kHFSVolumeJournaledBit, ++ kHFSVolumeInconsistentMask = 1 << kHFSVolumeInconsistentBit, ++ kHFSVolumeSoftwareLockMask = 1 << kHFSVolumeSoftwareLockBit, ++ kHFSMDBAttributesMask = 0x8380 ++}PACKED_S; ++ ++ ++/* HFS Master Directory Block - 162 bytes */ ++/* Stored at sector #2 (3rd sector) and second-to-last sector. */ ++struct HFSMasterDirectoryBlock { ++ u_int16_t drSigWord; /* == kHFSSigWord */ ++ u_int32_t drCrDate; /* date and time of volume creation */ ++ u_int32_t drLsMod; /* date and time of last modification */ ++ u_int16_t drAtrb; /* volume attributes */ ++ u_int16_t drNmFls; /* number of files in root folder */ ++ u_int16_t drVBMSt; /* first block of volume bitmap */ ++ u_int16_t drAllocPtr; /* start of next allocation search */ ++ u_int16_t drNmAlBlks; /* number of allocation blocks in volume */ ++ u_int32_t drAlBlkSiz; /* size (in bytes) of allocation blocks */ ++ u_int32_t drClpSiz; /* default clump size */ ++ u_int16_t drAlBlSt; /* first allocation block in volume */ ++ u_int32_t drNxtCNID; /* next unused catalog node ID */ ++ u_int16_t drFreeBks; /* number of unused allocation blocks */ ++ u_int8_t drVN[kHFSMaxVolumeNameChars + 1]; /* volume name */ ++ u_int32_t drVolBkUp; /* date and time of last backup */ ++ u_int16_t drVSeqNum; /* volume backup sequence number */ ++ u_int32_t drWrCnt; /* volume write count */ ++ u_int32_t drXTClpSiz; /* clump size for extents overflow file */ ++ u_int32_t drCTClpSiz; /* clump size for catalog file */ ++ u_int16_t drNmRtDirs; /* number of directories in root folder */ ++ u_int32_t drFilCnt; /* number of files in volume */ ++ u_int32_t drDirCnt; /* number of directories in volume */ ++ u_int32_t drFndrInfo[8]; /* information used by the Finder */ ++ u_int16_t drEmbedSigWord; /* embedded volume signature (formerly drVCSize) */ ++ HFSExtentDescriptor drEmbedExtent; /* embedded volume location and size (formerly drVBMCSize and drCtlCSize) */ ++ u_int32_t drXTFlSize; /* size of extents overflow file */ ++ HFSExtentRecord drXTExtRec; /* extent record for extents overflow file */ ++ u_int32_t drCTFlSize; /* size of catalog file */ ++ HFSExtentRecord drCTExtRec; /* extent record for catalog file */ ++}PACKED_S; ++typedef struct HFSMasterDirectoryBlock HFSMasterDirectoryBlock; ++ ++ ++#ifdef __APPLE_API_UNSTABLE ++#define SET_HFS_TEXT_ENCODING(hint) \ ++ (0x656e6300 | ((hint) & 0xff)) ++#define GET_HFS_TEXT_ENCODING(hint) \ ++ (((hint) & 0xffffff00) == 0x656e6300 ? (hint) & 0x000000ff : 0xffffffffU) ++#endif /* __APPLE_API_UNSTABLE */ ++ ++ ++/* HFS Plus Volume Header - 512 bytes */ ++/* Stored at sector #2 (3rd sector) and second-to-last sector. */ ++struct HFSPlusVolumeHeader { ++ u_int16_t signature; /* == kHFSPlusSigWord */ ++ u_int16_t version; /* == kHFSPlusVersion */ ++ u_int32_t attributes; /* volume attributes */ ++ u_int32_t lastMountedVersion; /* implementation version which last mounted volume */ ++ u_int32_t journalInfoBlock; /* block addr of journal info (if volume is journaled, zero otherwise) */ ++ ++ u_int32_t createDate; /* date and time of volume creation */ ++ u_int32_t modifyDate; /* date and time of last modification */ ++ u_int32_t backupDate; /* date and time of last backup */ ++ u_int32_t checkedDate; /* date and time of last disk check */ ++ ++ u_int32_t fileCount; /* number of files in volume */ ++ u_int32_t folderCount; /* number of directories in volume */ ++ ++ u_int32_t blockSize; /* size (in bytes) of allocation blocks */ ++ u_int32_t totalBlocks; /* number of allocation blocks in volume (includes this header and VBM*/ ++ u_int32_t freeBlocks; /* number of unused allocation blocks */ ++ ++ u_int32_t nextAllocation; /* start of next allocation search */ ++ u_int32_t rsrcClumpSize; /* default resource fork clump size */ ++ u_int32_t dataClumpSize; /* default data fork clump size */ ++ u_int32_t nextCatalogID; /* next unused catalog node ID */ ++ ++ u_int32_t writeCount; /* volume write count */ ++ u_int64_t encodingsBitmap; /* which encodings have been use on this volume */ ++ ++ u_int8_t finderInfo[32]; /* information used by the Finder */ ++ ++ HFSPlusForkData allocationFile; /* allocation bitmap file */ ++ HFSPlusForkData extentsFile; /* extents B-tree file */ ++ HFSPlusForkData catalogFile; /* catalog B-tree file */ ++ HFSPlusForkData attributesFile; /* extended attributes B-tree file */ ++ HFSPlusForkData startupFile; /* boot file (secondary loader) */ ++}PACKED_S; ++typedef struct HFSPlusVolumeHeader HFSPlusVolumeHeader; ++ ++ ++/* B-tree structures */ ++ ++enum BTreeKeyLimits{ ++ kMaxKeyLength = 520 ++}PACKED_S; ++ ++union BTreeKey{ ++ u_int8_t length8; ++ u_int16_t length16; ++ u_int8_t rawData [kMaxKeyLength+2]; ++}PACKED_S; ++typedef union BTreeKey BTreeKey; ++ ++/* BTNodeDescriptor -- Every B-tree node starts with these fields. */ ++struct BTNodeDescriptor { ++ u_int32_t fLink; /* next node at this level*/ ++ u_int32_t bLink; /* previous node at this level*/ ++ int8_t kind; /* kind of node (leaf, index, header, map)*/ ++ u_int8_t height; /* zero for header, map; child is one more than parent*/ ++ u_int16_t numRecords; /* number of records in this node*/ ++ u_int16_t reserved; /* reserved - initialized as zero */ ++}PACKED_S; ++typedef struct BTNodeDescriptor BTNodeDescriptor; ++ ++/* Constants for BTNodeDescriptor kind */ ++enum { ++ kBTLeafNode = -1, ++ kBTIndexNode = 0, ++ kBTHeaderNode = 1, ++ kBTMapNode = 2 ++}PACKED_S; ++ ++/* BTHeaderRec -- The first record of a B-tree header node */ ++struct BTHeaderRec { ++ u_int16_t treeDepth; /* maximum height (usually leaf nodes) */ ++ u_int32_t rootNode; /* node number of root node */ ++ u_int32_t leafRecords; /* number of leaf records in all leaf nodes */ ++ u_int32_t firstLeafNode; /* node number of first leaf node */ ++ u_int32_t lastLeafNode; /* node number of last leaf node */ ++ u_int16_t nodeSize; /* size of a node, in bytes */ ++ u_int16_t maxKeyLength; /* reserved */ ++ u_int32_t totalNodes; /* total number of nodes in tree */ ++ u_int32_t freeNodes; /* number of unused (free) nodes in tree */ ++ u_int16_t reserved1; /* unused */ ++ u_int32_t clumpSize; /* reserved */ ++ u_int8_t btreeType; /* reserved */ ++ u_int8_t keyCompareType; /* Key string Comparison Type */ ++ u_int32_t attributes; /* persistent attributes about the tree */ ++ u_int32_t reserved3[16]; /* reserved */ ++}PACKED_S; ++typedef struct BTHeaderRec BTHeaderRec; ++ ++/* Constants for BTHeaderRec attributes */ ++enum { ++ kBTBadCloseMask = 0x00000001, /* reserved */ ++ kBTBigKeysMask = 0x00000002, /* key length field is 16 bits */ ++ kBTVariableIndexKeysMask = 0x00000004 /* keys in index nodes are variable length */ ++}PACKED_S; ++ ++ ++/* Catalog Key Name Comparison Type */ ++enum { ++ kHFSCaseFolding = 0xCF, /* case folding (case-insensitive) */ ++ kHFSBinaryCompare = 0xBC /* binary compare (case-sensitive) */ ++}PACKED_S; ++ ++/* JournalInfoBlock - Structure that describes where our journal lives */ ++struct JournalInfoBlock { ++ u_int32_t flags; ++ u_int32_t device_signature[8]; // signature used to locate our device. ++ u_int64_t offset; // byte offset to the journal on the device ++ u_int64_t size; // size in bytes of the journal ++ u_int32_t reserved[32]; ++}PACKED_S; ++typedef struct JournalInfoBlock JournalInfoBlock; ++ ++enum { ++ kJIJournalInFSMask = 0x00000001, ++ kJIJournalOnOtherDeviceMask = 0x00000002, ++ kJIJournalNeedInitMask = 0x00000004 ++}PACKED_S; ++ ++#ifdef __cplusplus ++} ++#endif ++ ++#endif /* __HFS_FORMAT__ */ +diff --git a/include/hfs/hfs_mount.h b/include/hfs/hfs_mount.h +new file mode 100644 +index 0000000..ad729f2 +--- /dev/null ++++ b/include/hfs/hfs_mount.h +@@ -0,0 +1,78 @@ ++/* ++ * Copyright (c) 2000-2003 Apple Computer, Inc. All rights reserved. ++ * ++ * @APPLE_LICENSE_HEADER_START@ ++ * ++ * The contents of this file constitute Original Code as defined in and ++ * are subject to the Apple Public Source License Version 1.1 (the ++ * "License"). You may not use this file except in compliance with the ++ * License. Please obtain a copy of the License at ++ * http://www.apple.com/publicsource and read it before using this file. ++ * ++ * This Original Code and all software distributed under the License are ++ * distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, EITHER ++ * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES, ++ * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, ++ * FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT. Please see the ++ * License for the specific language governing rights and limitations ++ * under the License. ++ * ++ * @APPLE_LICENSE_HEADER_END@ ++ */ ++/* ++ * Copyright (c) 1997-2002 Apple Computer, Inc. All Rights Reserved ++ * ++ */ ++ ++#ifndef _HFS_MOUNT_H_ ++#define _HFS_MOUNT_H_ ++ ++#include ++ ++#include ++#include ++ ++/* ++ * Arguments to mount HFS-based filesystems ++ */ ++ ++#define OVERRIDE_UNKNOWN_PERMISSIONS 0 ++ ++#define UNKNOWNUID ((uid_t)99) ++#define UNKNOWNGID ((gid_t)99) ++#define UNKNOWNPERMISSIONS (S_IRWXU | S_IROTH | S_IXOTH) /* 705 */ ++ ++#ifdef __APPLE_API_UNSTABLE ++struct hfs_mount_args { ++#ifndef KERNEL ++ char *fspec; /* block special device to mount */ ++#endif ++ uid_t hfs_uid; /* uid that owns hfs files (standard HFS only) */ ++ gid_t hfs_gid; /* gid that owns hfs files (standard HFS only) */ ++ mode_t hfs_mask; /* mask to be applied for hfs perms (standard HFS only) */ ++ u_int32_t hfs_encoding; /* encoding for this volume (standard HFS only) */ ++ struct timezone hfs_timezone; /* user time zone info (standard HFS only) */ ++ int flags; /* mounting flags, see below */ ++ int journal_tbuffer_size; /* size in bytes of the journal transaction buffer */ ++ int journal_flags; /* flags to pass to journal_open/create */ ++ int journal_disable; /* don't use journaling (potentially dangerous) */ ++}; ++ ++#define HFSFSMNT_NOXONFILES 0x1 /* disable execute permissions for files */ ++#define HFSFSMNT_WRAPPER 0x2 /* mount HFS wrapper (if it exists) */ ++#define HFSFSMNT_EXTENDED_ARGS 0x4 /* indicates new fields after "flags" are valid */ ++ ++/* ++ * Sysctl values for HFS ++ */ ++#define HFS_ENCODINGBIAS 1 /* encoding matching CJK bias */ ++#define HFS_EXTEND_FS 2 ++#define HFS_ENCODINGHINT 3 /* guess encoding for string */ ++#define HFS_ENABLE_JOURNALING 0x082969 ++#define HFS_DISABLE_JOURNALING 0x031272 ++#define HFS_GET_JOURNAL_INFO 0x6a6e6c69 ++#define HFS_SET_PKG_EXTENSIONS 0x121031 ++ ++#endif /* __APPLE_API_UNSTABLE */ ++ ++#endif /* ! _HFS_MOUNT_H_ */ +diff --git a/include/sys/appleapiopts.h b/include/sys/appleapiopts.h +new file mode 100644 +index 0000000..4d2061f +--- /dev/null ++++ b/include/sys/appleapiopts.h +@@ -0,0 +1,52 @@ ++/* ++ * Copyright (c) 2002 Apple Computer, Inc. All rights reserved. ++ * ++ * @APPLE_LICENSE_HEADER_START@ ++ * ++ * The contents of this file constitute Original Code as defined in and ++ * are subject to the Apple Public Source License Version 1.1 (the ++ * "License"). You may not use this file except in compliance with the ++ * License. Please obtain a copy of the License at ++ * http://www.apple.com/publicsource and read it before using this file. ++ * ++ * This Original Code and all software distributed under the License are ++ * distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, EITHER ++ * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES, ++ * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, ++ * FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT. Please see the ++ * License for the specific language governing rights and limitations ++ * under the License. ++ * ++ * @APPLE_LICENSE_HEADER_END@ ++ */ ++ ++#ifndef __SYS_APPLEAPIOPTS_H__ ++#define __SYS_APPLEAPIOPTS_H__ ++ ++ ++#ifndef __APPLE_API_STANDARD ++#define __APPLE_API_STANDARD ++#endif /* __APPLE_API_STANDARD */ ++ ++#ifndef __APPLE_API_STABLE ++#define __APPLE_API_STABLE ++#endif /* __APPLE_API_STABLE */ ++ ++#ifndef __APPLE_API_STRICT_CONFORMANCE ++ ++#ifndef __APPLE_API_EVOLVING ++#define __APPLE_API_EVOLVING ++#endif /* __APPLE_API_EVOLVING */ ++ ++#ifndef __APPLE_API_UNSTABLE ++#define __APPLE_API_UNSTABLE ++#endif /* __APPLE_API_UNSTABLE */ ++ ++#ifndef __APPLE_API_OBSOLETE ++#define __APPLE_API_OBSOLETE ++#endif /* __APPLE_API_OBSOLETE */ ++ ++#endif /* __APPLE_API_STRICT_CONFORMANCE */ ++ ++#endif /* __SYS_APPLEAPIOPTS_H__ */ ++ diff --git a/utils/hfsprogs/patches/0004-Fix-compilation-on-64-bit-arches.patch b/utils/hfsprogs/patches/0004-Fix-compilation-on-64-bit-arches.patch new file mode 100644 index 000000000..57f601108 --- /dev/null +++ b/utils/hfsprogs/patches/0004-Fix-compilation-on-64-bit-arches.patch @@ -0,0 +1,131 @@ +From: =?UTF-8?q?Rog=C3=A9rio=20Brito?= +Date: Thu, 24 Oct 2013 01:11:21 -0200 +Subject: Fix compilation on 64-bit arches + +--- + fsck_hfs.tproj/dfalib/BTreePrivate.h | 5 ++++- + fsck_hfs.tproj/dfalib/SControl.c | 8 ++++---- + fsck_hfs.tproj/dfalib/SVerify1.c | 14 +++++++------- + fsck_hfs.tproj/dfalib/hfs_endian.c | 2 +- + 4 files changed, 16 insertions(+), 13 deletions(-) + +diff --git a/fsck_hfs.tproj/dfalib/BTreePrivate.h b/fsck_hfs.tproj/dfalib/BTreePrivate.h +index 058c75b..2fc2f28 100644 +--- a/fsck_hfs.tproj/dfalib/BTreePrivate.h ++++ b/fsck_hfs.tproj/dfalib/BTreePrivate.h +@@ -104,6 +104,9 @@ typedef enum { + + ///////////////////////////////////// Types ///////////////////////////////////// + ++// Forward declaration from Scavenger.h ++struct BTreeExtensionsRec; ++ + typedef struct BTreeControlBlock { // fields specific to BTree CBs + + UInt8 keyCompareType; /* Key string Comparison Type */ +@@ -144,7 +147,7 @@ typedef struct BTreeControlBlock { // fields specific to BTree CBs + UInt32 numPossibleHints; // Looks like a formated hint + UInt32 numValidHints; // Hint used to find correct record. + +- UInt32 refCon; // Used by DFA to point to private data. ++ struct BTreeExtensionsRec *refCon; // Used by DFA to point to private data. + SFCB *fcbPtr; // fcb of btree file + + } BTreeControlBlock, *BTreeControlBlockPtr; +diff --git a/fsck_hfs.tproj/dfalib/SControl.c b/fsck_hfs.tproj/dfalib/SControl.c +index 37eb242..4ce9e16 100644 +--- a/fsck_hfs.tproj/dfalib/SControl.c ++++ b/fsck_hfs.tproj/dfalib/SControl.c +@@ -1034,7 +1034,7 @@ static int ScavTerm( SGlobPtr GPtr ) + btcbP = (BTreeControlBlock*)fcbP->fcbBtree; + if ( btcbP != nil) + { +- if( btcbP->refCon != (UInt32)nil ) ++ if( btcbP->refCon != nil ) + { + if(((BTreeExtensionsRec*)btcbP->refCon)->BTCBMPtr != nil) + { +@@ -1043,13 +1043,13 @@ static int ScavTerm( SGlobPtr GPtr ) + } + DisposeMemory( (Ptr)btcbP->refCon ); + err = MemError(); +- btcbP->refCon = (UInt32)nil; ++ btcbP->refCon = nil; + } + + fcbP = GPtr->calculatedCatalogFCB; // release catalog BTree bit map + btcbP = (BTreeControlBlock*)fcbP->fcbBtree; + +- if( btcbP->refCon != (UInt32)nil ) ++ if( btcbP->refCon != nil ) + { + if(((BTreeExtensionsRec*)btcbP->refCon)->BTCBMPtr != nil) + { +@@ -1058,7 +1058,7 @@ static int ScavTerm( SGlobPtr GPtr ) + } + DisposeMemory( (Ptr)btcbP->refCon ); + err = MemError(); +- btcbP->refCon = (UInt32)nil; ++ btcbP->refCon = nil; + } + } + } +diff --git a/fsck_hfs.tproj/dfalib/SVerify1.c b/fsck_hfs.tproj/dfalib/SVerify1.c +index c272d4d..a273bf3 100644 +--- a/fsck_hfs.tproj/dfalib/SVerify1.c ++++ b/fsck_hfs.tproj/dfalib/SVerify1.c +@@ -789,8 +789,8 @@ OSErr CreateExtentsBTreeControlBlock( SGlobPtr GPtr ) + // + // set up our DFA extended BTCB area. Will we have enough memory on all HFS+ volumes. + // +- btcb->refCon = (UInt32) AllocateClearMemory( sizeof(BTreeExtensionsRec) ); // allocate space for our BTCB extensions +- if ( btcb->refCon == (UInt32) nil ) { ++ btcb->refCon = AllocateClearMemory( sizeof(BTreeExtensionsRec) ); // allocate space for our BTCB extensions ++ if ( btcb->refCon == nil ) { + err = R_NoMem; + goto exit; + } +@@ -1144,8 +1144,8 @@ OSErr CreateCatalogBTreeControlBlock( SGlobPtr GPtr ) + // set up our DFA extended BTCB area. Will we have enough memory on all HFS+ volumes. + // + +- btcb->refCon = (UInt32) AllocateClearMemory( sizeof(BTreeExtensionsRec) ); // allocate space for our BTCB extensions +- if ( btcb->refCon == (UInt32)nil ) { ++ btcb->refCon = AllocateClearMemory( sizeof(BTreeExtensionsRec) ); // allocate space for our BTCB extensions ++ if ( btcb->refCon == nil ) { + err = R_NoMem; + goto exit; + } +@@ -1779,8 +1779,8 @@ OSErr CreateAttributesBTreeControlBlock( SGlobPtr GPtr ) + // + // set up our DFA extended BTCB area. Will we have enough memory on all HFS+ volumes. + // +- btcb->refCon = (UInt32) AllocateClearMemory( sizeof(BTreeExtensionsRec) ); // allocate space for our BTCB extensions +- if ( btcb->refCon == (UInt32)nil ) { ++ btcb->refCon = AllocateClearMemory( sizeof(BTreeExtensionsRec) ); // allocate space for our BTCB extensions ++ if ( btcb->refCon == nil ) { + err = R_NoMem; + goto exit; + } +@@ -1793,7 +1793,7 @@ OSErr CreateAttributesBTreeControlBlock( SGlobPtr GPtr ) + } + else + { +- if ( btcb->refCon == (UInt32)nil ) { ++ if ( btcb->refCon == nil ) { + err = R_NoMem; + goto exit; + } +diff --git a/fsck_hfs.tproj/dfalib/hfs_endian.c b/fsck_hfs.tproj/dfalib/hfs_endian.c +index 69500c1..3cc9eb4 100755 +--- a/fsck_hfs.tproj/dfalib/hfs_endian.c ++++ b/fsck_hfs.tproj/dfalib/hfs_endian.c +@@ -437,7 +437,7 @@ hfs_swap_HFSPlusBTInternalNode ( + BTNodeDescriptor *srcDesc = src->buffer; + UInt16 *srcOffs = (UInt16 *)((char *)src->buffer + (src->blockSize - (srcDesc->numRecords * sizeof (UInt16)))); + char *nextRecord; /* Points to start of record following current one */ +- UInt32 i; ++ int i; + UInt32 j; + + if (fileID == kHFSExtentsFileID) { diff --git a/utils/hfsprogs/patches/0005-Remove-Apple-specific-p-from-strings.patch b/utils/hfsprogs/patches/0005-Remove-Apple-specific-p-from-strings.patch new file mode 100644 index 000000000..318fd603a --- /dev/null +++ b/utils/hfsprogs/patches/0005-Remove-Apple-specific-p-from-strings.patch @@ -0,0 +1,291 @@ +From: =?UTF-8?q?Rog=C3=A9rio=20Brito?= +Date: Thu, 24 Oct 2013 01:11:21 -0200 +Subject: Remove (Apple-specific?) \p from strings + +Modify the way that debug messages are sent to the user, by eliminating one +character of them. +--- + fsck_hfs.tproj/dfalib/BTreeTreeOps.c | 48 ++++++++++++++++++------------------ + fsck_hfs.tproj/dfalib/SBTree.c | 14 +++++------ + 2 files changed, 31 insertions(+), 31 deletions(-) + +diff --git a/fsck_hfs.tproj/dfalib/BTreeTreeOps.c b/fsck_hfs.tproj/dfalib/BTreeTreeOps.c +index b812b14..37fb170 100644 +--- a/fsck_hfs.tproj/dfalib/BTreeTreeOps.c ++++ b/fsck_hfs.tproj/dfalib/BTreeTreeOps.c +@@ -223,7 +223,7 @@ OSStatus SearchTree (BTreeControlBlockPtr btreePtr, + // + if (curNodeNum == 0) + { +-// Panic("\pSearchTree: curNodeNum is zero!"); ++ Panic("SearchTree: curNodeNum is zero!"); + err = fsBTInvalidNodeErr; + goto ErrorExit; + } +@@ -433,7 +433,7 @@ OSStatus InsertLevel (BTreeControlBlockPtr btreePtr, + M_ExitOnError (err); + + if ( DEBUG_BUILD && updateParent && newRoot ) +- DebugStr("\p InsertLevel: New root from primary key, update from secondary key..."); ++ DebugStr("InsertLevel: New root from primary key, update from secondary key..."); + } + + //////////////////////// Update Parent(s) /////////////////////////////// +@@ -448,7 +448,7 @@ OSStatus InsertLevel (BTreeControlBlockPtr btreePtr, + + secondaryKey = nil; + +- PanicIf ( (level == btreePtr->treeDepth), "\p InsertLevel: unfinished insert!?"); ++ PanicIf ( (level == btreePtr->treeDepth), "InsertLevel: unfinished insert!?"); + + ++level; + +@@ -456,7 +456,7 @@ OSStatus InsertLevel (BTreeControlBlockPtr btreePtr, + index = treePathTable [level].index; + parentNodeNum = treePathTable [level].node; + +- PanicIf ( parentNodeNum == 0, "\p InsertLevel: parent node is zero!?"); ++ PanicIf ( parentNodeNum == 0, "InsertLevel: parent node is zero!?"); + + err = GetNode (btreePtr, parentNodeNum, &parentNode); // released as target node in next level up + M_ExitOnError (err); +@@ -470,7 +470,7 @@ OSStatus InsertLevel (BTreeControlBlockPtr btreePtr, + { + //debug: check if ptr == targetNodeNum + GetRecordByIndex (btreePtr, parentNode.buffer, index, &keyPtr, &recPtr, &recSize); +- PanicIf( (*(UInt32 *) recPtr) != targetNodeNum, "\p InsertLevel: parent ptr doesn't match target node!"); ++ PanicIf( (*(UInt32 *) recPtr) != targetNodeNum, "InsertLevel: parent ptr doesn't match target node!"); + + // need to delete and re-insert this parent key/ptr + // we delete it here and it gets re-inserted in the +@@ -532,7 +532,7 @@ ErrorExit: + (void) ReleaseNode (btreePtr, targetNode); + (void) ReleaseNode (btreePtr, &siblingNode); + +- Panic ("\p InsertLevel: an error occured!"); ++ Panic ("InsertLevel: an error occured!"); + + return err; + +@@ -566,7 +566,7 @@ static OSErr InsertNode (BTreeControlBlockPtr btreePtr, + + *rootSplit = false; + +- PanicIf ( targetNode->buffer == siblingNode->buffer, "\p InsertNode: targetNode == siblingNode, huh?"); ++ PanicIf ( targetNode->buffer == siblingNode->buffer, "InsertNode: targetNode == siblingNode, huh?"); + + leftNodeNum = ((NodeDescPtr) targetNode->buffer)->bLink; + rightNodeNum = ((NodeDescPtr) targetNode->buffer)->fLink; +@@ -606,7 +606,7 @@ static OSErr InsertNode (BTreeControlBlockPtr btreePtr, + + if ( leftNodeNum > 0 ) + { +- PanicIf ( siblingNode->buffer != nil, "\p InsertNode: siblingNode already aquired!"); ++ PanicIf ( siblingNode->buffer != nil, "InsertNode: siblingNode already aquired!"); + + if ( siblingNode->buffer == nil ) + { +@@ -614,7 +614,7 @@ static OSErr InsertNode (BTreeControlBlockPtr btreePtr, + M_ExitOnError (err); + } + +- PanicIf ( ((NodeDescPtr) siblingNode->buffer)->fLink != nodeNum, "\p InsertNode, RotateLeft: invalid sibling link!" ); ++ PanicIf ( ((NodeDescPtr) siblingNode->buffer)->fLink != nodeNum, "InsertNode, RotateLeft: invalid sibling link!" ); + + if ( !key->skipRotate ) // are rotates allowed? + { +@@ -703,7 +703,7 @@ OSStatus DeleteTree (BTreeControlBlockPtr btreePtr, + + targetNodeNum = treePathTable[level].node; + targetNodePtr = targetNode->buffer; +- PanicIf (targetNodePtr == nil, "\pDeleteTree: targetNode has nil buffer!"); ++ PanicIf (targetNodePtr == nil, "DeleteTree: targetNode has nil buffer!"); + + DeleteRecord (btreePtr, targetNodePtr, index); + +@@ -797,7 +797,7 @@ OSStatus DeleteTree (BTreeControlBlockPtr btreePtr, + + //debug: check if ptr == targetNodeNum + GetRecordByIndex (btreePtr, parentNode.buffer, index, &keyPtr, &recPtr, &recSize); +- PanicIf( (*(UInt32 *) recPtr) != targetNodeNum, "\p DeleteTree: parent ptr doesn't match targetNodeNum!!"); ++ PanicIf( (*(UInt32 *) recPtr) != targetNodeNum, " DeleteTree: parent ptr doesn't match targetNodeNum!!"); + + // need to delete and re-insert this parent key/ptr + DeleteRecord (btreePtr, parentNode.buffer, index); +@@ -1018,7 +1018,7 @@ static OSStatus RotateLeft (BTreeControlBlockPtr btreePtr, + keyPtr, keyLength, recPtr, recSize); + if ( !didItFit ) + { +- Panic ("\pRotateLeft: InsertKeyRecord (left) returned false!"); ++ Panic ("RotateLeft: InsertKeyRecord (left) returned false!"); + err = fsBTBadRotateErr; + goto ErrorExit; + } +@@ -1031,7 +1031,7 @@ static OSStatus RotateLeft (BTreeControlBlockPtr btreePtr, + didItFit = RotateRecordLeft (btreePtr, leftNode, rightNode); + if ( !didItFit ) + { +- Panic ("\pRotateLeft: RotateRecordLeft returned false!"); ++ Panic ("RotateLeft: RotateRecordLeft returned false!"); + err = fsBTBadRotateErr; + goto ErrorExit; + } +@@ -1048,7 +1048,7 @@ static OSStatus RotateLeft (BTreeControlBlockPtr btreePtr, + keyPtr, keyLength, recPtr, recSize); + if ( !didItFit ) + { +- Panic ("\pRotateLeft: InsertKeyRecord (right) returned false!"); ++ Panic ("RotateLeft: InsertKeyRecord (right) returned false!"); + err = fsBTBadRotateErr; + goto ErrorExit; + } +@@ -1117,7 +1117,7 @@ static OSStatus SplitLeft (BTreeControlBlockPtr btreePtr, + right = rightNode->buffer; + left = leftNode->buffer; + +- PanicIf ( right->bLink != 0 && left == 0, "\p SplitLeft: left sibling missing!?" ); ++ PanicIf ( right->bLink != 0 && left == 0, " SplitLeft: left sibling missing!?" ); + + // type should be kLeafNode or kIndexNode + +@@ -1240,8 +1240,8 @@ static OSStatus AddNewRootNode (BTreeControlBlockPtr btreePtr, + Boolean didItFit; + UInt16 keyLength; + +- PanicIf (leftNode == nil, "\pAddNewRootNode: leftNode == nil"); +- PanicIf (rightNode == nil, "\pAddNewRootNode: rightNode == nil"); ++ PanicIf (leftNode == nil, "AddNewRootNode: leftNode == nil"); ++ PanicIf (rightNode == nil, "AddNewRootNode: rightNode == nil"); + + + /////////////////////// Initialize New Root Node //////////////////////////// +@@ -1264,7 +1264,7 @@ static OSStatus AddNewRootNode (BTreeControlBlockPtr btreePtr, + didItFit = InsertKeyRecord ( btreePtr, rootNode.buffer, 0, keyPtr, keyLength, + (UInt8 *) &rightNode->bLink, 4 ); + +- PanicIf ( !didItFit, "\pAddNewRootNode:InsertKeyRecord failed for left index record"); ++ PanicIf ( !didItFit, "AddNewRootNode:InsertKeyRecord failed for left index record"); + + + //////////////////// Insert Right Node Index Record ///////////////////////// +@@ -1275,7 +1275,7 @@ static OSStatus AddNewRootNode (BTreeControlBlockPtr btreePtr, + didItFit = InsertKeyRecord ( btreePtr, rootNode.buffer, 1, keyPtr, keyLength, + (UInt8 *) &leftNode->fLink, 4 ); + +- PanicIf ( !didItFit, "\pAddNewRootNode:InsertKeyRecord failed for right index record"); ++ PanicIf ( !didItFit, "AddNewRootNode:InsertKeyRecord failed for right index record"); + + + #if DEBUG_TREEOPS +@@ -1355,7 +1355,7 @@ static OSStatus SplitRight (BTreeControlBlockPtr btreePtr, + } + rightPtr = rightNodePtr->buffer; + +- PanicIf ( leftPtr->fLink != 0 && rightPtr == 0, "\p SplitRight: right sibling missing!?" ); ++ PanicIf ( leftPtr->fLink != 0 && rightPtr == 0, "SplitRight: right sibling missing!?" ); + + // type should be kLeafNode or kIndexNode + +@@ -1557,7 +1557,7 @@ static OSStatus RotateRight (BTreeControlBlockPtr btreePtr, + keyPtr, keyLength, recPtr, recSize); + if ( !didItFit ) + { +- Panic ("\pRotateRight: InsertKeyRecord (left) returned false!"); ++ Panic ("RotateRight: InsertKeyRecord (left) returned false!"); + err = fsBTBadRotateErr; + goto ErrorExit; + } +@@ -1572,7 +1572,7 @@ static OSStatus RotateRight (BTreeControlBlockPtr btreePtr, + didItFit = RotateRecordRight( btreePtr, leftNodePtr, rightNodePtr ); + if ( !didItFit ) + { +- Panic ("\pRotateRight: RotateRecordRight returned false!"); ++ Panic ("RotateRight: RotateRecordRight returned false!"); + err = fsBTBadRotateErr; + goto ErrorExit; + } +@@ -1583,7 +1583,7 @@ static OSStatus RotateRight (BTreeControlBlockPtr btreePtr, + keyPtr, keyLength, recPtr, recSize); + if ( !didItFit ) + { +- Panic ("\pRotateRight: InsertKeyRecord (left) returned false!"); ++ Panic ("RotateRight: InsertKeyRecord (left) returned false!"); + err = fsBTBadRotateErr; + goto ErrorExit; + } +@@ -1607,7 +1607,7 @@ static OSStatus RotateRight (BTreeControlBlockPtr btreePtr, + keyPtr, keyLength, recPtr, recSize); + if ( !didItFit ) + { +- Panic ("\pRotateRight: InsertKeyRecord (right) returned false!"); ++ Panic ("RotateRight: InsertKeyRecord (right) returned false!"); + err = fsBTBadRotateErr; + goto ErrorExit; + } +diff --git a/fsck_hfs.tproj/dfalib/SBTree.c b/fsck_hfs.tproj/dfalib/SBTree.c +index cd81b13..eeb4e8c 100644 +--- a/fsck_hfs.tproj/dfalib/SBTree.c ++++ b/fsck_hfs.tproj/dfalib/SBTree.c +@@ -103,7 +103,7 @@ OSErr SearchBTreeRecord(SFCB *fcb, const void* key, UInt32 hint, void* foundKey, + CopyMemory(&resultIterator->key, foundKey, CalcKeySize(btcb, &resultIterator->key)); // warning, this could overflow user's buffer!!! + + if ( DEBUG_BUILD && !ValidHFSRecord(data, btcb, *dataSize) ) +- DebugStr("\pSearchBTreeRecord: bad record?"); ++ DebugStr("SearchBTreeRecord: bad record?"); + } + + ErrorExit: +@@ -211,7 +211,7 @@ OSErr GetBTreeRecord(SFCB *fcb, SInt16 selectionIndex, void* key, void* data, UI + CopyMemory(&iterator->key, key, CalcKeySize(btcb, &iterator->key)); // warning, this could overflow user's buffer!!! + + if ( DEBUG_BUILD && !ValidHFSRecord(data, btcb, *dataSize) ) +- DebugStr("\pGetBTreeRecord: bad record?"); ++ DebugStr("GetBTreeRecord: bad record?"); + + } + +@@ -243,7 +243,7 @@ OSErr InsertBTreeRecord(SFCB *fcb, const void* key, const void* data, UInt16 dat + CopyMemory(key, &iterator.key, CalcKeySize(btcb, (BTreeKey *) key)); // should we range check against maxkeylen? + + if ( DEBUG_BUILD && !ValidHFSRecord(data, btcb, dataSize) ) +- DebugStr("\pInsertBTreeRecord: bad record?"); ++ DebugStr("InsertBTreeRecord: bad record?"); + + result = BTInsertRecord( fcb, &iterator, &btRecord, dataSize ); + +@@ -305,7 +305,7 @@ OSErr ReplaceBTreeRecord(SFCB *fcb, const void* key, UInt32 hint, void *newData, + CopyMemory(key, &iterator.key, CalcKeySize(btcb, (BTreeKey *) key)); // should we range check against maxkeylen? + + if ( DEBUG_BUILD && !ValidHFSRecord(newData, btcb, dataSize) ) +- DebugStr("\pReplaceBTreeRecord: bad record?"); ++ DebugStr("ReplaceBTreeRecord: bad record?"); + + result = BTReplaceRecord( fcb, &iterator, &btRecord, dataSize ); + +@@ -344,7 +344,7 @@ SetEndOfForkProc ( SFCB *filePtr, FSSize minEOF, FSSize maxEOF ) + else + { + if ( DEBUG_BUILD ) +- DebugStr("\pSetEndOfForkProc: minEOF is smaller than current size!"); ++ DebugStr("SetEndOfForkProc: minEOF is smaller than current size!"); + return -1; + } + +@@ -370,7 +370,7 @@ SetEndOfForkProc ( SFCB *filePtr, FSSize minEOF, FSSize maxEOF ) + // Make sure we got at least as much space as we needed + // + if (filePtr->fcbLogicalSize < minEOF) { +- Panic("\pSetEndOfForkProc: disk too full to extend B-tree file"); ++ Panic("SetEndOfForkProc: disk too full to extend B-tree file"); + return dskFulErr; + } + +@@ -442,7 +442,7 @@ static OSErr CheckBTreeKey(const BTreeKey *key, const BTreeControlBlock *btcb) + if ( (keyLen < 6) || (keyLen > btcb->maxKeyLength) ) + { + if ( DEBUG_BUILD ) +- DebugStr("\pCheckBTreeKey: bad key length!"); ++ DebugStr("CheckBTreeKey: bad key length!"); + return fsBTInvalidKeyLengthErr; + } + diff --git a/utils/hfsprogs/patches/0006-Adjust-types-for-printing.patch b/utils/hfsprogs/patches/0006-Adjust-types-for-printing.patch new file mode 100644 index 000000000..09efbb6ef --- /dev/null +++ b/utils/hfsprogs/patches/0006-Adjust-types-for-printing.patch @@ -0,0 +1,37 @@ +From: =?UTF-8?q?Rog=C3=A9rio=20Brito?= +Date: Thu, 24 Oct 2013 01:11:21 -0200 +Subject: Adjust types for printing + +Try to address the issues of a given integral type having different sizes +in 32 and 64-bit architectures. +--- + fsck_hfs.tproj/dfalib/SControl.c | 2 +- + fsck_hfs.tproj/dfalib/hfs_endian.c | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/fsck_hfs.tproj/dfalib/SControl.c b/fsck_hfs.tproj/dfalib/SControl.c +index 4ce9e16..8b03ece 100644 +--- a/fsck_hfs.tproj/dfalib/SControl.c ++++ b/fsck_hfs.tproj/dfalib/SControl.c +@@ -776,7 +776,7 @@ static int ScavSetUp( SGlob *GPtr) + pointer = (ScavStaticStructures *) AllocateClearMemory( sizeof(ScavStaticStructures) ); + if ( pointer == nil ) { + if ( GPtr->logLevel >= kDebugLog ) { +- printf( "\t error %d - could not allocate %ld bytes of memory \n", ++ printf( "\t error %d - could not allocate %i bytes of memory \n", + R_NoMem, sizeof(ScavStaticStructures) ); + } + return( R_NoMem ); +diff --git a/fsck_hfs.tproj/dfalib/hfs_endian.c b/fsck_hfs.tproj/dfalib/hfs_endian.c +index 3cc9eb4..6ca2ac1 100755 +--- a/fsck_hfs.tproj/dfalib/hfs_endian.c ++++ b/fsck_hfs.tproj/dfalib/hfs_endian.c +@@ -563,7 +563,7 @@ hfs_swap_HFSPlusBTInternalNode ( + /* Make sure name length is consistent with key length */ + if (keyLength < sizeof(srcKey->parentID) + sizeof(srcKey->nodeName.length) + + srcKey->nodeName.length*sizeof(srcKey->nodeName.unicode[0])) { +- if (debug) printf("hfs_swap_HFSPlusBTInternalNode: catalog record #%d keyLength=%d expected=%lu\n", ++ if (debug) printf("hfs_swap_HFSPlusBTInternalNode: catalog record #%d keyLength=%d expected=%i\n", + srcDesc->numRecords-i, keyLength, sizeof(srcKey->parentID) + sizeof(srcKey->nodeName.length) + + srcKey->nodeName.length*sizeof(srcKey->nodeName.unicode[0])); + WriteError(fcb->fcbVolume->vcbGPtr, E_KeyLen, fcb->fcbFileID, src->blockNum); diff --git a/utils/hfsprogs/patches/0007-Fix-path-for-HFS-wrapper-block.patch b/utils/hfsprogs/patches/0007-Fix-path-for-HFS-wrapper-block.patch new file mode 100644 index 000000000..f92bb228a --- /dev/null +++ b/utils/hfsprogs/patches/0007-Fix-path-for-HFS-wrapper-block.patch @@ -0,0 +1,23 @@ +From: =?UTF-8?q?Rog=C3=A9rio=20Brito?= +Date: Thu, 24 Oct 2013 01:11:21 -0200 +Subject: Fix path for HFS wrapper block + +Fix the installation of the HFS wrapper block to be compliant in Linux +systems (since it is arch independent). +--- + newfs_hfs.tproj/makehfs.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/newfs_hfs.tproj/makehfs.c b/newfs_hfs.tproj/makehfs.c +index 7609779..2233ef7 100644 +--- a/newfs_hfs.tproj/makehfs.c ++++ b/newfs_hfs.tproj/makehfs.c +@@ -70,7 +70,7 @@ extern Boolean _CFStringGetFileSystemRepresentation(CFStringRef string, UInt8 *b + #include "readme.h" + + +-#define HFS_BOOT_DATA "/usr/share/misc/hfsbootdata" ++#define HFS_BOOT_DATA "/usr/share/hfsprogs/hfsbootdata" + + #define HFS_JOURNAL_FILE ".journal" + #define HFS_JOURNAL_INFO ".journal_info_block" diff --git a/utils/hfsprogs/patches/0008-Provide-command-line-option-a.patch b/utils/hfsprogs/patches/0008-Provide-command-line-option-a.patch new file mode 100644 index 000000000..366dbbc0d --- /dev/null +++ b/utils/hfsprogs/patches/0008-Provide-command-line-option-a.patch @@ -0,0 +1,40 @@ +From: =?UTF-8?q?Rog=C3=A9rio=20Brito?= +Date: Thu, 24 Oct 2013 01:11:21 -0200 +Subject: Provide command line option -a + +Create a new command line option (-a) for the fsck.hfsplus that has the same +behavior that the -p option has, for greater compatibility with other tools. +--- + fsck_hfs.tproj/fsck_hfs.c | 5 +++-- + 1 file changed, 3 insertions(+), 2 deletions(-) + +diff --git a/fsck_hfs.tproj/fsck_hfs.c b/fsck_hfs.tproj/fsck_hfs.c +index f1a18bd..6117698 100644 +--- a/fsck_hfs.tproj/fsck_hfs.c ++++ b/fsck_hfs.tproj/fsck_hfs.c +@@ -104,7 +104,7 @@ main(argc, argv) + else + progname = *argv; + +- while ((ch = getopt(argc, argv, "c:D:dfglm:npqruy")) != EOF) { ++ while ((ch = getopt(argc, argv, "c:D:dfglm:napqruy")) != EOF) { + switch (ch) { + case 'c': + /* Cache size to use in fsck_hfs */ +@@ -169,6 +169,7 @@ main(argc, argv) + yflag = 0; + break; + ++ case 'a': + case 'p': + preen++; + break; +@@ -572,7 +573,7 @@ usage() + (void) fprintf(stderr, " l = live fsck (lock down and test-only)\n"); + (void) fprintf(stderr, " m arg = octal mode used when creating lost+found directory \n"); + (void) fprintf(stderr, " n = assume a no response \n"); +- (void) fprintf(stderr, " p = just fix normal inconsistencies \n"); ++ (void) fprintf(stderr, " p, a = just fix normal inconsistencies \n"); + (void) fprintf(stderr, " q = quick check returns clean, dirty, or failure \n"); + (void) fprintf(stderr, " r = rebuild catalog btree \n"); + (void) fprintf(stderr, " u = usage \n"); diff --git a/utils/hfsprogs/patches/0009-Rename-dprintf-to-dbg_printf.patch b/utils/hfsprogs/patches/0009-Rename-dprintf-to-dbg_printf.patch new file mode 100644 index 000000000..23f85183c --- /dev/null +++ b/utils/hfsprogs/patches/0009-Rename-dprintf-to-dbg_printf.patch @@ -0,0 +1,187 @@ +From: =?UTF-8?q?Rog=C3=A9rio=20Brito?= +Date: Thu, 24 Oct 2013 01:11:21 -0200 +Subject: Rename dprintf to dbg_printf + +--- + fsck_hfs.tproj/dfalib/SRepair.c | 18 +++++++++--------- + fsck_hfs.tproj/dfalib/SVerify1.c | 6 +++--- + fsck_hfs.tproj/fsck_debug.c | 10 +++++----- + fsck_hfs.tproj/fsck_debug.h | 10 +++++----- + 4 files changed, 22 insertions(+), 22 deletions(-) + +diff --git a/fsck_hfs.tproj/dfalib/SRepair.c b/fsck_hfs.tproj/dfalib/SRepair.c +index 8eb759c..89c12d6 100644 +--- a/fsck_hfs.tproj/dfalib/SRepair.c ++++ b/fsck_hfs.tproj/dfalib/SRepair.c +@@ -1825,13 +1825,13 @@ static OSErr FixAttrSize(SGlobPtr GPtr, RepairOrderPtr p) + result = BTSearchRecord(GPtr->calculatedAttributesFCB, &iterator, + kInvalidMRUCacheKey, &btRecord, &recSize, &iterator); + if (result) { +- dprintf (d_error|d_xattr, "%s: Cannot find attribute record (err = %d)\n", __FUNCTION__, result); ++ dbg_printf (d_error|d_xattr, "%s: Cannot find attribute record (err = %d)\n", __FUNCTION__, result); + goto out; + } + + /* We should only get record of type kHFSPlusAttrForkData */ + if (record.recordType != kHFSPlusAttrForkData) { +- dprintf (d_error|d_xattr, "%s: Record found is not attribute fork data\n", __FUNCTION__); ++ dbg_printf (d_error|d_xattr, "%s: Record found is not attribute fork data\n", __FUNCTION__); + result = btNotFound; + goto out; + } +@@ -1862,7 +1862,7 @@ static OSErr FixAttrSize(SGlobPtr GPtr, RepairOrderPtr p) + result = BTReplaceRecord(GPtr->calculatedAttributesFCB, &iterator, + &btRecord, recSize); + if (result) { +- dprintf (d_error|d_xattr, "%s: Cannot replace attribute record (err=%d)\n", __FUNCTION__, result); ++ dbg_printf (d_error|d_xattr, "%s: Cannot replace attribute record (err=%d)\n", __FUNCTION__, result); + goto out; + } + } +@@ -2058,7 +2058,7 @@ del_overflow_extents: + + /* Delete the extent record */ + err = DeleteBTreeRecord(GPtr->calculatedExtentsFCB, &extentKey); +- dprintf (d_info, "%s: Deleting extent overflow for fileID=%u, forkType=%u, startBlock=%u\n", __FUNCTION__, fileID, forkType, foundStartBlock); ++ dbg_printf (d_info, "%s: Deleting extent overflow for fileID=%u, forkType=%u, startBlock=%u\n", __FUNCTION__, fileID, forkType, foundStartBlock); + if (err) { + goto create_symlink; + } +@@ -3227,12 +3227,12 @@ static OSErr MoveExtent(SGlobPtr GPtr, ExtentInfo *extentInfo) + &extentData, &recordSize, &foundExtentIndex); + foundLocation = extentsBTree; + if (err != noErr) { +- dprintf (d_error|d_overlap, "%s: No matching extent record found in extents btree for fileID = %d (err=%d)\n", __FUNCTION__, extentInfo->fileID, err); ++ dbg_printf (d_error|d_overlap, "%s: No matching extent record found in extents btree for fileID = %d (err=%d)\n", __FUNCTION__, extentInfo->fileID, err); + goto out; + } + } else { + /* No more extents exist for this file */ +- dprintf (d_error|d_overlap, "%s: No matching extent record found for fileID = %d\n", __FUNCTION__, extentInfo->fileID); ++ dbg_printf (d_error|d_overlap, "%s: No matching extent record found for fileID = %d\n", __FUNCTION__, extentInfo->fileID); + goto out; + } + } +@@ -3241,7 +3241,7 @@ static OSErr MoveExtent(SGlobPtr GPtr, ExtentInfo *extentInfo) + err = CopyDiskBlocks(GPtr, extentInfo->startBlock, extentInfo->blockCount, + extentInfo->newStartBlock); + if (err != noErr) { +- dprintf (d_error|d_overlap, "%s: Error in copying disk blocks for fileID = %d (err=%d)\n", __FUNCTION__, extentInfo->fileID, err); ++ dbg_printf (d_error|d_overlap, "%s: Error in copying disk blocks for fileID = %d (err=%d)\n", __FUNCTION__, extentInfo->fileID, err); + goto out; + } + +@@ -3260,7 +3260,7 @@ static OSErr MoveExtent(SGlobPtr GPtr, ExtentInfo *extentInfo) + + } + if (err != noErr) { +- dprintf (d_error|d_overlap, "%s: Error in updating extent record for fileID = %d (err=%d)\n", __FUNCTION__, extentInfo->fileID, err); ++ dbg_printf (d_error|d_overlap, "%s: Error in updating extent record for fileID = %d (err=%d)\n", __FUNCTION__, extentInfo->fileID, err); + goto out; + } + +@@ -3491,7 +3491,7 @@ static OSErr SearchExtentInAttributeBT(SGlobPtr GPtr, ExtentInfo *extentInfo, + result = BTSearchRecord(GPtr->calculatedAttributesFCB, &iterator, + kInvalidMRUCacheKey, &btRecord, recordSize, &iterator); + if (result) { +- dprintf (d_error|d_overlap, "%s: Error finding attribute record (err=%d) for fileID = %d, attrname = %d\n", __FUNCTION__, result, extentInfo->fileID, extentInfo->attrname); ++ dbg_printf (d_error|d_overlap, "%s: Error finding attribute record (err=%d) for fileID = %d, attrname = %d\n", __FUNCTION__, result, extentInfo->fileID, extentInfo->attrname); + goto out; + } + +diff --git a/fsck_hfs.tproj/dfalib/SVerify1.c b/fsck_hfs.tproj/dfalib/SVerify1.c +index a273bf3..39bda5c 100644 +--- a/fsck_hfs.tproj/dfalib/SVerify1.c ++++ b/fsck_hfs.tproj/dfalib/SVerify1.c +@@ -2157,9 +2157,9 @@ CheckAttributeRecord(SGlobPtr GPtr, const HFSPlusAttrKey *key, const HFSPlusAttr + + if (doDelete == true) { + result = DeleteBTreeRecord(GPtr->calculatedAttributesFCB, key); +- dprintf (d_info|d_xattr, "%s: Deleting attribute %s for fileID %d, type = %d\n", __FUNCTION__, attrname, key->fileID, rec->recordType); ++ dbg_printf (d_info|d_xattr, "%s: Deleting attribute %s for fileID %d, type = %d\n", __FUNCTION__, attrname, key->fileID, rec->recordType); + if (result) { +- dprintf (d_error|d_xattr, "%s: Error in deleting record for %s for fileID %d, type = %d\n", __FUNCTION__, attrname, key->fileID, rec->recordType); ++ dbg_printf (d_error|d_xattr, "%s: Error in deleting record for %s for fileID %d, type = %d\n", __FUNCTION__, attrname, key->fileID, rec->recordType); + } + + /* Set flags to mark header and map dirty */ +@@ -3034,7 +3034,7 @@ OSErr CheckFileExtents( SGlobPtr GPtr, UInt32 fileNumber, UInt8 forkType, + // checkout the extent record first + err = ChkExtRec( GPtr, extents, &lastExtentIndex ); + if (err != noErr) { +- dprintf (d_info, "%s: Bad extent for fileID %u in extent %u for startblock %u\n", __FUNCTION__, fileNumber, lastExtentIndex, blockCount); ++ dbg_printf (d_info, "%s: Bad extent for fileID %u in extent %u for startblock %u\n", __FUNCTION__, fileNumber, lastExtentIndex, blockCount); + + /* Stop verification if bad extent is found for system file or EA */ + if ((fileNumber < kHFSFirstUserCatalogNodeID) || +diff --git a/fsck_hfs.tproj/fsck_debug.c b/fsck_hfs.tproj/fsck_debug.c +index 1be3fc5..77e8e51 100644 +--- a/fsck_hfs.tproj/fsck_debug.c ++++ b/fsck_hfs.tproj/fsck_debug.c +@@ -25,18 +25,18 @@ + #include + #include + +-/* Current debug level of fsck_hfs for printing messages via dprintf */ ++/* Current debug level of fsck_hfs for printing messages via dbg_printf */ + unsigned long cur_debug_level; + +-/* Function: dprintf ++/* Function: dbg_printf + * + * Description: Debug function similar to printf except the first parameter +- * which indicates the type of message to be printed by dprintf. Based on ++ * which indicates the type of message to be printed by dbg_printf. Based on + * current debug level and the type of message, the function decides + * whether to print the message or not. + * + * Each unique message type has a bit assigned to it. The message type +- * passed to dprintf can be one or combination (OR-ed value) of pre-defined ++ * passed to dbg_printf can be one or combination (OR-ed value) of pre-defined + * debug message types. Only the messages whose type have one or more similar + * bits set in comparison with current global debug level are printed. + * +@@ -56,7 +56,7 @@ unsigned long cur_debug_level; + * Output: + * Nothing + */ +-void dprintf (unsigned long type, char *fmt, ...) ++void dbg_printf (unsigned long type, char *fmt, ...) + { + if (cur_debug_level & type) { + va_list ap; +diff --git a/fsck_hfs.tproj/fsck_debug.h b/fsck_hfs.tproj/fsck_debug.h +index 81e3932..cb1b9be 100644 +--- a/fsck_hfs.tproj/fsck_debug.h ++++ b/fsck_hfs.tproj/fsck_debug.h +@@ -36,18 +36,18 @@ enum debug_message_type { + d_overlap = 0x0020 /* Overlap extents related messages */ + }; + +-/* Current debug level of fsck_hfs for printing messages via dprintf */ ++/* Current debug level of fsck_hfs for printing messages via dbg_printf */ + extern unsigned long cur_debug_level; + +-/* Function: dprintf ++/* Function: dbg_printf + * + * Description: Debug function similar to printf except the first parameter +- * which indicates the type of message to be printed by dprintf. Based on ++ * which indicates the type of message to be printed by dbg_printf. Based on + * current debug level and the type of message, the function decides + * whether to print the message or not. + * + * Each unique message type has a bit assigned to it. The message type +- * passed to dprintf can be one or combination (OR-ed value) of pre-defined ++ * passed to dbg_printf can be one or combination (OR-ed value) of pre-defined + * debug message types. Only the messages whose type have one or more similar + * bits set in comparison with current global debug level are printed. + * +@@ -67,6 +67,6 @@ extern unsigned long cur_debug_level; + * Output: + * Nothing + */ +-extern void dprintf (unsigned long message_type, char *format, ...); ++extern void dbg_printf (unsigned long message_type, char *format, ...); + + #endif /* __FSCK_DEBUG__ */ diff --git a/utils/hfsprogs/patches/0010-Rename-custom-macro-nil-with-NULL.patch b/utils/hfsprogs/patches/0010-Rename-custom-macro-nil-with-NULL.patch new file mode 100644 index 000000000..354b4ffc0 --- /dev/null +++ b/utils/hfsprogs/patches/0010-Rename-custom-macro-nil-with-NULL.patch @@ -0,0 +1,1319 @@ +From: =?UTF-8?q?Rog=C3=A9rio=20Brito?= +Date: Thu, 24 Oct 2013 01:11:21 -0200 +Subject: Rename custom macro nil with NULL + +--- + fsck_hfs.tproj/dfalib/BTree.c | 142 +++++++++++++++++----------------- + fsck_hfs.tproj/dfalib/BTreeAllocate.c | 14 ++-- + fsck_hfs.tproj/dfalib/BTreeMiscOps.c | 26 +++---- + fsck_hfs.tproj/dfalib/BTreeNodeOps.c | 30 +++---- + fsck_hfs.tproj/dfalib/BTreeTreeOps.c | 38 ++++----- + fsck_hfs.tproj/dfalib/SControl.c | 56 +++++++------- + fsck_hfs.tproj/dfalib/SRepair.c | 6 +- + fsck_hfs.tproj/dfalib/SUtils.c | 6 +- + fsck_hfs.tproj/dfalib/SVerify1.c | 32 ++++---- + fsck_hfs.tproj/dfalib/SVerify2.c | 4 +- + 10 files changed, 177 insertions(+), 177 deletions(-) + +diff --git a/fsck_hfs.tproj/dfalib/BTree.c b/fsck_hfs.tproj/dfalib/BTree.c +index 7ad9fe0..c0c8744 100644 +--- a/fsck_hfs.tproj/dfalib/BTree.c ++++ b/fsck_hfs.tproj/dfalib/BTree.c +@@ -163,21 +163,21 @@ OSStatus BTInitialize (FCB *filePtr, + + ////////////////////// Preliminary Error Checking /////////////////////////// + +- headerNode.buffer = nil; ++ headerNode.buffer = NULL; + +- if (pathPtr == nil) return paramErr; ++ if (pathPtr == NULL) return paramErr; + + setEndOfForkProc = pathPtr->agentPtr->agent.setEndOfForkProc; + setBlockSizeProc = pathPtr->agentPtr->agent.setBlockSizeProc; + +- if (pathPtr->agentPtr->agent.getBlockProc == nil) return E_NoGetBlockProc; +- if (pathPtr->agentPtr->agent.releaseBlockProc == nil) return E_NoReleaseBlockProc; +- if (setEndOfForkProc == nil) return E_NoSetEndOfForkProc; +- if (setBlockSizeProc == nil) return E_NoSetBlockSizeProc; ++ if (pathPtr->agentPtr->agent.getBlockProc == NULL) return E_NoGetBlockProc; ++ if (pathPtr->agentPtr->agent.releaseBlockProc == NULL) return E_NoReleaseBlockProc; ++ if (setEndOfForkProc == NULL) return E_NoSetEndOfForkProc; ++ if (setBlockSizeProc == NULL) return E_NoSetBlockSizeProc; + + forkPtr = pathPtr->path.forkPtr; + +- if (forkPtr->fork.btreePtr != nil) return fsBTrFileAlreadyOpenErr; ++ if (forkPtr->fork.btreePtr != NULL) return fsBTrFileAlreadyOpenErr; + + if ((maxKeyLength == 0) || + (maxKeyLength > kMaxKeyLength)) return fsBTInvalidKeyLengthErr; +@@ -209,7 +209,7 @@ OSStatus BTInitialize (FCB *filePtr, + //////////////////////// Allocate Control Block ///////////////////////////// + + M_RESIDENT_ALLOCATE_FIXED_CLEAR( &btreePtr, sizeof( BTreeControlBlock ), kFSBTreeControlBlockType ); +- if (btreePtr == nil) ++ if (btreePtr == NULL) + { + err = memFullErr; + goto ErrorExit; +@@ -220,7 +220,7 @@ OSStatus BTInitialize (FCB *filePtr, + btreePtr->flags = 0; + btreePtr->attributes = 0; + btreePtr->forkPtr = forkPtr; +- btreePtr->keyCompareProc = nil; ++ btreePtr->keyCompareProc = NULL; + btreePtr->keyDescPtr = keyDescPtr; + btreePtr->btreeType = btreeType; + btreePtr->treeDepth = 0; +@@ -282,7 +282,7 @@ OSStatus BTInitialize (FCB *filePtr, + + ///////////////////// Copy Key Descriptor To Header ///////////////////////// + #if SupportsKeyDescriptors +- if (keyDescPtr != nil) ++ if (keyDescPtr != NULL) + { + err = CheckKeyDescriptor (keyDescPtr, maxKeyLength); + M_ExitOnError (err); +@@ -309,7 +309,7 @@ OSStatus BTInitialize (FCB *filePtr, + err = UpdateHeader (btreePtr); + M_ExitOnError (err); + +- pathPtr->path.forkPtr->fork.btreePtr = nil; ++ pathPtr->path.forkPtr->fork.btreePtr = NULL; + M_RESIDENT_DEALLOCATE_FIXED( btreePtr, sizeof( BTreeControlBlock ), kFSBTreeControlBlockType ); + + return noErr; +@@ -320,7 +320,7 @@ OSStatus BTInitialize (FCB *filePtr, + ErrorExit: + + (void) ReleaseNode (btreePtr, &headerNode); +- if (btreePtr != nil) ++ if (btreePtr != NULL) + M_RESIDENT_DEALLOCATE_FIXED( btreePtr, sizeof( BTreeControlBlock ), kFSBTreeControlBlockType ); + + return err; +@@ -342,7 +342,7 @@ Input: filePtr - pointer to file to open as a B-tree + setEndOfForkProc - pointer to client's SetEOF function + + Result: noErr - success +- paramErr - required ptr was nil ++ paramErr - required ptr was NULL + fsBTInvalidFileErr - + memFullErr - + != noErr - failure +@@ -364,16 +364,16 @@ OSStatus BTOpenPath (SFCB *filePtr, + + ////////////////////// Preliminary Error Checking /////////////////////////// + +- if ( filePtr == nil || +- getBlockProc == nil || +- releaseBlockProc == nil || +- setEndOfForkProc == nil || +- setBlockSizeProc == nil ) ++ if (filePtr == NULL || ++ getBlockProc == NULL || ++ releaseBlockProc == NULL || ++ setEndOfForkProc == NULL || ++ setBlockSizeProc == NULL) + { + return paramErr; + } + +- if ( filePtr->fcbBtree != nil ) // already has a BTreeCB ++ if (filePtr->fcbBtree != NULL) // already has a BTreeCB + return noErr; + + // is file large enough to contain header node? +@@ -384,7 +384,7 @@ OSStatus BTOpenPath (SFCB *filePtr, + //////////////////////// Allocate Control Block ///////////////////////////// + + btreePtr = (BTreeControlBlock*) AllocateClearMemory( sizeof( BTreeControlBlock ) ); +- if (btreePtr == nil) ++ if (btreePtr == NULL) + { + Panic ("\pBTOpen: no memory for btreePtr."); + return memFullErr; +@@ -397,7 +397,7 @@ OSStatus BTOpenPath (SFCB *filePtr, + + /////////////////////////// Read Header Node //////////////////////////////// + +- nodeRec.buffer = nil; // so we can call ReleaseNode ++ nodeRec.buffer = NULL; // so we can call ReleaseNode + + btreePtr->fcbPtr = filePtr; + filePtr->fcbBtree = (void *) btreePtr; // attach btree cb to file +@@ -487,7 +487,7 @@ OSStatus BTOpenPath (SFCB *filePtr, + + ////////////////////////// Get Key Descriptor /////////////////////////////// + #if SupportsKeyDescriptors +- if ( keyCompareProc == nil ) // if no key compare proc then get key descriptor ++ if (keyCompareProc == NULL) // if no key compare proc then get key descriptor + { + err = GetKeyDescriptor (btreePtr, nodeRec.buffer); // it should check amount of memory allocated... + M_ExitOnError (err); +@@ -499,7 +499,7 @@ OSStatus BTOpenPath (SFCB *filePtr, + else + #endif + { +- btreePtr->keyDescPtr = nil; // clear it so we don't dispose garbage later ++ btreePtr->keyDescPtr = NULL; // clear it so we don't dispose garbage later + } + + err = ReleaseNode (btreePtr, &nodeRec); +@@ -528,7 +528,7 @@ OSStatus BTOpenPath (SFCB *filePtr, + + ErrorExit: + +- filePtr->fcbBtree = nil; ++ filePtr->fcbBtree = NULL; + (void) ReleaseNode (btreePtr, &nodeRec); + DisposeMemory( btreePtr ); + +@@ -567,7 +567,7 @@ OSStatus BTClosePath (SFCB *filePtr) + + btreePtr = (BTreeControlBlockPtr) filePtr->fcbBtree; + +- if (btreePtr == nil) ++ if (btreePtr == NULL) + return fsBTInvalidFileErr; + + ////////////////////// Check for other BTree Paths ////////////////////////// +@@ -603,14 +603,14 @@ OSStatus BTClosePath (SFCB *filePtr) + M_ExitOnError (err); + + #if SupportsKeyDescriptors +- if (btreePtr->keyDescPtr != nil) // deallocate keyDescriptor, if any ++ if (btreePtr->keyDescPtr != NULL) // deallocate keyDescriptor, if any + { + DisposeMemory( btreePtr->keyDescPtr ); + } + #endif + + DisposeMemory( btreePtr ); +- filePtr->fcbBtree = nil; ++ filePtr->fcbBtree = NULL; + + // LogEndTime(kTraceCloseBTree, noErr); + +@@ -643,7 +643,7 @@ Function: Search for position in B*Tree indicated by searchKey. If a valid node + + Input: pathPtr - pointer to path for BTree file. + searchKey - pointer to search key to match. +- hintPtr - pointer to hint (may be nil) ++ hintPtr - pointer to hint (may be NULL) + + Output: record - pointer to BufferDescriptor containing record + recordLen - length of data at recordPtr +@@ -678,14 +678,14 @@ OSStatus BTSearchRecord (SFCB *filePtr, + + // LogStartTime(kTraceSearchBTree); + +- if (filePtr == nil) return paramErr; +- if (searchIterator == nil) return paramErr; ++ if (filePtr == NULL) return paramErr; ++ if (searchIterator == NULL) return paramErr; + + btreePtr = (BTreeControlBlockPtr) filePtr->fcbBtree; +- if (btreePtr == nil) return fsBTInvalidFileErr; ++ if (btreePtr == NULL) return fsBTInvalidFileErr; + + #if SupportsKeyDescriptors +- if (btreePtr->keyCompareProc == nil) // CheckKey if we using Key Descriptor ++ if (btreePtr->keyCompareProc == NULL) // CheckKey if we using Key Descriptor + { + err = CheckKey (&searchIterator->key, btreePtr->keyDescPtr, btreePtr->maxKeyLength); + M_ExitOnError (err); +@@ -775,9 +775,9 @@ OSStatus BTSearchRecord (SFCB *filePtr, + // Should check for errors! Or BlockMove could choke on recordPtr!!! + GetRecordByIndex (btreePtr, node.buffer, index, &keyPtr, &recordPtr, &len); + +- if (recordLen != nil) *recordLen = len; ++ if (recordLen != NULL) *recordLen = len; + +- if (record != nil) ++ if (record != NULL) + { + ByteCount recordSize; + +@@ -794,7 +794,7 @@ OSStatus BTSearchRecord (SFCB *filePtr, + + /////////////////////// Success - Update Iterator /////////////////////////// + +- if (resultIterator != nil) ++ if (resultIterator != NULL) + { + resultIterator->hint.writeCount = btreePtr->writeCount; + resultIterator->hint.nodeNum = nodeNum; +@@ -825,10 +825,10 @@ OSStatus BTSearchRecord (SFCB *filePtr, + + ErrorExit: + +- if (recordLen != nil) ++ if (recordLen != NULL) + *recordLen = 0; + +- if (resultIterator != nil) ++ if (resultIterator != NULL) + { + resultIterator->hint.writeCount = 0; + resultIterator->hint.nodeNum = 0; +@@ -892,18 +892,18 @@ OSStatus BTIterateRecord (SFCB *filePtr, + + ////////////////////////// Priliminary Checks /////////////////////////////// + +- left.buffer = nil; +- right.buffer = nil; +- node.buffer = nil; ++ left.buffer = NULL; ++ right.buffer = NULL; ++ node.buffer = NULL; + + +- if (filePtr == nil) ++ if (filePtr == NULL) + { + return paramErr; + } + + btreePtr = (BTreeControlBlockPtr) filePtr->fcbBtree; +- if (btreePtr == nil) ++ if (btreePtr == NULL) + { + return fsBTInvalidFileErr; // handle properly + } +@@ -968,7 +968,7 @@ OSStatus BTIterateRecord (SFCB *filePtr, + } + else + { +- if (left.buffer == nil) ++ if (left.buffer == NULL) + { + nodeNum = ((NodeDescPtr) node.buffer)->bLink; + if ( nodeNum > 0) +@@ -981,13 +981,13 @@ OSStatus BTIterateRecord (SFCB *filePtr, + } + } + // Before we stomp on "right", we'd better release it if needed +- if (right.buffer != nil) { ++ if (right.buffer != NULL) { + err = ReleaseNode(btreePtr, &right); + M_ExitOnError(err); + } + right = node; + node = left; +- left.buffer = nil; ++ left.buffer = NULL; + index = ((NodeDescPtr) node.buffer)->numRecords -1; + } + } +@@ -1012,7 +1012,7 @@ OSStatus BTIterateRecord (SFCB *filePtr, + } + else + { +- if (right.buffer == nil) ++ if (right.buffer == NULL) + { + nodeNum = ((NodeDescPtr) node.buffer)->fLink; + if ( nodeNum > 0) +@@ -1025,13 +1025,13 @@ OSStatus BTIterateRecord (SFCB *filePtr, + } + } + // Before we stomp on "left", we'd better release it if needed +- if (left.buffer != nil) { ++ if (left.buffer != NULL) { + err = ReleaseNode(btreePtr, &left); + M_ExitOnError(err); + } + left = node; + node = right; +- right.buffer = nil; ++ right.buffer = NULL; + index = 0; + } + } +@@ -1054,9 +1054,9 @@ CopyData: + err = GetRecordByIndex (btreePtr, node.buffer, index, &keyPtr, &recordPtr, &len); + M_ExitOnError (err); + +- if (recordLen != nil) *recordLen = len; ++ if (recordLen != NULL) *recordLen = len; + +- if (record != nil) ++ if (record != NULL) + { + ByteCount recordSize; + +@@ -1069,7 +1069,7 @@ CopyData: + CopyMemory (recordPtr, record->bufferAddress, len); + } + +- if (iterator != nil) // first & last do not require iterator ++ if (iterator != NULL) // first & last do not require iterator + { + iterator->hint.writeCount = btreePtr->writeCount; + iterator->hint.nodeNum = nodeNum; +@@ -1089,13 +1089,13 @@ CopyData: + err = ReleaseNode (btreePtr, &node); + M_ExitOnError (err); + +- if (left.buffer != nil) ++ if (left.buffer != NULL) + { + err = ReleaseNode (btreePtr, &left); + M_ExitOnError (err); + } + +- if (right.buffer != nil) ++ if (right.buffer != NULL) + { + err = ReleaseNode (btreePtr, &right); + M_ExitOnError (err); +@@ -1113,10 +1113,10 @@ ErrorExit: + (void) ReleaseNode (btreePtr, &node); + (void) ReleaseNode (btreePtr, &right); + +- if (recordLen != nil) ++ if (recordLen != NULL) + *recordLen = 0; + +- if (iterator != nil) ++ if (iterator != NULL) + { + iterator->hint.writeCount = 0; + iterator->hint.nodeNum = 0; +@@ -1157,7 +1157,7 @@ OSStatus BTInsertRecord (SFCB *filePtr, + + ////////////////////////// Priliminary Checks /////////////////////////////// + +- nodeRec.buffer = nil; // so we can call ReleaseNode ++ nodeRec.buffer = NULL; // so we can call ReleaseNode + + err = CheckInsertParams (filePtr, iterator, record, recordLen); + if (err != noErr) +@@ -1317,7 +1317,7 @@ OSStatus BTSetRecord (SFCB *filePtr, + + ////////////////////////// Priliminary Checks /////////////////////////////// + +- nodeRec.buffer = nil; // so we can call ReleaseNode ++ nodeRec.buffer = NULL; // so we can call ReleaseNode + + err = CheckInsertParams (filePtr, iterator, record, recordLen); + if (err != noErr) +@@ -1506,7 +1506,7 @@ OSStatus BTReplaceRecord (SFCB *filePtr, + + ////////////////////////// Priliminary Checks /////////////////////////////// + +- nodeRec.buffer = nil; // so we can call ReleaseNode ++ nodeRec.buffer = NULL; // so we can call ReleaseNode + + err = CheckInsertParams (filePtr, iterator, record, recordLen); + if (err != noErr) +@@ -1645,20 +1645,20 @@ OSStatus BTDeleteRecord (SFCB *filePtr, + + ////////////////////////// Priliminary Checks /////////////////////////////// + +- nodeRec.buffer = nil; // so we can call ReleaseNode ++ nodeRec.buffer = NULL; // so we can call ReleaseNode + +- M_ReturnErrorIf (filePtr == nil, paramErr); +- M_ReturnErrorIf (iterator == nil, paramErr); ++ M_ReturnErrorIf (filePtr == NULL, paramErr); ++ M_ReturnErrorIf (iterator == NULL, paramErr); + + btreePtr = (BTreeControlBlockPtr) filePtr->fcbBtree; +- if (btreePtr == nil) ++ if (btreePtr == NULL) + { + err = fsBTInvalidFileErr; + goto ErrorExit; + } + + #if SupportsKeyDescriptors +- if (btreePtr->keyDescPtr != nil) ++ if (btreePtr->keyDescPtr != NULL) + { + err = CheckKey (&iterator->key, btreePtr->keyDescPtr, btreePtr->maxKeyLength); + M_ExitOnError (err); +@@ -1712,12 +1712,12 @@ OSStatus BTGetInformation (SFCB *filePtr, + BTreeControlBlockPtr btreePtr; + + +- M_ReturnErrorIf (filePtr == nil, paramErr); ++ M_ReturnErrorIf (filePtr == NULL, paramErr); + + btreePtr = (BTreeControlBlockPtr) filePtr->fcbBtree; + +- M_ReturnErrorIf (btreePtr == nil, fsBTInvalidFileErr); +- M_ReturnErrorIf (info == nil, paramErr); ++ M_ReturnErrorIf (btreePtr == NULL, fsBTInvalidFileErr); ++ M_ReturnErrorIf (info == NULL, paramErr); + + // check version? + +@@ -1730,7 +1730,7 @@ OSStatus BTGetInformation (SFCB *filePtr, + info->keyDescriptor = btreePtr->keyDescPtr; // this won't do at all... + info->reserved = 0; + +- if (btreePtr->keyDescPtr == nil) ++ if (btreePtr->keyDescPtr == NULL) + info->keyDescLength = 0; + else + info->keyDescLength = (UInt32) btreePtr->keyDescPtr->length; +@@ -1762,11 +1762,11 @@ OSStatus BTFlushPath (SFCB *filePtr) + + // LogStartTime(kTraceFlushBTree); + +- M_ReturnErrorIf (filePtr == nil, paramErr); ++ M_ReturnErrorIf (filePtr == NULL, paramErr); + + btreePtr = (BTreeControlBlockPtr) filePtr->fcbBtree; + +- M_ReturnErrorIf (btreePtr == nil, fsBTInvalidFileErr); ++ M_ReturnErrorIf (btreePtr == NULL, fsBTInvalidFileErr); + + err = UpdateHeader (btreePtr); + +@@ -1788,13 +1788,13 @@ Input: iterator - pointer to BTreeIterator + Output: iterator - iterator with the hint.nodeNum cleared + + Result: noErr - success +- paramErr - iterator == nil ++ paramErr - iterator == NULL + -------------------------------------------------------------------------------*/ + + + OSStatus BTInvalidateHint (BTreeIterator *iterator ) + { +- if (iterator == nil) ++ if (iterator == NULL) + return paramErr; + + iterator->hint.nodeNum = 0; +diff --git a/fsck_hfs.tproj/dfalib/BTreeAllocate.c b/fsck_hfs.tproj/dfalib/BTreeAllocate.c +index 485d867..02bdd8d 100644 +--- a/fsck_hfs.tproj/dfalib/BTreeAllocate.c ++++ b/fsck_hfs.tproj/dfalib/BTreeAllocate.c +@@ -83,7 +83,7 @@ OSStatus AllocateNode (BTreeControlBlockPtr btreePtr, UInt32 *nodeNum) + + + nodeNumber = 0; // first node number of header map record +- node.buffer = nil; // clear node.buffer to get header node ++ node.buffer = NULL; // clear node.buffer to get header node + // - and for ErrorExit + + while (true) +@@ -192,7 +192,7 @@ OSStatus FreeNode (BTreeControlBlockPtr btreePtr, UInt32 nodeNum) + + //////////////////////////// Find Map Record //////////////////////////////// + nodeIndex = 0; // first node number of header map record +- node.buffer = nil; // invalidate node.buffer to get header node ++ node.buffer = NULL; // invalidate node.buffer to get header node + + while (nodeNum >= nodeIndex) + { +@@ -278,8 +278,8 @@ OSStatus ExtendBTree (BTreeControlBlockPtr btreePtr, + nodeSize = btreePtr->nodeSize; + filePtr = btreePtr->fcbPtr; + +- mapNode.buffer = nil; +- newNode.buffer = nil; ++ mapNode.buffer = NULL; ++ newNode.buffer = NULL; + + mapNodeRecSize = nodeSize - sizeof(BTNodeDescriptor) - 6; // 2 bytes of free space (see note) + +@@ -448,7 +448,7 @@ ErrorExit: + Routine: GetMapNode - Get the next map node and pointer to the map record. + + Function: Given a BlockDescriptor to a map node in nodePtr, GetMapNode releases +- it and gets the next node. If nodePtr->buffer is nil, then the header ++ it and gets the next node. If nodePtr->buffer is NULL, then the header + node is retrieved. + + +@@ -474,7 +474,7 @@ OSStatus GetMapNode (BTreeControlBlockPtr btreePtr, + UInt16 mapIndex; + UInt32 nextNodeNum; + +- if (nodePtr->buffer != nil) // if iterator is valid... ++ if (nodePtr->buffer != NULL) // if iterator is valid... + { + nextNodeNum = ((NodeDescPtr)nodePtr->buffer)->fLink; + if (nextNodeNum == 0) +@@ -521,7 +521,7 @@ ErrorExit: + + (void) ReleaseNode (btreePtr, nodePtr); + +- *mapPtr = nil; ++ *mapPtr = NULL; + *mapSize = 0; + + return err; +diff --git a/fsck_hfs.tproj/dfalib/BTreeMiscOps.c b/fsck_hfs.tproj/dfalib/BTreeMiscOps.c +index 7c9edca..997f34b 100644 +--- a/fsck_hfs.tproj/dfalib/BTreeMiscOps.c ++++ b/fsck_hfs.tproj/dfalib/BTreeMiscOps.c +@@ -236,13 +236,13 @@ OSStatus FindIteratorPosition (BTreeControlBlockPtr btreePtr, + // assume index points to UInt16 + // assume foundRecord points to Boolean + +- left->buffer = nil; +- middle->buffer = nil; +- right->buffer = nil; ++ left->buffer = NULL; ++ middle->buffer = NULL; ++ right->buffer = NULL; + + foundIt = false; + +- if (iterator == nil) // do we have an iterator? ++ if (iterator == NULL) // do we have an iterator? + { + err = fsBTInvalidIteratorErr; + goto ErrorExit; +@@ -250,7 +250,7 @@ OSStatus FindIteratorPosition (BTreeControlBlockPtr btreePtr, + + #if SupportsKeyDescriptors + // verify iterator key (change CheckKey to take btreePtr instead of keyDescPtr?) +- if (btreePtr->keyDescPtr != nil) ++ if (btreePtr->keyDescPtr != NULL) + { + err = CheckKey (&iterator->key, btreePtr->keyDescPtr, btreePtr->maxKeyLength ); + M_ExitOnError (err); +@@ -309,7 +309,7 @@ OSStatus FindIteratorPosition (BTreeControlBlockPtr btreePtr, + { + *right = *middle; + *middle = *left; +- left->buffer = nil; ++ left->buffer = NULL; + index = leftIndex; + + goto SuccessfulExit; +@@ -330,7 +330,7 @@ OSStatus FindIteratorPosition (BTreeControlBlockPtr btreePtr, + { + *right = *middle; + *middle = *left; +- left->buffer = nil; ++ left->buffer = NULL; + index = leftIndex; + + goto SuccessfulExit; +@@ -363,7 +363,7 @@ OSStatus FindIteratorPosition (BTreeControlBlockPtr btreePtr, + { + *left = *middle; + *middle = *right; +- right->buffer = nil; ++ right->buffer = NULL; + index = rightIndex; + + goto SuccessfulExit; +@@ -427,15 +427,15 @@ OSStatus CheckInsertParams (SFCB *filePtr, + { + BTreeControlBlockPtr btreePtr; + +- if (filePtr == nil) return paramErr; ++ if (filePtr == NULL) return paramErr; + + btreePtr = (BTreeControlBlockPtr) filePtr->fcbBtree; +- if (btreePtr == nil) return fsBTInvalidFileErr; +- if (iterator == nil) return paramErr; +- if (record == nil) return paramErr; ++ if (btreePtr == NULL) return fsBTInvalidFileErr; ++ if (iterator == NULL) return paramErr; ++ if (record == NULL) return paramErr; + + #if SupportsKeyDescriptors +- if (btreePtr->keyDescPtr != nil) ++ if (btreePtr->keyDescPtr != NULL) + { + OSStatus err; + +diff --git a/fsck_hfs.tproj/dfalib/BTreeNodeOps.c b/fsck_hfs.tproj/dfalib/BTreeNodeOps.c +index da07cc7..ef2bd7b 100644 +--- a/fsck_hfs.tproj/dfalib/BTreeNodeOps.c ++++ b/fsck_hfs.tproj/dfalib/BTreeNodeOps.c +@@ -105,7 +105,7 @@ Function: Gets an existing BTree node from FS Agent and verifies it. + Input: btreePtr - pointer to BTree control block + nodeNum - number of node to request + +-Output: nodePtr - pointer to beginning of node (nil if error) ++Output: nodePtr - pointer to beginning of node (NULL if error) + + Result: + noErr - success +@@ -139,7 +139,7 @@ OSStatus GetNode (BTreeControlBlockPtr btreePtr, + if (err != noErr) + { + Panic ("\pGetNode: getNodeProc returned error."); +- nodePtr->buffer = nil; ++ nodePtr->buffer = NULL; + goto ErrorExit; + } + ++btreePtr->numGetNodes; +@@ -156,8 +156,8 @@ OSStatus GetNode (BTreeControlBlockPtr btreePtr, + return noErr; + + ErrorExit: +- nodePtr->buffer = nil; +- nodePtr->blockHeader = nil; ++ nodePtr->buffer = NULL; ++ nodePtr->blockHeader = NULL; + + // LogEndTime(kTraceGetNode, err); + +@@ -176,7 +176,7 @@ Function: Gets a new BTree node from FS Agent and initializes it to an empty + Input: btreePtr - pointer to BTree control block + nodeNum - number of node to request + +-Output: returnNodePtr - pointer to beginning of node (nil if error) ++Output: returnNodePtr - pointer to beginning of node (NULL if error) + + Result: noErr - success + != noErr - failure +@@ -203,7 +203,7 @@ OSStatus GetNewNode (BTreeControlBlockPtr btreePtr, + if (err != noErr) + { + Panic ("\pGetNewNode: getNodeProc returned error."); +- returnNodePtr->buffer = nil; ++ returnNodePtr->buffer = NULL; + return err; + } + ++btreePtr->numGetNewNodes; +@@ -248,7 +248,7 @@ OSStatus ReleaseNode (BTreeControlBlockPtr btreePtr, + + err = noErr; + +- if (nodePtr->buffer != nil) ++ if (nodePtr->buffer != NULL) + { + /* + * The nodes must remain in the cache as big endian! +@@ -267,8 +267,8 @@ OSStatus ReleaseNode (BTreeControlBlockPtr btreePtr, + ++btreePtr->numReleaseNodes; + } + +- nodePtr->buffer = nil; +- nodePtr->blockHeader = nil; ++ nodePtr->buffer = NULL; ++ nodePtr->blockHeader = NULL; + + // LogEndTime(kTraceReleaseNode, err); + +@@ -299,7 +299,7 @@ OSStatus TrashNode (BTreeControlBlockPtr btreePtr, + + err = noErr; + +- if (nodePtr->buffer != nil) ++ if (nodePtr->buffer != NULL) + { + releaseNodeProc = btreePtr->releaseBlockProc; + err = releaseNodeProc (btreePtr->fcbPtr, +@@ -309,8 +309,8 @@ OSStatus TrashNode (BTreeControlBlockPtr btreePtr, + ++btreePtr->numReleaseNodes; + } + +- nodePtr->buffer = nil; +- nodePtr->blockHeader = nil; ++ nodePtr->buffer = NULL; ++ nodePtr->blockHeader = NULL; + + return err; + } +@@ -338,7 +338,7 @@ OSStatus UpdateNode (BTreeControlBlockPtr btreePtr, + + err = noErr; + +- if (nodePtr->buffer != nil) // why call UpdateNode if nil ?!? ++ if (nodePtr->buffer != NULL) // why call UpdateNode if NULL ?!? + { + // LogStartTime(kTraceReleaseNode); + err = hfs_swap_BTNode(nodePtr, btreePtr->fcbPtr, kSwapBTNodeHostToBig); +@@ -358,8 +358,8 @@ OSStatus UpdateNode (BTreeControlBlockPtr btreePtr, + ++btreePtr->numUpdateNodes; + } + +- nodePtr->buffer = nil; +- nodePtr->blockHeader = nil; ++ nodePtr->buffer = NULL; ++ nodePtr->blockHeader = NULL; + + return noErr; + +diff --git a/fsck_hfs.tproj/dfalib/BTreeTreeOps.c b/fsck_hfs.tproj/dfalib/BTreeTreeOps.c +index 37fb170..73e1fda 100644 +--- a/fsck_hfs.tproj/dfalib/BTreeTreeOps.c ++++ b/fsck_hfs.tproj/dfalib/BTreeTreeOps.c +@@ -177,7 +177,7 @@ Output: nodeNum - number of the node containing the key position + + Result: noErr - key found, index is record index + fsBTRecordNotFoundErr - key not found, index is insert index +- fsBTEmptyErr - key not found, return params are nil ++ fsBTEmptyErr - key not found, return params are NULL + otherwise - catastrophic failure (GetNode/ReleaseNode failed) + -------------------------------------------------------------------------------*/ + +@@ -321,8 +321,8 @@ ReleaseAndExit: + ErrorExit: + + *nodeNum = 0; +- nodePtr->buffer = nil; +- nodePtr->blockHeader = nil; ++ nodePtr->buffer = NULL; ++ nodePtr->blockHeader = NULL; + *returnIndex = 0; + + return err; +@@ -354,7 +354,7 @@ OSStatus InsertTree ( BTreeControlBlockPtr btreePtr, + primaryKey.replacingKey = replacingKey; + primaryKey.skipRotate = false; + +- err = InsertLevel (btreePtr, treePathTable, &primaryKey, nil, ++ err = InsertLevel (btreePtr, treePathTable, &primaryKey, NULL, + targetNode, index, level, insertNode ); + + return err; +@@ -385,7 +385,7 @@ OSStatus InsertLevel (BTreeControlBlockPtr btreePtr, + #if defined(applec) && !defined(__SC__) + PanicIf ((level == 1) && (((NodeDescPtr)targetNode->buffer)->kind != kBTLeafNode), "\P InsertLevel: non-leaf at level 1! "); + #endif +- siblingNode.buffer = nil; ++ siblingNode.buffer = NULL; + targetNodeNum = treePathTable [level].node; + + insertParent = false; +@@ -420,7 +420,7 @@ OSStatus InsertLevel (BTreeControlBlockPtr btreePtr, + + ////// process second insert (if any) ////// + +- if ( secondaryKey != nil ) ++ if (secondaryKey != NULL) + { + Boolean temp; + +@@ -446,7 +446,7 @@ OSStatus InsertLevel (BTreeControlBlockPtr btreePtr, + UInt8 * recPtr; + UInt16 recSize; + +- secondaryKey = nil; ++ secondaryKey = NULL; + + PanicIf ( (level == btreePtr->treeDepth), "InsertLevel: unfinished insert!?"); + +@@ -606,9 +606,9 @@ static OSErr InsertNode (BTreeControlBlockPtr btreePtr, + + if ( leftNodeNum > 0 ) + { +- PanicIf ( siblingNode->buffer != nil, "InsertNode: siblingNode already aquired!"); ++ PanicIf(siblingNode->buffer != NULL, "InsertNode: siblingNode already aquired!"); + +- if ( siblingNode->buffer == nil ) ++ if (siblingNode->buffer == NULL) + { + err = GetNode (btreePtr, leftNodeNum, siblingNode); // will be released by caller or a split below + M_ExitOnError (err); +@@ -703,7 +703,7 @@ OSStatus DeleteTree (BTreeControlBlockPtr btreePtr, + + targetNodeNum = treePathTable[level].node; + targetNodePtr = targetNode->buffer; +- PanicIf (targetNodePtr == nil, "DeleteTree: targetNode has nil buffer!"); ++ PanicIf (targetNodePtr == NULL, "DeleteTree: targetNode has NULL buffer!"); + + DeleteRecord (btreePtr, targetNodePtr, index); + +@@ -766,7 +766,7 @@ OSStatus DeleteTree (BTreeControlBlockPtr btreePtr, + deleteRequired = false; + updateRequired = false; + +- if ( targetNode->buffer == nil ) // then root was freed and the btree is empty ++ if (targetNode->buffer == NULL) // then root was freed and the btree is empty + { + btreePtr->rootNode = 0; + btreePtr->treeDepth = 0; +@@ -1124,7 +1124,7 @@ static OSStatus SplitLeft (BTreeControlBlockPtr btreePtr, + if ( (right->height == 1) && (right->kind != kBTLeafNode) ) + return fsBTInvalidNodeErr; + +- if ( left != nil ) ++ if (left != NULL) + { + if ( left->fLink != rightNodeNum ) + return fsBTInvalidNodeErr; // E_BadSibling ? +@@ -1145,7 +1145,7 @@ static OSStatus SplitLeft (BTreeControlBlockPtr btreePtr, + + /////////////// Update Forward Link In Original Left Node /////////////////// + +- if ( left != nil ) ++ if (left != NULL) + { + left->fLink = newNodeNum; + err = UpdateNode (btreePtr, leftNode); +@@ -1240,8 +1240,8 @@ static OSStatus AddNewRootNode (BTreeControlBlockPtr btreePtr, + Boolean didItFit; + UInt16 keyLength; + +- PanicIf (leftNode == nil, "AddNewRootNode: leftNode == nil"); +- PanicIf (rightNode == nil, "AddNewRootNode: rightNode == nil"); ++ PanicIf (leftNode == NULL, "AddNewRootNode: leftNode == NULL"); ++ PanicIf (rightNode == NULL, "AddNewRootNode: rightNode == NULL"); + + + /////////////////////// Initialize New Root Node //////////////////////////// +@@ -1362,7 +1362,7 @@ static OSStatus SplitRight (BTreeControlBlockPtr btreePtr, + if ( (leftPtr->height == 1) && (leftPtr->kind != kBTLeafNode) ) + return fsBTInvalidNodeErr; + +- if ( rightPtr != nil ) ++ if (rightPtr != NULL) + { + if ( rightPtr->bLink != nodeNum ) + return fsBTInvalidNodeErr; // E_BadSibling ? +@@ -1382,7 +1382,7 @@ static OSStatus SplitRight (BTreeControlBlockPtr btreePtr, + + /////////////// Update backward Link In Original Right Node /////////////////// + +- if ( rightPtr != nil ) ++ if (rightPtr != NULL) + { + rightPtr->bLink = newNodeNum; + err = UpdateNode (btreePtr, rightNodePtr); +@@ -1739,7 +1739,7 @@ static int DoKeyCheck( NodeDescPtr nodeP, BTreeControlBlock *btcb ) + UInt16 keyLength; + KeyPtr keyPtr; + UInt8 *dataPtr; +- KeyPtr prevkeyP = nil; ++ KeyPtr prevkeyP = NULL; + + + if ( nodeP->numRecords == 0 ) +@@ -1766,7 +1766,7 @@ static int DoKeyCheck( NodeDescPtr nodeP, BTreeControlBlock *btcb ) + return( -1 ); + } + +- if ( prevkeyP != nil ) ++ if (prevkeyP != NULL) + { + if ( CompareKeys( (BTreeControlBlockPtr)btcb, prevkeyP, keyPtr ) >= 0 ) + { +diff --git a/fsck_hfs.tproj/dfalib/SControl.c b/fsck_hfs.tproj/dfalib/SControl.c +index 8b03ece..d3145e0 100644 +--- a/fsck_hfs.tproj/dfalib/SControl.c ++++ b/fsck_hfs.tproj/dfalib/SControl.c +@@ -82,7 +82,7 @@ CheckHFS( int fsReadRef, int fsWriteRef, int checkLevel, int repairLevel, + { + SGlob dataArea; // Allocate the scav globals + short temp; +- FileIdentifierTable *fileIdentifierTable = nil; ++ FileIdentifierTable *fileIdentifierTable = NULL; + OSErr err = noErr; + OSErr scavError = 0; + int scanCount = 0; +@@ -228,7 +228,7 @@ DoAgain: + } + + // Set up structures for post processing +- if ( (autoRepair == true) && (dataArea.fileIdentifierTable != nil) ) ++ if ((autoRepair == true) && (dataArea.fileIdentifierTable != NULL)) + { + // *repairInfo = *repairInfo | kVolumeHadOverlappingExtents; // Report back that volume has overlapping extents + fileIdentifierTable = (FileIdentifierTable *) AllocateMemory( GetHandleSize( (Handle) dataArea.fileIdentifierTable ) ); +@@ -239,7 +239,7 @@ DoAgain: + // + // Post processing + // +- if ( fileIdentifierTable != nil ) ++ if (fileIdentifierTable != NULL) + { + DisposeMemory( fileIdentifierTable ); + } +@@ -682,7 +682,7 @@ short CheckForStop( SGlob *GPtr ) + + //if ( ((ticks - 10) > GPtr->lastTickCount) || (dfaStage == kAboutToRepairStage) ) // To reduce cursor flicker on fast machines, call through on a timed interval + //{ +- if ( GPtr->userCancelProc != nil ) ++ if (GPtr->userCancelProc != NULL) + { + UInt64 progress = 0; + Boolean progressChanged; +@@ -761,7 +761,7 @@ static int ScavSetUp( SGlob *GPtr) + short ioRefNum; + #endif + +- GPtr->MinorRepairsP = nil; ++ GPtr->MinorRepairsP = NULL; + + GPtr->itemsProcessed = 0; + GPtr->lastProgress = 0; +@@ -774,7 +774,7 @@ static int ScavSetUp( SGlob *GPtr) + ScavStaticStructures *pointer; + + pointer = (ScavStaticStructures *) AllocateClearMemory( sizeof(ScavStaticStructures) ); +- if ( pointer == nil ) { ++ if (pointer == NULL) { + if ( GPtr->logLevel >= kDebugLog ) { + printf( "\t error %d - could not allocate %i bytes of memory \n", + R_NoMem, sizeof(ScavStaticStructures) ); +@@ -831,7 +831,7 @@ static int ScavSetUp( SGlob *GPtr) + // Save current value of vcbWrCnt, to detect modifications to volume by other apps etc + if ( GPtr->volumeFeatures & volumeIsMountedMask ) + { +- FlushVol( nil, GPtr->realVCB->vcbVRefNum ); // Ask HFS to update all changes to disk ++ FlushVol(NULL, GPtr->realVCB->vcbVRefNum); // Ask HFS to update all changes to disk + GPtr->wrCnt = GPtr->realVCB->vcbWrCnt; // Remember write count after writing changes + } + #endif +@@ -949,7 +949,7 @@ static int ScavSetUp( SGlob *GPtr) + + // Keep a valid file id list for HFS volumes + GPtr->validFilesList = (UInt32**)NewHandle( 0 ); +- if ( GPtr->validFilesList == nil ) { ++ if (GPtr->validFilesList == NULL) { + if ( GPtr->logLevel >= kDebugLog ) { + printf( "\t error %d - could not allocate file ID list \n", R_NoMem ); + } +@@ -995,17 +995,17 @@ static int ScavTerm( SGlobPtr GPtr ) + + (void) BitMapCheckEnd(); + +- while( (rP = GPtr->MinorRepairsP) != nil ) // loop freeing leftover (undone) repair orders ++ while((rP = GPtr->MinorRepairsP) != NULL) // loop freeing leftover (undone) repair orders + { + GPtr->MinorRepairsP = rP->link; // (in case repairs were not made) + DisposeMemory(rP); + err = MemError(); + } + +- if( GPtr->validFilesList != nil ) ++ if (GPtr->validFilesList != NULL) + DisposeHandle( (Handle) GPtr->validFilesList ); + +- if( GPtr->overlappedExtents != nil ) { ++ if (GPtr->overlappedExtents != NULL) { + extentsTableH = GPtr->overlappedExtents; + + /* Overlapped extents list also allocated memory for attribute name */ +@@ -1021,44 +1021,44 @@ static int ScavTerm( SGlobPtr GPtr ) + DisposeHandle( (Handle) GPtr->overlappedExtents ); + } + +- if( GPtr->fileIdentifierTable != nil ) ++ if (GPtr->fileIdentifierTable != NULL) + DisposeHandle( (Handle) GPtr->fileIdentifierTable ); + +- if( GPtr->calculatedVCB == nil ) // already freed? ++ if (GPtr->calculatedVCB == NULL) // already freed? + return( noErr ); + + // If the FCB's and BTCB's have been set up, dispose of them + fcbP = GPtr->calculatedExtentsFCB; // release extent file BTree bit map +- if ( fcbP != nil ) ++ if (fcbP != NULL) + { + btcbP = (BTreeControlBlock*)fcbP->fcbBtree; +- if ( btcbP != nil) ++ if (btcbP != NULL) + { +- if( btcbP->refCon != nil ) ++ if (btcbP->refCon != NULL) + { +- if(((BTreeExtensionsRec*)btcbP->refCon)->BTCBMPtr != nil) ++ if (((BTreeExtensionsRec*)btcbP->refCon)->BTCBMPtr != NULL) + { + DisposeMemory(((BTreeExtensionsRec*)btcbP->refCon)->BTCBMPtr); + err = MemError(); + } + DisposeMemory( (Ptr)btcbP->refCon ); + err = MemError(); +- btcbP->refCon = nil; ++ btcbP->refCon = NULL; + } + + fcbP = GPtr->calculatedCatalogFCB; // release catalog BTree bit map + btcbP = (BTreeControlBlock*)fcbP->fcbBtree; + +- if( btcbP->refCon != nil ) ++ if (btcbP->refCon != NULL) + { +- if(((BTreeExtensionsRec*)btcbP->refCon)->BTCBMPtr != nil) ++ if (((BTreeExtensionsRec*)btcbP->refCon)->BTCBMPtr != NULL) + { + DisposeMemory(((BTreeExtensionsRec*)btcbP->refCon)->BTCBMPtr); + err = MemError(); + } + DisposeMemory( (Ptr)btcbP->refCon ); + err = MemError(); +- btcbP->refCon = nil; ++ btcbP->refCon = NULL; + } + } + } +@@ -1066,7 +1066,7 @@ static int ScavTerm( SGlobPtr GPtr ) + DisposeMemory( GPtr->calculatedVCB ); // Release our block of data structures + err = MemError(); + +- GPtr->calculatedVCB = nil; ++ GPtr->calculatedVCB = NULL; + + return( noErr ); + } +@@ -1113,7 +1113,7 @@ Boolean IsBlueBoxSharedDrive ( DrvQElPtr dqPtr ) + // Now look at the name of the Driver name. If it is .BlueBoxShared keep it out of the list of available disks. + driverDCtlHandle = GetDCtlEntry(dqPtr->dQRefNum); + driverDCtlPtr = *driverDCtlHandle; +- if((((driverDCtlPtr->dCtlFlags) & Is_Native_Mask) == 0) && (driverDCtlPtr->dCtlDriver != nil)) ++ if((((driverDCtlPtr->dCtlFlags) & Is_Native_Mask) == 0) && (driverDCtlPtr->dCtlDriver != NULL)) + { + if (((driverDCtlPtr->dCtlFlags) & Is_Ram_Based_Mask) == 0) + { +@@ -1127,19 +1127,19 @@ Boolean IsBlueBoxSharedDrive ( DrvQElPtr dqPtr ) + + } + driverName = (StringPtr)&(drvrHeaderPtr->drvrName); +- if (!(IdenticalString(driverName,blueBoxSharedDriverName,nil))) ++ if (!(IdenticalString(driverName,blueBoxSharedDriverName,NULL))) + { + return( true ); + } + + // Special case for the ".Sony" floppy driver which might be accessed in Shared mode inside the Blue Box + // Test its "where" string instead of the driver name. +- if (!(IdenticalString(driverName,sonyDriverName,nil))) ++ if (!(IdenticalString(driverName,sonyDriverName,NULL))) + { + CntrlParam paramBlock; + +- paramBlock.ioCompletion = nil; +- paramBlock.ioNamePtr = nil; ++ paramBlock.ioCompletion = NULL; ++ paramBlock.ioNamePtr = NULL; + paramBlock.ioVRefNum = dqPtr->dQDrive; + paramBlock.ioCRefNum = dqPtr->dQRefNum; + paramBlock.csCode = kDriveIcon; // return physical icon +@@ -1152,7 +1152,7 @@ Boolean IsBlueBoxSharedDrive ( DrvQElPtr dqPtr ) + + iconAndStringRecPtr = * (IconAndStringRecPtr*) & paramBlock.csParam; + whereStringPtr = (StringPtr) & iconAndStringRecPtr->string; +- if (!(IdenticalString(whereStringPtr,blueBoxFloppyWhereString,nil))) ++ if (!(IdenticalString(whereStringPtr,blueBoxFloppyWhereString,NULL))) + { + return( true ); + } +diff --git a/fsck_hfs.tproj/dfalib/SRepair.c b/fsck_hfs.tproj/dfalib/SRepair.c +index 89c12d6..b261c37 100644 +--- a/fsck_hfs.tproj/dfalib/SRepair.c ++++ b/fsck_hfs.tproj/dfalib/SRepair.c +@@ -844,7 +844,7 @@ static int DelFThd( SGlobPtr GPtr, UInt32 fid ) // the file ID + + isHFSPlus = VolumeObjectIsHFSPlus( ); + +- BuildCatalogKey( fid, (const CatalogName*) nil, isHFSPlus, &key ); ++ BuildCatalogKey(fid, NULL, isHFSPlus, &key); + result = SearchBTreeRecord( GPtr->calculatedCatalogFCB, &key, kNoHint, &foundKey, &record, &recSize, &hint ); + + if ( result ) return ( IntError( GPtr, result ) ); +@@ -910,7 +910,7 @@ static OSErr FixDirThread( SGlobPtr GPtr, UInt32 did ) // the dir ID + + isHFSPlus = VolumeObjectIsHFSPlus( ); + +- BuildCatalogKey( did, (const CatalogName*) nil, isHFSPlus, &key ); ++ BuildCatalogKey(did, NULL, isHFSPlus, &key); + result = SearchBTreeRecord( GPtr->calculatedCatalogFCB, &key, kNoHint, &foundKey, &record, &recSize, &hint ); + + if ( result ) +@@ -2171,7 +2171,7 @@ static OSErr FixOrphanedFiles ( SGlobPtr GPtr ) + } + + //-- Build the key for the file thread +- BuildCatalogKey( cNodeID, nil, isHFSPlus, &key ); ++ BuildCatalogKey(cNodeID, NULL, isHFSPlus, &key); + + err = SearchBTreeRecord( GPtr->calculatedCatalogFCB, &key, kNoHint, + &tempKey, &threadRecord, &recordSize, &hint2 ); +diff --git a/fsck_hfs.tproj/dfalib/SUtils.c b/fsck_hfs.tproj/dfalib/SUtils.c +index 6e9253e..491afbf 100644 +--- a/fsck_hfs.tproj/dfalib/SUtils.c ++++ b/fsck_hfs.tproj/dfalib/SUtils.c +@@ -395,11 +395,11 @@ OSErr GetVolumeFeatures( SGlobPtr GPtr ) + err = GetVCBDriveNum( &GPtr->realVCB, GPtr->DrvNum ); + ReturnIfError( err ); + +- if ( GPtr->realVCB != nil ) ++ if (GPtr->realVCB != NULL) + { + GPtr->volumeFeatures |= volumeIsMountedMask; + +- pb.ioParam.ioNamePtr = nil; ++ pb.ioParam.ioNamePtr = NULL; + pb.ioParam.ioVRefNum = GPtr->realVCB->vcbVRefNum; + pb.ioParam.ioBuffer = (Ptr) &buffer; + pb.ioParam.ioReqCount = sizeof( buffer ); +@@ -2282,7 +2282,7 @@ void print_prime_buckets(PrimeBuckets *cur); + * 4. btreetye - can be kHFSPlusCatalogRecord or kHFSPlusAttributeRecord + * indicates which btree prime number bucket should be incremented + * +- * Output: nil ++ * Output: NULL + */ + void RecordXAttrBits(SGlobPtr GPtr, UInt16 flags, HFSCatalogNodeID fileid, UInt16 btreetype) + { +diff --git a/fsck_hfs.tproj/dfalib/SVerify1.c b/fsck_hfs.tproj/dfalib/SVerify1.c +index 39bda5c..c33155f 100644 +--- a/fsck_hfs.tproj/dfalib/SVerify1.c ++++ b/fsck_hfs.tproj/dfalib/SVerify1.c +@@ -790,13 +790,13 @@ OSErr CreateExtentsBTreeControlBlock( SGlobPtr GPtr ) + // set up our DFA extended BTCB area. Will we have enough memory on all HFS+ volumes. + // + btcb->refCon = AllocateClearMemory( sizeof(BTreeExtensionsRec) ); // allocate space for our BTCB extensions +- if ( btcb->refCon == nil ) { ++ if (btcb->refCon == NULL) { + err = R_NoMem; + goto exit; + } + size = (btcb->totalNodes + 7) / 8; // size of BTree bit map + ((BTreeExtensionsRec*)btcb->refCon)->BTCBMPtr = AllocateClearMemory(size); // get precleared bitmap +- if ( ((BTreeExtensionsRec*)btcb->refCon)->BTCBMPtr == nil ) ++ if (((BTreeExtensionsRec*)btcb->refCon)->BTCBMPtr == NULL) + { + err = R_NoMem; + goto exit; +@@ -1145,13 +1145,13 @@ OSErr CreateCatalogBTreeControlBlock( SGlobPtr GPtr ) + // + + btcb->refCon = AllocateClearMemory( sizeof(BTreeExtensionsRec) ); // allocate space for our BTCB extensions +- if ( btcb->refCon == nil ) { ++ if (btcb->refCon == NULL) { + err = R_NoMem; + goto exit; + } + size = (btcb->totalNodes + 7) / 8; // size of BTree bit map + ((BTreeExtensionsRec*)btcb->refCon)->BTCBMPtr = AllocateClearMemory(size); // get precleared bitmap +- if ( ((BTreeExtensionsRec*)btcb->refCon)->BTCBMPtr == nil ) ++ if (((BTreeExtensionsRec*)btcb->refCon)->BTCBMPtr == NULL) + { + err = R_NoMem; + goto exit; +@@ -1339,7 +1339,7 @@ OSErr CatHChk( SGlobPtr GPtr ) + + // Can we ignore this part by just taking advantage of setting the selCode = 0x8001; + { +- BuildCatalogKey( 1, (const CatalogName *)nil, isHFSPlus, &key ); ++ BuildCatalogKey(1, NULL, isHFSPlus, &key); + result = SearchBTreeRecord( GPtr->calculatedCatalogFCB, &key, kNoHint, &foundKey, &threadRecord, &recSize, &hint ); + + GPtr->TarBlock = hint; /* set target block */ +@@ -1443,7 +1443,7 @@ OSErr CatHChk( SGlobPtr GPtr ) + /* + * Find thread record + */ +- BuildCatalogKey( dprP->directoryID, (const CatalogName *) nil, isHFSPlus, &key ); ++ BuildCatalogKey(dprP->directoryID, NULL, isHFSPlus, &key); + result = SearchBTreeRecord( GPtr->calculatedCatalogFCB, &key, kNoHint, &foundKey, &threadRecord, &recSize, &hint ); + if ( result != noErr ) { + char idStr[16]; +@@ -1780,26 +1780,26 @@ OSErr CreateAttributesBTreeControlBlock( SGlobPtr GPtr ) + // set up our DFA extended BTCB area. Will we have enough memory on all HFS+ volumes. + // + btcb->refCon = AllocateClearMemory( sizeof(BTreeExtensionsRec) ); // allocate space for our BTCB extensions +- if ( btcb->refCon == nil ) { ++ if (btcb->refCon == NULL) { + err = R_NoMem; + goto exit; + } + + if (btcb->totalNodes == 0) + { +- ((BTreeExtensionsRec*)btcb->refCon)->BTCBMPtr = nil; ++ ((BTreeExtensionsRec*)btcb->refCon)->BTCBMPtr = NULL; + ((BTreeExtensionsRec*)btcb->refCon)->BTCBMSize = 0; + ((BTreeExtensionsRec*)btcb->refCon)->realFreeNodeCount = 0; + } + else + { +- if ( btcb->refCon == nil ) { ++ if (btcb->refCon == NULL) { + err = R_NoMem; + goto exit; + } + size = (btcb->totalNodes + 7) / 8; // size of BTree bit map + ((BTreeExtensionsRec*)btcb->refCon)->BTCBMPtr = AllocateClearMemory(size); // get precleared bitmap +- if ( ((BTreeExtensionsRec*)btcb->refCon)->BTCBMPtr == nil ) ++ if (((BTreeExtensionsRec*)btcb->refCon)->BTCBMPtr == NULL) + { + err = R_NoMem; + goto exit; +@@ -2358,7 +2358,7 @@ static OSErr RcdMDBEmbededVolDescriptionErr( SGlobPtr GPtr, OSErr type, HFSMaste + RcdError( GPtr, type ); // first, record the error + + p = AllocMinorRepairOrder( GPtr, sizeof(EmbededVolDescription) ); // get the node +- if ( p == nil ) return( R_NoMem ); ++ if (p == NULL) return( R_NoMem ); + + p->type = type; // save error info + desc = (EmbededVolDescription *) &(p->name); +@@ -2397,7 +2397,7 @@ static OSErr RcdInvalidWrapperExtents( SGlobPtr GPtr, OSErr type ) + RcdError( GPtr, type ); // first, record the error + + p = AllocMinorRepairOrder( GPtr, 0 ); // get the node +- if ( p == nil ) return( R_NoMem ); ++ if (p == NULL) return( R_NoMem ); + + p->type = type; // save error info + +@@ -3029,7 +3029,7 @@ OSErr CheckFileExtents( SGlobPtr GPtr, UInt32 fileNumber, UInt8 forkType, + foundBadExtent = false; + lastExtentIndex = GPtr->numExtents; + +- while ( (extents != nil) && (err == noErr) ) ++ while ((extents != NULL) && (err == noErr)) + { + // checkout the extent record first + err = ChkExtRec( GPtr, extents, &lastExtentIndex ); +@@ -3105,7 +3105,7 @@ OSErr CheckFileExtents( SGlobPtr GPtr, UInt32 fileNumber, UInt8 forkType, + if ( err == btNotFound ) + { + err = noErr; // no more extent records +- extents = nil; ++ extents = NULL; + break; + } + else if ( err != noErr ) +@@ -3121,7 +3121,7 @@ OSErr CheckFileExtents( SGlobPtr GPtr, UInt32 fileNumber, UInt8 forkType, + if ( err == btNotFound ) + { + err = noErr; // no more extent records +- extents = nil; ++ extents = NULL; + break; + } + else if ( err != noErr ) +@@ -3205,7 +3205,7 @@ static OSErr AddExtentToOverlapList( SGlobPtr GPtr, HFSCatalogNodeID fileNumber, + } + + // If it's uninitialized +- if ( GPtr->overlappedExtents == nil ) ++ if (GPtr->overlappedExtents == NULL) + { + GPtr->overlappedExtents = (ExtentsTable **) NewHandleClear( sizeof(ExtentsTable) ); + extentsTableH = GPtr->overlappedExtents; +diff --git a/fsck_hfs.tproj/dfalib/SVerify2.c b/fsck_hfs.tproj/dfalib/SVerify2.c +index c68f3d8..da1a982 100644 +--- a/fsck_hfs.tproj/dfalib/SVerify2.c ++++ b/fsck_hfs.tproj/dfalib/SVerify2.c +@@ -1013,7 +1013,7 @@ static int BTKeyChk( SGlobPtr GPtr, NodeDescPtr nodeP, BTreeControlBlock *btcb ) + UInt16 keyLength; + KeyPtr keyPtr; + UInt8 *dataPtr; +- KeyPtr prevkeyP = nil; ++ KeyPtr prevkeyP = NULL; + + + if ( nodeP->numRecords == 0 ) +@@ -1044,7 +1044,7 @@ static int BTKeyChk( SGlobPtr GPtr, NodeDescPtr nodeP, BTreeControlBlock *btcb ) + return( E_KeyLen ); + } + +- if ( prevkeyP != nil ) ++ if (prevkeyP != NULL) + { + if ( CompareKeys( (BTreeControlBlockPtr)btcb, prevkeyP, keyPtr ) >= 0 ) + { diff --git a/utils/hfsprogs/patches/0011-Fix-types.patch b/utils/hfsprogs/patches/0011-Fix-types.patch new file mode 100644 index 000000000..88c049fcd --- /dev/null +++ b/utils/hfsprogs/patches/0011-Fix-types.patch @@ -0,0 +1,71 @@ +From: =?UTF-8?q?Rog=C3=A9rio=20Brito?= +Date: Thu, 24 Oct 2013 01:11:22 -0200 +Subject: Fix types + +--- + fsck_hfs.tproj/cache.c | 30 ++++++++++++++++-------------- + 1 file changed, 16 insertions(+), 14 deletions(-) + +diff --git a/fsck_hfs.tproj/cache.c b/fsck_hfs.tproj/cache.c +index 527088a..540fa0b 100644 +--- a/fsck_hfs.tproj/cache.c ++++ b/fsck_hfs.tproj/cache.c +@@ -961,20 +961,21 @@ int CacheLookup (Cache_t *cache, uint64_t off, Tag_t **tag) + */ + int CacheRawRead (Cache_t *cache, uint64_t off, uint32_t len, void *buf) + { +- uint64_t result; ++ off_t result1; ++ ssize_t result2; + + /* Both offset and length must be multiples of the device block size */ + if (off % cache->DevBlockSize) return (EINVAL); + if (len % cache->DevBlockSize) return (EINVAL); + + /* Seek to the position */ +- result = lseek (cache->FD_R, off, SEEK_SET); +- if (result < 0) return (errno); +- if (result != off) return (ENXIO); ++ result1 = lseek(cache->FD_R, off, SEEK_SET); ++ if (result1 < 0) return (errno); ++ if (result1 != off) return (ENXIO); + /* Read into the buffer */ +- result = read (cache->FD_R, buf, len); +- if (result < 0) return (errno); +- if (result == 0) return (ENXIO); ++ result2 = read(cache->FD_R, buf, len); ++ if (result2 < 0) return (errno); ++ if (result2 == 0) return (ENXIO); + + /* Update counters */ + cache->DiskRead++; +@@ -989,21 +990,22 @@ int CacheRawRead (Cache_t *cache, uint64_t off, uint32_t len, void *buf) + */ + int CacheRawWrite (Cache_t *cache, uint64_t off, uint32_t len, void *buf) + { +- uint64_t result; ++ off_t result1; ++ ssize_t result2; + + /* Both offset and length must be multiples of the device block size */ + if (off % cache->DevBlockSize) return (EINVAL); + if (len % cache->DevBlockSize) return (EINVAL); + + /* Seek to the position */ +- result = lseek (cache->FD_W, off, SEEK_SET); +- if (result < 0) return (errno); +- if (result != off) return (ENXIO); ++ result1 = lseek (cache->FD_W, off, SEEK_SET); ++ if (result1 < 0) return (errno); ++ if (result1 != off) return (ENXIO); + + /* Write into the buffer */ +- result = write (cache->FD_W, buf, len); +- if (result < 0) return (errno); +- if (result == 0) return (ENXIO); ++ result2 = write (cache->FD_W, buf, len); ++ if (result2 < 0) return (errno); ++ if (result2 == 0) return (ENXIO); + + /* Update counters */ + cache->DiskWrite++; diff --git a/utils/hfsprogs/patches/0012-Fix-mkfs-not-creating-UUIDs-for-new-filesystems.patch b/utils/hfsprogs/patches/0012-Fix-mkfs-not-creating-UUIDs-for-new-filesystems.patch new file mode 100644 index 000000000..883a7b74f --- /dev/null +++ b/utils/hfsprogs/patches/0012-Fix-mkfs-not-creating-UUIDs-for-new-filesystems.patch @@ -0,0 +1,50 @@ +From: Matthew Garrett +Date: Thu, 24 Oct 2013 01:11:22 -0200 +Subject: Fix mkfs not creating UUIDs for new filesystems. +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Fix mkfs not creating UUIDs for new filesystems. + +Thanks to Lars Noodén for reporting the bug at + . + +This closes LP: #737002. +--- + include/missing.h | 8 +++++++- + 1 file changed, 7 insertions(+), 1 deletion(-) + +diff --git a/include/missing.h b/include/missing.h +index 0a859c4..f50e8fb 100644 +--- a/include/missing.h ++++ b/include/missing.h +@@ -72,7 +72,7 @@ + #define NAME_MAX 255 + + /* Byteswap stuff */ +-#define NXSwapHostLongToBig(x) cpu_to_be64(x) ++#define NXSwapHostLongToBig(x) cpu_to_be32(x) + #define NXSwapBigShortToHost(x) be16_to_cpu(x) + #define OSSwapBigToHostInt16(x) be16_to_cpu(x) + #define NXSwapBigLongToHost(x) be32_to_cpu(x) +@@ -88,6 +88,9 @@ + #ifndef be32_to_cpu + #define be32_to_cpu(x) bswap_32(x) + #endif ++#ifndef cpu_to_be32 ++#define cpu_to_be32(x) bswap_32(x) ++#endif + #ifndef be64_to_cpu + #define be64_to_cpu(x) bswap_64(x) + #endif +@@ -102,6 +105,9 @@ + #ifndef be32_to_cpu + #define be32_to_cpu(x) (x) + #endif ++#ifndef cpu_to_be32 ++#define cpu_to_be32(x) (x) ++#endif + #ifndef be64_to_cpu + #define be64_to_cpu(x) (x) + #endif diff --git a/utils/hfsprogs/patches/0013-Fix-manpages.patch b/utils/hfsprogs/patches/0013-Fix-manpages.patch new file mode 100644 index 000000000..d78083bd0 --- /dev/null +++ b/utils/hfsprogs/patches/0013-Fix-manpages.patch @@ -0,0 +1,157 @@ +From: =?UTF-8?q?Rog=C3=A9rio=20Theodoro=20de=20Brito?= +Date: Thu, 25 Nov 2010 00:00:00 -0200 +Subject: Fix manpages +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Remove typos, references in the "See also" sections of the manpages to +commands that are not available in Debian systems (and, quite probably, +other systems too) and non-Linux specific comments. + +Authored also by Christoph Hellwig and "A. Costa" + +Bug-Debian: http://bugs.debian.org/598714 +Bug-Debian: http://bugs.debian.org/575201 +Forwarded: no +Reviewed-by: Rogério Theodoro de Brito +--- + fsck_hfs.tproj/fsck_hfs.8 | 18 +++++++----------- + newfs_hfs.tproj/newfs_hfs.8 | 23 ++++++++--------------- + 2 files changed, 15 insertions(+), 26 deletions(-) + +diff --git a/fsck_hfs.tproj/fsck_hfs.8 b/fsck_hfs.tproj/fsck_hfs.8 +index aec9949..0bc804d 100644 +--- a/fsck_hfs.tproj/fsck_hfs.8 ++++ b/fsck_hfs.tproj/fsck_hfs.8 +@@ -19,18 +19,18 @@ + .Dt FSCK_HFS 8 + .Os "Mac OS X" + .Sh NAME +-.Nm fsck_hfs ++.Nm fsck.hfs + .Nd HFS file system consistency check + .Sh SYNOPSIS +-.Nm fsck_hfs ++.Nm fsck.hfs + .Fl q + .Op Fl df + .Ar special ... +-.Nm fsck_hfs ++.Nm fsck.hfs + .Fl p + .Op Fl df + .Ar special ... +-.Nm fsck_hfs ++.Nm fsck.hfs + .Op Fl n | y | r + .Op Fl dfgl + .Op Fl m Ar mode +@@ -52,9 +52,7 @@ The second form of + preens the specified file systems. + It is normally started by + .Xr fsck 8 +-run from +-.Pa /etc/rc.boot +-during automatic reboot, when a HFS file system is detected. ++during systen boot, when a HFS file system is detected. + When preening file systems, + .Nm + will fix common inconsistencies for file systems that were not +@@ -105,9 +103,9 @@ to check and repair journaled HFS+ file systems. + .It Fl g + Causes + .Nm +-to generate it's output strings in GUI format. ++to generate its output strings in GUI format. + This option is used when another application with a graphical user interface +-(like Mac OS X Disk Utility) is envoking the ++(like Mac OS X Disk Utility) is invoking the + .Nm + tool. + .It Fl l +@@ -144,8 +142,6 @@ specified file system for a new catalog file and if there is no damage + to the leaf nodes in the existing catalog file. + .El + .Pp +-Because of inconsistencies between the block device and the buffer cache, +-the raw device should always be used. + .Sh SEE ALSO + .Xr fsck 8 + .Sh BUGS +diff --git a/newfs_hfs.tproj/newfs_hfs.8 b/newfs_hfs.tproj/newfs_hfs.8 +index d002cc9..fe91962 100644 +--- a/newfs_hfs.tproj/newfs_hfs.8 ++++ b/newfs_hfs.tproj/newfs_hfs.8 +@@ -19,10 +19,10 @@ + .Dt NEWFS_HFS 8 + .Os "Mac OS X" + .Sh NAME +-.Nm newfs_hfs ++.Nm mkfs.hfs + .Nd construct a new HFS Plus file system + .Sh SYNOPSIS +-.Nm newfs_hfs ++.Nm mkfs.hfs + .Op Fl N Ar [partition-size] + .Op Fl U Ar uid + .Op Fl G Ar gid +@@ -37,19 +37,13 @@ + .Op Fl v Ar volume-name + .Ar special + .Sh DESCRIPTION +-.Nm Newfs_hfs ++.Nm mkfs.hfs + builds an HFS Plus file system on the specified special device. +-Before running +-.Nm newfs_hfs +-the disk should be partitioned using the +-.Em Disk Utility +-application or +-.Xr pdisk 8 . + .Pp + The file system default parameters are calculated based on + the size of the disk partition. Typically the defaults are + reasonable, however +-.Nm newfs_hfs ++.Nm mkfs.hfs + has several options to allow the defaults to be selectively overridden. + The options are as follows: + .Bl -tag -width Fl +@@ -66,7 +60,7 @@ Set the group of the file system's root directory to + Specify the access permissions mask for the file system's root directory. + .It Fl h + Creates a legacy HFS format filesystem. This option +-is not recomended for file systems that will be ++is not recommended for file systems that will be + primarily used with Mac OS X or Darwin. + .It Fl s + Creates a case-sensitive HFS Plus filesystem. By +@@ -93,7 +87,7 @@ sizes are specified with the + option followed by a comma + separated list of the form arg=blocks. + .Pp +-Example: -c c=5000,e=500 ++Example: \-c c=5000,e=500 + .Bl -tag -width Fl + .It Em a=blocks + Set the attribute file clump size. +@@ -126,7 +120,7 @@ the form arg=bytes. The + size must be a power of two and no larger than + 32768 bytes. + .Pp +-Example: -n c=8192,e=4096 ++Example: \-n c=8192,e=4096 + .Bl -tag -width Fl + .It Em a=bytes + Set the attribute b-tree node size. +@@ -139,8 +133,7 @@ Set the extent overflow b-tree node size. + Volume name (file system name) in ascii or UTF-8 format. + .El + .Sh SEE ALSO +-.Xr mount 8 , +-.Xr pdisk 8 ++.Xr mount 8 + .Sh HISTORY + The + .Nm diff --git a/utils/hfsprogs/patches/0014-uClibc_no_loadavg.patch b/utils/hfsprogs/patches/0014-uClibc_no_loadavg.patch new file mode 100644 index 000000000..48649ba59 --- /dev/null +++ b/utils/hfsprogs/patches/0014-uClibc_no_loadavg.patch @@ -0,0 +1,15 @@ +--- diskdev_cmds-332.25/newfs_hfs.tproj/makehfs.c 2015-03-27 21:58:04.163171675 -0700 ++++ hfsprogs-332.25/newfs_hfs.tproj/makehfs.c 2015-03-27 21:56:03.687175020 -0700 +@@ -2119,10 +2119,12 @@ + sysctl(mib, 2, sysctlstring, &datalen, NULL, 0); + SHA1_Update(&context, sysctlstring, datalen); + #endif ++#ifndef __UCLIBC__ + /* The system's load average: */ + datalen = sizeof(sysloadavg); + getloadavg(sysloadavg, 3); + SHA1_Update(&context, &sysloadavg, datalen); ++#endif + + /* The system's VM statistics: */ + #if !LINUX From 304f1a5527de5c11d4fd650734d66ff42f203dd2 Mon Sep 17 00:00:00 2001 From: Maxim Storchak Date: Sat, 28 Mar 2015 14:34:17 +0200 Subject: [PATCH 174/681] wget: update to 1.16.3 Signed-off-by: Maxim Storchak --- net/wget/Makefile | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/net/wget/Makefile b/net/wget/Makefile index e8f71b779..a146a01ef 100644 --- a/net/wget/Makefile +++ b/net/wget/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2007-2014 OpenWrt.org +# Copyright (C) 2007-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=wget -PKG_VERSION:=1.16.2 +PKG_VERSION:=1.16.3 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=@GNU/$(PKG_NAME) -PKG_MD5SUM:=50b67a11971ecc6d142e634e8436fc0f +PKG_MD5SUM:=d2e4455781a70140ae83b54ca594ce21 PKG_MAINTAINER:=Maxim Storchak PKG_LICENSE:=GPL-3.0+ PKG_LICENSE_FILES:=COPYING From 3fcb52b536c617041468a0c97970ac0caa8190d3 Mon Sep 17 00:00:00 2001 From: Maxim Storchak Date: Sat, 28 Mar 2015 14:35:41 +0200 Subject: [PATCH 175/681] haserl: update to 0.9.35 Signed-off-by: Maxim Storchak --- utils/haserl/Makefile | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/utils/haserl/Makefile b/utils/haserl/Makefile index 89cfa4ab5..1d58625e1 100644 --- a/utils/haserl/Makefile +++ b/utils/haserl/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2006-2009 OpenWrt.org +# Copyright (C) 2006-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=haserl -PKG_VERSION:=0.9.34 +PKG_VERSION:=0.9.35 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=@SF/haserl -PKG_MD5SUM:=cae2240f25040c7a0a270c35cf7abda4 +PKG_MD5SUM:=918f0b4f6cec0b438c8b5c78f2989010 PKG_MAINTAINER:=Maxim Storchak PKG_LICENSE:=GPL-2.0 PKG_LICENSE_FILES:=COPYING From 80a613afd0f64f4ef33b42bde20cd6e323b6886c Mon Sep 17 00:00:00 2001 From: Florian Fainelli Date: Fri, 27 Mar 2015 19:43:59 -0700 Subject: [PATCH 176/681] open-plc-utils: bump to 2015-02-23 Update to commit 1f6e7e372b313cf570aa63314037588ed01ec0de ("Add QPSI recommended wording for mac2pw and mac2pwd.") Signed-off-by: Florian Fainelli --- utils/open-plc-utils/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/utils/open-plc-utils/Makefile b/utils/open-plc-utils/Makefile index c7e19f18b..1c8ef9d51 100644 --- a/utils/open-plc-utils/Makefile +++ b/utils/open-plc-utils/Makefile @@ -8,13 +8,13 @@ include $(TOPDIR)/rules.mk PKG_NAME:=open-plc-utils -PKG_VERSION:=2013-01-29 +PKG_VERSION:=2015-02-23 PKG_RELEASE:=$(PKG_SOURCE_VERSION) PKG_SOURCE_PROTO:=git PKG_SOURCE_URL:=git://github.com/qca/open-plc-utils.git PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) -PKG_SOURCE_VERSION:=6beeb6fe6ce2b16b14284c26e1b9220b68044591 +PKG_SOURCE_VERSION:=1f6e7e372b313cf570aa63314037588ed01ec0de PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.gz PKG_MAINTAINER:=Florian Fainelli From 70344eea14fcae6466f924d18725964eb7b5fc54 Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Sun, 29 Mar 2015 06:04:29 +0200 Subject: [PATCH 177/681] transmission: fix build with musl Signed-off-by: Daniel Golle --- .../patches/030-fix-musl-build.patch | 34 +++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 net/transmission/patches/030-fix-musl-build.patch diff --git a/net/transmission/patches/030-fix-musl-build.patch b/net/transmission/patches/030-fix-musl-build.patch new file mode 100644 index 000000000..badf67317 --- /dev/null +++ b/net/transmission/patches/030-fix-musl-build.patch @@ -0,0 +1,34 @@ +Index: transmission-2.84/libtransmission/bitfield.c +=================================================================== +--- transmission-2.84.orig/libtransmission/bitfield.c ++++ transmission-2.84/libtransmission/bitfield.c +@@ -7,6 +7,8 @@ + * $Id: bitfield.c 14302 2014-06-29 01:42:38Z jordan $ + */ + ++#define __NEED_ssize_t ++ + #include + #include /* realloc () */ + #include /* memset */ +@@ -15,6 +17,7 @@ + #include "bitfield.h" + #include "utils.h" /* tr_new0 () */ + ++ + const tr_bitfield TR_BITFIELD_INIT = { NULL, 0, 0, 0, false, false }; + + /**** +Index: transmission-2.84/libtransmission/fdlimit.h +=================================================================== +--- transmission-2.84.orig/libtransmission/fdlimit.h ++++ transmission-2.84/libtransmission/fdlimit.h +@@ -11,6 +11,8 @@ + #error only libtransmission should #include this header. + #endif + ++#define __NEED_off_t ++ + #include "transmission.h" + #include "net.h" + From bf47948dc36f72dc7f4649d2b49ac0520fe45b34 Mon Sep 17 00:00:00 2001 From: Cezary Jackiewicz Date: Sun, 29 Mar 2015 12:35:33 +0200 Subject: [PATCH 178/681] transmission: fix build problem with fallocate64 --- net/transmission/Makefile | 2 +- ...10_libtransmission_fallocate64_eglibc.patch | 18 ++++++++++-------- 2 files changed, 11 insertions(+), 9 deletions(-) diff --git a/net/transmission/Makefile b/net/transmission/Makefile index df74fd566..1facadaf8 100644 --- a/net/transmission/Makefile +++ b/net/transmission/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=transmission PKG_VERSION:=2.84 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=http://download-origin.transmissionbt.com/files/ http://mirrors.m0k.org/transmission/files diff --git a/net/transmission/patches/010_libtransmission_fallocate64_eglibc.patch b/net/transmission/patches/010_libtransmission_fallocate64_eglibc.patch index d4f82fc2c..e46a1ad98 100644 --- a/net/transmission/patches/010_libtransmission_fallocate64_eglibc.patch +++ b/net/transmission/patches/010_libtransmission_fallocate64_eglibc.patch @@ -1,12 +1,14 @@ ---- a/libtransmission/fdlimit.c 2014-07-01 20:08:59.000000000 +0300 -+++ b/libtransmission/fdlimit.c 2014-07-13 13:30:17.000000000 +0300 -@@ -22,7 +22,8 @@ +--- a/libtransmission/fdlimit.c ++++ b/libtransmission/fdlimit.c +@@ -22,11 +22,6 @@ #include #endif - + -#ifdef HAVE_FALLOCATE64 -+/* no need to define fallocate64 in glibc/eglibc case */ -+#if defined(__UCLIBC__) && (HAVE_FALLOCATE64) - /* FIXME can't find the right #include voodoo to pick up the declaration.. */ - extern int fallocate64 (int fd, int mode, uint64_t offset, uint64_t len); +- /* FIXME can't find the right #include voodoo to pick up the declaration.. */ +- extern int fallocate64 (int fd, int mode, uint64_t offset, uint64_t len); +-#endif +- + #ifdef HAVE_XFS_XFS_H + #include #endif From 6f6245b358d4a9717cc450bae3d064eb448e2c59 Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Sun, 29 Mar 2015 16:24:31 +0200 Subject: [PATCH 179/681] dosfstools: fix build with musl Signed-off-by: Daniel Golle --- utils/dosfstools/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/utils/dosfstools/Makefile b/utils/dosfstools/Makefile index f5b2f94d7..41483f2ef 100644 --- a/utils/dosfstools/Makefile +++ b/utils/dosfstools/Makefile @@ -71,7 +71,7 @@ endef define Build/Compile $(MAKE) -C $(PKG_BUILD_DIR) \ $(TARGET_CONFIGURE_OPTS) \ - OPTFLAGS="$(TARGET_CFLAGS) -D_FILE_OFFSET_BITS=64" \ + OPTFLAGS="$(TARGET_CFLAGS) -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE" \ PREFIX="/usr" \ SBINDIR="/usr/sbin" \ LDFLAGS="$(LDFLAGS)" \ From 28e2ca2011c60267318286aad34538ad61206b38 Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Sun, 29 Mar 2015 20:04:55 +0200 Subject: [PATCH 180/681] xl2tpd: fix build with musl Signed-off-by: Daniel Golle --- net/xl2tpd/patches/120-no-bsd-signal-in-musl.patch | 13 +++++++++++++ 1 file changed, 13 insertions(+) create mode 100644 net/xl2tpd/patches/120-no-bsd-signal-in-musl.patch diff --git a/net/xl2tpd/patches/120-no-bsd-signal-in-musl.patch b/net/xl2tpd/patches/120-no-bsd-signal-in-musl.patch new file mode 100644 index 000000000..dba544c0e --- /dev/null +++ b/net/xl2tpd/patches/120-no-bsd-signal-in-musl.patch @@ -0,0 +1,13 @@ +Index: xl2tpd-1.3.6/xl2tpd.c +=================================================================== +--- xl2tpd-1.3.6.orig/xl2tpd.c ++++ xl2tpd-1.3.6/xl2tpd.c +@@ -30,7 +30,7 @@ + #include + #include + #include +-#if (__GLIBC__ < 2) ++#if defined (__GLIBC__) && (__GLIBC__ < 2) + # if defined(FREEBSD) || defined(OPENBSD) + # include + # elif defined(LINUX) From e3a5ea625d1d50beae71d4f06ce5d30f863cb7e8 Mon Sep 17 00:00:00 2001 From: Nikos Mavrogiannopoulos Date: Sun, 29 Mar 2015 08:22:54 +0200 Subject: [PATCH 181/681] openconnect: list the defaultroute option Signed-off-by: Nikos Mavrogiannopoulos --- net/openconnect/README | 1 + 1 file changed, 1 insertion(+) diff --git a/net/openconnect/README b/net/openconnect/README index f6d2f051c..7a55da014 100644 --- a/net/openconnect/README +++ b/net/openconnect/README @@ -12,6 +12,7 @@ config interface 'MYVPN' option serverhash 'AE7FF6A0426F0A0CD0A02EB9EC3C5066FAEB0B25' option token_mode 'rsa' # when built with stoken support option token_secret 'secret' # when built with stoken support + option defaultroute '0' option authgroup 'DEFAULT' The additional files are also used: From 2c19060e0b5127754afb4966547d4365e1dc04fe Mon Sep 17 00:00:00 2001 From: Nikos Mavrogiannopoulos Date: Sun, 29 Mar 2015 21:03:36 +0200 Subject: [PATCH 182/681] libtasn1: updated to 4.4 Signed-off-by: Nikos Mavrogiannopoulos --- libs/libtasn1/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libs/libtasn1/Makefile b/libs/libtasn1/Makefile index fe8a2c254..48763216c 100644 --- a/libs/libtasn1/Makefile +++ b/libs/libtasn1/Makefile @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=libtasn1 -PKG_VERSION:=4.3 +PKG_VERSION:=4.4 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=ftp://ftp.gnu.org/gnu/libtasn1 -PKG_MD5SUM:=67e98988f966a34fbf1b82d33eef9e7e +PKG_MD5SUM:=f3b19cda52dcba5922e8fd79ebe486a81fd91e64 #PKG_FIXUP:=autoreconf PKG_INSTALL:=1 From 2d227ea937919c9b5f84aceda23844e7477679d0 Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Sun, 29 Mar 2015 21:31:26 +0200 Subject: [PATCH 183/681] spawn-fcgi: import from oldpackages also bump version, use new download URL and add myself as maintainer. Signed-off-by: Daniel Golle --- net/spawn-fcgi/Makefile | 42 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 net/spawn-fcgi/Makefile diff --git a/net/spawn-fcgi/Makefile b/net/spawn-fcgi/Makefile new file mode 100644 index 000000000..2e83def7c --- /dev/null +++ b/net/spawn-fcgi/Makefile @@ -0,0 +1,42 @@ +# +# Copyright (C) 2006-2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=spawn-fcgi +PKG_VERSION:=1.6.4 +PKG_RELEASE:=1 + +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz +PKG_SOURCE_URL:=http://download.lighttpd.net/spawn-fcgi/releases-1.6.x/ +PKG_MD5SUM:=a67c098a50cd625fd12adf61b5dd4c32 + +PKG_LICENSE:=BSD-3c +PKG_LICENSE_FILES:=COPYING + +PKG_MAINTAINER:=Daniel Golle + +include $(INCLUDE_DIR)/package.mk + +define Package/spawn-fcgi + SUBMENU:=Web Servers/Proxies + SECTION:=net + CATEGORY:=Network + TITLE:=Tool to spawn fastcgi applications + URL:=http://redmine.lighttpd.net/projects/spawn-fcgi +endef + +define Package/spawn-fcgi/description + spawn-fcgi is used to spawn fastcgi applications +endef + +define Package/spawn-fcgi/install + $(INSTALL_DIR) $(1)/usr/bin + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/spawn-fcgi $(1)/usr/bin/ +endef + +$(eval $(call BuildPackage,spawn-fcgi)) From 53ffbc9dbdbf83fece34aee3b1139f5c422792f0 Mon Sep 17 00:00:00 2001 From: Thomas Heil Date: Mon, 30 Mar 2015 17:48:18 +0200 Subject: [PATCH 184/681] prosody: bump to 0.9.8 - Ensure only valid UTF-8 is passed to libidn. It was found (CVE-2015-2059) that libidn can read beyond the boundaries of the provided buffer when an input string contains invalid UTF-8 sequences. Signed-off-by: Thomas Heil --- net/prosody/Makefile | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/net/prosody/Makefile b/net/prosody/Makefile index a829ce8c2..4ff6d38ad 100644 --- a/net/prosody/Makefile +++ b/net/prosody/Makefile @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=prosody -PKG_VERSION:=0.9.7 -PKG_RELEASE:=2 +PKG_VERSION:=0.9.8 +PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://prosody.im/downloads/source -PKG_MD5SUM:=47de7f593279e327792df78cfa93e8a7 +PKG_MD5SUM:=5144cd832a1860443e21e336dc560ee7 PKG_MAINTAINER:=Thomas Heil PKG_LICENSE:=MIT/X11 From 6db4640fe1e05c652ce29cd537448fe7a5077e42 Mon Sep 17 00:00:00 2001 From: John Crispin Date: Sun, 29 Mar 2015 06:31:51 +0200 Subject: [PATCH 185/681] libtasn1: fix md5sum the SDK builder breaks on this package due to a bad md5sum Signed-off-by: John Crispin --- libs/libtasn1/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libs/libtasn1/Makefile b/libs/libtasn1/Makefile index 48763216c..2b5a2d4b8 100644 --- a/libs/libtasn1/Makefile +++ b/libs/libtasn1/Makefile @@ -13,7 +13,7 @@ PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=ftp://ftp.gnu.org/gnu/libtasn1 -PKG_MD5SUM:=f3b19cda52dcba5922e8fd79ebe486a81fd91e64 +PKG_MD5SUM:=c26d76d1309dd339365c563076599912 #PKG_FIXUP:=autoreconf PKG_INSTALL:=1 From 66644f229eee8da311f215e58752a81334f694ae Mon Sep 17 00:00:00 2001 From: John Crispin Date: Sun, 29 Mar 2015 10:32:41 +0200 Subject: [PATCH 186/681] gdbm: fixes build for gettext 1.9 the package fails to build on SDK builder2 Signed-off-by: John Crispin --- libs/gdbm/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libs/gdbm/Makefile b/libs/gdbm/Makefile index d2c4939bc..21ecfb2dd 100644 --- a/libs/gdbm/Makefile +++ b/libs/gdbm/Makefile @@ -19,7 +19,7 @@ PKG_LICENSE:=GPL-3.0+ PKG_LICENSE_FILES:=COPYING PKG_MAINTAINER:=Marcel Denia -PKG_FIXUP:=autoreconf +PKG_FIXUP:=autoreconf gettext-version PKG_REMOVE_FILES:=Makefile compat/Makefile doc/Makefile export/Makefile src/Makefile tests/Makefile PKG_BUILD_PARALLEL:=0 From 211dc655ed1d0c3f1beae94a10672b9e955378c4 Mon Sep 17 00:00:00 2001 From: John Crispin Date: Sun, 29 Mar 2015 10:37:30 +0200 Subject: [PATCH 187/681] spawn-fcgi: fix install step the makefile trues to copy a file that does not exist Signed-off-by: John Crispin --- net/spawn-fcgi/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/net/spawn-fcgi/Makefile b/net/spawn-fcgi/Makefile index 2e83def7c..54c9ab764 100644 --- a/net/spawn-fcgi/Makefile +++ b/net/spawn-fcgi/Makefile @@ -36,7 +36,7 @@ endef define Package/spawn-fcgi/install $(INSTALL_DIR) $(1)/usr/bin - $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/spawn-fcgi $(1)/usr/bin/ + $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/spawn-fcgi $(1)/usr/bin/ endef $(eval $(call BuildPackage,spawn-fcgi)) From e6825ac677220aaa7ee9d56fe7d0e7fcd2a655f8 Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Sun, 29 Mar 2015 15:47:58 +0200 Subject: [PATCH 188/681] btrfs-progs: bump to 3.19.1 Signed-off-by: Daniel Golle --- utils/btrfs-progs/Makefile | 20 +++--- .../001-fix-xattr-h-include-location.patch | 72 ++++++++++++------- 2 files changed, 56 insertions(+), 36 deletions(-) diff --git a/utils/btrfs-progs/Makefile b/utils/btrfs-progs/Makefile index ea486b9a4..f0d286dca 100644 --- a/utils/btrfs-progs/Makefile +++ b/utils/btrfs-progs/Makefile @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=btrfs-progs -PKG_VERSION:=3.17.3 -PKG_RELEASE:=2 +PKG_VERSION:=3.19.1 +PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-v$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=@KERNEL/linux/kernel/people/kdave/btrfs-progs/ -PKG_MD5SUM:=6716b4b109dd909af63ab3becbad67a6 +PKG_MD5SUM:=ec3b3c99df18633ddc9e41f0680c5a51 PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-v$(PKG_VERSION) PKG_MAINTAINER:=Daniel Golle @@ -24,6 +24,8 @@ PKG_INSTALL:=1 PKG_BUILD_PARALLEL:=1 PKG_BUILD_DEPENDS:=libacl +PKG_FIXUP:=autoreconf + include $(INCLUDE_DIR)/package.mk define Package/btrfs-progs @@ -46,15 +48,9 @@ progs = btrfs btrfsck btrfs-convert btrfs-debug-tree btrfs-find-root \ btrfs-image btrfs-map-logical btrfs-show-super btrfstune \ btrfs-zero-log fsck.btrfs mkfs.btrfs - -MAKE_FLAGS+=\ - CC="$(TARGET_CC)" \ - CFLAGS="$(TARGET_CPPFLAGS) $(TARGET_CFLAGS)" \ - LDFLAGS="$(TARGET_LDFLAGS)" \ - prefix=/usr \ - DESTDIR=$(PKG_INSTALL_DIR) \ - DISABLE_BACKTRACE=1 \ - DISABLE_DOCUMENTATION=1 +CONFIGURE_ARGS += \ + --disable-backtrace \ + --disable-documentation define Package/btrfs-progs/install $(INSTALL_DIR) $(1)/usr/lib diff --git a/utils/btrfs-progs/patches/001-fix-xattr-h-include-location.patch b/utils/btrfs-progs/patches/001-fix-xattr-h-include-location.patch index 0e3216952..aff55855b 100644 --- a/utils/btrfs-progs/patches/001-fix-xattr-h-include-location.patch +++ b/utils/btrfs-progs/patches/001-fix-xattr-h-include-location.patch @@ -1,16 +1,20 @@ ---- a/mkfs.c -+++ b/mkfs.c -@@ -34,7 +34,7 @@ +Index: btrfs-progs-v3.19.1/mkfs.c +=================================================================== +--- btrfs-progs-v3.19.1.orig/mkfs.c ++++ btrfs-progs-v3.19.1/mkfs.c +@@ -31,7 +31,7 @@ #include #include #include -#include +#include + #include + #include #include - #include - #include "ctree.h" ---- a/props.c -+++ b/props.c +Index: btrfs-progs-v3.19.1/props.c +=================================================================== +--- btrfs-progs-v3.19.1.orig/props.c ++++ btrfs-progs-v3.19.1/props.c @@ -17,7 +17,7 @@ #include #include @@ -20,9 +24,11 @@ #include #include ---- a/cmds-receive.c -+++ b/cmds-receive.c -@@ -39,7 +39,7 @@ +Index: btrfs-progs-v3.19.1/cmds-receive.c +=================================================================== +--- btrfs-progs-v3.19.1.orig/cmds-receive.c ++++ btrfs-progs-v3.19.1/cmds-receive.c +@@ -34,7 +34,7 @@ #include #include #include @@ -31,9 +37,11 @@ #include #include "ctree.h" ---- a/cmds-restore.c -+++ b/cmds-restore.c -@@ -34,7 +34,7 @@ +Index: btrfs-progs-v3.19.1/cmds-restore.c +=================================================================== +--- btrfs-progs-v3.19.1.orig/cmds-restore.c ++++ btrfs-progs-v3.19.1/cmds-restore.c +@@ -32,7 +32,7 @@ #include #include #include @@ -42,14 +50,30 @@ #include "ctree.h" #include "disk-io.h" ---- a/Makefile -+++ b/Makefile -@@ -26,7 +26,7 @@ TESTS = fsck-tests.sh convert-tests.sh - INSTALL = install - prefix ?= /usr/local - bindir = $(prefix)/bin --lib_LIBS = -luuid -lblkid -lm -lz -llzo2 -L. -+lib_LIBS = -lattr -luuid -lblkid -lm -lz -llzo2 -L. - libdir ?= $(prefix)/lib - incdir = $(prefix)/include/btrfs - LIBS = $(lib_LIBS) $(libs_static) +Index: btrfs-progs-v3.19.1/Makefile.in +=================================================================== +--- btrfs-progs-v3.19.1.orig/Makefile.in ++++ btrfs-progs-v3.19.1/Makefile.in +@@ -21,7 +21,7 @@ CFLAGS = @CFLAGS@ \ + LDFLAGS = @LDFLAGS@ \ + -rdynamic + +-LIBS = @UUID_LIBS@ @BLKID_LIBS@ @ZLIB_LIBS@ @LZO2_LIBS@ -L. -pthread ++LIBS = @ATTR_LIBS@ @UUID_LIBS@ @BLKID_LIBS@ @ZLIB_LIBS@ @LZO2_LIBS@ -L. -pthread + LIBBTRFS_LIBS = $(LIBS) + + # Static compilation flags +Index: btrfs-progs-v3.19.1/configure.ac +=================================================================== +--- btrfs-progs-v3.19.1.orig/configure.ac ++++ btrfs-progs-v3.19.1/configure.ac +@@ -115,6 +115,9 @@ dnl + dnl The default PKG_CHECK_MODULES() action-if-not-found is end the + dnl execution with error. The static libs are optional. + ++PKG_CHECK_MODULES(ATTR, [libattr]) ++PKG_STATIC(BLKID_LIBS_STATIC, [libattr]) ++ + PKG_CHECK_MODULES(BLKID, [blkid]) + PKG_STATIC(BLKID_LIBS_STATIC, [blkid]) + From 8f76aa4626f34dd1955f192213b26fd4ad8e4a92 Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Sun, 29 Mar 2015 19:28:41 +0200 Subject: [PATCH 189/681] ntfs-3g: fix build with musl when using internal libfuse Signed-off-by: Daniel Golle --- ...001-fuseint-fix-path-mounted-on-musl.patch | 30 +++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 utils/ntfs-3g/patches/001-fuseint-fix-path-mounted-on-musl.patch diff --git a/utils/ntfs-3g/patches/001-fuseint-fix-path-mounted-on-musl.patch b/utils/ntfs-3g/patches/001-fuseint-fix-path-mounted-on-musl.patch new file mode 100644 index 000000000..577c89bf2 --- /dev/null +++ b/utils/ntfs-3g/patches/001-fuseint-fix-path-mounted-on-musl.patch @@ -0,0 +1,30 @@ +Index: ntfs-3g-2014.2.15-1-fuseint/libfuse-lite/fusermount.c +=================================================================== +--- ntfs-3g-2014.2.15-1-fuseint.orig/libfuse-lite/fusermount.c ++++ ntfs-3g-2014.2.15-1-fuseint/libfuse-lite/fusermount.c +@@ -36,6 +36,10 @@ + + #define FUSE_DEV_NEW "/dev/fuse" + ++#ifndef _PATH_MOUNTED ++#define _PATH_MOUNTED "/proc/mounts" ++#endif ++ + #ifndef MS_DIRSYNC + #define MS_DIRSYNC 128 + #endif +Index: ntfs-3g-2014.2.15-1-fuseint/libfuse-lite/mount_util.c +=================================================================== +--- ntfs-3g-2014.2.15-1-fuseint.orig/libfuse-lite/mount_util.c ++++ ntfs-3g-2014.2.15-1-fuseint/libfuse-lite/mount_util.c +@@ -255,6 +255,10 @@ int fuse_mnt_check_fuseblk(void) + + #else /* __SOLARIS__ */ + ++#ifndef _PATH_MOUNTED ++#define _PATH_MOUNTED "/proc/mounts" ++#endif /* _PATH_MOUNTED */ ++ + static int mtab_needs_update(const char *mnt) + { + int res; From 71c375ecd1e5a0deec265aeb5a243646fb70be4e Mon Sep 17 00:00:00 2001 From: Steven Barth Date: Tue, 31 Mar 2015 17:31:06 +0200 Subject: [PATCH 190/681] Revert "new package: noip" --- net/noip/Makefile | 59 -------------------- net/noip/files/etc/init.d/noip | 17 ------ net/noip/files/etc/no-ip2.conf | 2 - net/noip/patches/001-Makefile-DESTDIR.patch | 13 ----- net/noip/patches/002-Makefile-dont-run.patch | 14 ----- 5 files changed, 105 deletions(-) delete mode 100644 net/noip/Makefile delete mode 100755 net/noip/files/etc/init.d/noip delete mode 100644 net/noip/files/etc/no-ip2.conf delete mode 100644 net/noip/patches/001-Makefile-DESTDIR.patch delete mode 100644 net/noip/patches/002-Makefile-dont-run.patch diff --git a/net/noip/Makefile b/net/noip/Makefile deleted file mode 100644 index c2b6aa381..000000000 --- a/net/noip/Makefile +++ /dev/null @@ -1,59 +0,0 @@ -# -# Copyright (C) 2015 OpenWrt.org -# -# This is free software, licensed under the GNU General Public License v2. -# See /LICENSE for more information. -# - -include $(TOPDIR)/rules.mk - -PKG_NAME:=noip -PKG_REV:=1 -PKG_VERSION:=2.1.9-1 -PKG_RELEASE:=1 - -PKG_SOURCE:=noip-duc-linux.tar.gz -PKG_SOURCE_URL=http://www.noip.com/client/linux/ -PKG_MD5SUM:=3b0f5f2ff8637c73ab337be403252a60 -PKG_MAINTAINER:="Lawrence D'Anna " - -PKG_LICENSE:=GPLv2 -PKG_LICENSE_FILES:=COPYING - -PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION) - -include $(INCLUDE_DIR)/package.mk - -define Package/noip - SECTION:=net - CATEGORY:=Network - DEPENDS:= - TITLE:=noip.com client - URL:=http://noip.com -endef - -define Package/noip/description - This is the ip address update client for noip.com -endef - -define Build/Configure -endef - -define Build/Compile - $(MAKE) -C $(PKG_BUILD_DIR) \ - PREFIX="" \ - DESTDIR="$(PKG_INSTALL_DIR)" \ - BINDIR="$(PKG_INSTALL_DIR)/usr/bin" \ - CFLAGS="$(TARGET_CFLAGS)" \ - CC="$(TARGET_CC) $(TARGET_CFLAGS)" -O $(TARGET_CPPFLAGS) \ - LD="$(TARGET_CC) $(TARGET_LDFLAGS)" \ - install -endef - -define Package/noip/install - $(INSTALL_DIR) $(1)/usr/bin/ - $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/* $(1)/usr/bin/ - $(CP) ./files/* $(1)/ -endef - -$(eval $(call BuildPackage,noip)) diff --git a/net/noip/files/etc/init.d/noip b/net/noip/files/etc/init.d/noip deleted file mode 100755 index e08583f4a..000000000 --- a/net/noip/files/etc/init.d/noip +++ /dev/null @@ -1,17 +0,0 @@ -#!/bin/sh /etc/rc.common -START=99 - -BIN=noip2 - -start() { - $BIN -} - -stop() { - $BIN -K `pgrep $BIN` -} - -reload() { - stop - start -} diff --git a/net/noip/files/etc/no-ip2.conf b/net/noip/files/etc/no-ip2.conf deleted file mode 100644 index e70f3d638..000000000 --- a/net/noip/files/etc/no-ip2.conf +++ /dev/null @@ -1,2 +0,0 @@ -# run this to autoconfigure: -# noip2 -C -c /etc/no-ip2.conf diff --git a/net/noip/patches/001-Makefile-DESTDIR.patch b/net/noip/patches/001-Makefile-DESTDIR.patch deleted file mode 100644 index 349d56148..000000000 --- a/net/noip/patches/001-Makefile-DESTDIR.patch +++ /dev/null @@ -1,13 +0,0 @@ ---- a/Makefile -+++ b/Makefile -@@ -3,8 +3,8 @@ CC=gcc - PKG=noip-2.1.tgz - - PREFIX=/usr/local --CONFDIR=${PREFIX}/etc --BINDIR=${PREFIX}/bin -+CONFDIR=${DESTDIR}/${PREFIX}/etc -+BINDIR=${DESTDIR}/${PREFIX}/bin - - # these defines are for Linux - LIBS= diff --git a/net/noip/patches/002-Makefile-dont-run.patch b/net/noip/patches/002-Makefile-dont-run.patch deleted file mode 100644 index 88602aa72..000000000 --- a/net/noip/patches/002-Makefile-dont-run.patch +++ /dev/null @@ -1,14 +0,0 @@ ---- a/Makefile -+++ b/Makefile -@@ -28,8 +28,9 @@ install: ${TGT} - if [ ! -d ${BINDIR} ]; then mkdir -p ${BINDIR};fi - if [ ! -d ${CONFDIR} ]; then mkdir -p ${CONFDIR};fi - cp ${TGT} ${BINDIR}/${TGT} -- ${BINDIR}/${TGT} -C -c /tmp/no-ip2.conf -- mv /tmp/no-ip2.conf ${CONFDIR}/no-ip2.conf -+ echo "# run this to autoconfigure:" >no-ip2.conf -+ echo "# ${TGT} -C -c /etc/no-ip2.conf " >>no-ip2.conf -+ mv no-ip2.conf ${CONFDIR}/no-ip2.conf - - package: ${TGT} - rm -f *.bak From 455b2dc3888d048d758571fad3a3684590fb9d8e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=81lvaro=20Fern=C3=A1ndez=20Rojas?= Date: Tue, 31 Mar 2015 19:25:42 +0200 Subject: [PATCH 191/681] unrar: update to v5.2.7 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Álvaro Fernández Rojas --- utils/unrar/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/utils/unrar/Makefile b/utils/unrar/Makefile index dc13abcfe..bcabfc567 100644 --- a/utils/unrar/Makefile +++ b/utils/unrar/Makefile @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=unrar -PKG_VERSION:=5.2.6 +PKG_VERSION:=5.2.7 PKG_RELEASE:=1 PKG_SOURCE:=unrarsrc-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://www.rarlab.com/rar -PKG_MD5SUM:=86736fdc652dcbedddac6ac1dff3115a +PKG_MD5SUM:=0c145e1ac47d428553123462c0740279 PKG_MAINTAINER:=Álvaro Fernández Rojas PKG_LICENSE:=UnRAR From 60bdade49c4e154418fb1d86147a59a161c25f44 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=81lvaro=20Fern=C3=A1ndez=20Rojas?= Date: Tue, 31 Mar 2015 19:27:16 +0200 Subject: [PATCH 192/681] libxerces-c: update to latest version, clean configure and fix iconv dependencies MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Álvaro Fernández Rojas --- libs/libxerces-c/Makefile | 22 +++++----------------- 1 file changed, 5 insertions(+), 17 deletions(-) diff --git a/libs/libxerces-c/Makefile b/libs/libxerces-c/Makefile index c2dd09727..e892084ea 100644 --- a/libs/libxerces-c/Makefile +++ b/libs/libxerces-c/Makefile @@ -8,13 +8,13 @@ include $(TOPDIR)/rules.mk PKG_NAME:=libxerces-c -PKG_VERSION:=3.1.1 +PKG_VERSION:=3.1.2 PKG_RELEASE:=1 PKG_SOURCE_PROTO:=git PKG_SOURCE_URL:=git://git.apache.org/xerces-c.git PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) -PKG_SOURCE_VERSION:=Xerces-C_3_1_1 +PKG_SOURCE_VERSION:=Xerces-C_3_1_2 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_MAINTAINER:=Álvaro Fernández Rojas @@ -22,10 +22,11 @@ PKG_LICENSE:=Apache-2.0 PKG_LICENSE_FILES:=LICENSE PKG_BUILD_PARALLEL:=1 -PKG_FIXUP:=libtool +PKG_FIXUP:=autoreconf PKG_INSTALL:=1 include $(INCLUDE_DIR)/uclibc++.mk +include $(INCLUDE_DIR)/nls.mk include $(INCLUDE_DIR)/package.mk CONFIGURE_ARGS += \ @@ -34,14 +35,7 @@ CONFIGURE_ARGS += \ --enable-netaccessor-socket \ --enable-msgloader-inmemory -TARGET_CFLAGS += \ - -I$(STAGING_DIR)/usr/lib/libiconv-full/include - -TARGET_CPPFLAGS += \ - -I$(STAGING_DIR)/usr/lib/libiconv-full/include - TARGET_LDFLAGS += \ - -L$(STAGING_DIR)/usr/lib/libiconv-full/lib \ -lm define Package/libxerces-c @@ -49,7 +43,7 @@ define Package/libxerces-c CATEGORY:=Libraries TITLE:=Validating XML parser library for C++ URL:=http://xerces.apache.org/ - DEPENDS:=$(CXX_DEPENDS) +libc +libiconv +libpthread + DEPENDS:=$(CXX_DEPENDS) $(ICONV_DEPENDS) +libc +libpthread endef define Package/libxerces-c-samples @@ -60,12 +54,6 @@ define Package/libxerces-c-samples DEPENDS:=+libxerces-c endef -define Build/Configure - (cd $(PKG_BUILD_DIR)/$(CONFIGURE_PATH); \ - ./reconf;) - $(call Build/Configure/Default) -endef - define Package/libxerces-c/description Xerces-C++ is a validating XML parser written in a portable subset of C++. Xerces-C++ makes it easy to give your application the ability From 50a0136a693f0f7f72f73c27e3f43ca3bb55d6b0 Mon Sep 17 00:00:00 2001 From: Vladimir Ulrich Date: Tue, 31 Mar 2015 20:51:37 +0300 Subject: [PATCH 193/681] [libs/fftw3] Moved from oldpackages and updated to a most recent version. Signed-off-by: Vladimir Ulrich --- libs/fftw3/Makefile | 119 ++++++++++++++++++++++++++ libs/fftw3/patches/001-makefile.patch | 20 +++++ 2 files changed, 139 insertions(+) create mode 100644 libs/fftw3/Makefile create mode 100644 libs/fftw3/patches/001-makefile.patch diff --git a/libs/fftw3/Makefile b/libs/fftw3/Makefile new file mode 100644 index 000000000..7d31b7381 --- /dev/null +++ b/libs/fftw3/Makefile @@ -0,0 +1,119 @@ +# +# Copyright (C) 2007-2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=fftw3 +PKG_VERSION:=3.3.4 +PKG_RELEASE:=1 +PKG_LICENSE:=GPL-2.0+ + +PKG_SOURCE:=fftw-$(PKG_VERSION).tar.gz +PKG_SOURCE_URL:=http://www.fftw.org +PKG_MD5SUM:=2edab8c06b24feeb3b82bbb3ebf3e7b3 + +PKG_BUILD_DIR=$(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/fftw-$(PKG_VERSION) +PKG_FIXUP:=autoreconf + +include $(INCLUDE_DIR)/package.mk + +define Package/fftw3 + SECTION:=libs + CATEGORY:=Libraries + DEPENDS:=@!avr32 +libpthread + VARIANT:=double + TITLE:=Fast Fourier transform library + URL:=http://www.fftw.org/ + MAINTAINER:=Vladimir Ulrich +endef + +define Package/fftw3f + $(call Package/fftw3) + VARIANT:=single + TITLE+= (single precision) +endef + +define Package/fftw3l + $(call Package/fftw3) + DEPENDS:=@BROKEN + VARIANT:=long-double + TITLE+= (long-double precision) +endef + +define Package/fftw3/description + FFTW is a collection of fast C routines for computing the + Discrete Fourier Transform in one or more dimensions. It + includes complex, real, and parallel transforms, and can + handle arbitrary array sizes efficiently. +endef + +define Package/fftw3f/description + $(call Package/fftw3/description) + + This package contains the single precision library. +endef + +define Package/fftw3l/description + $(call Package/fftw3/description) + + This package contains the long-double precision library. +endef + +TARGET_CFLAGS += $(FPIC) + +CONFIGURE_ARGS += \ + --prefix=/usr \ + --without-libiconv-prefix \ + --without-libintl-prefix \ + --enable-shared \ + --enable-threads \ + --enable-type-prefix \ + --disable-debug \ + --disable-fortran + +ifeq ($(BUILD_VARIANT), single) +CONFIGURE_ARGS += \ + --enable-single +endif + +ifeq ($(BUILD_VARIANT), long-double) +CONFIGURE_ARGS += \ + --enable-long-double +endif + +define Build/Compile + $(MAKE) -C $(PKG_BUILD_DIR) DESTDIR="$(PKG_INSTALL_DIR)" install +endef + +define Build/InstallDev + $(INSTALL_DIR) $(1)/usr/include + $(CP) $(PKG_INSTALL_DIR)/usr/include/fftw3.h $(1)/usr/include + $(INSTALL_DIR) $(1)/usr/lib + $(CP) $(PKG_INSTALL_DIR)/usr/lib/libfftw3*.{a,la} $(1)/usr/lib + $(CP) $(PKG_INSTALL_DIR)/usr/lib/libfftw3*.so* $(1)/usr/lib + $(INSTALL_DIR) $(1)/usr/lib/pkgconfig + $(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/* $(1)/usr/lib/pkgconfig/ +endef + +define Package/fftw3/install + $(INSTALL_DIR) $(1)/usr/lib + $(CP) $(PKG_INSTALL_DIR)/usr/lib/libfftw3.so* $(1)/usr/lib/ +endef + +define Package/fftw3f/install + $(INSTALL_DIR) $(1)/usr/lib + $(CP) $(PKG_INSTALL_DIR)/usr/lib/libfftw3f.so* $(1)/usr/lib/ +endef + +define Package/fftw3l/install + $(INSTALL_DIR) $(1)/usr/lib + $(CP) $(PKG_INSTALL_DIR)/usr/lib/libfftw3l.so* $(1)/usr/lib/ +endef + +$(eval $(call BuildPackage,fftw3)) +$(eval $(call BuildPackage,fftw3f)) +$(eval $(call BuildPackage,fftw3l)) diff --git a/libs/fftw3/patches/001-makefile.patch b/libs/fftw3/patches/001-makefile.patch new file mode 100644 index 000000000..c5dd8571f --- /dev/null +++ b/libs/fftw3/patches/001-makefile.patch @@ -0,0 +1,20 @@ +--- a/Makefile.in ++++ b/Makefile.in +@@ -232,7 +232,7 @@ + CTAGS = ctags + CSCOPE = cscope + DIST_SUBDIRS = support genfft kernel simd-support dft rdft reodft api \ +- libbench2 . threads tests mpi doc tools m4 ++ libbench2 . threads mpi doc tools m4 + DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) + distdir = $(PACKAGE)-$(VERSION) + top_distdir = $(distdir) +@@ -444,7 +444,7 @@ + # + @COMBINED_THREADS_TRUE@CHICKEN_EGG = threads . + SUBDIRS = support $(GENFFT) kernel simd-support dft rdft reodft api \ +-libbench2 $(CHICKEN_EGG) tests mpi doc tools m4 ++libbench2 $(CHICKEN_EGG) mpi m4 + + EXTRA_DIST = COPYRIGHT bootstrap.sh CONVENTIONS fftw.pc.in + SIMD_LIBS = \ From b80bba0d9f51a133ba3b612a787acf1b7ee4756d Mon Sep 17 00:00:00 2001 From: Othmar Truniger Date: Tue, 31 Mar 2015 21:13:08 +0200 Subject: [PATCH 194/681] knxd: fix dependency in makefile Signed-off-by: Othmar Truniger --- net/knxd/Makefile | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/net/knxd/Makefile b/net/knxd/Makefile index a140aece9..b9ce06d8b 100644 --- a/net/knxd/Makefile +++ b/net/knxd/Makefile @@ -11,7 +11,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=knxd -PKG_VERSION=2015-03-17-$(PKG_SOURCE_VERSION) +PKG_VERSION=2015-03-31-$(PKG_SOURCE_VERSION) PKG_RELEASE:=1 PKG_SOURCE_PROTO:=git @@ -27,6 +27,7 @@ PKG_LICENSE_FILES:=LICENSE PKG_BUILD_PARALLEL:=1 PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME) +PKG_BUILD_DEPENDS:=argp-standalone PKG_FIXUP:=autoreconf PKG_INSTALL:=1 @@ -37,7 +38,7 @@ define Package/knxd SECTION:=net CATEGORY:=Network TITLE:=EIB KNX daemon - DEPENDS:=+pthsem +argp-standalone +libusb-1.0 + DEPENDS:=+pthsem +libusb-1.0 endef define Package/knxd/description From c05e66c65e300b5cd357eedb3a6c2ca53787af6e Mon Sep 17 00:00:00 2001 From: Ted Hess Date: Tue, 31 Mar 2015 12:32:39 -0400 Subject: [PATCH 195/681] wavemon: Fetch source from GitHub repository Closes #1099 Closes #1103 Signed-off-by: Ted Hess Signed-off-by: Jonathan McCrohan --- net/wavemon/Makefile | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/net/wavemon/Makefile b/net/wavemon/Makefile index c13262201..feb197dfc 100644 --- a/net/wavemon/Makefile +++ b/net/wavemon/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2008-2014 OpenWrt.org +# Copyright (C) 2008-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -9,14 +9,16 @@ include $(TOPDIR)/rules.mk PKG_NAME:=wavemon PKG_VERSION:=0.7.6 -PKG_RELEASE:=1 +PKG_RELEASE:=2 -PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 -PKG_SOURCE_URL:=http://eden-feed.erg.abdn.ac.uk/wavemon/stable-releases -PKG_MD5SUM:=c60e25feb8b1785cf14371556f0613f4 +PKG_SOURCE:=v$(PKG_VERSION).tar.gz +PKG_SOURCE_URL:=https://github.com/uoaerg/wavemon/archive +PKG_MD5SUM:=cd0049f174745d32b4fdf3b63d897bad PKG_LICENSE:=GPL-2.0+ PKG_LICENSE_FILES:=COPYING +PKG_MAINTAINER:=Jonathan McCrohan +PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION) PKG_INSTALL:=1 include $(INCLUDE_DIR)/package.mk @@ -24,11 +26,10 @@ include $(INCLUDE_DIR)/package.mk define Package/wavemon SECTION:=net CATEGORY:=Network - PKG_MAINTAINER:=Jonathan McCrohan TITLE:=N-curses based wireless network devices monitor DEPENDS:=+libncurses +libpthread SUBMENU:=wireless - URL:=http://eden-feed.erg.abdn.ac.uk/wavemon/ + URL:=https://github.com/uoaerg/wavemon/releases endef define Package/wavemon/description @@ -48,7 +49,7 @@ MAKE_FLAGS += \ define Package/wavemon/install $(INSTALL_DIR) $(1)/usr/bin - $(CP) $(PKG_INSTALL_DIR)/usr/bin/wavemon $(1)/usr/bin/ + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/wavemon $(1)/usr/bin/ endef $(eval $(call BuildPackage,wavemon)) From 5d6501b3652b3b74eefcb70de4cbfdf169bf12e4 Mon Sep 17 00:00:00 2001 From: Nicolas Thill Date: Wed, 1 Apr 2015 06:39:51 +0200 Subject: [PATCH 196/681] bluez: update to 5.29 Signed-off-by: Nicolas Thill --- utils/bluez/Makefile | 4 ++-- utils/bluez/patches/201-readline.patch | 15 ++++++++++++--- 2 files changed, 14 insertions(+), 5 deletions(-) diff --git a/utils/bluez/Makefile b/utils/bluez/Makefile index 550df30c1..40439d1a3 100644 --- a/utils/bluez/Makefile +++ b/utils/bluez/Makefile @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=bluez -PKG_VERSION:=5.28 +PKG_VERSION:=5.29 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=http://www.kernel.org/pub/linux/bluetooth/ -PKG_MD5SUM:=bc20a8285530758c68f6a60e4ca62a15 +PKG_MD5SUM:=aa9dc91689695a486c78c131cd68673e PKG_LICENSE:=GPL-2.0+ PKG_LICENSE_FILES:=COPYING diff --git a/utils/bluez/patches/201-readline.patch b/utils/bluez/patches/201-readline.patch index 9d5bec016..58396dcb0 100644 --- a/utils/bluez/patches/201-readline.patch +++ b/utils/bluez/patches/201-readline.patch @@ -1,6 +1,6 @@ --- a/Makefile.in +++ b/Makefile.in -@@ -2038,7 +2038,7 @@ unit_tests = $(am__append_32) unit/test- +@@ -2055,7 +2055,7 @@ unit_tests = $(am__append_32) unit/test- @CLIENT_TRUE@ monitor/uuid.h monitor/uuid.c @CLIENT_TRUE@client_bluetoothctl_LDADD = gdbus/libgdbus-internal.la @GLIB_LIBS@ @DBUS_LIBS@ \ @@ -9,7 +9,16 @@ @MONITOR_TRUE@monitor_btmon_SOURCES = monitor/main.c monitor/bt.h \ @MONITOR_TRUE@ monitor/display.h monitor/display.c \ -@@ -2245,13 +2245,13 @@ unit_tests = $(am__append_32) unit/test- +@@ -2226,7 +2226,7 @@ unit_tests = $(am__append_32) unit/test- + @EXPERIMENTAL_TRUE@tools_hcieventmask_LDADD = lib/libbluetooth-internal.la + @EXPERIMENTAL_TRUE@tools_btmgmt_SOURCES = tools/btmgmt.c src/uuid-helper.c client/display.c + @EXPERIMENTAL_TRUE@tools_btmgmt_LDADD = lib/libbluetooth-internal.la src/libshared-mainloop.la \ +-@EXPERIMENTAL_TRUE@ -lreadline ++@EXPERIMENTAL_TRUE@ -lreadline -lncurses + + @EXPERIMENTAL_TRUE@tools_btinfo_SOURCES = tools/btinfo.c monitor/bt.h + @EXPERIMENTAL_TRUE@tools_btinfo_LDADD = src/libshared-mainloop.la +@@ -2266,13 +2266,13 @@ unit_tests = $(am__append_32) unit/test- @READLINE_TRUE@ client/display.h @READLINE_TRUE@attrib_gatttool_LDADD = lib/libbluetooth-internal.la \ @@ -25,7 +34,7 @@ @READLINE_TRUE@tools_obex_server_tool_SOURCES = $(gobex_sources) $(btio_sources) \ @READLINE_TRUE@ tools/obex-server-tool.c -@@ -2261,13 +2261,13 @@ unit_tests = $(am__append_32) unit/test- +@@ -2282,13 +2282,13 @@ unit_tests = $(am__append_32) unit/test- @READLINE_TRUE@ client/display.h client/display.c @READLINE_TRUE@tools_bluetooth_player_LDADD = gdbus/libgdbus-internal.la \ From d63fe412a08c24c9978a3491bd2670abc7b3f3e3 Mon Sep 17 00:00:00 2001 From: Nicolas Thill Date: Wed, 1 Apr 2015 06:41:02 +0200 Subject: [PATCH 197/681] bluez: remove old conffiles entries Signed-off-by: Nicolas Thill --- utils/bluez/Makefile | 2 -- 1 file changed, 2 deletions(-) diff --git a/utils/bluez/Makefile b/utils/bluez/Makefile index 40439d1a3..8e394e351 100644 --- a/utils/bluez/Makefile +++ b/utils/bluez/Makefile @@ -46,8 +46,6 @@ $(call Package/bluez/Default) endef define Package/bluez-utils/conffiles -/etc/bluetooth/hcid.conf -/etc/bluetooth/rfcomm.conf /etc/config/bluetooth endef From a98b4459873c3d2c42f2d769ca6c7794e3af6138 Mon Sep 17 00:00:00 2001 From: Gergely Kiss Date: Wed, 1 Apr 2015 20:47:43 +0200 Subject: [PATCH 198/681] vala: update to 0.28.0 Signed-off-by: Gergely Kiss --- lang/vala/Makefile | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/lang/vala/Makefile b/lang/vala/Makefile index ff462a952..c8b9c1b58 100644 --- a/lang/vala/Makefile +++ b/lang/vala/Makefile @@ -8,13 +8,13 @@ include $(TOPDIR)/rules.mk PKG_NAME:=vala -PKG_VERSION:=0.27.1 +PKG_VERSION:=0.28.0 PKG_RELEASE:=1 PKG_LICENSE:=LGPL-2.1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz -PKG_SOURCE_URL:=@GNOME/vala/0.27/ -PKG_MD5SUM:=27302efb557d4a6bf634eb6444d90be8 +PKG_SOURCE_URL:=@GNOME/vala/0.28/ +PKG_MD5SUM:=8d4ceac3451a0d5497e7be38e5e4c2ad PKG_BUILD_DEPENDS:=glib2 glib2/host vala/host HOST_BUILD_DEPENDS:=glib2/host From fc81d14100b8eb2a0f42e4ab223de267e6659b9c Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Sun, 29 Mar 2015 19:03:12 +0200 Subject: [PATCH 199/681] lvm2: bump version Signed-off-by: Daniel Golle --- utils/lvm2/Makefile | 4 ++-- utils/lvm2/patches/001-include_fix.patch | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/utils/lvm2/Makefile b/utils/lvm2/Makefile index 7bd096f1a..3e4361b55 100644 --- a/utils/lvm2/Makefile +++ b/utils/lvm2/Makefile @@ -9,13 +9,13 @@ include $(TOPDIR)/rules.mk PKG_NAME:=LVM2 -PKG_VERSION:=2.02.117 +PKG_VERSION:=2.02.118 PKG_RELEASE:=1 PKG_LICENSE:=GPL-2.0 LGPL-2.1 PKG_SOURCE:=$(PKG_NAME).$(PKG_VERSION).tgz PKG_SOURCE_URL:=ftp://sources.redhat.com/pub/lvm2 -PKG_MD5SUM:=ab5889dae7924b44ed2444161058a419 +PKG_MD5SUM:=27f028974e8f067a9791d685b4e0fa90 PKG_MAINTAINER:=Daniel Golle PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME).$(PKG_VERSION) diff --git a/utils/lvm2/patches/001-include_fix.patch b/utils/lvm2/patches/001-include_fix.patch index dc159c552..09d2db962 100644 --- a/utils/lvm2/patches/001-include_fix.patch +++ b/utils/lvm2/patches/001-include_fix.patch @@ -8,4 +8,4 @@ +#include #endif - #include "device-types.h" + #ifdef UDEV_SYNC_SUPPORT From ee912a3869cc0058434e954a548aa8a5233b188b Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Sun, 29 Mar 2015 19:06:48 +0200 Subject: [PATCH 200/681] cryptsetup: bump version Signed-off-by: Daniel Golle --- utils/cryptsetup/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/utils/cryptsetup/Makefile b/utils/cryptsetup/Makefile index 330c4ecb6..fb7fc1211 100644 --- a/utils/cryptsetup/Makefile +++ b/utils/cryptsetup/Makefile @@ -8,14 +8,14 @@ include $(TOPDIR)/rules.mk PKG_NAME:=cryptsetup -PKG_VERSION:=1.6.6 +PKG_VERSION:=1.6.7 PKG_RELEASE:=1 PKG_LICENSE:=GPL-2.0+ LGPL-2.1+ PKG_LICENSE_FILES:=COPYING COPYING.LGPL PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=@KERNEL/linux/utils/cryptsetup/v1.6 -PKG_MD5SUM:=179c0781de59838a4e39f61b2df5ea48 +PKG_MD5SUM:=918406eb5d2e2f5a7348c432ea9b1473 PKG_MAINTAINER:=Daniel Golle PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/$(PKG_NAME)-$(PKG_VERSION) From 78fa57ebdbc63750be10fd442c39bdb8d43049a4 Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Thu, 2 Apr 2015 04:14:04 +0200 Subject: [PATCH 201/681] btrfs-progs: don't build btrfs-convert Get rid of libext2fs dependency. Signed-off-by: Daniel Golle --- utils/btrfs-progs/Makefile | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/utils/btrfs-progs/Makefile b/utils/btrfs-progs/Makefile index f0d286dca..8cf626631 100644 --- a/utils/btrfs-progs/Makefile +++ b/utils/btrfs-progs/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=btrfs-progs PKG_VERSION:=3.19.1 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE:=$(PKG_NAME)-v$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=@KERNEL/linux/kernel/people/kdave/btrfs-progs/ @@ -32,7 +32,7 @@ define Package/btrfs-progs SECTION:=utils CATEGORY:=Utilities SUBMENU:=Filesystem - DEPENDS:=+libattr +libuuid +zlib +libext2fs +libblkid +liblzo +libpthread + DEPENDS:=+libattr +libuuid +zlib +libblkid +liblzo +libpthread TITLE:=Btrfs filesystems utilities URL:=http://btrfs.wiki.kernel.org/ endef @@ -44,12 +44,13 @@ define Package/btrfs-progs/description GPL and open for contribution from anyone. endef -progs = btrfs btrfsck btrfs-convert btrfs-debug-tree btrfs-find-root \ - btrfs-image btrfs-map-logical btrfs-show-super btrfstune \ - btrfs-zero-log fsck.btrfs mkfs.btrfs +progs = btrfs btrfsck btrfs-debug-tree btrfs-find-root btrfs-image \ + btrfs-map-logical btrfs-show-super btrfstune btrfs-zero-log \ + fsck.btrfs mkfs.btrfs CONFIGURE_ARGS += \ --disable-backtrace \ + --disable-convert \ --disable-documentation define Package/btrfs-progs/install From ea5259e701aad433956994102e06f1d1cb63397a Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Thu, 2 Apr 2015 04:28:17 +0200 Subject: [PATCH 202/681] btrfs-progs: btrfsck is a symlink to btrfs safe half a meg by not copying the btrfs binary twice. Signed-off-by: Daniel Golle --- utils/btrfs-progs/Makefile | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/utils/btrfs-progs/Makefile b/utils/btrfs-progs/Makefile index 8cf626631..63b8f6cdc 100644 --- a/utils/btrfs-progs/Makefile +++ b/utils/btrfs-progs/Makefile @@ -44,9 +44,8 @@ define Package/btrfs-progs/description GPL and open for contribution from anyone. endef -progs = btrfs btrfsck btrfs-debug-tree btrfs-find-root btrfs-image \ - btrfs-map-logical btrfs-show-super btrfstune btrfs-zero-log \ - fsck.btrfs mkfs.btrfs +progs = btrfs btrfs-debug-tree btrfs-find-root btrfs-image btrfs-map-logical \ + btrfs-show-super btrfstune btrfs-zero-log fsck.btrfs mkfs.btrfs CONFIGURE_ARGS += \ --disable-backtrace \ @@ -58,6 +57,7 @@ define Package/btrfs-progs/install $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/libbtrfs.so* $(1)/usr/lib $(INSTALL_DIR) $(1)/usr/bin $(INSTALL_BIN) $(addprefix $(PKG_INSTALL_DIR)/usr/bin/, $(progs)) $(1)/usr/bin/ + ln -s btrfs $(1)/usr/bin/btrfsck $(INSTALL_DIR) $(1)/etc/init.d $(INSTALL_BIN) ./files/btrfs-scan.init $(1)/etc/init.d/btrfs-scan endef From 334b4410113eda461113cc51cae3d200b6439d47 Mon Sep 17 00:00:00 2001 From: Dirk Neukirchen Date: Thu, 2 Apr 2015 01:30:45 +0200 Subject: [PATCH 203/681] bluez: fix bluez5 init with procd - remove deprecated daemons - bluetoothd is managed via /etc/bluetooth/*.conf files and dbus Signed-off-by: Dirk Neukirchen --- utils/bluez/files/bluetoothd.init | 13 +++ utils/bluez/files/bluez-utils.init | 131 ----------------------------- 2 files changed, 13 insertions(+), 131 deletions(-) create mode 100644 utils/bluez/files/bluetoothd.init delete mode 100644 utils/bluez/files/bluez-utils.init diff --git a/utils/bluez/files/bluetoothd.init b/utils/bluez/files/bluetoothd.init new file mode 100644 index 000000000..75f4d9664 --- /dev/null +++ b/utils/bluez/files/bluetoothd.init @@ -0,0 +1,13 @@ +#!/bin/sh /etc/rc.common +# Copyright (C) 2007 OpenWrt.org + +#start after dbus (60) +START=62 +USE_PROCD=1 +PROG=/usr/bin/bluetoothd + +start_service() { + procd_open_instance + procd_set_param command "$PROG" -n + procd_close_instance +} diff --git a/utils/bluez/files/bluez-utils.init b/utils/bluez/files/bluez-utils.init deleted file mode 100644 index e9320aed2..000000000 --- a/utils/bluez/files/bluez-utils.init +++ /dev/null @@ -1,131 +0,0 @@ -#!/bin/sh /etc/rc.common -# Copyright (C) 2007 OpenWrt.org - -#start after dbus (60) -START=62 - -append_bool() { - local section="$1" - local option="$2" - local value="$3" - local _val - config_get_bool _val "$section" "$option" '0' - [ $_val -gt 0 ] && append args "$3" -} - -append_string() { - local section="$1" - local option="$2" - local value="$3" - local default="$4" - local _val - config_get _val "$section" "$option" "$default" - [ -n "$_val" ] && append args "$3 $_val" -} - -hcid_config() { - local cfg="$1" - config_get_bool enabled "$cfg" "enabled" '1' - [ $enabled -gt 0 ] || return 1 - args="" - append_bool "$cfg" nodaemon "-n" - append_string "$cfg" config "-f" - service_start /usr/sbin/hcid $args -} - -hciattach_config() { - local cfg="$1" - config_get_bool enabled "$cfg" "enabled" '1' - [ $enabled -gt 0 ] || return 1 - args="" - append_string "$cfg" initspeed "-s" "115200" - append_string "$cfg" tty " " "ttyS1" - append_string "$cfg" type " " "csr" - append_string "$cfg" speed " " "115200" - append_string "$cfg" flow " " "noflow" - service_start /usr/sbin/hciattach $args -} - -rfcomm_config() { - local cfg="$1" - config_get_bool enabled "$cfg" "enabled" '1' - [ $enabled -gt 0 ] || return 1 - args="" - append_string "$cfg" config "-f" - /usr/bin/rfcomm $args bind all -} - -dund_config() { - local cfg="$1" - config_get_bool enabled "$cfg" "enabled" '1' - [ $enabled -gt 0 ] || return 1 - args="" - append_bool "$cfg" listen "--listen" - append_string "$cfg" connect "--connect" - append_string "$cfg" mrouter "--mrouter" - append_bool "$cfg" search "--search" - append_string "$cfg" channel "--channel" - append_string "$cfg" device "--device" - append_bool "$cfg" nosdp "--nosdp" - append_bool "$cfg" auth "--auth" - append_bool "$cfg" encrypt "--encrypt" - append_bool "$cfg" secure "--secure" - append_bool "$cfg" master "--master" - append_bool "$cfg" nodetach "--nodetach" - append_bool "$cfg" persist "--persist" - append_string "$cfg" pppd "--pppd" - append_bool "$cfg" msdun "--msdun" - append_bool "$cfg" activesync "--activesync" - append_bool "$cfg" cache "--cache" - - append_string "$cfg" pppdopts "" - config_get ifn "$cfg" interface - if [ -n "$ifn" ]; then - config_get unit "$cfg" unit - [ -z "$unit" ] || append args "unit $unit ipparam $ifn linkname $ifn" - fi - - service_start /usr/bin/dund $args -} - -pand_config() { - local cfg="$1" - config_get_bool enabled "$cfg" "enabled" '1' - [ $enabled -gt 0 ] || return 1 - args="" - append_bool "$cfg" listen "--listen" - append_string "$cfg" connect "--connect" - append_bool "$cfg" autozap "--autozap" - append_bool "$cfg" search "--search" - append_string "$cfg" role "--role" - append_string "$cfg" service "--service" - append_string "$cfg" ethernet "--ethernet" - append_string "$cfg" device "--device" - append_bool "$cfg" nosdp "-D" - append_bool "$cfg" auth "-A" - append_bool "$cfg" encrypt "-E" - append_bool "$cfg" secure "-S" - append_bool "$cfg" master "-M" - append_bool "$cfg" nodetach "-n" - append_bool "$cfg" persist "--persist" - append_bool "$cfg" cache "--cache" - append_string "$cfg" pidfile "--pidfile" - service_start /usr/bin/pand $args -} - -start() { - config_load bluetooth - config_foreach hcid_config hcid - config_foreach hciattach_config hciattach - config_foreach rfcomm_config rfcomm - config_foreach dund_config dund - config_foreach pand_config pand -} - -stop() { - service_stop /usr/bin/dund - service_stop /usr/bin/pand - /usr/bin/rfcomm release all - service_stop /usr/sbin/hciattach - service_stop /usr/sbin/hcid -} From 734a8518760044b1fef60a718c60d2a56d7fdf0d Mon Sep 17 00:00:00 2001 From: Dirk Neukirchen Date: Thu, 2 Apr 2015 01:32:49 +0200 Subject: [PATCH 204/681] bluez: remove legacy stuff from /etc/config/bluetooth pand/dund removed upstream: commit: Move hidd pand and dund into compat directory commit: (2012-07-04) remove compat daemons Signed-off-by: Dirk Neukirchen --- utils/bluez/files/bluetooth.config | 21 ++------------------- 1 file changed, 2 insertions(+), 19 deletions(-) diff --git a/utils/bluez/files/bluetooth.config b/utils/bluez/files/bluetooth.config index 42f390c67..6f23617a4 100644 --- a/utils/bluez/files/bluetooth.config +++ b/utils/bluez/files/bluetooth.config @@ -1,5 +1,5 @@ -config hcid -# option config /etc/bluetooth/hcid.conf +config bluetoothd +# option config /etc/bluetooth/main.conf option enabled 1 config hciattach @@ -13,20 +13,3 @@ config hciattach config rfcomm # option config /etc/bluetooth/rfcomm.conf option enabled 0 - -config dund - option listen true - option persist true - option msdun true - option interface dund - option unit 1 - option pppdopts "ktune proxyarp 192.168.1.1:192.168.1.2 ms-dns 192.168.1.1" - option enabled 0 - -config pand - option listen true - option autozap true - option role "NAP" - option master true - option persist true - option enabled 0 From bcc6516a9b7c8bce6b7c25a8473028f295c2d1fc Mon Sep 17 00:00:00 2001 From: Dirk Neukirchen Date: Thu, 2 Apr 2015 09:58:22 +0200 Subject: [PATCH 205/681] bluez: refresh for bluez5 bluez is craply documented contains changes needed for bluetooth audio playback bluetooth playback tested successfully with android mobile (source) to TI omap BeagleBoard (A2DP sink) - install .conf files according to source code - package bluetoothd - new package examples for python commandline tools that might provide functionality without dbus - other changes are needed (pulseaudio,sbc,uinput) Signed-off-by: Dirk Neukirchen --- utils/bluez/Makefile | 33 +++++++++++++++++++++++++++++++-- 1 file changed, 31 insertions(+), 2 deletions(-) diff --git a/utils/bluez/Makefile b/utils/bluez/Makefile index 8e394e351..e3c0924c5 100644 --- a/utils/bluez/Makefile +++ b/utils/bluez/Makefile @@ -29,6 +29,18 @@ define Package/bluez/Default URL:=http://www.bluez.org/ endef +define Package/bluez-examples +$(call Package/bluez/Default) + SECTION:=utils + CATEGORY:=Utilities + TITLE+= python example apps + DEPENDS:=+python +endef + +define Package/bluez-examples/description + contains many examples apps for bluetooth, requiring python +endef + define Package/bluez-libs $(call Package/bluez/Default) SECTION:=libs @@ -42,10 +54,14 @@ $(call Package/bluez/Default) SECTION:=utils CATEGORY:=Utilities TITLE+= utilities - DEPENDS:=+bluez-libs +libpthread +dbus +glib2 +libical +libncurses +libreadline $(INTL_DEPENDS) $(ICONV_DEPENDS) + DEPENDS:=+bluez-libs +libpthread +librt +dbus +glib2 +libical +libncurses +libreadline $(INTL_DEPENDS) $(ICONV_DEPENDS) endef define Package/bluez-utils/conffiles +/etc/bluetooth/main.conf +/etc/bluetooth/network.conf +/etc/bluetooth/input.conf +/etc/bluetooth/proximity.conf /etc/config/bluetooth endef @@ -80,6 +96,11 @@ define Build/InstallDev $(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/bluez.pc $(1)/usr/lib/pkgconfig/ endef +define Package/bluez-examples/install + $(INSTALL_DIR) $(1)/usr/bin/bluez/ + $(INSTALL_DATA) $(PKG_BUILD_DIR)/test/* $(1)/usr/bin/bluez/ +endef + define Package/bluez-libs/install $(INSTALL_DIR) $(1)/usr/lib $(CP) $(PKG_INSTALL_DIR)/usr/lib/libbluetooth.so.* $(1)/usr/lib/ @@ -88,13 +109,21 @@ endef define Package/bluez-utils/install $(INSTALL_DIR) $(1)/usr/bin $(CP) $(PKG_INSTALL_DIR)/usr/bin/* $(1)/usr/bin/ + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/bluetooth/bluetoothd $(1)/usr/bin + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/bluetooth/obexd $(1)/usr/bin $(INSTALL_DIR) $(1)/etc/config $(INSTALL_DATA) ./files/bluetooth.config $(1)/etc/config/bluetooth $(INSTALL_DIR) $(1)/etc/dbus-1/system.d/ $(INSTALL_DATA) ./files/bluetooth.dbus $(1)/etc/dbus-1/system.d/bluetooth.conf + $(INSTALL_DIR) $(1)/etc/bluetooth + $(INSTALL_DATA) $(PKG_BUILD_DIR)/src/main.conf $(1)/etc/bluetooth/main.conf + $(INSTALL_DATA) $(PKG_BUILD_DIR)/profiles/network/network.conf $(1)/etc/bluetooth/network.conf + $(INSTALL_DATA) $(PKG_BUILD_DIR)/profiles/input/input.conf $(1)/etc/bluetooth/input.conf + $(INSTALL_DATA) $(PKG_BUILD_DIR)/profiles/proximity/proximity.conf $(1)/etc/bluetooth/proximity.conf $(INSTALL_DIR) $(1)/etc/init.d - $(INSTALL_BIN) ./files/bluez-utils.init $(1)/etc/init.d/bluez-utils + $(INSTALL_BIN) ./files/bluetoothd.init $(1)/etc/init.d/bluetoothd endef +$(eval $(call BuildPackage,bluez-examples)) $(eval $(call BuildPackage,bluez-libs)) $(eval $(call BuildPackage,bluez-utils)) From a11c86ce28a4e2aef4f9f95cef0d668695d184b9 Mon Sep 17 00:00:00 2001 From: Dirk Neukirchen Date: Thu, 2 Apr 2015 01:16:52 +0200 Subject: [PATCH 206/681] new package: sbc contains Low Complexity Subband Coding needed for A2DP support in pulseaudio Signed-off-by: Dirk Neukirchen --- libs/sbc/Makefile | 57 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 57 insertions(+) create mode 100644 libs/sbc/Makefile diff --git a/libs/sbc/Makefile b/libs/sbc/Makefile new file mode 100644 index 000000000..cca54729d --- /dev/null +++ b/libs/sbc/Makefile @@ -0,0 +1,57 @@ +# +# Copyright (C) 2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=sbc +PKG_VERSION:=1.3 +PKG_RELEASE:=1 + +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz +PKG_SOURCE_URL:=https://www.kernel.org/pub/linux/bluetooth/ +PKG_MD5SUM:=2d8b7841f2c11ab287718d562f2b981c + +PKG_LICENSE:=LGPL-2.1+ +PKG_LICENSE_FILES:=COPYING.LIB +PKG_MAINTAINER:=Dirk Neukirchen + +PKG_FIXUP:=autoreconf +PKG_INSTALL:=1 + +include $(INCLUDE_DIR)/package.mk + +define Package/sbc + SECTION:=libs + CATEGORY:=Libraries + TITLE:=sbc encoding library + DEPENDS:=+libsndfile + URL:=http://www.bluez.org +endef + +define Package/sbc/description + Low Complexity Subband Coding for bluetooth audio profiles encoding and decoding. + Needed for A2DP support. +endef + +define Build/InstallDev + $(INSTALL_DIR) $(1)/usr/include/sbc + $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/include/sbc/sbc.h $(1)/usr/include/sbc/ + $(INSTALL_DIR) $(1)/usr/lib + $(CP) $(PKG_INSTALL_DIR)/usr/lib/libsbc* $(1)/usr/lib/ + $(INSTALL_DIR) $(1)/usr/lib/pkgconfig + $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/sbc.pc $(1)/usr/lib/pkgconfig/ +endef + +define Package/sbc/install + $(INSTALL_DIR) $(1)/usr/bin + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/sbc* $(1)/usr/bin/ + $(INSTALL_DIR) $(1)/usr/lib + $(CP) $(PKG_INSTALL_DIR)/usr/lib/libsbc.so* $(1)/usr/lib/ +endef + + +$(eval $(call BuildPackage,sbc)) From b06712cdecc23e7818f0e4300a4eec3939440acd Mon Sep 17 00:00:00 2001 From: Nicolas Thill Date: Thu, 2 Apr 2015 17:00:33 +0200 Subject: [PATCH 207/681] lttng-modules: fix build on recent kernels Signed-off-by: Nicolas Thill --- devel/lttng-modules/Makefile | 2 +- .../patches/001-mm_page_alloc_extfrag.patch | 98 +++++++++++++++++++ 2 files changed, 99 insertions(+), 1 deletion(-) create mode 100644 devel/lttng-modules/patches/001-mm_page_alloc_extfrag.patch diff --git a/devel/lttng-modules/Makefile b/devel/lttng-modules/Makefile index 1fcfa73da..355f32503 100644 --- a/devel/lttng-modules/Makefile +++ b/devel/lttng-modules/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=lttng-modules PKG_VERSION:=2.6.0 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 PKG_SOURCE_URL:=https://lttng.org/files/$(PKG_NAME)/ diff --git a/devel/lttng-modules/patches/001-mm_page_alloc_extfrag.patch b/devel/lttng-modules/patches/001-mm_page_alloc_extfrag.patch new file mode 100644 index 000000000..183f7d117 --- /dev/null +++ b/devel/lttng-modules/patches/001-mm_page_alloc_extfrag.patch @@ -0,0 +1,98 @@ +--- a/instrumentation/events/lttng-module/kmem.h ++++ b/instrumentation/events/lttng-module/kmem.h +@@ -286,7 +286,94 @@ LTTNG_TRACEPOINT_EVENT_INSTANCE_PRINT(mm + __entry->order, __entry->migratetype) + ) + +-#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,12,0)) ++#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,19,2) \ ++ || LTTNG_KERNEL_RANGE(3,18,10, 3,19,0) \ ++ || LTTNG_KERNEL_RANGE(3,14,36, 3,15,0)) ++ ++LTTNG_TRACEPOINT_EVENT(mm_page_alloc_extfrag, ++ ++ TP_PROTO(struct page *page, ++ int alloc_order, int fallback_order, ++ int alloc_migratetype, int fallback_migratetype), ++ ++ TP_ARGS(page, ++ alloc_order, fallback_order, ++ alloc_migratetype, fallback_migratetype), ++ ++ TP_STRUCT__entry( ++ __field_hex( struct page *, page ) ++ __field( int, alloc_order ) ++ __field( int, fallback_order ) ++ __field( int, alloc_migratetype ) ++ __field( int, fallback_migratetype ) ++ __field( int, change_ownership ) ++ ), ++ ++ TP_fast_assign( ++ tp_assign(page, page) ++ tp_assign(alloc_order, alloc_order) ++ tp_assign(fallback_order, fallback_order) ++ tp_assign(alloc_migratetype, alloc_migratetype) ++ tp_assign(fallback_migratetype, fallback_migratetype) ++ tp_assign(change_ownership, ++ (alloc_migratetype == get_pageblock_migratetype(page))) ++ ), ++ ++ TP_printk("page=%p pfn=%lu alloc_order=%d fallback_order=%d pageblock_order=%d alloc_migratetype=%d fallback_migratetype=%d fragmenting=%d change_ownership=%d", ++ __entry->page, ++ page_to_pfn(__entry->page), ++ __entry->alloc_order, ++ __entry->fallback_order, ++ pageblock_order, ++ __entry->alloc_migratetype, ++ __entry->fallback_migratetype, ++ __entry->fallback_order < pageblock_order, ++ __entry->change_ownership) ++) ++ ++#elif (LINUX_VERSION_CODE >= KERNEL_VERSION(3,12,30)) ++ ++LTTNG_TRACEPOINT_EVENT(mm_page_alloc_extfrag, ++ ++ TP_PROTO(struct page *page, ++ int alloc_order, int fallback_order, ++ int alloc_migratetype, int fallback_migratetype, int new_migratetype), ++ ++ TP_ARGS(page, ++ alloc_order, fallback_order, ++ alloc_migratetype, fallback_migratetype, new_migratetype), ++ ++ TP_STRUCT__entry( ++ __field_hex( struct page *, page ) ++ __field( int, alloc_order ) ++ __field( int, fallback_order ) ++ __field( int, alloc_migratetype ) ++ __field( int, fallback_migratetype ) ++ __field( int, change_ownership ) ++ ), ++ ++ TP_fast_assign( ++ tp_assign(page, page) ++ tp_assign(alloc_order, alloc_order) ++ tp_assign(fallback_order, fallback_order) ++ tp_assign(alloc_migratetype, alloc_migratetype) ++ tp_assign(fallback_migratetype, fallback_migratetype) ++ tp_assign(change_ownership, (new_migratetype == alloc_migratetype)) ++ ), ++ ++ TP_printk("page=%p pfn=%lu alloc_order=%d fallback_order=%d pageblock_order=%d alloc_migratetype=%d fallback_migratetype=%d fragmenting=%d change_ownership=%d", ++ __entry->page, ++ page_to_pfn(__entry->page), ++ __entry->alloc_order, ++ __entry->fallback_order, ++ pageblock_order, ++ __entry->alloc_migratetype, ++ __entry->fallback_migratetype, ++ __entry->fallback_order < pageblock_order, ++ __entry->change_ownership) ++) ++ ++#elif (LINUX_VERSION_CODE >= KERNEL_VERSION(3,12,0)) + + LTTNG_TRACEPOINT_EVENT(mm_page_alloc_extfrag, + From 64332b7cdfd78b906f502a5b03501128fb422c47 Mon Sep 17 00:00:00 2001 From: Nicolas Thill Date: Fri, 3 Apr 2015 07:44:23 +0200 Subject: [PATCH 208/681] mysql: only use g++-uc wrapper with uClibc++ Signed-off-by: Nicolas Thill --- utils/mysql/Makefile | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/utils/mysql/Makefile b/utils/mysql/Makefile index 16312b3f1..f0553a9d7 100644 --- a/utils/mysql/Makefile +++ b/utils/mysql/Makefile @@ -58,7 +58,9 @@ define Package/libmysqlclient-r DEPENDS+= +libpthread endef -TARGET_CXX=g++-uc +ifneq ($(CONFIG_USE_UCLIBCXX),) + TARGET_CXX=g++-uc +endif TARGET_CFLAGS += $(FPIC) From bc52054224db100441db48e635725d810be139ce Mon Sep 17 00:00:00 2001 From: Nicolas Thill Date: Fri, 3 Apr 2015 07:56:39 +0200 Subject: [PATCH 209/681] bluez: cosmetic fixes Signed-off-by: Nicolas Thill --- utils/bluez/Makefile | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/utils/bluez/Makefile b/utils/bluez/Makefile index e3c0924c5..201d95500 100644 --- a/utils/bluez/Makefile +++ b/utils/bluez/Makefile @@ -97,7 +97,7 @@ define Build/InstallDev endef define Package/bluez-examples/install - $(INSTALL_DIR) $(1)/usr/bin/bluez/ + $(INSTALL_DIR) $(1)/usr/bin/bluez $(INSTALL_DATA) $(PKG_BUILD_DIR)/test/* $(1)/usr/bin/bluez/ endef @@ -109,8 +109,8 @@ endef define Package/bluez-utils/install $(INSTALL_DIR) $(1)/usr/bin $(CP) $(PKG_INSTALL_DIR)/usr/bin/* $(1)/usr/bin/ - $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/bluetooth/bluetoothd $(1)/usr/bin - $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/bluetooth/obexd $(1)/usr/bin + $(CP) $(PKG_INSTALL_DIR)/usr/lib/bluetooth/bluetoothd $(1)/usr/bin/ + $(CP) $(PKG_INSTALL_DIR)/usr/lib/bluetooth/obexd $(1)/usr/bin/ $(INSTALL_DIR) $(1)/etc/config $(INSTALL_DATA) ./files/bluetooth.config $(1)/etc/config/bluetooth $(INSTALL_DIR) $(1)/etc/dbus-1/system.d/ From 0c3713c767681b39e47b29562043dbef72ea529e Mon Sep 17 00:00:00 2001 From: Michael Haas Date: Fri, 3 Apr 2015 10:16:27 +0200 Subject: [PATCH 210/681] stunnel: Bump from 5.10 to 5.14 Also refresh patches. Signed-Off-By: Michael Haas --- net/stunnel/Makefile | 4 ++-- net/stunnel/patches/010_fix_getnameinfo.patch | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/net/stunnel/Makefile b/net/stunnel/Makefile index 9238331d7..0b928b7f6 100644 --- a/net/stunnel/Makefile +++ b/net/stunnel/Makefile @@ -8,7 +8,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=stunnel -PKG_VERSION:=5.10 +PKG_VERSION:=5.14 PKG_RELEASE:=1 PKG_LICENSE:=GPL-2.0+ @@ -17,7 +17,7 @@ PKG_LICENSE_FILES:=COPYING COPYRIGHT.GPL PKG_SOURCE_URL:=http://stunnel.cybermirror.org/archive/5.x/ PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz -PKG_MD5SUM:=a0edda805eb7d6ea600a230fb0979ea1 +PKG_MD5SUM:=e716501960dc6856d80f92547298f724 PKG_FIXUP:=autoreconf PKG_INSTALL:=1 diff --git a/net/stunnel/patches/010_fix_getnameinfo.patch b/net/stunnel/patches/010_fix_getnameinfo.patch index f0a9faa7b..03acfafac 100644 --- a/net/stunnel/patches/010_fix_getnameinfo.patch +++ b/net/stunnel/patches/010_fix_getnameinfo.patch @@ -1,6 +1,6 @@ --- a/src/prototypes.h +++ b/src/prototypes.h -@@ -559,7 +559,7 @@ extern GETNAMEINFO s_getnameinfo; +@@ -590,7 +590,7 @@ extern GETNAMEINFO s_getnameinfo; #endif /* USE_WIN32 */ @@ -11,7 +11,7 @@ --- a/src/resolver.c +++ b/src/resolver.c -@@ -535,8 +535,9 @@ const char *s_gai_strerror(int err) { +@@ -538,8 +538,9 @@ const char *s_gai_strerror(int err) { /* implementation is limited to functionality needed by stunnel */ #ifndef HAVE_GETNAMEINFO From ae8d9dcadd59e10a261f8c358f4af034c1285371 Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Fri, 3 Apr 2015 16:49:30 +0200 Subject: [PATCH 211/681] btrfs-progs: use $(LN) macro, bump release Signed-off-by: Daniel Golle --- utils/btrfs-progs/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/utils/btrfs-progs/Makefile b/utils/btrfs-progs/Makefile index 63b8f6cdc..12513e15d 100644 --- a/utils/btrfs-progs/Makefile +++ b/utils/btrfs-progs/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=btrfs-progs PKG_VERSION:=3.19.1 -PKG_RELEASE:=2 +PKG_RELEASE:=3 PKG_SOURCE:=$(PKG_NAME)-v$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=@KERNEL/linux/kernel/people/kdave/btrfs-progs/ @@ -57,7 +57,7 @@ define Package/btrfs-progs/install $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/libbtrfs.so* $(1)/usr/lib $(INSTALL_DIR) $(1)/usr/bin $(INSTALL_BIN) $(addprefix $(PKG_INSTALL_DIR)/usr/bin/, $(progs)) $(1)/usr/bin/ - ln -s btrfs $(1)/usr/bin/btrfsck + $(LN) btrfs $(1)/usr/bin/btrfsck $(INSTALL_DIR) $(1)/etc/init.d $(INSTALL_BIN) ./files/btrfs-scan.init $(1)/etc/init.d/btrfs-scan endef From 822c18cb8768a3448109909304623b4136944d7f Mon Sep 17 00:00:00 2001 From: Nikos Mavrogiannopoulos Date: Fri, 3 Apr 2015 19:55:00 +0200 Subject: [PATCH 212/681] gnutls: updated to 3.3.14 Signed-off-by: Nikos Mavrogiannopoulos --- libs/gnutls/Makefile | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/libs/gnutls/Makefile b/libs/gnutls/Makefile index 87cb55472..965f08f1a 100644 --- a/libs/gnutls/Makefile +++ b/libs/gnutls/Makefile @@ -8,13 +8,13 @@ include $(TOPDIR)/rules.mk PKG_NAME:=gnutls -PKG_VERSION:=3.3.13 -PKG_RELEASE:=3 +PKG_VERSION:=3.3.14 +PKG_RELEASE:=1 PKG_USE_MIPS16:=0 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=ftp://ftp.gnutls.org/gcrypt/gnutls/v3.3 -PKG_MD5SUM:=a7387fe8bf3e604bf518a6da9ab2a4e6 +PKG_MD5SUM:=7f4465f8c564cf9cb8f5cb38b909f7ca PKG_MAINTAINER:=Nikos Mavrogiannopoulos PKG_INSTALL:=1 From 360122ed5d417d6bb820bb07fe5f007950a8ad65 Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Thu, 2 Apr 2015 22:18:05 +0200 Subject: [PATCH 213/681] mmc-utils: restore FORTIFY_SOURCE=2 The previous commit ba4338d mmc-utils: don't set -D_FORTIFY_SOURCE in Makefile applied the global value of FORITFY_SOURCE also to mmc-utils. As the package was meant to be built with FORTIFY_SOURCE upstream, restore that behaviour and make it play nice with the global setting by undefining the macro before defining it. Signed-off-by: Daniel Golle --- ....patch => 001-properly-set-fortify-source-in-makefile.patch} | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) rename utils/mmc-utils/patches/{001-dont-set-fortify-source-in-makefile.patch => 001-properly-set-fortify-source-in-makefile.patch} (84%) diff --git a/utils/mmc-utils/patches/001-dont-set-fortify-source-in-makefile.patch b/utils/mmc-utils/patches/001-properly-set-fortify-source-in-makefile.patch similarity index 84% rename from utils/mmc-utils/patches/001-dont-set-fortify-source-in-makefile.patch rename to utils/mmc-utils/patches/001-properly-set-fortify-source-in-makefile.patch index 9b2b8ba25..4a35b959b 100644 --- a/utils/mmc-utils/patches/001-dont-set-fortify-source-in-makefile.patch +++ b/utils/mmc-utils/patches/001-properly-set-fortify-source-in-makefile.patch @@ -5,7 +5,7 @@ Index: mmc-utils-f4eb241519f8d500ce6068a70d2389be39ac5189/Makefile @@ -1,5 +1,5 @@ CC ?= gcc -AM_CFLAGS = -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -+AM_CFLAGS = -D_FILE_OFFSET_BITS=64 ++AM_CFLAGS = -D_FILE_OFFSET_BITS=64 -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 CFLAGS ?= -g -O2 objects = \ mmc.o \ From 692ee8cf18d098608ae6c4294eceeee1605d974c Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Fri, 3 Apr 2015 16:32:48 +0200 Subject: [PATCH 214/681] mmc-utils: bump to 2015-03-25 snapshot Signed-off-by: Daniel Golle --- utils/mmc-utils/Makefile | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/utils/mmc-utils/Makefile b/utils/mmc-utils/Makefile index a5c425b6a..ca8549363 100644 --- a/utils/mmc-utils/Makefile +++ b/utils/mmc-utils/Makefile @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=mmc-utils -PKG_VERSION=2015-03-06-$(PKG_SOURCE_VERSION) -PKG_RELEASE:=2 +PKG_VERSION=2015-03-25-$(PKG_SOURCE_VERSION) +PKG_RELEASE:=1 PKG_SOURCE_PROTO:=git PKG_SOURCE_URL:=https://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc-utils.git -PKG_SOURCE_VERSION:=f4eb241519f8d500ce6068a70d2389be39ac5189 +PKG_SOURCE_VERSION:=50b68547ad895803128519af71c31b9f14bfc791 PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_SOURCE_VERSION) PKG_SOURCE:=$(PKG_NAME)-$(PKG_SOURCE_VERSION).tar.gz From 70c10c0a5e80a53a2090698730033d91da98cd1c Mon Sep 17 00:00:00 2001 From: Florian Fainelli Date: Sat, 4 Apr 2015 12:31:49 -0700 Subject: [PATCH 215/681] openconnect: allow specifying "os" Some servers might be implementing ACLs based on the value specified by openconnect for "os", allow that to be configured. Signed-off-by: Florian Fainelli --- net/openconnect/files/openconnect.sh | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/net/openconnect/files/openconnect.sh b/net/openconnect/files/openconnect.sh index bdac9bc86..87c42acc3 100755 --- a/net/openconnect/files/openconnect.sh +++ b/net/openconnect/files/openconnect.sh @@ -13,6 +13,7 @@ proto_openconnect_init_config() { proto_config_add_string "token_mode" proto_config_add_string "token_secret" proto_config_add_string "interface" + proto_config_add_string "os" no_device=1 available=1 } @@ -20,7 +21,7 @@ proto_openconnect_init_config() { proto_openconnect_setup() { local config="$1" - json_get_vars server port username serverhash authgroup password interface token_mode token_secret + json_get_vars server port username serverhash authgroup password interface token_mode token_secret os grep -q tun /proc/modules || insmod tun @@ -68,6 +69,7 @@ proto_openconnect_setup() { [ -n "$token_mode" ] && append cmdline "--token-mode=$token_mode" [ -n "$token_secret" ] && append cmdline "--token-secret=$token_secret" + [ -n "$os" ] && append cmdline "--os=$os" proto_export INTERFACE="$config" logger -t openconnect "executing 'openconnect $cmdline'" From b1f228f4cf0b9871c0d7d009c0e97a40ddb9d629 Mon Sep 17 00:00:00 2001 From: Florian Fainelli Date: Sat, 4 Apr 2015 12:32:59 -0700 Subject: [PATCH 216/681] openconnect: allow specifying a custom CSD wrapper script Some VPN servers might be configured in a way that a CSD wrapper script is mandatory to complete the authentication process, allow that to be specified for openconnect. Signed-off-by: Florian Fainelli --- net/openconnect/files/openconnect.sh | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/net/openconnect/files/openconnect.sh b/net/openconnect/files/openconnect.sh index 87c42acc3..0e22e1b60 100755 --- a/net/openconnect/files/openconnect.sh +++ b/net/openconnect/files/openconnect.sh @@ -14,6 +14,7 @@ proto_openconnect_init_config() { proto_config_add_string "token_secret" proto_config_add_string "interface" proto_config_add_string "os" + proto_config_add_string "csd_wrapper" no_device=1 available=1 } @@ -21,7 +22,7 @@ proto_openconnect_init_config() { proto_openconnect_setup() { local config="$1" - json_get_vars server port username serverhash authgroup password interface token_mode token_secret os + json_get_vars server port username serverhash authgroup password interface token_mode token_secret os csd_wrapper grep -q tun /proc/modules || insmod tun @@ -70,6 +71,7 @@ proto_openconnect_setup() { [ -n "$token_mode" ] && append cmdline "--token-mode=$token_mode" [ -n "$token_secret" ] && append cmdline "--token-secret=$token_secret" [ -n "$os" ] && append cmdline "--os=$os" + [ -n "$csd_wrapper" ] && [ -x "$csd_wrapper" ] && append cmdline "--csd-wrapper=$csd_wrapper" proto_export INTERFACE="$config" logger -t openconnect "executing 'openconnect $cmdline'" From 71ef5bbbb1aaf9c4c31fedb758a80246221bf2a7 Mon Sep 17 00:00:00 2001 From: Steven Barth Date: Mon, 6 Apr 2015 12:08:19 +0200 Subject: [PATCH 217/681] dbus: bump to 1.9.14 Signed-off-by: Steven Barth --- utils/dbus/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/utils/dbus/Makefile b/utils/dbus/Makefile index b47d40be4..c8bd4155a 100644 --- a/utils/dbus/Makefile +++ b/utils/dbus/Makefile @@ -9,12 +9,12 @@ include $(TOPDIR)/rules.mk # Make sure to also update the dbus-x package PKG_NAME:=dbus -PKG_VERSION:=1.9.10 +PKG_VERSION:=1.9.14 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://dbus.freedesktop.org/releases/dbus/ -PKG_MD5SUM:=72390a741009017258c00a3268daa728 +PKG_MD5SUM:=32cd0d16067422bfd691e2f647b432b0 PKG_MAINTAINER:=Steven Barth PKG_LICENSE:=AFL-2.1 From 41222e6c1a0e0f5bac590ada1c6895b8f5909609 Mon Sep 17 00:00:00 2001 From: Steven Barth Date: Mon, 6 Apr 2015 12:23:27 +0200 Subject: [PATCH 218/681] strongswan: bump to 5.3.0 Signed-off-by: Steven Barth --- net/strongswan/Makefile | 8 ++-- net/strongswan/patches/001-ikev1-fix.patch | 48 ------------------- .../300-include-ipsec-user-script.patch | 4 +- 3 files changed, 6 insertions(+), 54 deletions(-) delete mode 100644 net/strongswan/patches/001-ikev1-fix.patch diff --git a/net/strongswan/Makefile b/net/strongswan/Makefile index e4481c9ea..9500bcb9c 100644 --- a/net/strongswan/Makefile +++ b/net/strongswan/Makefile @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=strongswan -PKG_VERSION:=5.2.2 -PKG_RELEASE:=2 +PKG_VERSION:=5.3.0 +PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 PKG_SOURCE_URL:=http://download.strongswan.org/ http://download2.strongswan.org/ -PKG_MD5SUM:=7ee1a33060b2bde35be0f6d78a1d26d0 +PKG_MD5SUM:=c52d4228231c2025d9c320d0e9990327 PKG_LICENSE:=GPL-2.0+ PKG_MAINTAINER:=Steven Barth @@ -407,7 +407,7 @@ endef define Plugin/updown/install $(INSTALL_DIR) $(1)/usr/lib/ipsec/plugins - $(CP) $(PKG_INSTALL_DIR)/usr/lib/ipsec/{_updown,_updown_espmark} $(1)/usr/lib/ipsec/ + $(CP) $(PKG_INSTALL_DIR)/usr/lib/ipsec/_updown $(1)/usr/lib/ipsec/ $(CP) $(PKG_INSTALL_DIR)/usr/lib/ipsec/plugins/libstrongswan-updown.so $(1)/usr/lib/ipsec/plugins/ $(INSTALL_DIR) $(1)/etc $(INSTALL_CONF) ./files/ipsec.user $(1)/etc/ diff --git a/net/strongswan/patches/001-ikev1-fix.patch b/net/strongswan/patches/001-ikev1-fix.patch deleted file mode 100644 index a48b0acdd..000000000 --- a/net/strongswan/patches/001-ikev1-fix.patch +++ /dev/null @@ -1,48 +0,0 @@ -From 627f870ee6256b4b2e36e9ca768fc578febbccef Mon Sep 17 00:00:00 2001 -From: Tobias Brunner -Date: Tue, 10 Feb 2015 19:03:44 +0100 -Subject: [PATCH] ikev1: Set protocol ID and SPIs in INITIAL-CONTACT - notification payloads - -The payload we sent before is not compliant with RFC 2407 and thus some -peers might abort negotiation (e.g. with an INVALID-PROTOCOL-ID error). ---- - src/libcharon/sa/ikev1/tasks/main_mode.c | 15 +++++++++++++-- - 1 file changed, 13 insertions(+), 2 deletions(-) - -diff --git a/src/libcharon/sa/ikev1/tasks/main_mode.c b/src/libcharon/sa/ikev1/tasks/main_mode.c -index 5065e70ffc25..3ea4a2a85e4f 100644 ---- a/src/libcharon/sa/ikev1/tasks/main_mode.c -+++ b/src/libcharon/sa/ikev1/tasks/main_mode.c -@@ -213,6 +213,10 @@ static void add_initial_contact(private_main_mode_t *this, message_t *message, - { - identification_t *idr; - host_t *host; -+ notify_payload_t *notify; -+ ike_sa_id_t *ike_sa_id; -+ u_int64_t spi_i, spi_r; -+ chunk_t spi; - - idr = this->ph1->get_id(this->ph1, this->peer_cfg, FALSE); - if (idr && !idr->contains_wildcards(idr)) -@@ -224,8 +228,15 @@ static void add_initial_contact(private_main_mode_t *this, message_t *message, - if (!charon->ike_sa_manager->has_contact(charon->ike_sa_manager, - idi, idr, host->get_family(host))) - { -- message->add_notify(message, FALSE, INITIAL_CONTACT_IKEV1, -- chunk_empty); -+ notify = notify_payload_create_from_protocol_and_type( -+ PLV1_NOTIFY, PROTO_IKE, INITIAL_CONTACT_IKEV1); -+ ike_sa_id = this->ike_sa->get_id(this->ike_sa); -+ spi_i = ike_sa_id->get_initiator_spi(ike_sa_id); -+ spi_r = ike_sa_id->get_responder_spi(ike_sa_id); -+ spi = chunk_cata("cc", chunk_from_thing(spi_i), -+ chunk_from_thing(spi_r)); -+ notify->set_spi_data(notify, spi); -+ message->add_payload(message, (payload_t*)notify); - } - } - } --- -1.9.1 - diff --git a/net/strongswan/patches/300-include-ipsec-user-script.patch b/net/strongswan/patches/300-include-ipsec-user-script.patch index d96e84492..6835e02fe 100644 --- a/net/strongswan/patches/300-include-ipsec-user-script.patch +++ b/net/strongswan/patches/300-include-ipsec-user-script.patch @@ -13,5 +13,5 @@ + +[ -e /etc/ipsec.user ] && . /etc/ipsec.user "$1" - # things that this script gets (from ipsec_pluto(8) man page) - # + # PLUTO_VERSION + # indicates what version of this interface is being From edf8ea8b14ef64b18e907e03093bf1cafc3b0d1a Mon Sep 17 00:00:00 2001 From: Nicolas Thill Date: Mon, 6 Apr 2015 13:13:33 +0200 Subject: [PATCH 219/681] pen: update to 0.27.3 Signed-off-by: Nicolas Thill --- net/pen/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/net/pen/Makefile b/net/pen/Makefile index 74a78a9bf..77b7b7a2b 100644 --- a/net/pen/Makefile +++ b/net/pen/Makefile @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=pen -PKG_VERSION:=0.27.2 +PKG_VERSION:=0.27.3 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://siag.nu/pub/pen/ -PKG_MD5SUM:=79014750cc0ea253437b516716932115 +PKG_MD5SUM:=a83bbbe3aec24d8d53f5e87efb433b25 PKG_LICENSE:=GPL-2.0+ PKG_LICENSE_FILES:=COPYING From 60ab94da35da7e23228d5755598e3114a0506876 Mon Sep 17 00:00:00 2001 From: Nicolas Thill Date: Mon, 6 Apr 2015 13:14:15 +0200 Subject: [PATCH 220/681] bluez: update to 5.30 Signed-off-by: Nicolas Thill --- utils/bluez/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/utils/bluez/Makefile b/utils/bluez/Makefile index 201d95500..d2bc8fab1 100644 --- a/utils/bluez/Makefile +++ b/utils/bluez/Makefile @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=bluez -PKG_VERSION:=5.29 +PKG_VERSION:=5.30 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=http://www.kernel.org/pub/linux/bluetooth/ -PKG_MD5SUM:=aa9dc91689695a486c78c131cd68673e +PKG_MD5SUM:=24ba1d1e8e7ef5b8f4033a3059d7600e PKG_LICENSE:=GPL-2.0+ PKG_LICENSE_FILES:=COPYING From 49b42df0f2b458188d313a65baa9cfd3817659f2 Mon Sep 17 00:00:00 2001 From: Nicolas Thill Date: Mon, 6 Apr 2015 13:14:50 +0200 Subject: [PATCH 221/681] keepalived: update to 1.2.16 Signed-off-by: Nicolas Thill --- net/keepalived/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/net/keepalived/Makefile b/net/keepalived/Makefile index 0f13149d4..04a041fa0 100644 --- a/net/keepalived/Makefile +++ b/net/keepalived/Makefile @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=keepalived -PKG_VERSION:=1.2.15 +PKG_VERSION:=1.2.16 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:= http://www.keepalived.org/software -PKG_MD5SUM:=d85fcb8e564ea03b0ca7b2357bf30c51 +PKG_MD5SUM:=f834ab2cfc2e7300edf1bafaf4a5d83e PKG_LICENSE:=GPL-2.0+ PKG_LICENSE_FILES:=COPYING From 16fa9c0ff62c089ca17a4ea649c42e260ca27427 Mon Sep 17 00:00:00 2001 From: Nicolas Thill Date: Mon, 6 Apr 2015 13:16:19 +0200 Subject: [PATCH 222/681] erlang: update to 17.5 Signed-off-by: Nicolas Thill --- lang/erlang/Makefile | 32 ++++++++++++++++---------------- 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/lang/erlang/Makefile b/lang/erlang/Makefile index dc4c31670..2423f374d 100644 --- a/lang/erlang/Makefile +++ b/lang/erlang/Makefile @@ -8,13 +8,13 @@ include $(TOPDIR)/rules.mk PKG_NAME:=erlang -PKG_VERSION:=17.4 +PKG_VERSION:=17.5 PKG_RELEASE:=1 PKG_SOURCE:=otp_src_$(PKG_VERSION).tar.gz PKG_SOURCE_URL:= http://www.erlang.org/download/ \ http://erlang.mirror.su.se/ -PKG_MD5SUM:=3d33c4c6bd7950240dcd7479edd9c7d8 +PKG_MD5SUM:=346dd0136bf1cc28cebc140e505206bb PKG_LICENSE:=ErlPL-1.1 PKG_LICENSE_FILES:=EPLICENCE @@ -45,7 +45,7 @@ endef define Package/erlang $(call Package/erlang/Default) DEPENDS+= +libncurses +librt +zlib - PROVIDES:= erlang-erts=6.1 erlang-kernel=3.0.1 erlang-sasl=2.4 erlang-stdlib=2.1 + PROVIDES:= erlang-erts=6.4 erlang-kernel=3.2 erlang-sasl=2.4.1 erlang-stdlib=2.4 endef define Package/erlang/description @@ -59,7 +59,7 @@ endef define Package/erlang-asn1 $(call Package/erlang/Default) TITLE:=Abstract Syntax Notation One (ASN.1) support - VERSION:=3.0.1 + VERSION:=3.0.4 DEPENDS+= +erlang +erlang-syntax-tools endef @@ -74,7 +74,7 @@ endef define Package/erlang-compiler $(call Package/erlang/Default) TITLE:=Byte code compiler - VERSION:=5.0.1 + VERSION:=5.0.4 DEPENDS+= +erlang +erlang-hipe endef @@ -89,7 +89,7 @@ endef define Package/erlang-crypto $(call Package/erlang/Default) TITLE:=Cryptography support - VERSION:=3.4 + VERSION:=3.5 DEPENDS+= +erlang +libopenssl endef @@ -104,7 +104,7 @@ endef define Package/erlang-hipe $(call Package/erlang/Default) TITLE:=High Performance Erlang - VERSION:=3.11 + VERSION:=3.11.3 DEPENDS+= +erlang endef @@ -119,7 +119,7 @@ endef define Package/erlang-inets $(call Package/erlang/Default) TITLE:=Internet clients and servers - VERSION:=5.10.2 + VERSION:=5.10.6 DEPENDS+= +erlang endef @@ -135,7 +135,7 @@ endef define Package/erlang-mnesia $(call Package/erlang/Default) TITLE:=Distributed database - VERSION:=4.12.1 + VERSION:=4.12.5 DEPENDS+= +erlang endef @@ -152,7 +152,7 @@ endef define Package/erlang-runtime-tools $(call Package/erlang/Default) TITLE:=Low-profile debugging/tracing tools - VERSION:=1.8.14 + VERSION:=1.8.16 DEPENDS+= +erlang endef @@ -167,7 +167,7 @@ endef define Package/erlang-snmp $(call Package/erlang/Default) TITLE:=Simple Network Management Protocol (SNMP) support - VERSION:=4.25.1 + VERSION:=5.1.1 DEPENDS+= +erlang +erlang-asn1 endef @@ -183,7 +183,7 @@ endef define Package/erlang-ssh $(call Package/erlang/Default) TITLE:=Secure Shell (SSH) support - VERSION:=3.0.3 + VERSION:=3.2 DEPENDS+= +erlang +erlang-crypto endef @@ -198,7 +198,7 @@ endef define Package/erlang-ssl $(call Package/erlang/Default) TITLE:=Secure Sockets Layer (SSL) support - VERSION:=5.3.5 + VERSION:=6.0 DEPENDS+= +erlang +erlang-crypto endef @@ -213,7 +213,7 @@ endef define Package/erlang-syntax-tools $(call Package/erlang/Default) TITLE:=Abstract Erlang syntax trees handling support - VERSION:=1.6.15 + VERSION:=1.6.18 DEPENDS+= +erlang endef @@ -300,9 +300,9 @@ endef define Build/InstallDev $(INSTALL_DIR) $(1)/usr/lib - $(CP) $(PKG_BUILD_DIR)/lib/erl_interface/obj/*/*.a $(1)/usr/lib + $(CP) $(PKG_BUILD_DIR)/lib/erl_interface/obj/*/*.a $(1)/usr/lib/ $(INSTALL_DIR) $(1)/usr/include - $(CP) $(PKG_BUILD_DIR)/lib/erl_interface/include/*.h $(1)/usr/include + $(CP) $(PKG_BUILD_DIR)/lib/erl_interface/include/*.h $(1)/usr/include/ endef define BuildModule From a33bc8baf50ce473811d0d75bd719cd4091c6f82 Mon Sep 17 00:00:00 2001 From: Luiz Angelo Daros de Luca Date: Mon, 6 Apr 2015 10:51:26 -0300 Subject: [PATCH 223/681] libvpx: updated to 1.4.0 This update brings some fixes for VP9. https://chromium.googlesource.com/webm/libvpx/+/v1.4.0 Also, it is ABI incompatible but the only known user of libvpx is gst1-plugins-good, which is already compatile: https://bugzilla.gnome.org/show_bug.cgi?id=739476 gst1-plugins-good has released bumped in order to rebuild. Signed-off-by: Luiz Angelo Daros de Luca --- libs/libvpx/Makefile | 4 ++-- multimedia/gst1-plugins-good/Makefile | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/libs/libvpx/Makefile b/libs/libvpx/Makefile index 4d8bb46b6..ae25bddf9 100644 --- a/libs/libvpx/Makefile +++ b/libs/libvpx/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2008-2014 OpenWrt.org +# Copyright (C) 2008-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -8,7 +8,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=libvpx -PKG_VERSION:=1.3.0 +PKG_VERSION:=1.4.0 PKG_RELEASE:=1 PKG_REV:=v$(PKG_VERSION) diff --git a/multimedia/gst1-plugins-good/Makefile b/multimedia/gst1-plugins-good/Makefile index f5965e493..f52d82fc3 100644 --- a/multimedia/gst1-plugins-good/Makefile +++ b/multimedia/gst1-plugins-good/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=gst1-plugins-good PKG_VERSION:=1.4.5 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_MAINTAINER:=W. Michael Petullo From 4e4c981ec3025cdaba33395753dbcdf1751db8f2 Mon Sep 17 00:00:00 2001 From: Luiz Angelo Daros de Luca Date: Tue, 7 Apr 2015 01:07:35 -0300 Subject: [PATCH 224/681] gst1-plugins-bad: add opus plugin This add opus plugin providing opusenc, opusdec, opusparse, rtpopuspay, rtpopusdepay Signed-off-by: Luiz Angelo Daros de Luca --- multimedia/gst1-plugins-bad/Makefile | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/multimedia/gst1-plugins-bad/Makefile b/multimedia/gst1-plugins-bad/Makefile index f4e8120ce..bfeb1c593 100644 --- a/multimedia/gst1-plugins-bad/Makefile +++ b/multimedia/gst1-plugins-bad/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=gst1-plugins-bad PKG_VERSION:=1.4.5 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_MAINTAINER:=W. Michael Petullo @@ -257,6 +257,7 @@ $(eval $(call GstBuildPlugin,mpegpsmux,mpegpsmux support,,,)) #$(eval $(call GstBuildPlugin,mpegtsdemux,mpegtsdemux support,mpegts pbutils tag,,)) #$(eval $(call GstBuildPlugin,mpegtsmux,mpegtsmux support,video,,)) $(eval $(call GstBuildPlugin,mxf,mxf support,audio video,,)) +$(eval $(call GstBuildPlugin,opus,OPUS plugin library,audio tag rtp,,+libopus)) $(eval $(call GstBuildPlugin,pcapparse,pcapparse support,,,)) $(eval $(call GstBuildPlugin,pnm,pnm support,video,,)) $(eval $(call GstBuildPlugin,rawparse,rawparse support,audio video,,)) From 3e722343999382ff6ff7b6abe4a4f3c0b76a6fd9 Mon Sep 17 00:00:00 2001 From: Jaehoon You Date: Mon, 16 Mar 2015 13:01:24 +0900 Subject: [PATCH 225/681] coova-chilli: fix compile error with cyassl Signed-off-by: Jaehoon You --- .../patches/300-fix-compile-with-cyassl.patch | 28 +++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 net/coova-chilli/patches/300-fix-compile-with-cyassl.patch diff --git a/net/coova-chilli/patches/300-fix-compile-with-cyassl.patch b/net/coova-chilli/patches/300-fix-compile-with-cyassl.patch new file mode 100644 index 000000000..3b61d49ca --- /dev/null +++ b/net/coova-chilli/patches/300-fix-compile-with-cyassl.patch @@ -0,0 +1,28 @@ +--- a/src/md5.h ++++ b/src/md5.h +@@ -28,6 +28,14 @@ + #define MD5Update MD5_Update + #define MD5Final MD5_Final + ++#elif HAVE_CYASSL ++#include ++ ++#define MD5Init MD5_Init ++#define MD5Update MD5_Update ++#define MD5Final MD5_Final ++ ++typedef struct CYASSL_MD5_CTX MD5_CTX; + #else + + struct MD5Context { +--- a/src/md5.c ++++ b/src/md5.c +@@ -18,7 +18,7 @@ + #include /* for memcpy() */ + #include "md5.h" + +-#ifndef HAVE_OPENSSL ++#if !defined(HAVE_OPENSSL) && !defined(HAVE_CYASSL) + + void byteReverse(unsigned char *buf, size_t longs); + From ca9d3f24cffa57caa101020923c33404e98bee43 Mon Sep 17 00:00:00 2001 From: Jaehoon You Date: Sat, 21 Feb 2015 02:30:25 +0900 Subject: [PATCH 226/681] coova-chilli: add netfilter kernel module package with patches Signed-off-by: Jaehoon You --- net/coova-chilli/Makefile | 37 ++++++++++++++ .../patches/200-fix_compile_kmod.patch | 17 +++++++ .../201-fix_dereferencing_pointers.patch | 49 +++++++++++++++++++ 3 files changed, 103 insertions(+) create mode 100644 net/coova-chilli/patches/200-fix_compile_kmod.patch create mode 100644 net/coova-chilli/patches/201-fix_dereferencing_pointers.patch diff --git a/net/coova-chilli/Makefile b/net/coova-chilli/Makefile index 2ff8729ed..ad9d3015e 100644 --- a/net/coova-chilli/Makefile +++ b/net/coova-chilli/Makefile @@ -36,6 +36,7 @@ PKG_CONFIG_DEPENDS := \ COOVACHILLI_OPENSSL include $(INCLUDE_DIR)/package.mk +include $(INCLUDE_DIR)/kernel.mk define Package/coova-chilli SUBMENU:=Captive Portals @@ -61,6 +62,38 @@ define Package/coova-chilli/config source "$(SOURCE)/Config.in" endef +define KernelPackage/ipt-coova + URL:=http://www.coova.org/CoovaChilli + SUBMENU:=Netfilter Extensions + DEPENDS:=coova-chilli +kmod-ipt-core +libxtables + TITLE:=Coova netfilter module + FILES:=$(PKG_BUILD_DIR)/src/linux/xt_*.$(LINUX_KMOD_SUFFIX) + AUTOLOAD:=$(call AutoProbe,xt_coova) +endef + +define KernelPackage/ipt-coova/description + Netfilter kernel module for CoovaChilli + Includes: + - coova +endef + +DISABLE_NLS= + +TARGET_CFLAGS += $(FPIC) + +CONFIGURE_VARS += \ + ARCH="$(LINUX_KARCH)" \ + KERNEL_DIR="$(LINUX_DIR)" + +MAKE_FLAGS += \ + ARCH="$(LINUX_KARCH)" \ + KERNEL_DIR="$(LINUX_DIR)" + +MAKE_INSTALL_FLAGS += \ + ARCH="$(LINUX_KARCH)" \ + KERNEL_DIR="$(LINUX_DIR)" \ + INSTALL_MOD_PATH="$(PKG_INSTALL_DIR)" + define Build/Prepare $(call Build/Prepare/Default) ( cd $(PKG_BUILD_DIR) ; \ @@ -82,6 +115,7 @@ define Build/Configure $(if $(CONFIG_COOVACHILLI_MATRIXSSL),--with,--without)-matrixssl \ $(if $(CONFIG_COOVACHILLI_CYASSL),--with,--without)-cyaxssl \ $(if $(CONFIG_COOVACHILLI_OPENSSL),--with,--without)-openssl \ + $(if $(CONFIG_PACKAGE_kmod-ipt-coova),--with-nfcoova) \ ) endef @@ -100,6 +134,9 @@ define Package/coova-chilli/install $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/chilli* $(1)/usr/sbin/ $(INSTALL_DIR) $(1)/usr/lib/ $(CP) $(PKG_INSTALL_DIR)/usr/lib/lib*.so.* $(1)/usr/lib/ + $(INSTALL_DIR) $(1)/usr/lib/iptables + $(CP) $(PKG_INSTALL_DIR)/usr/iptables/lib*.so $(1)/usr/lib/iptables endef $(eval $(call BuildPackage,coova-chilli)) +$(eval $(call KernelPackage,ipt-coova)) diff --git a/net/coova-chilli/patches/200-fix_compile_kmod.patch b/net/coova-chilli/patches/200-fix_compile_kmod.patch new file mode 100644 index 000000000..27225786e --- /dev/null +++ b/net/coova-chilli/patches/200-fix_compile_kmod.patch @@ -0,0 +1,17 @@ +--- a/src/linux/Makefile ++++ b/src/linux/Makefile +@@ -21,11 +21,11 @@ lib%.so: lib%.o + $(CC) $(CFLAGS) -shared -o $@ $^; + + lib%.o: lib%.c +- $(CC) $(CFLAGS) -fPIC -O2 -Wall -I${KERNEL_DIR}/include -D_INIT=lib$*_init -c -o $@ $<; ++ $(CC) $(CFLAGS) -D_INIT=lib$*_init -c -o $@ $<; + + install: modules_install libxt_coova.so +- mkdir -p $(DESTDIR)/lib/xtables/ +- cp libxt_coova.so $(DESTDIR)/lib/xtables/ ++ mkdir -p $(DESTDIR)/usr/lib/iptables/ ++ cp libxt_coova.so $(DESTDIR)/usr/lib/iptables/ + + distdir: + diff --git a/net/coova-chilli/patches/201-fix_dereferencing_pointers.patch b/net/coova-chilli/patches/201-fix_dereferencing_pointers.patch new file mode 100644 index 000000000..d608835a4 --- /dev/null +++ b/net/coova-chilli/patches/201-fix_dereferencing_pointers.patch @@ -0,0 +1,49 @@ +--- a/src/linux/xt_coova.c ++++ b/src/linux/xt_coova.c +@@ -292,6 +292,8 @@ static int coova_mt_check(const struct x + struct coova_table *t; + #ifdef CONFIG_PROC_FS + struct proc_dir_entry *pde; ++ kuid_t uid; ++ kgid_t gid; + #endif + unsigned i; + int ret = 0; +@@ -330,8 +332,9 @@ static int coova_mt_check(const struct x + ret = -ENOMEM; + goto out; + } +- pde->uid = ip_list_uid; +- pde->gid = ip_list_gid; ++ uid = make_kuid(&init_user_ns, ip_list_uid); ++ gid = make_kgid(&init_user_ns, ip_list_gid); ++ proc_set_user(pde, uid, gid); + #endif + spin_lock_bh(&coova_lock); + list_add_tail(&t->list, &tables); +@@ -445,14 +448,13 @@ static const struct seq_operations coova + + static int coova_seq_open(struct inode *inode, struct file *file) + { +- struct proc_dir_entry *pde = PDE(inode); + struct coova_iter_state *st; + + st = __seq_open_private(file, &coova_seq_ops, sizeof(*st)); + if (st == NULL) + return -ENOMEM; + +- st->table = pde->data; ++ st->table = PDE_DATA(inode); + return 0; + } + +@@ -460,8 +462,7 @@ static ssize_t + coova_mt_proc_write(struct file *file, const char __user *input, + size_t size, loff_t *loff) + { +- const struct proc_dir_entry *pde = PDE(file->f_path.dentry->d_inode); +- struct coova_table *t = pde->data; ++ struct coova_table *t = PDE_DATA(file->f_path.dentry->d_inode); + struct coova_entry *e; + char buf[sizeof("+b335:1d35:1e55:dead:c0de:1715:5afe:c0de")]; + const char *c = buf; From b8ab944d23bcef4e5bbe13da9716b6c7b9330da5 Mon Sep 17 00:00:00 2001 From: Steven Barth Date: Tue, 7 Apr 2015 12:07:27 +0200 Subject: [PATCH 227/681] strongswan: add missing dependency Signed-off-by: Steven Barth --- net/strongswan/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/net/strongswan/Makefile b/net/strongswan/Makefile index 9500bcb9c..5a2e0fac0 100644 --- a/net/strongswan/Makefile +++ b/net/strongswan/Makefile @@ -435,7 +435,7 @@ $(eval $(call BuildPlugin,aes,AES crypto,)) $(eval $(call BuildPlugin,af-alg,AF_ALG crypto interface to Linux Crypto API,+kmod-crypto-user)) $(eval $(call BuildPlugin,agent,SSH agent signing,)) $(eval $(call BuildPlugin,attr,file based config,)) -$(eval $(call BuildPlugin,attr-sql,SQL based config,+strongswan-mod-sql)) +$(eval $(call BuildPlugin,attr-sql,SQL based config,+strongswan-mod-sql +strongswan-charon)) $(eval $(call BuildPlugin,blowfish,Blowfish crypto,)) $(eval $(call BuildPlugin,ccm,CCM AEAD wrapper crypto,)) $(eval $(call BuildPlugin,cmac,CMAC crypto,)) From 11e83c69281842975db5c49664f20c1c2d08441a Mon Sep 17 00:00:00 2001 From: Alex Samorukov Date: Wed, 8 Apr 2015 17:07:52 +0000 Subject: [PATCH 228/681] apinger: add apinger package Alarm Pinger (apinger) is a little tool which monitors various IP devices by simple ICMP echo requests. There are various other tools, that can do this, but most of them are shell or perl scripts, spawning many processes, thus much CPU-expensive, especially when one wants continuous monitoring and fast response on target failure. Signed-off-by: Alex Samorukov --- net/apinger/Makefile | 67 +++++++++++++++++++++++ net/apinger/files/apinger.init | 18 ++++++ net/apinger/patches/001-autoreconf.patch | 13 +++++ net/apinger/patches/002-run_as_user.patch | 11 ++++ net/apinger/patches/003-no_docs.patch | 11 ++++ 5 files changed, 120 insertions(+) create mode 100644 net/apinger/Makefile create mode 100644 net/apinger/files/apinger.init create mode 100644 net/apinger/patches/001-autoreconf.patch create mode 100644 net/apinger/patches/002-run_as_user.patch create mode 100644 net/apinger/patches/003-no_docs.patch diff --git a/net/apinger/Makefile b/net/apinger/Makefile new file mode 100644 index 000000000..5d73ae1bf --- /dev/null +++ b/net/apinger/Makefile @@ -0,0 +1,67 @@ +# +# Copyright (C) 2006-2014 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=apinger +PKG_VERSION:=0.6.1 +PKG_RELEASE=$(PKG_SOURCE_VERSION) + +PKG_SOURCE_PROTO:=git +PKG_SOURCE_URL:=https://github.com/Jajcus/apinger.git +PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) +PKG_SOURCE_VERSION:=c7da72f7ec26eedd7fd8d224c0e10787b204f94e +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.gz + +PKG_MAINTAINER:=Alex Samorukov +PKG_LICENSE:= GPL-2.0 + +PKG_FIXUP:=autoreconf + +PKG_BUILD_PARALLEL:=1 +PKG_INSTALL:=1 + +include $(INCLUDE_DIR)/package.mk + +define Package/apinger + SECTION:=net + CATEGORY:=Network + TITLE:=Tool which monitors various IP devices by simple ICMP echo requests + URL:=https://github.com/Jajcus/apinger + PKG_MAINTAINER:=Alex Samorukov +endef + +define Package/apinger/description + Alarm Pinger (apinger) is a little tool which monitors various IP devices by + simple ICMP echo requests. There are various other tools, that can do this, + but most of them are shell or perl scripts, spawning many processes, thus much + CPU-expensive, especially when one wants continuous monitoring and fast + response on target failure. Alarm Pinger is a single program written in C, so + it doesn't need much CPU power even when monitoring many targets with frequent + probes. Alarm Pinger supports both IPv4 and IPv6. The code have been tested + on Linux and FreeBSD. +endef + +define Package/apinger/conffiles +/etc/apinger.conf +endef + +define Build/Configure + $(call Build/Configure/Default) +endef + +define Package/apinger/install + $(INSTALL_DIR) $(1)/usr/sbin + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/apinger $(1)/usr/sbin/ + $(INSTALL_DIR) $(1)/etc + $(INSTALL_DATA) $(PKG_BUILD_DIR)/src/apinger.conf $(1)/etc/apinger.conf + $(INSTALL_DIR) $(1)/etc/init.d + $(INSTALL_BIN) ./files/apinger.init $(1)/etc/init.d/apinger +endef + +$(eval $(call BuildPackage,apinger)) + diff --git a/net/apinger/files/apinger.init b/net/apinger/files/apinger.init new file mode 100644 index 000000000..8caac3869 --- /dev/null +++ b/net/apinger/files/apinger.init @@ -0,0 +1,18 @@ +#!/bin/sh /etc/rc.common +# Copyright (C) 2006-2011 OpenWrt.org + +START=80 + +SERVICE_USE_PID=1 + +start() { + service_start /usr/sbin/apinger +} + +stop() { + service_stop /usr/sbin/apinger +} + +reload() { + service_reload /usr/sbin/apinger +} diff --git a/net/apinger/patches/001-autoreconf.patch b/net/apinger/patches/001-autoreconf.patch new file mode 100644 index 000000000..cb5bd454d --- /dev/null +++ b/net/apinger/patches/001-autoreconf.patch @@ -0,0 +1,13 @@ +--- apinger-0.6.1/acinclude.m4 2003-10-21 12:44:48.000000000 +0000 ++++ apinger-0.6.1/acinclude.m4 2015-04-08 15:27:37.451903960 +0000 +@@ -39,9 +39,7 @@ + [$jk_inet_includes + $jk_icmp_includes]) + +-AC_CHECK_MEMBERS([struct icmp.icmp_type, struct icmp.icmp_code,\ +-struct icmp.icmp_cksum, struct icmp.icmp_seq,\ +-struct icmp.icmp_id],[], ++AC_CHECK_MEMBERS([struct icmp.icmp_type, struct icmp.icmp_code,struct icmp.icmp_cksum, struct icmp.icmp_seq,struct icmp.icmp_id],[], + AC_MSG_ERROR(struct icmp not defined or not compatible), + [$jk_inet_includes + $jk_icmp_includes]) diff --git a/net/apinger/patches/002-run_as_user.patch b/net/apinger/patches/002-run_as_user.patch new file mode 100644 index 000000000..16d64acc5 --- /dev/null +++ b/net/apinger/patches/002-run_as_user.patch @@ -0,0 +1,11 @@ +--- apinger-0.6.1/src/apinger.conf.orig 2015-04-08 16:05:24.558919722 +0000 ++++ apinger-0.6.1/src/apinger.conf 2015-04-08 16:07:47.089170236 +0000 +@@ -9,7 +9,7 @@ + + ## User and group the pinger should run as + user "nobody" +-group "nobody" ++group "nogroup" + + ## Mailer to use (default: "/usr/lib/sendmail -t") + #mailer "/var/qmail/bin/qmail-inject" diff --git a/net/apinger/patches/003-no_docs.patch b/net/apinger/patches/003-no_docs.patch new file mode 100644 index 000000000..c08f44de7 --- /dev/null +++ b/net/apinger/patches/003-no_docs.patch @@ -0,0 +1,11 @@ +--- apinger-0.6.1/Makefile.am.orig 2015-04-08 16:47:40.999990050 +0000 ++++ apinger-0.6.1/Makefile.am 2015-04-08 16:48:07.565220137 +0000 +@@ -1,7 +1,7 @@ + + EXTRA_DIST = autogen.sh TODO BUGS + +-SUBDIRS = src doc ++SUBDIRS = src + + .PHONY: ChangeLog + From bdd340911511195e0e7372caaf20df76627059ff Mon Sep 17 00:00:00 2001 From: Nikos Mavrogiannopoulos Date: Wed, 8 Apr 2015 20:50:37 +0200 Subject: [PATCH 229/681] ocserv: updated to 0.10.2 Signed-off-by: Nikos Mavrogiannopoulos --- net/ocserv/Makefile | 8 +- net/ocserv/files/ocserv.conf.template | 23 +++- net/ocserv/files/ocserv.init | 2 +- ...t-impose-timeouts-on-reads-from-main.patch | 104 ++++++++++++++++++ .../002-reject-bad-commands-from-main.patch | 34 ++++++ 5 files changed, 165 insertions(+), 6 deletions(-) create mode 100644 net/ocserv/patches/001-sec-mod-do-not-impose-timeouts-on-reads-from-main.patch create mode 100644 net/ocserv/patches/002-reject-bad-commands-from-main.patch diff --git a/net/ocserv/Makefile b/net/ocserv/Makefile index b38e9b452..050fdc74d 100644 --- a/net/ocserv/Makefile +++ b/net/ocserv/Makefile @@ -8,13 +8,13 @@ include $(TOPDIR)/rules.mk PKG_NAME:=ocserv -PKG_VERSION:=0.9.2 -PKG_RELEASE:=2 +PKG_VERSION:=0.10.2 +PKG_RELEASE:=1 PKG_BUILD_DIR :=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION) PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz -PKG_SOURCE_URL :=ftp://ftp.infradead.org/pub/ocserv/ -PKG_MD5SUM:=9697c37cc81b30be2b178258ee595d97 +PKG_SOURCE_URL:=ftp://ftp.infradead.org/pub/ocserv/ +PKG_MD5SUM:=32ce2c2a00a97ab7c27e571aae207b2d PKG_LICENSE:=GPLv2 PKG_LICENSE_FILES:=COPYING diff --git a/net/ocserv/files/ocserv.conf.template b/net/ocserv/files/ocserv.conf.template index 1694fd782..b5bbec31e 100644 --- a/net/ocserv/files/ocserv.conf.template +++ b/net/ocserv/files/ocserv.conf.template @@ -35,7 +35,7 @@ max-clients = |MAX_CLIENTS| # Limit the number of client connections to one every X milliseconds # (X is the provided value). Set to zero for no limit. -#rate-limit-ms = 100 +rate-limit-ms = 100 # Limit the number of identical clients (i.e., users connecting # multiple times). Unset or set to zero for unlimited. @@ -142,6 +142,27 @@ auth-timeout = 40 # a failed authentication attempt. min-reauth-time = 360 +# Banning clients in ocserv works with a point system. IP addresses +# that get a score over that configured number are banned for +# min-reauth-time seconds. By default a wrong password attempt is 10 points, +# a KKDCP POST is 1 point, and a connection is 1 point. Note that +# due to difference processes being involved the count of points +# will not be real-time precise. +# +# Score banning cannot be reliably used when receiving proxied connections +# locally from an HTTP server (i.e., when listen-clear-file is used). +# +# Set to zero to disable. +max-ban-score = 50 + +# The time (in seconds) that all score kept for a client is reset. +ban-reset-time = 300 + +# In case you'd like to change the default points. +#ban-points-wrong-password = 10 +#ban-points-connection = 1 +#ban-points-kkdcp = 1 + # Cookie timeout (in seconds) # which he can reconnect. That cookie will be invalided if not # used within this timeout value. On a user disconnection, that diff --git a/net/ocserv/files/ocserv.init b/net/ocserv/files/ocserv.init index aee342d68..fe0718b3b 100644 --- a/net/ocserv/files/ocserv.init +++ b/net/ocserv/files/ocserv.init @@ -34,7 +34,7 @@ setup_config() { ipv6_addr=`echo $ip6addr|cut -d '/' -f 1` ipv6_prefix=`echo $ip6addr|cut -d '/' -f 2` - test $auth = "plain" && authsuffix="\[/var/etc/ocpasswd\]" + test $auth = "plain" && authsuffix="\[passwd=/var/etc/ocpasswd\]" dyndns="false" hostname=`uci show ddns|grep domain|head -1|cut -d '=' -f 2 2>/dev/null` diff --git a/net/ocserv/patches/001-sec-mod-do-not-impose-timeouts-on-reads-from-main.patch b/net/ocserv/patches/001-sec-mod-do-not-impose-timeouts-on-reads-from-main.patch new file mode 100644 index 000000000..0d3d2219d --- /dev/null +++ b/net/ocserv/patches/001-sec-mod-do-not-impose-timeouts-on-reads-from-main.patch @@ -0,0 +1,104 @@ +From 0967f05f8d7665a67f3cb0fbed46c48dc7ec74cb Mon Sep 17 00:00:00 2001 +From: Nikos Mavrogiannopoulos +Date: Tue, 31 Mar 2015 10:13:08 +0200 +Subject: [PATCH] sec-mod: do not impose timeouts on reads from main + +--- + src/sec-mod.c | 60 ++++++++++++++++++++++++++++++++++++++++++++++++++++------- + 1 file changed, 53 insertions(+), 7 deletions(-) + +diff --git a/src/sec-mod.c b/src/sec-mod.c +index b824e87..5a0763d 100644 +--- a/src/sec-mod.c ++++ b/src/sec-mod.c +@@ -404,7 +404,56 @@ static void check_other_work(sec_mod_st *sec) + } + + static +-int serve_request(sec_mod_st *sec, int cfd, unsigned is_main, uint8_t *buffer, unsigned buffer_size) ++int serve_request_main(sec_mod_st *sec, int cfd, uint8_t *buffer, unsigned buffer_size) ++{ ++ int ret, e; ++ unsigned cmd, length; ++ uint16_t l16; ++ void *pool = buffer; ++ ++ /* read request */ ++ ret = force_read(cfd, buffer, 3); ++ if (ret == 0) ++ goto leave; ++ else if (ret < 3) { ++ e = errno; ++ seclog(sec, LOG_INFO, "error receiving msg head: %s", ++ strerror(e)); ++ ret = ERR_BAD_COMMAND; ++ goto leave; ++ } ++ ++ cmd = buffer[0]; ++ memcpy(&l16, &buffer[1], 2); ++ length = l16; ++ ++ if (length > buffer_size - 4) { ++ seclog(sec, LOG_INFO, "too big message (%d)", length); ++ ret = ERR_BAD_COMMAND; ++ goto leave; ++ } ++ ++ /* read the body */ ++ ret = force_read(cfd, buffer, length); ++ if (ret < 0) { ++ e = errno; ++ seclog(sec, LOG_INFO, "error receiving msg body: %s", ++ strerror(e)); ++ ret = ERR_BAD_COMMAND; ++ goto leave; ++ } ++ ++ ret = process_packet_from_main(pool, cfd, sec, cmd, buffer, ret); ++ if (ret < 0) { ++ seclog(sec, LOG_INFO, "error processing data for '%s' command (%d)", cmd_request_to_str(cmd), ret); ++ } ++ ++ leave: ++ return ret; ++} ++ ++static ++int serve_request(sec_mod_st *sec, int cfd, uint8_t *buffer, unsigned buffer_size) + { + int ret, e; + unsigned cmd, length; +@@ -443,10 +492,7 @@ int serve_request(sec_mod_st *sec, int cfd, unsigned is_main, uint8_t *buffer, u + goto leave; + } + +- if (is_main) +- ret = process_packet_from_main(pool, cfd, sec, cmd, buffer, ret); +- else +- ret = process_packet(pool, cfd, sec, cmd, buffer, ret); ++ ret = process_packet(pool, cfd, sec, cmd, buffer, ret); + if (ret < 0) { + seclog(sec, LOG_INFO, "error processing data for '%s' command (%d)", cmd_request_to_str(cmd), ret); + } +@@ -677,7 +723,7 @@ void sec_mod_server(void *main_pool, struct perm_cfg_st *perm_config, const char + if (buffer == NULL) { + seclog(sec, LOG_ERR, "error in memory allocation"); + } else { +- ret = serve_request(sec, cmd_fd, 1, buffer, buffer_size); ++ ret = serve_request_main(sec, cmd_fd, buffer, buffer_size); + if (ret < 0 && ret == ERR_BAD_COMMAND) { + seclog(sec, LOG_ERR, "error processing command from main"); + exit(1); +@@ -710,7 +756,7 @@ void sec_mod_server(void *main_pool, struct perm_cfg_st *perm_config, const char + if (buffer == NULL) { + seclog(sec, LOG_ERR, "error in memory allocation"); + } else { +- serve_request(sec, cfd, 0, buffer, buffer_size); ++ serve_request(sec, cfd, buffer, buffer_size); + talloc_free(buffer); + } + } +-- +2.1.4 + diff --git a/net/ocserv/patches/002-reject-bad-commands-from-main.patch b/net/ocserv/patches/002-reject-bad-commands-from-main.patch new file mode 100644 index 000000000..b3e72d3dc --- /dev/null +++ b/net/ocserv/patches/002-reject-bad-commands-from-main.patch @@ -0,0 +1,34 @@ +From 99dd4a6e03b669a5b5fe234fa665b75bbd95c593 Mon Sep 17 00:00:00 2001 +From: Nikos Mavrogiannopoulos +Date: Tue, 7 Apr 2015 17:13:29 +0200 +Subject: [PATCH] reject bad commands from main + +--- + src/sec-mod.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/src/sec-mod.c b/src/sec-mod.c +index 5a0763d..7783264 100644 +--- a/src/sec-mod.c ++++ b/src/sec-mod.c +@@ -325,7 +325,7 @@ int process_packet_from_main(void *pool, int cfd, sec_mod_st * sec, cmd_request_ + data.data); + if (msg == NULL) { + seclog(sec, LOG_INFO, "error unpacking auth ban ip reply\n"); +- return -1; ++ return ERR_BAD_COMMAND; + } + + handle_sec_auth_ban_ip_reply(cfd, sec, msg); +@@ -342,7 +342,7 @@ int process_packet_from_main(void *pool, int cfd, sec_mod_st * sec, cmd_request_ + data.data); + if (msg == NULL) { + seclog(sec, LOG_INFO, "error unpacking session close\n"); +- return -1; ++ return ERR_BAD_COMMAND; + } + + ret = handle_sec_auth_session_cmd(cfd, sec, msg, cmd); +-- +2.1.4 + From 63234f185d87efc51fc7799e3ba058a06a544d91 Mon Sep 17 00:00:00 2001 From: Markus Stenberg Date: Thu, 9 Apr 2015 14:28:24 +0300 Subject: [PATCH 230/681] mdnsresponder: Fixed deprecated address handling (the new getifaddr code in the patch was wrong; instead, fixed old mDNSResponder code to work with correct sized interface names, and to handle deprecated flag). --- .../patches/100-linux_fixes.patch | 332 +++++------------- 1 file changed, 80 insertions(+), 252 deletions(-) diff --git a/net/mdnsresponder/patches/100-linux_fixes.patch b/net/mdnsresponder/patches/100-linux_fixes.patch index 512c1738a..51b948486 100644 --- a/net/mdnsresponder/patches/100-linux_fixes.patch +++ b/net/mdnsresponder/patches/100-linux_fixes.patch @@ -1,3 +1,6 @@ +diff --git a/.gitignore b/.gitignore +new file mode 100644 +index 0000000..920cdfc --- /dev/null +++ b/.gitignore @@ -0,0 +1,4 @@ @@ -5,6 +8,21 @@ +mDNSPosix/build +mDNSPosix/objects + +diff --git a/Clients/Makefile b/Clients/Makefile +index 383af31..925c20e 100755 +--- a/Clients/Makefile ++++ b/Clients/Makefile +@@ -34,7 +34,7 @@ TARGETS = build/dns-sd build/dns-sd64 + LIBS = + else + TARGETS = build/dns-sd +-LIBS = -L../mDNSPosix/build/prod/ -ldns_sd ++LIBS ?= -L../mDNSPosix/build/prod/ -ldns_sd + endif + + all: $(TARGETS) +diff --git a/mDNSPosix/PosixDaemon.c b/mDNSPosix/PosixDaemon.c +index 88b3292..e86a6c7 100644 --- a/mDNSPosix/PosixDaemon.c +++ b/mDNSPosix/PosixDaemon.c @@ -37,6 +37,11 @@ @@ -70,9 +88,11 @@ if (mStatus_NoError == err) err = MainLoop(&mDNSStorage); +diff --git a/mDNSPosix/Responder.c b/mDNSPosix/Responder.c +index 3996b7b..e58d8eb 100755 --- a/mDNSPosix/Responder.c +++ b/mDNSPosix/Responder.c -@@ -603,7 +603,8 @@ static mStatus RegisterServicesInFile(co +@@ -603,7 +603,8 @@ static mStatus RegisterServicesInFile(const char *filePath) status = mStatus_UnknownErr; } @@ -82,9 +102,11 @@ return status; } +diff --git a/mDNSPosix/mDNSPosix.c b/mDNSPosix/mDNSPosix.c +index 6effa12..d3acf99 100755 --- a/mDNSPosix/mDNSPosix.c +++ b/mDNSPosix/mDNSPosix.c -@@ -138,7 +138,7 @@ mDNSlocal void SockAddrTomDNSAddr(const +@@ -138,7 +138,7 @@ mDNSlocal void SockAddrTomDNSAddr(const struct sockaddr *const sa, mDNSAddr *ipA // mDNS core calls this routine when it needs to send a packet. mDNSexport mStatus mDNSPlatformSendUDP(const mDNS *const m, const void *const msg, const mDNSu8 *const end, @@ -93,7 +115,7 @@ mDNSIPPort dstPort, mDNSBool useBackgroundTrafficClass) { int err = 0; -@@ -583,9 +583,17 @@ mDNSlocal void FreePosixNetworkInterface +@@ -583,9 +583,17 @@ mDNSlocal void FreePosixNetworkInterface(PosixNetworkInterface *intf) { assert(intf != NULL); if (intf->intfName != NULL) free((void *)intf->intfName); @@ -113,7 +135,7 @@ #endif // Move interface to the RecentInterfaces list for a minute -@@ -724,6 +732,29 @@ mDNSlocal int SetupSocket(struct sockadd +@@ -724,6 +732,29 @@ mDNSlocal int SetupSocket(struct sockaddr *intfAddr, mDNSIPPort port, int interf if (err < 0) { err = errno; perror("setsockopt - IP_MULTICAST_TTL"); } } @@ -143,7 +165,7 @@ // And start listening for packets if (err == 0) { -@@ -805,6 +836,29 @@ mDNSlocal int SetupSocket(struct sockadd +@@ -805,6 +836,29 @@ mDNSlocal int SetupSocket(struct sockaddr *intfAddr, mDNSIPPort port, int interf if (err < 0) { err = errno; perror("setsockopt - IPV6_MULTICAST_HOPS"); } } @@ -173,7 +195,7 @@ // And start listening for packets if (err == 0) { -@@ -836,7 +890,12 @@ mDNSlocal int SetupSocket(struct sockadd +@@ -836,7 +890,12 @@ mDNSlocal int SetupSocket(struct sockaddr *intfAddr, mDNSIPPort port, int interf } // Clean up @@ -187,7 +209,7 @@ assert((err == 0) == (*sktPtr != -1)); return err; } -@@ -1026,7 +1085,7 @@ mDNSlocal mStatus OpenIfNotifySocket(int +@@ -1026,7 +1085,7 @@ mDNSlocal mStatus OpenIfNotifySocket(int *pFD) /* Subscribe the socket to Link & IP addr notifications. */ mDNSPlatformMemZero(&snl, sizeof snl); snl.nl_family = AF_NETLINK; @@ -196,7 +218,7 @@ ret = bind(sock, (struct sockaddr *) &snl, sizeof snl); if (0 == ret) *pFD = sock; -@@ -1104,11 +1163,18 @@ mDNSlocal mDNSu32 ProcessRoutingNo +@@ -1104,11 +1163,18 @@ mDNSlocal mDNSu32 ProcessRoutingNotification(int sd) PrintNetLinkMsg(pNLMsg); #endif @@ -217,7 +239,7 @@ // Advance pNLMsg to the next message in the buffer if ((pNLMsg->nlmsg_flags & NLM_F_MULTI) != 0 && pNLMsg->nlmsg_type != NLMSG_DONE) -@@ -1279,8 +1345,12 @@ mDNSexport mStatus mDNSPlatformInit(mDNS +@@ -1279,8 +1345,12 @@ mDNSexport mStatus mDNSPlatformInit(mDNS *const m) if (err == mStatus_NoError) err = SetupSocket(&sa, zeroIPPort, 0, &m->p->unicastSocket6); #endif @@ -230,7 +252,7 @@ // Tell mDNS core about DNS Servers mDNS_Lock(m); -@@ -1313,9 +1383,17 @@ mDNSexport void mDNSPlatformClose(mDNS * +@@ -1313,9 +1383,17 @@ mDNSexport void mDNSPlatformClose(mDNS *const m) { assert(m != NULL); ClearInterfaceList(m); @@ -250,7 +272,7 @@ #endif } -@@ -1571,14 +1649,14 @@ mDNSexport mStatus mDNSPlatformClearS +@@ -1571,14 +1649,14 @@ mDNSexport mStatus mDNSPlatformClearSPSMACAddr(void) mDNSexport mDNSu16 mDNSPlatformGetUDPPort(UDPSocket *sock) { (void) sock; // unused @@ -267,257 +289,63 @@ return mDNSfalse; } +diff --git a/mDNSPosix/mDNSUNP.c b/mDNSPosix/mDNSUNP.c +index b392fc7..fe800af 100755 --- a/mDNSPosix/mDNSUNP.c +++ b/mDNSPosix/mDNSUNP.c -@@ -61,154 +61,86 @@ - #endif - +@@ -63,6 +63,7 @@ #if defined(AF_INET6) && HAVE_IPV6 && HAVE_LINUX --#include --#include -+#include -+#include - --/* Converts a prefix length to IPv6 network mask */ --void plen_to_mask(int plen, char *addr) { -- int i; -- int colons=7; /* Number of colons in IPv6 address */ -- int bits_in_block=16; /* Bits per IPv6 block */ -- for(i=0; i<=colons; i++) { -- int block, ones=0xffff, ones_in_block; -- if (plen>bits_in_block) ones_in_block=bits_in_block; -- else ones_in_block=plen; -- block = ones & (ones << (bits_in_block-ones_in_block)); -- i==0 ? sprintf(addr, "%x", block) : sprintf(addr, "%s:%x", addr, block); -- plen -= ones_in_block; -- } --} - --/* Gets IPv6 interface information from the /proc filesystem in linux*/ --struct ifi_info *get_ifi_info_linuxv6(int family, int doaliases) -+/* Correct way to deal with this is just to use getifaddrs (glibc -+ * 2.3.3+ and various BSDs, but BSDs are 'slightly different' just to -+ * make life interesting). We assume Linux getifaddrs is available, -+ * and if not, please upgrade. */ -+struct ifi_info *get_ifi_info_linuxv6(int doaliases) - { -- struct ifi_info *ifi, *ifihead, **ifipnext, *ifipold, **ifiptr; -- FILE *fp; -- char addr[8][5]; -- int flags, myflags, index, plen, scope; + #include + #include ++#include + + /* Converts a prefix length to IPv6 network mask */ + void plen_to_mask(int plen, char *addr) { +@@ -86,7 +87,7 @@ struct ifi_info *get_ifi_info_linuxv6(int family, int doaliases) + FILE *fp; + char addr[8][5]; + int flags, myflags, index, plen, scope; - char ifname[9], lastname[IFNAMSIZ]; -- char addr6[32+7+1]; /* don't forget the seven ':' */ -- struct addrinfo hints, *res0; -- struct sockaddr_in6 *sin6; -- struct in6_addr *addrptr; -- int err; -- int sockfd = -1; -- struct ifreq ifr; ++ char ifname[IFNAMSIZ], lastname[IFNAMSIZ]; + char addr6[32+7+1]; /* don't forget the seven ':' */ + struct addrinfo hints, *res0; + struct sockaddr_in6 *sin6; +@@ -94,7 +95,8 @@ struct ifi_info *get_ifi_info_linuxv6(int family, int doaliases) + int err; + int sockfd = -1; + struct ifreq ifr; - -- res0=NULL; -- ifihead = NULL; -- ifipnext = &ifihead; -- lastname[0] = 0; -- -- if ((fp = fopen(PROC_IFINET6_PATH, "r")) != NULL) { -- sockfd = socket(AF_INET6, SOCK_DGRAM, 0); -- if (sockfd < 0) { -- goto gotError; -- } -- while (fscanf(fp, ++ char mask[64] = "%4s%4s%4s%4s%4s%4s%4s%4s %02x %02x %02x %02x %"; ++ sprintf(mask+strlen(mask), "%ds\n", IFNAMSIZ); + res0=NULL; + ifihead = NULL; + ifipnext = &ifihead; +@@ -106,11 +108,12 @@ struct ifi_info *get_ifi_info_linuxv6(int family, int doaliases) + goto gotError; + } + while (fscanf(fp, - "%4s%4s%4s%4s%4s%4s%4s%4s %02x %02x %02x %02x %8s\n", -- addr[0],addr[1],addr[2],addr[3], -- addr[4],addr[5],addr[6],addr[7], -- &index, &plen, &scope, &flags, ifname) != EOF) { -- -- myflags = 0; -- if (strncmp(lastname, ifname, IFNAMSIZ) == 0) { -- if (doaliases == 0) -- continue; /* already processed this interface */ -- myflags = IFI_ALIAS; -- } -- memcpy(lastname, ifname, IFNAMSIZ); -- ifi = (struct ifi_info*)calloc(1, sizeof(struct ifi_info)); -- if (ifi == NULL) { -- goto gotError; -- } -- -- ifipold = *ifipnext; /* need this later */ -- ifiptr = ifipnext; -- *ifipnext = ifi; /* prev points to this new one */ -- ifipnext = &ifi->ifi_next; /* pointer to next one goes here */ -- -- sprintf(addr6, "%s:%s:%s:%s:%s:%s:%s:%s", -- addr[0],addr[1],addr[2],addr[3], -- addr[4],addr[5],addr[6],addr[7]); -- -- /* Add address of the interface */ -- memset(&hints, 0, sizeof(hints)); -- hints.ai_family = AF_INET6; -- hints.ai_flags = AI_NUMERICHOST; -- err = getaddrinfo(addr6, NULL, &hints, &res0); -- if (err) { -- goto gotError; -- } -- ifi->ifi_addr = calloc(1, sizeof(struct sockaddr_in6)); -- if (ifi->ifi_addr == NULL) { -- goto gotError; -- } -- memcpy(ifi->ifi_addr, res0->ai_addr, sizeof(struct sockaddr_in6)); -- -- /* Add netmask of the interface */ -- char ipv6addr[INET6_ADDRSTRLEN]; -- plen_to_mask(plen, ipv6addr); -- ifi->ifi_netmask = calloc(1, sizeof(struct sockaddr_in6)); -- if (ifi->ifi_addr == NULL) { -- goto gotError; -- } -- sin6=calloc(1, sizeof(struct sockaddr_in6)); -- addrptr=calloc(1, sizeof(struct in6_addr)); -- inet_pton(family, ipv6addr, addrptr); -- sin6->sin6_family=family; -- sin6->sin6_addr=*addrptr; -- sin6->sin6_scope_id=scope; -- memcpy(ifi->ifi_netmask, sin6, sizeof(struct sockaddr_in6)); -- free(sin6); -- -- -- /* Add interface name */ -- memcpy(ifi->ifi_name, ifname, IFI_NAME); -- -- /* Add interface index */ -- ifi->ifi_index = index; -- -- /* Add interface flags*/ -- memcpy(ifr.ifr_name, ifname, IFNAMSIZ); -- if (ioctl(sockfd, SIOCGIFFLAGS, &ifr) < 0) { -- if (errno == EADDRNOTAVAIL) { -- /* -- * If the main interface is configured with no IP address but -- * an alias interface exists with an IP address, you get -- * EADDRNOTAVAIL for the main interface -- */ -- free(ifi->ifi_addr); -- free(ifi); -- ifipnext = ifiptr; -- *ifipnext = ifipold; -- continue; -- } else { -- goto gotError; -- } -- } -- ifi->ifi_flags = ifr.ifr_flags; -- freeaddrinfo(res0); -- res0=NULL; -- } -- } -- goto done; -+ struct ifaddrs *ifap, *ifa; -+ struct ifi_info *ifi = NULL, *head = NULL; - --gotError: -- if (ifihead != NULL) { -- free_ifi_info(ifihead); -- ifihead = NULL; -- } -- if (res0 != NULL) { -- freeaddrinfo(res0); -- res0=NULL; -+ /* doaliases seems always true in the calls in current code */ -+ assert(doaliases); -+ -+ if (getifaddrs(&ifap) < 0) -+ { -+ return NULL; ++ mask, + addr[0],addr[1],addr[2],addr[3], + addr[4],addr[5],addr[6],addr[7], + &index, &plen, &scope, &flags, ifname) != EOF) { + ++ if (flags & IFA_F_DEPRECATED) continue; + myflags = 0; + if (strncmp(lastname, ifname, IFNAMSIZ) == 0) { + if (doaliases == 0) +@@ -205,7 +208,8 @@ gotError: } --done: -- if (sockfd != -1) { + done: + if (sockfd != -1) { - assert(close(sockfd) == 0); -+ for (ifa = ifap ; ifa ; ifa = ifa->ifa_next) -+ { -+ /* Care only about IPv6 addresses on non-point-to-point links. */ -+ if (!ifa->ifa_addr -+ || ifa->ifa_addr->sa_family != AF_INET6) -+ continue; -+ ifi = calloc(1, sizeof(*ifi)); -+ if (!ifi) -+ break; -+ strncpy(ifi->ifi_name, ifa->ifa_name, IFI_NAME); -+ /* We ignore ifi_{haddr,hlen}, everyone else does too */ -+ ifi->ifi_flags = ifa->ifa_flags; -+ /* We ignore ifi_myflags; IFI_ALIAS isn't used anywhere */ -+ ifi->ifi_index = if_nametoindex(ifa->ifa_name); -+ if (!(ifi->ifi_addr = malloc(sizeof(struct sockaddr_in6)))) -+ break; -+ memcpy(ifi->ifi_addr, ifa->ifa_addr, sizeof(struct sockaddr_in6)); -+ -+ if (ifa->ifa_netmask) -+ { -+ if (!(ifi->ifi_netmask = malloc(sizeof(struct sockaddr_in6)))) -+ break; -+ memcpy(ifi->ifi_netmask, ifa->ifa_netmask, -+ sizeof(struct sockaddr_in6)); -+ } -+ -+ if (!(ifi->ifi_addr = malloc(sizeof(struct sockaddr_in6)))) -+ break; -+ memcpy(ifi->ifi_addr, ifa->ifa_addr, sizeof(struct sockaddr_in6)); -+ -+ -+ if (ifa->ifa_flags & IFF_POINTOPOINT && ifa->ifa_dstaddr) -+ { -+ if (!(ifi->ifi_dstaddr = malloc(sizeof(struct sockaddr_in6)))) -+ break; -+ memcpy(ifi->ifi_dstaddr, ifa->ifa_dstaddr, -+ sizeof(struct sockaddr_in6)); -+ } -+ else if (ifa->ifa_broadaddr) -+ { -+ if (!(ifi->ifi_brdaddr = malloc(sizeof(struct sockaddr_in6)))) -+ break; -+ memcpy(ifi->ifi_brdaddr, ifa->ifa_broadaddr, -+ sizeof(struct sockaddr_in6)); -+ } -+ ifi->ifi_next = head; -+ head = ifi; -+ ifi = NULL; -+ }; -+ if (ifi) -+ { -+ /* An error occurred. Let's bail out. */ -+ ifi->ifi_next = head; -+ free_ifi_info(head); -+ return NULL; ++ int rv = close(sockfd); ++ assert(rv == 0); } -- return(ifihead); /* pointer to first structure in linked list */ -+ freeifaddrs(ifap); -+ return head; + return(ifihead); /* pointer to first structure in linked list */ } -+ - #endif // defined(AF_INET6) && HAVE_IPV6 && HAVE_LINUX - - struct ifi_info *get_ifi_info(int family, int doaliases) -@@ -229,7 +161,7 @@ struct ifi_info *get_ifi_info(int family - #endif - - #if defined(AF_INET6) && HAVE_IPV6 && HAVE_LINUX -- if (family == AF_INET6) return get_ifi_info_linuxv6(family, doaliases); -+ if (family == AF_INET6) return get_ifi_info_linuxv6(doaliases); - #endif - - sockfd = -1; ---- a/mDNSPosix/mDNSUNP.h -+++ b/mDNSPosix/mDNSUNP.h -@@ -97,8 +97,7 @@ struct ifi_info { - }; - - #if defined(AF_INET6) && HAVE_IPV6 && HAVE_LINUX --#define PROC_IFINET6_PATH "/proc/net/if_inet6" --extern struct ifi_info *get_ifi_info_linuxv6(int family, int doaliases); -+extern struct ifi_info *get_ifi_info_linuxv6(int doaliases); - #endif - - #if defined(AF_INET6) && HAVE_IPV6 +diff --git a/mDNSShared/dnsextd_parser.y b/mDNSShared/dnsextd_parser.y +index 18c5990..d4b63ce 100644 --- a/mDNSShared/dnsextd_parser.y +++ b/mDNSShared/dnsextd_parser.y @@ -15,6 +15,8 @@ From de1953e8d4bb26987a5dfc8c315618b4929fd4f2 Mon Sep 17 00:00:00 2001 From: Etienne CHAMPETIER Date: Thu, 9 Apr 2015 13:22:50 +0200 Subject: [PATCH 231/681] monit: update to 5.12.2 run tested on ar71xx Signed-off-by: Etienne CHAMPETIER --- admin/monit/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/admin/monit/Makefile b/admin/monit/Makefile index 9d5570f9e..b14b22257 100644 --- a/admin/monit/Makefile +++ b/admin/monit/Makefile @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=monit -PKG_VERSION:=5.12.1 +PKG_VERSION:=5.12.2 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://mmonit.com/monit/dist -PKG_MD5SUM:=1ffde79207270925f6f7df787d19100a +PKG_MD5SUM:=5f5cf4c18b42e8091b49b4e07cf972ce PKG_LICENSE:=AGPL-3.0 PKG_LICENSE_FILES:=COPYING From b3349c6e13c8857275f8081dd5222ce626f5e638 Mon Sep 17 00:00:00 2001 From: Karl Palsson Date: Fri, 10 Apr 2015 14:36:52 +0000 Subject: [PATCH 232/681] net/mosquitto: Bump to 1.4.1 Some useful fixes: http://mosquitto.org/2015/04/version-1-4-1-released/ Drops a patch that has been rolled into upstream. Signed-off-by: Karl Palsson --- net/mosquitto/Makefile | 6 +++--- net/mosquitto/patches/100-libwebsockets-fixes.patch | 13 ------------- 2 files changed, 3 insertions(+), 16 deletions(-) delete mode 100644 net/mosquitto/patches/100-libwebsockets-fixes.patch diff --git a/net/mosquitto/Makefile b/net/mosquitto/Makefile index f7b0a918c..970a2356d 100644 --- a/net/mosquitto/Makefile +++ b/net/mosquitto/Makefile @@ -9,14 +9,14 @@ include $(TOPDIR)/rules.mk PKG_NAME:=mosquitto -PKG_VERSION:=1.4 -PKG_RELEASE:=2 +PKG_VERSION:=1.4.1 +PKG_RELEASE:=1 PKG_LICENSE:=BSD-3-Clause PKG_LICENSE_FILES:=LICENSE.txt PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://mosquitto.org/files/source/ -PKG_MD5SUM:=cd879f5964311501ba8e2275add71484 +PKG_MD5SUM:=46008028563eb750c6aa93281ab2e181 PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/$(PKG_NAME)-$(PKG_VERSION) include $(INCLUDE_DIR)/package.mk diff --git a/net/mosquitto/patches/100-libwebsockets-fixes.patch b/net/mosquitto/patches/100-libwebsockets-fixes.patch deleted file mode 100644 index 4d107b19c..000000000 --- a/net/mosquitto/patches/100-libwebsockets-fixes.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/src/websockets.c b/src/websockets.c -index 95f8a81..cf2b5e7 100644 ---- a/src/websockets.c -+++ b/src/websockets.c -@@ -72,7 +72,7 @@ struct libws_http_data { - FILE *fptr; - }; - --#ifndef HTTP_STATUS_NOT_FOUND -+#ifndef LWS_FEATURE_SERVE_HTTP_FILE_HAS_OTHER_HEADERS_ARG - /* This is libwebsockets 1.2.x or earlier, we have to degrade our capabilities. - * Once lws 1.3 is widely available this should be removed. */ - # define LWS_IS_OLD From ee274e64f99dfc30223adbaaa19291bc08c1ae21 Mon Sep 17 00:00:00 2001 From: Karl Palsson Date: Fri, 10 Apr 2015 14:37:48 +0000 Subject: [PATCH 233/681] net/mosquitto: Patch QoS 2 in flight bug Patched until new upstream release is available. Patch sourced from upstream. Signed-off-by: Karl Palsson --- net/mosquitto/Makefile | 2 +- net/mosquitto/patches/101-qos2-inflight.patch | 12 ++++++++++++ 2 files changed, 13 insertions(+), 1 deletion(-) create mode 100644 net/mosquitto/patches/101-qos2-inflight.patch diff --git a/net/mosquitto/Makefile b/net/mosquitto/Makefile index 970a2356d..5b015795c 100644 --- a/net/mosquitto/Makefile +++ b/net/mosquitto/Makefile @@ -10,7 +10,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=mosquitto PKG_VERSION:=1.4.1 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_LICENSE:=BSD-3-Clause PKG_LICENSE_FILES:=LICENSE.txt diff --git a/net/mosquitto/patches/101-qos2-inflight.patch b/net/mosquitto/patches/101-qos2-inflight.patch new file mode 100644 index 000000000..61706d392 --- /dev/null +++ b/net/mosquitto/patches/101-qos2-inflight.patch @@ -0,0 +1,12 @@ +diff --git a/lib/mosquitto.c b/lib/mosquitto.c +index bd9dbd3..7314248 100644 +--- a/lib/mosquitto.c ++++ b/lib/mosquitto.c +@@ -594,7 +594,6 @@ int mosquitto_publish(struct mosquitto *mosq, int *mid, const char *topic, int p + pthread_mutex_lock(&mosq->out_message_mutex); + _mosquitto_message_queue(mosq, message, mosq_md_out); + if(mosq->max_inflight_messages == 0 || mosq->inflight_messages < mosq->max_inflight_messages){ +- mosq->inflight_messages++; + if(qos == 1){ + message->state = mosq_ms_wait_for_puback; + }else if(qos == 2){ From ca815cf6b796d0ca392e6233d8100327c2e86df8 Mon Sep 17 00:00:00 2001 From: Denis Shulyaka Date: Fri, 10 Apr 2015 23:28:28 +0300 Subject: [PATCH 234/681] mailman: upgrade to 2.1.20 Signed-off-by: Denis Shulyaka --- mail/mailman/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/mail/mailman/Makefile b/mail/mailman/Makefile index 8becbdaa5..e2133da55 100644 --- a/mail/mailman/Makefile +++ b/mail/mailman/Makefile @@ -10,8 +10,8 @@ include $(TOPDIR)/rules.mk PKG_NAME:=mailman PKG_RELEASE:=1 PKG_SOURCE_URL:=ftp://ftp.gnu.org/gnu/mailman/ http://ftp.gnu.org/gnu/mailman/ -PKG_VERSION:=2.1.19 -PKG_MD5SUM:=13a33d758f8a6308c91dd267fc3ba123 +PKG_VERSION:=2.1.20 +PKG_MD5SUM:=96819640406f90a12bc28edd3dc09d4a PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tgz PKG_MAINTAINER:=Denis Shulyaka PKG_LICENSE:=GPL-2.0+ From 9820b0f996e2530f662bc895579a0eff639cb0d8 Mon Sep 17 00:00:00 2001 From: Kevin Mehall Date: Thu, 29 Jan 2015 23:40:34 +0000 Subject: [PATCH 235/681] bluez: Install gatttool for Bluetooth Low Energy gatttool is not included in `make install`. The Debian package similarly copies it out of the build directory. Signed-off-by: Kevin Mehall --- utils/bluez/Makefile | 1 + 1 file changed, 1 insertion(+) diff --git a/utils/bluez/Makefile b/utils/bluez/Makefile index d2bc8fab1..fdb442ca5 100644 --- a/utils/bluez/Makefile +++ b/utils/bluez/Makefile @@ -111,6 +111,7 @@ define Package/bluez-utils/install $(CP) $(PKG_INSTALL_DIR)/usr/bin/* $(1)/usr/bin/ $(CP) $(PKG_INSTALL_DIR)/usr/lib/bluetooth/bluetoothd $(1)/usr/bin/ $(CP) $(PKG_INSTALL_DIR)/usr/lib/bluetooth/obexd $(1)/usr/bin/ + $(INSTALL_BIN) $(PKG_BUILD_DIR)/attrib/gatttool $(1)/usr/bin/ $(INSTALL_DIR) $(1)/etc/config $(INSTALL_DATA) ./files/bluetooth.config $(1)/etc/config/bluetooth $(INSTALL_DIR) $(1)/etc/dbus-1/system.d/ From 14bfb3a5f8f8ded1601ee94c36d386f00aeef05b Mon Sep 17 00:00:00 2001 From: Kevin Mehall Date: Thu, 29 Jan 2015 23:32:20 +0000 Subject: [PATCH 236/681] Allow glib2, dbus, and bluez to build in parallel Signed-off-by: Kevin Mehall --- libs/glib2/Makefile | 2 ++ utils/bluez/Makefile | 1 + utils/dbus/Makefile | 1 + 3 files changed, 4 insertions(+) diff --git a/libs/glib2/Makefile b/libs/glib2/Makefile index 5b516a2cc..80b9768bb 100644 --- a/libs/glib2/Makefile +++ b/libs/glib2/Makefile @@ -16,6 +16,8 @@ PKG_BUILD_DIR:=$(BUILD_DIR)/glib-$(PKG_VERSION) PKG_SOURCE_URL:=@GNOME/glib/2.43 PKG_MD5SUM:=2f28879252c660a65aa3139ec499776b +PKG_BUILD_PARALLEL:=1 +HOST_BUILD_PARALLEL:=1 PKG_BUILD_DEPENDS:=glib2/host libpthread zlib libintl libffi HOST_BUILD_DEPENDS:=libintl/host libiconv/host libffi/host PKG_INSTALL:=1 diff --git a/utils/bluez/Makefile b/utils/bluez/Makefile index d2bc8fab1..2269a707b 100644 --- a/utils/bluez/Makefile +++ b/utils/bluez/Makefile @@ -19,6 +19,7 @@ PKG_LICENSE:=GPL-2.0+ PKG_LICENSE_FILES:=COPYING PKG_MAINTAINER:=Nicolas Thill +PKG_BUILD_PARALLEL:=1 PKG_INSTALL:=1 include $(INCLUDE_DIR)/package.mk diff --git a/utils/dbus/Makefile b/utils/dbus/Makefile index c8bd4155a..2b5081ea2 100644 --- a/utils/dbus/Makefile +++ b/utils/dbus/Makefile @@ -18,6 +18,7 @@ PKG_MD5SUM:=32cd0d16067422bfd691e2f647b432b0 PKG_MAINTAINER:=Steven Barth PKG_LICENSE:=AFL-2.1 +PKG_BUILD_PARALLEL:=1 PKG_FIXUP:=autoreconf PKG_INSTALL:=1 From e632f4852d50aa0a248940198dc7e1ecf8c9d73c Mon Sep 17 00:00:00 2001 From: Luka Perkov Date: Sat, 11 Apr 2015 17:32:31 +0200 Subject: [PATCH 237/681] nspr: abandon package Signed-off-by: Luka Perkov --- libs/nspr/Makefile | 60 ----------------------------- libs/nspr/patches/001-compile.patch | 26 ------------- 2 files changed, 86 deletions(-) delete mode 100644 libs/nspr/Makefile delete mode 100644 libs/nspr/patches/001-compile.patch diff --git a/libs/nspr/Makefile b/libs/nspr/Makefile deleted file mode 100644 index d14d08607..000000000 --- a/libs/nspr/Makefile +++ /dev/null @@ -1,60 +0,0 @@ -# -# Copyright (C) 2014 OpenWrt.org -# -# This is free software, licensed under the GNU General Public License v2. -# See /LICENSE for more information. -# - -include $(TOPDIR)/rules.mk - -PKG_NAME:=nspr -PKG_VERSION:=3.16.6 -PKG_RELEASE:=1 - -PKG_BUILD_DIR:=$(BUILD_DIR)/nss-$(PKG_VERSION) -PKG_SOURCE:=nss-$(PKG_VERSION)-with-nspr-4.10.6.tar.gz -PKG_SOURCE_URL:=ftp://ftp.mozilla.org/pub/mozilla.org/security/nss/releases/NSS_3_16_6_RTM/src/ -PKG_MD5SUM:=4722706ea101948712b5ad003629679f -PKG_INSTALL:=1 - -include $(INCLUDE_DIR)/package.mk - -CONFIGURE_PATH=nspr -MAKE_PATH=nspr - -define Package/nspr - SECTION:=libs - CATEGORY:=Libraries - TITLE:=Netscape Portable Runtime (NSPR) - URL:=https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSPR - DEPENDS:=+libpthread +librt - MAINTAINER:=Luka Perkov -endef - -define Package/nspr/description - Netscape Portable Runtime (NSPR) provides a platform-neutral API for system - level and libc-like functions. The API is used in the Mozilla clients, many of - Red Hat's and Sun's server applications, and other software offerings. -endef - -CONFIGURE_ARGS += \ - --with-arch=toolchain-default \ - --with-fpu=toolchain-default \ - --with-float-abi=toolchain-default \ - --with-soft-float=toolchain-default - -define Build/InstallDev - $(INSTALL_DIR) $(1)/usr/ - $(CP) $(PKG_INSTALL_DIR)/usr/include/ $(1)/usr/ - $(INSTALL_DIR) $(1)/usr/lib - $(CP) $(PKG_INSTALL_DIR)/usr/lib/*{a,so} $(1)/usr/lib/ - $(INSTALL_DIR) $(1)/usr/lib/pkgconfig - $(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/nspr.pc $(1)/usr/lib/pkgconfig/ -endef - -define Package/nspr/install - $(INSTALL_DIR) $(1)/usr/lib - $(CP) $(PKG_INSTALL_DIR)/usr/lib/*so $(1)/usr/lib -endef - -$(eval $(call BuildPackage,nspr)) diff --git a/libs/nspr/patches/001-compile.patch b/libs/nspr/patches/001-compile.patch deleted file mode 100644 index 63b697e7a..000000000 --- a/libs/nspr/patches/001-compile.patch +++ /dev/null @@ -1,26 +0,0 @@ ---- a/nspr/config/Makefile.in -+++ b/nspr/config/Makefile.in -@@ -30,7 +30,6 @@ CSRCS = now.c - - # This version hasn't been ported for us; the one in mozilla/config has - ifneq ($(OS_ARCH),OS2) --CSRCS += nsinstall.c - - PLSRCS = nfspwd.pl - endif -@@ -84,7 +83,6 @@ else - ifeq (,$(filter-out SYMBIAN WINCE,$(OS_ARCH))) - TARGETS = $(PROGS) - else --PROGS += $(OBJDIR)/nsinstall$(PROG_SUFFIX) - TARGETS = $(PROGS) $(PLSRCS:.pl=) - endif - endif -@@ -114,6 +112,7 @@ endif - $(OBJDIR)/%$(PROG_SUFFIX): $(OBJDIR)/%.$(OBJ_SUFFIX) - @$(MAKE_OBJDIR) - $(CC) $(XCFLAGS) $< $(LDFLAGS) $(XLDOPTS) $(OUTOPTION)$@ -+ gcc nsinstall.c -o nsinstall - - install:: nspr.m4 - $(NSINSTALL) -D $(DESTDIR)$(datadir)/aclocal From 04057dbbc977461c14cb42216c9531af37ac7cec Mon Sep 17 00:00:00 2001 From: Ian Leonard Date: Sat, 11 Apr 2015 19:58:46 -0700 Subject: [PATCH 238/681] libvorbis: upgrade to 1.3.5 Signed-off-by: Ian Leonard --- libs/libvorbis/Makefile | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/libs/libvorbis/Makefile b/libs/libvorbis/Makefile index 6ce3734fe..aa1c9295a 100644 --- a/libs/libvorbis/Makefile +++ b/libs/libvorbis/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2008-2014 OpenWrt.org +# Copyright (C) 2008-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=libvorbis -PKG_VERSION:=1.3.4 -PKG_RELEASE:=2 +PKG_VERSION:=1.3.5 +PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=http://downloads.xiph.org/releases/vorbis/ -PKG_MD5SUM:=55f2288055e44754275a17c9a2497391 +PKG_MD5SUM:=28cb28097c07a735d6af56e598e1c90f PKG_MAINTAINER:=Ted Hess PKG_LICENSE:=BSD-3-Clause From f5334528a70328baf163e25b3317b740c92620bd Mon Sep 17 00:00:00 2001 From: Christian Schoenebeck Date: Sun, 12 Apr 2015 10:47:38 +0200 Subject: [PATCH 239/681] ddns-scripts: bugfixes/update to version 2.4.1-1 * fix problem with lucihelper script reported in OpenWrt Ticket 19419 * rewritten split_FQDN fixing detection errors and using zcat * updated tld_names.dat and .gz compressed to save space * add LoopiaDNS (loopia.se) to services_ipv6 Signed-off-by: Christian Schoenebeck --- net/ddns-scripts/Makefile | 11 +- net/ddns-scripts/files/ddns.config | 2 +- net/ddns-scripts/files/ddns.init | 1 + .../files/dynamic_dns_functions.sh | 80 ++-- .../files/dynamic_dns_lucihelper.sh | 4 +- net/ddns-scripts/files/services_ipv6 | 3 + net/ddns-scripts/files/tld_names.dat | 341 +++++++++++++++++- 7 files changed, 402 insertions(+), 40 deletions(-) mode change 100644 => 100755 net/ddns-scripts/files/dynamic_dns_functions.sh diff --git a/net/ddns-scripts/Makefile b/net/ddns-scripts/Makefile index 54379bf1d..f739cb729 100644 --- a/net/ddns-scripts/Makefile +++ b/net/ddns-scripts/Makefile @@ -1,9 +1,15 @@ +# +# Copyright (C) 2008-2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# + include $(TOPDIR)/rules.mk PKG_NAME:=ddns-scripts # Version == major.minor.patch # increase on new functionality (minor) or patches (patch) -PKG_VERSION:=2.4.0 +PKG_VERSION:=2.4.1 # Release == build # increase on changes of services files or tld_names.dat PKG_RELEASE:=1 @@ -103,6 +109,7 @@ define Build/Compile -e '/^\/\/\s/d' \ -e '/^\s*$$$$/d' $$$$FILE; \ done + gzip -9 $(PKG_BUILD_DIR)/files/tld_names.dat endef define Package/$(PKG_NAME)/conffiles @@ -158,7 +165,7 @@ endef define Package/$(PKG_NAME)_cloudflare/install $(INSTALL_DIR) $(1)/usr/lib/ddns $(INSTALL_BIN) $(PKG_BUILD_DIR)/files/update_CloudFlare.sh $(1)/usr/lib/ddns - $(INSTALL_DATA) $(PKG_BUILD_DIR)/files/tld_names.dat $(1)/usr/lib/ddns + $(INSTALL_DATA) $(PKG_BUILD_DIR)/files/tld_names.dat.gz $(1)/usr/lib/ddns endef define Package/$(PKG_NAME)_cloudflare/postinst #!/bin/sh diff --git a/net/ddns-scripts/files/ddns.config b/net/ddns-scripts/files/ddns.config index 57b5477f8..5d69bb17c 100644 --- a/net/ddns-scripts/files/ddns.config +++ b/net/ddns-scripts/files/ddns.config @@ -11,7 +11,7 @@ config ddns "global" config service "myddns_ipv4" - option service_name "example.org" + option service_name "dyndns.com" option domain "yourhost.example.com" option username "your_username" option password "your_password" diff --git a/net/ddns-scripts/files/ddns.init b/net/ddns-scripts/files/ddns.init index 84abfd5e5..2cc9b90fa 100644 --- a/net/ddns-scripts/files/ddns.init +++ b/net/ddns-scripts/files/ddns.init @@ -24,4 +24,5 @@ start() { stop() { killall dynamic_dns_updater.sh 2>/dev/null + return 0 # if killall fails, ignore } diff --git a/net/ddns-scripts/files/dynamic_dns_functions.sh b/net/ddns-scripts/files/dynamic_dns_functions.sh old mode 100644 new mode 100755 index 9bd2f818b..0023f88f0 --- a/net/ddns-scripts/files/dynamic_dns_functions.sh +++ b/net/ddns-scripts/files/dynamic_dns_functions.sh @@ -37,7 +37,7 @@ PIDFILE="" # pid file UPDFILE="" # store UPTIME of last update DATFILE="" # save stdout data of WGet and other external programs called ERRFILE="" # save stderr output of WGet and other external programs called -TLDFILE=/usr/lib/ddns/tld_names.dat # TLD file used by split_FQDN +TLDFILE=/usr/lib/ddns/tld_names.dat.gz # TLD file used by split_FQDN CHECK_SECONDS=0 # calculated seconds out of given FORCE_SECONDS=0 # interval and unit @@ -1058,43 +1058,63 @@ split_FQDN() { # $4 name of variable to store Host/Subdomain [ $# -ne 4 ] && write_log 12 "Error calling 'split_FQDN()' - wrong number of parameters" + [ -z "$1" ] && write_log 12 "Error calling 'split_FQDN()' - missing FQDN to split" + [ -f $TLDFILE ] || write_log 12 "Error calling 'split_FQDN()' - missing file '$TLDFILE'" - _SET="$@" # save given parameters - local _FHOST _FTLD _FOUND - local _FDOM=$(echo "$1" | tr [A-Z] [a-z]) # to lower + local _HOST _FDOM _CTLD _FTLD + local _SET="$@" # save given function parameters - set -- $(echo "$_FDOM" | tr "." " ") # replace DOT with SPACE and set as script parameters - _FDOM="" # clear variable for later reuse + local _PAR=$(echo "$1" | tr [A-Z] [a-z] | tr "." " ") # to lower and replace DOT with SPACE + set -- $_PAR # set new as function parameters + _PAR="" # clear variable for later reuse + while [ -n "$1" ] ; do # as long we have parameters + _PAR="$1 $_PAR" # invert order of parameters + shift + done + set -- $_PAR # use new as function parameters + _PAR="" # clear variable while [ -n "$1" ] ; do # as long we have parameters - _FTLD=$(echo $@ | tr " " ".") # build back dot separated as TLD - # look if match excludes "!" in tld_names.dat - grep -E "^!$_FTLD$" $TLDFILE >/dev/null 2>&1 || { - # Don't match excludes - # check if match any "*" in tld_names.dat - grep -E "^*.$_FTLD$" $TLDFILE >/dev/null 2>&1 && { - _FOUND="VALID" - break # found leave while - } - # check if exact match in tld_names.dat - grep -E "^$_FTLD$" $TLDFILE >/dev/null 2>&1 && { - _FOUND="VALID" - break # found leave while - } + if [ -z "$_CTLD" ]; then # first loop + _CTLD="$1" # CURRENT TLD to look at + shift + else + _CTLD="$1.$_CTLD" # Next TLD to look at + shift + fi + # check if TLD exact match in tld_names.dat, save TLD + zcat $TLDFILE | grep -E "^$_CTLD$" >/dev/null 2>&1 && { + _FTLD="$_CTLD" # save found + _FDOM="$1" # save domain next step might be invalid + continue } - # nothing match so - _FHOST="$_FHOST $_FDOM" # append DOMAIN to last found HOST - _FDOM="$1" # set 1st parameter as DOMAIN - _FTLD="" # clear TLD - shift # delete 1st parameter and retry with the rest + # check if match any "*" in tld_names.dat, + zcat $TLDFILE | grep -E "^\*.$_CTLD$" >/dev/null 2>&1 && { + [ -z "$1" ] && break # no more data break + # check if next level TLD match excludes "!" in tld_names.dat + if zcat $TLDFILE | grep -E "^!$1.$_CTLD$" >/dev/null 2>&1 ; then + _FTLD="$_CTLD" # Yes + else + _FTLD="$1.$_CTLD" + shift + fi + _FDOM="$1"; shift + } + [ -n "$_FTLD" ] && break # we have something valid, break + done + + # the leftover parameters are the HOST/SUBDOMAIN + while [ -n "$1" ]; do + _HOST="$1 $HOST" # remember we need to invert + shift done + _HOST=$(echo $_HOST | tr " " ".") # insert DOT set -- $_SET # set back parameters from function call - [ -n "$_FHOST" ] && _FHOST=$(echo $_FHOST | tr " " ".") # put dots back into HOST - [ -n "$_FOUND" ] && { - eval "$2=$_FTLD" # set found TLD - eval "$3=$_FDOM" # set found registrable domain - eval "$4=$_FHOST" # set found HOST/SUBDOMAIN + [ -n "$_FTLD" ] && { + eval "$2=$_FTLD" # set TLD + eval "$3=$_FDOM" # set registrable domain + eval "$4=$_HOST" # set HOST/SUBDOMAIN return 0 } eval "$2=''" # clear TLD diff --git a/net/ddns-scripts/files/dynamic_dns_lucihelper.sh b/net/ddns-scripts/files/dynamic_dns_lucihelper.sh index cc22d25e6..0f8bb5aa8 100755 --- a/net/ddns-scripts/files/dynamic_dns_lucihelper.sh +++ b/net/ddns-scripts/files/dynamic_dns_lucihelper.sh @@ -22,8 +22,8 @@ # preset some variables, wrong or not set in dynamic_dns_functions.sh SECTION_ID="lucihelper" LOGFILE="$LOGDIR/$SECTION_ID.log" -DATFILE="$RUNDIR/$SECTION_ID.dat" # save stdout data of WGet and other extern programs called -ERRFILE="$RUNDIR/$SECTION_ID.err" # save stderr output of WGet and other extern programs called +DATFILE="$RUNDIR/$SECTION_ID.$$.dat" # save stdout data of WGet and other extern programs called +ERRFILE="$RUNDIR/$SECTION_ID.$$.err" # save stderr output of WGet and other extern programs called VERBOSE_MODE=0 # no console logging # global variables normally set by reading DDNS UCI configuration use_syslog=0 # no syslog diff --git a/net/ddns-scripts/files/services_ipv6 b/net/ddns-scripts/files/services_ipv6 index 88831e9e7..a0781a24f 100644 --- a/net/ddns-scripts/files/services_ipv6 +++ b/net/ddns-scripts/files/services_ipv6 @@ -38,3 +38,6 @@ # IPv6 @ freedns.afraid.org "freedns.afraid.org" "http://freedns.afraid.org/dynamic/update.php?[PASSWORD]&address=[IP]" + +# IPv6 @ LoopiaDNS +"loopia.se" "http://[USERNAME]:[PASSWORD]@dns.loopia.se/XDynDNSServer/XDynDNS.php?system=custom&hostname=[DOMAIN]&myip=[IP]" diff --git a/net/ddns-scripts/files/tld_names.dat b/net/ddns-scripts/files/tld_names.dat index f9274e43b..474b780b3 100644 --- a/net/ddns-scripts/files/tld_names.dat +++ b/net/ddns-scripts/files/tld_names.dat @@ -7113,7 +7113,10 @@ xxx *.zw -// List of new gTLDs imported from https://newgtlds.icann.org/newgtlds.csv on 2015-01-27T00:02:07Z +// List of new gTLDs imported from https://newgtlds.icann.org/newgtlds.csv on 2015-04-07T06:02:08Z + +// aaa : 2015-02-26 American Automobile Association, Inc. +aaa // abb : 2014-10-24 ABB Ltd abb @@ -7151,12 +7154,18 @@ ads // adult : 2014-10-16 ICM Registry AD LLC adult +// aeg : 2015-03-19 Aktiebolaget Electrolux +aeg + // afl : 2014-10-02 Australian Football League afl // africa : 2014-03-24 ZA Central Registry NPC trading as Registry.Africa africa +// africamagic : 2015-03-05 Electronic Media Network (Pty) Ltd +africamagic + // agency : 2013-11-14 Steel Falls, LLC agency @@ -7277,6 +7286,9 @@ bbc // bbva : 2014-10-02 BANCO BILBAO VIZCAYA ARGENTARIA, S.A. bbva +// bcg : 2015-04-02 The Boston Consulting Group, Inc. +bcg + // bcn : 2014-07-24 Municipi de Barcelona bcn @@ -7370,6 +7382,9 @@ broadway // broker : 2014-12-11 IG Group Holdings PLC broker +// brother : 2015-01-29 Brother Industries, Ltd. +brother + // brussels : 2014-02-06 DNS.be vzw brussels @@ -7397,6 +7412,9 @@ bzh // cab : 2013-10-24 Half Sunset, LLC cab +// cafe : 2015-02-11 Pioneer Canyon, LLC +cafe + // cal : 2014-07-24 Charleston Road Registry Inc. cal @@ -7496,9 +7514,12 @@ christmas // chrome : 2014-07-24 Charleston Road Registry Inc. chrome -// church : 2014-02-06 Holly Fileds, LLC +// church : 2014-02-06 Holly Fields, LLC church +// cipriani : 2015-02-19 Hotel Cipriani Srl +cipriani + // circle : 2014-12-18 Amazon EU S.à r.l. circle @@ -7589,6 +7610,12 @@ corsica // country : 2013-12-19 Top Level Domain Holdings Limited country +// coupon : 2015-02-26 Amazon EU S.à r.l. +coupon + +// coupons : 2015-03-26 Black Island, LLC +coupons + // courses : 2014-12-04 OPEN UNIVERSITIES AUSTRALIA PTY LTD courses @@ -7664,6 +7691,9 @@ delivery // dell : 2014-10-24 Dell Inc. dell +// delta : 2015-02-19 Delta Air Lines, Inc. +delta + // democrat : 2013-10-24 United TLD Holdco Ltd. democrat @@ -7721,6 +7751,12 @@ doosan // download : 2014-11-20 dot Support Limited download +// drive : 2015-03-05 Charleston Road Registry Inc. +drive + +// dstv : 2015-03-12 MultiChoice (Proprietary) Limited +dstv + // dubai : 2015-01-01 Dubai Smart Government Department dubai @@ -7796,6 +7832,9 @@ expert // exposed : 2013-12-05 Victor Beach, LLC exposed +// express : 2015-02-11 Sea Sunset, LLC +express + // fage : 2014-12-18 Fage International S.A. fage @@ -7808,6 +7847,9 @@ fairwinds // faith : 2014-11-20 dot Faith Limited faith +// family : 2015-04-02 Bitter Galley, LLC +family + // fan : 2014-03-06 fan @@ -7859,6 +7901,9 @@ fit // fitness : 2014-03-06 Brice Orchard, LLC fitness +// flickr : 2015-04-02 Yahoo! Domain Services Inc. +flickr + // flights : 2013-12-05 Fox Station, LLC flights @@ -7889,6 +7934,9 @@ forex // forsale : 2014-05-22 forsale +// forum : 2015-04-02 Fegistry, LLC +forum + // foundation : 2013-12-05 John Dale, LLC foundation @@ -7898,6 +7946,9 @@ frl // frogans : 2013-12-19 OP3FT frogans +// frontier : 2015-02-05 Frontier Communications Corporation +frontier + // fund : 2014-03-20 John Castle, LLC fund @@ -7907,12 +7958,18 @@ furniture // futbol : 2013-09-20 futbol +// fyi : 2015-04-02 Silver Tigers, LLC +fyi + // gal : 2013-11-07 Asociación puntoGAL gal // gallery : 2013-09-13 Sugar House, LLC gallery +// gallup : 2015-02-19 Gallup, Inc. +gallup + // garden : 2014-06-26 Top Level Domain Holdings Limited garden @@ -7928,6 +7985,9 @@ gea // gent : 2014-01-23 COMBELL GROUP NV/SA gent +// genting : 2015-03-12 Resorts World Inc Pte. Ltd. +genting + // ggee : 2014-01-09 GMO Internet, Inc. ggee @@ -7988,6 +8048,9 @@ gop // got : 2014-12-18 Amazon EU S.à r.l. got +// gotv : 2015-03-12 MultiChoice (Proprietary) Limited +gotv + // graphics : 2013-09-13 Over Madison, LLC graphics @@ -8027,12 +8090,21 @@ hangout // haus : 2013-12-05 haus +// hdfcbank : 2015-02-12 HDFC Bank Limited +hdfcbank + +// health : 2015-02-11 DotHealth, LLC +health + // healthcare : 2014-06-12 Silver Glen, LLC healthcare // help : 2014-06-26 Uniregistry, Corp. help +// helsinki : 2015-02-05 City of Helsinki +helsinki + // here : 2014-02-06 Charleston Road Registry Inc. here @@ -8048,12 +8120,18 @@ hitachi // hiv : 2014-03-13 dotHIV gemeinnuetziger e.V. hiv +// hockey : 2015-03-19 Half Willow, LLC +hockey + // holdings : 2013-08-27 John Madison, LLC holdings // holiday : 2013-11-07 Goose Woods, LLC holiday +// homedepot : 2015-04-02 Homer TLC, Inc. +homedepot + // homes : 2014-01-09 DERHomes, LLC homes @@ -8069,6 +8147,9 @@ host // hosting : 2014-05-29 Uniregistry, Corp. hosting +// hoteles : 2015-03-05 Travel Reservations SRL +hoteles + // hotmail : 2014-12-18 Microsoft Corporation hotmail @@ -8081,9 +8162,15 @@ how // hsbc : 2014-10-24 HSBC Holdings PLC hsbc +// htc : 2015-04-02 HTC corporation +htc + // ibm : 2014-07-31 International Business Machines Corporation ibm +// icbc : 2015-02-19 Industrial and Commercial Bank of China Limited +icbc + // ice : 2014-10-30 IntercontinentalExchange, Inc. ice @@ -8117,6 +8204,9 @@ ink // institute : 2013-11-07 Outer Maple, LLC institute +// insurance : 2015-02-19 fTLD Registry Services LLC +insurance + // insure : 2014-03-20 Pioneer Willow, LLC insure @@ -8132,6 +8222,9 @@ ipiranga // irish : 2014-08-07 Dot-Irish LLC irish +// iselect : 2015-02-11 iSelect Ltd +iselect + // ist : 2014-08-28 Istanbul Metropolitan Municipality ist @@ -8156,9 +8249,21 @@ jcb // jetzt : 2014-01-09 New TLD Company AB jetzt +// jewelry : 2015-03-05 Wild Bloom, LLC +jewelry + +// jio : 2015-04-02 Affinity Names, Inc. +jio + // jlc : 2014-12-04 Richemont DNS Inc. jlc +// jll : 2015-04-02 Jones Lang LaSalle Incorporated +jll + +// jmp : 2015-03-26 Matrix IP LLC +jmp + // joburg : 2014-03-24 ZA Central Registry NPC trading as ZA Central Registry joburg @@ -8210,18 +8315,27 @@ krd // kred : 2013-12-19 KredTLD Pty Ltd kred +// kyknet : 2015-03-05 Electronic Media Network (Pty) Ltd +kyknet + // kyoto : 2014-11-07 Academic Institution: Kyoto Jyoho Gakuen kyoto // lacaixa : 2014-01-09 CAIXA D'ESTALVIS I PENSIONS DE BARCELONA lacaixa +// lancaster : 2015-02-12 LANCASTER +lancaster + // land : 2013-09-10 Pine Moon, LLC land // landrover : 2014-11-13 Jaguar Land Rover Ltd landrover +// lasalle : 2015-04-02 Jones Lang LaSalle Incorporated +lasalle + // lat : 2014-10-16 ECOM-LAC Federaciòn de Latinoamèrica y el Caribe para Internet y el Comercio Electrònico lat @@ -8288,12 +8402,18 @@ link // live : 2014-12-04 Half Woods, LLC live +// lixil : 2015-03-19 LIXIL Group Corporation +lixil + // loan : 2014-11-20 dot Loan Limited loan // loans : 2014-03-20 June Woods, LLC loans +// lol : 2015-01-30 Uniregistry, Corp. +lol + // london : 2013-11-14 Dot London Domains Limited london @@ -8354,10 +8474,13 @@ markets // marriott : 2014-10-09 Marriott Worldwide Corporation marriott +// mba : 2015-04-02 Lone Hollow, LLC +mba + // media : 2014-03-06 Grand Glen, LLC media -// meet : 2014-01-16 Afilias Limited +// meet : 2014-01-16 meet // melbourne : 2014-05-29 The Crown in right of the State of Victoria, represented by its Department of State Development, Business and Innovation @@ -8369,6 +8492,9 @@ meme // memorial : 2014-10-16 Dog Beach, LLC memorial +// men : 2015-02-26 Exclusive Registry Limited +men + // menu : 2013-09-11 Wedding TLD2, LLC menu @@ -8387,6 +8513,9 @@ mini // mma : 2014-11-07 MMA IARD mma +// mnet : 2015-03-05 Electronic Media Network (Pty) Ltd +mnet + // mobily : 2014-12-18 GreenTech Consultancy Company W.L.L. mobily @@ -8423,6 +8552,9 @@ motorcycles // mov : 2014-01-30 Charleston Road Registry Inc. mov +// movie : 2015-02-05 New Frostbite, LLC +movie + // movistar : 2014-10-16 Telefónica S.A. movistar @@ -8432,12 +8564,30 @@ mtn // mtpc : 2014-11-20 Mitsubishi Tanabe Pharma Corporation mtpc +// mtr : 2015-03-12 MTR Corporation Limited +mtr + +// multichoice : 2015-03-12 MultiChoice (Proprietary) Limited +multichoice + +// mutual : 2015-04-02 Northwestern Mutual MU TLD Registry, LLC +mutual + +// mzansimagic : 2015-03-05 Electronic Media Network (Pty) Ltd +mzansimagic + // nadex : 2014-12-11 IG Group Holdings PLC nadex // nagoya : 2013-10-24 GMO Registry, Inc. nagoya +// naspers : 2015-02-12 Intelprop (Proprietary) Limited +naspers + +// natura : 2015-03-12 NATURA COSMÉTICOS S.A. +natura + // navy : 2014-03-06 United TLD Holdco Ltd. navy @@ -8456,7 +8606,7 @@ neustar // new : 2014-01-30 Charleston Road Registry Inc. new -// news : 2014-12-18 Hidden Bloom, LLC +// news : 2014-12-18 news // nexus : 2014-07-24 Charleston Road Registry Inc. @@ -8501,6 +8651,9 @@ nyc // obi : 2014-09-25 OBI Group Holding SE & Co. KGaA obi +// office : 2015-03-12 Microsoft Corporation +office + // okinawa : 2013-12-05 BusinessRalliart Inc. okinawa @@ -8525,9 +8678,15 @@ ooo // oracle : 2014-06-19 Oracle Corporation oracle +// orange : 2015-03-12 Orange Brand Services Limited +orange + // organic : 2014-03-27 Afilias Limited organic +// orientexpress : 2015-02-05 Belmond Ltd. +orientexpress + // osaka : 2014-09-04 Interlink Co., Ltd. osaka @@ -8540,6 +8699,9 @@ ovh // page : 2014-12-04 Charleston Road Registry Inc. page +// pamperedchef : 2015-02-05 The Pampered Chef, Ltd. +pamperedchef + // panerai : 2014-11-07 Richemont DNS Inc. panerai @@ -8558,6 +8720,12 @@ parts // party : 2014-09-11 Blue Sky Registry Limited party +// passagens : 2015-03-05 Travel Reservations SRL +passagens + +// payu : 2015-02-12 MIH PayU B.V. +payu + // pharmacy : 2014-06-19 National Association of Boards of Pharmacy pharmacy @@ -8603,9 +8771,15 @@ pizza // place : 2014-04-24 Snow Galley, LLC place +// play : 2015-03-05 Charleston Road Registry Inc. +play + // plumbing : 2013-09-10 Spring Tigers, LLC plumbing +// plus : 2015-02-05 Sugar Mill, LLC +plus + // pohl : 2014-06-23 Deutsche Vermögensberatung Aktiengesellschaft DVAG pohl @@ -8648,6 +8822,9 @@ qpon // quebec : 2013-12-19 PointQuébec Inc quebec +// quest : 2015-03-26 Quest ION Limited +quest + // racing : 2014-12-04 Premier Registry Limited racing @@ -8657,6 +8834,9 @@ read // realtor : 2014-05-29 Real Estate Domains LLC realtor +// realty : 2015-03-19 Fegistry, LLC +realty + // recipes : 2013-10-17 Grand Island, LLC recipes @@ -8666,6 +8846,9 @@ red // redstone : 2014-10-31 Redstone Haute Couture Co., Ltd. redstone +// redumbrella : 2015-03-26 Travelers TLD, LLC +redumbrella + // rehab : 2014-03-06 United TLD Holdco Ltd. rehab @@ -8678,6 +8861,9 @@ reisen // reit : 2014-09-04 National Association of Real Estate Investment Trusts, Inc. reit +// reliance : 2015-04-02 Reliance Industries Limited +reliance + // ren : 2013-12-12 Beijing Qianxiang Wangjing Technology Development Co., Ltd. ren @@ -8714,6 +8900,9 @@ rich // ricoh : 2014-11-20 Ricoh Company, Ltd. ricoh +// ril : 2015-04-02 Reliance Industries Limited +ril + // rio : 2014-02-27 Empresa Municipal de Informática SA - IPLANRIO rio @@ -8738,6 +8927,12 @@ rsvp // ruhr : 2013-10-02 regiodot GmbH & Co. KG ruhr +// run : 2015-03-19 Snow Park, LLC +run + +// rwe : 2015-04-02 RWE AG +rwe + // ryukyu : 2014-01-09 BusinessRalliart Inc. ryukyu @@ -8780,9 +8975,15 @@ sapo // sarl : 2014-07-03 Delta Orchard, LLC sarl +// sas : 2015-04-02 Research IP LLC +sas + // saxo : 2014-10-31 Saxo Bank A/S saxo +// sbi : 2015-03-12 STATE BANK OF INDIA +sbi + // sbs : 2014-11-07 SPECIAL BROADCASTING SERVICE CORPORATION sbs @@ -8852,9 +9053,15 @@ shoes // shouji : 2015-01-08 QIHOO 360 TECHNOLOGY CO. LTD. shouji +// show : 2015-03-05 Snow Beach, LLC +show + // shriram : 2014-01-23 Shriram Capital Ltd. shriram +// sina : 2015-03-12 Sina Corporation +sina + // singles : 2013-08-27 Fern Madison, LLC singles @@ -8873,6 +9080,12 @@ skype // smile : 2014-12-18 Amazon EU S.à r.l. smile +// sncf : 2015-02-19 Société Nationale des Chemins de fer Francais S N C F +sncf + +// soccer : 2015-03-26 Foggy Shadow, LLC +soccer + // social : 2013-11-07 United TLD Holdco Ltd. social @@ -8888,6 +9101,9 @@ solar // solutions : 2013-11-07 Silver Cover, LLC solutions +// song : 2015-02-26 Amazon EU S.à r.l. +song + // sony : 2015-01-08 Sony Corporation sony @@ -8900,6 +9116,9 @@ space // spiegel : 2014-02-05 SPIEGEL-Verlag Rudolf Augstein GmbH & Co. KG spiegel +// spot : 2015-02-26 Amazon EU S.à r.l. +spot + // spreadbetting : 2014-12-11 IG Group Holdings PLC spreadbetting @@ -8909,6 +9128,12 @@ stada // star : 2015-01-08 Star India Private Limited star +// starhub : 2015-02-05 StarHub Limited +starhub + +// statebank : 2015-03-12 STATE BANK OF INDIA +statebank + // statoil : 2014-12-04 Statoil ASA statoil @@ -8924,6 +9149,9 @@ stockholm // storage : 2014-12-22 Self Storage Company LLC storage +// studio : 2015-02-11 Spring Goodbye, LLC +studio + // study : 2014-12-11 OPEN UNIVERSITIES AUSTRALIA PTY LTD study @@ -8933,6 +9161,9 @@ style // sucks : 2014-12-22 Vox Populi Registry Inc. sucks +// supersport : 2015-03-05 SuperSport International Holdings Proprietary Limited +supersport + // supplies : 2013-12-19 Atomic Fields, LLC supplies @@ -8975,6 +9206,9 @@ taipei // taobao : 2015-01-15 Alibaba Group Holding Limited taobao +// tatamotors : 2015-03-12 Tata Motors Ltd +tatamotors + // tatar : 2014-04-24 Limited Liability Company tatar @@ -8984,12 +9218,24 @@ tattoo // tax : 2014-03-20 Storm Orchard, LLC tax +// taxi : 2015-03-19 Pine Falls, LLC +taxi + // tci : 2014-09-12 Asia Green IT System Bilgisayar San. ve Tic. Ltd. Sti. tci +// team : 2015-03-05 Atomic Lake, LLC +team + +// tech : 2015-01-30 Dot Tech LLC +tech + // technology : 2013-09-13 Auburn Falls technology +// telecity : 2015-02-19 TelecityGroup International Limited +telecity + // telefonica : 2014-10-16 Telefónica S.A. telefonica @@ -8999,9 +9245,21 @@ temasek // tennis : 2014-12-04 Cotton Bloom, LLC tennis +// thd : 2015-04-02 Homer TLC, Inc. +thd + +// theater : 2015-03-19 Blue Tigers, LLC +theater + +// tickets : 2015-02-05 Accent Media Limited +tickets + // tienda : 2013-11-14 Victor Manor, LLC tienda +// tiffany : 2015-01-30 Tiffany and Company +tiffany + // tips : 2013-09-20 Corn Willow, LLC tips @@ -9050,15 +9308,30 @@ trading // training : 2013-11-07 Wild Willow, LLC training +// travelers : 2015-03-26 Travelers TLD, LLC +travelers + +// travelersinsurance : 2015-03-26 Travelers TLD, LLC +travelersinsurance + // trust : 2014-10-16 trust +// trv : 2015-03-26 Travelers TLD, LLC +trv + // tui : 2014-07-03 TUI AG tui +// tunes : 2015-02-26 Amazon EU S.à r.l. +tunes + // tushu : 2014-12-18 Amazon EU S.à r.l. tushu +// tvs : 2015-02-19 T V SUNDRAM IYENGAR & SONS LIMITED +tvs + // ubs : 2014-12-11 UBS AG ubs @@ -9095,6 +9368,9 @@ viajes // video : 2014-10-16 video +// viking : 2015-04-02 Viking River Cruises (Bermuda) Ltd. +viking + // villas : 2013-12-05 New Sky, LLC villas @@ -9134,6 +9410,9 @@ voto // voyage : 2013-08-27 Ruby House, LLC voyage +// vuelos : 2015-03-05 Travel Reservations SRL +vuelos + // wales : 2014-05-08 Nominet UK wales @@ -9155,6 +9434,9 @@ watches // weather : 2015-01-08 The Weather Channel, LLC weather +// weatherchannel : 2015-03-12 The Weather Channel, LLC +weatherchannel + // webcam : 2014-01-23 dot Webcam Limited webcam @@ -9167,6 +9449,12 @@ wed // wedding : 2014-04-24 Top Level Domain Holdings Limited wedding +// weibo : 2015-03-05 Sina Corporation +weibo + +// weir : 2015-01-29 Weir Group IP Limited +weir + // whoswho : 2014-02-20 Who's Who Registry whoswho @@ -9219,6 +9507,10 @@ xin कॉम xn--11b4c3d +// xn--1ck2e1b : 2015-02-26 Amazon EU S.à r.l. +セール +xn--1ck2e1b + // xn--1qqw23a : 2014-01-09 Guangzhou YU Wei Information Technology Co., Ltd. 佛山 xn--1qqw23a @@ -9283,6 +9575,10 @@ xn--80asehdb сайт xn--80aswg +// xn--8y0a063a : 2015-03-26 China United Network Communications Corporation Limited +联通 +xn--8y0a063a + // xn--9dbq2a : 2015-01-15 VeriSign Sarl קום xn--9dbq2a @@ -9291,10 +9587,18 @@ xn--9dbq2a 时尚 xn--9et52u +// xn--9krt00a : 2015-03-12 Sina Corporation +微博 +xn--9krt00a + // xn--b4w605ferd : 2014-08-07 Temasek Holdings (Private) Limited 淡马锡 xn--b4w605ferd +// xn--bck1b9a5dre4c : 2015-02-26 Amazon EU S.à r.l. +ファッション +xn--bck1b9a5dre4c + // xn--c1avg : 2013-11-14 Public Interest Registry орг xn--c1avg @@ -9303,11 +9607,15 @@ xn--c1avg नेट xn--c2br7g +// xn--cck2b3b : 2015-02-26 Amazon EU S.à r.l. +ストア +xn--cck2b3b + // xn--cg4bki : 2013-09-27 SAMSUNG SDS CO., LTD 삼성 xn--cg4bki -// xn--czr694b : 2014-01-16 HU YI GLOBAL INFORMATION RESOURCES(HOLDING) COMPANY.HONGKONG LIMITED +// xn--czr694b : 2014-01-16 HU YI GLOBAL INFORMATION RESOURCES (HOLDING) COMPANY.HONGKONG LIMITED 商标 xn--czr694b @@ -9331,6 +9639,10 @@ xn--eckvdtc9d 新闻 xn--efvy88h +// xn--estv75g : 2015-02-19 Industrial and Commercial Bank of China Limited +工行 +xn--estv75g + // xn--fhbei : 2015-01-15 VeriSign Sarl كوم xn--fhbei @@ -9351,6 +9663,14 @@ xn--fjq720a 谷歌 xn--flw351e +// xn--g2xx48c : 2015-01-30 Minds + Machines Group Limited +购物 +xn--g2xx48c + +// xn--gckr3f0f : 2015-02-26 Amazon EU S.à r.l. +クラウド +xn--gckr3f0f + // xn--hxt814e : 2014-05-15 Zodiac Libra Limited 网店 xn--hxt814e @@ -9375,6 +9695,10 @@ xn--j1aef 诺基亚 xn--jlq61u9w7b +// xn--jvr189m : 2015-02-26 Amazon EU S.à r.l. +食品 +xn--jvr189m + // xn--kcrx77d1x4a : 2014-11-07 Koninklijke Philips N.V. 飞利浦 xn--kcrx77d1x4a @@ -9455,6 +9779,10 @@ xn--qcka1pmc 世界 xn--rhqv96g +// xn--rovu88b : 2015-02-26 Amazon EU S.à r.l. +書籍 +xn--rovu88b + // xn--ses554g : 2014-01-16 网址 xn--ses554g @@ -9501,6 +9829,9 @@ xyz // yachts : 2014-01-09 DERYachts, LLC yachts +// yahoo : 2015-04-02 Yahoo! Domain Services Inc. +yahoo + // yamaxun : 2014-12-18 Amazon EU S.à r.l. yamaxun From 159f6139419a7b1688e50a6c673bd7939a73395e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=81lvaro=20Fern=C3=A1ndez=20Rojas?= Date: Sun, 12 Apr 2015 13:41:12 +0200 Subject: [PATCH 240/681] sumo: update to 0.23 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Álvaro Fernández Rojas --- utils/sumo/Makefile | 8 +++++--- utils/sumo/files/sumo.sh | 2 +- utils/sumo/patches/100-configure_fix.patch | 14 ++++++++++++++ 3 files changed, 20 insertions(+), 4 deletions(-) create mode 100644 utils/sumo/patches/100-configure_fix.patch diff --git a/utils/sumo/Makefile b/utils/sumo/Makefile index 02b8fa01e..83aa40d42 100644 --- a/utils/sumo/Makefile +++ b/utils/sumo/Makefile @@ -8,23 +8,25 @@ include $(TOPDIR)/rules.mk PKG_NAME:=sumo -PKG_VERSION:=0.22.0 +PKG_VERSION:=0.23.0 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-src-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=@SF/sumo -PKG_MD5SUM:=d239a3f94fdb905fdaf1648f2b71fd42 +PKG_MD5SUM:=0df95a449d44808b8d3677af086e1af1 PKG_MAINTAINER:=Álvaro Fernández Rojas PKG_LICENSE:=GPL-3.0 PKG_LICENSE_FILES:=COPYING +PKG_BUILD_PARALLEL:=1 +PKG_FIXUP:=autoreconf PKG_INSTALL:=1 include $(INCLUDE_DIR)/package.mk CONFIGURE_ARGS += \ - --with-xerces-includes=$(STAGING_DIR)/usr/include/xercesc \ + --with-xerces=$(STAGING_DIR)/usr \ --disable-debug \ --disable-dependency-tracking \ --disable-silent-rules diff --git a/utils/sumo/files/sumo.sh b/utils/sumo/files/sumo.sh index 2ae8df8c2..0f0af4db4 100644 --- a/utils/sumo/files/sumo.sh +++ b/utils/sumo/files/sumo.sh @@ -3,4 +3,4 @@ SUMO_HOME=/usr/share/sumo sumo-bin $@ -exit 0 +exit $? diff --git a/utils/sumo/patches/100-configure_fix.patch b/utils/sumo/patches/100-configure_fix.patch new file mode 100644 index 000000000..6fff18ca7 --- /dev/null +++ b/utils/sumo/patches/100-configure_fix.patch @@ -0,0 +1,14 @@ +--- a/configure.ac ++++ b/configure.ac +@@ -13,11 +13,6 @@ AC_LANG([C++]) + + dnl the debug check has to be made before the program checks + dnl because it modifies CXXFLAGS +-if test x$CXX = xclang++; then +- CXXFLAGS="-msse2 $CXXFLAGS" +-else +- CXXFLAGS="-msse2 -mfpmath=sse $CXXFLAGS" +-fi + AC_ARG_ENABLE([debug], [AS_HELP_STRING([--enable-debug],[enable sumo debugging code [default=no].])]) + if test x$enable_debug = xyes; then + AC_DEFINE(_DEBUG, 1, [Define to 1 in order to enable sumo debugging code.]) From fe25f00fb6c4a1b7edf5bc0b0b5c164cc4482b52 Mon Sep 17 00:00:00 2001 From: Jonas Gorski Date: Sun, 12 Apr 2015 14:06:01 +0200 Subject: [PATCH 241/681] znc: disable mips16 Using mips16 seems to make znc randomly crash. Signed-off-by: Jonas Gorski --- net/znc/Makefile | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/net/znc/Makefile b/net/znc/Makefile index 9681c4733..8e39a380a 100644 --- a/net/znc/Makefile +++ b/net/znc/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=znc PKG_VERSION:=1.4 -PKG_RELEASE:=2 +PKG_RELEASE:=3 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://znc.in/releases \ @@ -20,6 +20,7 @@ PKG_MAINTAINER:=Jonas Gorski PKG_LICENSE:=Apache-2.0 PKG_LICENSE_FILES:=LICENSE +PKG_USE_MIPS16:=0 PKG_BUILD_PARALLEL:=1 From 5df81725c2b345708a4611a25689b0bcbb5d5f99 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=81lvaro=20Fern=C3=A1ndez=20Rojas?= Date: Sun, 12 Apr 2015 18:51:00 +0200 Subject: [PATCH 242/681] pciutils: update to 3.3.1 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Álvaro Fernández Rojas --- utils/pciutils/Makefile | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/utils/pciutils/Makefile b/utils/pciutils/Makefile index 0d7ec33f9..e9879f601 100644 --- a/utils/pciutils/Makefile +++ b/utils/pciutils/Makefile @@ -8,18 +8,18 @@ include $(TOPDIR)/rules.mk PKG_NAME:=pciutils -PKG_VERSION:=3.3.0 -PKG_RELEASE:=3 -PKG_USE_MIPS16:=0 +PKG_VERSION:=3.3.1 +PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=@KERNEL/software/utils/pciutils -PKG_MD5SUM:=bf6ce5c50b273ffc2d27f659e929a37e +PKG_MD5SUM:=86d5462e5cfc2a4341a2b91ce3ed0f09 PKG_MAINTAINER:=Álvaro Fernández Rojas PKG_LICENSE:=GPL-2.0 PKG_LICENSE_FILES:=COPYING +PKG_USE_MIPS16:=0 PKG_INSTALL:=1 include $(INCLUDE_DIR)/package.mk From 20c28055494f40a309d7c806ce60e7634e8e8254 Mon Sep 17 00:00:00 2001 From: Peter Wagner Date: Sun, 12 Apr 2015 20:53:17 +0200 Subject: [PATCH 243/681] git: update to 2.3.5 Signed-off-by: Peter Wagner --- net/git/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/net/git/Makefile b/net/git/Makefile index f161dcb13..429d8e690 100644 --- a/net/git/Makefile +++ b/net/git/Makefile @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=git -PKG_VERSION:=2.3.3 +PKG_VERSION:=2.3.5 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=@KERNEL/software/scm/git/ -PKG_MD5SUM:=14a885da3b432455b606cc1a25a6c681 +PKG_MD5SUM:=be8c0bbb0c5ee6ab7cdcffd2c9375fe6 PKG_INSTALL:=1 PKG_BUILD_PARALLEL:=1 From f4ef2c8fd7fbc41fd6e0f4298450dae4a8af1add Mon Sep 17 00:00:00 2001 From: Peter Wagner Date: Sun, 12 Apr 2015 20:56:51 +0200 Subject: [PATCH 244/681] ntpd: update to 4.2.8p2 Signed-off-by: Peter Wagner --- net/ntpd/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/net/ntpd/Makefile b/net/ntpd/Makefile index 34a8ddae9..46e08f594 100644 --- a/net/ntpd/Makefile +++ b/net/ntpd/Makefile @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=ntp -PKG_VERSION:=4.2.8p1 +PKG_VERSION:=4.2.8p2 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://www.eecis.udel.edu/~ntp/ntp_spool/ntp4/ntp-4.2/ -PKG_MD5SUM:=65d8cdfae4722226fbe29863477641ed +PKG_MD5SUM:=fa37049383316322d060ec9061ac23a9 PKG_LICENSE:=Unique PKG_LICENSE_FILES:=COPYRIGHT html/copyright.html From 2c1c2de230e223e6ba9aa27379e2f90aa5495f26 Mon Sep 17 00:00:00 2001 From: Peter Wagner Date: Mon, 13 Apr 2015 18:14:27 +0200 Subject: [PATCH 245/681] Currently the hotplug script never starts because it assumes the wrong path to the binary. Fix the path. Signed-off-by: Sebastian Kemper Signed-off-by: Peter Wagner --- net/ntpd/files/ntpd.hotplug | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/net/ntpd/files/ntpd.hotplug b/net/ntpd/files/ntpd.hotplug index 992628f6c..b960af013 100644 --- a/net/ntpd/files/ntpd.hotplug +++ b/net/ntpd/files/ntpd.hotplug @@ -1,6 +1,6 @@ NAME=ntpd CONFIG=/etc/ntp.conf -COMMAND=/usr/sbin/$NAME +COMMAND=sbin/$NAME [ "$ACTION" = "ifup" -a "$INTERFACE" = "wan" ] && { [ -x $COMMAND ] && [ -r $CONFIG ] && { From 0135d8e2bd83177a4ee8fec14fa2106dc61ea8a9 Mon Sep 17 00:00:00 2001 From: Peter Wagner Date: Mon, 13 Apr 2015 18:53:17 +0200 Subject: [PATCH 246/681] ntpd: fix typo Signed-off-by: Peter Wagner --- net/ntpd/files/ntpd.hotplug | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/net/ntpd/files/ntpd.hotplug b/net/ntpd/files/ntpd.hotplug index b960af013..975be751e 100644 --- a/net/ntpd/files/ntpd.hotplug +++ b/net/ntpd/files/ntpd.hotplug @@ -1,6 +1,6 @@ NAME=ntpd CONFIG=/etc/ntp.conf -COMMAND=sbin/$NAME +COMMAND=/sbin/$NAME [ "$ACTION" = "ifup" -a "$INTERFACE" = "wan" ] && { [ -x $COMMAND ] && [ -r $CONFIG ] && { From ba98e502d8bd20dcdef3f4b6941933e43659cbd1 Mon Sep 17 00:00:00 2001 From: Vladimir Ulrich Date: Wed, 15 Apr 2015 14:03:54 +0300 Subject: [PATCH 247/681] [utils/zoneinfo]Updated to the latest version Signed-off-by: Vladimir Ulrich --- utils/zoneinfo/Makefile | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/utils/zoneinfo/Makefile b/utils/zoneinfo/Makefile index 3327fddc4..e85672d06 100644 --- a/utils/zoneinfo/Makefile +++ b/utils/zoneinfo/Makefile @@ -9,8 +9,8 @@ include $(TOPDIR)/rules.mk PKG_NAME:=zoneinfo -PKG_VERSION:=2015b -PKG_VERSION_CODE:=2015b +PKG_VERSION:=2015c +PKG_VERSION_CODE:=2015c PKG_RELEASE:=1 #As i couldn't find real license used "Public Domain" @@ -20,14 +20,14 @@ PKG_LICENSE:=Public Domain PKG_SOURCE:=tzdata$(PKG_VERSION).tar.gz PKG_SOURCE_CODE:=tzcode$(PKG_VERSION_CODE).tar.gz PKG_SOURCE_URL:=http://www.iana.org/time-zones/repository/releases -PKG_MD5SUM:=75571bb17c7b6be88a9f8872e45bc726 +PKG_MD5SUM:=4b4a3e344786198c46909e5afde08788 include $(INCLUDE_DIR)/package.mk define Download/tzcode FILE=$(PKG_SOURCE_CODE) URL=$(PKG_SOURCE_URL) - MD5SUM:=f073a7c9bca7f9fe408491f826e92968 + MD5SUM:=182c85e99be2bcc6b77d9956c8c0dcce endef $(eval $(call Download,tzcode)) From 76150309a80d87a6f11b4e2822ba14adce7c1a5b Mon Sep 17 00:00:00 2001 From: Etienne CHAMPETIER Date: Thu, 16 Apr 2015 07:48:09 +0200 Subject: [PATCH 248/681] zabbix: fix wifi.ifdiscovery UserParameter (zabbix-extra-wifi) we don't use uci anymore (only ubus and iwinfo) Signed-off-by: Etienne CHAMPETIER --- admin/zabbix/files/wifi | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/admin/zabbix/files/wifi b/admin/zabbix/files/wifi index 250d2f913..6315ea995 100644 --- a/admin/zabbix/files/wifi +++ b/admin/zabbix/files/wifi @@ -3,7 +3,7 @@ # wifi interface discovery # exemple: {"data":[{"{#IF}":"wlan0", "{#MODE}":"ap", "{#SSID}":"Openwrt", "{#NET}":"lan", "{#DEV}":"radio0", "{#ENC}":"psk2+ccmp", "{#TYPE}":"mac80211", "{#HWMODE}":"11ng", "{#CHANNEL}":"11", "{#BSSID}":"xx:xx:xx:xx:xx:xx"}]} # ubus call only work as root so you need to run zabbix as root to use wifi.ifdiscovery -UserParameter=wifi.ifdiscovery, lua -l uci -l ubus -l iwinfo -e 'u = ubus.connect();x = uci.cursor();list="{\"data\":[";stat=u:call("network.wireless", "status", {});for dev, dev_table in pairs(stat) do for i, iface in pairs(dev_table["interfaces"]) do s=iface["section"];list=list.."{\"{#IF}\":\""..iface["ifname"].."\", \"{#MODE}\":\""..x:get("wireless", s, "mode").."\", \"{#SSID}\":\""..x:get("wireless", s, "ssid").."\", \"{#NET}\":\""..x:get("wireless", s, "network").."\", \"{#DEV}\":\""..dev.."\", \"{#ENC}\":\""..(x:get("wireless", s, "encryption") or "?").."\", \"{#TYPE}\":\""..x:get("wireless", dev, "type").."\", \"{#HWMODE}\":\""..x:get("wireless", dev, "hwmode").."\", \"{#CHANNEL}\":\""..x:get("wireless", dev, "channel").."\", \"{#BSSID}\":\""..iwinfo[iwinfo.type(iface["ifname"])].bssid(iface["ifname"]).."\"},";end;end;list=string.gsub(list,",$","");print(list.."]}")' +UserParameter=wifi.ifdiscovery, lua -l ubus -l iwinfo -e 'u=ubus.connect();list="{\"data\":[";stat=u:call("network.wireless", "status", {});for dev, dev_table in pairs(stat) do for i, iface in pairs(dev_table["interfaces"]) do c=iface["config"];i=iface["ifname"];t=iwinfo.type(i);iw=iwinfo[t];e = iw.encryption(i);e = e and e.description or "None";n = table.concat(c["network"]," ");list=list.."{\"{#IF}\":\""..i.."\", \"{#MODE}\":\""..iw.mode(i).."\", \"{#SSID}\":\""..c["ssid"].."\", \"{#NET}\":\""..n.."\", \"{#DEV}\":\""..dev.."\", \"{#ENC}\":\""..e.."\", \"{#TYPE}\":\""..t.."\", \"{#HWMODE}\":\"".."?".."\", \"{#CHANNEL}\":\""..iw.channel(i).."\", \"{#BSSID}\":\""..iw.bssid(i).."\"},";end;end;list=string.gsub(list,",$","");print(list.."]}")' #iwinfo info (you need {#IF} as parameter, like 'wlan0') From a412694bbc7376721c5411ae8a6d58aaeea3c6d8 Mon Sep 17 00:00:00 2001 From: heil Date: Thu, 16 Apr 2015 12:04:10 +0200 Subject: [PATCH 249/681] haproxy: include patches from mainline - [PATCH 3/9] BUG/MEDIUM: Do not consider an agent check as failed on - [PATCH 4/9] BUG/MEDIUM: peers: correctly configure the client timeout - [PATCH 5/9] BUG/MEDIUM: buffer: one byte miss in buffer free space - [PATCH 6/9] BUG/MAJOR: http: don't read past buffer's end in - [PATCH 7/9] BUG/MEDIUM: http: the function "(req|res)-replace-value" - [PATCH 8/9] BUG/MINOR: compression: consider the expansion factor in - [PATCH 9/9] BUG/MEDIUM: http: hdr_cnt would not count any header when Signed-off-by: heil --- net/haproxy/Makefile | 2 +- ...t-consider-an-agent-check-as-failed-.patch | 43 +++++ ...-correctly-configure-the-client-time.patch | 33 ++++ ...r-one-byte-miss-in-buffer-free-space.patch | 30 +++ ...on-t-read-past-buffer-s-end-in-http_.patch | 52 ++++++ ...the-function-req-res-replace-value-d.patch | 171 ++++++++++++++++++ ...ssion-consider-the-expansion-factor-.patch | 43 +++++ ...hdr_cnt-would-not-count-any-header-w.patch | 70 +++++++ 8 files changed, 443 insertions(+), 1 deletion(-) create mode 100644 net/haproxy/patches/0003-BUG-MEDIUM-Do-not-consider-an-agent-check-as-failed-.patch create mode 100644 net/haproxy/patches/0004-BUG-MEDIUM-peers-correctly-configure-the-client-time.patch create mode 100644 net/haproxy/patches/0005-BUG-MEDIUM-buffer-one-byte-miss-in-buffer-free-space.patch create mode 100644 net/haproxy/patches/0006-BUG-MAJOR-http-don-t-read-past-buffer-s-end-in-http_.patch create mode 100644 net/haproxy/patches/0007-BUG-MEDIUM-http-the-function-req-res-replace-value-d.patch create mode 100644 net/haproxy/patches/0008-BUG-MINOR-compression-consider-the-expansion-factor-.patch create mode 100644 net/haproxy/patches/0009-BUG-MEDIUM-http-hdr_cnt-would-not-count-any-header-w.patch diff --git a/net/haproxy/Makefile b/net/haproxy/Makefile index 38ce8fd5a..7ed23696d 100644 --- a/net/haproxy/Makefile +++ b/net/haproxy/Makefile @@ -10,7 +10,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=haproxy PKG_VERSION:=1.5.11 -PKG_RELEASE:=02 +PKG_RELEASE:=09 PKG_SOURCE:=haproxy-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://haproxy.1wt.eu/download/1.5/src/ PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/$(PKG_NAME)-$(PKG_VERSION) diff --git a/net/haproxy/patches/0003-BUG-MEDIUM-Do-not-consider-an-agent-check-as-failed-.patch b/net/haproxy/patches/0003-BUG-MEDIUM-Do-not-consider-an-agent-check-as-failed-.patch new file mode 100644 index 000000000..1f257efb0 --- /dev/null +++ b/net/haproxy/patches/0003-BUG-MEDIUM-Do-not-consider-an-agent-check-as-failed-.patch @@ -0,0 +1,43 @@ +From bfb8f885955efa1ef90f79595f16a01e30fd0dcf Mon Sep 17 00:00:00 2001 +From: Simon Horman +Date: Thu, 26 Feb 2015 11:26:17 +0900 +Subject: [PATCH 3/9] BUG/MEDIUM: Do not consider an agent check as failed on + L7 error + +As failure to connect to the agent check is not sufficient to mark it as +failed it stands to reason that an L7 error shouldn't either. + +Without this fix if an L7 error occurs, for example of connectivity to the +agent is lost immediately after establishing a connection to it, then the +agent check will be considered to have failed and thus may end up with zero +health. Once this has occurred if the primary health check also reaches +zero health, which is likely if connectivity to the server is lost, then +the server will be marked as down and not be marked as up again until a +successful agent check occurs regardless of the success of any primary +health checks. + +This behaviour is not correct as a failed agent check should never cause a +server to be marked as down or by extension continue to be marked as down. + +Signed-off-by: Simon Horman +(cherry picked from commit eaabd52e29a29187f9829fe727028a6ca530cbf9) +--- + src/checks.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/checks.c b/src/checks.c +index b9048da..71debb6 100644 +--- a/src/checks.c ++++ b/src/checks.c +@@ -246,7 +246,7 @@ static void set_server_check_status(struct check *check, short status, const cha + * cause the server to be marked down. + */ + if ((!(check->state & CHK_ST_AGENT) || +- (check->status >= HCHK_STATUS_L7TOUT)) && ++ (check->status >= HCHK_STATUS_L57DATA)) && + (check->health >= check->rise)) { + s->counters.failed_checks++; + report = 1; +-- +2.0.5 + diff --git a/net/haproxy/patches/0004-BUG-MEDIUM-peers-correctly-configure-the-client-time.patch b/net/haproxy/patches/0004-BUG-MEDIUM-peers-correctly-configure-the-client-time.patch new file mode 100644 index 000000000..8d33bb56d --- /dev/null +++ b/net/haproxy/patches/0004-BUG-MEDIUM-peers-correctly-configure-the-client-time.patch @@ -0,0 +1,33 @@ +From fc940eb2bf0bbd7adf5b283f28bcff136501ae7f Mon Sep 17 00:00:00 2001 +From: Willy Tarreau +Date: Fri, 13 Mar 2015 16:18:25 +0100 +Subject: [PATCH 4/9] BUG/MEDIUM: peers: correctly configure the client timeout + +The peers frontend timeout was mistakenly set on timeout.connect instead +of timeout.client, resulting in no timeout being applied to the peers +connections. The impact is just that peers can establish connections and +remain connected until they speak. Once they start speaking, only one of +them will still be accepted, and old sessions will be killed, so the +problem is limited. This fix should however be backported to 1.5 since +it was introduced in 1.5-dev3 with peers. +(cherry picked from commit 9ff95bb18c4cd9ae747fa5b3bef6d3f94e54172f) +--- + src/cfgparse.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/cfgparse.c b/src/cfgparse.c +index a91e027..b7613b8 100644 +--- a/src/cfgparse.c ++++ b/src/cfgparse.c +@@ -1834,7 +1834,7 @@ int cfg_parse_peers(const char *file, int linenum, char **args, int kwm) + curpeers->peers_fe->cap = PR_CAP_FE; + curpeers->peers_fe->maxconn = 0; + curpeers->peers_fe->conn_retries = CONN_RETRIES; +- curpeers->peers_fe->timeout.connect = 5000; ++ curpeers->peers_fe->timeout.client = MS_TO_TICKS(5000); + curpeers->peers_fe->accept = peer_accept; + curpeers->peers_fe->options2 |= PR_O2_INDEPSTR | PR_O2_SMARTCON | PR_O2_SMARTACC; + curpeers->peers_fe->conf.args.file = curpeers->peers_fe->conf.file = strdup(file); +-- +2.0.5 + diff --git a/net/haproxy/patches/0005-BUG-MEDIUM-buffer-one-byte-miss-in-buffer-free-space.patch b/net/haproxy/patches/0005-BUG-MEDIUM-buffer-one-byte-miss-in-buffer-free-space.patch new file mode 100644 index 000000000..bdc674c0a --- /dev/null +++ b/net/haproxy/patches/0005-BUG-MEDIUM-buffer-one-byte-miss-in-buffer-free-space.patch @@ -0,0 +1,30 @@ +From b92902814f796bb1dc24bab2179000caceb5b151 Mon Sep 17 00:00:00 2001 +From: Thierry FOURNIER +Date: Tue, 10 Mar 2015 01:55:01 +0100 +Subject: [PATCH 5/9] BUG/MEDIUM: buffer: one byte miss in buffer free space + check + +Space is not avalaible only if the end of the data inserted +is strictly greater than the end of buffer. If these two value +are equal, the space is avamaible. +(cherry picked from commit fdda6777bffb4f933569c609ba54e24ea5eabf29) +--- + src/buffer.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/buffer.c b/src/buffer.c +index 9037dd3..8d2644e 100644 +--- a/src/buffer.c ++++ b/src/buffer.c +@@ -46,7 +46,7 @@ int buffer_replace2(struct buffer *b, char *pos, char *end, const char *str, int + + delta = len - (end - pos); + +- if (bi_end(b) + delta >= b->data + b->size) ++ if (bi_end(b) + delta > b->data + b->size) + return 0; /* no space left */ + + if (buffer_not_empty(b) && +-- +2.0.5 + diff --git a/net/haproxy/patches/0006-BUG-MAJOR-http-don-t-read-past-buffer-s-end-in-http_.patch b/net/haproxy/patches/0006-BUG-MAJOR-http-don-t-read-past-buffer-s-end-in-http_.patch new file mode 100644 index 000000000..66e0c69ef --- /dev/null +++ b/net/haproxy/patches/0006-BUG-MAJOR-http-don-t-read-past-buffer-s-end-in-http_.patch @@ -0,0 +1,52 @@ +From 8e05ac2044c6523c867ceaaae1f10486370eec89 Mon Sep 17 00:00:00 2001 +From: Thierry FOURNIER +Date: Mon, 16 Mar 2015 11:14:41 +0100 +Subject: [PATCH 6/9] BUG/MAJOR: http: don't read past buffer's end in + http_replace_value + +The function http_replace_value use bad variable to detect the end +of the input string. + +Regression introduced by the patch "MEDIUM: regex: Remove null +terminated strings." (c9c2daf2) + +We need to backport this patch int the 1.5 stable branch. + +WT: there is no possibility to overwrite existing data as we only read + past the end of the request buffer, to copy into the trash. The copy + is bounded by buffer_replace2(), just like the replacement performed + by exp_replace(). However if a buffer happens to contain non-zero data + up to the next unmapped page boundary, there's a theorical risk of + crashing the process despite this not being reproducible in tests. + The risk is low because "http-request replace-value" did not work due + to this bug so that probably means it's not used yet. +(cherry picked from commit 534101658d6e19aeb598bf7833a8ce167498c4ed) +--- + src/proto_http.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/src/proto_http.c b/src/proto_http.c +index 705f3b4..f53b5e2 100644 +--- a/src/proto_http.c ++++ b/src/proto_http.c +@@ -3206,7 +3206,7 @@ static int http_replace_value(struct my_regex *re, char *dst, uint dst_size, cha + + /* look for delim. */ + p_delim = p; +- while (p_delim < p + len && *p_delim != delim) ++ while (p_delim < val + len && *p_delim != delim) + p_delim++; + + if (regex_exec_match2(re, p, p_delim-p, MAX_MATCH, pmatch)) { +@@ -3230,7 +3230,7 @@ static int http_replace_value(struct my_regex *re, char *dst, uint dst_size, cha + return -1; + + /* end of the replacements. */ +- if (p_delim >= p + len) ++ if (p_delim >= val + len) + break; + + /* Next part. */ +-- +2.0.5 + diff --git a/net/haproxy/patches/0007-BUG-MEDIUM-http-the-function-req-res-replace-value-d.patch b/net/haproxy/patches/0007-BUG-MEDIUM-http-the-function-req-res-replace-value-d.patch new file mode 100644 index 000000000..5d4dbc0af --- /dev/null +++ b/net/haproxy/patches/0007-BUG-MEDIUM-http-the-function-req-res-replace-value-d.patch @@ -0,0 +1,171 @@ +From 06170c50ae5cd0fb23510b832826f7e63a5a8894 Mon Sep 17 00:00:00 2001 +From: Thierry FOURNIER +Date: Mon, 16 Mar 2015 23:23:53 +0100 +Subject: [PATCH 7/9] BUG/MEDIUM: http: the function "(req|res)-replace-value" + doesn't respect the HTTP syntax + +These function used an invalid header parser. + - The trailing white-spaces were embedded in the replacement regex, + - The double-quote (") containing comma (,) were not respected. + +This patch replace this parser by the "official" parser http_find_header2(). +(cherry picked from commit 191f9efdc58f21af1d9dde3db5ba198d7f1ce22e) +--- + src/proto_http.c | 126 +++++++++++++++---------------------------------------- + 1 file changed, 34 insertions(+), 92 deletions(-) + +diff --git a/src/proto_http.c b/src/proto_http.c +index f53b5e2..c49c4f4 100644 +--- a/src/proto_http.c ++++ b/src/proto_http.c +@@ -3179,113 +3179,55 @@ static inline void inet_set_tos(int fd, struct sockaddr_storage from, int tos) + #endif + } + +-/* Returns the number of characters written to destination, +- * -1 on internal error and -2 if no replacement took place. +- */ +-static int http_replace_header(struct my_regex *re, char *dst, uint dst_size, char *val, int len, +- const char *rep_str) +-{ +- if (!regex_exec_match2(re, val, len, MAX_MATCH, pmatch)) +- return -2; +- +- return exp_replace(dst, dst_size, val, rep_str, pmatch); +-} +- +-/* Returns the number of characters written to destination, +- * -1 on internal error and -2 if no replacement took place. +- */ +-static int http_replace_value(struct my_regex *re, char *dst, uint dst_size, char *val, int len, char delim, +- const char *rep_str) +-{ +- char* p = val; +- char* dst_end = dst + dst_size; +- char* dst_p = dst; +- +- for (;;) { +- char *p_delim; +- +- /* look for delim. */ +- p_delim = p; +- while (p_delim < val + len && *p_delim != delim) +- p_delim++; +- +- if (regex_exec_match2(re, p, p_delim-p, MAX_MATCH, pmatch)) { +- int replace_n = exp_replace(dst_p, dst_end - dst_p, p, rep_str, pmatch); +- +- if (replace_n < 0) +- return -1; +- +- dst_p += replace_n; +- } else { +- uint len = p_delim - p; +- +- if (dst_p + len >= dst_end) +- return -1; +- +- memcpy(dst_p, p, len); +- dst_p += len; +- } +- +- if (dst_p >= dst_end) +- return -1; +- +- /* end of the replacements. */ +- if (p_delim >= val + len) +- break; +- +- /* Next part. */ +- *dst_p++ = delim; +- p = p_delim + 1; +- } +- +- return dst_p - dst; +-} +- + static int http_transform_header(struct session* s, struct http_msg *msg, const char* name, uint name_len, + char* buf, struct hdr_idx* idx, struct list *fmt, struct my_regex *re, + struct hdr_ctx* ctx, int action) + { ++ int (*http_find_hdr_func)(const char *name, int len, char *sol, ++ struct hdr_idx *idx, struct hdr_ctx *ctx); ++ struct chunk *replace = get_trash_chunk(); ++ struct chunk *output = get_trash_chunk(); ++ ++ replace->len = build_logline(s, replace->str, replace->size, fmt); ++ if (replace->len >= replace->size - 1) ++ return -1; ++ + ctx->idx = 0; + +- while (http_find_full_header2(name, name_len, buf, idx, ctx)) { ++ /* Choose the header browsing function. */ ++ switch (action) { ++ case HTTP_REQ_ACT_REPLACE_VAL: ++ case HTTP_RES_ACT_REPLACE_VAL: ++ http_find_hdr_func = http_find_header2; ++ break; ++ case HTTP_REQ_ACT_REPLACE_HDR: ++ case HTTP_RES_ACT_REPLACE_HDR: ++ http_find_hdr_func = http_find_full_header2; ++ break; ++ default: /* impossible */ ++ return -1; ++ } ++ ++ while (http_find_hdr_func(name, name_len, buf, idx, ctx)) { + struct hdr_idx_elem *hdr = idx->v + ctx->idx; + int delta; +- char* val = (char*)ctx->line + ctx->val; +- char* val_end = (char*)ctx->line + hdr->len; +- char* reg_dst_buf; +- uint reg_dst_buf_size; +- int n_replaced; +- +- trash.len = build_logline(s, trash.str, trash.size, fmt); +- +- if (trash.len >= trash.size - 1) +- return -1; ++ char *val = ctx->line + ctx->val; ++ char* val_end = val + ctx->vlen; + +- reg_dst_buf = trash.str + trash.len + 1; +- reg_dst_buf_size = trash.size - trash.len - 1; ++ if (!regex_exec_match2(re, val, val_end-val, MAX_MATCH, pmatch)) ++ continue; + +- switch (action) { +- case HTTP_REQ_ACT_REPLACE_VAL: +- case HTTP_RES_ACT_REPLACE_VAL: +- n_replaced = http_replace_value(re, reg_dst_buf, reg_dst_buf_size, val, val_end-val, ',', trash.str); +- break; +- case HTTP_REQ_ACT_REPLACE_HDR: +- case HTTP_RES_ACT_REPLACE_HDR: +- n_replaced = http_replace_header(re, reg_dst_buf, reg_dst_buf_size, val, val_end-val, trash.str); +- break; +- default: /* impossible */ ++ output->len = exp_replace(output->str, output->size, val, replace->str, pmatch); ++ if (output->len == -1) + return -1; +- } + +- switch (n_replaced) { +- case -1: return -1; +- case -2: continue; +- } +- +- delta = buffer_replace2(msg->chn->buf, val, val_end, reg_dst_buf, n_replaced); ++ delta = buffer_replace2(msg->chn->buf, val, val_end, output->str, output->len); + + hdr->len += delta; + http_msg_move_end(msg, delta); ++ ++ /* Adjust the length of the current value of the index. */ ++ ctx->vlen += delta; + } + + return 0; +-- +2.0.5 + diff --git a/net/haproxy/patches/0008-BUG-MINOR-compression-consider-the-expansion-factor-.patch b/net/haproxy/patches/0008-BUG-MINOR-compression-consider-the-expansion-factor-.patch new file mode 100644 index 000000000..b8d01f69a --- /dev/null +++ b/net/haproxy/patches/0008-BUG-MINOR-compression-consider-the-expansion-factor-.patch @@ -0,0 +1,43 @@ +From 9b9531d90dfd8a334958d23394afafd0185bfa21 Mon Sep 17 00:00:00 2001 +From: Willy Tarreau +Date: Sat, 28 Mar 2015 12:20:33 +0100 +Subject: [PATCH 8/9] BUG/MINOR: compression: consider the expansion factor in + init + +When checking if the buffer is large enough, we used to rely on a fixed +size that was "apparently" enough. We need to consider the expansion +factor of deflate-encoded streams instead, which is of 5 bytes per 32kB. +The previous value was OK till 128kB buffers but became wrong past that. +It's totally harmless since we always keep the reserve when compressiong, +so there's 1kB or so available, which is enough for buffers as large as +6.5 MB, but better fix the check anyway. + +This fix could be backported into 1.5 since compression was added there. +(cherry picked from commit 2aee2215c908c6997addcd1714b5b10f73c0703d) +--- + src/compression.c | 9 ++++++--- + 1 file changed, 6 insertions(+), 3 deletions(-) + +diff --git a/src/compression.c b/src/compression.c +index 3d6085e..d55f14e 100644 +--- a/src/compression.c ++++ b/src/compression.c +@@ -130,9 +130,12 @@ int http_compression_buffer_init(struct session *s, struct buffer *in, struct bu + { + int left; + +- /* not enough space */ +- if (in->size - buffer_len(in) < 40) +- return -1; ++ /* output stream requires at least 10 bytes for the gzip header, plus ++ * at least 8 bytes for the gzip trailer (crc+len), plus a possible ++ * plus at most 5 bytes per 32kB block and 2 bytes to close the stream. ++ */ ++ if (in->size - buffer_len(in) < 20 + 5 * ((in->i + 32767) >> 15)) ++ return -1; + + /* We start by copying the current buffer's pending outgoing data into + * a new temporary buffer that we initialize with a new empty chunk. +-- +2.0.5 + diff --git a/net/haproxy/patches/0009-BUG-MEDIUM-http-hdr_cnt-would-not-count-any-header-w.patch b/net/haproxy/patches/0009-BUG-MEDIUM-http-hdr_cnt-would-not-count-any-header-w.patch new file mode 100644 index 000000000..cd258da5e --- /dev/null +++ b/net/haproxy/patches/0009-BUG-MEDIUM-http-hdr_cnt-would-not-count-any-header-w.patch @@ -0,0 +1,70 @@ +From 2943734024525d4b9aeec13cca2c1d230c358ee5 Mon Sep 17 00:00:00 2001 +From: Willy Tarreau +Date: Wed, 1 Apr 2015 19:16:09 +0200 +Subject: [PATCH 9/9] BUG/MEDIUM: http: hdr_cnt would not count any header when + called without name + +It's documented that these sample fetch functions should count all headers +and/or all values when called with no name but in practice it's not what is +being done as a missing name causes an immediate return and an absence of +result. + +This bug is present in 1.5 as well and must be backported. +(cherry picked from commit 601a4d1741100d7a861b6d9b66561335c9911277) +--- + src/proto_http.c | 20 ++++++++++++++------ + 1 file changed, 14 insertions(+), 6 deletions(-) + +diff --git a/src/proto_http.c b/src/proto_http.c +index c49c4f4..ccd52ad 100644 +--- a/src/proto_http.c ++++ b/src/proto_http.c +@@ -10014,15 +10014,19 @@ smp_fetch_fhdr_cnt(struct proxy *px, struct session *l4, void *l7, unsigned int + struct hdr_ctx ctx; + const struct http_msg *msg = ((opt & SMP_OPT_DIR) == SMP_OPT_DIR_REQ) ? &txn->req : &txn->rsp; + int cnt; ++ const char *name = NULL; ++ int len = 0; + +- if (!args || args->type != ARGT_STR) +- return 0; ++ if (args && args->type == ARGT_STR) { ++ name = args->data.str.str; ++ len = args->data.str.len; ++ } + + CHECK_HTTP_MESSAGE_FIRST(); + + ctx.idx = 0; + cnt = 0; +- while (http_find_full_header2(args->data.str.str, args->data.str.len, msg->chn->buf->p, idx, &ctx)) ++ while (http_find_full_header2(name, len, msg->chn->buf->p, idx, &ctx)) + cnt++; + + smp->type = SMP_T_UINT; +@@ -10101,15 +10105,19 @@ smp_fetch_hdr_cnt(struct proxy *px, struct session *l4, void *l7, unsigned int o + struct hdr_ctx ctx; + const struct http_msg *msg = ((opt & SMP_OPT_DIR) == SMP_OPT_DIR_REQ) ? &txn->req : &txn->rsp; + int cnt; ++ const char *name = NULL; ++ int len = 0; + +- if (!args || args->type != ARGT_STR) +- return 0; ++ if (args && args->type == ARGT_STR) { ++ name = args->data.str.str; ++ len = args->data.str.len; ++ } + + CHECK_HTTP_MESSAGE_FIRST(); + + ctx.idx = 0; + cnt = 0; +- while (http_find_header2(args->data.str.str, args->data.str.len, msg->chn->buf->p, idx, &ctx)) ++ while (http_find_header2(name, len, msg->chn->buf->p, idx, &ctx)) + cnt++; + + smp->type = SMP_T_UINT; +-- +2.0.5 + From 92d316ff6c3977d1842d750766cda6420820c890 Mon Sep 17 00:00:00 2001 From: Nicolas Thill Date: Tue, 14 Apr 2015 18:56:07 +0200 Subject: [PATCH 250/681] pen: update to 0.27.5 Signed-off-by: Nicolas Thill --- net/pen/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/net/pen/Makefile b/net/pen/Makefile index 77b7b7a2b..646c722dc 100644 --- a/net/pen/Makefile +++ b/net/pen/Makefile @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=pen -PKG_VERSION:=0.27.3 +PKG_VERSION:=0.27.5 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://siag.nu/pub/pen/ -PKG_MD5SUM:=a83bbbe3aec24d8d53f5e87efb433b25 +PKG_MD5SUM:=8430c6941e2047218c55274e3e7d06f2 PKG_LICENSE:=GPL-2.0+ PKG_LICENSE_FILES:=COPYING From dfd640394c0cc36d21bc96b548c592577c4c70cc Mon Sep 17 00:00:00 2001 From: Emanuele Bovisio Date: Fri, 17 Apr 2015 11:58:13 +0200 Subject: [PATCH 251/681] openvswitch: upgrade to version 2.3.90 --- net/openvswitch/Makefile | 12 +++--- ...inux-Use-unsigned-int-for-ifi_flags.patch} | 2 +- ...interface-flag-survive-internal-por.patch} | 2 +- ...le-ovs_assert-when-build-with-NDEBUG.patch | 36 ---------------- ...lags-y-instead-of-deprecated-EXTRA_C.patch | 41 ------------------- 5 files changed, 8 insertions(+), 85 deletions(-) rename net/openvswitch/patches/{0002-netdev-linux-Use-unsigned-int-for-ifi_flags.patch => 0001-netdev-linux-Use-unsigned-int-for-ifi_flags.patch} (92%) rename net/openvswitch/patches/{0001-netdev-linux-Let-interface-flag-survive-internal-por.patch => 0002-netdev-linux-Let-interface-flag-survive-internal-por.patch} (95%) delete mode 100644 net/openvswitch/patches/0003-lib-util.h-Disable-ovs_assert-when-build-with-NDEBUG.patch delete mode 100644 net/openvswitch/patches/0004-datapath-Use-ccflags-y-instead-of-deprecated-EXTRA_C.patch diff --git a/net/openvswitch/Makefile b/net/openvswitch/Makefile index 3fb6ca893..7f9161a75 100644 --- a/net/openvswitch/Makefile +++ b/net/openvswitch/Makefile @@ -12,7 +12,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=openvswitch PKG_RELEASE:=2 -PKG_VERSION:=2.3.1 +PKG_VERSION:=2.3.90 PKG_RELEASE=$(PKG_SOURCE_VERSION) PKG_LICENSE:=Apache-2.0 PKG_LICENSE_FILES:=COPYING @@ -21,7 +21,7 @@ PKG_USE_MIPS16:=0 PKG_SOURCE_PROTO:=git PKG_SOURCE_URL:=https://github.com/openvswitch/ovs PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) -PKG_SOURCE_VERSION:=0dfed4ba9c8a16a1f316d709b7831a4e139472d4 +PKG_SOURCE_VERSION:=58be9c9fd732b5bdd3d4c2e9b8cc2313f570094d PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.gz include $(INCLUDE_DIR)/package.mk @@ -149,10 +149,10 @@ define Package/openvswitch/install $(INSTALL_BIN) ./files/etc/init.d/openvswitch.init $(1)/etc/init.d/openvswitch $(INSTALL_DIR) $(1)/usr/lib/ - $(CP) $(PKG_BUILD_DIR)/lib/.libs/libsflow-$(PKG_VERSION).so $(1)/usr/lib/ - $(CP) $(PKG_BUILD_DIR)/lib/.libs/libopenvswitch-$(PKG_VERSION).so $(1)/usr/lib/ - $(CP) $(PKG_BUILD_DIR)/ofproto/.libs/libofproto-$(PKG_VERSION).so $(1)/usr/lib/ - $(CP) $(PKG_BUILD_DIR)/ovsdb/.libs/libovsdb-$(PKG_VERSION).so $(1)/usr/lib/ + $(CP) $(PKG_BUILD_DIR)/lib/.libs/libsflow.so* $(1)/usr/lib/ + $(CP) $(PKG_BUILD_DIR)/lib/.libs/libopenvswitch.so* $(1)/usr/lib/ + $(CP) $(PKG_BUILD_DIR)/ofproto/.libs/libofproto.so* $(1)/usr/lib/ + $(CP) $(PKG_BUILD_DIR)/ovsdb/.libs/libovsdb.so* $(1)/usr/lib/ $(INSTALL_DIR) $(1)/usr/bin/ $(INSTALL_BIN) $(PKG_BUILD_DIR)/utilities/.libs/ovs-appctl $(1)/usr/bin/ diff --git a/net/openvswitch/patches/0002-netdev-linux-Use-unsigned-int-for-ifi_flags.patch b/net/openvswitch/patches/0001-netdev-linux-Use-unsigned-int-for-ifi_flags.patch similarity index 92% rename from net/openvswitch/patches/0002-netdev-linux-Use-unsigned-int-for-ifi_flags.patch rename to net/openvswitch/patches/0001-netdev-linux-Use-unsigned-int-for-ifi_flags.patch index 19c774799..ed537d10c 100644 --- a/net/openvswitch/patches/0002-netdev-linux-Use-unsigned-int-for-ifi_flags.patch +++ b/net/openvswitch/patches/0001-netdev-linux-Use-unsigned-int-for-ifi_flags.patch @@ -14,7 +14,7 @@ diff --git a/lib/netdev-linux.c b/lib/netdev-linux.c index 9bdbbdf..9eaac33 100644 --- a/lib/netdev-linux.c +++ b/lib/netdev-linux.c -@@ -2566,7 +2566,7 @@ update_flags(struct netdev_linux *netdev, enum netdev_flags off, +@@ -2709,7 +2709,7 @@ update_flags(struct netdev_linux *netdev, enum netdev_flags off, enum netdev_flags on, enum netdev_flags *old_flagsp) OVS_REQUIRES(netdev->mutex) { diff --git a/net/openvswitch/patches/0001-netdev-linux-Let-interface-flag-survive-internal-por.patch b/net/openvswitch/patches/0002-netdev-linux-Let-interface-flag-survive-internal-por.patch similarity index 95% rename from net/openvswitch/patches/0001-netdev-linux-Let-interface-flag-survive-internal-por.patch rename to net/openvswitch/patches/0002-netdev-linux-Let-interface-flag-survive-internal-por.patch index 1e79f3ae1..b31816ab3 100644 --- a/net/openvswitch/patches/0001-netdev-linux-Let-interface-flag-survive-internal-por.patch +++ b/net/openvswitch/patches/0002-netdev-linux-Let-interface-flag-survive-internal-por.patch @@ -21,7 +21,7 @@ diff --git a/lib/netdev-linux.c b/lib/netdev-linux.c index 9eaac33..423e72e 100644 --- a/lib/netdev-linux.c +++ b/lib/netdev-linux.c -@@ -2569,7 +2569,13 @@ update_flags(struct netdev_linux *netdev, enum netdev_flags off, +@@ -2712,7 +2712,13 @@ update_flags(struct netdev_linux *netdev, enum netdev_flags off, unsigned int old_flags, new_flags; int error = 0; diff --git a/net/openvswitch/patches/0003-lib-util.h-Disable-ovs_assert-when-build-with-NDEBUG.patch b/net/openvswitch/patches/0003-lib-util.h-Disable-ovs_assert-when-build-with-NDEBUG.patch deleted file mode 100644 index 2aade29ec..000000000 --- a/net/openvswitch/patches/0003-lib-util.h-Disable-ovs_assert-when-build-with-NDEBUG.patch +++ /dev/null @@ -1,36 +0,0 @@ -From 34b51e26555d05c00b2320f943a645added5dae4 Mon Sep 17 00:00:00 2001 -From: Helmut Schaa -Date: Mon, 9 Dec 2013 14:15:11 +0100 -Subject: [PATCH 5/6] lib/util.h: Disable ovs_assert when build with NDEBUG - -Reduces binary size. Use a static inline function instead of -a macro to not get "unused variable" warning everywhere. - -Signed-off-by: Helmut Schaa ---- - lib/util.h | 5 +++++ - 1 file changed, 5 insertions(+) - -diff --git a/lib/util.h b/lib/util.h -index 5c23962..9e5866d 100644 ---- a/lib/util.h -+++ b/lib/util.h -@@ -69,10 +69,15 @@ - * - Writes the failure message to the log. - * - * - Not affected by NDEBUG. */ -+#ifndef NDEBUG - #define ovs_assert(CONDITION) \ - if (!OVS_LIKELY(CONDITION)) { \ - ovs_assert_failure(SOURCE_LOCATOR, __func__, #CONDITION); \ - } -+#else -+static inline void ovs_assert(bool cond OVS_UNUSED) {} -+#endif -+ - void ovs_assert_failure(const char *, const char *, const char *) NO_RETURN; - - /* Casts 'pointer' to 'type' and issues a compiler warning if the cast changes --- -1.8.1.4 - diff --git a/net/openvswitch/patches/0004-datapath-Use-ccflags-y-instead-of-deprecated-EXTRA_C.patch b/net/openvswitch/patches/0004-datapath-Use-ccflags-y-instead-of-deprecated-EXTRA_C.patch deleted file mode 100644 index 95891a1a5..000000000 --- a/net/openvswitch/patches/0004-datapath-Use-ccflags-y-instead-of-deprecated-EXTRA_C.patch +++ /dev/null @@ -1,41 +0,0 @@ -From 36fd4f214f9ba74aaf0e5fb3e4ba271b946a1550 Mon Sep 17 00:00:00 2001 -From: Thomas Graf -Date: Wed, 26 Nov 2014 15:52:31 +0100 -Subject: [PATCH] datapath: Use ccflags-y instead of deprecated EXTRA_CFLAGS - -This allows users to pass in additional compiler flags through the -environment variable EXTRA_CFLAGS, e.g. - - make EXTRA_CFLAGS=-Wno-error=foo V=1 - -Reported-by: Alexandru Ardelean -Signed-off-by: Thomas Graf -Acked-by: Pravin B Shelar ---- - datapath/linux/Kbuild.in | 10 +++++----- - 1 file changed, 5 insertions(+), 5 deletions(-) - -diff --git a/datapath/linux/Kbuild.in b/datapath/linux/Kbuild.in -index 6f6f65f..cb98c11 100644 ---- a/datapath/linux/Kbuild.in -+++ b/datapath/linux/Kbuild.in -@@ -7,11 +7,11 @@ export VERSION = @VERSION@ - include $(srcdir)/../Modules.mk - include $(srcdir)/Modules.mk - --EXTRA_CFLAGS := -DVERSION=\"$(VERSION)\" --EXTRA_CFLAGS += -I$(srcdir)/.. --EXTRA_CFLAGS += -I$(builddir)/.. --EXTRA_CFLAGS += -g --EXTRA_CFLAGS += -include $(builddir)/kcompat.h -+ccflags-y := -DVERSION=\"$(VERSION)\" -+ccflags-y += -I$(srcdir)/.. -+ccflags-y += -I$(builddir)/.. -+ccflags-y += -g -+ccflags-y += -include $(builddir)/kcompat.h - - # These include directories have to go before -I$(KSRC)/include. - # NOSTDINC_FLAGS just happens to be a variable that goes in the --- -2.1.2 - From 87b26e5db194f4abeecb0f9ba4b1917cccea71d2 Mon Sep 17 00:00:00 2001 From: Emanuele Bovisio Date: Fri, 17 Apr 2015 18:13:13 +0200 Subject: [PATCH 252/681] openvswitch: upgrade to version 2.3.90, review #1 --- net/openvswitch/Makefile | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/net/openvswitch/Makefile b/net/openvswitch/Makefile index 7f9161a75..cbee9a097 100644 --- a/net/openvswitch/Makefile +++ b/net/openvswitch/Makefile @@ -11,7 +11,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=openvswitch -PKG_RELEASE:=2 +PKG_RELEASE:=1 PKG_VERSION:=2.3.90 PKG_RELEASE=$(PKG_SOURCE_VERSION) PKG_LICENSE:=Apache-2.0 @@ -24,6 +24,8 @@ PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) PKG_SOURCE_VERSION:=58be9c9fd732b5bdd3d4c2e9b8cc2313f570094d PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.gz +SUPPORTED_KERNELS:=LINUX_3_18||LINUX_4_0 + include $(INCLUDE_DIR)/package.mk include $(INCLUDE_DIR)/kernel.mk $(call include_mk, python-package.mk) @@ -50,8 +52,7 @@ endef define Package/openvswitch $(call Package/openvswitch/Default) TITLE:=Open vSwitch Userspace Package - DEPENDS:=+libpcap +libopenssl +librt +libatomic +kmod-openvswitch \ - @(LINUX_3_8||LINUX_3_10||LINUX_3_13||LINUX_3_14) + DEPENDS:=+libpcap +libopenssl +librt +libatomic +kmod-openvswitch @(SUPPORTED_KERNELS) endef define Package/openvswitch/description @@ -95,8 +96,7 @@ define KernelPackage/openvswitch SUBMENU:=Network Support TITLE:=Open vSwitch Kernel Package KCONFIG:=CONFIG_BRIDGE - DEPENDS:=+kmod-stp +kmod-ipv6 +kmod-gre +kmod-lib-crc32c +kmod-vxlan \ - @(LINUX_3_8||LINUX_3_10||LINUX_3_13||LINUX_3_14) + DEPENDS:=+kmod-stp +kmod-ipv6 +kmod-gre +kmod-lib-crc32c +kmod-vxlan @(SUPPORTED_KERNELS) FILES:= \ $(PKG_BUILD_DIR)/datapath/linux/openvswitch.$(LINUX_KMOD_SUFFIX) AUTOLOAD:=$(call AutoLoad,21,openvswitch) From 1665d4b4cdea6324d6f446f57b5b0db86852303f Mon Sep 17 00:00:00 2001 From: Nicolas Thill Date: Fri, 17 Apr 2015 23:23:56 +0200 Subject: [PATCH 253/681] ldns: import from old packages feed - add license info - add myself as maintainer Signed-off-by: Nicolas Thill --- libs/ldns/Makefile | 84 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 84 insertions(+) create mode 100644 libs/ldns/Makefile diff --git a/libs/ldns/Makefile b/libs/ldns/Makefile new file mode 100644 index 000000000..9a0b4e1f6 --- /dev/null +++ b/libs/ldns/Makefile @@ -0,0 +1,84 @@ +# +# Copyright (C) 2011-2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=ldns +PKG_VERSION:=1.6.17 +PKG_RELEASE:=1 + +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz +PKG_SOURCE_URL:=http://www.nlnetlabs.nl/downloads/ldns +PKG_MD5SUM:=a79423bcc4129e6d59b616b1cae11e5e + +PKG_LICENSE:=BSD-3-Clause +PKG_LICENSE_FILES:=LICENSE +PKG_MAINTAINER:=Nicolas Thill + +PKG_FIXUP:=autoreconf +PKG_INSTALL:=1 + +include $(INCLUDE_DIR)/package.mk + +define Package/libldns/Default + URL:=http://www.nlnetlabs.nl/projects/ldns/ + DEPENDS:=+libopenssl +endef + +define Package/libldns + $(call Package/libldns/Default) + SECTION:=libs + CATEGORY:=Libraries + TITLE:=A library to simplify DNS programming +endef + +define Package/libldns/description + The goal of ldns is to simplify DNS programming, it supports recent RFCs like + the DNSSEC documents, and allows developers to easily create software + conforming to current RFCs, and experimental software for current Internet + Drafts. +endef + +define Package/drill + $(call Package/libldns/Default) + SECTION:=net + CATEGORY:=Network + SUBMENU:=IP Addresses and Names + TITLE:=DNS(SEC) information tool + DEPENDS+= +libldns +endef + +define Package/drill/description + drill is a tool to designed to get all sorts of information out of the DNS. It + is specificly designed to be used with DNSSEC. +endef + +CONFIGURE_ARGS += \ + --disable-ecdsa \ + --disable-gost \ + --with-drill \ + --with-ssl="$(STAGING_DIR)/usr" + +define Build/InstallDev + $(INSTALL_DIR) $(1)/usr/include + $(CP) $(PKG_INSTALL_DIR)/usr/include/ldns $(1)/usr/include/ + $(INSTALL_DIR) $(1)/usr/lib + $(CP) $(PKG_INSTALL_DIR)/usr/lib/libldns.{a,so*} $(1)/usr/lib/ +endef + +define Package/libldns/install + $(INSTALL_DIR) $(1)/usr/lib + $(CP) $(PKG_INSTALL_DIR)/usr/lib/libldns.so.* $(1)/usr/lib/ +endef + +define Package/drill/install + $(INSTALL_DIR) $(1)/usr/bin + $(CP) $(PKG_INSTALL_DIR)/usr/bin/drill $(1)/usr/bin/ +endef + +$(eval $(call BuildPackage,libldns)) +$(eval $(call BuildPackage,drill)) From b9e87eeb7deb8b3890415b835c9c69764893c023 Mon Sep 17 00:00:00 2001 From: Nicolas Thill Date: Sat, 18 Apr 2015 01:14:14 +0200 Subject: [PATCH 254/681] xz: import from old packages feed - update to latest version (v5.2.1) - add license info - add myself as maintainer - put everything in a "Compression" submenu - reduce the number of packages (put symlinks with their matching target) Signed-off-by: Nicolas Thill --- utils/xz/Makefile | 112 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 112 insertions(+) create mode 100644 utils/xz/Makefile diff --git a/utils/xz/Makefile b/utils/xz/Makefile new file mode 100644 index 000000000..e08ef9513 --- /dev/null +++ b/utils/xz/Makefile @@ -0,0 +1,112 @@ +# +# Copyright (C) 2013-2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=xz +PKG_VERSION:=5.2.1 +PKG_RELEASE:=1 + +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 +PKG_SOURCE_URL:=http://tukaani.org/xz +PKG_MD5SUM:=d484910b26fec5aff99ee66350589e29 + +PKG_LICENSE:=Public-Domain LGPL-2.1+ GPL-2.0+ GPL-3.0+ +PKG_LICENSE_FILES:=COPYING +PKG_MAINTAINER:=Nicolas Thill + +PKG_BUILD_PARALLEL:=1 +PKG_INSTALL:=1 + +include $(INCLUDE_DIR)/package.mk + +define Package/xz/Default + SUBMENU:=Compression + SECTION:=utils + CATEGORY:=Utilities + URL:=http://tukaani.org/xz +endef + +define Package/xz-utils +$(call Package/xz/Default) + TITLE:=XZ Utils (meta) + MENU:=1 +endef + +define Package/liblzma +$(call Package/xz/Default) + SECTION:=libs + CATEGORY:=Libraries + DEPENDS:=+libpthread + TITLE:=liblzma library from XZ Utils +endef + +# $(1): package name & command in /usr/bin/ +# $(2): package dependencies +# $(3): symbolic links to $(1) in /usr/bin/ +define BuildSubPackage + + define Package/$(1) + $(call Package/xz/Default) + DEPENDS:=xz-utils $(2) + TITLE:=$(1) utility from XZ Utils + endef + + define Package/$(1)/description + Contains: $(1) $(3) + endef + + define Package/$(1)/install + $(INSTALL_DIR) $$(1)/usr/bin + $(CP) $(foreach f,$(1) $(3),$(PKG_INSTALL_DIR)/usr/bin/$(f)) $$(1)/usr/bin/ + endef + + $$(eval $$(call BuildPackage,$(1))) +endef + + +CONFIGURE_ARGS += \ + --enable-small \ + --enable-assume-ram=4 \ + --disable-assembler \ + --disable-werror \ + +# API uses "restrict" keyword introduced in C99 standard +TARGET_CFLAGS += \ + -std=c99 \ + +define Build/InstallDev + $(INSTALL_DIR) $(1)/usr/include + $(CP) \ + $(PKG_INSTALL_DIR)/usr/include/lzma{,.h} \ + $(1)/usr/include/ + $(INSTALL_DIR) $(1)/usr/lib + $(CP) \ + $(PKG_INSTALL_DIR)/usr/lib/liblzma.{a,so*} \ + $(1)/usr/lib/ + $(INSTALL_DIR) $(1)/usr/lib/pkgconfig + $(CP) \ + $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/liblzma.pc \ + $(1)/usr/lib/pkgconfig/ +endef + +define Package/liblzma/install + $(INSTALL_DIR) $(1)/usr/lib + $(CP) $(PKG_INSTALL_DIR)/usr/lib/liblzma.so.* $(1)/usr/lib/ +endef + + +$(eval $(call BuildPackage,xz-utils)) +$(eval $(call BuildPackage,liblzma)) +$(eval $(call BuildSubPackage,lzmadec, +liblzma,)) +$(eval $(call BuildSubPackage,lzmainfo, +liblzma,)) +$(eval $(call BuildSubPackage,xz, +liblzma, lzcat lzma unlzma unxz xzcat)) +$(eval $(call BuildSubPackage,xzdec, +liblzma,)) +$(eval $(call BuildSubPackage,xzdiff, +bash +xz, lzcmp lzdiff xzcmp)) +$(eval $(call BuildSubPackage,xzgrep, +bash +xz, lzegrep lzfgrep lzgrep xzegrep xzfgrep)) +$(eval $(call BuildSubPackage,xzless, +bash +xz, lzless)) +$(eval $(call BuildSubPackage,xzmore, +bash +xz, lzmore)) From 4067943658dac991695eec78df67cb2c21b741c4 Mon Sep 17 00:00:00 2001 From: Nicolas Thill Date: Sat, 18 Apr 2015 08:16:22 +0200 Subject: [PATCH 255/681] yaml: import libyaml from old packages feed - add license info - add myself as maintainer - put in a "Languages" submenu - install pkgconfig .pc dev file Signed-off-by: Nicolas Thill --- libs/yaml/Makefile | 51 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 libs/yaml/Makefile diff --git a/libs/yaml/Makefile b/libs/yaml/Makefile new file mode 100644 index 000000000..c2b818aa2 --- /dev/null +++ b/libs/yaml/Makefile @@ -0,0 +1,51 @@ +# +# Copyright (C) 2008-2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=yaml +PKG_VERSION:=0.1.6 +PKG_RELEASE:=1 + +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz +PKG_SOURCE_URL:=http://pyyaml.org/download/libyaml/ +PKG_MD5SUM:=5fe00cda18ca5daeb43762b80c38e06e + +PKG_LICENSE:=MIT +PKG_LICENSE_FILES:=COPYING +PKG_MAINTAINER:=Nicolas Thill + +PKG_FIXUP:=autoreconf +PKG_INSTALL:=1 + +include $(INCLUDE_DIR)/package.mk + +define Package/libyaml + SUBMENU:=Languages + SECTION:=libs + CATEGORY:=Libraries + TITLE:=Fast YAML 1.1 parser and emitter library + URL:=http://pyyaml.org/wiki/LibYAML +endef + +TARGET_CFLAGS += $(FPIC) + +define Build/InstallDev + $(INSTALL_DIR) $(1)/usr/include + $(CP) $(PKG_INSTALL_DIR)/usr/include/yaml.h $(1)/usr/include/ + $(INSTALL_DIR) $(1)/usr/lib + $(CP) $(PKG_INSTALL_DIR)/usr/lib/libyaml*.{a,so*} $(1)/usr/lib/ + $(INSTALL_DIR) $(1)/usr/lib/pkgconfig + $(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/yaml*.pc $(1)/usr/lib/pkgconfig/ +endef + +define Package/libyaml/install + $(INSTALL_DIR) $(1)/usr/lib + $(CP) $(PKG_INSTALL_DIR)/usr/lib/libyaml*.so* $(1)/usr/lib/ +endef + +$(eval $(call BuildPackage,libyaml)) From b85e5a3c3c36b66db514d5aa593f3e05f5286e18 Mon Sep 17 00:00:00 2001 From: Nicolas Thill Date: Sat, 18 Apr 2015 08:21:20 +0200 Subject: [PATCH 256/681] python-yaml: import pyyaml from old packages feed - add license info - add myself as maintainer Signed-off-by: Nicolas Thill --- lang/python-yaml/Makefile | 43 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 lang/python-yaml/Makefile diff --git a/lang/python-yaml/Makefile b/lang/python-yaml/Makefile new file mode 100644 index 000000000..3af2f0eeb --- /dev/null +++ b/lang/python-yaml/Makefile @@ -0,0 +1,43 @@ +# +# Copyright (C) 2008-2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=PyYAML +PKG_VERSION:=3.11 +PKG_RELEASE:=1 + +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz +PKG_SOURCE_URL:=http://pyyaml.org/download/pyyaml/ +PKG_MD5SUM:=f50e08ef0fe55178479d3a618efe21db + +PKG_LICENSE:=MIT +PKG_LICENSE_FILES:=COPYING +PKG_MAINTAINER:=Nicolas Thill + +PKG_BUILD_DEPENDS:=python + +include $(INCLUDE_DIR)/package.mk +$(call include_mk, python-package.mk) + +define Package/python-yaml + SUBMENU:=Python + SECTION:=lang + CATEGORY:=Languages + TITLE:=YAML parser and emitter for Python + URL:=http://pyyaml.org/wiki/PyYAML + DEPENDS:=+python +libyaml +endef + +define Build/Compile + $(call Build/Compile/PyMod,,\ + --with-libyaml install --prefix="$(PKG_INSTALL_DIR)/usr" \ + ) +endef + +$(eval $(call PyPackage,python-yaml)) +$(eval $(call BuildPackage,python-yaml)) From 1c0f9ee522f104b873d801c0ca5667ab5f9a663c Mon Sep 17 00:00:00 2001 From: Nicolas Thill Date: Sat, 18 Apr 2015 08:22:12 +0200 Subject: [PATCH 257/681] lksctp-tools: import sctp from old packages feed - update to latest version (v1.0.16) - add license info - add myself as maintainer - install dev files the proper way in Build/InstallDev - rename sctp package to libsctp - add an sctp-tools package and an sctp transitional meta package Signed-off-by: Nicolas Thill --- net/lksctp-tools/Makefile | 92 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 92 insertions(+) create mode 100644 net/lksctp-tools/Makefile diff --git a/net/lksctp-tools/Makefile b/net/lksctp-tools/Makefile new file mode 100644 index 000000000..0d652920b --- /dev/null +++ b/net/lksctp-tools/Makefile @@ -0,0 +1,92 @@ +# +# Copyright (C) 2010-2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=lksctp-tools +PKG_VERSION:=1.0.16 +PKG_RELEASE:=1 + +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz +PKG_SOURCE_URL:=@SF/lksctp +PKG_MD5SUM:=708bb0b5a6806ad6e8d13c55b067518e + +PKG_LICENSE:=GPL-2.0 +PKG_LICENSE_FILES:=COPYING +PKG_MAINTAINER:=Nicolas Thill + +PKG_FIXUP:=autoreconf +PKG_INSTALL:=1 + +include $(INCLUDE_DIR)/package.mk + +define Package/lksctp-tools/Default + SECTION:=net + CATEGORY:=Network + TITLE:=SCTP user-land + URL:=http://lksctp.sourceforge.net +endef + +define Package/libsctp +$(call Package/lksctp-tools/Default) + SUBMENU:=Networking + SECTION:=libs + CATEGORY:=Libraries + TITLE+= library + URL:=http://lksctp.sourceforge.net + DEPENDS:=+kmod-sctp +endef + +define Package/sctp +$(call Package/lksctp-tools/Default) + TITLE+= (meta) + URL:=http://lksctp.sourceforge.net + DEPENDS:=+libsctp +sctp-tools +endef + +define Package/sctp-tools +$(call Package/lksctp-tools/Default) + TITLE+= tools + URL:=http://lksctp.sourceforge.net + DEPENDS:=+libsctp +endef + +define Build/InstallDev + $(INSTALL_DIR) $(1)/usr/include + $(CP) \ + $(PKG_INSTALL_DIR)/usr/include/netinet \ + $(STAGING_DIR)/usr/include/ + $(INSTALL_DIR) $(1)/usr/lib + $(CP) \ + $(PKG_INSTALL_DIR)/usr/lib/libsctp.{a,so*} \ + $(1)/usr/lib/ +endef + +define Package/libsctp/install + $(INSTALL_DIR) $(1)/usr/lib + $(CP) \ + $(PKG_INSTALL_DIR)/usr/lib/libsctp.so.* \ + $(1)/usr/lib/ +endef + +define Package/sctp/install + : +endef + +define Package/sctp-tools/install + $(INSTALL_DIR) $(1)/usr/bin + $(CP) \ + $(PKG_INSTALL_DIR)/usr/bin/checksctp \ + $(1)/usr/bin/ + $(CP) \ + $(PKG_INSTALL_DIR)/usr/bin/sctp_{darn,status,test} \ + $(1)/usr/bin/ +endef + +$(eval $(call BuildPackage,libsctp)) +$(eval $(call BuildPackage,sctp)) +$(eval $(call BuildPackage,sctp-tools)) From 3dfc49558849606c3b948b4d3a240bf46d5cdb53 Mon Sep 17 00:00:00 2001 From: Luiz Angelo Daros de Luca Date: Sat, 18 Apr 2015 22:06:33 -0300 Subject: [PATCH 258/681] ruby: bump to 2.2.2 This is a small ruby release, mainly to fix CVE-2015-1855: Ruby OpenSSL Hostname Verification Signed-off-by: Luiz Angelo Daros de Luca --- lang/ruby/Makefile | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/lang/ruby/Makefile b/lang/ruby/Makefile index 97a32f27f..e9c1f3ae1 100644 --- a/lang/ruby/Makefile +++ b/lang/ruby/Makefile @@ -10,14 +10,14 @@ include $(TOPDIR)/rules.mk PKG_NAME:=ruby -PKG_VERSION:=2.2.1 +PKG_VERSION:=2.2.2 PKG_RELEASE:=1 PKG_LIBVER:=2.2 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 PKG_SOURCE_URL:=http://cache.ruby-lang.org/pub/ruby/$(PKG_LIBVER)/ -PKG_MD5SUM:=06973777736d8e6bdad8dcaa469a9da3 +PKG_MD5SUM:=af6eb4fa7247f1f7b2e19c8e6f3e3145 PKG_MAINTAINER:=Luiz Angelo Daros de Luca PKG_LICENSE:=BSD-2-Clause PKG_LICENSE_FILES:=COPYING @@ -804,6 +804,12 @@ HOST_CONFIGURE_ARGS += \ --disable-install-capi \ --with-static-linked-ext \ +# even not used, host build with restricted exts results in gems not being +# compiling for target (probably some cross compiling problem like checking +# host for selecting target features) +# --with-out-ext \ +# --with-ext=thread,stringio \ + CONFIGURE_ARGS += \ --enable-shared \ --enable-static \ From db2b613afef270b3b02ef2fcdc0e9217945af3f8 Mon Sep 17 00:00:00 2001 From: Sebastian Moeller Date: Sun, 19 Apr 2015 12:48:33 +0200 Subject: [PATCH 259/681] Remove dependeny on iptables-mod-filter from sqm-scripts As Hnyman noted in https://github.com/dtaht/ceropackages-3.10/issues/13 we carry a few unnecessary dependecies in sqm-scripts, so remove one of them (iptables-mod-filter) as we neither use it nor plan to use it. Signed-off-by: Sebastian Moeller --- net/sqm-scripts/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/net/sqm-scripts/Makefile b/net/sqm-scripts/Makefile index 79112227d..3fa5e365b 100644 --- a/net/sqm-scripts/Makefile +++ b/net/sqm-scripts/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=sqm-scripts PKG_VERSION:=8 -PKG_RELEASE:=2 +PKG_RELEASE:=3 PKG_LICENSE:=GPLv2 PKG_BUILD_DIR := $(BUILD_DIR)/$(PKG_NAME) @@ -20,7 +20,7 @@ define Package/sqm-scripts SECTION:=net CATEGORY:=Base system DEPENDS:=+tc +kmod-sched +kmod-ifb iptables +ip \ - +iptables-mod-filter +iptables-mod-ipopt +iptables-mod-conntrack-extra + +iptables-mod-ipopt +iptables-mod-conntrack-extra TITLE:=SQM Scripts (QoS) PKGARCH:=all MAINTAINER:=Toke Høiland-Jørgensen From af3b2635dfd14cc72353bc6b407e2dd2a84d5329 Mon Sep 17 00:00:00 2001 From: Michael Hanselmann Date: Sun, 19 Apr 2015 22:20:46 +0200 Subject: [PATCH 260/681] Update net/unbound to version 1.5.3 unbound 1.5.3 was released on March 10, 2015. Signed-off-by: Michael Hanselmann --- net/unbound/Makefile | 6 +++--- net/unbound/patches/001-conf.patch | 18 ++++++++++-------- 2 files changed, 13 insertions(+), 11 deletions(-) diff --git a/net/unbound/Makefile b/net/unbound/Makefile index a04aca633..bc54bb75f 100644 --- a/net/unbound/Makefile +++ b/net/unbound/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2010-2014 OpenWrt.org +# Copyright (C) 2010-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -8,7 +8,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=unbound -PKG_VERSION:=1.5.1 +PKG_VERSION:=1.5.3 PKG_RELEASE:=1 PKG_LICENSE:=BSD-3-Clause @@ -17,7 +17,7 @@ PKG_MAINTAINER:=Michael Hanselmann PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://www.unbound.net/downloads -PKG_MD5SUM:=ed4c46476dcfb8a507cc08b1ba12a8f1 +PKG_MD5SUM:=1e95fdcbaaf5dc87432d898006a5eb13 PKG_BUILD_DEPENDS:=libexpat PKG_BUILD_PARALLEL:=1 diff --git a/net/unbound/patches/001-conf.patch b/net/unbound/patches/001-conf.patch index 0d53615e2..a795532c0 100644 --- a/net/unbound/patches/001-conf.patch +++ b/net/unbound/patches/001-conf.patch @@ -1,3 +1,5 @@ +diff --git a/doc/example.conf.in b/doc/example.conf.in +index 60ed5c8..abd85f9 100644 --- a/doc/example.conf.in +++ b/doc/example.conf.in @@ -38,6 +38,8 @@ server: @@ -66,7 +68,7 @@ # the time to live (TTL) value lower bound, in seconds. Default 0. # If more than an hour could easily give trouble due to stale data. -@@ -143,9 +154,11 @@ server: +@@ -146,9 +157,11 @@ server: # the number of slabs must be a power of 2. # more slabs reduce lock contention, but fragment memory usage. # infra-cache-slabs: 4 @@ -78,7 +80,7 @@ # Enable IPv4, "yes" or "no". # do-ip4: yes -@@ -178,6 +191,8 @@ server: +@@ -181,6 +194,8 @@ server: # access-control: ::0/0 refuse # access-control: ::1 allow # access-control: ::ffff:127.0.0.1 allow @@ -87,7 +89,7 @@ # if given, a chroot(2) is done to the given directory. # i.e. you can chroot to the working directory, for example, -@@ -208,6 +223,7 @@ server: +@@ -211,6 +226,7 @@ server: # and the given username is assumed. Default is user "unbound". # If you give "" no privileges are dropped. # username: "@UNBOUND_USERNAME@" @@ -95,7 +97,7 @@ # the working directory. The relative files in this config are # relative to this directory. If you give "" the working directory -@@ -230,10 +246,12 @@ server: +@@ -233,10 +249,12 @@ server: # the pid file. Can be an absolute path outside of chroot/work dir. # pidfile: "@UNBOUND_PIDFILE@" @@ -108,7 +110,7 @@ # enable to not answer id.server and hostname.bind queries. # hide-identity: no -@@ -256,12 +274,15 @@ server: +@@ -259,12 +277,15 @@ server: # positive value: fetch that many targets opportunistically. # Enclose the list of numbers between quotes (""). # target-fetch-policy: "3 2 1 0 0" @@ -124,7 +126,7 @@ # Harden against out of zone rrsets, to avoid spoofing attempts. # harden-glue: yes -@@ -342,7 +363,7 @@ server: +@@ -345,7 +366,7 @@ server: # you start unbound (i.e. in the system boot scripts). And enable: # Please note usage of unbound-anchor root anchor is at your own risk # and under the terms of our LICENSE (see that file in the source). @@ -133,7 +135,7 @@ # File with DLV trusted keys. Same format as trust-anchor-file. # There can be only one DLV configured, it is trusted from root down. -@@ -428,15 +449,18 @@ server: +@@ -431,15 +452,18 @@ server: # the amount of memory to use for the key cache. # plain value in bytes or you can append k, m or G. default is "4Mb". # key-cache-size: 4m @@ -149,6 +151,6 @@ # plain value in bytes or you can append k, m or G. default is "1Mb". # neg-cache-size: 1m + neg-cache-size: 10k - + # By default, for a number of zones a small default 'nothing here' # reply is built-in. Query traffic is thus blocked. If you From af75aedca068ea423314ced2fafa5d9976855348 Mon Sep 17 00:00:00 2001 From: Jonathan Bennett Date: Sat, 18 Apr 2015 13:16:35 -0500 Subject: [PATCH 261/681] Update Nano to 2.4.1 signed-off-by: Jonathan Bennett --- utils/nano/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/utils/nano/Makefile b/utils/nano/Makefile index 6d000425d..e1600c03b 100644 --- a/utils/nano/Makefile +++ b/utils/nano/Makefile @@ -8,14 +8,14 @@ include $(TOPDIR)/rules.mk PKG_NAME:=nano -PKG_VERSION:=2.4.0 +PKG_VERSION:=2.4.1 PKG_RELEASE:=1 PKG_LICENSE:=GPL-3.0+ PKG_LICENSE_FILES:=COPYING PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://www.nano-editor.org/dist/v2.4 -PKG_MD5SUM:=e5c9c6424ee2303663ae4b99ecd4b493 +PKG_MD5SUM:=1c612b478f976abf8ef926480c7a3684 PKG_INSTALL:=1 PKG_BUILD_PARALLEL:=1 From d92f26bf5ef1417a430ec62537d4f068e0557a4a Mon Sep 17 00:00:00 2001 From: claymore Date: Mon, 20 Apr 2015 04:32:30 +0100 Subject: [PATCH 262/681] boost 1.58.0 Updated boost lib to version 1.58.0 - Added New Libraries: Endian and Sort Boost Release Notes: http://www.boost.org/users/history/version_1_58_0.html Signed-off-by: Carlos M. Ferreira carlosmf.pt@gmail.com --- libs/boost/Makefile | 13 ++++++--- libs/boost/patches/100-do-not-use-librt.patch | 28 ------------------- 2 files changed, 9 insertions(+), 32 deletions(-) delete mode 100644 libs/boost/patches/100-do-not-use-librt.patch diff --git a/libs/boost/Makefile b/libs/boost/Makefile index 56e294c61..e9c2364e5 100644 --- a/libs/boost/Makefile +++ b/libs/boost/Makefile @@ -16,14 +16,14 @@ include $(INCLUDE_DIR)/nls.mk include $(INCLUDE_DIR)/target.mk PKG_NAME:=boost -PKG_VERSION:=1_57_0 -PKG_RELEASE:=3 +PKG_VERSION:=1_58_0 +PKG_RELEASE:=4 PKG_SOURCE:=$(PKG_NAME)_$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=@SF/boost PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)_$(PKG_VERSION) HOST_BUILD_DIR:=$(BUILD_DIR_HOST)/$(PKG_NAME)_$(PKG_VERSION) -PKG_MD5SUM:=25f9a8ac28beeb5ab84aa98510305299 +PKG_MD5SUM:=5a5d5614d9a07672e1ab2a250b5defc5 PKG_LICENSE:=Boost Software License PKG_MAINTAINER:=Carlos M. Ferreira @@ -34,6 +34,7 @@ PKG_USE_MIPS16:=0 include $(INCLUDE_DIR)/package.mk include $(INCLUDE_DIR)/host-build.mk + define Package/boost/Default SECTION:=libs CATEGORY:=Libraries @@ -135,7 +136,7 @@ endef $(eval $(call DefineBoostLibrary,atomic,system,)) $(eval $(call DefineBoostLibrary,chrono,system,)) $(eval $(call DefineBoostLibrary,container,,)) -$(eval $(call DefineBoostLibrary,context,,)) +$(eval $(call DefineBoostLibrary,context,chrono system thread,)) $(eval $(call DefineBoostLibrary,coroutine,system chrono context thread,)) $(eval $(call DefineBoostLibrary,date_time,,)) #$(eval $(call DefineBoostLibrary,exception,,)) @@ -149,6 +150,10 @@ $(eval $(call DefineBoostLibrary,math,,)) #$(eval $(call DefineBoostLibrary,mpi,,)) $(eval $(call DefineBoostLibrary,program_options,,)) $(eval $(call DefineBoostLibrary,random,system,)) + +# We need a beter way to provide this package, information regarding the Python packages +# such as Python version and directories locations. +# Python 2.7 version is for now hard-coded. Python 3 is (until this date) broken in the trunk tree. $(eval $(call DefineBoostLibrary,python,,+PACKAGE_boost-python:python)) $(eval $(call DefineBoostLibrary,regex,,)) $(eval $(call DefineBoostLibrary,serialization,,)) diff --git a/libs/boost/patches/100-do-not-use-librt.patch b/libs/boost/patches/100-do-not-use-librt.patch deleted file mode 100644 index a7560c6f3..000000000 --- a/libs/boost/patches/100-do-not-use-librt.patch +++ /dev/null @@ -1,28 +0,0 @@ -Index: boost_1_57_0/tools/build/src/tools/gcc.jam -=================================================================== ---- boost_1_57_0.orig/tools/build/src/tools/gcc.jam -+++ boost_1_57_0/tools/build/src/tools/gcc.jam -@@ -1037,7 +1037,7 @@ rule setup-threading ( targets * : sourc - case *bsd : option = -pthread ; # There is no -lrt on BSD. - case sgi : # gcc on IRIX does not support multi-threading. - case darwin : # No threading options. -- case * : option = -pthread ; libs = rt ; -+ case * : # pass appropriate options via OpenWrt - } - - if $(option) -Index: boost_1_57_0/tools/build/src/tools/gcc.py -=================================================================== ---- boost_1_57_0.orig/tools/build/src/tools/gcc.py -+++ boost_1_57_0/tools/build/src/tools/gcc.py -@@ -700,8 +700,8 @@ elif bjam.variable('UNIX'): - # Darwin has no threading options, don't set anything here. - pass - else: -- flags('gcc', 'OPTIONS', ['multi'], ['-pthread']) -- flags('gcc', 'FINDLIBS-SA', [], ['rt']) -+ # pass appropriate options via OpenWrt -+ pass - - def cpu_flags(toolset, variable, architecture, instruction_set, values, default=None): - #FIXME: for some reason this fails. Probably out of date feature code From 8c33c9b0796cfb439e2f7848880d1b57a1465f50 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Gaul?= Date: Sun, 19 Apr 2015 23:00:49 +0200 Subject: [PATCH 263/681] icecast: update to 2.4.2 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit icecast 2.4.2 is a security release. Signed-off-by: André Gaul --- multimedia/icecast/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/multimedia/icecast/Makefile b/multimedia/icecast/Makefile index 796e9bb95..1b0766e7e 100644 --- a/multimedia/icecast/Makefile +++ b/multimedia/icecast/Makefile @@ -8,14 +8,14 @@ include $(TOPDIR)/rules.mk PKG_NAME:=icecast -PKG_VERSION:=2.4.1 +PKG_VERSION:=2.4.2 PKG_RELEASE:=1 PKG_LICENSE:=GPL-2.0 PKG_MAINTAINER:=André Gaul PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://downloads.xiph.org/releases/icecast/ -PKG_MD5SUM:=b1402712a79734d4720c8fe15fd9fb10 +PKG_MD5SUM:=55947c83d31dfcbbede58c9521c676f4 PKG_FIXUP:=autoreconf From de80156bb95ea79a8acae5fc94d87c182a2a2390 Mon Sep 17 00:00:00 2001 From: Vasilis Tsiligiannis Date: Mon, 20 Apr 2015 11:02:18 +0300 Subject: [PATCH 264/681] nsd: Bump to version 4.1.2 --- net/nsd/Makefile | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/net/nsd/Makefile b/net/nsd/Makefile index ba1c1993f..14b2144a4 100644 --- a/net/nsd/Makefile +++ b/net/nsd/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2014 OpenWrt.org +# Copyright (C) 2014-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=nsd -PKG_VERSION:=4.0.3 +PKG_VERSION:=4.1.2 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://www.nlnetlabs.nl/downloads/nsd -PKG_MD5SUM:=9331dd18478295206775433a0b23e490 +PKG_MD5SUM:=73014bab5514b9babaf6c9007a6b36d8 PKG_FIXUP:=autoreconf PKG_INSTALL:=1 From 00fe9a9704bb2cdda8d981c3895193f6946ab63f Mon Sep 17 00:00:00 2001 From: "W. Michael Petullo" Date: Mon, 20 Apr 2015 09:41:20 -0400 Subject: [PATCH 265/681] dmapd: update to 0.0.72 Signed-off-by: W. Michael Petullo --- net/dmapd/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/net/dmapd/Makefile b/net/dmapd/Makefile index e573523bb..d53c5576f 100644 --- a/net/dmapd/Makefile +++ b/net/dmapd/Makefile @@ -8,7 +8,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=dmapd -PKG_VERSION:=0.0.71 +PKG_VERSION:=0.0.72 PKG_RELEASE:=1 PKG_MAINTAINER:=W. Michael Petullo @@ -18,7 +18,7 @@ PKG_LICENSE_FILES:=COPYING PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://www.flyn.org/projects/dmapd -PKG_MD5SUM:=cee310509e39db782110267edac4fe9a +PKG_MD5SUM:=0fe290d1bf003296b1ed9dfcc0108d6f PKG_FIXUP:=autoreconf PKG_INSTALL:=2 From 8b1c88659a1d1e259f6e4ce0ca8ff7f1a49db18a Mon Sep 17 00:00:00 2001 From: Steven Barth Date: Mon, 20 Apr 2015 18:13:35 +0200 Subject: [PATCH 266/681] openvswitch: Fixup SUPPORTED_KERNELs Signed-off-By: Steven Barth --- net/openvswitch/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/net/openvswitch/Makefile b/net/openvswitch/Makefile index cbee9a097..70c253bed 100644 --- a/net/openvswitch/Makefile +++ b/net/openvswitch/Makefile @@ -52,7 +52,7 @@ endef define Package/openvswitch $(call Package/openvswitch/Default) TITLE:=Open vSwitch Userspace Package - DEPENDS:=+libpcap +libopenssl +librt +libatomic +kmod-openvswitch @(SUPPORTED_KERNELS) + DEPENDS:=+libpcap +libopenssl +librt +libatomic +kmod-openvswitch @($(SUPPORTED_KERNELS)) endef define Package/openvswitch/description @@ -96,7 +96,7 @@ define KernelPackage/openvswitch SUBMENU:=Network Support TITLE:=Open vSwitch Kernel Package KCONFIG:=CONFIG_BRIDGE - DEPENDS:=+kmod-stp +kmod-ipv6 +kmod-gre +kmod-lib-crc32c +kmod-vxlan @(SUPPORTED_KERNELS) + DEPENDS:=+kmod-stp +kmod-ipv6 +kmod-gre +kmod-lib-crc32c +kmod-vxlan @($(SUPPORTED_KERNELS)) FILES:= \ $(PKG_BUILD_DIR)/datapath/linux/openvswitch.$(LINUX_KMOD_SUFFIX) AUTOLOAD:=$(call AutoLoad,21,openvswitch) From 3828a7096d1dc8bf84f83902519cf0f1800c6c60 Mon Sep 17 00:00:00 2001 From: Steven Barth Date: Mon, 20 Apr 2015 18:15:55 +0200 Subject: [PATCH 267/681] openvswitch: fixup kernels for older versions Signed-off-by: Steven Barth --- net/openvswitch/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/net/openvswitch/Makefile b/net/openvswitch/Makefile index 70c253bed..eb37696da 100644 --- a/net/openvswitch/Makefile +++ b/net/openvswitch/Makefile @@ -24,7 +24,7 @@ PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) PKG_SOURCE_VERSION:=58be9c9fd732b5bdd3d4c2e9b8cc2313f570094d PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.gz -SUPPORTED_KERNELS:=LINUX_3_18||LINUX_4_0 +SUPPORTED_KERNELS:=LINUX_3_8||LINUX_3_10||LINUX_3_13||LINUX_3_14||LINUX_3_18||LINUX_4_0 include $(INCLUDE_DIR)/package.mk include $(INCLUDE_DIR)/kernel.mk From f98dbf5aab9c5599e1fd3c29123c6ad2ac8c37da Mon Sep 17 00:00:00 2001 From: Christian Schoenebeck Date: Mon, 20 Apr 2015 21:14:03 +0200 Subject: [PATCH 268/681] radicale: [NEW] Python-based CalDAV/CardDAV Server Inspired by OpenWrt Ticket System Ticket 9119 Python3 package currently marked as @BROKEN because no time for testing. Signed-off-by: Christian Schoenebeck --- net/radicale/Makefile | 138 +++++++++++ net/radicale/files/config.template | 30 +++ net/radicale/files/logging.template | 47 ++++ net/radicale/files/radicale.config | 192 +++++++++++++++ net/radicale/files/radicale.hotplug | 16 ++ net/radicale/files/radicale.init | 220 ++++++++++++++++++ net/radicale/files/radicale.rights | 49 ++++ net/radicale/files/radicale.users | 6 + ...-Run-as-user-group-radicale-radicale.patch | 30 +++ 9 files changed, 728 insertions(+) create mode 100644 net/radicale/Makefile create mode 100644 net/radicale/files/config.template create mode 100644 net/radicale/files/logging.template create mode 100644 net/radicale/files/radicale.config create mode 100644 net/radicale/files/radicale.hotplug create mode 100755 net/radicale/files/radicale.init create mode 100644 net/radicale/files/radicale.rights create mode 100644 net/radicale/files/radicale.users create mode 100644 net/radicale/patches/010-Run-as-user-group-radicale-radicale.patch diff --git a/net/radicale/Makefile b/net/radicale/Makefile new file mode 100644 index 000000000..329ab68f0 --- /dev/null +++ b/net/radicale/Makefile @@ -0,0 +1,138 @@ +# +# Copyright (C) 2008-2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=radicale +PKG_VERSION:=0.10 +PKG_RELEASE:=1 +PKG_MAINTAINER:=Christian Schoenebeck + +PKG_LICENSE:=GPL-3.0 +PKG_LICENSE_FILES:=COPYING + +PKG_SOURCE:=Radicale-$(PKG_VERSION).tar.gz +PKG_SOURCE_URL:=http://pypi.python.org/packages/source/R/Radicale/ +PKG_MD5SUM:=32655d8893962956ead0ad690cca6044 + +# needed for "r"adicale <-> "R"adicale +PKG_BUILD_DIR:=$(BUILD_DIR)/Radicale-$(PKG_VERSION) + +include $(INCLUDE_DIR)/package.mk + +# no default dependencies +PKG_DEFAULT_DEPENDS= + +define Package/$(PKG_NAME)/Default + SECTION:=net + CATEGORY:=Network + SUBMENU:=Web Servers/Proxies + URL:=http://radicale.org/ + PKGARCH:=all + USERID:=radicale=5232:radicale=5232 +endef +define Package/$(PKG_NAME)-py2 + $(call Package/$(PKG_NAME)/Default) + PYTHON_VERSION:=2.7 + TITLE:=Radicale CalDAV/CardDAV server (Python 2) + VARIANT:=python2 + DEPENDS:=+python-logging +python-openssl +python-xml +python-codecs +endef +define Package/$(PKG_NAME)-py3 + $(call Package/$(PKG_NAME)/Default) + PYTHON_VERSION:=3.4 + TITLE:=Radicale CalDAV/CardDAV server (Python 3) + VARIANT:=python3 + DEPENDS:=+python3-logging +python3-openssl +python3-xml +python3-codecs +python3-email @BROKEN +endef + +# shown in LuCI package description +define Package/$(PKG_NAME)-py2/description +Radicale CalDAV/CardDAV server (Python 2) - Homepage: http://radicale.org/ +endef +define Package/$(PKG_NAME)-py3/description +Radicale CalDAV/CardDAV server (Python 3) - Homepage: http://radicale.org/ +endef + +# shown in make menuconfig +define Package/$(PKG_NAME)-py2/config + help + The Radicale Project is a CalDAV (calendar) and CardDAV (contact) server. + It aims to be a light solution, easy to use, easy to install, easy to configure. + As a consequence, it requires few software dependances and is pre-configured to work out-of-the-box. + !!! Will install and use Python $(PYTHON_VERSION) !!! + . + Version : $(PKG_VERSION) + Homepage: http://radicale.org/ + . + $(PKG_MAINTAINER) +endef +Package/$(PKG_NAME)-py3/config = $(Package/$(PKG_NAME)-py2/config) + +define Package/$(PKG_NAME)-py2/conffiles +/etc/config/radicale +/etc/radicale/users +/etc/radicale/rights +endef +Package/$(PKG_NAME)-py3/conffiles = $(Package/$(PKG_NAME)-py2/conffiles) + +define Build/Configure +endef +define Build/Compile +endef + +define Package/$(PKG_NAME)-py2/preinst + #!/bin/sh + [ -n "$${IPKG_INSTROOT}" ] && exit 0 # if run within buildroot exit + + # stop service if PKG_UPGRADE + [ "$${PKG_UPGRADE}" = "1" ] && /etc/init.d/$(PKG_NAME) stop >/dev/null 2>&1 + + exit 0 # supress errors from stop command +endef +define Package/$(PKG_NAME)-py3/preinst +$(call Package/$(PKG_NAME)-py2/preinst) +endef + +define Package/$(PKG_NAME)-py2/install + $(INSTALL_DIR) $(1)/etc/init.d + $(INSTALL_BIN) ./files/radicale.init $(1)/etc/init.d/radicale + $(INSTALL_DIR) $(1)/etc/hotplug.d/iface + $(INSTALL_BIN) ./files/radicale.hotplug $(1)/etc/hotplug.d/iface/80-radicale + $(INSTALL_DIR) $(1)/etc/config + $(INSTALL_CONF) ./files/radicale.config $(1)/etc/config/radicale + + $(INSTALL_DIR) $(1)/etc/radicale/ssl + $(INSTALL_DATA) ./files/config.template $(1)/etc/radicale/ + $(INSTALL_DATA) ./files/logging.template $(1)/etc/radicale/ + $(INSTALL_DATA) ./files/radicale.users $(1)/etc/radicale/users + $(INSTALL_DATA) ./files/radicale.rights $(1)/etc/radicale/rights + + $(INSTALL_DIR) $(1)/usr/lib/python$(PYTHON_VERSION)/site-packages/radicale + $(CP) \ + $(PKG_BUILD_DIR)/radicale/* \ + $(1)/usr/lib/python$(PYTHON_VERSION)/site-packages/radicale + + $(INSTALL_DIR) $(1)/usr/bin + $(INSTALL_BIN) $(PKG_BUILD_DIR)/bin/radicale $(1)/usr/bin/ +endef +define Package/$(PKG_NAME)-py3/install + $(call Package/$(PKG_NAME)-py2/install, $(1)) +endef + +define Package/$(PKG_NAME)-py2/postinst + #!/bin/sh + # patch /usr/bin/radicale force run using python2 + /bin/sed -i 's/python/python2/' $${IPKG_INSTROOT}/usr/bin/radicale +endef +define Package/$(PKG_NAME)-py3/postinst + #!/bin/sh + # patch /usr/bin/radicale force run using python3 + /bin/sed -i 's/python/python3/' $${IPKG_INSTROOT}/usr/bin/radicale +endef + +$(eval $(call BuildPackage,$(PKG_NAME)-py2)) +$(eval $(call BuildPackage,$(PKG_NAME)-py3)) diff --git a/net/radicale/files/config.template b/net/radicale/files/config.template new file mode 100644 index 000000000..1b8fcf294 --- /dev/null +++ b/net/radicale/files/config.template @@ -0,0 +1,30 @@ +# -*- mode: conf -*- +# vim:ft=cfg + +### AUTO-GENERATED CONFIGURATION +### USED BY RADICALE +### DO NOT EDIT +### SEE /etc/config/radicale INSTEAD + +[server] +# daemon # handled by /etc/init.d/radicale +# pid # handled by /etc/init.d/radicale + +[encoding] + +[well-known] + +[auth] +# htpasswd_filename # hard-coded /etc/radicale/users + +[git] + +[rights] +# file # hard-coded /etc/radicale/rights + +[storage] + +[logging] +# config # hard-coded /var/etc/radicale/logging + +[headers] diff --git a/net/radicale/files/logging.template b/net/radicale/files/logging.template new file mode 100644 index 000000000..a730ca01a --- /dev/null +++ b/net/radicale/files/logging.template @@ -0,0 +1,47 @@ +# -*- mode: conf -*- +# vim:ft=cfg + +### AUTO-GENERATED CONFIGURATION +### USED BY RADICALE +### DO NOT EDIT +### SEE /etc/config/radicale INSTEAD + +[loggers] +keys = root + +[handlers] +keys = console,file,syslog + +[formatters] +keys = simple,full,syslog + +[logger_root] +level = DEBUG +handlers = console,file,syslog + +[handler_console] +class = StreamHandler +args = (sys.stdout,) +formatter = simple +# level = WARNING # set via /etc/config/radicale + +[handler_file] +class = handlers.RotatingFileHandler +formatter = full +# level = INFO # set via /etc/config/radicale +# args = ('[filename]','a',[maxbytes],[backupcount]) # set via /etc/config/radicale + +[handler_syslog] +class = handlers.SysLogHandler +args = ('/dev/log', handlers.SysLogHandler.LOG_DAEMON) +formatter = syslog +# level = WARNING # set via /etc/config/radicale + +[formatter_simple] +format = %(message)s + +[formatter_full] +format = %(asctime)s - %(levelname)s: %(message)s + +[formatter_syslog] +format = radicale [%(process)d]: %(message)s diff --git a/net/radicale/files/radicale.config b/net/radicale/files/radicale.config new file mode 100644 index 000000000..ea10bc9f4 --- /dev/null +++ b/net/radicale/files/radicale.config @@ -0,0 +1,192 @@ +# +# You find additional information on Radicale Homepage +# http://radicale.org +# +# OpenWrt's wiki needs to be setup/updated ;-) +# +# if setting additional options please remember that UCI does not support +# section names and option names with "-" (Dash) inside their name +# to use them anyway replace "-" with "_" (Underscore) +# Each Radicale's config [section] is setup as UCI config setting 'section' +# + +#################################################### +# Server options +# +config setting 'server' + + # hostname:port + # IPv4 syntax: address:port + # IPv6 syntax: [address]:port + # ATTENTION: + # only use ports > 1024 (non-privileged Ports) + # because this implementation is running as non-root user + # Default: 0.0.0.0:5232 +# list hosts '0.0.0.0:5232' +# list hosts 'localhost:5232' + + # SSL flag, enable HTTPS protocol + # Default: 0 (disabled) +# option ssl '1' + + # SSL Protocol used. See python's ssl module for available values + # Default: PROTOCOL_SSLv23 +# option protocol 'PROTOCOL_SSLv23' + + # Ciphers available. See python's ssl module for available ciphers +# option ciphers '' + + # SSL certificate path and file +# option certificate '/etc/radicale/ssl/server.crt' + + # SSL private key path and file +# option key '/etc/radicale/ssl/server.key' + + # Reverse DNS to resolve client address in logs + # Default: 0 (disabled) +# option dns_lookup '1' + + # Message displayed in the client when a password is needed +# option realm 'Radicale - Password Required' + + +#################################################### +# Encoding options +# +config setting 'encoding' + + # Encoding for responding requests +# option request 'utf-8' + + # Encoding for storing local collections +# option stock 'utf-8' + + +#################################################### +# Authentication options +# +config setting 'auth' + + # Authentication method + # Value: None | htpasswd | IMAP | LDAP | PAM | courier | http | remote_user | custom + # Default: None + # if setting 'htpasswd' the file /etc/radicale/users is used (hardcoded) +# option type 'htpasswd' + + # Htpasswd encryption method + # Value: plain | sha1 | ssha | crypt +# option htpasswd_encryption 'crypt' + + # for other authenication methods consult Radicale documentation + # and set options here + + +#################################################### +# Git default options +# +config setting 'git' + + # Git default options +# option committer 'Radicale ' + + +#################################################### +# Rights backend +# +config setting 'rights' + + # Value: None | authenticated | owner_only | owner_write | from_file | custom + # Default: None + # if setting 'from_file' the file /etc/radicale/rights is used (hardcoded) +# option type 'from_file' + + # Custom rights handler +# option custom_handler '' + + +#################################################### +# Storage backend +# ------- +# WARNING: ONLY "filesystem" IS DOCUMENTED AND TESTED, +# OTHER BACKENDS ARE NOT READY FOR PRODUCTION. +# ------- +# +config setting 'storage' + # Value: filesystem | multifilesystem | database | custom + option type 'filesystem' + option filesystem_folder '/srv/radicale' + + +#################################################### +# Additional HTTP headers +# +config setting 'headers' + # enable all if using CardDavMATE-, CalDavZAP- or InfCloud- WEBclient +# list Access_Control_Allow_Origin '*' +# list Access_Control_Allow_Methods 'GET' +# list Access_Control_Allow_Methods 'POST' +# list Access_Control_Allow_Methods 'OPTIONS' +# list Access_Control_Allow_Methods 'PROPFIND' +# list Access_Control_Allow_Methods 'PROPPATCH' +# list Access_Control_Allow_Methods 'REPORT' +# list Access_Control_Allow_Methods 'PUT' +# list Access_Control_Allow_Methods 'MOVE' +# list Access_Control_Allow_Methods 'DELETE' +# list Access_Control_Allow_Methods 'LOCK' +# list Access_Control_Allow_Methods 'UNLOCK' +# list Access_Control_Allow_Headers 'User-Agent' +# list Access_Control_Allow_Headers 'Authorization' +# list Access_Control_Allow_Headers 'Content-type' +# list Access_Control_Allow_Headers 'Depth' +# list Access_Control_Allow_Headers 'If-match' +# list Access_Control_Allow_Headers 'If-None-Match' +# list Access_Control_Allow_Headers 'Lock-Token' +# list Access_Control_Allow_Headers 'Timeout' +# list Access_Control_Allow_Headers 'Destination' +# list Access_Control_Allow_Headers 'Overwrite' +# list Access_Control_Allow_Headers 'X-client' +# list Access_Control_Allow_Headers 'X-Requested-With' +# list Access_Control_Expose_Headers 'Etag' + + +#################################################### +# Global logging options +# +config setting 'logging' + + # Set the default logging level to debug for all outputs (ignore output level settings) + # Default: 0 (disabled) +# option debug '1' + # Log all environment variables (including those set in the shell) when starting + # Default: 0 (disabled) +# option full_environment '1' + + +#################################################### +# Spezial logging options +# !!! not documented in Radicale documentation +# !!! special settings for this implementation +# +config logging 'logger' + + # Level: DEBUG | INFO | WARNING | ERROR | CRITICAL + # To nearly disable logging set level to critical + + # log level on console +# option console_level 'ERROR' + + # Here we use Rotating Logfiles in this implementation + # !!! if maxbytes and/or backupcount is set to 0 !!! + # !!! file rotation is disabled and logfile grows endless !!! + # log level +# option file_level 'INFO' + # directory where log files are written +# option file_path '/var/log/radicale' + # max size of each logfile (see warning above) +# option file_maxbytes '8196' + # number of backup files to create (see warning above) +# option file_backupcount '1' + + # log level for syslog logging +# option syslog_level 'WARNING' + diff --git a/net/radicale/files/radicale.hotplug b/net/radicale/files/radicale.hotplug new file mode 100644 index 000000000..634ad2efa --- /dev/null +++ b/net/radicale/files/radicale.hotplug @@ -0,0 +1,16 @@ +#!/bin/sh + +# only (re-)start on ifup +[ "$ACTION" = "ifup" ] || exit 0 + +_PID=$(ps | grep '[p]ython.*[r]adicale' 2>/dev/null | awk '{print \$1}') +kill -1 $_PID 2>/dev/null +if [ $? -eq 0 ]; then + # only restart if already running + logger -p user.info -t "radicale[$_PID]" \ + "Restart request due to '$ACTION' of interface '$INTERFACE'" + /etc/init.d/radicale restart +else + # only start if enabled + /etc/init.d/radicale enabled && /etc/init.d/radicale start +fi diff --git a/net/radicale/files/radicale.init b/net/radicale/files/radicale.init new file mode 100755 index 000000000..bb35a18a0 --- /dev/null +++ b/net/radicale/files/radicale.init @@ -0,0 +1,220 @@ +#!/bin/sh /etc/rc.common +# Copyright (C) 2006-2015 OpenWrt.org + +START=80 +STOP=10 + +CFGDIR=/var/etc/radicale +SYSCFG=$CFGDIR/config +LOGCFG=$CFGDIR/logging + +DATADIR="/srv/radicale" +LOGDIR="" + +PGREP="ps | grep '[p]ython.*[r]adicale' 2>/dev/null | awk '{print \$1}' " + +# we could start with empty configuration file using defaults +[ -f /etc/config/radicale ] || touch /etc/config/radicale + +_uci2radicale() { + local _SYSTMP="$SYSCFG.tmp" + local _LOGTMP="$LOGCFG.tmp" + local _LOPT # list option name + local _LVAL # list option value + local _STYPE # section type + local _SNAME # section name + local _console_level="ERROR" # logging console level + local _file_level="INFO" # logging file level + local _file_path="/var/log/radicale" # logging file path + local _file_maxbytes="8196" # logging file maxBytes + local _file_backupcount="1" # logging file backupCount + local _syslog_level="WARNING" # logging syslog level + + # write list values to config + _write_list() { + _write_value "$_LOPT" "$_LVAL" # there might be spaces in _LVAL + _LOPT="" + _LVAL="" + } + + _write_value() { + # $1 option + # $2 value + local __OPT=$1 + local __VAL=$2 + # section "server" ignore option "daemon" and "pid" + [ "$_SNAME" = "server" -a "$__OPT" = "daemon" ] && return 0 + [ "$_SNAME" = "server" -a "$__OPT" = "pid" ] && return 0 + # section "logging" ignore option "config" (logging config file) + [ "$_SNAME" = "logging" -a "$__OPT" = "config" ] && return 0 + # section "auth" ignore option "htpasswd_filename" (htpasswd file) + [ "$_SNAME" = "auth" -a "$__OPT" = "htpasswd_filename" ] && return 0 + # section "rights" ignore option "file" (reg-based rights file) + [ "$_SNAME" = "rights" -a "$__OPT" = "file" ] && return 0 + # section "headers" replace "_" with "-" in option (UCI problem) + [ "$_SNAME" = "headers" ] && __OPT=$(echo "$__OPT" | sed -e "s#_#-#g") + # save data driectory + [ "$_SNAME" = "storage" -a "$__OPT" = "filesystem_folder" ] && DATADIR="$__VAL" + # special handling for well-known, value needs single quotes + [ "$_SNAME" = "well-known" -a "${__VAL#*\%\(}" != "$__VAL" ] && __VAL="'$__VAL'" + # handling of log settings + if [ "$_STYPE" = "logging" -a "$_SNAME" = "logger" ]; then + eval "_$__OPT='$__VAL'" # set to environment for later use + else + # handle bool + [ "$__VAL" = "0" ] && __VAL="False" + [ "$__VAL" = "1" ] && __VAL="True" + # append data to the corresponding section + sed -i "/\[$_SNAME\]/a $__OPT = $__VAL" $_SYSTMP + fi + } + + # redefined callback for sections when calling config_load + config_cb() { + # $1 "Type" + # $2 "Name" + # write out last list option + [ -n "$_LOPT" ] && _write_list + # mark invalid + _STYPE="" + _SNAME="" + # check section type + [ "$1" = "setting" -o "$1" = "logging" ] && { + _STYPE="$1" + _SNAME="$2" + } + # translate section name + [ "$2" = "well_known" ] && _SNAME="well-known" + return 0 + } + + # redefined callback for lists when calling config_load + list_cb() { + # $1 name of variable + # $2 value + # invalid section type then ignore + [ -z "$_STYPE" -o -z "$_SNAME" ] && return 0 + # write out last list option if new list starts + [ -n "$_LOPT" -a "$_LOPT" != "$1" ] && _write_list + # new list option + if [ -z "$_LOPT" ]; then + _LOPT="$1" + _LVAL="$2" + else + _LVAL="$_LVAL, $2" + fi + return 0 + } + + # redefined callback for options when calling config_load + option_cb() { + # $1 name of variable + # $2 value + local __OPT="$1" + local __VAL="$2" + # invalid section type then ignore + [ -z "$_STYPE" -o -z "$_SNAME" ] && return 0 + # ignore list entrys will be handled by list_cb() + [ "${__OPT#*_ITEM}" != "$__OPT" ] && return 0 # ignore lists *_ITEM* + [ "${__OPT#*_LENGTH}" != "$__OPT" ] && return 0 # ignore lists *_LENGTH + # write out last list option and clear + [ -n "$_LOPT" ] && _write_list + # write to file + _write_value "$__OPT" "$__VAL" # there might be spaces in __VAL + return 0 + } + + # temporary config file + # radicale need read access + mkdir -m0755 -p $CFGDIR + + cp /etc/radicale/config.template $_SYSTMP + config_load radicale # calling above config_cb()/option_cb()/list_cb() and write into $_SYSTMP + sed -i "/\[logging\]/a config = /var/etc/radicale/logging" $_SYSTMP # hard-code logging config + sed -i "/\[auth\]/a htpasswd_filename = /etc/radicale/users" $_SYSTMP # hard-code htpasswd + sed -i "/\[rights\]/a file = /etc/radicale/rights" $_SYSTMP # hard-code regexp-based rights + + # temporary logging config file + cp /etc/radicale/logging.template $_LOGTMP + LOGDIR="$_file_path" + sed -i "/\[handler_console\]/a level = $_console_level" $_LOGTMP + sed -i "/\[handler_file\]/a level = $_file_level" $_LOGTMP + sed -i "/\[handler_file\]/a args = ('$_file_path/radicale','a',$_file_maxbytes,$_file_backupcount)" $_LOGTMP + sed -i "/\[handler_syslog\]/a level = $_syslog_level" $_LOGTMP + + # move tmp to final + mv -f $_SYSTMP $SYSCFG + mv -f $_LOGTMP $LOGCFG +} + +_set_permission() { + # config file permissions (read access for group) + chmod 644 $SYSCFG $LOGCFG + chgrp -R radicale $CFGDIR + # log directory (full access and owner) + [ -d $LOGDIR ] || mkdir -m0755 -p $LOGDIR + chown -R radicale:radicale $LOGDIR + # data directory does not exist + [ -d $DATADIR ] || { + logger -p user.error -t "radicale[----]" "Data directory '$DATADIR' does not exists. Startup failed !!!" + exit 1 + } + chgrp -R radicale $DATADIR +} + +boot() { + return 0 # will be started by "iface" hotplug events +} + +start() { + _running() { + sleep 2 # give radicale time to completely come up + local _PID=$(eval "$PGREP") + kill -1 $_PID 2>/dev/null + [ $? -eq 0 ] \ + && logger -p user.notice -t "radicale[$_PID]" "Service started successfully"\ + || logger -p user.warn -t "radicale[----]" "Service failed to start" + } + + # if already running do nothing + local _PID=$(eval "$PGREP") + kill -1 $_PID 2>/dev/null && return 0 + + _uci2radicale + _set_permission + + radicale --daemon --config=$SYSCFG + + _running & # check if running and syslog + + return 0 +} + +reload() { + # reload is also used by luci + local _PID=$(eval "$PGREP") + kill -1 $_PID 2>/dev/null + if [ $? -eq 0 ]; then + # only restart if already running + restart + else + # only start if enabled + enabled && start + fi + return 0 +} + +stop() { + local _PID=$(eval "$PGREP") + [ -z "$_PID" ] && return 0 # not running + kill -15 $_PID 2>/dev/null + sleep 1 # give time to shutdown + local _tmp=$(eval "$PGREP") + if [ -z "$_tmp" ]; then + logger -p user.notice -t "radicale[$_PID]" "Service shutdown successfully" + else + kill -9 $_tmp # Normally never come here + logger -p user.warn -t "radicale[----]" "Service shutdown FORCED" + fi + return 0 +} diff --git a/net/radicale/files/radicale.rights b/net/radicale/files/radicale.rights new file mode 100644 index 000000000..3de3955d3 --- /dev/null +++ b/net/radicale/files/radicale.rights @@ -0,0 +1,49 @@ +# +# Authentication login is matched against the "user" key, and collection's path is matched against the "collection" key. +# You can use Python's ConfigParser interpolation values %(login)s and %(path)s. +# You can also get groups from the user regex in the collection with {0}, {1}, etc. +# +# For example, for the "user" key, ".+" means "authenticated user" and ".*" means "anybody" (including anonymous users). +# +# Section names are only used for naming the rule. +# Leading or ending slashes are trimmed from collection's path. +# + +# This means all users starting with "admin" may read any collection +[admin] +user: ^admin.*$ +collection: .* +permission: r + +# This means all users may read and write any collection starting with public. +# We do so by just not testing against the user string. +[public] +user: .* +collection: ^public(/.+)?$ +permission: rw + +# A little more complex: give read access to users from a domain for all +# collections of all the users (ie. user@domain.tld can read domain/\*). +[domain-wide-access] +user: ^.+@(.+)\..+$ +collection: ^{0}/.+$ +permission: r + +# Allow authenticated user to read all collections +[allow-everyone-read] +user: .+ +collection: .* +permission: r + +# Give write access to owners +[owner-write] +user: .+ +collection: ^%(login)s(/.+)?$ +permission: rw + +# Allow CardDavMATE-, CalDavZAP- or InfCloud- WEBclient to work +# anonymous users have read access to "/" but no files or subdir +[infcloud] +user: .* +collection: / +permission: r diff --git a/net/radicale/files/radicale.users b/net/radicale/files/radicale.users new file mode 100644 index 000000000..772217674 --- /dev/null +++ b/net/radicale/files/radicale.users @@ -0,0 +1,6 @@ +# +# Sample File +# + +user1:password1 +user2:password2 \ No newline at end of file diff --git a/net/radicale/patches/010-Run-as-user-group-radicale-radicale.patch b/net/radicale/patches/010-Run-as-user-group-radicale-radicale.patch new file mode 100644 index 000000000..e1f1c21eb --- /dev/null +++ b/net/radicale/patches/010-Run-as-user-group-radicale-radicale.patch @@ -0,0 +1,30 @@ +Subject: [PATCH] Run as user radicale and group radicale + +Patch to run Radicale service as radicale:radicale non root user + +Signed-off-by: Christian Schoenebeck +--- + bin/radicale | 7 +++++++ + 1 file changed, 7 insertions(+) + +diff --git a/bin/radicale b/bin/radicale +index 619aca5..7466020 100755 +--- a/bin/radicale ++++ b/bin/radicale +@@ -26,6 +26,13 @@ Launch the server according to configuration and command-line options. + + """ + ++# inserted to run as user radicale ++import pwd, grp, os ++uid = pwd.getpwnam('radicale').pw_uid ++gid = grp.getgrnam('radicale').gr_gid ++os.setegid(gid) ++os.seteuid(uid) ++ + import radicale.__main__ + + +-- +2.1.0 + From 82ce4b745ca083288fd04cabc8104caa758f4d46 Mon Sep 17 00:00:00 2001 From: Nicolas Thill Date: Mon, 20 Apr 2015 22:45:40 +0200 Subject: [PATCH 269/681] bzip2: move packages in a "Compression" submenu Signed-off-by: Nicolas Thill --- utils/bzip2/Makefile | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/utils/bzip2/Makefile b/utils/bzip2/Makefile index c633344cf..bf5bcf822 100644 --- a/utils/bzip2/Makefile +++ b/utils/bzip2/Makefile @@ -21,12 +21,17 @@ PKG_LICENSE_FILES:=LICENSE include $(INCLUDE_DIR)/package.mk +define Package/bzip2/Default + SUBMENU:=Compression + URL:=http://www.bzip.org/ +endef + define Package/libbz2 +$(call Package/bzip2/Default) SECTION:=libs CATEGORY:=Libraries DEPENDS:= TITLE:=bzip2 library. - URL:=http://www.bzip.org/ endef define Package/libbz2/description @@ -35,11 +40,11 @@ define Package/libbz2/description endef define Package/bzip2 +$(call Package/bzip2/Default) SECTION:=utils CATEGORY:=Utilities DEPENDS:=+libbz2 TITLE:=bzip2 is a compression utility. - URL:=http://www.bzip.org/ endef define Package/bzip2/description From 3018b32bbe70ac1f2f2a2300c63a1fdd1c380aeb Mon Sep 17 00:00:00 2001 From: Nikos Mavrogiannopoulos Date: Mon, 20 Apr 2015 22:55:37 +0200 Subject: [PATCH 270/681] gnutls: updated to 3.4.0 Signed-off-by: Nikos Mavrogiannopoulos --- libs/gnutls/Makefile | 13 ++- libs/gnutls/patches/001-ai-idn-remove.patch | 15 ---- .../patches/001-libopts-detection.patch | 84 +++++++++++++++++++ 3 files changed, 90 insertions(+), 22 deletions(-) delete mode 100644 libs/gnutls/patches/001-ai-idn-remove.patch create mode 100644 libs/gnutls/patches/001-libopts-detection.patch diff --git a/libs/gnutls/Makefile b/libs/gnutls/Makefile index 965f08f1a..8176817d6 100644 --- a/libs/gnutls/Makefile +++ b/libs/gnutls/Makefile @@ -8,13 +8,14 @@ include $(TOPDIR)/rules.mk PKG_NAME:=gnutls -PKG_VERSION:=3.3.14 +PKG_VERSION:=3.4.0 PKG_RELEASE:=1 PKG_USE_MIPS16:=0 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz -PKG_SOURCE_URL:=ftp://ftp.gnutls.org/gcrypt/gnutls/v3.3 -PKG_MD5SUM:=7f4465f8c564cf9cb8f5cb38b909f7ca +PKG_SOURCE_URL:=ftp://ftp.gnutls.org/gcrypt/gnutls/v3.4 +PKG_MD5SUM:=aa015c2666b031044edfb01b01980d84 +PKG_FIXUP:=autoreconf PKG_MAINTAINER:=Nikos Mavrogiannopoulos PKG_INSTALL:=1 @@ -104,6 +105,7 @@ define Package/libgnutls-openssl $(call Package/gnutls/Default) TITLE+= (OpenSSL compat library) DEPENDS+= +libgnutls + CONFIGURE_ARGS+= --enable-openssl-compatibility endef define Package/libgnutls-openssl/description @@ -122,7 +124,6 @@ CONFIGURE_ARGS+= \ --enable-local-libopts \ --disable-doc \ --disable-tests \ - --disable-rsa-export \ --with-default-trust-store-dir=/etc/ssl/certs/ \ --disable-crywrap \ --with-librt-prefix="$(STAGING_DIR)/" @@ -182,14 +183,12 @@ define Build/InstallDev $(CP) \ $(PKG_INSTALL_DIR)/usr/include/gnutls \ $(1)/usr/include/ - $(CP) \ - $(PKG_INSTALL_DIR)/usr/lib/libgnutls{,-openssl}.{a,so*} \ - $(1)/usr/lib/ $(CP) \ $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/gnutls.pc \ $(1)/usr/lib/pkgconfig/ endef + define Package/certtool/conffiles /etc/gnutls/certtool.cfg endef diff --git a/libs/gnutls/patches/001-ai-idn-remove.patch b/libs/gnutls/patches/001-ai-idn-remove.patch deleted file mode 100644 index 9acf756af..000000000 --- a/libs/gnutls/patches/001-ai-idn-remove.patch +++ /dev/null @@ -1,15 +0,0 @@ -diff --git a/src/socket.c b/src/socket.c -index 82c6252..e2feda9 100644 ---- a/src/socket.c -+++ b/src/socket.c -@@ -241,10 +241,6 @@ socket_open(socket_st * hd, const char *hostname, const char *service, - /* get server name */ - memset(&hints, 0, sizeof(hints)); - --#ifdef AI_IDN -- hints.ai_flags = AI_IDN|AI_IDN_ALLOW_UNASSIGNED; --#endif -- - hints.ai_socktype = udp ? SOCK_DGRAM : SOCK_STREAM; - if ((err = getaddrinfo(hostname, service, &hints, &res))) { - fprintf(stderr, "Cannot resolve %s:%s: %s\n", hostname, diff --git a/libs/gnutls/patches/001-libopts-detection.patch b/libs/gnutls/patches/001-libopts-detection.patch new file mode 100644 index 000000000..eb69f0052 --- /dev/null +++ b/libs/gnutls/patches/001-libopts-detection.patch @@ -0,0 +1,84 @@ +diff --git a/configure.ac b/configure.ac +index 7c454cd..185ebb6 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -64,7 +64,7 @@ if test "$enable_tools" != "no" || test "$enable_doc" != "no"; then + *** + *** autogen not found. Will not link against libopts. + *** ]]) +- enable_local_libopts=yes ++ included_libopts=yes + fi + fi + +@@ -523,7 +523,7 @@ fi + + AM_CONDITIONAL(ENABLE_TROUSERS, test "$with_tpm" != "no") + +-enable_local_libopts=no ++included_libopts=no + if test "$enable_tools" != "no" || test "$enable_doc" != "no"; then + LIBOPTS_CHECK([src/libopts]) + if test "$NEED_LIBOPTS_DIR" = "true";then +@@ -540,15 +540,17 @@ if test "$enable_tools" != "no" || test "$enable_doc" != "no"; then + if test -z "$missing_baks"; then + AC_SUBST([AUTOGEN], [/bin/true]) + fi +- enable_local_libopts=yes ++ included_libopts=yes + fi + else + # Need to ensure the relevant conditionals get set + gl_STDNORETURN_H + AM_CONDITIONAL([INSTALL_LIBOPTS],[false]) + AM_CONDITIONAL([NEED_LIBOPTS], [false]) ++ included_libopts=yes + fi +-AM_CONDITIONAL(NEED_LIBOPTS, test "$enable_local_libopts" = "yes") ++ ++AM_CONDITIONAL(NEED_LIBOPTS, test "$included_libopts" = "yes") + + AC_CHECK_TYPE(ssize_t, + [ +@@ -896,7 +898,7 @@ AC_MSG_NOTICE([summary of build options: + Compiler: ${CC} + CFlags: ${CFLAGS} + Library types: Shared=${enable_shared}, Static=${enable_static} +- Local libopts: ${enable_local_libopts} ++ Local libopts: ${included_libopts} + Local libtasn1: ${included_libtasn1} + Use nettle-mini: ${mini_nettle} + ]) +diff --git a/src/Makefile.am b/src/Makefile.am +index 4105ab6..b907249 100644 +--- a/src/Makefile.am ++++ b/src/Makefile.am +@@ -30,13 +30,6 @@ if ENABLE_CRYWRAP + SUBDIRS += crywrap + endif + +-if NEED_LIBOPTS +-LIBOPTS = libopts/libopts.la +-SUBDIRS += libopts +-else +-LIBOPTS = $(LIBOPTS_LDADD) +-endif +- + EXTRA_DIST = args-std.def + + AM_CFLAGS = $(WARN_CFLAGS) $(WERROR_CFLAGS) +@@ -49,6 +42,14 @@ AM_CPPFLAGS = \ + -I$(srcdir)/../extra/includes \ + $(LIBOPTS_CFLAGS) + ++if NEED_LIBOPTS ++LIBOPTS = libopts/libopts.la ++SUBDIRS += libopts ++AM_CPPFLAGS += -I$(srcdir)/libopts ++else ++LIBOPTS = $(LIBOPTS_LDADD) ++endif ++ + bin_PROGRAMS = psktool gnutls-cli-debug certtool + if ENABLE_SRP + bin_PROGRAMS += srptool From 022fb434cff9c271e984cf72fcddd41a82ba7a09 Mon Sep 17 00:00:00 2001 From: Alexandru Ardelean Date: Tue, 21 Apr 2015 10:15:44 +0300 Subject: [PATCH 271/681] python: replace with libncursesw with libncurses Signed-off-by: Alexandru Ardelean --- lang/python/files/python-package-ncurses.mk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lang/python/files/python-package-ncurses.mk b/lang/python/files/python-package-ncurses.mk index 04751ef83..bab941559 100644 --- a/lang/python/files/python-package-ncurses.mk +++ b/lang/python/files/python-package-ncurses.mk @@ -8,7 +8,7 @@ define Package/python-ncurses $(call Package/python/Default) TITLE:=Python $(PYTHON_VERSION) ncurses module - DEPENDS:=+python-light +libncursesw + DEPENDS:=+python-light +libncurses endef $(eval $(call PyBasePackage,python-ncurses, \ From 1dc93065588c043d74648266fed46b39085549fb Mon Sep 17 00:00:00 2001 From: Alexandru Ardelean Date: Tue, 21 Apr 2015 10:19:29 +0300 Subject: [PATCH 272/681] python: do not prefer ncursesw over ncurses Signed-off-by: Alexandru Ardelean --- .../patches/011-do-not-prefer-ncursesw.patch | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100644 lang/python/patches/011-do-not-prefer-ncursesw.patch diff --git a/lang/python/patches/011-do-not-prefer-ncursesw.patch b/lang/python/patches/011-do-not-prefer-ncursesw.patch new file mode 100644 index 000000000..c5f323c43 --- /dev/null +++ b/lang/python/patches/011-do-not-prefer-ncursesw.patch @@ -0,0 +1,15 @@ +diff --git a/setup.py b/setup.py +index 7868b7b..86b0119 100644 +--- a/setup.py ++++ b/setup.py +@@ -725,8 +725,8 @@ class PyBuildExt(build_ext): + # use the same library for the readline and curses modules. + if 'curses' in readline_termcap_library: + curses_library = readline_termcap_library +- elif self.compiler.find_library_file(lib_dirs, 'ncursesw'): +- curses_library = 'ncursesw' ++ #elif self.compiler.find_library_file(lib_dirs, 'ncursesw'): ++ # curses_library = 'ncursesw' + elif self.compiler.find_library_file(lib_dirs, 'ncurses'): + curses_library = 'ncurses' + elif self.compiler.find_library_file(lib_dirs, 'curses'): From 6e042a2b22f6d1efe7cba71565a2ced6a311fdeb Mon Sep 17 00:00:00 2001 From: Alexandru Ardelean Date: Tue, 21 Apr 2015 10:20:26 +0300 Subject: [PATCH 273/681] python3: replace with libncursesw with libncurses Signed-off-by: Alexandru Ardelean --- lang/python3/files/python3-package-ncurses.mk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lang/python3/files/python3-package-ncurses.mk b/lang/python3/files/python3-package-ncurses.mk index 74bedfe2f..7e703b3dd 100644 --- a/lang/python3/files/python3-package-ncurses.mk +++ b/lang/python3/files/python3-package-ncurses.mk @@ -8,7 +8,7 @@ define Package/python3-ncurses $(call Package/python3/Default) TITLE:=Python $(PYTHON3_VERSION) ncurses module - DEPENDS:=+python3-light +libncursesw + DEPENDS:=+python3-light +libncurses endef $(eval $(call Py3BasePackage,python3-ncurses, \ From 9fc15af80aaaa6f05c16de5b9c0a22ae81cafeec Mon Sep 17 00:00:00 2001 From: Alexandru Ardelean Date: Tue, 21 Apr 2015 10:22:27 +0300 Subject: [PATCH 274/681] python3: do not prefer ncursesw over ncurses Signed-off-by: Alexandru Ardelean --- .../patches/011-do-not-prefer-ncursesw.patch | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100644 lang/python3/patches/011-do-not-prefer-ncursesw.patch diff --git a/lang/python3/patches/011-do-not-prefer-ncursesw.patch b/lang/python3/patches/011-do-not-prefer-ncursesw.patch new file mode 100644 index 000000000..c02322534 --- /dev/null +++ b/lang/python3/patches/011-do-not-prefer-ncursesw.patch @@ -0,0 +1,15 @@ +diff --git a/setup.py b/setup.py +index 2779658..b6d3d61 100644 +--- a/setup.py ++++ b/setup.py +@@ -693,8 +693,8 @@ class PyBuildExt(build_ext): + # use the same library for the readline and curses modules. + if 'curses' in readline_termcap_library: + curses_library = readline_termcap_library +- elif self.compiler.find_library_file(lib_dirs, 'ncursesw'): +- curses_library = 'ncursesw' ++ #elif self.compiler.find_library_file(lib_dirs, 'ncursesw'): ++ # curses_library = 'ncursesw' + elif self.compiler.find_library_file(lib_dirs, 'ncurses'): + curses_library = 'ncurses' + elif self.compiler.find_library_file(lib_dirs, 'curses'): From e76eacc6d9f488916955c71c9a2da802f236859f Mon Sep 17 00:00:00 2001 From: Nikos Mavrogiannopoulos Date: Tue, 21 Apr 2015 17:44:58 +0200 Subject: [PATCH 275/681] gnutls: enable openssl compatibility mode by default Signed-off-by: Nikos Mavrogiannopoulos --- libs/gnutls/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libs/gnutls/Makefile b/libs/gnutls/Makefile index 8176817d6..070ea719b 100644 --- a/libs/gnutls/Makefile +++ b/libs/gnutls/Makefile @@ -105,7 +105,6 @@ define Package/libgnutls-openssl $(call Package/gnutls/Default) TITLE+= (OpenSSL compat library) DEPENDS+= +libgnutls - CONFIGURE_ARGS+= --enable-openssl-compatibility endef define Package/libgnutls-openssl/description @@ -124,6 +123,7 @@ CONFIGURE_ARGS+= \ --enable-local-libopts \ --disable-doc \ --disable-tests \ + --enable-openssl-compatibility \ --with-default-trust-store-dir=/etc/ssl/certs/ \ --disable-crywrap \ --with-librt-prefix="$(STAGING_DIR)/" From 407c821e31119f0851fb343437ecb78da1808f22 Mon Sep 17 00:00:00 2001 From: Nikos Mavrogiannopoulos Date: Tue, 21 Apr 2015 19:31:06 +0200 Subject: [PATCH 276/681] gnutls: install libgnutls.so Resolves #1162 Signed-off-by: Nikos Mavrogiannopoulos --- libs/gnutls/Makefile | 3 +++ 1 file changed, 3 insertions(+) diff --git a/libs/gnutls/Makefile b/libs/gnutls/Makefile index 070ea719b..6d5c3524a 100644 --- a/libs/gnutls/Makefile +++ b/libs/gnutls/Makefile @@ -180,6 +180,9 @@ TARGET_CFLAGS += $(FPIC) define Build/InstallDev $(INSTALL_DIR) $(1)/usr/include $(1)/usr/lib/pkgconfig + $(CP) \ + $(PKG_INSTALL_DIR)/usr/lib/libgnutls.so* \ + $(1)/usr/lib/ $(CP) \ $(PKG_INSTALL_DIR)/usr/include/gnutls \ $(1)/usr/include/ From 274b985123765157f1964c6409f2d2f27bb1ba9b Mon Sep 17 00:00:00 2001 From: Alex Samorukov Date: Tue, 21 Apr 2015 21:50:11 +0200 Subject: [PATCH 277/681] LXC: Update to 1.1.2 and remove patch merged by upstream Signed-off-by: Alex Samorukov --- utils/lxc/Makefile | 4 +- utils/lxc/patches/300-lxc-destroy.patch | 113 ------------------------ 2 files changed, 2 insertions(+), 115 deletions(-) delete mode 100644 utils/lxc/patches/300-lxc-destroy.patch diff --git a/utils/lxc/Makefile b/utils/lxc/Makefile index 3b2d1e435..214e83b07 100644 --- a/utils/lxc/Makefile +++ b/utils/lxc/Makefile @@ -8,7 +8,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=lxc -PKG_VERSION:=1.1.1 +PKG_VERSION:=1.1.2 PKG_RELEASE:=1 PKG_LICENSE:=LGPL-2.1+ BSD-2-Clause GPL-2.0 @@ -16,7 +16,7 @@ PKG_MAINTAINER:=Luka Perkov PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://linuxcontainers.org/downloads/lxc/ -PKG_MD5SUM:=d80cb08f0edf36f0887e32c96aec8c13 +PKG_MD5SUM:=3ebadacf5fe8bfe689fd7a09812b682c PKG_BUILD_DEPENDS:=lua PKG_BUILD_PARALLEL:=1 diff --git a/utils/lxc/patches/300-lxc-destroy.patch b/utils/lxc/patches/300-lxc-destroy.patch deleted file mode 100644 index a76e27a6f..000000000 --- a/utils/lxc/patches/300-lxc-destroy.patch +++ /dev/null @@ -1,113 +0,0 @@ -One of the 'features' of overlayfs is that depending on whether a file -is on the upper or lower dir you get back a different device from stat. -That breaks our lxc_rmdir_onedev. - -So at lxc_rmdir_ondev check the device of the directory being deleted. -If it is overlayfs, then skip the device check. - -Note this is unrelated to overlayfs snapshots - in those cases when you -delete a container, /var/lib/lxc/$container/ does not actually have an -overlayfs under it. Rather, to reproduce this you would - -sudo mkdir /opt/{lower,upper,workdir} -sudo mount -t overlayfs -o lower=/opt/lower,upper=/opt/upper,workdir=/opt/workdir \ - lxc /var/lib/lxc -sudo lxc-create -t download -n c1 -- -d ubuntu -r trusty -a amd64 -sudo lxc-destroy -n c1 - -Signed-off-by: Serge Hallyn ---- - src/lxc/utils.c | 39 ++++++++++++++++++++++++++++++++------- - 1 file changed, 32 insertions(+), 7 deletions(-) - ---- a/src/lxc/utils.c -+++ b/src/lxc/utils.c -@@ -29,6 +29,7 @@ - #include - #include - #include -+#include - #include - #include - #include -@@ -68,8 +69,8 @@ - - lxc_log_define(lxc_utils, lxc); - --static int _recursive_rmdir_onedev(char *dirname, dev_t pdev, -- const char *exclude, int level) -+static int _recursive_rmdir(char *dirname, dev_t pdev, -+ const char *exclude, int level, bool onedev) - { - struct dirent dirent, *direntp; - DIR *dir; -@@ -106,7 +107,7 @@ static int _recursive_rmdir_onedev(char - if (ret < 0) { - switch(errno) { - case ENOTEMPTY: -- INFO("Not deleting snapshots"); -+ INFO("Not deleting snapshot %s", pathname); - hadexclude = true; - break; - case ENOTDIR: -@@ -129,14 +130,14 @@ static int _recursive_rmdir_onedev(char - failed=1; - continue; - } -- if (mystat.st_dev != pdev) -+ if (onedev && mystat.st_dev != pdev) - continue; - if (S_ISDIR(mystat.st_mode)) { -- if (_recursive_rmdir_onedev(pathname, pdev, exclude, level+1) < 0) -+ if (_recursive_rmdir(pathname, pdev, exclude, level+1, onedev) < 0) - failed=1; - } else { - if (unlink(pathname) < 0) { -- ERROR("%s: failed to delete %s", __func__, pathname); -+ SYSERROR("%s: failed to delete %s", __func__, pathname); - failed=1; - } - } -@@ -158,17 +159,41 @@ static int _recursive_rmdir_onedev(char - return failed ? -1 : 0; - } - -+/* we have two different magic values for overlayfs, yay */ -+#define OVERLAYFS_SUPER_MAGIC 0x794c764f -+#define OVERLAY_SUPER_MAGIC 0x794c7630 -+/* -+ * In overlayfs, st_dev is unreliable. so on overlayfs we don't do -+ * the lxc_rmdir_onedev() -+ */ -+static bool is_native_overlayfs(const char *path) -+{ -+ struct statfs sb; -+ -+ if (statfs(path, &sb) < 0) -+ return false; -+ if (sb.f_type == OVERLAYFS_SUPER_MAGIC || -+ sb.f_type == OVERLAY_SUPER_MAGIC) -+ return true; -+ return false; -+} -+ - /* returns 0 on success, -1 if there were any failures */ - extern int lxc_rmdir_onedev(char *path, const char *exclude) - { - struct stat mystat; -+ bool onedev = true; -+ -+ if (is_native_overlayfs(path)) { -+ onedev = false; -+ } - - if (lstat(path, &mystat) < 0) { - ERROR("%s: failed to stat %s", __func__, path); - return -1; - } - -- return _recursive_rmdir_onedev(path, mystat.st_dev, exclude, 0); -+ return _recursive_rmdir(path, mystat.st_dev, exclude, 0, onedev); - } - - static int mount_fs(const char *source, const char *target, const char *type) From cb28f6e4591864ca68fb4c37044e0dae6d1e3b03 Mon Sep 17 00:00:00 2001 From: Jonathan McCrohan Date: Tue, 21 Apr 2015 23:16:14 +0100 Subject: [PATCH 278/681] muninlite: correctly parse ifname with - char Rewrote Jo-Philipp Wich's patch so it applies to source files rather than generated files. Closes #701 Signed-off-by: Jonathan McCrohan --- admin/muninlite/Makefile | 2 +- .../patches/220-modify-ifname-parser.patch | 22 +++++++++++++++++++ 2 files changed, 23 insertions(+), 1 deletion(-) create mode 100644 admin/muninlite/patches/220-modify-ifname-parser.patch diff --git a/admin/muninlite/Makefile b/admin/muninlite/Makefile index 1c1793edd..46fc8c4f8 100644 --- a/admin/muninlite/Makefile +++ b/admin/muninlite/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=muninlite PKG_VERSION:=1.0.4 -PKG_RELEASE:=5 +PKG_RELEASE:=6 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=@SF/$(PKG_NAME) diff --git a/admin/muninlite/patches/220-modify-ifname-parser.patch b/admin/muninlite/patches/220-modify-ifname-parser.patch new file mode 100644 index 000000000..95655cfbd --- /dev/null +++ b/admin/muninlite/patches/220-modify-ifname-parser.patch @@ -0,0 +1,22 @@ +--- a/plugins/if_ ++++ b/plugins/if_ +@@ -26,7 +26,7 @@ config_if() { + fi + } + fetch_if() { +- IINFO=$(grep "$1:" /proc/net/dev | cut -d: -f2 | sed -e 's/ / /g') ++ IINFO=$(cat /proc/net/dev | sed -e 's/-/_/g' | grep "$1:" | cut -d: -f2 | sed -e 's/ */ /g' -e 's/^[ \t]*//') + echo "down.value" $(echo $IINFO | cut -d\ -f1) + echo "up.value" $(echo $IINFO | cut -d\ -f9) + } +--- a/plugins/if_err_ ++++ b/plugins/if_err_ +@@ -15,7 +15,7 @@ config_if_err() { + echo "trans.warning 1" + } + fetch_if_err() { +- IINFO=$(grep "$1:" /proc/net/dev | cut -d: -f2 | sed -e 's/ / /g') ++ IINFO=$(cat /proc/net/dev | sed -e 's/-/_/g' | grep "$1:" | cut -d: -f2 | sed -e 's/ */ /g' -e 's/^[ \t]*//') + echo "rcvd.value" $(echo $IINFO | cut -d\ -f3) + echo "trans.value" $(echo $IINFO | cut -d\ -f11) + } From b5ec22c28c47904999b26d9af95436bd01c5e82d Mon Sep 17 00:00:00 2001 From: Vladimir Ulrich Date: Wed, 22 Apr 2015 16:33:42 +0300 Subject: [PATCH 279/681] [libs/gnutls] Added gettext-version fixup, updated OpenWrt header, added license information. Signed-off-by: Vladimir Ulrich --- libs/gnutls/Makefile | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/libs/gnutls/Makefile b/libs/gnutls/Makefile index 6d5c3524a..e5cbdbd98 100644 --- a/libs/gnutls/Makefile +++ b/libs/gnutls/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2005-2010 OpenWrt.org +# Copyright (C) 2005-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -9,14 +9,15 @@ include $(TOPDIR)/rules.mk PKG_NAME:=gnutls PKG_VERSION:=3.4.0 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_USE_MIPS16:=0 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=ftp://ftp.gnutls.org/gcrypt/gnutls/v3.4 PKG_MD5SUM:=aa015c2666b031044edfb01b01980d84 -PKG_FIXUP:=autoreconf +PKG_FIXUP:=autoreconf gettext-version PKG_MAINTAINER:=Nikos Mavrogiannopoulos +PKG_LICENSE:=LGPLv2.1+ PKG_INSTALL:=1 PKG_LIBTOOL_PATHS:=. lib From 122a780e7ff8dfc8fe8c68d30d84ed440a692f32 Mon Sep 17 00:00:00 2001 From: Daniel Salzman Date: Thu, 23 Apr 2015 09:23:25 +0200 Subject: [PATCH 280/681] knot: update to 1.6.3 Signed-off-by: Daniel Salzman --- net/knot/Makefile | 4 ++-- net/knot/patches/03_zscanner_tests.patch | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/net/knot/Makefile b/net/knot/Makefile index 37fee9f66..35c5543da 100644 --- a/net/knot/Makefile +++ b/net/knot/Makefile @@ -8,13 +8,13 @@ include $(TOPDIR)/rules.mk PKG_NAME:=knot -PKG_VERSION:=1.6.2 +PKG_VERSION:=1.6.3 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) PKG_SOURCE_URL:=https://secure.nic.cz/files/knot-dns/ -PKG_MD5SUM:=ad0a2d641556ad30d17d45200a2c45df +PKG_MD5SUM:=fb744b50493ac7e724d5228ade2e35b1 PKG_MAINTAINER:=Daniel Salzman PKG_LICENSE:=GPL-2.0+ diff --git a/net/knot/patches/03_zscanner_tests.patch b/net/knot/patches/03_zscanner_tests.patch index 279df2799..a0d052421 100644 --- a/net/knot/patches/03_zscanner_tests.patch +++ b/net/knot/patches/03_zscanner_tests.patch @@ -34,8 +34,8 @@ index 846f351..272856c 100644 TESTS_DIR="$SOURCE"/data ZSCANNER_TOOL="$BUILD"/zscanner-tool --plan 69 -+plan 67 +-plan 71 ++plan 69 mkdir -p "$TMPDIR"/includes/ for a in 1 2 3 4 5 6; do From f2c3449bc5e55928ea5fd3d67f9d31fc6375cfb4 Mon Sep 17 00:00:00 2001 From: Alexander Ryzhov Date: Thu, 23 Apr 2015 08:15:47 +0000 Subject: [PATCH 281/681] smstools3: remove unnecessary build deps Signed-off-by: Alexander Ryzhov --- utils/smstools3/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/utils/smstools3/Makefile b/utils/smstools3/Makefile index 12d4ecf8a..0c7dd2cf5 100644 --- a/utils/smstools3/Makefile +++ b/utils/smstools3/Makefile @@ -22,7 +22,7 @@ PKG_SOURCE_URL:=http://smstools3.kekekasvi.com/packages/ PKG_MD5SUM:=0241ef60e646fac1a06254a848e61ed7 PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME) -PKG_BUILD_DEPENDS:=libiconv-full iconv socket nsl +PKG_BUILD_DEPENDS:=libiconv-full iconv include $(INCLUDE_DIR)/package.mk From 2ded312918f71ecc5d4bed4dad6dde4975e378d7 Mon Sep 17 00:00:00 2001 From: Alexander Ryzhov Date: Thu, 23 Apr 2015 08:29:38 +0000 Subject: [PATCH 282/681] Remove libcrypto dependency Signed-off-by: Alexander Ryzhov --- libs/libimobiledevice/Makefile | 4 ++-- libs/libmicrohttpd/Makefile | 4 ++-- mail/alpine/Makefile | 4 ++-- utils/usbmuxd/Makefile | 4 ++-- 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/libs/libimobiledevice/Makefile b/libs/libimobiledevice/Makefile index 7cb06224c..304cf275f 100644 --- a/libs/libimobiledevice/Makefile +++ b/libs/libimobiledevice/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=libimobiledevice PKG_VERSION:=1.2.0 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_MAINTAINER:=Lukasz Baj PKG_LICENSE:=LGPL-2.1+ @@ -42,7 +42,7 @@ define Package/libimobiledevice $(call Package/libimobiledevice/Default) SECTION:=libs CATEGORY:=Libraries - DEPENDS:=$(ICONV_DEPENDS) +libplist +libusbmuxd +libopenssl +libcrypto + DEPENDS:=$(ICONV_DEPENDS) +libplist +libusbmuxd +libopenssl endef define Package/libimobiledevice/description diff --git a/libs/libmicrohttpd/Makefile b/libs/libmicrohttpd/Makefile index 3f1608ee9..91e98341c 100644 --- a/libs/libmicrohttpd/Makefile +++ b/libs/libmicrohttpd/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=libmicrohttpd PKG_VERSION:=0.9.38 -PKG_RELEASE:=1.1 +PKG_RELEASE:=1.2 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=@GNU/libmicrohttpd @@ -29,7 +29,7 @@ define Package/libmicrohttpd CATEGORY:=Libraries TITLE:=GNU libmicrohttpd is a library that runs an HTTP server. URL:=http://www.gnu.org/software/libmicrohttpd/ - DEPENDS:=+libpthread +libgcrypt +libgnutls +libgpg-error +libcrypto +libopenssl + DEPENDS:=+libpthread +libgcrypt +libgnutls +libgpg-error +libopenssl endef define Package/libmicrohttpd/description diff --git a/mail/alpine/Makefile b/mail/alpine/Makefile index 322e954b6..cd32a628d 100644 --- a/mail/alpine/Makefile +++ b/mail/alpine/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=alpine PKG_VERSION:=2.20 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE_URL:=http://patches.freeiz.com/alpine/release/src/ PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz @@ -44,7 +44,7 @@ endef define Package/alpine $(call Package/alpine/Default) TITLE+= (with OpenSSL support) - DEPENDS+= +libcrypto +libopenssl + DEPENDS+= +libopenssl VARIANT:=ssl endef diff --git a/utils/usbmuxd/Makefile b/utils/usbmuxd/Makefile index 65ab01667..239c84b72 100644 --- a/utils/usbmuxd/Makefile +++ b/utils/usbmuxd/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=usbmuxd PKG_VERSION:=1.1.1 -PKG_RELEASE:=2 +PKG_RELEASE:=3 PKG_SOURCE_PROTO:=git PKG_MAINTAINER:=Lukasz Baj @@ -31,7 +31,7 @@ define Package/usbmuxd CATEGORY:=Utilities TITLE:=USB multiplexing daemon URL:=http://www.libimobiledevice.org/ - DEPENDS:=+librt +libusb-1.0 +libusbmuxd +libcrypto +libopenssl +libimobiledevice + DEPENDS:=+librt +libusb-1.0 +libusbmuxd +libopenssl +libimobiledevice endef define Package/usbmuxd/description From 2ef99b98ca5d39f4e1dccc70fa4a4c0e30d8d8f1 Mon Sep 17 00:00:00 2001 From: Vladimir Ulrich Date: Thu, 23 Apr 2015 12:10:34 +0300 Subject: [PATCH 283/681] [net/siit] Moved from oldpackages and updated for kernels 3.17+ Signed-off-by: Vladimir Ulrich --- net/siit/Makefile | 42 ++ net/siit/src/Makefile | 5 + net/siit/src/siit.c | 1429 +++++++++++++++++++++++++++++++++++++++++ net/siit/src/siit.h | 61 ++ 4 files changed, 1537 insertions(+) create mode 100644 net/siit/Makefile create mode 100644 net/siit/src/Makefile create mode 100644 net/siit/src/siit.c create mode 100644 net/siit/src/siit.h diff --git a/net/siit/Makefile b/net/siit/Makefile new file mode 100644 index 000000000..6d6d2987f --- /dev/null +++ b/net/siit/Makefile @@ -0,0 +1,42 @@ +# +# Copyright (C) 2006-2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk +include $(INCLUDE_DIR)/kernel.mk + +PKG_NAME:=siit +PKG_VERSION:=1.2 +PKG_RELEASE:=1 +PKG_LICENSE:=GPLv2+ + +include $(INCLUDE_DIR)/package.mk + +define KernelPackage/siit + SUBMENU:=Network Devices + TITLE:=Stateless IP ICMP Translation Algorithm + DEPENDS:= @(!(TARGET_ps3||TARGET_pxcab)) + FILES:=$(PKG_BUILD_DIR)/siit.ko + AUTOLOAD:=$(call AutoLoad,50,siit) + MAINTAINER=Vladimir Ulrich +endef + +include $(INCLUDE_DIR)/kernel-defaults.mk + +define KernelPackage/siit/description + Stateless IP ICMP Translation Algorithm +endef + +define Build/Prepare + mkdir -p $(PKG_BUILD_DIR) + cp src/Makefile src/siit.h src/siit.c $(PKG_BUILD_DIR)/ +endef + +define Build/Compile + $(MAKE) $(KERNEL_MAKEOPTS) SUBDIRS="$(PKG_BUILD_DIR)" modules +endef + +$(eval $(call KernelPackage,siit)) diff --git a/net/siit/src/Makefile b/net/siit/src/Makefile new file mode 100644 index 000000000..06c36f1e3 --- /dev/null +++ b/net/siit/src/Makefile @@ -0,0 +1,5 @@ +obj-m := siit.o +ifeq ($(MAKING_MODULES),1) +-include $(TOPDIR)/Rules.make +endif + diff --git a/net/siit/src/siit.c b/net/siit/src/siit.c new file mode 100644 index 000000000..a25da9a9e --- /dev/null +++ b/net/siit/src/siit.c @@ -0,0 +1,1429 @@ +/* + * siit.c: the Stateless IP/ICMP Translator (SIIT) module for Linux. + * + * + */ + +#include +#include +#include +#include /* printk() */ +#include + +#include /* error codes */ +#include /* size_t */ +#include /* mark_bh */ +#include +#include +#include /* struct device, and other headers */ +#include /* eth_type_trans */ +#include /* struct iphdr */ +#include /* struct icmphdr */ +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include "siit.h" + +MODULE_AUTHOR("Dmitriy Moscalev, Grigory Klyuchnikov, Felix Fietkau"); + +/* + * If tos_ignore_flag != 0, we don't copy TOS and Traffic Class + * from origin paket and set it to 0 + */ +int tos_ignore_flag = 0; + +#define siit_stats(_dev) (&(_dev)->stats) + +/* + * The Utility stuff + */ + +#ifdef SIIT_DEBUG +/* print dump bytes (data point data area sizeof len and message + * before dump. + */ +static int siit_print_dump(char *data, int len, char *message) +{ + int i; + int j = 0, k = 1; + + len = len > BUFF_SIZE ? BUFF_SIZE : len; + printk("%s:\n", message); + for (i=0; i < len; i++, k++) { + if( i == len-1 || k == 16) { + printk("%02x\n", (~(~0 << 8) & *(data+i))); + j = 0; + k = 0; + } + else if (j) { + printk("%02x ", (~(~0 << 8) & *(data+i))); + j--; + } + else { + printk("%02x", (~(~0 << 8) & *(data+i))); + j++; + } + } + return 0; +} +#endif + +/* + * Open and close + */ +static int siit_open(struct net_device *dev) +{ + netif_start_queue(dev); + return 0; +} + + +static int siit_release(struct net_device *dev) +{ + netif_stop_queue(dev); /* can't transmit any more */ + return 0; +} + +/* + * Translation IPv4 to IPv6 stuff + * + * ip4_ip6 (src, len, dst, include_flag) + * + * where + * src - buffer with original IPv4 packet, + * len - size of original packet, + * dst - new buffer for IPv6 packet, + * include_flag - if = 1, dst point to IPv4 packet that is ICMP error + * included IP packet, else = 0 + */ + +static int ip4_ip6(char *src, int len, char *dst, int include_flag) +{ + struct iphdr *ih4 = (struct iphdr *) src; /* point to current IPv4 header struct */ + struct icmphdr *icmp_hdr; /* point to current ICMPv4 header struct */ + struct udphdr *udp_hdr; /* point to current IPv4 UDP header struct */ + + struct ipv6hdr *ih6 = (struct ipv6hdr *) dst; /* point to current IPv6 header struct */ + struct frag_hdr *ih6_frag = (struct frag_hdr *)(dst+sizeof(struct ipv6hdr)); + /* point to current IPv6 fragment header struct */ + struct icmp6hdr *icmp6_hdr; /* point to current ICMPv6 header */ + + int hdr_len = (int)(ih4->ihl * 4); /* IPv4 header length */ + int icmp_len; /* ICMPv4 packet length */ + int plen; /* payload length */ + + unsigned int csum; /* need to calculate ICMPv6 and UDP checksum */ + int fl_csum = 0; /* flag to calculate UDP checksum */ + int icmperr = 1; /* flag to indicate ICMP error message and to need + translate ICMP included IP packet */ + int fr_flag = 0; /* fragment flag, if = 0 - don't add + fragment header */ + __u16 new_tot_len; /* need to calculate IPv6 total length */ + __u8 new_nexthdr; /* next header code */ + __u16 icmp_ptr = 0; /* Pointer field in ICMP_PARAMETERPROB */ + +#ifdef SIIT_DEBUG /* print IPv4 header dump */ + siit_print_dump(src, hdr_len, "siit: ip4_ip6() (in) ip4 header dump"); +#endif + + /* If DF == 1 && MF == 0 && Fragment Offset == 0 + * or this packet is ICMP included IP packet + * we don't need fragment header */ + if (ntohs(ih4->frag_off) == IP_DF || include_flag ) { + /* not fragment and we need not to add Fragment + * Header to IPv6 packet. */ + /* total length = total length from IPv4 packet */ + new_tot_len = ntohs(ih4->tot_len); + + if (ih4->protocol == IPPROTO_ICMP) + new_nexthdr = NEXTHDR_ICMP; + else + new_nexthdr = ih4->protocol; + } + else { + /* need to add Fragment Header */ + fr_flag = 1; + /* total length = total length from IPv4 packet + + length of Fragment Header */ + new_tot_len = ntohs(ih4->tot_len) + sizeof(struct frag_hdr); + /* IPv6 Header NextHeader = NEXTHDR_FRAGMENT */ + new_nexthdr = NEXTHDR_FRAGMENT; + /* Fragment Header NextHeader copy from IPv4 packet */ + if (ih4->protocol == IPPROTO_ICMP) + ih6_frag->nexthdr = NEXTHDR_ICMP; + else + ih6_frag->nexthdr = ih4->protocol; + + /* copy frag offset from IPv4 packet */ + ih6_frag->frag_off = htons((ntohs(ih4->frag_off) & IP_OFFSET) << 3); + /* copy MF flag from IPv4 packet */ + ih6_frag->frag_off = htons((ntohs(ih6_frag->frag_off) | + ((ntohs(ih4->frag_off) & IP_MF) >> 13))); + /* copy Identification field from IPv4 packet */ + ih6_frag->identification = htonl(ntohs(ih4->id)); + /* reserved field initialized to zero */ + ih6_frag->reserved = 0; + } + + /* Form rest IPv6 fields */ + + /* + * At this point we need to add checking of unxpired source + * route optin and if it is, send ICMPv4 "destination + * unreacheble/source route failes" Type 3/Code 5 and + * drop packet. (NOT RELEASED YET) + */ + + /* IP version = 6 */ + ih6->version = 6; + + if (tos_ignore_flag) { + ih6->priority = 0; + ih6->flow_lbl[0] = 0; + } else { + ih6->priority = (ih4->tos & 0xf0) >> 4; + ih6->flow_lbl[0] = (ih4->tos & 0x0f) << 4; + } + ih6->flow_lbl[1] = 0; + ih6->flow_lbl[2] = 0; + + /* Hop Limit = IPv4 TTL */ + ih6->hop_limit = ih4->ttl; + + /* Translate source destination addresses, + for IPv6 host it's IPv4-translated IPv6 address, + for IPv4 host it's IPv4-mapped IPv6 address + + !!WARNING!! Instead IPv4-mapped IPv6 addresses we use addreesses + with unused prefix ::ffff:ffff:0:0/96, because KAME implementation + doesn't support IPv4-mapped addresses in IPv6 packets and discard them. + + */ + + if (include_flag) { + /* + It's ICMP included IP packet and there is a diffirence + in src/dst addresses then src/dst in normal direction + */ + + /* + Source address + is IPv4-translated IPv6 address because packet traveled + from IPv6 to IPv4 area + */ + ih6->saddr.in6_u.u6_addr32[0] = 0; + ih6->saddr.in6_u.u6_addr32[1] = 0; + ih6->saddr.in6_u.u6_addr32[2] = htonl(TRANSLATED_PREFIX); /* to network order bytes */ + ih6->saddr.in6_u.u6_addr32[3] = ih4->saddr; + + /* + Destination address + is IPv4-mapped address (but it's not IPv4- mapped, we use + prefix ::ffff:ffff:0:0/96 + */ + ih6->daddr.in6_u.u6_addr32[0] = 0; + ih6->daddr.in6_u.u6_addr32[1] = 0; + ih6->daddr.in6_u.u6_addr32[2] = htonl(MAPPED_PREFIX); /* to network order bytes */ + ih6->daddr.in6_u.u6_addr32[3] = ih4->daddr; + } + else { + + /* + This is normal case (packet isn't included IP packet) + + Source address + is IPv4-mapped address (but it's not IPv4- mapped, we use + prefix ::ffff:ffff:0:0/96) + */ + ih6->saddr.in6_u.u6_addr32[0] = 0; + ih6->saddr.in6_u.u6_addr32[1] = 0; + ih6->saddr.in6_u.u6_addr32[2] = htonl(MAPPED_PREFIX); /* to network order bytes */ + ih6->saddr.in6_u.u6_addr32[3] = ih4->saddr; + + /* Destination address + is is IPv4-translated IPv6 address + */ + ih6->daddr.in6_u.u6_addr32[0] = 0; + ih6->daddr.in6_u.u6_addr32[1] = 0; + ih6->daddr.in6_u.u6_addr32[2] = htonl(TRANSLATED_PREFIX); /* to network order bytes */ + ih6->daddr.in6_u.u6_addr32[3] = ih4->daddr; + } + + /* Payload Length */ + plen = new_tot_len - hdr_len; /* Payload length = IPv4 total len - IPv4 header len */ + ih6->payload_len = htons(plen); + + /* Next Header */ + ih6->nexthdr = new_nexthdr; /* Next Header */ + + /* Process ICMP protocols data */ + + switch (ih4->protocol) { + case IPPROTO_ICMP: + if ( (ntohs(ih4->frag_off) & IP_OFFSET) != 0 || (ntohs(ih4->frag_off) & IP_MF) != 0 ) { + PDEBUG("ip4_ip6(): don't translate ICMPv4 fragments - packet dropped.\n"); + return -1; + } + + icmp_hdr = (struct icmphdr *) (src+hdr_len); /* point to ICMPv4 header */ + csum = 0; + icmp_len = ntohs(ih4->tot_len) - hdr_len; /* ICMPv4 packet length */ + icmp6_hdr = (struct icmp6hdr *)(dst+sizeof(struct ipv6hdr) + +fr_flag*sizeof(struct frag_hdr)); /* point to ICMPv6 header */ + + if (include_flag) { + /* ICMPv4 packet cannot be included in ICMPv4 Error message */ + /* !!! May be it's WRONG !!! ICMPv4 QUERY packet can be included + in ICMPv4 Error message */ + PDEBUG("ip4_ip6(): It's included ICMPv4 in ICMPv4 Error message - packet dropped.\n"); + return -1; + } + + /* Check ICMPv4 Type field */ + switch (icmp_hdr->type) { + /* ICMP Error messages */ + /* Destination Unreachable (Type 3) */ + case ICMP_DEST_UNREACH: + icmp6_hdr->icmp6_type = ICMPV6_DEST_UNREACH; /* to Type 1 */ + icmp6_hdr->icmp6_unused = 0; + switch (icmp_hdr->code) + { + case ICMP_NET_UNREACH: /* Code 0 */ + case ICMP_HOST_UNREACH: /* Code 1 */ + case ICMP_SR_FAILED: /* Code 5 */ + case ICMP_NET_UNKNOWN: /* Code 6 */ + case ICMP_HOST_UNKNOWN: /* Code 7 */ + case ICMP_HOST_ISOLATED: /* Code 8 */ + case ICMP_NET_UNR_TOS: /* Code 11 */ + case ICMP_HOST_UNR_TOS: /* Code 12 */ + icmp6_hdr->icmp6_code = ICMPV6_NOROUTE; /* to Code 0 */ + break; + case ICMP_PROT_UNREACH: /* Code 2 */ + icmp6_hdr->icmp6_type = ICMPV6_PARAMPROB; /* to Type 4 */ + icmp6_hdr->icmp6_code = ICMPV6_UNK_NEXTHDR; /* to Code 1 */ + /* Set pointer filed to 6, it's octet offset IPv6 Next Header field */ + icmp6_hdr->icmp6_pointer = htonl(6); + break; + case ICMP_PORT_UNREACH: /* Code 3 */ + icmp6_hdr->icmp6_code = ICMPV6_PORT_UNREACH; /* to Code 4 */ + break; + case ICMP_FRAG_NEEDED: /* Code 4 */ + icmp6_hdr->icmp6_type = ICMPV6_PKT_TOOBIG; /* to Type 2 */ + icmp6_hdr->icmp6_code = 0; + /* Correct MTU */ + if (icmp_hdr->un.frag.mtu == 0) + /* we use minimum MTU for IPv4 PMTUv4 RFC1191, section 5; + IPv6 implementation wouldn't accept Path MTU < 1280, + but it records info correctly to always include + a fragment header */ + icmp6_hdr->icmp6_mtu = htonl(576); + else + /* needs to adjusted for difference between IPv4/IPv6 headers + * SIIT RFC2765, section 3.3, + * we assume that difference is 20 bytes */ + icmp6_hdr->icmp6_mtu = htonl(ntohs(icmp_hdr->un.frag.mtu)+IP4_IP6_HDR_DIFF); + + break; + case ICMP_NET_ANO: /* Code 9 */ + case ICMP_HOST_ANO: /* Code 10 */ + icmp6_hdr->icmp6_code = ICMPV6_ADM_PROHIBITED; /* to Code 1 */ + break; + default: /* discard any other Code */ + PDEBUG("ip4_ip6(): Unknown ICMPv4 Type %d Code %d - packet dropped.\n", + ICMP_DEST_UNREACH, icmp_hdr->code); + return -1; + } + break; + /* Time Exceeded (Type 11) */ + case ICMP_TIME_EXCEEDED: + icmp6_hdr->icmp6_type = ICMPV6_TIME_EXCEED; + icmp6_hdr->icmp6_code = icmp_hdr->code; + break; + /* Parameter Problem (Type 12) */ + case ICMP_PARAMETERPROB: + icmp6_hdr->icmp6_type = ICMPV6_PARAMPROB; + icmp6_hdr->icmp6_code = icmp_hdr->code; + + icmp_ptr = ntohs(icmp_hdr->un.echo.id) >> 8; + switch (icmp_ptr) { + case 0: + icmp6_hdr->icmp6_pointer = 0; /* IPv4 Version -> IPv6 Version */ + break; + case 2: + icmp6_hdr->icmp6_pointer = __constant_htonl(4); /* IPv4 length -> IPv6 Payload Length */ + break; + case 8: + icmp6_hdr->icmp6_pointer = __constant_htonl(7); /* IPv4 TTL -> IPv6 Hop Limit */ + break; + case 9: + icmp6_hdr->icmp6_pointer = __constant_htonl(6); /* IPv4 Protocol -> IPv6 Next Header */ + break; + case 12: + icmp6_hdr->icmp6_pointer = __constant_htonl(8); /* IPv4 Src Addr -> IPv6 Src Addr */ + break; + case 16: + icmp6_hdr->icmp6_pointer = __constant_htonl(24); /* IPv4 Dst Addr -> IPv6 Dst Addr */ + break; + default: + icmp6_hdr->icmp6_pointer = 0xffffffff; /* set to all ones in any other cases */ + break; + } + break; + case ICMP_ECHO: + icmperr = 0; + icmp6_hdr->icmp6_type = ICMPV6_ECHO_REQUEST; + icmp6_hdr->icmp6_code = 0; + /* Copy rest ICMP data to new IPv6 packet without changing */ + memcpy(((char *)icmp6_hdr)+4, ((char *)icmp_hdr)+4, len - hdr_len - 4); + break; + + case ICMP_ECHOREPLY: + icmperr = 0; + icmp6_hdr->icmp6_type = ICMPV6_ECHO_REPLY; + icmp6_hdr->icmp6_code = 0; + /* Copy rest ICMP data to new IPv6 packet without changing */ + memcpy(((char *)icmp6_hdr)+4, ((char *)icmp_hdr)+4, len - hdr_len - 4); + break; + + /* Discard any other ICMP messages */ + default: + PDEBUG("ip4_ip6(): Unknown ICMPv4 packet Type %x - packet dropped.\n", icmp_hdr->type); + return -1; + } + + /* Now if it's ICMPv4 Error message we must translate included IP packet */ + + if (icmperr) { + /* Call our ip4_ip6() to translate included IP packet */ + if (ip4_ip6(src+hdr_len+sizeof(struct icmphdr), len - hdr_len - sizeof(struct icmphdr), + dst+sizeof(struct ipv6hdr)+fr_flag*sizeof(struct frag_hdr) + +sizeof(struct icmp6hdr), 1) == -1) { + PDEBUG("ip4_ip6(): Uncorrect translation of ICMPv4 Error message - packet dropped.\n"); + return -1; + } + /* correct ICMPv6 packet length for diffirence between IPv4 and IPv6 headers + in included IP packet + */ + icmp_len += 20; + /* and correct Payload length for diffirence between IPv4 and IPv6 headers */ + plen += 20; + ih6->payload_len = htons(plen); + } + + /* Calculate ICMPv6 checksum */ + + icmp6_hdr->icmp6_cksum = 0; + csum = 0; + + csum = csum_partial((u_char *)icmp6_hdr, icmp_len, csum); + icmp6_hdr->icmp6_cksum = csum_ipv6_magic(&ih6->saddr, &ih6->daddr, icmp_len, + IPPROTO_ICMPV6, csum); + break; + + /* Process TCP protocols data */ + case IPPROTO_TCP: + /* Copy TCP data to new IPv6 packet without changing */ + memcpy(dst+sizeof(struct ipv6hdr)+fr_flag*sizeof(struct frag_hdr), + src+hdr_len, len - hdr_len); + break; + + /* Process UDP protocols data */ + case IPPROTO_UDP: + udp_hdr = (struct udphdr *)(src+hdr_len); + if ((ntohs(ih4->frag_off) & IP_OFFSET) == 0) { + if ((ntohs(ih4->frag_off) & IP_MF) != 0) { + /* It's a first fragment */ + if (udp_hdr->check == 0) { + /* System management event */ + printk("siit: First fragment of UDP with zero checksum - packet droped\n"); + printk("siit: addr: %x src port: %d dst port: %d\n", + htonl(ih4->saddr), htons(udp_hdr->source), htons(udp_hdr->dest)); + return -1; + } + } + else if (udp_hdr->check == 0) + fl_csum = 1; + } + + /* Copy UDP data to new IPv6 packet */ + udp_hdr = (struct udphdr *)(dst+sizeof(struct ipv6hdr) + + fr_flag*sizeof(struct frag_hdr)); + memcpy((char *)udp_hdr, src+hdr_len, len - hdr_len); + + /* Calculate UDP checksum if UDP checksum in IPv4 packet was ZERO + and if it isn't included IP packet + */ + if (fl_csum && (!include_flag)) { + udp_hdr->check = 0; + csum = 0; + csum = csum_partial((unsigned char *)udp_hdr, plen - fr_flag*sizeof(struct frag_hdr), csum); + udp_hdr->check = csum_ipv6_magic(&ih6->saddr, &ih6->daddr, plen - + fr_flag*sizeof(struct frag_hdr), IPPROTO_UDP, csum); + } + break; + + /* Discard packets with any other protocol */ + default: + PDEBUG("ip4_ip6(): Unknown upper protocol - packet dropped.\n"); + return -1; + } + +#ifdef SIIT_DEBUG + siit_print_dump(dst, sizeof(struct ipv6hdr), "siit: ip4_ip6(): (out) ipv6 header dump"); +#endif + + return 0; +} + +/* + * Translation IPv6 to IPv4 stuff + * + * ip6_ip4(src, len, dst, include_flag) + * + * where + * src - buffer with original IPv6 packet, + * len - size of original packet, + * dst - new buffer for IPv4 packet, + * include_flag - if = 1, dst point to IPv6 packet that is ICMP error + * included IP packet, else = 0 + * + */ + +static int ip6_ip4(char *src, int len, char *dst, int include_flag) +{ + struct ipv6hdr *ip6_hdr; /* point to current IPv6 header struct */ + struct iphdr *ip_hdr; /* point to current IPv4 header struct */ + int opts_len = 0; /* to sum Option Headers length */ + int icmperr = 1; /* if = 1, indicate that packet is ICMP Error message, else = 0 */ + int ntot_len = 0; /* to calculate IPv6 Total Length field */ + int real_len; + int len_delta; + int ip6_payload_len; + int inc_opts_len = 0; /* to sum Option Headers length in ICMP included IP packet */ + __u8 next_hdr; /* Next Header */ + +#ifdef SIIT_DEBUG + siit_print_dump(src, sizeof(struct ipv6hdr), "siit: ip6_ip4(): (in) ipv6 header dump"); +#endif + + if ( (len_delta = len - sizeof(struct ipv6hdr)) >= 0) + { + ip6_hdr = (struct ipv6hdr *)src; + ip_hdr = (struct iphdr *)dst; + + real_len = sizeof(struct iphdr); + + /* Check validation of Saddr & Daddr? is a packet to fall under our translation? */ + if (include_flag) { /* It's ICMP included IP packet, + about process include_flag see comment in ip4_ip6() */ + if (ip6_hdr->saddr.s6_addr32[2] != htonl(MAPPED_PREFIX)) { + PDEBUG("ip6_ip4(): Included IP packet Src addr isn't mapped addr: %x%x%x%x, packet dropped.\n", + ip6_hdr->saddr.s6_addr32[0], ip6_hdr->saddr.s6_addr32[1], + ip6_hdr->saddr.s6_addr32[2], ip6_hdr->saddr.s6_addr32[3]); + return -1; + } + if ( ip6_hdr->daddr.s6_addr32[2] != htonl(TRANSLATED_PREFIX)) { + PDEBUG("ip6_ip4(): Included IP packet Dst addr isn't translated addr: %x%x%x%x, packet dropped.\n", + ip6_hdr->daddr.s6_addr32[0], ip6_hdr->daddr.s6_addr32[1], + ip6_hdr->daddr.s6_addr32[2], ip6_hdr->daddr.s6_addr32[3]); + return -1; + } + } + else { /* It's normal IP packet (not included in ICMP) */ + if (ip6_hdr->saddr.s6_addr32[2] != htonl(TRANSLATED_PREFIX)) { + PDEBUG("ip6_ip4(): Src addr isn't translated addr: %x%x%x%x, packet dropped.\n", + ip6_hdr->saddr.s6_addr32[0], ip6_hdr->saddr.s6_addr32[1], + ip6_hdr->saddr.s6_addr32[2], ip6_hdr->saddr.s6_addr32[3]); + return -1; + } + if ( ip6_hdr->daddr.s6_addr32[2] != htonl(MAPPED_PREFIX)) { + PDEBUG("ip6_ip4(): Dst addr isn't mapped addr: %x%x%x%x, packet dropped.\n", + ip6_hdr->daddr.s6_addr32[0], ip6_hdr->daddr.s6_addr32[1], + ip6_hdr->daddr.s6_addr32[2], ip6_hdr->daddr.s6_addr32[3]); + return -1; + } + } + + /* Set IPv4 Fragment Offset and ID to 0 + before process any Option Headers */ + ip_hdr->frag_off = 0; + ip_hdr->id = 0; + + /* + * We process only Fragment Header. Any other options headers + * are ignored, i.e. there is no attempt to translate them. + * However, the Total Length field and the Protocol field would + * have to be adjusted to "skip" these extension headers. + */ + + next_hdr = ip6_hdr->nexthdr; + + /* Hop_by_Hop options header (ip6_hdr->nexthdr = 0). It must + * appear only in IPv6 header's Next Header field. + */ + if (next_hdr == NEXTHDR_HOP) { + if ( (len_delta - sizeof(struct ipv6_opt_hdr)) >= 0) + { + struct ipv6_opt_hdr *ip6h = + (struct ipv6_opt_hdr *)(src+sizeof(struct ipv6hdr) + opts_len); + if ( (len_delta -= ip6h->hdrlen*8 + 8) >= 0) + { + opts_len += ip6h->hdrlen*8 + 8; /* See RFC 2460 page 11: + Hdr Ext Len 8-bit unsigned integer. Length of the Hop-by- + Hop Options header in 8-octet units, not + including the first 8 octets. + */ + next_hdr = ip6h->nexthdr; + } + else + { + PDEBUG("ip6_ip4(): hop_by_hop header error, packet droped"); + /* Generate ICMP Parameter Problem */ + return -1; + } + } + } + + if (len_delta > 0) + { + while(next_hdr != NEXTHDR_ICMP && next_hdr != NEXTHDR_TCP + && next_hdr != NEXTHDR_UDP) + { + /* Destination options header */ + if (next_hdr == NEXTHDR_DEST) + { + if ( (len_delta - sizeof(struct ipv6_opt_hdr)) >= 0) + { + struct ipv6_opt_hdr *ip6d = + (struct ipv6_opt_hdr *)(src + sizeof(struct ipv6hdr) + opts_len); + if ( (len_delta -= ip6d->hdrlen*8 + 8) >= 0) + { + opts_len += ip6d->hdrlen*8 + 8; + next_hdr = ip6d->nexthdr; + } + } + else + { + PDEBUG("ip6_ip4(): destination header error, packet droped"); + /* Generate ICMP Parameter Problem */ + return -1; + } + } + /* Routing options header */ + else if (next_hdr == NEXTHDR_ROUTING) + { + if ( (len_delta - sizeof(struct ipv6_rt_hdr)) >= 0) + { + struct ipv6_rt_hdr *ip6rt = + (struct ipv6_rt_hdr *)(src+sizeof(struct ipv6hdr) + opts_len); + /* RFC 2765 SIIT, 4.1: + If a routing header with a non-zero Segments Left field is present + then the packet MUST NOT be translated, and an ICMPv6 "parameter + problem/ erroneous header field encountered" (Type 4/Code 0) error + message, with the Pointer field indicating the first byte of the + Segments Left field, SHOULD be returned to the sender. + */ + if (ip6rt->segments_left != 0) { + /* Build ICMPv6 "Parameter Problem/Erroneous Header + Field Encountered" & drop the packet */ + /* !!! We don't send ICMPv6 "Parameter Problem" !!! */ + PDEBUG("ip6_ip4(): routing header type != 0\n"); + return -1; + } + if ( (len_delta -= ip6rt->hdrlen*8 + 8) >= 0) + { + opts_len += ip6rt->hdrlen*8 + 8; + next_hdr = ip6rt->nexthdr; + } + else + { + PDEBUG("ip6_ip4(): routing header error, packet droped"); + /* Generate ICMP Parameter Problem */ + return -1; + } + } + } + /* Fragment options header */ + else if (next_hdr == NEXTHDR_FRAGMENT) + { + if ( (len_delta -= sizeof(struct frag_hdr)) >= 0) + { + struct frag_hdr *ip6f = + (struct frag_hdr *)(src+sizeof(struct ipv6hdr)+opts_len); + + opts_len += sizeof(struct frag_hdr); /* Frag Header Length = 8 */ + ip_hdr->id = htons(ntohl(ip6f->identification)); /* ID field */ + ip_hdr->frag_off = htons((ntohs(ip6f->frag_off) & IP6F_OFF_MASK) >> 3); + /* fragment offset */ + ip_hdr->frag_off = htons(ntohs(ip_hdr->frag_off) | + ((ntohs(ip6f->frag_off) & IP6F_MORE_FRAG) << 13)); + /* more fragments flag */ + next_hdr = ip6f->nexthdr; + } + else + { + PDEBUG("ip6_ip4(): fragment header error, packet droped"); + /* Generate ICMP Parameter Problem */ + return -1; + } + } + /* No Next Header */ + else if (next_hdr == NEXTHDR_NONE) + { + /* RFC 2460 IPv6 Specification, 4.7 + 4.7 No Next Header + + The value 59 in the Next Header field of an IPv6 header or any + extension header indicates that there is nothing following that + header. If the Payload Length field of the IPv6 header indicates the + presence of octets past the end of a header whose Next Header field + contains 59, those octets must be ignored, and passed on unchanged if + the packet is forwarded. + */ + break; + } + else if (next_hdr == NEXTHDR_ESP || next_hdr == NEXTHDR_AUTH) + { + PDEBUG("ip6_ip4(): cannot translate AUTH or ESP extention header, packet dropped\n"); + return -1; + } + else if (next_hdr == NEXTHDR_IPV6) + { + PDEBUG("ip6_ip4(): cannot translate IPv6-IPv6 packet, packet dropped\n"); + return -1; + } + else if (next_hdr == 0) + { + /* As say RFC 2460 (IPv6 Spec) we should discard the packet and send an + ICMP Parameter Problem message to the source of the packet, with an + ICMP Code value of 1 ("unrecognized Next Header type encountered") + and the ICMP Pointer field containing the offset of the unrecognized + value within the original packet + */ + /* NOT IMPLEMENTED */ + PDEBUG("ip6_ip4(): NEXTHDR in extention header = 0, packet dropped\n"); + return -1; + } + else + { + PDEBUG("ip6_ip4(): cannot translate extention header = %d, packet dropped\n", next_hdr); + return -1; + } + } + } + } + else + { + PDEBUG("ip6_ip4(): error packet len, packet dropped.\n"); + return -1; + } + + /* Building ipv4 packet */ + + ip_hdr->version = IPVERSION; + ip_hdr->ihl = 5; + + /* TOS see comment about TOS in ip4_ip6() */ + if (tos_ignore_flag) + ip_hdr->tos = 0; + else { + ip_hdr->tos = ip6_hdr->priority << 4; + ip_hdr->tos = ip_hdr->tos | (ip6_hdr->flow_lbl[0] >> 4); + } + + /* IPv4 Total Len = IPv6 Payload Len + + IPv4 Header Len (without options) - Options Headers Len */ + ip6_payload_len = ntohs(ip6_hdr->payload_len); + + if (ip6_payload_len == 0) + ntot_len = 0; + else + ntot_len = ip6_payload_len + IP4_IP6_HDR_DIFF - opts_len; + + ip_hdr->tot_len = htons(ntot_len); + + /* IPv4 TTL = IPv6 Hop Limit */ + ip_hdr->ttl = ip6_hdr->hop_limit; + + /* IPv4 Protocol = Next Header that will point to upper layer protocol */ + ip_hdr->protocol = next_hdr; + + /* IPv4 Src addr = last 4 bytes from IPv6 Src addr */ + ip_hdr->saddr = ip6_hdr->saddr.s6_addr32[3]; + /* IPv4 Dst addr = last 4 bytes from IPv6 Dst addr */ + ip_hdr->daddr = ip6_hdr->daddr.s6_addr32[3]; + + /* Calculate IPv4 header checksum */ + ip_hdr->check = 0; + ip_hdr->check = ip_fast_csum((unsigned char *)ip_hdr, ip_hdr->ihl); + + if (len_delta > 0) + { + /* PROCESS ICMP */ + + if (next_hdr == NEXTHDR_ICMP) + { + struct icmp6hdr *icmp6_hdr; + struct icmphdr *icmp_hdr; + + if ((len_delta -= sizeof(struct icmp6hdr)) >= 0) + { + icmp6_hdr = (struct icmp6hdr *)(src + sizeof(struct ipv6hdr) + opts_len); + icmp_hdr = (struct icmphdr *)(dst + sizeof(struct iphdr)); + + real_len += len_delta + sizeof(struct icmphdr); + + /* There is diffirent between ICMPv4/ICMPv6 protocol codes + IPPROTO_ICMP = 1 + IPPROTO_ICMPV6 = 58 */ + ip_hdr->protocol = IPPROTO_ICMP; + + if (include_flag) { + /* !!! Warnig !!! We discard ICMP packets with any ICMP as included + in ICMP Error. But ICMP Error messages can include ICMP Query message + */ + if (icmp6_hdr->icmp6_type != ICMPV6_ECHO_REQUEST) + { + PDEBUG("ip6_ip4(): included ICMPv6 in ICMPv6 Error message, packet dropped\n"); + return -1; + } + } + + /* Translate ICMPv6 to ICMPv4 */ + switch (icmp6_hdr->icmp6_type) + { +/* ICMP Error messages */ + /* Destination Unreachable (Type 1) */ + case ICMPV6_DEST_UNREACH: /* Type 1 */ + icmp_hdr->type = ICMP_DEST_UNREACH; /* to Type 3 */ + icmp_hdr->un.echo.id = 0; + icmp_hdr->un.echo.sequence = 0; + switch (icmp6_hdr->icmp6_code) + { + case ICMPV6_NOROUTE: /* Code 0 */ + case ICMPV6_NOT_NEIGHBOUR: /* Code 2 */ + case ICMPV6_ADDR_UNREACH: /* Code 3 */ + icmp_hdr->code = ICMP_HOST_UNREACH; /* To Code 1 */ + break; + case ICMPV6_ADM_PROHIBITED: /* Code 1 */ + icmp_hdr->code = ICMP_HOST_ANO; /* To Code 10 */ + break; + case ICMPV6_PORT_UNREACH: /* Code 4 */ + icmp_hdr->code = ICMP_PORT_UNREACH; /* To Code 3 */ + + break; + default: /* discard any other codes */ + PDEBUG("ip6_ip4(): Unknown ICMPv6 Type %d Code %d - packet dropped.\n", + ICMPV6_DEST_UNREACH, icmp6_hdr->icmp6_code); + return -1; + } + break; + /* Packet Too Big (Type 2) */ + case ICMPV6_PKT_TOOBIG: /* Type 2 */ + icmp_hdr->type = ICMP_DEST_UNREACH; /* to Type 3 */ + icmp_hdr->code = ICMP_FRAG_NEEDED; /* to Code 4 */ + /* Change MTU, RFC 2765 (SIIT), 4.2: + The MTU field needs to be adjusted for the difference between + the IPv4 and IPv6 header sizes taking into account whether or + not the packet in error includes a Fragment header. + */ + /* !!! Don't implement !!! */ + icmp_hdr->un.frag.mtu = (__u16) icmp6_hdr->icmp6_mtu; + break; + /* Time Exceeded (Type 3) */ + case ICMPV6_TIME_EXCEED: + icmp_hdr->type = ICMP_TIME_EXCEEDED; /* to Type 11 */ + icmp_hdr->code = icmp6_hdr->icmp6_code; /* Code unchanged */ + break; + /* Parameter Problem (Type 4) */ + case ICMPV6_PARAMPROB: + switch (icmp6_hdr->icmp6_code) { + case ICMPV6_UNK_NEXTHDR: /* Code 1 */ + icmp_hdr->type = ICMP_DEST_UNREACH; /* to Type 3 */ + icmp_hdr->code = ICMP_PROT_UNREACH; /* to Code 2 */ + break; + default: /* if Code != 1 */ + icmp_hdr->type = ICMP_PARAMETERPROB; /* to Type 12 */ + icmp_hdr->code = 0; /* to Code 0 */ + /* Update Pointer field + RFC 2765 (SIIT), 4.2: + The Pointer needs to be updated to point to the corresponding + field in the translated include IP header. + */ + switch (ntohl(icmp6_hdr->icmp6_pointer)) + { + case 0: /* IPv6 Version -> IPv4 Version */ + icmp_hdr->un.echo.id = 0; + break; + case 4: /* IPv6 PayloadLength -> IPv4 Total Length */ + icmp_hdr->un.echo.id = 0x0002; /* 2 */ + break; + case 6: /* IPv6 Next Header-> IPv4 Protocol */ + icmp_hdr->un.echo.id = 0x0009; /* 9 */ + break; + case 7: /* IPv6 Hop Limit -> IPv4 TTL */ + icmp_hdr->un.echo.id = 0x0008; /* 8 */ + break; + case 8: /* IPv6 Src addr -> IPv4 Src addr */ + icmp_hdr->un.echo.id = 0x000c; /* 12 */ + break; + case 24: /* IPv6 Dst addr -> IPv4 Dst addr*/ + icmp_hdr->un.echo.id = 0x0010; /* 16 */ + break; + default: /* set all ones in other cases */ + icmp_hdr->un.echo.id = 0xff; + break; + } + break; + } + break; + +/* End of ICMP Error messages */ + + /* Echo Request and Echo Reply (Type 128 and 129) */ + case ICMPV6_ECHO_REQUEST: + icmperr = 0; /* not error ICMP message */ + icmp_hdr->type = ICMP_ECHO; /* to Type 8 */ + icmp_hdr->code = 0; /* to Code 0 */ + icmp_hdr->un.echo.id = icmp6_hdr->icmp6_identifier; + icmp_hdr->un.echo.sequence = icmp6_hdr->icmp6_sequence; + /* copy rest of ICMP data to result packet */ + if (len_delta > 0) + memcpy(((char *)icmp_hdr) + sizeof(struct icmphdr), + ((char *)icmp6_hdr) + sizeof(struct icmp6hdr), len_delta); + break; + case ICMPV6_ECHO_REPLY: + icmperr = 0; /* not error ICMP message */ + icmp_hdr->type = ICMP_ECHOREPLY; /* to Type 0 */ + icmp_hdr->code = 0; /* to Code 0 */ + icmp_hdr->un.echo.id = icmp6_hdr->icmp6_identifier; + icmp_hdr->un.echo.sequence = icmp6_hdr->icmp6_sequence; + /* copy rest of ICMP data */ + if (len_delta > 0) + memcpy(((char *)icmp_hdr) + sizeof(struct icmphdr), + ((char *)icmp6_hdr) + sizeof(struct icmp6hdr), len_delta); + break; + default: + /* Unknown error messages. Silently drop. */ + PDEBUG("ip6_ip4(): unknown ICMPv6 Type %d, packet dropped.\n", icmp6_hdr->icmp6_type); + return -1; + } + + if (icmperr) + { + /* If ICMP Error message, we translate IP included packet*/ + if (len_delta >= sizeof(struct ipv6hdr)) + { + if((inc_opts_len = ip6_ip4((char *)icmp6_hdr + sizeof(struct icmp6hdr), len_delta, + (char *)icmp_hdr + sizeof(struct icmphdr), 1)) == -1) { + PDEBUG("ip6_ip4(): incorrect translation of ICMPv6 Error message, packet dropped\n"); + return -1; + } + /* correct IPv4 Total Len that = old Total Len + - Options Headers Len in included IP packet + - diffirence between IPv6 Header Len and IPv4 Header Len + */ + if (ntot_len != 0) + ip_hdr->tot_len = htons(ntot_len - inc_opts_len - IP4_IP6_HDR_DIFF); + real_len = real_len - inc_opts_len - IP4_IP6_HDR_DIFF; + } + else if (len_delta > 0) + { + /* May be it need set 0x0 to rest area in result IPv4 packet, + * but we copy rest data unchanged + */ + memcpy(((char *)icmp_hdr) + sizeof(struct icmphdr), + ((char *)icmp6_hdr) + sizeof(struct icmp6hdr), len_delta); + } + } + + /* Calculate IPv4 Header checksum */ + ip_hdr->check = 0; + ip_hdr->check = ip_fast_csum((unsigned char *)ip_hdr, ip_hdr->ihl); + + /* Calculate ICMPv4 checksum */ + if (ntot_len != 0) + { + icmp_hdr->checksum = 0; + icmp_hdr->checksum = ip_compute_csum((unsigned char *)icmp_hdr, ntohs(ip_hdr->tot_len) + - sizeof(struct iphdr)); + } + } + else + { + PDEBUG("ip6_ip4(): error length ICMP packet, packet dropped.\n"); + return -1; + } + + } + /* PROCESS TCP and UDP (and rest data) */ + + else { + real_len += len_delta; + /* we copy rest data to IPv4 packet without changing */ + memcpy(dst+sizeof(struct iphdr), src + sizeof(struct ipv6hdr) + opts_len, len_delta); + } + } + + if (include_flag) /* if it's included IP packet */ + return opts_len; /* return options headers length */ + else + return real_len; /* result packet len */ +} + +/* + * ip4_fragment(skb, len, hdr_len, dev, eth_h) + * to fragment original IPv4 packet if result IPv6 packet will be > 1280 + */ + +static int ip4_fragment(struct sk_buff *skb, int len, int hdr_len, struct net_device *dev, struct ethhdr *eth_h) +{ + struct sk_buff *skb2 = NULL; /* pointer to new struct sk_buff for transleded packet */ + char buff[FRAG_BUFF_SIZE+hdr_len]; /* buffer to form new fragment packet */ + char *cur_ptr = skb->data+hdr_len; /* pointter to current packet data with len = frag_len */ + struct iphdr *ih4 = (struct iphdr *) skb->data; + struct iphdr *new_ih4 = (struct iphdr *) buff; /* point to new IPv4 hdr */ + struct ethhdr *new_eth_h; /* point to ether hdr, need to set hard header data in fragment */ + int data_len = len - hdr_len; /* origin packet data len */ + int rest_len = data_len; /* rest data to fragment */ + int frag_len = 0; /* current fragment len */ + int last_frag = 0; /* last fragment flag, if = 1, it's last fragment */ + int flag_last_mf = 0; + __u16 new_id = 0; /* to generate identification field */ + __u16 frag_offset = 0; /* fragment offset */ + unsigned int csum; + unsigned short udp_len; + +#ifdef SIIT_DEBUG + printk("siit: it's DF == 0 and result IPv6 packet will be > 1280\n"); + siit_print_dump(skb->data, hdr_len, "siit: (orig) ipv4_hdr dump"); +#endif + + if ((ntohs(ih4->frag_off) & IP_MF) == 0 ) + /* it's a case we'll clear MF flag in our last packet */ + flag_last_mf = 1; + + if (ih4->protocol == IPPROTO_UDP) { + if ( (ntohs(ih4->frag_off) & IP_OFFSET) == 0) { + struct udphdr *udp_hdr = (struct udphdr *)((char *)ih4 + hdr_len); + if (!flag_last_mf) { + if (udp_hdr->check == 0) { + /* it's a first fragment with ZERO checksum and we drop packet */ + printk("siit: First fragment of UDP with zero checksum - packet droped\n"); + printk("siit: addr: %x src port: %d dst port: %d\n", + htonl(ih4->saddr), htons(udp_hdr->source), htons(udp_hdr->dest)); + return -1; + } + } + else if (udp_hdr->check == 0) { + /* Calculate UDP checksum only if it's not fragment */ + udp_len = ntohs(udp_hdr->len); + csum = 0; + csum = csum_partial((unsigned char *)udp_hdr, udp_len, csum); + udp_hdr->check = csum_tcpudp_magic(ih4->saddr, ih4->daddr, udp_len, IPPROTO_UDP, csum); + } + } + } + + frag_offset = ntohs(ih4->frag_off) & IP_OFFSET; + + new_id = ih4->id; + + while(1) { + if (rest_len <= FRAG_BUFF_SIZE) { + /* it's last fragmen */ + frag_len = rest_len; /* rest data */ + last_frag = 1; + } + else + frag_len = FRAG_BUFF_SIZE; + + /* copy IP header to buffer */ + memcpy(buff, skb->data, hdr_len); + /* copy data to buffer with len = frag_len */ + memcpy(buff + hdr_len, cur_ptr, frag_len); + + /* set id field in new IPv4 header*/ + new_ih4->id = new_id; + + /* is it last fragmet */ + if(last_frag && flag_last_mf) + /* clear MF flag */ + new_ih4->frag_off = htons(frag_offset & (~IP_MF)); + else + /* set MF flag */ + new_ih4->frag_off = htons(frag_offset | IP_MF); + + /* change packet total length */ + new_ih4->tot_len = htons(frag_len+hdr_len); + + /* rebuild the header checksum (IP needs it) */ + new_ih4->check = 0; + new_ih4->check = ip_fast_csum((unsigned char *)new_ih4,new_ih4->ihl); + + /* Allocate new sk_buff to compose translated packet */ + skb2 = dev_alloc_skb(frag_len+hdr_len+dev->hard_header_len+IP4_IP6_HDR_DIFF+IP6_FRAGMENT_SIZE); + if (!skb2) { + printk(KERN_DEBUG "%s: alloc_skb failure - packet dropped.\n", dev->name); + dev_kfree_skb(skb2); + return -1; + } + /* allocate skb->data portion for IP header len, fragment data len and ether header len + * and copy to head ether header from origin skb + */ + memcpy(skb_put(skb2, frag_len+hdr_len+dev->hard_header_len+IP4_IP6_HDR_DIFF+IP6_FRAGMENT_SIZE), (char *) eth_h, + dev->hard_header_len); + /* correct ether header data, ether protocol field to ETH_P_IPV6 */ + new_eth_h = (struct ethhdr *)skb2->data; + new_eth_h->h_proto = htons(ETH_P_IPV6); + + /* reset the mac header */ + skb_reset_mac_header(skb2); + + /* pull ether header from new skb->data */ + skb_pull(skb2, dev->hard_header_len); + /* set skb protocol to IPV6 */ + skb2->protocol = htons(ETH_P_IPV6); + + /* call translation function */ + if ( ip4_ip6(buff, frag_len+hdr_len, skb2->data, 0) == -1) { + dev_kfree_skb(skb2); + return -1; + } + + /* + * Set needed fields in new sk_buff + */ + skb2->dev = dev; + skb2->ip_summed = CHECKSUM_UNNECESSARY; + skb2->pkt_type = PACKET_HOST; + + /* Add transmit statistic */ + siit_stats(dev)->tx_packets++; + siit_stats(dev)->tx_bytes += skb2->len; + + /* send packet to upper layer */ + netif_rx(skb2); + + /* exit if it was last fragment */ + if (last_frag) + break; + + /* correct current data pointer */ + cur_ptr += frag_len; + /* rest data len */ + rest_len -= frag_len; + /* current fragment offset */ + frag_offset = (frag_offset*8 + frag_len)/8; + } + + return 0; +} +/* + * Transmit a packet (called by the kernel) + * + * siit_xmit(skb, dev) + * + * where + * skb - pointer to struct sk_buff with incomed packet + * dev - pointer to struct device on which packet revieved + * + * Statistic: + * for all incoming packes: + * stats.rx_bytes+=skb->len + * stats.rx_packets++ + * for packets we can't transle: + * stats.tx_errors++ + * device busy: + * stats.tx_errors++ + * for packets we can't allocate sk_buff: + * stats.tx_dropped++ + * for outgoing packes: + * stats.tx_packets++ + * stats.tx_bytes+=skb2->len !!! But we don't set skb2->len !!! + */ + +static int siit_xmit(struct sk_buff *skb, struct net_device *dev) +{ + struct sk_buff *skb2 = NULL;/* pointer to new struct sk_buff for transleded packet */ + struct ethhdr *eth_h; /* pointer to incoming Ether header */ + int len; /* original packets length */ + int new_packet_len; + int skb_delta = 0; /* delta size for allocate new skb */ + char new_packet_buff[2048]; + + /* Check pointer to sk_buff and device structs */ + if (skb == NULL || dev == NULL) + return -EINVAL; + + /* Add receive statistic */ + siit_stats(dev)->rx_bytes += skb->len; + siit_stats(dev)->rx_packets++; + + dev->trans_start = jiffies; + + /* Upper layer (IP) protocol forms sk_buff for outgoing packet + * and sets IP header + Ether header too. IP layer sets outgoing + * device in sk_buff->dev. + * In function (from linux/net/core/dev.c) ther is a call to + * device transmit function (dev->hard_start_xmit): + * + * dev_queue_xmit(struct sk_buff *skb) + * { + * ... + * device *dev = skb->dev; + * ... + * dev->hard_start_xmit(skb, dev); + * ... + * } + * We save pointer to ether header in eth_h and skb_pull ether header + * from data field of skb_buff + */ + + eth_h = (struct ethhdr *)skb->data; /* point to incoming packet Ether Header */ + +#ifdef SIIT_DEBUG + siit_print_dump(skb->data, ETH_HLEN, "siit: eth_hdr dump"); +#endif + + /* Remove hardware header from origin sk_buff */ + skb_pull(skb,dev->hard_header_len); + + /* + * Process IPv4 paket + */ + if (ntohs(skb->protocol) == ETH_P_IP) { + int hdr_len; /* IPv4 header length */ + int data_len; /* IPv4 data length */ + struct iphdr *ih4; /* pointer to IPv4 header */ + struct icmphdr *icmp_hdr; /* point to current ICMPv4 header struct */ + + ih4 = (struct iphdr *)skb->data; /* point to incoming packet's IPv4 header */ + + /* Check IPv4 Total Length */ + if (skb->len != ntohs(ih4->tot_len)) { + PDEBUG("siit_xmit(): Different skb_len %x and ip4 tot_len %x - packet dropped.\n", + skb->len, ih4->tot_len); + siit_stats(dev)->tx_errors++; + dev_kfree_skb(skb); + return 0; + } + + len = skb->len; /* packet's total len */ + hdr_len = (int)(ih4->ihl * 4); /* packet's header len */ + data_len = len - hdr_len; /* packet's data len */ + + /* If DF == 0 */ + if ( (ntohs(ih4->frag_off) & IP_DF) == 0 ) { + /* If result IPv6 packet will be > 1280 + we need to fragment original IPv4 packet + */ + if ( data_len > FRAG_BUFF_SIZE ) { + /* call function that fragment packet and translate to IPv6 each fragment + * and send to upper layer + */ + if ( ip4_fragment(skb, len, hdr_len, dev, eth_h) == -1) { + siit_stats(dev)->tx_errors++; + } + /* Free incoming skb */ + dev_kfree_skb(skb); + /* Device can accept a new packet */ + + return 0; + + } + } + /* If DF == 1 && MF == 0 && Fragment Offset == 0 + * we don't include fragment header + */ + if ( ntohs(ih4->frag_off) == IP_DF ) + skb_delta = IP4_IP6_HDR_DIFF; /* delta is +20 */ + else + skb_delta = IP4_IP6_HDR_DIFF + IP6_FRAGMENT_SIZE; /* delta is +20 and +8 */ + + /* If it's ICMP, check is it included IP packet in it */ + if ( ih4->protocol == IPPROTO_ICMP) { + icmp_hdr = (struct icmphdr *) (skb->data+hdr_len); /* point to ICMPv4 header */ + if ( icmp_hdr->type != ICMP_ECHO && icmp_hdr->type != ICMP_ECHOREPLY) { + /* + * It's ICMP Error that has included IP packet + * we'll add only +20 because we don't include Fragment Header + * into translated included IP packet + */ + skb_delta += IP4_IP6_HDR_DIFF; + } + } + + /* Allocate new sk_buff to compose translated packet */ + skb2 = dev_alloc_skb(len+dev->hard_header_len+skb_delta); + if (!skb2) { + printk(KERN_DEBUG "%s: alloc_skb failure - packet dropped.\n", dev->name); + dev_kfree_skb(skb); + siit_stats(dev)->rx_dropped++; + + return 0; + } + /* allocate skb->data portion = IPv4 packet len + ether header len + * + skb_delta (max = two times (diffirence between IPv4 header and + * IPv6 header + Frag Header), second for included packet, + * and copy to head of skb->data ether header from origin skb + */ + memcpy(skb_put(skb2, len+dev->hard_header_len+skb_delta), (char *)eth_h, dev->hard_header_len); + /* correct ether header data, ether protocol field to ETH_P_IPV6 */ + eth_h = (struct ethhdr *)skb2->data; + eth_h->h_proto = htons(ETH_P_IPV6); + skb_reset_mac_header(skb2); + /* remove ether header from new skb->data, + * NOTE! data will rest, pointer to data and data len will change + */ + skb_pull(skb2,dev->hard_header_len); + /* set skb protocol to IPV6 */ + skb2->protocol = htons(ETH_P_IPV6); + + /* call translation function */ + if (ip4_ip6(skb->data, len, skb2->data, 0) == -1 ) { + dev_kfree_skb(skb); + dev_kfree_skb(skb2); + siit_stats(dev)->rx_errors++; + + return 0; + } + } + /* + * IPv6 paket + */ + else if (ntohs(skb->protocol) == ETH_P_IPV6) { + +#ifdef SIIT_DEBUG + siit_print_dump(skb->data, sizeof(struct ipv6hdr), "siit: (in) ip6_hdr dump"); +#endif + /* packet len = skb->data len*/ + len = skb->len; + + /* call translation function */ + if ((new_packet_len = ip6_ip4(skb->data, len, new_packet_buff, 0)) == -1 ) + { + PDEBUG("siit_xmit(): error translation ipv6->ipv4, packet dropped.\n"); + siit_stats(dev)->rx_dropped++; + goto end; + } + + /* Allocate new sk_buff to compose translated packet */ + skb2 = dev_alloc_skb(new_packet_len + dev->hard_header_len); + if (!skb2) { + printk(KERN_DEBUG "%s: alloc_skb failure, packet dropped.\n", dev->name); + siit_stats(dev)->rx_dropped++; + goto end; + } + memcpy(skb_put(skb2, new_packet_len + dev->hard_header_len), (char *)eth_h, dev->hard_header_len); + eth_h = (struct ethhdr *)skb2->data; + eth_h->h_proto = htons(ETH_P_IP); + skb_reset_mac_header(skb2); + skb_pull(skb2, dev->hard_header_len); + memcpy(skb2->data, new_packet_buff, new_packet_len); + skb2->protocol = htons(ETH_P_IP); + } + else { + PDEBUG("siit_xmit(): unsupported protocol family %x, packet dropped.\n", skb->protocol); + goto end; + } + + /* + * Set needed fields in new sk_buff + */ + skb2->pkt_type = PACKET_HOST; + skb2->dev = dev; + skb2->ip_summed = CHECKSUM_UNNECESSARY; + + /* Add transmit statistic */ + siit_stats(dev)->tx_packets++; + siit_stats(dev)->tx_bytes += skb2->len; + + /* Send packet to upper layer protocol */ + netif_rx(skb2); + +end: + dev_kfree_skb(skb); + + return 0; +} + +static bool header_ops_init = false; +static struct header_ops siit_header_ops ____cacheline_aligned; + +static const struct net_device_ops siit_netdev_ops = { + .ndo_open = siit_open, + .ndo_stop = siit_release, + .ndo_start_xmit = siit_xmit, +}; + +/* + * The init function initialize of the SIIT device.. + * It is invoked by register_netdev() + */ + +static void +siit_init(struct net_device *dev) +{ + ether_setup(dev); /* assign some of the fields */ + random_ether_addr(dev->dev_addr); + + /* + * Assign device function. + */ + dev->netdev_ops = &siit_netdev_ops; + dev->flags |= IFF_NOARP; /* ARP not used */ + dev->tx_queue_len = 10; + + if (!header_ops_init) { + memcpy(&siit_header_ops, dev->header_ops, sizeof(struct header_ops)); + siit_header_ops.cache = NULL; + } + dev->header_ops = &siit_header_ops; +} + +/* + * Finally, the module stuff + */ +static struct net_device *siit_dev = NULL; + +int init_module(void) +{ + int res = -ENOMEM; + int priv_size; + + priv_size = sizeof(struct header_ops); +#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,17,0) + siit_dev = alloc_netdev(priv_size, "siit%d", NET_NAME_UNKNOWN, siit_init); +#else + siit_dev = alloc_netdev(priv_size, "siit%d", siit_init); +#endif + if (!siit_dev) + goto err_alloc; + + res = register_netdev(siit_dev); + if (res) + goto err_register; + + return 0; + +err_register: + free_netdev(siit_dev); +err_alloc: + printk(KERN_ERR "Error creating siit device: %d\n", res); + return res; +} + +void cleanup_module(void) +{ + unregister_netdev(siit_dev); + free_netdev(siit_dev); +} + +MODULE_LICENSE("GPL"); diff --git a/net/siit/src/siit.h b/net/siit/src/siit.h new file mode 100644 index 000000000..47cf77645 --- /dev/null +++ b/net/siit/src/siit.h @@ -0,0 +1,61 @@ +/* + * siit.h -- definitions for the SIIT module + * + * + */ + +/* + * Constants + */ + +/* SIIT_ETH control the name of SIIT interface: + * 0 - interface name is siit0, + * 1 - interface name is ethX. + */ +#define SIIT_ETH 0 + +#define BUFF_SIZE 4096 +#define FRAG_BUFF_SIZE 1232 /* IPv6 max fragment size without IPv6 header + * to fragmanet IPv4 if result IPv6 packet will be > 1280 + */ + +#define TRANSLATED_PREFIX 0x0000ffff /* third byte in IPv4-translated addr prefix */ +#define MAPPED_PREFIX 0x0000ffff /* third byte in IPv4-mapped addr prefix */ + +#define IP4_IP6_HDR_DIFF 20 /* diffirence between IPv4 and IPv6 headers */ +#define IP6_FRAGMENT_SIZE 8 /* size of Fragment Header */ + +/* IPv6 header fields masks */ +#define IP6F_OFF_MASK 0xfff8 /* mask out offset from frag_off */ +#define IP6F_RESERVED_MASK 0x0006 /* reserved bits in frag_off */ +#define IP6F_MORE_FRAG 0x0001 /* more-fragments flag */ + + + +/* + * Macros to help debugging + */ + +#undef PDEBUG /* undef it, just in case */ +#ifdef SIIT_DEBUG +# ifdef __KERNEL__ + /* This one if debugging is on, and kernel space */ +# define PDEBUG(fmt, args...) printk(KERN_DEBUG "siit: " fmt, ## args) +# else + /* This one for user space */ +# define PDEBUG(fmt, args...) fprintf(stderr, fmt, ## args) +# endif +#else +# define PDEBUG(fmt, args...) /* not debugging: nothing */ +#endif + +#undef PDEBUGG +#define PDEBUGG(fmt, args...) + + + + + + + + From c8d867b96a989cafa58fa1eac99d041b40282b5a Mon Sep 17 00:00:00 2001 From: Alexander Ryzhov Date: Thu, 23 Apr 2015 09:26:57 +0000 Subject: [PATCH 284/681] bzip2: respect LDFLAGS Signed-off-by: Alexander Ryzhov --- utils/bzip2/Makefile | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/utils/bzip2/Makefile b/utils/bzip2/Makefile index bf5bcf822..493ccc931 100644 --- a/utils/bzip2/Makefile +++ b/utils/bzip2/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=bzip2 PKG_VERSION:=1.0.6 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://www.bzip.org/$(PKG_VERSION) @@ -52,13 +52,15 @@ define Package/bzip2/description data compressor. This package provides the binary. endef -TARGET_CFLAGS += $(FPIC) +TARGET_CFLAGS += \ + $(FPIC) \ + $(TARGET_LDFLAGS) + CONFIGURE_ARGS += --prefix=/usr MAKE_FLAGS += \ -f Makefile-libbz2_so \ CFLAGS="$(TARGET_CFLAGS)" \ - LDFLAGS="$(TARGET_LDLAGS)" \ all define Build/InstallDev From acae17897ff519141204402d1f67a8c7a6cd7dd7 Mon Sep 17 00:00:00 2001 From: Alexander Ryzhov Date: Thu, 23 Apr 2015 10:00:34 +0000 Subject: [PATCH 285/681] gnutls: fix compilation with external toolchain Signed-off-by: Alexander Ryzhov --- libs/gnutls/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libs/gnutls/Makefile b/libs/gnutls/Makefile index e5cbdbd98..ea8aa53d0 100644 --- a/libs/gnutls/Makefile +++ b/libs/gnutls/Makefile @@ -127,7 +127,7 @@ CONFIGURE_ARGS+= \ --enable-openssl-compatibility \ --with-default-trust-store-dir=/etc/ssl/certs/ \ --disable-crywrap \ - --with-librt-prefix="$(STAGING_DIR)/" + --with-librt-prefix="$(LIBRT_ROOT_DIR)/" ifneq ($(CONFIG_GNUTLS_EXT_LIBTASN1),y) CONFIGURE_ARGS += --with-included-libtasn1 From fbbb525012bf7edeff46716e50c91e7f75606eae Mon Sep 17 00:00:00 2001 From: Alexander Ryzhov Date: Thu, 23 Apr 2015 11:02:58 +0000 Subject: [PATCH 286/681] luaexpat: fix LDFLAGS Signed-off-by: Alexander Ryzhov --- lang/luaexpat/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lang/luaexpat/Makefile b/lang/luaexpat/Makefile index 6b73254d6..3c2f23180 100644 --- a/lang/luaexpat/Makefile +++ b/lang/luaexpat/Makefile @@ -41,7 +41,7 @@ define Build/Compile LUA_INC="-I$(STAGING_DIR)/usr/include/" \ LUA_LIBDIR="$(STAGING_DIR)/usr/lib/" \ COMPAT_DIR="$(PKG_BUILD_DIR)/compat-5.1r5" \ - LIB_OPTION="-shared $(TARGET_LDFLAGS)" \ + LDFLAGS="-shared $(TARGET_LDFLAGS)" \ CC="$(TARGET_CC) $(TARGET_CFLAGS) $(FPIC) -std=c99" \ LD="$(TARGET_CROSS)ld -shared" endef From 1637dcbf9915a5a646a46cc46be135a6ca675fa7 Mon Sep 17 00:00:00 2001 From: Ted Hess Date: Thu, 23 Apr 2015 14:29:37 -0400 Subject: [PATCH 287/681] avrdude: move from oldpackages, update to latest version & build opts Signed-off-by: Ted Hess --- utils/avrdude/Makefile | 54 +++++++++++++++++++ .../patches/010-configure-fixups.patch | 18 +++++++ 2 files changed, 72 insertions(+) create mode 100644 utils/avrdude/Makefile create mode 100644 utils/avrdude/patches/010-configure-fixups.patch diff --git a/utils/avrdude/Makefile b/utils/avrdude/Makefile new file mode 100644 index 000000000..97db6f74c --- /dev/null +++ b/utils/avrdude/Makefile @@ -0,0 +1,54 @@ +# +# Copyright (C) 2008-2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=avrdude +PKG_VERSION:=6.1 +PKG_RELEASE:=1 + +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz +PKG_SOURCE_URL:=http://download.savannah.gnu.org/releases/avrdude +PKG_MD5SUM:=9db8c25b935d34234b9b1ba16ad55fd5 + +PKG_MAINTAINER:=Ted Hess +PKG_LICENSE:=GPL-2.0 +PKG_LICENSE_FILES:=COPYING + +PKG_FIXUP:=autoreconf +PKG_INSTALL:=1 + +include $(INCLUDE_DIR)/package.mk + +define Package/avrdude + SECTION:=utils + CATEGORY:=Utilities + TITLE:=AVR Downloader/UploaDEr + URL:=http://www.nongnu.org/avrdude/ + DEPENDS:=+libncurses +libreadline +libusb-compat +libftdi1 +endef + +define Package/avrdude/description + AVRDUDE is a full featured program for programming Atmel's AVR CPU's. +endef + +CONFIGURE_ARGS+= \ + --disable-doc \ + --disable-parport \ + +define Package/avrdude/conffiles +/etc/avrdude.conf +endef + +define Package/avrdude/install + $(INSTALL_DIR) $(1)/etc + $(INSTALL_CONF) $(PKG_INSTALL_DIR)/etc/avrdude.conf $(1)/etc/ + $(INSTALL_DIR) $(1)/usr/bin + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/avrdude $(1)/usr/bin/ +endef + +$(eval $(call BuildPackage,avrdude)) diff --git a/utils/avrdude/patches/010-configure-fixups.patch b/utils/avrdude/patches/010-configure-fixups.patch new file mode 100644 index 000000000..b945ecbeb --- /dev/null +++ b/utils/avrdude/patches/010-configure-fixups.patch @@ -0,0 +1,18 @@ +--- a/configure.ac ++++ b/configure.ac +@@ -35,6 +35,7 @@ AC_CONFIG_HEADERS(ac_cfg.h) + + # Checks for programs. + AC_PROG_CC ++AC_PROG_CPP + AC_PROG_INSTALL + AC_PROG_SED + AC_PROG_YACC +@@ -183,6 +184,7 @@ fi + AC_SUBST(LIBPTHREAD, $LIBPTHREAD) + # Checks for header files. + AC_CHECK_HEADERS([limits.h stdlib.h string.h]) ++AC_CHECK_HEADERS([inttypes.h stdint.h]) + AC_CHECK_HEADERS([fcntl.h sys/ioctl.h sys/time.h termios.h unistd.h]) + AC_CHECK_HEADERS([ddk/hidsdi.h],,,[#include + #include ]) From df4b2cb6fd6fb653c6c98f115d4b404bd6db1697 Mon Sep 17 00:00:00 2001 From: Ted Hess Date: Thu, 23 Apr 2015 15:23:16 -0400 Subject: [PATCH 288/681] README: Add clarification of this repository's relation to OpenWrt buildroot Signed-off-by: Ted Hess --- README.md | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index dd33d776b..930b6f0dd 100644 --- a/README.md +++ b/README.md @@ -2,10 +2,14 @@ ## Description -This is the OpenWrt "packages"-feed containing community-maintained packages. +This is the OpenWrt "packages"-feed containing community-maintained build scripts, options and patches for applications, modules and libraries used within OpenWrt. + +Installation of pre-built packages is handled directly by the **opkg** utility within your running OpenWrt system or by using the [OpenWrt SDK](http://doc/howto/obtain.firmware.sdk) on a build system. ## Usage +This repository is intended to be layered on-top of an OpenWrt buildroot. If you do not have an OpenWrt buildroot installed, see the documentation at: [OpenWrt Buildroot – Installation](http://wiki.openwrt.org/doc/howto/buildroot.exigence) on the OpenWrt support site. + This feed is enabled by default. To install all its package definitions, run: ``` ./scripts/feeds update packages From c3a822ef3d79bda29dfd70b99e2d7600355b8df2 Mon Sep 17 00:00:00 2001 From: Nicolas Thill Date: Fri, 24 Apr 2015 02:32:47 +0200 Subject: [PATCH 289/681] ffmpeg: disable lzma explicitly Signed-off-by: Nicolas Thill --- multimedia/ffmpeg/Makefile | 1 + 1 file changed, 1 insertion(+) diff --git a/multimedia/ffmpeg/Makefile b/multimedia/ffmpeg/Makefile index 4d146c246..1d5553e4e 100644 --- a/multimedia/ffmpeg/Makefile +++ b/multimedia/ffmpeg/Makefile @@ -395,6 +395,7 @@ FFMPEG_CONFIGURE:= \ --disable-mipsfpu \ \ --disable-dxva2 \ + --disable-lzma \ --disable-vaapi \ --disable-vda \ --disable-vdpau \ From e95ae524f7ae50bbad2b27f717c2f91108c25dc4 Mon Sep 17 00:00:00 2001 From: claymore Date: Fri, 24 Apr 2015 03:06:57 +0100 Subject: [PATCH 290/681] Added patch for Boost.Build Unfortunatly, due to changes in Boost, Boost.Build for version 1.58.0 requires a patch for gcc.jam. This patch prevents bjam from adding -m32 and -m64 options to gcc compiler, when compiling for targets that use the mips1 arch. Patch initially provided by paalsteek (https://github.com/paalsteek) Bug discussed here: https://github.com/openwrt/packages/issues/1160 Signed-off-by: Carlos M. Ferreira carlosmf.pt@gmail.com --- libs/boost/patches/001-mips-options-fix.patch | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 libs/boost/patches/001-mips-options-fix.patch diff --git a/libs/boost/patches/001-mips-options-fix.patch b/libs/boost/patches/001-mips-options-fix.patch new file mode 100644 index 000000000..b32f44792 --- /dev/null +++ b/libs/boost/patches/001-mips-options-fix.patch @@ -0,0 +1,11 @@ +--- boost_1_58_0/tools/build/src/tools/gcc.jam 2015-04-23 12:01:37.723438995 +0200 ++++ boost_1_58_0/tools/build/src/tools/gcc.jam 2015-04-23 12:00:21.427441384 +0200 +@@ -451,7 +451,7 @@ + else + { + local arch = [ feature.get-values architecture : $(properties) ] ; +- if $(arch) != arm ++ if $(arch) != arm && $(arch) != mips1 + { + if $(model) = 32 + { From aceacb4de067bff05a8da1f8066b2209b9c8b196 Mon Sep 17 00:00:00 2001 From: Alexandru Ardelean Date: Fri, 24 Apr 2015 13:04:56 +0300 Subject: [PATCH 291/681] python3: add python3-package-lzma.mk Signed-off-by: Alexandru Ardelean --- lang/python3/files/python3-package-lzma.mk | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) create mode 100644 lang/python3/files/python3-package-lzma.mk diff --git a/lang/python3/files/python3-package-lzma.mk b/lang/python3/files/python3-package-lzma.mk new file mode 100644 index 000000000..b04f072f9 --- /dev/null +++ b/lang/python3/files/python3-package-lzma.mk @@ -0,0 +1,17 @@ +# +# Copyright (C) 2006-2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +define Package/python3-lzma +$(call Package/python3/Default) + TITLE:=Python $(PYTHON3_VERSION) lzma module + DEPENDS:=+python3-light +liblzma +endef + +$(eval $(call Py3BasePackage,python3-lzma, \ + /usr/lib/python$(PYTHON3_VERSION)/lzma.py \ + /usr/lib/python$(PYTHON3_VERSION)/lib-dynload/_lzma.$(PYTHON3_SO_SUFFIX) \ +)) From 17a51b7b8614bb5e86b037dca2589fcaa3c957a3 Mon Sep 17 00:00:00 2001 From: Michael Haas Date: Fri, 17 Apr 2015 11:57:00 +0200 Subject: [PATCH 292/681] wifidog: Bring back Wifidog at 1.2.1 This commit brings back Wifidog from the oldpackages repository. Changes: * Wifidog version 1.2.1 * Add wifidog-tls package * Init script uses procd Signed-off-by: Michael Haas --- net/wifidog/Makefile | 103 +++++++++++++++++++++++++++++++++ net/wifidog/files/wifidog.init | 22 +++++++ 2 files changed, 125 insertions(+) create mode 100644 net/wifidog/Makefile create mode 100644 net/wifidog/files/wifidog.init diff --git a/net/wifidog/Makefile b/net/wifidog/Makefile new file mode 100644 index 000000000..ade7606c3 --- /dev/null +++ b/net/wifidog/Makefile @@ -0,0 +1,103 @@ +# +# Copyright (C) 2006,2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=wifidog +PKG_VERSION:=1.2.1 +PKG_RELEASE=1 + + +PKG_LICENSE:=GPL-2.0 +# Note: Packaging is maintained upstream at +# https://github.com/wifidog/packages +PKG_MAINTAINER:=Michael Haas +PKG_LICENSE_FILES:=COPYING + + +PKG_SOURCE_PROTO:=git +PKG_SOURCE_URL:=git://github.com/wifidog/wifidog-gateway.git +PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) +PKG_SOURCE_VERSION:=1.2.1 +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.gz + +PKG_FIXUP:=autoreconf +# do not run make install +PKG_INSTALL:=0 +PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/$(PKG_NAME)-$(PKG_VERSION) + +include $(INCLUDE_DIR)/package.mk + +define Package/wifidog/Default + SUBMENU:=Captive Portals + SECTION:=net + CATEGORY:=Network + DEPENDS:=+iptables-mod-extra +iptables-mod-ipopt +iptables-mod-nat-extra +libpthread + TITLE:=A wireless captive portal solution + URL:=http://www.wifidog.org +endef + +define Package/wifidog +$(call Package/wifidog/Default) + VARIANT:=normal +endef + +define Package/wifidog-tls +$(call Package/wifidog/Default) + DEPENDS+= +libcyassl + VARIANT:=tls +endef + + +define Package/wifidog/description + The Wifidog project is a complete and embeddable captive + portal solution for wireless community groups or individuals + who wish to open a free Hotspot while still preventing abuse + of their Internet connection. +endef + +define Package/wifidog-tls/description +$(call Package/wifidog/description) + +This variant can talk TLS to the auth server. +endef + +define Package/wifidog/conffiles +/etc/wifidog.conf +endef + +Package/wifidog-tls/conffiles = $(Package/wifidog/conffiles) + + +define Package/wifidog/configure + $(call Build/Configure/Default) +endef + +ifeq ($(BUILD_VARIANT),tls) + +CONFIGURE_ARGS += \ + --enable-cyassl + +endif + +define Package/wifidog/install + $(INSTALL_DIR) $(1)/usr/bin + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/wifidog $(1)/usr/bin/ + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/wdctl $(1)/usr/bin/ + $(INSTALL_DIR) $(1)/usr/lib + $(CP) $(PKG_INSTALL_DIR)/usr/lib/libhttpd.so* $(1)/usr/lib/ + $(INSTALL_DIR) $(1)/etc + $(INSTALL_DATA) $(PKG_BUILD_DIR)/wifidog.conf $(1)/etc/ + $(INSTALL_DATA) $(PKG_BUILD_DIR)/wifidog-msg.html $(1)/etc/ + $(INSTALL_DIR) $(1)/etc/init.d + $(INSTALL_BIN) ./files/wifidog.init $(1)/etc/init.d/wifidog +endef + +Package/wifidog-tls/install = $(Package/wifidog/install) + +$(eval $(call BuildPackage,wifidog)) +$(eval $(call BuildPackage,wifidog-tls)) diff --git a/net/wifidog/files/wifidog.init b/net/wifidog/files/wifidog.init new file mode 100644 index 000000000..6ebf64fbc --- /dev/null +++ b/net/wifidog/files/wifidog.init @@ -0,0 +1,22 @@ +#!/bin/sh /etc/rc.common +# Copyright (C) 2006 OpenWrt.org +START=65 + +USE_PROCD=1 + +EXTRA_COMMANDS="status" +EXTRA_HELP=" status Print the status of the service" + +start_service() { + procd_open_instance + # -s: log to syslog + # -f: run in foreground + procd_set_param command /usr/bin/wifidog -s -f + procd_set_param respawn # respawn automatically if something died + procd_set_param file /etc/wifidog.conf + procd_close_instance +} + +status() { + /usr/bin/wdctl status +} From fea9189e89482915969e0e07bfa30c2350c377a8 Mon Sep 17 00:00:00 2001 From: Paul Fertser Date: Fri, 24 Apr 2015 19:27:15 +0300 Subject: [PATCH 293/681] openocd: update to 0.9.0-rc1 Signed-off-by: Paul Fertser --- utils/openocd/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/utils/openocd/Makefile b/utils/openocd/Makefile index aadd3e2f3..9f86330d4 100644 --- a/utils/openocd/Makefile +++ b/utils/openocd/Makefile @@ -8,8 +8,8 @@ include $(TOPDIR)/rules.mk PKG_NAME:=openocd -PKG_VERSION:=v0.8.0-258-gd537cfa -PKG_RELEASE:=2 +PKG_VERSION:=v0.9.0-rc1 +PKG_RELEASE:=1 PKG_SOURCE_PROTO:=git PKG_SOURCE_URL:=git://git.code.sf.net/p/openocd/code From 612e1a2aaf8c802cdf7b2233692a16515242e734 Mon Sep 17 00:00:00 2001 From: Peter Wagner Date: Fri, 24 Apr 2015 20:29:42 +0200 Subject: [PATCH 294/681] pulseaudio: fix libjson dependency Signed-off-by: Peter Wagner --- sound/pulseaudio/Makefile | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/sound/pulseaudio/Makefile b/sound/pulseaudio/Makefile index 23a8c80d1..a4a449b7c 100644 --- a/sound/pulseaudio/Makefile +++ b/sound/pulseaudio/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=pulseaudio PKG_VERSION:=6.0 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=http://freedesktop.org/software/pulseaudio/releases/ @@ -27,12 +27,11 @@ PKG_INSTALL = 1 include $(INCLUDE_DIR)/package.mk include $(INCLUDE_DIR)/nls.mk -#TODO: split pulse into executable and library (or even better into several libraries since they're used as loadable modules, so not linked into) define Package/pulseaudio/Default SECTION:=sound CATEGORY:=Sound DEPENDS:=+libspeexdsp +libsndfile +libltdl +libpthread \ - +librt +alsa-lib +libjson +libopenssl +libwrap +libcap $(ICONV_DEPENDS) $(INTL_DEPENDS) + +librt +alsa-lib +libopenssl +libwrap +libcap $(ICONV_DEPENDS) $(INTL_DEPENDS) TITLE:=Network sound server MAINTAINER:=Peter Wagner URL:=http://www.pulseaudio.org @@ -42,7 +41,7 @@ endef define Package/pulseaudio-daemon $(call Package/pulseaudio/Default) - DEPENDS+=+libjson-c + DEPENDS+= +libjson-c endef define Package/pulseaudio/Default/description @@ -63,7 +62,7 @@ endef define Package/pulseaudio-tools SECTION:=sound CATEGORY:=Sound - DEPENDS:=+libsndfile pulseaudio + DEPENDS:=+libsndfile +pulseaudio TITLE:=Tools for Pulseaudio URL:=http://www.pulseaudio.org endef From f5cc8c27d74b0603eb4fda5052f2a47e199fa1e6 Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Sat, 25 Apr 2015 23:34:05 +0200 Subject: [PATCH 295/681] lvm2: fix build with musl stdin, stderr and stdout are constants on musl and it doesn't provide mallinfo. Both, overwriting std* were used to catch and work around various misbehaviours of glibc, so it's hopefully save to just skip them when building against other libc implementations. Signed-off-by: Daniel Golle --- utils/lvm2/patches/002-const-stdio.patch | 58 ++++++++++++++++++++++++ utils/lvm2/patches/003-no-mallinfo.patch | 13 ++++++ 2 files changed, 71 insertions(+) create mode 100644 utils/lvm2/patches/002-const-stdio.patch create mode 100644 utils/lvm2/patches/003-no-mallinfo.patch diff --git a/utils/lvm2/patches/002-const-stdio.patch b/utils/lvm2/patches/002-const-stdio.patch new file mode 100644 index 000000000..15c2e8650 --- /dev/null +++ b/utils/lvm2/patches/002-const-stdio.patch @@ -0,0 +1,58 @@ +Index: LVM2.2.02.118/lib/commands/toolcontext.c +=================================================================== +--- LVM2.2.02.118.orig/lib/commands/toolcontext.c ++++ LVM2.2.02.118/lib/commands/toolcontext.c +@@ -1625,8 +1625,10 @@ struct cmd_context *create_toolcontext(u + unsigned threaded) + { + struct cmd_context *cmd; ++#if defined(__GLIBC__) && !defined(VALGRIND_POOL) + FILE *new_stream; + int flags; ++#endif + + #ifdef M_MMAP_MAX + mallopt(M_MMAP_MAX, 0); +@@ -1662,7 +1664,7 @@ struct cmd_context *create_toolcontext(u + /* FIXME Make this configurable? */ + reset_lvm_errno(1); + +-#ifndef VALGRIND_POOL ++#if defined(__GLIBC__) && !defined(VALGRIND_POOL) + /* Set in/out stream buffering before glibc */ + if (set_buffering) { + /* Allocate 2 buffers */ +@@ -2035,7 +2037,7 @@ void destroy_toolcontext(struct cmd_cont + if (cmd->libmem) + dm_pool_destroy(cmd->libmem); + +-#ifndef VALGRIND_POOL ++#if defined(__GLIBC__) && !defined(VALGRIND_POOL) + if (cmd->linebuffer) { + /* Reset stream buffering to defaults */ + if (is_valid_fd(STDIN_FILENO) && +Index: LVM2.2.02.118/tools/lvmcmdline.c +=================================================================== +--- LVM2.2.02.118.orig/tools/lvmcmdline.c ++++ LVM2.2.02.118/tools/lvmcmdline.c +@@ -1602,6 +1602,7 @@ int lvm_split(char *str, int *argc, char + /* Make sure we have always valid filedescriptors 0,1,2 */ + static int _check_standard_fds(void) + { ++#ifdef __GLIBC__ + int err = is_valid_fd(STDERR_FILENO); + + if (!is_valid_fd(STDIN_FILENO) && +@@ -1628,6 +1629,12 @@ static int _check_standard_fds(void) + strerror(errno)); + return 0; + } ++#else ++ if (!is_valid_fd(STDERR_FILENO) || ++ !is_valid_fd(STDOUT_FILENO) || ++ !is_valid_fd(STDIN_FILENO)) ++ return 0; ++#endif + + return 1; + } diff --git a/utils/lvm2/patches/003-no-mallinfo.patch b/utils/lvm2/patches/003-no-mallinfo.patch new file mode 100644 index 000000000..13372362d --- /dev/null +++ b/utils/lvm2/patches/003-no-mallinfo.patch @@ -0,0 +1,13 @@ +Index: LVM2.2.02.118/lib/mm/memlock.c +=================================================================== +--- LVM2.2.02.118.orig/lib/mm/memlock.c ++++ LVM2.2.02.118/lib/mm/memlock.c +@@ -137,7 +137,7 @@ static void _touch_memory(void *mem, siz + + static void _allocate_memory(void) + { +-#ifndef VALGRIND_POOL ++#if defined(__GLIBC__) && !defined(VALGRIND_POOL) + void *stack_mem; + struct rlimit limit; + int i, area = 0, missing = _size_malloc_tmp, max_areas = 32, hblks; From 899724bd35ea190c81710e06d22dc30b7981416b Mon Sep 17 00:00:00 2001 From: Nikos Mavrogiannopoulos Date: Sun, 26 Apr 2015 02:19:44 +0200 Subject: [PATCH 296/681] ocserv: updated to 0.10.3 Signed-off-by: Nikos Mavrogiannopoulos --- net/ocserv/Makefile | 4 +- ...t-impose-timeouts-on-reads-from-main.patch | 104 ------------------ .../002-reject-bad-commands-from-main.patch | 34 ------ 3 files changed, 2 insertions(+), 140 deletions(-) delete mode 100644 net/ocserv/patches/001-sec-mod-do-not-impose-timeouts-on-reads-from-main.patch delete mode 100644 net/ocserv/patches/002-reject-bad-commands-from-main.patch diff --git a/net/ocserv/Makefile b/net/ocserv/Makefile index 050fdc74d..00bc39ae6 100644 --- a/net/ocserv/Makefile +++ b/net/ocserv/Makefile @@ -8,13 +8,13 @@ include $(TOPDIR)/rules.mk PKG_NAME:=ocserv -PKG_VERSION:=0.10.2 +PKG_VERSION:=0.10.3 PKG_RELEASE:=1 PKG_BUILD_DIR :=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION) PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=ftp://ftp.infradead.org/pub/ocserv/ -PKG_MD5SUM:=32ce2c2a00a97ab7c27e571aae207b2d +PKG_MD5SUM:=36c947a4e37484487844dc1c977ca870 PKG_LICENSE:=GPLv2 PKG_LICENSE_FILES:=COPYING diff --git a/net/ocserv/patches/001-sec-mod-do-not-impose-timeouts-on-reads-from-main.patch b/net/ocserv/patches/001-sec-mod-do-not-impose-timeouts-on-reads-from-main.patch deleted file mode 100644 index 0d3d2219d..000000000 --- a/net/ocserv/patches/001-sec-mod-do-not-impose-timeouts-on-reads-from-main.patch +++ /dev/null @@ -1,104 +0,0 @@ -From 0967f05f8d7665a67f3cb0fbed46c48dc7ec74cb Mon Sep 17 00:00:00 2001 -From: Nikos Mavrogiannopoulos -Date: Tue, 31 Mar 2015 10:13:08 +0200 -Subject: [PATCH] sec-mod: do not impose timeouts on reads from main - ---- - src/sec-mod.c | 60 ++++++++++++++++++++++++++++++++++++++++++++++++++++------- - 1 file changed, 53 insertions(+), 7 deletions(-) - -diff --git a/src/sec-mod.c b/src/sec-mod.c -index b824e87..5a0763d 100644 ---- a/src/sec-mod.c -+++ b/src/sec-mod.c -@@ -404,7 +404,56 @@ static void check_other_work(sec_mod_st *sec) - } - - static --int serve_request(sec_mod_st *sec, int cfd, unsigned is_main, uint8_t *buffer, unsigned buffer_size) -+int serve_request_main(sec_mod_st *sec, int cfd, uint8_t *buffer, unsigned buffer_size) -+{ -+ int ret, e; -+ unsigned cmd, length; -+ uint16_t l16; -+ void *pool = buffer; -+ -+ /* read request */ -+ ret = force_read(cfd, buffer, 3); -+ if (ret == 0) -+ goto leave; -+ else if (ret < 3) { -+ e = errno; -+ seclog(sec, LOG_INFO, "error receiving msg head: %s", -+ strerror(e)); -+ ret = ERR_BAD_COMMAND; -+ goto leave; -+ } -+ -+ cmd = buffer[0]; -+ memcpy(&l16, &buffer[1], 2); -+ length = l16; -+ -+ if (length > buffer_size - 4) { -+ seclog(sec, LOG_INFO, "too big message (%d)", length); -+ ret = ERR_BAD_COMMAND; -+ goto leave; -+ } -+ -+ /* read the body */ -+ ret = force_read(cfd, buffer, length); -+ if (ret < 0) { -+ e = errno; -+ seclog(sec, LOG_INFO, "error receiving msg body: %s", -+ strerror(e)); -+ ret = ERR_BAD_COMMAND; -+ goto leave; -+ } -+ -+ ret = process_packet_from_main(pool, cfd, sec, cmd, buffer, ret); -+ if (ret < 0) { -+ seclog(sec, LOG_INFO, "error processing data for '%s' command (%d)", cmd_request_to_str(cmd), ret); -+ } -+ -+ leave: -+ return ret; -+} -+ -+static -+int serve_request(sec_mod_st *sec, int cfd, uint8_t *buffer, unsigned buffer_size) - { - int ret, e; - unsigned cmd, length; -@@ -443,10 +492,7 @@ int serve_request(sec_mod_st *sec, int cfd, unsigned is_main, uint8_t *buffer, u - goto leave; - } - -- if (is_main) -- ret = process_packet_from_main(pool, cfd, sec, cmd, buffer, ret); -- else -- ret = process_packet(pool, cfd, sec, cmd, buffer, ret); -+ ret = process_packet(pool, cfd, sec, cmd, buffer, ret); - if (ret < 0) { - seclog(sec, LOG_INFO, "error processing data for '%s' command (%d)", cmd_request_to_str(cmd), ret); - } -@@ -677,7 +723,7 @@ void sec_mod_server(void *main_pool, struct perm_cfg_st *perm_config, const char - if (buffer == NULL) { - seclog(sec, LOG_ERR, "error in memory allocation"); - } else { -- ret = serve_request(sec, cmd_fd, 1, buffer, buffer_size); -+ ret = serve_request_main(sec, cmd_fd, buffer, buffer_size); - if (ret < 0 && ret == ERR_BAD_COMMAND) { - seclog(sec, LOG_ERR, "error processing command from main"); - exit(1); -@@ -710,7 +756,7 @@ void sec_mod_server(void *main_pool, struct perm_cfg_st *perm_config, const char - if (buffer == NULL) { - seclog(sec, LOG_ERR, "error in memory allocation"); - } else { -- serve_request(sec, cfd, 0, buffer, buffer_size); -+ serve_request(sec, cfd, buffer, buffer_size); - talloc_free(buffer); - } - } --- -2.1.4 - diff --git a/net/ocserv/patches/002-reject-bad-commands-from-main.patch b/net/ocserv/patches/002-reject-bad-commands-from-main.patch deleted file mode 100644 index b3e72d3dc..000000000 --- a/net/ocserv/patches/002-reject-bad-commands-from-main.patch +++ /dev/null @@ -1,34 +0,0 @@ -From 99dd4a6e03b669a5b5fe234fa665b75bbd95c593 Mon Sep 17 00:00:00 2001 -From: Nikos Mavrogiannopoulos -Date: Tue, 7 Apr 2015 17:13:29 +0200 -Subject: [PATCH] reject bad commands from main - ---- - src/sec-mod.c | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/src/sec-mod.c b/src/sec-mod.c -index 5a0763d..7783264 100644 ---- a/src/sec-mod.c -+++ b/src/sec-mod.c -@@ -325,7 +325,7 @@ int process_packet_from_main(void *pool, int cfd, sec_mod_st * sec, cmd_request_ - data.data); - if (msg == NULL) { - seclog(sec, LOG_INFO, "error unpacking auth ban ip reply\n"); -- return -1; -+ return ERR_BAD_COMMAND; - } - - handle_sec_auth_ban_ip_reply(cfd, sec, msg); -@@ -342,7 +342,7 @@ int process_packet_from_main(void *pool, int cfd, sec_mod_st * sec, cmd_request_ - data.data); - if (msg == NULL) { - seclog(sec, LOG_INFO, "error unpacking session close\n"); -- return -1; -+ return ERR_BAD_COMMAND; - } - - ret = handle_sec_auth_session_cmd(cfd, sec, msg, cmd); --- -2.1.4 - From 731dfa63d74427143c9c7c014186e75394b2eb70 Mon Sep 17 00:00:00 2001 From: Nicolas Thill Date: Sun, 26 Apr 2015 18:41:33 +0200 Subject: [PATCH 297/681] oggfwd: add new package A basic icecast client that is very simple but also very useful for video streaming. Signed-off-by: Nicolas Thill --- multimedia/oggfwd/Makefile | 50 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 multimedia/oggfwd/Makefile diff --git a/multimedia/oggfwd/Makefile b/multimedia/oggfwd/Makefile new file mode 100644 index 000000000..8caf7f1ac --- /dev/null +++ b/multimedia/oggfwd/Makefile @@ -0,0 +1,50 @@ +# +# Copyright (C) 2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=oggfwd +PKG_REV:=506088e5066abd086efc951670906187c120e9a3 +PKG_VERSION:=20150412 +PKG_RELEASE:=1 + +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz +PKG_SOURCE_URL:=git://r-w-x.org/oggfwd.git +PKG_SOURCE_PROTO:=git +PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) +PKG_SOURCE_VERSION:=$(PKG_REV) + +PKG_LICENSE:=GPL-2.0 +PKG_LICENSE_FILES:=LICENSE +PKG_MAINTAINER:=Nicolas Thill + +include $(INCLUDE_DIR)/package.mk + +define Package/oggfwd + SECTION:=multimedia + CATEGORY:=Multimedia + SUBMENU:=Streaming + TITLE:=Pipe media into icecast + URL:=http://www.v2v.cc/~j/oggfwd + DEPENDS:=+libpthread +libshout +endef + +define Package/oggfwd/description + A basic icecast client that is very simple but also very useful for video + streaming. +endef + +MAKE_FLAGS += \ + INCLUDEFLAGS="$(TARGET_LDFLAGS)" \ + LINKFLAGS="$(TARGET_LDFLAGS) -lshout" \ + +define Package/oggfwd/install + $(INSTALL_DIR) $(1)/usr/bin + $(INSTALL_BIN) $(PKG_BUILD_DIR)/oggfwd $(1)/usr/bin/ +endef + +$(eval $(call BuildPackage,oggfwd)) From 9828cf1ea1e56cc77a2ee3f67688a0ef926fffa0 Mon Sep 17 00:00:00 2001 From: Nicolas Thill Date: Sun, 26 Apr 2015 18:34:54 +0200 Subject: [PATCH 298/681] ffmpeg: add icecast transport Signed-off-by: Nicolas Thill --- multimedia/ffmpeg/Config.in | 4 ++++ multimedia/ffmpeg/Makefile | 6 +++--- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/multimedia/ffmpeg/Config.in b/multimedia/ffmpeg/Config.in index c01498778..71c30d1ba 100644 --- a/multimedia/ffmpeg/Config.in +++ b/multimedia/ffmpeg/Config.in @@ -406,6 +406,10 @@ config FFMPEG_CUSTOM_PROTOCOL_file config FFMPEG_CUSTOM_PROTOCOL_http bool "http:" +config FFMPEG_CUSTOM_PROTOCOL_icecast + bool "icecast:" + select FFMPEG_CUSTOM_PROTOCOL_http + config FFMPEG_CUSTOM_PROTOCOL_pipe bool "pipe:" diff --git a/multimedia/ffmpeg/Makefile b/multimedia/ffmpeg/Makefile index 1d5553e4e..9fd40113b 100644 --- a/multimedia/ffmpeg/Makefile +++ b/multimedia/ffmpeg/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=ffmpeg PKG_VERSION:=2.5.5 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 PKG_SOURCE_URL:=http://ffmpeg.org/releases/ @@ -108,7 +108,7 @@ FFMPEG_CUSTOM_PARSERS:= \ mpegvideo \ FFMPEG_CUSTOM_PROTOCOLS:= \ - file http pipe rtp tcp udp + file http icecast pipe rtp tcp udp FFMPEG_MINI_DECODERS:= \ aac \ @@ -202,7 +202,7 @@ FFMPEG_AUDIO_PARSERS:= \ mpegaudio \ FFMPEG_AUDIO_PROTOCOLS:= \ - file http rtp tcp udp + file http icecast rtp tcp udp PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/$(PKG_NAME)-$(PKG_VERSION) From 4c399f28fd8656c5467ec8967dcb111cb640ab22 Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Sun, 26 Apr 2015 19:43:26 +0200 Subject: [PATCH 299/681] freeradius2: update to version 2.2.7 and refresh patches Signed-off-by: Daniel Golle --- net/freeradius2/Makefile | 4 +- .../patches/001-fix-makefile.patch | 6 +- net/freeradius2/patches/002-config.patch | 103 +++++++++++------- .../patches/004-ldap_configure.patch | 12 +- .../patches/008-honor_ccpflags.patch | 6 +- .../patches/010-disbale-openssl-check.patch | 8 +- 6 files changed, 87 insertions(+), 52 deletions(-) diff --git a/net/freeradius2/Makefile b/net/freeradius2/Makefile index 1f1d86dce..ac0c1b04b 100644 --- a/net/freeradius2/Makefile +++ b/net/freeradius2/Makefile @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=freeradius2 -PKG_VERSION:=2.2.6 +PKG_VERSION:=2.2.7 PKG_RELEASE:=1 PKG_SOURCE:=freeradius-server-$(PKG_VERSION).tar.bz2 PKG_SOURCE_URL:=ftp://ftp.freeradius.org/pub/freeradius/ -PKG_MD5SUM:=e9a6f9bbee9706b008b924061ab3f915 +PKG_MD5SUM:=b84b9ffa1ac9b20b2643e5a08ac483a1 PKG_MAINTAINER:=Daniel Golle PKG_LICENSE:=GPL-2.0 PKG_LICENSE_FILES:=COPYRIGHT LICENSE diff --git a/net/freeradius2/patches/001-fix-makefile.patch b/net/freeradius2/patches/001-fix-makefile.patch index 2daaec823..676f99cd1 100644 --- a/net/freeradius2/patches/001-fix-makefile.patch +++ b/net/freeradius2/patches/001-fix-makefile.patch @@ -1,5 +1,7 @@ ---- a/Make.inc.in -+++ b/Make.inc.in +Index: freeradius-server-2.2.7/Make.inc.in +=================================================================== +--- freeradius-server-2.2.7.orig/Make.inc.in ++++ freeradius-server-2.2.7/Make.inc.in @@ -5,6 +5,7 @@ # diff --git a/net/freeradius2/patches/002-config.patch b/net/freeradius2/patches/002-config.patch index 8794345fa..c486389b8 100644 --- a/net/freeradius2/patches/002-config.patch +++ b/net/freeradius2/patches/002-config.patch @@ -1,5 +1,7 @@ ---- a/raddb/dictionary.in -+++ b/raddb/dictionary.in +Index: freeradius-server-2.2.7/raddb/dictionary.in +=================================================================== +--- freeradius-server-2.2.7.orig/raddb/dictionary.in ++++ freeradius-server-2.2.7/raddb/dictionary.in @@ -11,7 +11,7 @@ # # The filename given here should be an absolute path. @@ -9,8 +11,10 @@ # # Place additional attributes or $INCLUDEs here. They will ---- a/raddb/eap.conf -+++ b/raddb/eap.conf +Index: freeradius-server-2.2.7/raddb/eap.conf +=================================================================== +--- freeradius-server-2.2.7.orig/raddb/eap.conf ++++ freeradius-server-2.2.7/raddb/eap.conf @@ -27,7 +27,7 @@ # then that EAP type takes precedence over the # default type configured here. @@ -206,8 +210,10 @@ # This option enables support for MS-SoH # see doc/SoH.txt for more info. ---- a/raddb/modules/counter -+++ b/raddb/modules/counter +Index: freeradius-server-2.2.7/raddb/modules/counter +=================================================================== +--- freeradius-server-2.2.7.orig/raddb/modules/counter ++++ freeradius-server-2.2.7/raddb/modules/counter @@ -69,7 +69,7 @@ # 'check-name' attribute. # @@ -217,8 +223,10 @@ key = User-Name count-attribute = Acct-Session-Time reset = daily ---- a/raddb/modules/pap -+++ b/raddb/modules/pap +Index: freeradius-server-2.2.7/raddb/modules/pap +=================================================================== +--- freeradius-server-2.2.7.orig/raddb/modules/pap ++++ freeradius-server-2.2.7/raddb/modules/pap @@ -18,5 +18,5 @@ # # http://www.openldap.org/faq/data/cache/347.html @@ -226,8 +234,10 @@ - auto_header = no + auto_header = yes } ---- a/raddb/modules/radutmp -+++ b/raddb/modules/radutmp +Index: freeradius-server-2.2.7/raddb/modules/radutmp +=================================================================== +--- freeradius-server-2.2.7.orig/raddb/modules/radutmp ++++ freeradius-server-2.2.7/raddb/modules/radutmp @@ -12,7 +12,7 @@ radutmp { # Where the file is stored. It's not a log file, # so it doesn't need rotating. @@ -237,8 +247,10 @@ # The field in the packet to key on for the # 'user' name, If you have other fields which you want ---- a/raddb/modules/sradutmp -+++ b/raddb/modules/sradutmp +Index: freeradius-server-2.2.7/raddb/modules/sradutmp +=================================================================== +--- freeradius-server-2.2.7.orig/raddb/modules/sradutmp ++++ freeradius-server-2.2.7/raddb/modules/sradutmp @@ -10,7 +10,7 @@ # then name "sradutmp" to identify it later in the "accounting" # section. @@ -248,8 +260,10 @@ perm = 0644 callerid = "no" } ---- a/raddb/radiusd.conf.in -+++ b/raddb/radiusd.conf.in +Index: freeradius-server-2.2.7/raddb/radiusd.conf.in +=================================================================== +--- freeradius-server-2.2.7.orig/raddb/radiusd.conf.in ++++ freeradius-server-2.2.7/raddb/radiusd.conf.in @@ -66,7 +66,7 @@ name = radiusd # Location of config and logfiles. @@ -277,7 +291,7 @@ # clients = per_socket_clients } -@@ -584,8 +584,8 @@ security { +@@ -576,8 +576,8 @@ security { # # allowed values: {no, yes} # @@ -288,7 +302,7 @@ # CLIENTS CONFIGURATION -@@ -782,7 +782,7 @@ instantiate { +@@ -774,7 +774,7 @@ instantiate { # The entire command line (and output) must fit into 253 bytes. # # e.g. Framed-Pool = `%{exec:/bin/echo foo}` @@ -297,7 +311,7 @@ # # The expression module doesn't do authorization, -@@ -799,15 +799,15 @@ instantiate { +@@ -791,15 +791,15 @@ instantiate { # other xlat functions such as md5, sha1 and lc. # # We do not recommend removing it's listing here. @@ -316,7 +330,7 @@ # subsections here can be thought of as "virtual" modules. # -@@ -831,7 +831,7 @@ instantiate { +@@ -823,7 +823,7 @@ instantiate { # to multiple times. # ###################################################################### @@ -325,7 +339,7 @@ ###################################################################### # -@@ -841,9 +841,9 @@ $INCLUDE policy.conf +@@ -833,9 +833,9 @@ $INCLUDE policy.conf # match the regular expression: /[a-zA-Z0-9_.]+/ # # It allows you to define new virtual servers simply by placing @@ -337,7 +351,7 @@ ###################################################################### # -@@ -851,7 +851,7 @@ $INCLUDE sites-enabled/ +@@ -843,7 +843,7 @@ $INCLUDE sites-enabled/ # "authenticate {}", "accounting {}", have been moved to the # the file: # @@ -346,8 +360,10 @@ # # This is the "default" virtual server that has the same # configuration as in version 1.0.x and 1.1.x. The default ---- a/raddb/sites-available/default -+++ b/raddb/sites-available/default +Index: freeradius-server-2.2.7/raddb/sites-available/default +=================================================================== +--- freeradius-server-2.2.7.orig/raddb/sites-available/default ++++ freeradius-server-2.2.7/raddb/sites-available/default @@ -85,7 +85,7 @@ authorize { # # It takes care of processing the 'raddb/hints' and the @@ -391,7 +407,7 @@ # ntdomain # -@@ -195,8 +195,8 @@ authorize { +@@ -197,8 +197,8 @@ authorize { # Use the checkval module # checkval @@ -402,7 +418,7 @@ # # If no other module has claimed responsibility for -@@ -277,7 +277,7 @@ authenticate { +@@ -279,7 +279,7 @@ authenticate { # If you have a Cisco SIP server authenticating against # FreeRADIUS, uncomment the following line, and the 'digest' # line in the 'authorize' section. @@ -411,7 +427,7 @@ # # Pluggable Authentication Modules. -@@ -294,7 +294,7 @@ authenticate { +@@ -296,7 +296,7 @@ authenticate { # be used for authentication ONLY for compatibility with legacy # FreeRADIUS configurations. # @@ -420,7 +436,7 @@ # Uncomment it if you want to use ldap for authentication # -@@ -330,8 +330,8 @@ authenticate { +@@ -332,8 +332,8 @@ authenticate { # # Pre-accounting. Decide which accounting type to use. # @@ -431,7 +447,7 @@ # # Session start times are *implied* in RADIUS. -@@ -354,7 +354,7 @@ preacct { +@@ -356,7 +356,7 @@ preacct { # # Ensure that we have a semi-unique identifier for every # request, and many NAS boxes are broken. @@ -440,7 +456,7 @@ # # Look for IPASS-style 'realm/', and if not found, look for -@@ -364,13 +364,13 @@ preacct { +@@ -366,13 +366,13 @@ preacct { # Accounting requests are generally proxied to the same # home server as authentication requests. # IPASS @@ -457,7 +473,7 @@ # # Accounting. Log the accounting data. -@@ -380,7 +380,7 @@ accounting { +@@ -382,7 +382,7 @@ accounting { # Create a 'detail'ed log of the packets. # Note that accounting requests which are proxied # are also logged in the detail file. @@ -466,7 +482,7 @@ # daily # Update the wtmp file -@@ -432,7 +432,7 @@ accounting { +@@ -434,7 +434,7 @@ accounting { exec # Filter attributes from the accounting response. @@ -475,7 +491,7 @@ # # See "Autz-Type Status-Server" for how this works. -@@ -458,7 +458,7 @@ session { +@@ -460,7 +460,7 @@ session { # Post-Authentication # Once we KNOW that the user has been authenticated, there are # additional steps we can take. @@ -484,7 +500,7 @@ # Get an address from the IP Pool. # main_pool -@@ -488,7 +488,7 @@ post-auth { +@@ -490,7 +490,7 @@ post-auth { # ldap # For Exec-Program and Exec-Program-Wait @@ -493,7 +509,7 @@ # # Calculate the various WiMAX keys. In order for this to work, -@@ -572,12 +572,12 @@ post-auth { +@@ -574,18 +574,18 @@ post-auth { # Add the ldap module name (or instance) if you have set # 'edir_account_policy_check = yes' in the ldap module configuration # @@ -502,6 +518,13 @@ +# Post-Auth-Type REJECT { +# # log failed authentications in SQL, too. # sql + + # Insert EAP-Failure message if the request was + # rejected by policy instead of because of an + # authentication failure +- eap ++# eap + - attr_filter.access_reject - } -} @@ -511,7 +534,7 @@ # # When the server decides to proxy a request to a home server, -@@ -587,7 +587,7 @@ post-auth { +@@ -595,7 +595,7 @@ post-auth { # # Only a few modules currently have this method. # @@ -520,7 +543,7 @@ # attr_rewrite # Uncomment the following line if you want to change attributes -@@ -603,14 +603,14 @@ pre-proxy { +@@ -611,14 +611,14 @@ pre-proxy { # server, un-comment the following line, and the # 'detail pre_proxy_log' section, above. # pre_proxy_log @@ -537,7 +560,7 @@ # If you want to have a log of replies from a home server, # un-comment the following line, and the 'detail post_proxy_log' -@@ -634,7 +634,7 @@ post-proxy { +@@ -642,7 +642,7 @@ post-proxy { # hidden inside of the EAP packet, and the end server will # reject the EAP request. # @@ -546,15 +569,17 @@ # # If the server tries to proxy a request and fails, then the -@@ -656,5 +656,5 @@ post-proxy { +@@ -664,5 +664,5 @@ post-proxy { # Post-Proxy-Type Fail { # detail # } -} +#} ---- a/raddb/users -+++ b/raddb/users +Index: freeradius-server-2.2.7/raddb/users +=================================================================== +--- freeradius-server-2.2.7.orig/raddb/users ++++ freeradius-server-2.2.7/raddb/users @@ -169,22 +169,22 @@ # by the terminal server in which case there may not be a "P" suffix. # The terminal server sends "Framed-Protocol = PPP" for auto PPP. diff --git a/net/freeradius2/patches/004-ldap_configure.patch b/net/freeradius2/patches/004-ldap_configure.patch index 7f3e24017..05b6789b3 100644 --- a/net/freeradius2/patches/004-ldap_configure.patch +++ b/net/freeradius2/patches/004-ldap_configure.patch @@ -1,5 +1,7 @@ ---- a/src/modules/rlm_ldap/configure -+++ b/src/modules/rlm_ldap/configure +Index: freeradius-server-2.2.7/src/modules/rlm_ldap/configure +=================================================================== +--- freeradius-server-2.2.7.orig/src/modules/rlm_ldap/configure ++++ freeradius-server-2.2.7/src/modules/rlm_ldap/configure @@ -1,10 +1,10 @@ #! /bin/sh # From configure.in Revision. @@ -4239,8 +4241,10 @@ +fi ---- a/src/modules/rlm_ldap/configure.in -+++ b/src/modules/rlm_ldap/configure.in +Index: freeradius-server-2.2.7/src/modules/rlm_ldap/configure.in +=================================================================== +--- freeradius-server-2.2.7.orig/src/modules/rlm_ldap/configure.in ++++ freeradius-server-2.2.7/src/modules/rlm_ldap/configure.in @@ -87,6 +87,9 @@ if test x$with_[]modname != xno; then ) fi diff --git a/net/freeradius2/patches/008-honor_ccpflags.patch b/net/freeradius2/patches/008-honor_ccpflags.patch index 086e71723..7e6d81e04 100644 --- a/net/freeradius2/patches/008-honor_ccpflags.patch +++ b/net/freeradius2/patches/008-honor_ccpflags.patch @@ -1,5 +1,7 @@ ---- a/src/modules/rules.mak -+++ b/src/modules/rules.mak +Index: freeradius-server-2.2.7/src/modules/rules.mak +=================================================================== +--- freeradius-server-2.2.7.orig/src/modules/rules.mak ++++ freeradius-server-2.2.7/src/modules/rules.mak @@ -63,10 +63,10 @@ $(LT_OBJS): $(SERVER_HEADERS) # ####################################################################### diff --git a/net/freeradius2/patches/010-disbale-openssl-check.patch b/net/freeradius2/patches/010-disbale-openssl-check.patch index c254912d4..483221dbc 100644 --- a/net/freeradius2/patches/010-disbale-openssl-check.patch +++ b/net/freeradius2/patches/010-disbale-openssl-check.patch @@ -1,6 +1,8 @@ ---- a/configure.in -+++ b/configure.in -@@ -796,35 +796,6 @@ if test "x$WITH_OPENSSL" = xyes; then +Index: freeradius-server-2.2.7/configure.in +=================================================================== +--- freeradius-server-2.2.7.orig/configure.in ++++ freeradius-server-2.2.7/configure.in +@@ -820,35 +820,6 @@ if test "x$WITH_OPENSSL" = xyes; then OPENSSL_INCLUDE="-DOPENSSL_NO_KRB5" fi From 3a1ce331c3bcb01e9249208f199b30cd59d12a7f Mon Sep 17 00:00:00 2001 From: Nicolas Thill Date: Sun, 26 Apr 2015 22:48:51 +0200 Subject: [PATCH 300/681] msmtp: update to 1.6.2 Signed-off-by: Nicolas Thill --- mail/msmtp/Makefile | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/mail/msmtp/Makefile b/mail/msmtp/Makefile index 8c91a95b0..9a29f5ce0 100644 --- a/mail/msmtp/Makefile +++ b/mail/msmtp/Makefile @@ -9,12 +9,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=msmtp -PKG_VERSION:=1.6.1 -PKG_RELEASE:=3 +PKG_VERSION:=1.6.2 +PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=@SF/msmtp -PKG_MD5SUM:=6ebba4809bbc665b8a665a018d1a5ee1 +PKG_MD5SUM:=3baca93c7e5f1aa9d36a2e5b38739ab9 PKG_LICENSE:=GPL-3.0+ PKG_LICENSE_FILES:=COPYING From 03a638e0026699690c9f102f0c2004359c47353e Mon Sep 17 00:00:00 2001 From: Nikos Mavrogiannopoulos Date: Sun, 26 Apr 2015 17:22:23 +0200 Subject: [PATCH 301/681] ocserv: corrected session expiration in sec-mod Signed-off-by: Nikos Mavrogiannopoulos --- net/ocserv/Makefile | 2 +- .../001-correct-session-expiration.patch | 22 +++++++++++++++++++ 2 files changed, 23 insertions(+), 1 deletion(-) create mode 100644 net/ocserv/patches/001-correct-session-expiration.patch diff --git a/net/ocserv/Makefile b/net/ocserv/Makefile index 00bc39ae6..3d382c97a 100644 --- a/net/ocserv/Makefile +++ b/net/ocserv/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=ocserv PKG_VERSION:=0.10.3 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_BUILD_DIR :=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION) PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz diff --git a/net/ocserv/patches/001-correct-session-expiration.patch b/net/ocserv/patches/001-correct-session-expiration.patch new file mode 100644 index 000000000..b0c596b05 --- /dev/null +++ b/net/ocserv/patches/001-correct-session-expiration.patch @@ -0,0 +1,22 @@ +diff --git a/src/sec-mod-auth.c b/src/sec-mod-auth.c +index 4ee6f57..2fc02b5 100644 +--- a/src/sec-mod-auth.c ++++ b/src/sec-mod-auth.c +@@ -500,7 +500,7 @@ int handle_sec_auth_session_close(int cfd, sec_mod_st *sec, const SecAuthSession + (pack_func) cli_stats_msg__pack); + } + +- if (e->status != PS_AUTH_COMPLETED) { ++ if (e->status < PS_AUTH_COMPLETED) { + seclog(sec, LOG_DEBUG, "session close received in unauthenticated client %s "SESSION_STR"!", e->auth_info.username, e->auth_info.psid); + return send_msg(e, cfd, SM_CMD_AUTH_CLI_STATS, &rep, + (pack_size_func) cli_stats_msg__get_packed_size, +@@ -604,7 +604,7 @@ int handle_sec_auth_stats_cmd(sec_mod_st * sec, const CliStatsMsg * req) + e->stats.uptime = req->uptime; + + if (req->has_invalidate_cookie && req->invalidate_cookie != 0) { +- seclog(sec, LOG_INFO, "invalidating session user '%s' "SESSION_STR, ++ seclog(sec, LOG_INFO, "invalidating session of user '%s' "SESSION_STR, + e->auth_info.username, e->auth_info.psid); + e->status = PS_AUTH_USER_TERM; + } From b3817517526a39d5062dfb58e961eb15a5fbe853 Mon Sep 17 00:00:00 2001 From: Dirk Chang Date: Mon, 27 Apr 2015 20:34:27 +0800 Subject: [PATCH 302/681] Added a few lua modules (lpeg, md5, cjson, copas, coxpcall, lzlib, rings, rs232, wsapi, xavante, lzmq, mobdebug), zeromq Signed-off-by: Dirk Chang --- lang/lpeg/Makefile | 48 ++++++++++ lang/lua-cjson/Makefile | 50 ++++++++++ lang/lua-copas/Makefile | 62 ++++++++++++ lang/lua-copas/patches/makefile.patch | 15 +++ lang/lua-coxpcall/Makefile | 59 ++++++++++++ lang/lua-coxpcall/patches/config.patch | 4 + lang/lua-lzlib/Makefile | 49 ++++++++++ lang/lua-md5/Makefile | 75 +++++++++++++++ lang/lua-md5/patches/config.patch | 19 ++++ lang/lua-md5/patches/makefile.patch | 10 ++ lang/lua-mobdebug/Makefile | 56 +++++++++++ lang/lua-rings/Makefile | 54 +++++++++++ lang/lua-rings/patches/config.patch | 28 ++++++ lang/lua-rings/patches/makefile.patch | 11 +++ lang/lua-rs232/Makefile | 62 ++++++++++++ lang/lua-wsapi/Makefile | 95 +++++++++++++++++++ lang/lua-xavante/Makefile | 58 +++++++++++ lang/lzmq/Makefile | 48 ++++++++++ libs/zmq/Makefile | 81 ++++++++++++++++ ...sable_pedantic_on_linux_with_ulibc++.patch | 14 +++ .../streamoff_missing_with_ulibc++.patch | 10 ++ libs/zmq/patches/tools_gcc_fix.patch | 10 ++ 22 files changed, 918 insertions(+) create mode 100644 lang/lpeg/Makefile create mode 100644 lang/lua-cjson/Makefile create mode 100644 lang/lua-copas/Makefile create mode 100644 lang/lua-copas/patches/makefile.patch create mode 100644 lang/lua-coxpcall/Makefile create mode 100644 lang/lua-coxpcall/patches/config.patch create mode 100644 lang/lua-lzlib/Makefile create mode 100644 lang/lua-md5/Makefile create mode 100644 lang/lua-md5/patches/config.patch create mode 100644 lang/lua-md5/patches/makefile.patch create mode 100644 lang/lua-mobdebug/Makefile create mode 100644 lang/lua-rings/Makefile create mode 100644 lang/lua-rings/patches/config.patch create mode 100644 lang/lua-rings/patches/makefile.patch create mode 100644 lang/lua-rs232/Makefile create mode 100644 lang/lua-wsapi/Makefile create mode 100644 lang/lua-xavante/Makefile create mode 100644 lang/lzmq/Makefile create mode 100644 libs/zmq/Makefile create mode 100644 libs/zmq/patches/disable_pedantic_on_linux_with_ulibc++.patch create mode 100644 libs/zmq/patches/streamoff_missing_with_ulibc++.patch create mode 100644 libs/zmq/patches/tools_gcc_fix.patch diff --git a/lang/lpeg/Makefile b/lang/lpeg/Makefile new file mode 100644 index 000000000..ee8a4ef1f --- /dev/null +++ b/lang/lpeg/Makefile @@ -0,0 +1,48 @@ +# +# Copyright (C) 2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=lpeg +PKG_VERSION:=0.12.2 +PKG_RELEASE:=1 +PKG_MAINTAINER:=Dirk Chang +PKG_LICENSE:=MIT + +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz +PKG_SOURCE_URL:=http://www.inf.puc-rio.br/~roberto/lpeg/ +PKG_MD5SUM:=fabb614eb46e370d4f6b8fd82d17ca7e + +PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION) + +include $(INCLUDE_DIR)/package.mk + +define Package/lpeg + SUBMENU:=Lua + SECTION:=lang + CATEGORY:=Languages + TITLE:=LPeg + URL:=http://www.inf.puc-rio.br/~roberto/lpeg/ + DEPENDS:=+lua +endef + +define Package/lpeg/description + LPeg is a new pattern-matching library for Lua, based on Parsing Expression Grammars (PEGs) +endef + +define Build/Configure +endef + +# add make variable overrides here +MAKE_FLAGS += + +define Package/lpeg/install + $(INSTALL_DIR) $(1)/usr/lib/lua + $(INSTALL_BIN) $(PKG_BUILD_DIR)/lpeg.so $(1)/usr/lib/lua +endef + +$(eval $(call BuildPackage,lpeg)) diff --git a/lang/lua-cjson/Makefile b/lang/lua-cjson/Makefile new file mode 100644 index 000000000..fd489f2b4 --- /dev/null +++ b/lang/lua-cjson/Makefile @@ -0,0 +1,50 @@ +# +# Copyright (C) 2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=lua-cjson +PKG_VERSION:=2.1.0 +PKG_RELEASE:=1 +PKG_MAINTAINER:=Dirk Chang +PKG_LICENSE:=MIT +PKG_LICENSE_FILES:=LICENSE + +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz +PKG_SOURCE_URL:=http://www.kyne.com.au/~mark/software/download/ +PKG_MD5SUM:=24f270663e9f6ca8ba2a02cef19f7963 + +PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION) + +include $(INCLUDE_DIR)/package.mk +include $(INCLUDE_DIR)/cmake.mk + +define Package/lua-cjson + SUBMENU:=Lua + SECTION:=lang + CATEGORY:=Languages + TITLE:=Lua CJSON parser + URL:=https://github.com/mpx/lua-cjson + DEPENDS:= +lua +libzmq +endef + +define Package/lua-cjson/description + Lua CJSON is a fast JSON encoding/parsing module for Lua. +endef + +CMAKE_OPTIONS += \ + -DUSE_LUA=ON + +define Package/lua-cjson/install + $(INSTALL_DIR) $(1)/usr/lib/lua + $(INSTALL_BIN) $(PKG_BUILD_DIR)/cjson.so $(1)/usr/lib/lua/ + + $(INSTALL_DIR) $(1)/usr/lib/lua/cjson + $(INSTALL_DATA) $(PKG_BUILD_DIR)/lua/cjson/util.lua $(1)/usr/lib/lua/cjson +endef + +$(eval $(call BuildPackage,lua-cjson)) diff --git a/lang/lua-copas/Makefile b/lang/lua-copas/Makefile new file mode 100644 index 000000000..4f073e21f --- /dev/null +++ b/lang/lua-copas/Makefile @@ -0,0 +1,62 @@ +# +# Copyright (C) 2009-2013 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=lua-copas +PKG_VERSION:=2.0.0 +PKG_RELEASE:=1 +PKG_MAINTAINER:=Dirk Chang +PKG_LICENSE:=MIT + +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz +PKG_SOURCE_URL:=https://github.com/keplerproject/copas.git +PKG_SOURCE_PROTO:=git +PKG_SOURCE_VERSION:=f39a80add9f7c010ac979297652bbaaea0360a27 +PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) + +PKG_INSTALL:=1 + +include $(INCLUDE_DIR)/package.mk + +define Package/lua-copas + SUBMENU:=Lua + SECTION:=lang + CATEGORY:=Languages + TITLE:=Lua-Copas + URL:=https://github.com/keplerproject/copas + DEPENDS:=+lua +endef + +define Package/lua-copas/description + Copas is a dispatcher based on coroutines that can be used by TCP/IP servers. +endef + +define Build/Configure +endef + +define Build/Compile + $(MAKE) -C $(PKG_BUILD_DIR) \ + T="$(BUILD_VARIANT)" \ + PREFIX="$(PKG_INSTALL_DIR)/usr" \ + install +endef + +# add make variable overrides here +MAKE_FLAGS += + +define Package/lua-copas/install + $(INSTALL_DIR) $(1)/usr/lib/lua + $(INSTALL_DIR) $(1)/usr/lib/lua/copas + $(INSTALL_DATA) $(PKG_BUILD_DIR)/src/copas.lua $(1)/usr/lib/lua + $(INSTALL_DATA) $(PKG_BUILD_DIR)/src/copas/ftp.lua $(1)/usr/lib/lua/copas + $(INSTALL_DATA) $(PKG_BUILD_DIR)/src/copas/smtp.lua $(1)/usr/lib/lua/copas + $(INSTALL_DATA) $(PKG_BUILD_DIR)/src/copas/http.lua $(1)/usr/lib/lua/copas + $(INSTALL_DATA) $(PKG_BUILD_DIR)/src/copas/limit.lua $(1)/usr/lib/lua/copas +endef + +$(eval $(call BuildPackage,lua-copas)) diff --git a/lang/lua-copas/patches/makefile.patch b/lang/lua-copas/patches/makefile.patch new file mode 100644 index 000000000..10e473403 --- /dev/null +++ b/lang/lua-copas/patches/makefile.patch @@ -0,0 +1,15 @@ +--- lua-copas-1.2.1_org/Makefile 2014-06-04 16:39:17.451563827 +0800 ++++ lua-copas-1.2.1/Makefile 2014-06-04 16:39:41.115563309 +0800 +@@ -1,10 +1,10 @@ + # $Id: Makefile,v 1.3 2007/10/29 22:50:16 carregal Exp $ + + # Default prefix +-PREFIX = /usr/local ++PREFIX ?= $(DESTDIR)/usr + + # System's lua directory (where Lua libraries are installed) +-LUA_DIR= $(PREFIX)/share/lua/5.1 ++LUA_DIR= $(PREFIX)/lib/lua + + install: + mkdir -p $(LUA_DIR)/copas diff --git a/lang/lua-coxpcall/Makefile b/lang/lua-coxpcall/Makefile new file mode 100644 index 000000000..6ca3ff848 --- /dev/null +++ b/lang/lua-coxpcall/Makefile @@ -0,0 +1,59 @@ +# +# Copyright (C) 2009-2013 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=lua-coxpcall +PKG_VERSION:=1.15.0 +PKG_RELEASE:=1 +PKG_MAINTAINER:=Dirk Chang +PKG_LICENSE:=MIT + +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz +PKG_SOURCE_URL:=https://github.com/keplerproject/coxpcall.git +PKG_SOURCE_PROTO:=git +PKG_SOURCE_VERSION:=979257892884816c97391dfd7b0a7b30dcc8f479 +PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) + +PKG_INSTALL:=1 + +include $(INCLUDE_DIR)/package.mk + +define Package/lua-coxpcall + SUBMENU:=Lua + SECTION:=lang + CATEGORY:=Languages + TITLE:=Lua-Coxpcall + URL:=https://github.com/keplerproject/coxpcall + DEPENDS:=+lua +endef + +define Package/lua-coxpcall/description + Coxpcall encapsulates the protected calls with a coroutine based loop, + so errors can be dealed without the usual pcall/xpcall issues with coroutines. +endef + +TARGET_CFLAGS += $(FPIC) +# add make variable overrides here +MAKE_FLAGS += + +define Build/Configure +endef + +define Build/Compile + $(MAKE) -C $(PKG_BUILD_DIR) \ + T="$(BUILD_VARIANT)" \ + LUA_DIR="$(PKG_INSTALL_DIR)/usr/lib/lua" \ + install +endef + +define Package/lua-coxpcall/install + $(INSTALL_DIR) $(1)/usr/lib/lua + $(INSTALL_DATA) $(PKG_BUILD_DIR)/src/coxpcall.lua $(1)/usr/lib/lua +endef + +$(eval $(call BuildPackage,lua-coxpcall)) diff --git a/lang/lua-coxpcall/patches/config.patch b/lang/lua-coxpcall/patches/config.patch new file mode 100644 index 000000000..2a1dbfd99 --- /dev/null +++ b/lang/lua-coxpcall/patches/config.patch @@ -0,0 +1,4 @@ +--- lua-coxpcall-1.15.0_org/config 1970-01-01 08:00:00.000000000 +0800 ++++ lua-coxpcall-1.15.0/config 2014-06-04 16:51:55.487547258 +0800 +@@ -0,0 +1 @@ ++LUA_DIR ?=$(DESTDIR)/usr/lib/lua diff --git a/lang/lua-lzlib/Makefile b/lang/lua-lzlib/Makefile new file mode 100644 index 000000000..4b9468789 --- /dev/null +++ b/lang/lua-lzlib/Makefile @@ -0,0 +1,49 @@ +# +# Copyright (C) 2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=lua-lzlib +PKG_VERSION:=0.4.1 +PKG_RELEASE:=1 +PKG_MAINTAINER:=Dirk Chang +PKG_LICENSE:=MIT + +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz +PKG_SOURCE_URL:=https://github.com/LuaDist/lzlib.git +PKG_SOURCE_PROTO:=git +PKG_SOURCE_VERSION:=9fa3993bb4504fbbc10511cde141e1c6a48c072d +PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) + +PKG_INSTALL:=1 + +include $(INCLUDE_DIR)/package.mk + +define Package/lua-lzlib + SUBMENU:=Lua + SECTION:=lang + CATEGORY:=Languages + TITLE:=Lua zlib binding + URL:=http://github.com/LuaDist/lzlib + DEPENDS:= +lua +zlib +endef + +define Package/lua-lzlib/description + A library to access zlib library functions and also to read/write gzip files using an interface similar to the base io package. +endef + +define Build/Install +endef + +define Package/lua-lzlib/install + $(INSTALL_DIR) $(1)/usr/lib/lua + $(INSTALL_BIN) $(PKG_BUILD_DIR)/zlib.so $(1)/usr/lib/lua/ + + $(INSTALL_DATA) $(PKG_BUILD_DIR)/gzip.lua $(1)/usr/lib/lua/ +endef + +$(eval $(call BuildPackage,lua-lzlib)) diff --git a/lang/lua-md5/Makefile b/lang/lua-md5/Makefile new file mode 100644 index 000000000..36e0d9db9 --- /dev/null +++ b/lang/lua-md5/Makefile @@ -0,0 +1,75 @@ +# +# Copyright (C) 2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=lua-md5 +PKG_VERSION:=1.2 +PKG_RELEASE:=1 +PKG_MAINTAINER:=Dirk Chang +PKG_LICENSE:=MIT + +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz +PKG_SOURCE_URL:=https://github.com/keplerproject/md5.git +PKG_SOURCE_PROTO:=git +PKG_SOURCE_VERSION:=024b65738b4434860777fc43d7cacaefea29ec60 +PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) + +PKG_INSTALL:=1 + +include $(INCLUDE_DIR)/package.mk + +define Package/lua-md5 + SUBMENU:=Lua + SECTION:=lang + CATEGORY:=Languages + TITLE:=Lua-MD5 + URL:=https://github.com/keplerproject/md5 + DEPENDS:=+lua +endef + +define Package/lua-md5/description + MD5 offers basic cryptographic facilities for Lua +endef + +TARGET_CFLAGS += $(FPIC) + +# add make variable overrides here +MAKE_FLAGS += + +define Build/Configure +endef + +define Build/Compile + $(MAKE) -C $(PKG_BUILD_DIR) \ + PREFIX="$(STAGING_DIR)/usr" \ + LUA_LIBDIR="$(STAGING_DIR)/usr/lib/lua" \ + clean + $(MAKE) -C $(PKG_BUILD_DIR) \ + PREFIX="$(STAGING_DIR)/usr" \ + LUA_LIBDIR="$(STAGING_DIR)/usr/lib/lua" \ + LIB_OPTION="-shared" \ + CC="$(TARGET_CROSS)gcc" \ + CFLAGS="$(TARGET_CFLAGS) $(TARGET_CPPFLAGS)" \ + all +endef + +define Build/Install + $(MAKE) -C $(PKG_BUILD_DIR) \ + LUA_LIBDIR="$(PKG_INSTALL_DIR)/usr/lib/lua" \ + LUA_DIR="$(PKG_INSTALL_DIR)/usr/lib/lua" \ + install +endef + +define Package/lua-md5/install + $(INSTALL_DIR) $(1)/usr/lib/lua + $(INSTALL_DATA) $(PKG_BUILD_DIR)/src/md5.lua $(1)/usr/lib/lua + $(INSTALL_DIR) $(1)/usr/lib/lua/md5 + $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/core.so $(1)/usr/lib/lua/md5/core.so +endef + +$(eval $(call BuildPackage,lua-md5)) diff --git a/lang/lua-md5/patches/config.patch b/lang/lua-md5/patches/config.patch new file mode 100644 index 000000000..abea3a88c --- /dev/null +++ b/lang/lua-md5/patches/config.patch @@ -0,0 +1,19 @@ +--- lua-md5-1.2/config 2014-06-04 16:55:50.000000000 +0800 ++++ lua-md5-1.2_new/config 2014-06-04 16:57:54.223539416 +0800 +@@ -1,13 +1,13 @@ + # Installation directories + + # Default prefix +-PREFIX = /usr/local ++PREFIX = /usr + + # System's libraries directory (where binary libraries are installed) +-LUA_LIBDIR= $(PREFIX)/lib/lua/5.1 ++LUA_LIBDIR= $(PREFIX)/lib/lua + + # System's lua directory (where Lua libraries are installed) +-LUA_DIR= $(PREFIX)/share/lua/5.1 ++LUA_DIR= $(PREFIX)/lib/lua + + # Lua includes directory + LUA_INC= $(PREFIX)/include diff --git a/lang/lua-md5/patches/makefile.patch b/lang/lua-md5/patches/makefile.patch new file mode 100644 index 000000000..89a2e33cd --- /dev/null +++ b/lang/lua-md5/patches/makefile.patch @@ -0,0 +1,10 @@ +--- a/Makefile.orig 2014-06-04 17:16:40.083514808 +0800 ++++ b/Makefile 2014-06-04 17:17:27.111513780 +0800 +@@ -1,6 +1,6 @@ + # $Id: Makefile,v 1.7 2007/10/11 00:02:56 carregal Exp $ + +-CONFIG= ./config ++CFLAGS+= -fPIC + + include $(CONFIG) + diff --git a/lang/lua-mobdebug/Makefile b/lang/lua-mobdebug/Makefile new file mode 100644 index 000000000..3d11539d9 --- /dev/null +++ b/lang/lua-mobdebug/Makefile @@ -0,0 +1,56 @@ +# +# Copyright (C) 2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=lua-mobdebug +PKG_VERSION:=0.61 +PKG_RELEASE:=1 +PKG_MAINTAINER:=Dirk Chang +PKG_LICENSE:=MIT + +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz +PKG_SOURCE_URL:=https://github.com/pkulchenko/MobDebug.git +PKG_SOURCE_PROTO:=git +PKG_SOURCE_VERSION:=9a03aa59696647ba3b7f9ae2f29a9f28532a4feb +PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) + +PKG_INSTALL:=1 + +include $(INCLUDE_DIR)/package.mk + +define Package/lua-mobdebug + SUBMENU:=Lua + SECTION:=lang + CATEGORY:=Languages + TITLE:=Lua-MobDebug + URL:=https://github.com/pkulchenko/MobDebug + DEPENDS:=+lua +endef + +define Package/lua-mobdebug/description + MobDebug is a remote debugger for Lua (including Lua 5.1, Lua 5.2, Lua 5.3, and LuaJIT 2.x). +endef + +define Build/Configure +endef + +define Build/Compile +endef + +define Build/Install +endef + +# add make variable overrides here +MAKE_FLAGS += + +define Package/lua-mobdebug/install + $(INSTALL_DIR) $(1)/usr/lib/lua + $(INSTALL_DATA) $(PKG_BUILD_DIR)/src/mobdebug.lua $(1)/usr/lib/lua +endef + +$(eval $(call BuildPackage,lua-mobdebug)) diff --git a/lang/lua-rings/Makefile b/lang/lua-rings/Makefile new file mode 100644 index 000000000..9b39c96be --- /dev/null +++ b/lang/lua-rings/Makefile @@ -0,0 +1,54 @@ +# +# Copyright (C) 2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=lua-rings +PKG_VERSION:=1.3.0 +PKG_RELEASE:=1 +PKG_MAINTAINER:=Dirk Chang +PKG_LICENSE:=MIT + +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz +PKG_SOURCE_URL:=https://github.com/keplerproject/rings.git +PKG_SOURCE_PROTO:=git +PKG_SOURCE_VERSION:=2b8a900f8b9dbde304859a3ac9d437795c3fdde3 +PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) + +PKG_FIXUP:=autoreconf + +PKG_INSTALL:=1 + +include $(INCLUDE_DIR)/package.mk + +define Package/lua-rings + SUBMENU:=Lua + SECTION:=lang + CATEGORY:=Languages + TITLE:=Lua-Rings + URL:=http://www.inf.puc-rio.br/~roberto/lua-rings/ + DEPENDS:=+lua +endef + +define Package/lua-rings/description + Rings is a library which provides a way to create new Lua states from within Lua. +endef + +TARGET_CFLAGS += $(FPIC) +# add make variable overrides here +MAKE_FLAGS += + +define Build/Configure +endef + +define Package/lua-rings/install + $(INSTALL_DIR) $(1)/usr/lib/lua + $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/rings.so $(1)/usr/lib/lua + $(INSTALL_DATA) $(PKG_BUILD_DIR)/src/stable.lua $(1)/usr/lib/lua +endef + +$(eval $(call BuildPackage,lua-rings)) diff --git a/lang/lua-rings/patches/config.patch b/lang/lua-rings/patches/config.patch new file mode 100644 index 000000000..5740faea9 --- /dev/null +++ b/lang/lua-rings/patches/config.patch @@ -0,0 +1,28 @@ +--- lua-rings-1.3.0_org/config 2014-06-04 15:24:24.223662038 +0800 ++++ lua-rings-1.3.0/config 2014-06-04 16:16:15.183594040 +0800 +@@ -1,15 +1,15 @@ + # Installation directories + + # Default prefix +-PREFIX ?= /usr/local ++PREFIX ?= /usr + + DESTDIR ?= / + + # System's libraries directory (where binary libraries are installed) +-LUA_LIBDIR ?= $(PREFIX)/lib/lua/5.1 ++LUA_LIBDIR ?= $(PREFIX)/lib/lua + + # System's lua directory (where Lua libraries are installed) +-LUA_DIR ?= $(PREFIX)/share/lua/5.1 ++LUA_DIR ?= $(PREFIX)/lib/lua + + # Lua includes directory + LUA_INC ?= $(PREFIX)/include +@@ -24,6 +24,5 @@ + WARN ?= -O2 -Wall -fPIC -W -Waggregate-return -Wcast-align -Wmissing-prototypes -Wnested-externs -Wshadow -Wwrite-strings -Wpointer-arith -pedantic + INCS ?= -I$(LUA_INC) + CFLAGS ?= $(WARN) $(INCS) +-CC ?= gcc + + # $Id: config,v 1.7 2007/10/29 22:51:39 carregal Exp $ diff --git a/lang/lua-rings/patches/makefile.patch b/lang/lua-rings/patches/makefile.patch new file mode 100644 index 000000000..8bb055120 --- /dev/null +++ b/lang/lua-rings/patches/makefile.patch @@ -0,0 +1,11 @@ +--- lua-rings-1.3.0_org/Makefile 2014-06-04 15:24:37.583661746 +0800 ++++ lua-rings-1.3.0/Makefile 2014-06-04 15:23:41.611662970 +0800 +@@ -3,6 +3,8 @@ + T= rings + CONFIG= ./config + ++CFLAGS+= -fPIC ++ + include $(CONFIG) + + SRCS= src/rings.c diff --git a/lang/lua-rs232/Makefile b/lang/lua-rs232/Makefile new file mode 100644 index 000000000..7ef5ac7e3 --- /dev/null +++ b/lang/lua-rs232/Makefile @@ -0,0 +1,62 @@ +# +# Copyright (C) 2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=lua-rs232 +PKG_VERSION:=1.0.3 +PKG_RELEASE:=1 +PKG_MAINTAINER:=Dirk Chang +PKG_LICENSE:=MIT + +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz +PKG_SOURCE_URL:=https://github.com/srdgame/librs232.git +PKG_SOURCE_PROTO:=git +PKG_SOURCE_VERSION:=a9d463181e7f7034fe6a55bc38e845fb04fa93ba +PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) + +PKG_INSTALL:=1 + +include $(INCLUDE_DIR)/package.mk + +define Package/lua-rs232 + SUBMENU:=Lua + SECTION:=lang + CATEGORY:=Languages + TITLE:=Lua Serial Library + URL:=https://github.com/srdgame/librs232 + DEPENDS:= +lua +endef + +define Package/lua-rs232/description + multiplatform library for serial communications over RS-232 +endef + +CONFIGURE_ARGS += \ + --with-lua-inc=$(STAGING_DIR)/usr/include \ + --with-lua-lib=$(STAGING_DIR)/usr/lib + +#define Build/Configure +# ( cd "$(PKG_BUILD_DIR)"; ./autogen.sh ) +# $(call Build/Configure/Default) +#endef +define Build/Configure +endef + +define Build/Compile + (cd "$(PKG_BUILD_DIR)"; $(TARGET_CC) src/rs232.c src/rs232_posix.c bindings/lua/luars232.c -DLUAROCKS_HACK -std=gnu99 -I./include -I$(STAGING_DIR)/usr/include -L$(STAGING_DIR)/usr/lib -fPIC -shared -o luars232.so) +endef + +define Build/Install +endef + +define Package/lua-rs232/install + $(INSTALL_DIR) $(1)/usr/lib/lua + $(INSTALL_BIN) $(PKG_BUILD_DIR)/luars232.so $(1)/usr/lib/lua/ +endef + +$(eval $(call BuildPackage,lua-rs232)) diff --git a/lang/lua-wsapi/Makefile b/lang/lua-wsapi/Makefile new file mode 100644 index 000000000..b382ad640 --- /dev/null +++ b/lang/lua-wsapi/Makefile @@ -0,0 +1,95 @@ +# +# Copyright (C) 2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=lua-wsapi +PKG_VERSION:=1.6.1 +PKG_RELEASE:=1 +PKG_MAINTAINER:=Dirk Chang +PKG_LICENSE:=MIT + +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz +PKG_SOURCE_URL:=https://github.com/keplerproject/wsapi.git +PKG_SOURCE_PROTO:=git +PKG_SOURCE_VERSION:=eed8338401196cc155e59280adbe58d78933ead0 +PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) + +PKG_INSTALL:=1 + +include $(INCLUDE_DIR)/package.mk + +define Package/lua-wsapi/Default + SUBMENU:=Lua + SECTION:=lang + CATEGORY:=Languages + TITLE:=Lua WSAPI + URL:=http://www.keplerproject.org/wsapi + DEPENDS:= +lua +endef + +define Package/lua-wsapi/Default/description + WSAPI is an API that abstracts the web server from Lua web applications +endef + + +define Package/lua-wsapi-base +$(call Package/lua-wsapi/Default) + TITLE+= base + DEPENDS+= +luafilesystem + VARIANT:=base +endef + +define Package/lua-wsapi-base/description +$(call Package/lua-wsapi/Default/description) + . + This package contains the basic stuff. +endef + +define Package/lua-wsapi-xavante +$(call Package/lua-wsapi/Default) + TITLE+= xavante + DEPENDS+= +lua-wsapi-base +lua-xavante + VARIANT:=xavante +endef + +define Package/lua-wsapi-xavante/description +$(call Package/lua-wsapi/Default/description) + . + This package contains the Xavante stuff. +endef + +define Build/Configure +endef + +define Build/Compile +endef + +define Build/Install +endef + +define Package/lua-wsapi-base/install + $(INSTALL_DIR) $(1)/usr/lib/lua + $(INSTALL_DATA) $(PKG_BUILD_DIR)/src/wsapi.lua $(1)/usr/lib/lua + $(INSTALL_DIR) $(1)/usr/bin + $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/launcher/wsapi.cgi $(1)/usr/bin + + $(INSTALL_DIR) $(1)/usr/lib/lua/wsapi + $(INSTALL_DATA) $(PKG_BUILD_DIR)/src/wsapi/{common,request,response,util,cgi,sapi,ringer,mock}.lua $(1)/usr/lib/lua/wsapi +endef + +define Package/lua-wsapi-xavante/install + $(INSTALL_DIR) $(1)/usr/bin + $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/launcher/wsapi $(1)/usr/bin + + $(INSTALL_DIR) $(1)/usr/lib/lua/wsapi + $(INSTALL_DATA) $(PKG_BUILD_DIR)/src/wsapi/xavante.lua $(1)/usr/lib/lua/wsapi +endef + + +$(eval $(call BuildPackage,lua-wsapi-base)) +$(eval $(call BuildPackage,lua-wsapi-xavante)) diff --git a/lang/lua-xavante/Makefile b/lang/lua-xavante/Makefile new file mode 100644 index 000000000..13b66ee60 --- /dev/null +++ b/lang/lua-xavante/Makefile @@ -0,0 +1,58 @@ +# +# Copyright (C) 2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=lua-xavante +PKG_VERSION:=2.3.0 +PKG_RELEASE:=1 +PKG_MAINTAINER:=Dirk Chang +PKG_LICENSE:=MIT + +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz +PKG_SOURCE_URL:=https://github.com/keplerproject/xavante.git +PKG_SOURCE_PROTO:=git +PKG_SOURCE_VERSION:=9825b905133e14d37a4c179f2d02367ab93f1ef6 +PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) + +PKG_INSTALL:=1 + +include $(INCLUDE_DIR)/package.mk + +define Package/lua-xavante + SUBMENU:=Lua + SECTION:=lang + CATEGORY:=Languages + TITLE:=Xavante Web Server + URL:=http://www.keplerproject.org/xavante + DEPENDS:= +lua +endef + +define Package/lua-xavante/description + Xavante is a Lua HTTP 1.1 Web server that uses a modular architecture based on URI mapped handlers. +endef + + +define Build/Configure +endef + +define Build/Compile +endef + +define Build/Install +endef + +define Package/lua-xavante/install + $(INSTALL_DIR) $(1)/usr/lib/lua + $(INSTALL_DATA) $(PKG_BUILD_DIR)/src/sajax/sajax.lua $(1)/usr/lib/lua + $(INSTALL_DATA) $(PKG_BUILD_DIR)/src/xavante/xavante.lua $(1)/usr/lib/lua + + $(INSTALL_DIR) $(1)/usr/lib/lua/xavante + $(INSTALL_DATA) $(PKG_BUILD_DIR)/src/xavante/{cgiluahandler,encoding,filehandler,httpd,mime,patternhandler,redirecthandler,vhostshandler,indexhandler,urlhandler,ruleshandler}.lua $(1)/usr/lib/lua/xavante +endef + +$(eval $(call BuildPackage,lua-xavante)) diff --git a/lang/lzmq/Makefile b/lang/lzmq/Makefile new file mode 100644 index 000000000..bc1587ee9 --- /dev/null +++ b/lang/lzmq/Makefile @@ -0,0 +1,48 @@ +# +# Copyright (C) 2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=lzmq +PKG_VERSION:=0.4.2 +PKG_RELEASE:=1 +PKG_MAINTAINER:=Dirk Chang +PKG_LICENSE:=MIT + +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).zip +PKG_SOURCE_URL:=https://codeload.github.com/zeromq/lzmq/zip/v0.4.2? +PKG_MD5SUM:=6789895c925e7eb9036e526181ec1a33 + +include $(INCLUDE_DIR)/package.mk +include $(INCLUDE_DIR)/cmake.mk + +define Package/lzmq + SUBMENU:=Lua + SECTION:=lang + CATEGORY:=Languages + TITLE:=Lua ZeroMQ binding + URL:=https://github.com/moteus/lzmq/ + DEPENDS:= +lua +libzmq +endef + +define Package/lzmq/description + LZMQ is a Lua binding to ZeroMQ. +endef + +CMAKE_OPTIONS += \ + -DUSE_LUA=ON + +define Package/lzmq/install + $(INSTALL_DIR) $(1)/usr/lib/lua + $(INSTALL_BIN) $(PKG_BUILD_DIR)/lzmq.so $(1)/usr/lib/lua/ + + $(INSTALL_DIR) $(1)/usr/lib/lua/lzmq + $(INSTALL_BIN) $(PKG_BUILD_DIR)/lzmq/timer.so $(1)/usr/lib/lua/lzmq + $(CP) -R $(PKG_BUILD_DIR)/src/lua/lzmq/* $(1)/usr/lib/lua/lzmq +endef + +$(eval $(call BuildPackage,lzmq)) diff --git a/libs/zmq/Makefile b/libs/zmq/Makefile new file mode 100644 index 000000000..31bf6bf6b --- /dev/null +++ b/libs/zmq/Makefile @@ -0,0 +1,81 @@ +# +# Copyright (C) 2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# +# This Makefile for ZeroMQ +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=zeromq +PKG_VERSION:=4.0.5 +PKG_RELEASE:=1 +PKG_MAINTAINER:=Dirk Chang +PKG_LICENSE:=GPL-3.0+ +PKG_LICENSE_FILES:=LICENCE.txt + +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz +PKG_SOURCE_URL:= http://download.zeromq.org +PKG_MD5SUM:=73c39f5eb01b9d7eaf74a5d899f1d03d + +PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION) +PKG_BUILD_DEPENDS:=libuuid + +PKG_FIXUP:=autoreconf + +PKG_INSTALL:=1 + + +include $(INCLUDE_DIR)/uclibc++.mk +include $(INCLUDE_DIR)/package.mk + +define Package/libzmq/Default + TITLE:=ZeroMQ - Code Connected + URL:=http://www.zeromq.org/ +endef + +define Package/libzmq/Default/description + A replacment for raw socket developing library +endef + +define Package/libzmq + $(call Package/libzmq/Default) + SECTION:=libs + CATEGORY:=Libraries + DEPENDS:=+libuuid +libpthread +librt $(CXX_DEPENDS) + TITLE+= (library) + URL:= +endef + +define Package/libzmq/description + $(call Package/libzmq/Default/description) + This package contains the ZeroMQ shared library, used by other + programs. +endef + +# add extra configure flags here +CONFIGURE_ARGS += \ + --enable-static \ + --enable-shared + +# add make variable overrides here +MAKE_FLAGS += + +define Build/InstallDev + $(INSTALL_DIR) $(1)/usr/include + $(CP) $(PKG_INSTALL_DIR)/usr/include/zmq.h $(1)/usr/include + $(CP) $(PKG_INSTALL_DIR)/usr/include/zmq_utils.h $(1)/usr/include + $(INSTALL_DIR) $(1)/usr/lib + $(CP) $(PKG_INSTALL_DIR)/usr/lib/libzmq.{a,so*} $(1)/usr/lib/ + $(INSTALL_DIR) $(1)/usr/lib/pkgconfig + $(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/libzmq.pc $(1)/usr/lib/pkgconfig/ +endef + +define Package/libzmq/install + $(INSTALL_DIR) $(1)/usr/lib + $(CP) $(PKG_INSTALL_DIR)/usr/lib/libzmq.so.* $(1)/usr/lib/ +endef + +$(eval $(call BuildPackage,libzmq)) diff --git a/libs/zmq/patches/disable_pedantic_on_linux_with_ulibc++.patch b/libs/zmq/patches/disable_pedantic_on_linux_with_ulibc++.patch new file mode 100644 index 000000000..9d1f06eb0 --- /dev/null +++ b/libs/zmq/patches/disable_pedantic_on_linux_with_ulibc++.patch @@ -0,0 +1,14 @@ +--- zeromq-4.0.4_org/configure.ac 2014-06-04 10:19:35.140061796 +0800 ++++ zeromq-4.0.4/configure.ac 2014-06-04 11:08:17.231997926 +0800 +@@ -127,8 +127,10 @@ + *linux*) + # Define on Linux to enable all library features. Define if using a gnu compiler + if test "x$GXX" = "xyes"; then +- CPPFLAGS="-D_GNU_SOURCE $CPPFLAGS" ++ CPPFLAGS="-D_GNU_SOURCE $CPPFLAGS -Wno-long-long" + fi ++ libzmq_pedantic="no" ++ libzmq_werror="no" + AC_DEFINE(ZMQ_HAVE_LINUX, 1, [Have Linux OS]) + libzmq_on_linux="yes" + diff --git a/libs/zmq/patches/streamoff_missing_with_ulibc++.patch b/libs/zmq/patches/streamoff_missing_with_ulibc++.patch new file mode 100644 index 000000000..543d6ecf3 --- /dev/null +++ b/libs/zmq/patches/streamoff_missing_with_ulibc++.patch @@ -0,0 +1,10 @@ +--- zeromq-4.0.4_org/src/blob.hpp 2014-06-04 10:19:12.680062287 +0800 ++++ zeromq-4.0.4/src/blob.hpp 2014-06-04 10:30:31.168047457 +0800 +@@ -21,6 +21,7 @@ + #define __ZMQ_BLOB_HPP_INCLUDED__ + + #include ++#include + #include + + // Borrowed from id3lib_strings.h: diff --git a/libs/zmq/patches/tools_gcc_fix.patch b/libs/zmq/patches/tools_gcc_fix.patch new file mode 100644 index 000000000..a91e84607 --- /dev/null +++ b/libs/zmq/patches/tools_gcc_fix.patch @@ -0,0 +1,10 @@ +diff -ruNa zeromq-4.0.4_org/tools/Makefile.am zeromq-4.0.4/tools/Makefile.am +--- zeromq-4.0.4_org/tools/Makefile.am 2014-06-03 20:01:12.392379933 +0800 ++++ zeromq-4.0.4/tools/Makefile.am 2014-06-03 19:59:18.616382420 +0800 +@@ -1,5 +1,5 @@ + EXTRA_DIST = curve_keygen.c ++CFLAGS += -std=c99 +- + INCLUDES = -I$(top_srcdir)/include + + bin_PROGRAMS = curve_keygen From fa4365dd9b50a5bc032498d6f281daeefe02e49e Mon Sep 17 00:00:00 2001 From: Steven Barth Date: Mon, 27 Apr 2015 15:42:11 +0200 Subject: [PATCH 303/681] ocserv: explicitly pass --without-gssapi to work-around SDK issue Signed-off-by: Steven Barth --- net/ocserv/Makefile | 1 + 1 file changed, 1 insertion(+) diff --git a/net/ocserv/Makefile b/net/ocserv/Makefile index 3d382c97a..8e0eac766 100644 --- a/net/ocserv/Makefile +++ b/net/ocserv/Makefile @@ -58,6 +58,7 @@ CONFIGURE_ARGS+= \ --enable-local-libopts \ --with-libreadline-prefix="$(STAGING_DIR)/" \ --without-libnl \ + --without-gssapi \ --with-libcrypt-prefix="$(STAGING_DIR)/" \ ifneq ($(CONFIG_OCSERV_PAM),y) From 3ab289ca7f804056d1a9a205a4263cc2ce9478d4 Mon Sep 17 00:00:00 2001 From: Vladimir Ulrich Date: Mon, 27 Apr 2015 16:59:11 +0300 Subject: [PATCH 304/681] [utils/zoneinfo] Updated to the latest version Signed-off-by: Vladimir Ulrich --- utils/zoneinfo/Makefile | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/utils/zoneinfo/Makefile b/utils/zoneinfo/Makefile index e85672d06..fdbdf2814 100644 --- a/utils/zoneinfo/Makefile +++ b/utils/zoneinfo/Makefile @@ -9,8 +9,8 @@ include $(TOPDIR)/rules.mk PKG_NAME:=zoneinfo -PKG_VERSION:=2015c -PKG_VERSION_CODE:=2015c +PKG_VERSION:=2015d +PKG_VERSION_CODE:=2015d PKG_RELEASE:=1 #As i couldn't find real license used "Public Domain" @@ -20,14 +20,14 @@ PKG_LICENSE:=Public Domain PKG_SOURCE:=tzdata$(PKG_VERSION).tar.gz PKG_SOURCE_CODE:=tzcode$(PKG_VERSION_CODE).tar.gz PKG_SOURCE_URL:=http://www.iana.org/time-zones/repository/releases -PKG_MD5SUM:=4b4a3e344786198c46909e5afde08788 +PKG_MD5SUM:=b595bdc4474b8fc1a15cffc67c66025b include $(INCLUDE_DIR)/package.mk define Download/tzcode FILE=$(PKG_SOURCE_CODE) URL=$(PKG_SOURCE_URL) - MD5SUM:=182c85e99be2bcc6b77d9956c8c0dcce + MD5SUM:=4008a3abc025a398697b2587c48258b9 endef $(eval $(call Download,tzcode)) From 05387981d5d79371679f9a777cd44bbfc6531c2c Mon Sep 17 00:00:00 2001 From: Luiz Angelo Daros de Luca Date: Mon, 27 Apr 2015 11:48:45 -0300 Subject: [PATCH 305/681] ruby: fix build when libyaml is present libyaml is an optional dep for ruby psych. When missing, it uses a bundled version of yaml. However, when libyaml is present in openwrt build, ruby-psych packaging failed with deps not declared. Now libyaml is configured as a hard dep for ruby-psych. Also, the tk module was disabled in order to avoid a possible similar problem if tk+x11 is provided in openwrt build. It was currently not build because of missing deps. Other minor changes: - win32* modules where disabled (avoid err msg, no compile changes) - Some files where removed in 2.2.x (like gserver.rb). They were already not packaged but generates a build warning message. Now removed from install. Signed-off-by: Luiz Angelo Daros de Luca --- lang/ruby/Makefile | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/lang/ruby/Makefile b/lang/ruby/Makefile index e9c1f3ae1..eb90e3563 100644 --- a/lang/ruby/Makefile +++ b/lang/ruby/Makefile @@ -11,7 +11,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=ruby PKG_VERSION:=2.2.2 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_LIBVER:=2.2 @@ -575,7 +575,7 @@ endef define Package/ruby-psych $(call Package/ruby/Default) TITLE+=YAML parser and emitter - DEPENDS:=ruby +ruby-bigdecimal +ruby-datetime +ruby-misc +ruby-enc + DEPENDS:=ruby +ruby-bigdecimal +ruby-datetime +ruby-misc +ruby-enc +libyaml endef define Package/ruby-psych/description @@ -803,6 +803,7 @@ HOST_CONFIGURE_ARGS += \ --disable-install-rdoc \ --disable-install-capi \ --with-static-linked-ext \ + --with-out-ext=tk,tk/tkutil,win32,win32ole,dbm,gdbm,readline \ # even not used, host build with restricted exts results in gems not being # compiling for target (probably some cross compiling problem like checking @@ -819,6 +820,7 @@ CONFIGURE_ARGS += \ --disable-install-capi \ --with-ruby-version=minor \ --with-iconv-dir=$(ICONV_PREFIX) \ + --with-out-ext=tk,tk/tkutil,win32,win32ole ifndef CONFIG_RUBY_DIGEST_USE_OPENSSL CONFIGURE_ARGS += \ @@ -880,7 +882,6 @@ define Package/ruby-datetime/install ( cd $(PKG_INSTALL_DIR); $(TAR) -cf - \ usr/lib/ruby/$(PKG_LIBVER)/time.rb \ usr/lib/ruby/$(PKG_LIBVER)/date.rb \ - usr/lib/ruby/$(PKG_LIBVER)/date/ \ usr/lib/ruby/$(PKG_LIBVER)/*/date_core.so \ ) | ( cd $(1); $(TAR) -xf - ) endef @@ -1258,7 +1259,6 @@ endef define Package/ruby-socket/install ( cd $(PKG_INSTALL_DIR); $(TAR) -cf - \ - usr/lib/ruby/$(PKG_LIBVER)/gserver.rb \ usr/lib/ruby/$(PKG_LIBVER)/ipaddr.rb \ usr/lib/ruby/$(PKG_LIBVER)/resolv-replace.rb \ usr/lib/ruby/$(PKG_LIBVER)/resolv.rb \ From 99fe4286c7a862802a3d69c2687afdffbecb36e0 Mon Sep 17 00:00:00 2001 From: Vladimir Ulrich Date: Tue, 28 Apr 2015 00:50:18 +0300 Subject: [PATCH 306/681] [net/snort] Replaced build variants with compile options. Also added optional lzma support. Signed-off-by: Vladimir Ulrich --- net/snort/Config.in | 25 +++++++++++++ net/snort/Makefile | 86 +++++++++++++-------------------------------- 2 files changed, 49 insertions(+), 62 deletions(-) create mode 100644 net/snort/Config.in diff --git a/net/snort/Config.in b/net/snort/Config.in new file mode 100644 index 000000000..433557c30 --- /dev/null +++ b/net/snort/Config.in @@ -0,0 +1,25 @@ +menu "Configuration" + depends on PACKAGE_snort + +config SNORT_MYSQL + bool "Enable MySQL support" + default n + help + This option enables support for logging to a MySQL database. + Disabled by default. + +config SNORT_PGSQL + bool "Enable PostgreSQL support" + default n + help + This option enables support for logging to a PostgreSQL database. + Disabled by default. + +config SNORT_LZMA + bool "Enable LZMA support" + default n + help + This option enables LZMA decompression. + Disabled by default. + +endmenu diff --git a/net/snort/Makefile b/net/snort/Makefile index 06b690600..9b8fea7e7 100644 --- a/net/snort/Makefile +++ b/net/snort/Makefile @@ -9,29 +9,30 @@ include $(TOPDIR)/rules.mk PKG_NAME:=snort PKG_VERSION:=2.9.7.2 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=https://www.snort.org/downloads/snort/ PKG_MD5SUM:=b01e9964827394c39194a0147bc15705 PKG_BUILD_DEPENDS:=librpc -PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/$(PKG_NAME)-$(PKG_VERSION) +PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)/$(PKG_NAME)-$(PKG_VERSION) PKG_FIXUP:=autoreconf PKG_INSTALL:=1 include $(INCLUDE_DIR)/package.mk -define Package/snort/Default +define Package/snort SUBMENU:=Firewall SECTION:=net CATEGORY:=Network - DEPENDS:=+libdaq +libdnet +libopenssl +libpcap +libpcre +libpthread +libuuid +zlib + DEPENDS:=+libdaq +libdnet +libopenssl +libpcap +libpcre +libpthread +libuuid +zlib +SNORT_MYSQL:libmysqlclient +SNORT_PGSQL:libpq +SNORT_PGSQL:libuuid +SNORT_LZMA:liblzma TITLE:=Lightweight Network Intrusion Detection System URL:=http://www.snort.org/ + MENU:=1 endef -define Package/snort/Default/description +define Package/snort/description Snort is an open source network intrusion detection and prevention system. It is capable of performing real-time traffic analysis, alerting, blocking and packet logging on IP networks. It utilizes a combination of protocol @@ -39,37 +40,8 @@ define Package/snort/Default/description attacks. endef -define Package/snort - $(call Package/snort/Default) - VARIANT:=basic -endef - -define Package/snort/description - $(call Package/snort/Default/description) -endef - -define Package/snort-mysql - $(call Package/snort/Default) - DEPENDS+= +libmysqlclient - TITLE+= (MySQL) - VARIANT:=mysql -endef - -define Package/snort-mysql/description - $(call Package/snort/Default/description) - This package contains snort with support for logging to a MySQL database. -endef - -define Package/snort-pgsql - $(call Package/snort/Default) - DEPENDS+= +libpq +libuuid - TITLE+= (PostgreSQL) - VARIANT:=pgsql -endef - -define Package/snort-pgsql/description - $(call Package/snort/Default/description) - This package contains snort with support for logging to a PostgreSQL database. +define Package/snort/config + source "$(SOURCE)/Config.in" endef CONFIGURE_ARGS += \ @@ -85,6 +57,21 @@ CONFIGURE_ARGS += \ --with-daq-libraries="$(STAGING_DIR)/usr/lib" \ --disable-static-daq +ifeq ($(CONFIG_SNORT_MYSQL),) +CONFIGURE_ARGS += \ + --without-mysql +endif + +ifeq ($(CONFIG_PGSQL),) +CONFIGURE_ARGS += \ + --without-postgresql +endif + +ifeq ($(CONFIG_SNORT_LZMA),) +CONFIGURE_ARGS += \ + --disable-lzma +endif + CONFIGURE_VARS += \ CPPFLAGS="$$$$CPPFLAGS -I$(STAGING_DIR)/usr/include/mysql" \ LDFLAGS="$$$$LDFLAGS -L$(STAGING_DIR)/usr/lib/mysql" \ @@ -93,24 +80,6 @@ CONFIGURE_VARS += \ MAKE_FLAGS += \ extra_incl="" -ifeq ($(BUILD_VARIANT),basic) - CONFIGURE_ARGS += \ - --without-mysql \ - --without-postgresql -endif -ifeq ($(BUILD_VARIANT),mysql) - CONFIGURE_VARS += \ - mysql_has_reconnect=yes - CONFIGURE_ARGS += \ - --with-mysql="$(STAGING_DIR)/usr" \ - --without-postgresql -endif -ifeq ($(BUILD_VARIANT),pgsql) - CONFIGURE_ARGS += \ - --without-mysql \ - --with-postgresql="$(STAGING_DIR)/usr" -endif - define Build/InstallDev $(INSTALL_DIR) $(STAGING_DIR)/usr/include/snort/dynamic_preproc $(CP) \ @@ -135,12 +104,6 @@ define Package/snort/conffiles /etc/snort/snort.conf endef -Package/snort-mysql/conffiles = $(Package/snort/conffiles) -Package/snort-mysql/install = $(Package/snort/install) - -Package/snort-pgsql/conffiles = $(Package/snort/conffiles) -Package/snort-pgsql/install = $(Package/snort/install) - define Package/snort/install $(INSTALL_DIR) $(1)/usr/bin $(INSTALL_BIN) \ @@ -198,5 +161,4 @@ define Package/snort/install endef $(eval $(call BuildPackage,snort)) -$(eval $(call BuildPackage,snort-mysql)) -$(eval $(call BuildPackage,snort-pgsql)) + From 0157b7bddfe55bae469899b705c08ef0bd478763 Mon Sep 17 00:00:00 2001 From: Vladimir Ulrich Date: Tue, 28 Apr 2015 01:03:16 +0300 Subject: [PATCH 307/681] [net/snort] Simple liblzma deps fix Fixes #1196 Signed-off-by: Vladimir Ulrich --- net/snort/Makefile | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/net/snort/Makefile b/net/snort/Makefile index 06b690600..b3bcf12eb 100644 --- a/net/snort/Makefile +++ b/net/snort/Makefile @@ -83,7 +83,8 @@ CONFIGURE_ARGS += \ --with-libpcre-libraries="$(STAGING_DIR)/usr/lib" \ --with-daq-includes="$(STAGING_DIR)/usr/include" \ --with-daq-libraries="$(STAGING_DIR)/usr/lib" \ - --disable-static-daq + --disable-static-daq \ + --disable-lzma CONFIGURE_VARS += \ CPPFLAGS="$$$$CPPFLAGS -I$(STAGING_DIR)/usr/include/mysql" \ From 2b861e92ea82e933f07510f80d740d21ef2bea2d Mon Sep 17 00:00:00 2001 From: Steven Barth Date: Tue, 28 Apr 2015 08:37:47 +0200 Subject: [PATCH 308/681] Revert "[net/snort] Simple liblzma deps fix" --- net/snort/Makefile | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/net/snort/Makefile b/net/snort/Makefile index b3bcf12eb..06b690600 100644 --- a/net/snort/Makefile +++ b/net/snort/Makefile @@ -83,8 +83,7 @@ CONFIGURE_ARGS += \ --with-libpcre-libraries="$(STAGING_DIR)/usr/lib" \ --with-daq-includes="$(STAGING_DIR)/usr/include" \ --with-daq-libraries="$(STAGING_DIR)/usr/lib" \ - --disable-static-daq \ - --disable-lzma + --disable-static-daq CONFIGURE_VARS += \ CPPFLAGS="$$$$CPPFLAGS -I$(STAGING_DIR)/usr/include/mysql" \ From 45e0e2a0b96c1f0268a71d50d8ead2d109cfa113 Mon Sep 17 00:00:00 2001 From: Imre Kaloz Date: Tue, 28 Apr 2015 15:08:15 +0200 Subject: [PATCH 309/681] coova-chilli: add uci configuration file, init.d and firewall script --- net/coova-chilli/Makefile | 10 +- net/coova-chilli/files/chilli.config | 230 +++++++++++++++++++++++++ net/coova-chilli/files/chilli.firewall | 41 +++++ net/coova-chilli/files/chilli.init | 61 +++++++ 4 files changed, 340 insertions(+), 2 deletions(-) create mode 100644 net/coova-chilli/files/chilli.config create mode 100644 net/coova-chilli/files/chilli.firewall create mode 100644 net/coova-chilli/files/chilli.init diff --git a/net/coova-chilli/Makefile b/net/coova-chilli/Makefile index e6be63756..0930a929a 100644 --- a/net/coova-chilli/Makefile +++ b/net/coova-chilli/Makefile @@ -12,7 +12,7 @@ PKG_VERSION:=1.3.0+20141128 PKG_MAINTAINER:=Imre Kaloz PKG_LICENSE:=GPL-2.0+ PKG_LICENSE_FILES:=COPYING -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE_PROTO:=git PKG_SOURCE_URL:=git://github.com/coova/coova-chilli @@ -120,7 +120,7 @@ define Build/Configure endef define Package/coova-chilli/conffiles -/etc/chilli.conf +/etc/config/chilli endef define Package/coova-chilli/install @@ -136,6 +136,12 @@ define Package/coova-chilli/install $(CP) $(PKG_INSTALL_DIR)/usr/lib/lib*.so.* $(1)/usr/lib/ $(INSTALL_DIR) $(1)/usr/lib/iptables $(CP) $(PKG_INSTALL_DIR)/usr/iptables/lib*.so $(1)/usr/lib/iptables + $(INSTALL_DIR) $(1)/etc/init.d + $(INSTALL_BIN) files/chilli.init $(1)/etc/init.d/chilli + $(INSTALL_DIR) $(1)/etc/config + $(INSTALL_DATA) files/chilli.config $(1)/etc/config/chilli + $(INSTALL_DIR) $(1)/lib/firewall + $(CP) files/chilli.firewall $(1)/lib/firewall/chilli.sh endef $(eval $(call BuildPackage,coova-chilli)) diff --git a/net/coova-chilli/files/chilli.config b/net/coova-chilli/files/chilli.config new file mode 100644 index 000000000..6aa98373d --- /dev/null +++ b/net/coova-chilli/files/chilli.config @@ -0,0 +1,230 @@ +# +# Sample Coova-Chilli configuration file +# + +config chilli + # disable to running chilli. remove this option before running. + option disabled 1 + + # name of TUN device name. required. + option tundev 'tun0' + + # Include this flag if process is to run in the foreground + #option fg + + # Include this flag to include debug information. + #option debug 9 + + # Re-read configuration file at this interval. Will also cause new domain + # name lookups to be performed. Value is given in seconds. + #option interval 3600 + + # File to store information about the process id of the program. + # The program must have write access to this file/directory. + #option pidfile /var/run/chilli.pid + + # Directory to use for nonvolatile storage. + # The program must have write access to this directory. + # this option is currently ignored + #option statedir ./ + + + # TUN parameters + + # IP network address of external packet data network + # Used to allocate dynamic IP addresses and set up routing. + # Normally you do not need to uncomment this option. + #option net 192.168.182.0/24 + + # Dynamic IP address pool + # Used to allocate dynamic IP addresses to clients. + # If not set it defaults to the net tag. + # Do not uncomment this option unless you are an experienced user! + #option dynip 192.168.182.0/24 + + # Static IP address pool + # Used to allocate static IP addresses to clients. + # Do not uncomment this option unless you are an experienced user! + #option statip 192.168.182.0/24 + + + # Primary DNS server. + # Will be suggested to the client. + # If omitted the system default will be used. + # Normally you do not need to uncomment this option. + #option dns1 172.16.0.5 + + # Secondary DNS server. + # Will be suggested to the client. + # If omitted the system default will be used. + # Normally you do not need to uncomment this option. + #option dns2 172.16.0.6 + + # Domain name + # Will be suggested to the client. + # Normally you do not need to uncomment this option. + #option domain key.chillispot.org + + # Script executed after network interface has been brought up. + # Executed with the following parameters: + # + # Normally you do not need to uncomment this option. + #option ipup /etc/chilli.ipup + + # Script executed after network interface has been taken down. + # Executed with the following parameters: + # + # Normally you do not need to uncomment this option. + #option ipdown /etc/chilli.ipdown + + + # Radius parameters + + # IP address to listen to + # Normally you do not need to uncomment this option. + #option radiuslisten 127.0.0.1 + + # IP address of radius server 1 + # For most installations you need to modify this option. + radiusserver1 rad01.chillispot.org + + # IP address of radius server 2 + # If you have only one radius server you should set radiusserver2 to the + # same value as radiusserver1. + # For most installations you need to modify this option. + radiusserver2 rad02.chillispot.org + + # Radius authentication port + # The UDP port number to use for radius authentication requests. + # The same port number is used for both radiusserver1 and radiusserver2. + # Normally you do not need to uncomment this option. + #option radiusauthport 1812 + + # Radius accounting port + # The UDP port number to use for radius accounting requests. + # The same port number is used for both radiusserver1 and radiusserver2. + # Normally you do not need to uncomment this option. + #option radiusacctport 1813 + + # Radius shared secret for both servers + # For all installations you should modify this option. + #option radiussecret testing123 + + # Radius NAS-Identifier + # Normally you do not need to uncomment this option. + #option radiusnasid nas01 + + # WISPr Location ID. Should be in the format: isocc=, + # cc=,ac=,network= + # Normally you do not need to uncomment this option. + #option radiuslocationid isocc=us,cc=1,ac=408,network=ACMEWISP_NewarkAirport + + # WISPr Location Name. Should be in the format: + # , + # Normally you do not need to uncomment this option. + #option radiuslocationname ACMEWISP,Gate_14_Terminal_C_of_Newark_Airport + + + # Radius proxy parameters + + # IP address to listen to + # Normally you do not need to uncomment this option. + #option proxylisten 10.0.0.1 + + # UDP port to listen to. + # If not specified a port will be selected by the system + # Normally you do not need to uncomment this option. + #option proxyport 1645 + + # Client(s) from which we accept radius requests + # Normally you do not need to uncomment this option. + #option proxyclient 10.0.0.1/24 + + # Radius proxy shared secret for all clients + # If not specified defaults to radiussecret + # Normally you do not need to uncomment this option. + #option proxysecret testing123 + + + # DHCP Parameters + + # Ethernet interface to listen to. + # This is the network interface which is connected to the access points. + # In a typical configuration this option should be set to eth1. + dhcpif eth1 + + # Use specified MAC address. + # An address in the range 00:00:5E:00:02:00 - 00:00:5E:FF:FF:FF falls + # within the IANA range of addresses and is not allocated for other + # purposes. + # Normally you do not need to uncomment this option. + #option dhcpmac 00:00:5E:00:02:00 + + # Time before DHCP lease expires + # Normally you do not need to uncomment this option. + #option lease 600 + + + # Universal access method (UAM) parameters + + # URL of web server handling authentication. + uamserver https://radius.chillispot.org/hotspotlogin + + # URL of welcome homepage. + # Unauthenticated users will be redirected to this URL. If not specified + # users will be redirected to the uamserver instead. + # Normally you do not need to uncomment this option. + #option uamhomepage http://192.168.182.1/welcome.html + + # Shared between chilli and authentication web server + #option uamsecret ht2eb8ej6s4et3rg1ulp + + # IP address to listen to for authentication requests + # Do not uncomment this option unless you are an experienced user! + #option uamlisten 192.168.182.1 + + # TCP port to listen to for authentication requests + # Do not uncomment this option unless you are an experienced user! + #option uamport 3990 + + # Comma separated list of domain names, IP addresses or network segments + # the client can access without first authenticating. + # It is possible to specify this option multiple times. + # Normally you do not need to uncomment this option. + #option uamallowed www.chillispot.org,10.11.12.0/24 + + # Comma separated list of domain names + # the client can access without first authenticating. + # It is possible to specify this option multiple times. + # Normally you do not need to uncomment this option. + #option uamdomain .chillispot.org,.coova.org + + # If this flag is given unauthenticated users are allowed to use + # any DNS server. + # Normally you do not need to uncomment this option. + #option uamanydns + + + # MAC authentication + + # If this flag is given users will be authenticated only on their MAC + # address. + # Normally you do not need to uncomment this option. + #option macauth + + # List of MAC addresses. + # The MAC addresses specified in this list will be authenticated only on + # their MAC address. + # this option is ignored if the macauth tag is given. + # It is possible to specify this option multiple times. + # Normally you do not need to uncomment this option. + #option macallowed 00-0A-5E-AC-BE-51,00-30-1B-3C-32-E9 + + # Password to use for MAC authentication. + # Normally you do not need to uncomment this option. + #option macpasswd password + + # Suffix to add to MAC address in order to form the username. + # Normally you do not need to uncomment this option. + #option macsuffix suffix + diff --git a/net/coova-chilli/files/chilli.firewall b/net/coova-chilli/files/chilli.firewall new file mode 100644 index 000000000..a5b1d001e --- /dev/null +++ b/net/coova-chilli/files/chilli.firewall @@ -0,0 +1,41 @@ +#!/bin/sh + +chilli_firewall() { + local cfg="$1" + + local network ifname tun + + config_get network "$cfg" network + + . /lib/functions/network.sh + network_get_device ifname ${network:-lan} + + if [ "$ifname" = "" ] + then + config_get ifname "$cfg" dhcpif + fi + + config_get tun "$cfg" tundev + + for n in ACCEPT DROP REJECT + do + iptables -F zone_${network}_${n} + iptables -I zone_${network}_${n} -i $tun -j $n + iptables -I zone_${network}_${n} -o $tun -j $n + done + + iptables -D forward -i ${ifname} -j zone_${network}_forward + iptables -A forward -i ${ifname} -j DROP + iptables -A forward -i $tun -j zone_${network}_forward + + iptables -D input -i ${ifname} -j zone_${network} + iptables -A input -i $tun -j zone_${network} + + iptables -I zone_${network} -p tcp --dport 3990 -j ACCEPT + iptables -I zone_${network} -p tcp --dport 3991 -j ACCEPT +} + +chilli_post_core_cb() { + config_load chilli + config_foreach chilli_firewall chilli +} diff --git a/net/coova-chilli/files/chilli.init b/net/coova-chilli/files/chilli.init new file mode 100644 index 000000000..15b79af37 --- /dev/null +++ b/net/coova-chilli/files/chilli.init @@ -0,0 +1,61 @@ +#!/bin/sh /etc/rc.common + +START=30 +STOP=90 + +config_cb() { + chilli_inst=$2 + if [ "$chilli_inst" != "" ] + then + rm -f /var/run/chilli_${chilli_inst}* + chilli_conf=/var/run/chilli_${chilli_inst}.conf + eval "start_chilli_$chilli_inst=1" + fi +} + +option_cb() { + case "$1" in + # UCI settings + network) + . /lib/functions/network.sh + local ifname + network_get_device ifname $2 + echo "dhcpif=\"$ifname\"" >> $chilli_conf + ;; + disabled) + eval "start_chilli_$chilli_inst=0" + ;; + # boolean settings + dhcpbroadcast|nodynip|vlanlocation|locationstopstart|locationcopycalled|locationimmediateupdate|locationopt82|coanoipcheck|noradallow|proxymacaccept|proxyonacct|dhcpmacset|dhcpradius|noc2c|eapolenable|uamanydns|uamanyip|uamnatanyip|nouamsuccess|nowispr1|nowispr2|domaindnslocal|radsec|macauth|macreauth|macauthdeny|macallowlocal|strictmacauth|strictdhcp|ieee8021q|only8021q|radiusoriginalurl|swapoctets|statusfilesave|wpaguests|openidauth|papalwaysok|mschapv2|chillixml|acctupdate|dnsparanoia|seskeepalive|usetap|noarpentries|framedservice|scalewin|redir|injectwispr|redirurl|routeonetone|nousergardendata|uamgardendata|uamotherdata|withunixipc|uamallowpost|redirssl|uamuissl|layer3|patricia|redirdnsreq|dhcpnotidle|ipv6|ipv6only) + [ "$2" = "true" -o "$2" = "1" ] && echo "$1" >> $chilli_conf + ;; + *) + echo "$1=\"$2\"" >> $chilli_conf + ;; + esac +} + +start_chilli() { + local cfg="$1" + local start_chilli=$(eval "echo \$start_chilli_$cfg") + [ "$start_chilli" = "0" ] && return + local base=/var/run/chilli_${cfg} + chilli -c ${base}.conf \ + --pidfile ${base}.pid \ + --cmdsocket ${base}.sock \ + --unixipc ${base}.ipc & +} + +start() { + config_load chilli + config_foreach start_chilli chilli +} + +stop() { + ls /var/run/chilli*.pid 2>/dev/null && { + kill $(cat /var/run/chilli*.pid) + sleep 1 + killall -9 chilli + rm -f /var/run/chilli* + } +} From ba80d015eddbd3e42a711bb07e8f39aba7c8f15c Mon Sep 17 00:00:00 2001 From: Alexander Ryzhov Date: Tue, 28 Apr 2015 13:12:06 +0000 Subject: [PATCH 310/681] fix PCREDIR Signed-off-by: Alexander Ryzhov --- net/haproxy/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/net/haproxy/Makefile b/net/haproxy/Makefile index 7ed23696d..55575b2ee 100644 --- a/net/haproxy/Makefile +++ b/net/haproxy/Makefile @@ -88,7 +88,7 @@ define Build/Compile CFLAGS="$(TARGET_CFLAGS) -fno-align-jumps -fno-align-functions -fno-align-labels -fno-align-loops -pipe -fomit-frame-pointer -fhonour-copts" \ LD="$(TARGET_CC)" \ LDFLAGS="$(TARGET_LDFLAGS)" \ - PCREDIR="$(STAGING_DIR)/usr/include" \ + PCREDIR="$(STAGING_DIR)/usr" \ SMALL_OPTS="-DBUFSIZE=16384 -DMAXREWRITE=1030 -DSYSTEM_MAXCONN=165530 " \ USE_LINUX_TPROXY=1 USE_LINUX_SPLICE=1 USE_REGPARM=1 $(USE_OPENSSL) \ USE_ZLIB=yes USE_PCRE=1 \ From 3346bfd27bf67dd9f5c85f770fbca57bbf42d2c3 Mon Sep 17 00:00:00 2001 From: Jaehoon You Date: Wed, 29 Apr 2015 00:24:38 +0900 Subject: [PATCH 311/681] coova-chilli: fix compile error that cannot copy netfilter extension library Signed-off-by: Jaehoon You --- net/coova-chilli/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/net/coova-chilli/Makefile b/net/coova-chilli/Makefile index 0930a929a..32e394000 100644 --- a/net/coova-chilli/Makefile +++ b/net/coova-chilli/Makefile @@ -135,7 +135,7 @@ define Package/coova-chilli/install $(INSTALL_DIR) $(1)/usr/lib/ $(CP) $(PKG_INSTALL_DIR)/usr/lib/lib*.so.* $(1)/usr/lib/ $(INSTALL_DIR) $(1)/usr/lib/iptables - $(CP) $(PKG_INSTALL_DIR)/usr/iptables/lib*.so $(1)/usr/lib/iptables + $(CP) $(PKG_INSTALL_DIR)/usr/lib/iptables/lib*.so $(1)/usr/lib/iptables/ $(INSTALL_DIR) $(1)/etc/init.d $(INSTALL_BIN) files/chilli.init $(1)/etc/init.d/chilli $(INSTALL_DIR) $(1)/etc/config From 18dbe6dbfd68ba8cc36137b1cb2cf88964832032 Mon Sep 17 00:00:00 2001 From: Bruno Randolf Date: Tue, 28 Apr 2015 16:47:33 +0100 Subject: [PATCH 312/681] Add package: bc Copied from oldpackages and slightly updated. Signed-off-by: Bruno Randolf --- utils/bc/Makefile | 65 ++++++++++++++++++++++++++ utils/bc/patches/001-disable-doc.patch | 21 +++++++++ 2 files changed, 86 insertions(+) create mode 100644 utils/bc/Makefile create mode 100644 utils/bc/patches/001-disable-doc.patch diff --git a/utils/bc/Makefile b/utils/bc/Makefile new file mode 100644 index 000000000..900fd3e2b --- /dev/null +++ b/utils/bc/Makefile @@ -0,0 +1,65 @@ +# +# Copyright (C) 2006-2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=bc +PKG_VERSION:=1.06.95 +PKG_RELEASE:=1 + +PKG_SOURCE:=$(PKG_NAME)_$(PKG_VERSION).orig.tar.gz +PKG_SOURCE_URL:=ftp://ftp.debian.org/debian/pool/main/b/bc +PKG_MD5SUM:=24d0831812d8262b6cac8316b0bac483 + +PKG_MAINTAINER:=Bruno Randolf +PKG_LICENSE:=GPL-2.0 +PKG_LICENSE_FILES:=COPYING + +include $(INCLUDE_DIR)/package.mk + +define Package/bc/Default + SECTION:=utils + CATEGORY:=Utilities + URL:=http://packages.debian.org/bc +endef + +define Package/bc + $(call Package/bc/Default) + TITLE:=Arbitrary precision calculator language + DEPENDS:=+libreadline +libncurses +endef + +define Package/bc/description + bc is a language that supports arbitrary precision numbers with + interactive execution of statements. +endef + +define Package/dc + $(call Package/bc/Default) + TITLE:=Arbitrary precision reverse-polish calculator + DEPENDS:=bc +endef + +define Package/dc/description + dc is a reverse-polish desk calculator which supports unlimited + precision arithmetic. +endef + +CONFIGURE_ARGS += --with-readline + +define Package/bc/install + $(INSTALL_DIR) $(1)/usr/bin + $(INSTALL_BIN) $(PKG_BUILD_DIR)/bc/bc $(1)/usr/bin/ +endef + +define Package/dc/install + $(INSTALL_DIR) $(1)/usr/bin + $(INSTALL_BIN) $(PKG_BUILD_DIR)/dc/dc $(1)/usr/bin/ +endef + +$(eval $(call BuildPackage,bc)) +$(eval $(call BuildPackage,dc)) diff --git a/utils/bc/patches/001-disable-doc.patch b/utils/bc/patches/001-disable-doc.patch new file mode 100644 index 000000000..a6ecd6e9f --- /dev/null +++ b/utils/bc/patches/001-disable-doc.patch @@ -0,0 +1,21 @@ +--- bc-1.06.95/Makefile.in 2010-07-03 10:48:13.422725147 +0000 ++++ bc-1.06.95/Makefile.in 2010-07-03 10:50:09.714725197 +0000 +@@ -149,7 +149,7 @@ + sharedstatedir = @sharedstatedir@ + sysconfdir = @sysconfdir@ + target_alias = @target_alias@ +-SUBDIRS = lib bc dc doc ++SUBDIRS = lib bc dc + MAINTAINERCLEANFILES = aclocal.m4 config.h.in configure Makefile.in \ + stamp-h $(distdir).tar.gz h/number.h depcomp missing + +--- bc-1.06.95/Makefile.am 2010-07-03 10:48:32.522725037 +0000 ++++ bc-1.06.95/Makefile.am 2010-07-03 10:48:38.114725024 +0000 +@@ -1,6 +1,6 @@ + ## Process this file with automake to produce Makefile.in + +-SUBDIRS = lib bc dc doc ++SUBDIRS = lib bc dc + + MAINTAINERCLEANFILES = aclocal.m4 config.h.in configure Makefile.in \ + stamp-h $(distdir).tar.gz h/number.h depcomp missing From d2fef65165cbb9d7bb2bad07a482c154131b6941 Mon Sep 17 00:00:00 2001 From: Bruno Randolf Date: Tue, 28 Apr 2015 17:11:18 +0100 Subject: [PATCH 313/681] Add exfat-nofuse: EXFAT filesystem kernel driver Add "exfat-nofuse" kernel module for EXFAT filesystem which was originally found in an Android kernel of Samsung. While there has been some doubt about the license originally, it has later been officially released under the GPL by Samsung and can be found on: http://opensource.samsung.com/reception/receptionSub.do?method=sub&sub=F&searchValue=exfat Signed-off-by: Bruno Randolf --- kernel/exfat-nofuse/Makefile | 51 ++++++++++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 kernel/exfat-nofuse/Makefile diff --git a/kernel/exfat-nofuse/Makefile b/kernel/exfat-nofuse/Makefile new file mode 100644 index 000000000..e87d91637 --- /dev/null +++ b/kernel/exfat-nofuse/Makefile @@ -0,0 +1,51 @@ +# +# Copyright (C) 2014 Bruno Randolf +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk +include $(INCLUDE_DIR)/kernel.mk + +PKG_NAME:=exfat-nofuse +PKG_VERSION:=git-20150301 +PKG_RELEASE:=1 + +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 +PKG_SOURCE_URL:=https://github.com/dorimanx/exfat-nofuse.git +PKG_SOURCE_PROTO:=git +PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) +PKG_SOURCE_VERSION:=63964d3fb69cffe9a38822a657bb3b3279eebadf + +PKG_MAINTAINER:=Bruno Randolf +PKG_LICENSE:=GPL-2.0 +PKG_LICENSE_FILES:=LICENSE + +include $(INCLUDE_DIR)/package.mk + +define KernelPackage/fs-exfat + SUBMENU:=Filesystems + TITLE:=ExFAT Kernel driver + FILES:=$(PKG_BUILD_DIR)/exfat.ko + AUTOLOAD:=$(call AutoLoad,30,exfat,1) + DEPENDS:=+kmod-nls-base +endef + +define KernelPackage/fs-exfat/description + Kernel module for ExFAT Filesytems +endef + +MAKE_OPTS:= \ + ARCH="$(LINUX_KARCH)" \ + CROSS_COMPILE="$(TARGET_CROSS)" \ + M="$(PKG_BUILD_DIR)" + +define Build/Compile + $(MAKE) -C "$(LINUX_DIR)" \ + $(MAKE_OPTS) \ + CONFIG_EXFAT_FS=m \ + modules +endef + +$(eval $(call KernelPackage,fs-exfat)) From ad4b13f2c1cb126d33ee75148742db0e589f866a Mon Sep 17 00:00:00 2001 From: Bruno Randolf Date: Tue, 28 Apr 2015 18:09:59 +0100 Subject: [PATCH 314/681] exfat-nofuse: Depend on BUILD_PATENTED ExFAT is patented by Microsoft. Signed-off-by: Bruno Randolf --- kernel/exfat-nofuse/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/kernel/exfat-nofuse/Makefile b/kernel/exfat-nofuse/Makefile index e87d91637..232ddeef8 100644 --- a/kernel/exfat-nofuse/Makefile +++ b/kernel/exfat-nofuse/Makefile @@ -29,7 +29,7 @@ define KernelPackage/fs-exfat TITLE:=ExFAT Kernel driver FILES:=$(PKG_BUILD_DIR)/exfat.ko AUTOLOAD:=$(call AutoLoad,30,exfat,1) - DEPENDS:=+kmod-nls-base + DEPENDS:=+kmod-nls-base @BUILD_PATENTED endef define KernelPackage/fs-exfat/description From b195c1c3678be607565c006bbc367a7bb998ead0 Mon Sep 17 00:00:00 2001 From: Marty R Date: Tue, 28 Apr 2015 14:19:38 -0700 Subject: [PATCH 315/681] nut: Update to 2.7.3 Updated the package to the latest upstream version. Removed a patch that was merged upstream. Bumped copyright notice to 2015. Signed-off-by: Martin Rowe --- net/nut/Makefile | 6 ++--- .../001-fix-missing-libmath-flags.patch | 22 ------------------- 2 files changed, 3 insertions(+), 25 deletions(-) delete mode 100644 net/nut/patches/001-fix-missing-libmath-flags.patch diff --git a/net/nut/Makefile b/net/nut/Makefile index d23b7cb5d..32a3e1343 100644 --- a/net/nut/Makefile +++ b/net/nut/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2006-2014 OpenWrt.org +# Copyright (C) 2006-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=nut -PKG_VERSION:=2.7.2 +PKG_VERSION:=2.7.3 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://www.networkupstools.org/source/2.7/ -PKG_MD5SUM:=c3568b42e058cfc385b46d25140dced4 +PKG_MD5SUM:=a1a7f747093663e1f39ab595b63b45e4 PKG_MAINTAINER:=Martin Rowe PKG_LICENSE:=GPL-2.0 PKG_LICENSE_FILES:=LICENSE-GPL2 diff --git a/net/nut/patches/001-fix-missing-libmath-flags.patch b/net/nut/patches/001-fix-missing-libmath-flags.patch deleted file mode 100644 index 88996be6e..000000000 --- a/net/nut/patches/001-fix-missing-libmath-flags.patch +++ /dev/null @@ -1,22 +0,0 @@ ---- a/drivers/Makefile.am -+++ b/drivers/Makefile.am -@@ -171,7 +171,7 @@ tripplite_usb_SOURCES = tripplite_usb.c - tripplite_usb_LDADD = $(LDADD_DRIVERS) $(LIBUSB_LIBS) -lm - - bcmxcp_usb_SOURCES = bcmxcp_usb.c bcmxcp.c usb-common.c --bcmxcp_usb_LDADD = $(LDADD_DRIVERS) $(LIBUSB_LIBS) -+bcmxcp_usb_LDADD = $(LDADD_DRIVERS) $(LIBUSB_LIBS) -lm - - blazer_usb_SOURCES = blazer.c blazer_usb.c libusb.c usb-common.c - blazer_usb_LDADD = $(LDADD_DRIVERS) $(LIBUSB_LIBS) -lm ---- a/drivers/Makefile.in -+++ b/drivers/Makefile.in -@@ -785,7 +785,7 @@ usbhid_ups_LDADD = $(LDADD_DRIVERS) $(LI - tripplite_usb_SOURCES = tripplite_usb.c libusb.c usb-common.c - tripplite_usb_LDADD = $(LDADD_DRIVERS) $(LIBUSB_LIBS) -lm - bcmxcp_usb_SOURCES = bcmxcp_usb.c bcmxcp.c usb-common.c --bcmxcp_usb_LDADD = $(LDADD_DRIVERS) $(LIBUSB_LIBS) -+bcmxcp_usb_LDADD = $(LDADD_DRIVERS) $(LIBUSB_LIBS) -lm - blazer_usb_SOURCES = blazer.c blazer_usb.c libusb.c usb-common.c - blazer_usb_LDADD = $(LDADD_DRIVERS) $(LIBUSB_LIBS) -lm - nutdrv_atcl_usb_SOURCES = nutdrv_atcl_usb.c usb-common.c From 2bdf5147ccc6a771eeb8081916761f1741831a32 Mon Sep 17 00:00:00 2001 From: Ted Hess Date: Tue, 28 Apr 2015 17:34:05 -0400 Subject: [PATCH 316/681] avrdude: Add libelf dependency Signed-off-by: Ted Hess --- utils/avrdude/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/utils/avrdude/Makefile b/utils/avrdude/Makefile index 97db6f74c..79a5f0934 100644 --- a/utils/avrdude/Makefile +++ b/utils/avrdude/Makefile @@ -29,7 +29,7 @@ define Package/avrdude CATEGORY:=Utilities TITLE:=AVR Downloader/UploaDEr URL:=http://www.nongnu.org/avrdude/ - DEPENDS:=+libncurses +libreadline +libusb-compat +libftdi1 + DEPENDS:=+libncurses +libreadline +libusb-compat +libftdi1 +libelf1 endef define Package/avrdude/description From 95faa1a0bae5c220d37e503fdc0c7d8f73aba528 Mon Sep 17 00:00:00 2001 From: Alexander Ryzhov Date: Wed, 29 Apr 2015 08:42:02 +0000 Subject: [PATCH 317/681] haproxy: fix halog linkage Signed-off-by: Alexander Ryzhov --- net/haproxy/Makefile | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/net/haproxy/Makefile b/net/haproxy/Makefile index 7ed23696d..eacd13559 100644 --- a/net/haproxy/Makefile +++ b/net/haproxy/Makefile @@ -10,7 +10,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=haproxy PKG_VERSION:=1.5.11 -PKG_RELEASE:=09 +PKG_RELEASE:=10 PKG_SOURCE:=haproxy-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://haproxy.1wt.eu/download/1.5/src/ PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/$(PKG_NAME)-$(PKG_VERSION) @@ -96,12 +96,8 @@ define Build/Compile install $(MAKE) -C $(PKG_BUILD_DIR)/contrib/halog \ - DESTDIR="$(PKG_INSTALL_DIR)" \ - CC="$(TARGET_CC)" \ - CFLAGS="$(TARGET_CFLAGS) -fno-align-jumps -fno-align-functions -fno-align-labels -fno-align-loops -pipe -fomit-frame-pointer -fhonour-copts" \ - LD="$(TARGET_CC)" \ - LDFLAGS="$(TARGET_LDFLAGS)" \ - VERSION="$(PKG_VERSION)-patch$(PKG_RELEASE)" \ + CC="$(TARGET_CC) $(TARGET_CFLAGS) $(TARGET_LDFLAGS)" \ + OPTIMIZE="" \ halog endef From 7d81e5287739bd6af0eb461af2f52277061ec928 Mon Sep 17 00:00:00 2001 From: Syrone Wong Date: Wed, 29 Apr 2015 22:12:29 +0800 Subject: [PATCH 318/681] ffmpeg: upgrade to 2.6.2 2.6.2 was released on 2015-04-12. It is the latest stable FFmpeg release from the 2.6 release branch --- multimedia/ffmpeg/Makefile | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/multimedia/ffmpeg/Makefile b/multimedia/ffmpeg/Makefile index 9fd40113b..dddb6efbd 100644 --- a/multimedia/ffmpeg/Makefile +++ b/multimedia/ffmpeg/Makefile @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=ffmpeg -PKG_VERSION:=2.5.5 -PKG_RELEASE:=2 +PKG_VERSION:=2.6.2 +PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 PKG_SOURCE_URL:=http://ffmpeg.org/releases/ -PKG_MD5SUM:=46e5697fc43d21de531de3b5f7b97e24 +PKG_MD5SUM:=e75d598921285d6775f20164a91936ac PKG_MAINTAINER:=Ted Hess PKG_LICENSE:=LGPL-2.1+ GPL-2+ LGPL-3 From c380283137d87cc8643b77dedf43331ca4e71553 Mon Sep 17 00:00:00 2001 From: Michael Heimpold Date: Wed, 29 Apr 2015 20:37:26 +0200 Subject: [PATCH 319/681] ser2net: add patch for LED activity support This adds a patch for ser2net, so that ser2net can be configured to flash leds on serial traffic. This could -for example- be used to have an activity indicator, like netdev trigger. Internally, the linux kernel's 'transient' led trigger is used. Signed-off-by: Michael Heimpold --- net/ser2net/Makefile | 2 +- net/ser2net/patches/002-LED-trigger.patch | 418 ++++++++++++++++++++++ 2 files changed, 419 insertions(+), 1 deletion(-) create mode 100644 net/ser2net/patches/002-LED-trigger.patch diff --git a/net/ser2net/Makefile b/net/ser2net/Makefile index ec0b5731f..49c9774ed 100644 --- a/net/ser2net/Makefile +++ b/net/ser2net/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=ser2net PKG_VERSION:=2.10.0 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=@SF/ser2net diff --git a/net/ser2net/patches/002-LED-trigger.patch b/net/ser2net/patches/002-LED-trigger.patch new file mode 100644 index 000000000..bfc2734f9 --- /dev/null +++ b/net/ser2net/patches/002-LED-trigger.patch @@ -0,0 +1,418 @@ +From fa68debd94d40299dd2a69abd0a820ccfaadcbe8 Mon Sep 17 00:00:00 2001 +From: Michael Heimpold +Date: Wed, 22 Apr 2015 13:35:43 +0200 +Subject: [PATCH] Add support for triggering LEDs during serial traffic + +Signed-off-by: Michael Heimpold +--- + +Patch sent upstream: + http://sourceforge.net/p/ser2net/mailman/message/34064847/ + + Makefile.am | 4 +-- + dataxfer.c | 20 ++++++++++++ + readconfig.c | 100 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + ser2net.conf | 13 ++++++++ + sysfs-led.c | 43 +++++++++++++++++++++++++ + sysfs-led.h | 11 +++++++ + utils.c | 30 ++++++++++++++++++ + utils.h | 9 ++++++ + 8 files changed, 228 insertions(+), 2 deletions(-) + create mode 100644 sysfs-led.c + create mode 100644 sysfs-led.h + +diff --git a/Makefile.am b/Makefile.am +index d56179f..866eb89 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -2,9 +2,9 @@ sbin_PROGRAMS = ser2net + ACLOCAL_AMFLAGS = -I m4 + AM_CFLAGS=-Wall + ser2net_SOURCES = controller.c dataxfer.c devcfg.c readconfig.c selector.c \ +- ser2net.c utils.c telnet.c buffer.c ++ ser2net.c utils.c telnet.c buffer.c sysfs-led.c + noinst_HEADERS = controller.h dataxfer.h devio.h readconfig.h selector.h \ +- utils.h telnet.h buffer.h ser2net.h ++ utils.h telnet.h buffer.h sysfs-led.h ser2net.h + man_MANS = ser2net.8 + EXTRA_DIST = $(man_MANS) ser2net.conf ser2net.spec ser2net.init + +diff --git a/dataxfer.c b/dataxfer.c +index 646a71b..b99cabf 100644 +--- a/dataxfer.c ++++ b/dataxfer.c +@@ -42,6 +42,7 @@ + #include "telnet.h" + #include "devio.h" + #include "buffer.h" ++#include "sysfs-led.h" + + #define SERIAL "term" + #define NET "tcp " +@@ -230,6 +231,12 @@ typedef struct port_info + #ifdef USE_RS485_FEATURE + struct serial_rs485 *rs485conf; + #endif ++ ++ /* ++ * LED names to flash for serial traffic ++ */ ++ char *led_tx; ++ char *led_rx; + } port_info_t; + + port_info_t *ports = NULL; /* Linked list of ports. */ +@@ -311,6 +318,8 @@ init_port_data(port_info_t *port) + #ifdef USE_RS485_FEATURE + port->rs485conf = NULL; + #endif ++ port->led_tx = NULL; ++ port->led_rx = NULL; + } + + static void +@@ -530,6 +539,9 @@ handle_dev_fd_read(struct devio *io) + /* Do both tracing, ignore errors. */ + do_trace(port, port->tb, port->dev_to_tcp.buf, count, SERIAL); + ++ if (port->led_rx) ++ led_blink_kick(port->led_rx); ++ + port->dev_bytes_received += count; + + if (port->enabled == PORT_TELNET) { +@@ -759,6 +771,8 @@ handle_tcp_fd_read(int fd, void *data) + return; + } + } else { ++ if (port->led_tx) ++ led_blink_kick(port->led_tx); + port->dev_bytes_sent += count; + port->tcp_to_dev.cursize -= count; + if (port->tcp_to_dev.cursize != 0) { +@@ -1854,6 +1868,12 @@ myconfig(void *data, struct absout *eout, const char *pos) + } else if (strncmp(pos, "tb=", 3) == 0) { + /* trace both directions. */ + port->trace_both.filename = find_tracefile(pos + 3); ++ } else if (strncmp(pos, "led-rx=", 7) == 0) { ++ /* LED for UART RX traffic */ ++ port->led_rx = find_led(pos + 7); ++ } else if (strncmp(pos, "led-tx=", 7) == 0) { ++ /* LED for UART TX traffic */ ++ port->led_tx = find_led(pos + 7); + #ifdef USE_RS485_FEATURE + } else if (strncmp(pos, "rs485=", 6) == 0) { + /* get RS485 configuration. */ +diff --git a/readconfig.c b/readconfig.c +index d4ca0d4..62cff5c 100644 +--- a/readconfig.c ++++ b/readconfig.c +@@ -31,6 +31,7 @@ + #include "readconfig.h" + #include "utils.h" + #include "telnet.h" ++#include "sysfs-led.h" + + #define MAX_LINE_SIZE 256 /* Maximum line length in the config file. */ + +@@ -361,6 +362,89 @@ free_rs485confs(void) + } + #endif + ++struct led_s ++{ ++ char *name; ++ char *device; ++ unsigned int duration; ++ struct led_s *next; ++}; ++ ++/* all LEDs in the system. */ ++struct led_s *leds = NULL; ++ ++static void ++handle_led(char *name, char *cfg) ++{ ++ struct led_s *new_led; ++ char devicename[256]; ++ ++ new_led = malloc(sizeof(*new_led)); ++ if (!new_led) { ++ syslog(LOG_ERR, "Out of memory handling LED on %d", lineno); ++ return; ++ } ++ ++ new_led->name = strdup(name); ++ if (!new_led->name) { ++ syslog(LOG_ERR, "Out of memory handling LED on %d", lineno); ++ free(new_led); ++ return; ++ } ++ ++ if (sscanf(cfg, "%256s %u", devicename, &new_led->duration) != 2) { ++ syslog(LOG_ERR, "Couldn't parse LED config on %d", lineno); ++ free(new_led->name); ++ free(new_led); ++ return; ++ } ++ ++ new_led->device = strdup(devicename); ++ if (!new_led->device) { ++ syslog(LOG_ERR, "Out of memory handling LED on %d", lineno); ++ free(new_led->name); ++ free(new_led); ++ return; ++ } ++ ++ /* setup the led */ ++ led_blink_prepare(new_led->device, new_led->duration); ++ ++ new_led->next = leds; ++ leds = new_led; ++} ++ ++char * ++find_led(const char *name) ++{ ++ struct led_s *led = leds; ++ ++ while (led) { ++ if (strcmp(name, led->name) == 0) ++ return strdup(led->device); ++ led = led->next; ++ } ++ syslog(LOG_ERR, "LED %s not found, it will be ignored", name); ++ return NULL; ++} ++ ++static void ++free_leds(void) ++{ ++ struct led_s *led; ++ ++ while (leds) { ++ led = leds; ++ leds = leds->next; ++ ++ led_off(led->device); ++ ++ free(led->name); ++ free(led->device); ++ free(led); ++ } ++} ++ + static int + startswith(char *str, const char *test, char **strtok_data) + { +@@ -503,6 +587,21 @@ handle_config_line(char *inbuf) + return; + } + ++ if (startswith(inbuf, "LED", &strtok_data)) { ++ char *name = strtok_r(NULL, ":", &strtok_data); ++ char *str = strtok_r(NULL, "\n", &strtok_data); ++ if (name == NULL) { ++ syslog(LOG_ERR, "No LED name given on line %d", lineno); ++ return; ++ } ++ if ((str == NULL) || (strlen(str) == 0)) { ++ syslog(LOG_ERR, "No LED given on line %d", lineno); ++ return; ++ } ++ handle_led(name, str); ++ return; ++ } ++ + comma = strchr(inbuf, ','); + if (comma) { + if (!strtok_r(comma, ":", &strtok_data)) { +@@ -568,6 +667,7 @@ readconfig(char *filename) + #ifdef USE_RS485_FEATURE + free_rs485confs(); + #endif ++ free_leds(); + + config_num++; + +diff --git a/ser2net.conf b/ser2net.conf +index 870926c..dc2ba19 100644 +--- a/ser2net.conf ++++ b/ser2net.conf +@@ -53,6 +53,8 @@ + # specified in TRACEFILE that will take all traced data. + # tw is data written to the device, tr is data read from + # the device, and tb is both. ++# The "led-tx" and "led-rx" options allow to specify ++# a LED defined above to trigger for traffic. + # + # or... + +@@ -79,6 +81,12 @@ + # This specifies a filename to trace output into, as tw=/tmp/trace1. + # This takes the same escape sequences as banners. + # ++# LED::sysfs-filename duration ++# This specifies a LED which will be configured to use linux's transient trigger. ++# The LED is always kicked when traffic is detected on serial side. The duration ++# is given in milliseconds. See Linux's documentation for transient trigger for ++# details. ++# + # OPENSTR::str + # This specifies a string to be transmitted to the device when the + # port is opened. This takes the same escape sequences as banners. +@@ -108,6 +116,9 @@ SIGNATURE:signature1:ser2net port ttyS2 + + RS485CONF:rs485port1:0:0:0:0 + ++LED:rx:duckbill:green:rs485 10 ++LED:tx:duckbill:red:rs485 10 ++ + TRACEFILE:tw1:/tmp/tw-\p-\Y-\M-\D-\H:\i:\s.\U + TRACEFILE:tr1:/tmp/tr-\p-\Y-\M-\D-\H:\i:\s.\U + +@@ -138,3 +149,5 @@ CLOSESTR:close1:close str\r\n + + 3020:telnet:0:/dev/ttyUSB0:9600 banner1 remctl asdfasd + 3021:telnet:0:/dev/ttyUSB1:9600 banner2 open1 close1 remctl ++ ++5000:telnet:0:/dev/ttyAPP0:9600 NONE 1STOPBIT 8DATABITS -XONXOFF LOCAL -RTSCTS led-tx=tx led-rx=rx +diff --git a/sysfs-led.c b/sysfs-led.c +new file mode 100644 +index 0000000..efe0b29 +--- /dev/null ++++ b/sysfs-led.c +@@ -0,0 +1,43 @@ ++/* ++ * Copyright (C) 2015 I2SE GmbH ++ */ ++#include ++#include ++ ++#include "utils.h" ++#include "sysfs-led.h" ++ ++#define SYSFS_LED_BASE "/sys/class/leds" ++ ++static int led_write(char *led, char *property, char *buf) ++{ ++ char fn[255]; ++ ++ snprintf(fn, sizeof(fn), "%s/%s/%s", SYSFS_LED_BASE, led, property); ++ ++ return file_store(fn, buf, strlen(buf)); ++} ++ ++int led_off(char *led) ++{ ++ led_write(led, "trigger", "none"); ++ led_write(led, "brightness", "0"); ++ return 0; ++} ++ ++int led_blink_prepare(char *led, unsigned int duration) ++{ ++ char buffer[10]; ++ ++ snprintf(buffer, sizeof(buffer), "%u", duration); ++ led_write(led, "trigger", "transient"); ++ msleep(10); ++ led_write(led, "state", "1"); ++ led_write(led, "duration", buffer); ++ return 0; ++} ++ ++int led_blink_kick(char *led) ++{ ++ return led_write(led, "activate", "1"); ++} +diff --git a/sysfs-led.h b/sysfs-led.h +new file mode 100644 +index 0000000..00b21b6 +--- /dev/null ++++ b/sysfs-led.h +@@ -0,0 +1,11 @@ ++/* ++ * Copyright (C) 2015 I2SE GmbH ++ */ ++#ifndef SYSFS_LED_H ++#define SYSFS_LED_H ++ ++int led_off(char *led); ++int led_blink_prepare(char *led, unsigned int duration); ++int led_blink_kick(char *led); ++ ++#endif /* SYSFS_LED_H */ +diff --git a/utils.c b/utils.c +index c194c4c..c96cedb 100644 +--- a/utils.c ++++ b/utils.c +@@ -25,6 +25,9 @@ + #include + #include + #include ++#include ++#include ++#include + + #include "ser2net.h" + #include "utils.h" +@@ -205,3 +208,30 @@ write_ignore_fail(int fd, const char *data, size_t count) + count -= written; + } + } ++ ++int ++msleep(int msec) ++{ ++ struct timespec req; ++ ++ req.tv_sec = 0; ++ req.tv_nsec = msec * 1000000; ++ ++ return nanosleep(&req, NULL); ++} ++ ++int ++file_store(const char *filename, const char *buf, size_t count) ++{ ++ int fd; ++ ++ if ((fd = open(filename, O_WRONLY | O_CREAT | O_TRUNC, S_IRUSR | S_IWUSR)) == -1) ++ return -1; ++ ++ if (write(fd, buf, count) != count) { ++ close(fd); ++ return -1; ++ } ++ ++ return close(fd); ++} +diff --git a/utils.h b/utils.h +index 582ea88..8af65ec 100644 +--- a/utils.h ++++ b/utils.h +@@ -64,6 +64,9 @@ char *find_tracefile(const char *name); + /* Search for RS485 configuration by name. */ + struct serial_rs485 *find_rs485conf(const char *name); + ++/* Search for a LED by name */ ++char *find_led(const char *name); ++ + void check_ipv6_only(int family, struct sockaddr *addr, int fd); + + /* Make sure the full contents get written, return an error if it occurs. */ +@@ -72,4 +75,10 @@ int write_full(int fd, char *data, size_t count); + /* Write the data completely out, return without comment on error. */ + void write_ignore_fail(int fd, const char *data, size_t count); + ++/* Helper to sleep a given amount of milli-seconds */ ++int msleep(int msec); ++ ++/* Store the given data to a file */ ++int file_store(const char *filename, const char *buf, size_t count); ++ + #endif /* UTILS */ +-- +1.7.10.4 + From e9172c32b4e07c47338c7b6c781e6da97ee5206d Mon Sep 17 00:00:00 2001 From: Michael Heimpold Date: Wed, 29 Apr 2015 21:48:07 +0200 Subject: [PATCH 320/681] php5: upgrade to 5.6.8 This fixes the following CVEs: - CVE-2015-1351 - CVE-2015-1352 - CVE-2015-2783 - CVE-2015-3329 - CVE-2015-3330 Signed-off-by: Michael Heimpold --- lang/php5/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lang/php5/Makefile b/lang/php5/Makefile index 1092b5cde..dac3c738e 100644 --- a/lang/php5/Makefile +++ b/lang/php5/Makefile @@ -8,7 +8,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=php -PKG_VERSION:=5.6.7 +PKG_VERSION:=5.6.8 PKG_RELEASE:=1 PKG_MAINTAINER:=W. Michael Petullo @@ -18,7 +18,7 @@ PKG_LICENSE_FILES:=LICENSE PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 PKG_SOURCE_URL:=http://www.php.net/distributions/ -PKG_MD5SUM:=2e4b0534d4b8aa9aabedeef12e7c0aa8 +PKG_MD5SUM:=a5a6df33aade0cb5425e4374e3832f0b PKG_FIXUP:=libtool autoreconf PKG_BUILD_PARALLEL:=1 From 39a4601aac5f59a4df9b26ed4d93090cbe3a0648 Mon Sep 17 00:00:00 2001 From: Hauke Mehrtens Date: Wed, 29 Apr 2015 22:29:23 +0200 Subject: [PATCH 321/681] tor: update to stable version 0.2.5.12 Signed-off-by: Hauke Mehrtens --- net/tor/Makefile | 4 ++-- net/tor/patches/001-torrc.patch | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/net/tor/Makefile b/net/tor/Makefile index 8550f8358..990642a88 100644 --- a/net/tor/Makefile +++ b/net/tor/Makefile @@ -8,13 +8,13 @@ include $(TOPDIR)/rules.mk PKG_NAME:=tor -PKG_VERSION:=0.2.5.10 +PKG_VERSION:=0.2.5.12 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=https://www.torproject.org/dist \ https://archive.torproject.org/tor-package-archive -PKG_MD5SUM:=4bde375229a7a7f77c0596ae05556527 +PKG_MD5SUM:=89745069a7efb7aafd01ae263bd0fe5c PKG_MAINTAINER:=Hauke Mehrtens PKG_LICENSE_FILES:=LICENSE diff --git a/net/tor/patches/001-torrc.patch b/net/tor/patches/001-torrc.patch index 988cb8e5a..e295219f1 100644 --- a/net/tor/patches/001-torrc.patch +++ b/net/tor/patches/001-torrc.patch @@ -14,7 +14,7 @@ ## The port on which Tor will listen for local connections from Tor ## controller applications, as documented in control-spec.txt. -@@ -187,3 +187,4 @@ +@@ -190,3 +190,4 @@ ## address manually to your friends, uncomment this line: #PublishServerDescriptor 0 From 95aef0298be6de35f827ca42c110a51abc4965bc Mon Sep 17 00:00:00 2001 From: Hauke Mehrtens Date: Wed, 29 Apr 2015 23:12:49 +0200 Subject: [PATCH 322/681] tor: disable seccomp support seccomp is only supported on x86, amd64 and arm in tor. This deactivated it currently completely which should close #935, #1097, #1147 and #1161. Signed-off-by: Hauke Mehrtens --- net/tor/Makefile | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/net/tor/Makefile b/net/tor/Makefile index 990642a88..d042ffbcc 100644 --- a/net/tor/Makefile +++ b/net/tor/Makefile @@ -82,7 +82,8 @@ CONFIGURE_ARGS += \ --with-libminiupnpc-dir="$(STAGING_DIR)/usr" \ --enable-nat-pmp \ --with-libnatpmp-dir="$(STAGING_DIR)/usr" \ - --disable-asciidoc + --disable-asciidoc \ + --disable-seccomp ifneq ($(CONFIG_SSP_SUPPORT),y) CONFIGURE_ARGS += \ From 201aa65a56e9ecc7875f25997da4048fbedb0125 Mon Sep 17 00:00:00 2001 From: Nicolas Thill Date: Thu, 30 Apr 2015 04:10:29 +0200 Subject: [PATCH 323/681] lua-lzlib: fix build failure, honor cflags, cleanup * fix failure on buildbot where lua devel files are searched in home directory * add a patch to pass proper target optimization flags * remove unused PKG_INSTALL & Build/Install Signed-off-by: Nicolas Thill --- lang/lua-lzlib/Makefile | 9 ++++----- lang/lua-lzlib/patches/001-allow_optim_flags.patch | 12 ++++++++++++ 2 files changed, 16 insertions(+), 5 deletions(-) create mode 100644 lang/lua-lzlib/patches/001-allow_optim_flags.patch diff --git a/lang/lua-lzlib/Makefile b/lang/lua-lzlib/Makefile index 4b9468789..096cec0d7 100644 --- a/lang/lua-lzlib/Makefile +++ b/lang/lua-lzlib/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=lua-lzlib PKG_VERSION:=0.4.1 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_MAINTAINER:=Dirk Chang PKG_LICENSE:=MIT @@ -19,8 +19,6 @@ PKG_SOURCE_PROTO:=git PKG_SOURCE_VERSION:=9fa3993bb4504fbbc10511cde141e1c6a48c072d PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) -PKG_INSTALL:=1 - include $(INCLUDE_DIR)/package.mk define Package/lua-lzlib @@ -36,8 +34,9 @@ define Package/lua-lzlib/description A library to access zlib library functions and also to read/write gzip files using an interface similar to the base io package. endef -define Build/Install -endef +MAKE_FLAGS += \ + LUA="$(STAGING_DIR)/usr" \ + OFLAGS="$(TARGET_CFLAGS)" \ define Package/lua-lzlib/install $(INSTALL_DIR) $(1)/usr/lib/lua diff --git a/lang/lua-lzlib/patches/001-allow_optim_flags.patch b/lang/lua-lzlib/patches/001-allow_optim_flags.patch new file mode 100644 index 000000000..78f981d23 --- /dev/null +++ b/lang/lua-lzlib/patches/001-allow_optim_flags.patch @@ -0,0 +1,12 @@ +--- a/Makefile ++++ b/Makefile +@@ -14,7 +14,8 @@ LUABIN= $(LUA)/bin + ZLIB=../zlib-1.2.3 + + # no need to change anything below here +-CFLAGS= $(INCS) $(DEFS) $(WARN) -O0 -fPIC ++CFLAGS= $(INCS) $(DEFS) $(WARN) $(OFLAGS) -fPIC ++OFLAGS= -O0 + WARN= -g -Werror -Wall -pedantic #-ansi + INCS= -I$(LUAINC) -I$(ZLIB) + LIBS= -L$(ZLIB) -lz -L$(LUALIB) -L$(LUABIN) #-llua51 From 7d10659c662c66d6b84825a58f7d7a13553f1cc8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Toke=20H=C3=B8iland-J=C3=B8rgensen?= Date: Tue, 28 Apr 2015 11:05:42 +0200 Subject: [PATCH 324/681] sqm-scripts: Only run on hotplug if the init script is enabled. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Fixes #1202. Signed-off-by: Toke Høiland-Jørgensen --- net/sqm-scripts/Makefile | 2 +- net/sqm-scripts/files/etc/hotplug.d/iface/11-sqm | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/net/sqm-scripts/Makefile b/net/sqm-scripts/Makefile index 3fa5e365b..68a599063 100644 --- a/net/sqm-scripts/Makefile +++ b/net/sqm-scripts/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=sqm-scripts PKG_VERSION:=8 -PKG_RELEASE:=3 +PKG_RELEASE:=4 PKG_LICENSE:=GPLv2 PKG_BUILD_DIR := $(BUILD_DIR)/$(PKG_NAME) diff --git a/net/sqm-scripts/files/etc/hotplug.d/iface/11-sqm b/net/sqm-scripts/files/etc/hotplug.d/iface/11-sqm index 439307e31..38ceb25de 100755 --- a/net/sqm-scripts/files/etc/hotplug.d/iface/11-sqm +++ b/net/sqm-scripts/files/etc/hotplug.d/iface/11-sqm @@ -1,3 +1,3 @@ #!/bin/sh -[ "$ACTION" = ifup ] && /usr/lib/sqm/run.sh start ${DEVICE} +[ "$ACTION" = ifup ] && /etc/init.d/sqm enabled && /usr/lib/sqm/run.sh start ${DEVICE} From e5f8c378c1cc787d3fd1aed751c783b8b58774ae Mon Sep 17 00:00:00 2001 From: Nikos Mavrogiannopoulos Date: Thu, 30 Apr 2015 22:21:10 +0200 Subject: [PATCH 325/681] ocserv: updated to 0.10.4 Signed-off-by: Nikos Mavrogiannopoulos --- net/ocserv/Makefile | 6 ++--- .../001-correct-session-expiration.patch | 22 ------------------- 2 files changed, 3 insertions(+), 25 deletions(-) delete mode 100644 net/ocserv/patches/001-correct-session-expiration.patch diff --git a/net/ocserv/Makefile b/net/ocserv/Makefile index 8e0eac766..9925d340b 100644 --- a/net/ocserv/Makefile +++ b/net/ocserv/Makefile @@ -8,13 +8,13 @@ include $(TOPDIR)/rules.mk PKG_NAME:=ocserv -PKG_VERSION:=0.10.3 -PKG_RELEASE:=2 +PKG_VERSION:=0.10.4 +PKG_RELEASE:=1 PKG_BUILD_DIR :=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION) PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=ftp://ftp.infradead.org/pub/ocserv/ -PKG_MD5SUM:=36c947a4e37484487844dc1c977ca870 +PKG_MD5SUM:=6df31778642320ea7b90f314c4c9a897 PKG_LICENSE:=GPLv2 PKG_LICENSE_FILES:=COPYING diff --git a/net/ocserv/patches/001-correct-session-expiration.patch b/net/ocserv/patches/001-correct-session-expiration.patch deleted file mode 100644 index b0c596b05..000000000 --- a/net/ocserv/patches/001-correct-session-expiration.patch +++ /dev/null @@ -1,22 +0,0 @@ -diff --git a/src/sec-mod-auth.c b/src/sec-mod-auth.c -index 4ee6f57..2fc02b5 100644 ---- a/src/sec-mod-auth.c -+++ b/src/sec-mod-auth.c -@@ -500,7 +500,7 @@ int handle_sec_auth_session_close(int cfd, sec_mod_st *sec, const SecAuthSession - (pack_func) cli_stats_msg__pack); - } - -- if (e->status != PS_AUTH_COMPLETED) { -+ if (e->status < PS_AUTH_COMPLETED) { - seclog(sec, LOG_DEBUG, "session close received in unauthenticated client %s "SESSION_STR"!", e->auth_info.username, e->auth_info.psid); - return send_msg(e, cfd, SM_CMD_AUTH_CLI_STATS, &rep, - (pack_size_func) cli_stats_msg__get_packed_size, -@@ -604,7 +604,7 @@ int handle_sec_auth_stats_cmd(sec_mod_st * sec, const CliStatsMsg * req) - e->stats.uptime = req->uptime; - - if (req->has_invalidate_cookie && req->invalidate_cookie != 0) { -- seclog(sec, LOG_INFO, "invalidating session user '%s' "SESSION_STR, -+ seclog(sec, LOG_INFO, "invalidating session of user '%s' "SESSION_STR, - e->auth_info.username, e->auth_info.psid); - e->status = PS_AUTH_USER_TERM; - } From f746041323d9e35cd311c9280c06994baae017c4 Mon Sep 17 00:00:00 2001 From: Nicolas Thill Date: Fri, 1 May 2015 03:52:22 +0200 Subject: [PATCH 326/681] krb5: fix build failure on rebuild (closes: #1143) Signed-off-by: Nicolas Thill --- net/krb5/Makefile | 1 + 1 file changed, 1 insertion(+) diff --git a/net/krb5/Makefile b/net/krb5/Makefile index c0de8524a..5f6907032 100644 --- a/net/krb5/Makefile +++ b/net/krb5/Makefile @@ -79,6 +79,7 @@ CONFIGURE_VARS += \ ac_cv_file__etc_TIMEZONE=no CONFIGURE_ARGS += \ + --without-system-verto \ --without-tcl \ --without-libedit \ --localstatedir=/etc From efe7e4d1985ff79313ae2b0a2661bf01ee21358d Mon Sep 17 00:00:00 2001 From: Nicolas Thill Date: Fri, 1 May 2015 04:29:39 +0200 Subject: [PATCH 327/681] redsocks: don't use github conflicting tag archives (#1051) Signed-off-by: Nicolas Thill --- net/redsocks/Makefile | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/net/redsocks/Makefile b/net/redsocks/Makefile index 91f047736..caf541e1b 100644 --- a/net/redsocks/Makefile +++ b/net/redsocks/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2014 OpenWrt.org +# Copyright (C) 2014-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -11,10 +11,12 @@ PKG_NAME:=redsocks PKG_VERSION:=0.4 PKG_RELEASE:=1 -PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-release-$(PKG_VERSION) -PKG_SOURCE:=release-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://github.com/darkk/redsocks/archive/ -PKG_MD5SUM:=810102ef06a9ea796f310ae811afc6a8 +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz +PKG_SOURCE_PROTO:=git +PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) +PKG_SOURCE_URL:=https://github.com/darkk/redsocks.git +PKG_SOURCE_VERSION:=release-0.4 + PKG_MAINTAINER:=Johannes Morgenroth PKG_LICENSE:=Apache-2.0 From c5a5bf7145fac610f60cb42dfb6159efe80d0343 Mon Sep 17 00:00:00 2001 From: Nicolas Thill Date: Fri, 1 May 2015 04:37:41 +0200 Subject: [PATCH 328/681] wavemon: don't use github conflicting tag archives (#1051) Signed-off-by: Nicolas Thill --- net/wavemon/Makefile | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/net/wavemon/Makefile b/net/wavemon/Makefile index feb197dfc..f843db834 100644 --- a/net/wavemon/Makefile +++ b/net/wavemon/Makefile @@ -11,9 +11,12 @@ PKG_NAME:=wavemon PKG_VERSION:=0.7.6 PKG_RELEASE:=2 -PKG_SOURCE:=v$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://github.com/uoaerg/wavemon/archive -PKG_MD5SUM:=cd0049f174745d32b4fdf3b63d897bad +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz +PKG_SOURCE_PROTO:=git +PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) +PKG_SOURCE_URL:=https://github.com/uoaerg/wavemon.git +PKG_SOURCE_VERSION:=v$(PKG_VERSION) + PKG_LICENSE:=GPL-2.0+ PKG_LICENSE_FILES:=COPYING PKG_MAINTAINER:=Jonathan McCrohan From 884c1c9b4223f52f29a29929a4cc8ebabf5bee54 Mon Sep 17 00:00:00 2001 From: Nicolas Thill Date: Fri, 1 May 2015 04:43:13 +0200 Subject: [PATCH 329/681] e2guardian: don't use github conflicting tag archives (#1051) Signed-off-by: Nicolas Thill --- net/e2guardian/Makefile | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/net/e2guardian/Makefile b/net/e2guardian/Makefile index 0823d95fc..114453da3 100644 --- a/net/e2guardian/Makefile +++ b/net/e2guardian/Makefile @@ -14,9 +14,11 @@ PKG_RELEASE:=1 PKG_LICENSE:=GPL-2.0 PKG_MAINTAINER:=Luka Perkov -PKG_SOURCE:=v$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://github.com/e2guardian/e2guardian/archive/ -PKG_MD5SUM:=f8ffac7ac4f040b672cc4e62121bf4c5 +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz +PKG_SOURCE_PROTO:=git +PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) +PKG_SOURCE_URL:=https://github.com/e2guardian/e2guardian.git +PKG_SOURCE_VERSION:=v$(PKG_VERSION) PKG_BUILD_PARALLEL:=1 PKG_INSTALL:=1 From 09a07e9f21cfc1d9649444c2ff9afbce1a4bb183 Mon Sep 17 00:00:00 2001 From: Nicolas Thill Date: Fri, 1 May 2015 04:52:50 +0200 Subject: [PATCH 330/681] libwebsockets: don't use github conflicting tag archives (#1051) Signed-off-by: Nicolas Thill --- libs/libwebsockets/Makefile | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/libs/libwebsockets/Makefile b/libs/libwebsockets/Makefile index e82e0720a..62cd3fa8b 100644 --- a/libs/libwebsockets/Makefile +++ b/libs/libwebsockets/Makefile @@ -1,19 +1,24 @@ # -# Copyright (C) 2014 OpenWrt.org +# Copyright (C) 2014-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. +# include $(TOPDIR)/rules.mk PKG_NAME:=libwebsockets - PKG_VERSION:=1.3-chrome37-firefox30 PKG_RELEASE:=1 -PKG_SOURCE:=v$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://github.com/warmcat/$(PKG_NAME)/archive/ + +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz +PKG_SOURCE_PROTO:=git PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) +PKG_SOURCE_URL:=https://github.com/warmcat/libwebsockets.git +PKG_SOURCE_VERSION:=v$(PKG_VERSION) + PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/$(PKG_SOURCE_SUBDIR) + PKG_LICENSE:=LGPL-2.1+exception PKG_LICENSE_FILES:=LICENSE From 5420c140c1cb5d6312d2cdb8c2f0780ed173eab3 Mon Sep 17 00:00:00 2001 From: Nicolas Thill Date: Fri, 1 May 2015 04:56:20 +0200 Subject: [PATCH 331/681] luasql: don't use github conflicting tag archives (#1051) Signed-off-by: Nicolas Thill --- lang/luasql/Makefile | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/lang/luasql/Makefile b/lang/luasql/Makefile index 6df105dc7..204d6cc1a 100644 --- a/lang/luasql/Makefile +++ b/lang/luasql/Makefile @@ -11,9 +11,11 @@ PKG_NAME:=luasql PKG_VERSION:=2.3.0 PKG_RELEASE:=1 -PKG_SOURCE:=v$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://github.com/keplerproject/luasql/archive/ -PKG_MD5SUM:=af9f0f3a2313a1fcf88c40700092048d +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz +PKG_SOURCE_PROTO:=git +PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) +PKG_SOURCE_URL:=https://github.com/keplerproject/luasql.git +PKG_SOURCE_VERSION:=v$(PKG_VERSION) PKG_LICENSE:=MIT PKG_LICENSE_FILES:=docs/us/license.html From b4cf62813f3e48efb3fff6d0abf1c9779e0b0e16 Mon Sep 17 00:00:00 2001 From: Nicolas Thill Date: Fri, 1 May 2015 07:57:13 +0200 Subject: [PATCH 332/681] uuid: don't use github conflicting tag archives (#1051) Signed-off-by: Nicolas Thill --- lang/uuid/Makefile | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/lang/uuid/Makefile b/lang/uuid/Makefile index 7ec89e353..a093e666c 100644 --- a/lang/uuid/Makefile +++ b/lang/uuid/Makefile @@ -11,9 +11,12 @@ PKG_NAME:=uuid PKG_VERSION:=0.2.0 PKG_RELEASE:=1 -PKG_SOURCE:=version_$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://github.com/Tieske/$(PKG_NAME)/archive/ -PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-version_$(PKG_VERSION) +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz +PKG_SOURCE_PROTO:=git +PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) +PKG_SOURCE_URL:=https://github.com/Tieske/uuid.git +PKG_SOURCE_VERSION:=version_$(PKG_VERSION) + PKG_MAINTAINER:=Amr Hassan PKG_LICENSE=Apache-2.0 From 48ad37c8e47530a0d51072d778d5e4927a5cb179 Mon Sep 17 00:00:00 2001 From: Nicolas Thill Date: Fri, 1 May 2015 07:58:53 +0200 Subject: [PATCH 333/681] lua-mosquitto: don't use github conflicting tag archives (#1051) Signed-off-by: Nicolas Thill --- lang/lua-mosquitto/Makefile | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/lang/lua-mosquitto/Makefile b/lang/lua-mosquitto/Makefile index a8d625f15..680df4b5e 100644 --- a/lang/lua-mosquitto/Makefile +++ b/lang/lua-mosquitto/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2013 OpenWrt.org +# Copyright (C) 2013-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -13,10 +13,11 @@ PKG_RELEASE:=1 PKG_LICENSE:=MIT PKG_LICENSE_FILES:=LICENSE -PKG_SOURCE:=v$(PKG_VERSION).tar.gz +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz +PKG_SOURCE_PROTO:=git PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) -PKG_SOURCE_URL:=https://github.com/flukso/$(PKG_NAME)/archive/ -PKG_MD5SUM:=fd26fa08fc855ba4a66ce521fe5aae13 +PKG_SOURCE_URL:=https://github.com/flukso/lua-mosquitto.git +PKG_SOURCE_VERSION:=v$(PKG_VERSION) include $(INCLUDE_DIR)/package.mk From a2c782c6f0a50cef855d73a886eb491c9d0e9a87 Mon Sep 17 00:00:00 2001 From: Nicolas Thill Date: Fri, 1 May 2015 08:08:40 +0200 Subject: [PATCH 334/681] json4lua: don't use github conflicting tag archives (#1051) Signed-off-by: Nicolas Thill --- lang/json4lua/Makefile | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/lang/json4lua/Makefile b/lang/json4lua/Makefile index ff8774cf1..0e0c9c540 100644 --- a/lang/json4lua/Makefile +++ b/lang/json4lua/Makefile @@ -11,8 +11,12 @@ PKG_NAME:=json4lua PKG_VERSION:=0.9.53 PKG_RELEASE:=1 -PKG_SOURCE:=$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://github.com/amrhassan/$(PKG_NAME)/archive/ +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz +PKG_SOURCE_PROTO:=git +PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) +PKG_SOURCE_URL:=https://github.com/amrhassan/json4lua.git +PKG_SOURCE_VERSION:=$(PKG_VERSION) + PKG_MAINTAINER:=Amr Hassan PKG_LICENSE=MIT From a1bd5565d0a3435b75bcab1c34edd21d57ed2646 Mon Sep 17 00:00:00 2001 From: Nicolas Thill Date: Fri, 1 May 2015 08:14:30 +0200 Subject: [PATCH 335/681] luarocks: don't use github conflicting tag archives (#1051) Signed-off-by: Nicolas Thill --- lang/luarocks/Makefile | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/lang/luarocks/Makefile b/lang/luarocks/Makefile index 15643ff5d..3aae8e9e9 100644 --- a/lang/luarocks/Makefile +++ b/lang/luarocks/Makefile @@ -11,8 +11,12 @@ PKG_NAME:=luarocks PKG_VERSION:=2.2.0-rc1 PKG_RELEASE:=2 -PKG_SOURCE:=v$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://github.com/keplerproject/$(PKG_NAME)/archive/ +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz +PKG_SOURCE_PROTO:=git +PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) +PKG_SOURCE_URL:=https://github.com/keplerproject/luarocks.git +PKG_SOURCE_VERSION:=v$(PKG_VERSION) + PKG_MAINTAINER:=Amr Hassan PKG_INSTALL=1 PKG_BUILD_DEPENDS:=lua/host luac/host From 21e4bb07e947ed432a8fd8d86a5f2651b26734a7 Mon Sep 17 00:00:00 2001 From: Nicolas Thill Date: Fri, 1 May 2015 12:49:52 +0200 Subject: [PATCH 336/681] luarocks: update to 2.2.2 Signed-off-by: Nicolas Thill --- lang/luarocks/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lang/luarocks/Makefile b/lang/luarocks/Makefile index 3aae8e9e9..e0a0f5711 100644 --- a/lang/luarocks/Makefile +++ b/lang/luarocks/Makefile @@ -8,8 +8,8 @@ include $(TOPDIR)/rules.mk PKG_NAME:=luarocks -PKG_VERSION:=2.2.0-rc1 -PKG_RELEASE:=2 +PKG_VERSION:=2.2.2 +PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz PKG_SOURCE_PROTO:=git From 41aa8a5fc9d8d0915aca722ed829cb2ae61d6ba9 Mon Sep 17 00:00:00 2001 From: Ted Hess Date: Fri, 1 May 2015 14:04:13 -0400 Subject: [PATCH 337/681] mjpg-streamer: Update cambozola to specific version, add yuv and jpeg quality init/config options Signed-off-by: Ted Hess --- multimedia/mjpg-streamer/Makefile | 6 +++--- multimedia/mjpg-streamer/files/mjpg-streamer.config | 2 ++ multimedia/mjpg-streamer/files/mjpg-streamer.init | 7 +++++++ 3 files changed, 12 insertions(+), 3 deletions(-) diff --git a/multimedia/mjpg-streamer/Makefile b/multimedia/mjpg-streamer/Makefile index 0a297d4e6..e1e0e200e 100644 --- a/multimedia/mjpg-streamer/Makefile +++ b/multimedia/mjpg-streamer/Makefile @@ -10,7 +10,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=mjpg-streamer PKG_REV:=182 PKG_VERSION:=r$(PKG_REV) -PKG_RELEASE:=6 +PKG_RELEASE:=7 PKG_MAINTAINER:=Roger D PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).1.tar.bz2 @@ -49,12 +49,12 @@ define Package/mjpg-streamer/conffiles /etc/config/mjpg-streamer endef -CAMBOZOLA:=cambozola-latest.tar.gz +CAMBOZOLA:=cambozola-0.936.tar.gz define Download/cambozola URL:=http://www.andywilcock.com/code/cambozola FILE:=$(CAMBOZOLA) - MD5SUM:=c9b0da91f8e6e72efccd307e04e2b75b + MD5SUM:=35c45188aa9635aef2b745c35c311396 endef # Fetch latest cambozola that works with latest Java(s) diff --git a/multimedia/mjpg-streamer/files/mjpg-streamer.config b/multimedia/mjpg-streamer/files/mjpg-streamer.config index 7d6bfa454..a40d7873c 100644 --- a/multimedia/mjpg-streamer/files/mjpg-streamer.config +++ b/multimedia/mjpg-streamer/files/mjpg-streamer.config @@ -5,6 +5,8 @@ config mjpg-streamer 'core' option output 'http' option device '/dev/video0' option resolution '640x480' + option yuv '0' + option quality '80' option fps '5' option led 'auto' option www '/www/webcam' diff --git a/multimedia/mjpg-streamer/files/mjpg-streamer.init b/multimedia/mjpg-streamer/files/mjpg-streamer.init index 1ce5ce1db..06630d423 100644 --- a/multimedia/mjpg-streamer/files/mjpg-streamer.init +++ b/multimedia/mjpg-streamer/files/mjpg-streamer.init @@ -43,6 +43,13 @@ start_instance() { config_get fps "$s" 'fps' [ -n "$fps" ] && input_arg="${input_arg} --fps $fps" + config_get_bool yuv "$s" 'yuv' 0 + if [ $yuv -ne 0 ]; then + input_arg="${input_arg} --yuv" + config_get quality "$s" 'quality' + [ -n "$quality" ] && input_arg="${input_arg} --quality $quality" + fi + config_get resolution "$s" 'resolution' [ -n "$resolution" ] && input_arg="${input_arg} --resolution $resolution" From 69c18b28cd377e804a2413273483f50e14e36689 Mon Sep 17 00:00:00 2001 From: Gergely Kiss Date: Sat, 2 May 2015 13:54:17 +0200 Subject: [PATCH 338/681] seafile: update to version 4.1.2 Signed-off-by: Gergely Kiss --- net/seafile-ccnet/Makefile | 4 ++-- net/seafile-seahub/Makefile | 4 ++-- net/seafile-server/Makefile | 6 +++--- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/net/seafile-ccnet/Makefile b/net/seafile-ccnet/Makefile index 898b939eb..6c7ae8d7b 100644 --- a/net/seafile-ccnet/Makefile +++ b/net/seafile-ccnet/Makefile @@ -8,14 +8,14 @@ include $(TOPDIR)/rules.mk PKG_NAME:=seafile-ccnet -PKG_VERSION:=4.0.6 +PKG_VERSION:=4.1.2 PKG_RELEASE=$(PKG_SOURCE_VERSION) PKG_LICENSE:=GPL-3.0 PKG_SOURCE_PROTO:=git PKG_SOURCE_URL:=https://github.com/haiwen/ccnet.git PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) -PKG_SOURCE_VERSION:=1e1aeae83cc33356ebd5f064f4a4c148186b814d +PKG_SOURCE_VERSION:=a73109f09af4ecc49cdc4c57cdde51b38e15c31a PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.gz PKG_FIXUP:=autoreconf PKG_INSTALL:=1 diff --git a/net/seafile-seahub/Makefile b/net/seafile-seahub/Makefile index 266e45c81..cbedc5c7f 100644 --- a/net/seafile-seahub/Makefile +++ b/net/seafile-seahub/Makefile @@ -8,14 +8,14 @@ include $(TOPDIR)/rules.mk PKG_NAME:=seafile-seahub -PKG_VERSION:=4.0.6 +PKG_VERSION:=4.1.2 PKG_RELEASE=$(PKG_SOURCE_VERSION) PKG_LICENSE:=Apache-2.0 PKG_SOURCE_PROTO:=git PKG_SOURCE_URL:=https://github.com/haiwen/seahub.git PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) -PKG_SOURCE_VERSION:=739b32b02c4803448d5cb75b3e22ec0073930aed +PKG_SOURCE_VERSION:=3fb1288f920de03a4e2e6a06b60671ce98971742 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.gz include $(INCLUDE_DIR)/package.mk diff --git a/net/seafile-server/Makefile b/net/seafile-server/Makefile index a0931d1c0..a098f226c 100644 --- a/net/seafile-server/Makefile +++ b/net/seafile-server/Makefile @@ -8,14 +8,14 @@ include $(TOPDIR)/rules.mk PKG_NAME:=seafile-server -PKG_VERSION:=4.0.6 +PKG_VERSION:=4.1.2 PKG_RELEASE=$(PKG_SOURCE_VERSION) PKG_LICENSE:=GPL-3.0 PKG_SOURCE_PROTO:=git PKG_SOURCE_URL:=https://github.com/haiwen/seafile.git PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) -PKG_SOURCE_VERSION:=adf9a875a960c1471bf6c93fce397c576e985bb3 +PKG_SOURCE_VERSION:=c0166019c712e2e1d5e532fd5f7401b1b72db6d8 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.gz PKG_FIXUP:=autoreconf PKG_INSTALL:=1 @@ -33,7 +33,7 @@ define Package/seafile-server +sqlite3-cli +python-mysql +jansson +libevent2 +libevent2-openssl +zlib +libzdb +libsqlite3 \ +libmysqlclient +libevhtp +libpthread +libuuid \ +bash +sudo +procps +procps-pkill $(ICONV_DEPENDS) - EXTRA_DEPENDS:=seafile-ccnet (=4.0.6-1e1aeae83cc33356ebd5f064f4a4c148186b814d), seafile-seahub (=4.0.6-739b32b02c4803448d5cb75b3e22ec0073930aed) + EXTRA_DEPENDS:=seafile-ccnet (=4.1.2-a73109f09af4ecc49cdc4c57cdde51b38e15c31a), seafile-seahub (=4.1.2-3fb1288f920de03a4e2e6a06b60671ce98971742) endef define Package/seafile-server/description From b7396c9334ae7cf0c783757196b64b0401251e9c Mon Sep 17 00:00:00 2001 From: Gergely Kiss Date: Sat, 2 May 2015 13:55:16 +0200 Subject: [PATCH 339/681] seafile: added configuration file to turn fastcgi mode on/off Signed-off-by: Gergely Kiss --- net/seafile-server/Makefile | 7 +++++++ net/seafile-server/files/seafile.init | 27 ++++++++++++++++++--------- 2 files changed, 25 insertions(+), 9 deletions(-) diff --git a/net/seafile-server/Makefile b/net/seafile-server/Makefile index a098f226c..93ac450ff 100644 --- a/net/seafile-server/Makefile +++ b/net/seafile-server/Makefile @@ -90,6 +90,13 @@ if ! id -u seafile >/dev/null 2>&1; then chown -R seafile:seafile /usr/share/seafile/ chmod -R o-rwx /usr/share/seafile/ +if [ ! -f /etc/config/seafile ]; then +cat < /etc/config/seafile +# Start Seahub in fastcgi mode - 1 = enable, 0 = disable +SEAHUB_FASTCGI=0 +EOF +fi + if [ ! -d "/usr/share/seafile/seafile-data" ] then echo "*** Installation completed, running configuration script..." diff --git a/net/seafile-server/files/seafile.init b/net/seafile-server/files/seafile.init index e9d3b03dc..819807b16 100755 --- a/net/seafile-server/files/seafile.init +++ b/net/seafile-server/files/seafile.init @@ -6,9 +6,13 @@ EXTRA_HELP=" setup Runs the setup script create_admin Creates the administrative login reset_admin Alias to create_admin" EXTRA_COMMANDS="setup create_admin reset_admin" +SEAHUB_FASTCGI=0 -export PATH="/usr/share/seafile/seafile-server/seahub/thirdpart:$PATH" -export PYTHONPATH="/usr/share/seafile/seafile-server/seahub/thirdpart:$PYTHONPATH" +[ -f /etc/config/seafile ] && \ + . /etc/config/seafile + +export PATH="/usr/share/seafile/seafile-server/seahub/thirdpart:${PATH}" +export PYTHONPATH="/usr/share/seafile/seafile-server/seahub/thirdpart:${PYTHONPATH}" start() { if [ ! -d /var/run/seafile ] @@ -18,27 +22,32 @@ start() { chmod o-rwx /var/run/seafile fi - # append parameter "--fastcgi" here to start seahub in fastcgi mode - cd "/usr/share/seafile" && \ - sudo PYTHONPATH="$PYTHONPATH" -u seafile -E \ - "/usr/bin/seafile-admin" start + if [ ${SEAHUB_FASTCGI} -eq 1 ]; then + cd "/usr/share/seafile" && \ + sudo PYTHONPATH="${PYTHONPATH}" -u seafile -E \ + "/usr/bin/seafile-admin" start --fastcgi + else + cd "/usr/share/seafile" && \ + sudo PYTHONPATH="${PYTHONPATH}" -u seafile -E \ + "/usr/bin/seafile-admin" start + fi } stop() { cd "/usr/share/seafile" && \ - sudo PYTHONPATH="$PYTHONPATH" -u seafile -E \ + sudo PYTHONPATH="${PYTHONPATH}" -u seafile -E \ "/usr/bin/seafile-admin" stop } setup() { cd "/usr/share/seafile" && \ - sudo PYTHONPATH="$PYTHONPATH" -u seafile -E \ + sudo PYTHONPATH="${PYTHONPATH}" -u seafile -E \ "/usr/bin/seafile-admin" setup } create_admin() { cd "/usr/share/seafile" && \ - sudo PYTHONPATH="$PYTHONPATH" -u seafile -E \ + sudo PYTHONPATH="${PYTHONPATH}" -u seafile -E \ "/usr/bin/seafile-admin" create-admin } From ecb702d79b51ce7dff1bc620a77e6d68b806d708 Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Sun, 3 May 2015 14:40:08 +0200 Subject: [PATCH 340/681] lvm2: bump version Signed-off-by: Daniel Golle --- utils/lvm2/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/utils/lvm2/Makefile b/utils/lvm2/Makefile index 3e4361b55..819bb6d74 100644 --- a/utils/lvm2/Makefile +++ b/utils/lvm2/Makefile @@ -9,13 +9,13 @@ include $(TOPDIR)/rules.mk PKG_NAME:=LVM2 -PKG_VERSION:=2.02.118 +PKG_VERSION:=2.02.119 PKG_RELEASE:=1 PKG_LICENSE:=GPL-2.0 LGPL-2.1 PKG_SOURCE:=$(PKG_NAME).$(PKG_VERSION).tgz PKG_SOURCE_URL:=ftp://sources.redhat.com/pub/lvm2 -PKG_MD5SUM:=27f028974e8f067a9791d685b4e0fa90 +PKG_MD5SUM:=93d15d76ab78fbcec4721c4b44284bbb PKG_MAINTAINER:=Daniel Golle PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME).$(PKG_VERSION) From 142a24a10b1551c5885f66ef7f7ce48a63dfd193 Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Sun, 3 May 2015 14:47:28 +0200 Subject: [PATCH 341/681] lvm2: better workaround for missing mallinfo on musl Signed-off-by: Daniel Golle --- utils/lvm2/patches/003-no-mallinfo.patch | 39 ++++++++++++++++-------- 1 file changed, 27 insertions(+), 12 deletions(-) diff --git a/utils/lvm2/patches/003-no-mallinfo.patch b/utils/lvm2/patches/003-no-mallinfo.patch index 13372362d..e81dbe9e4 100644 --- a/utils/lvm2/patches/003-no-mallinfo.patch +++ b/utils/lvm2/patches/003-no-mallinfo.patch @@ -1,13 +1,28 @@ -Index: LVM2.2.02.118/lib/mm/memlock.c +Index: LVM2.2.02.119/lib/mm/memlock.c =================================================================== ---- LVM2.2.02.118.orig/lib/mm/memlock.c -+++ LVM2.2.02.118/lib/mm/memlock.c -@@ -137,7 +137,7 @@ static void _touch_memory(void *mem, siz - - static void _allocate_memory(void) - { --#ifndef VALGRIND_POOL -+#if defined(__GLIBC__) && !defined(VALGRIND_POOL) - void *stack_mem; - struct rlimit limit; - int i, area = 0, missing = _size_malloc_tmp, max_areas = 32, hblks; +--- LVM2.2.02.119.orig/lib/mm/memlock.c ++++ LVM2.2.02.119/lib/mm/memlock.c +@@ -161,12 +161,15 @@ static void _allocate_memory(void) + * memory on free(), this is good enough for our purposes. + */ + while (missing > 0) { ++#ifdef __GLIBC__ + struct mallinfo inf = mallinfo(); + hblks = inf.hblks; ++#endif + + if ((areas[area] = malloc(_size_malloc_tmp))) + _touch_memory(areas[area], _size_malloc_tmp); + ++#ifdef __GLIBC__ + inf = mallinfo(); + + if (hblks < inf.hblks) { +@@ -179,6 +182,7 @@ static void _allocate_memory(void) + ++ area; + missing -= _size_malloc_tmp; + } ++#endif + + if (area == max_areas && missing > 0) { + /* Too bad. Warn the user and proceed, as things are From 6eb0919b9026d11155ae9ab3ee29448768f56067 Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Sun, 3 May 2015 15:01:51 +0200 Subject: [PATCH 342/681] cryptodev: get rid of get_unused_fd() The get_unused_fd() macro was removed upstream by https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=f938612dd97d481b8b5bf960c992ae577f081c17 Thus replace get_unused_fd() by get_unused_fd_flags(0) which used to be the definition of the get_unused_fd() macro before it was removed. This fixes cryptodev compilation on kernel 4.0. Signed-off-by: Daniel Golle --- utils/cryptodev-linux/Makefile | 2 +- .../patches/001-no-get-unused-fd.patch | 13 +++++++++++++ 2 files changed, 14 insertions(+), 1 deletion(-) create mode 100644 utils/cryptodev-linux/patches/001-no-get-unused-fd.patch diff --git a/utils/cryptodev-linux/Makefile b/utils/cryptodev-linux/Makefile index e9af4ca91..507cf4f5f 100644 --- a/utils/cryptodev-linux/Makefile +++ b/utils/cryptodev-linux/Makefile @@ -11,7 +11,7 @@ include $(INCLUDE_DIR)/kernel.mk PKG_NAME:=cryptodev-linux PKG_VERSION:=1.7 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://download.gna.org/cryptodev-linux/ diff --git a/utils/cryptodev-linux/patches/001-no-get-unused-fd.patch b/utils/cryptodev-linux/patches/001-no-get-unused-fd.patch new file mode 100644 index 000000000..e3308bbe6 --- /dev/null +++ b/utils/cryptodev-linux/patches/001-no-get-unused-fd.patch @@ -0,0 +1,13 @@ +Index: cryptodev-linux-1.7/ioctl.c +=================================================================== +--- cryptodev-linux-1.7.orig/ioctl.c ++++ cryptodev-linux-1.7/ioctl.c +@@ -546,7 +546,7 @@ static int + clonefd(struct file *filp) + { + int ret; +- ret = get_unused_fd(); ++ ret = get_unused_fd_flags(0); + if (ret >= 0) { + get_file(filp); + fd_install(ret, filp); From 544486252c441c75068e6611212869d05485a905 Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Sat, 25 Apr 2015 23:19:30 +0200 Subject: [PATCH 343/681] tcp_wrappers: don't set LIBS=-lnsl when building with musl Signed-off-by: Daniel Golle --- libs/tcp_wrappers/Makefile | 6 ++++- .../patches/005-no--lnsl-on-musl.patch | 22 +++++++++++++++++++ 2 files changed, 27 insertions(+), 1 deletion(-) create mode 100644 libs/tcp_wrappers/patches/005-no--lnsl-on-musl.patch diff --git a/libs/tcp_wrappers/Makefile b/libs/tcp_wrappers/Makefile index 1ea637f29..d453031ec 100644 --- a/libs/tcp_wrappers/Makefile +++ b/libs/tcp_wrappers/Makefile @@ -32,11 +32,15 @@ endef TARGET_CFLAGS += $(FPIC) +ifeq ($(CONFIG_USE_MUSL),) +TARGET_EXTRA_LIBS:=LIBS=-lnsl +endif + define Build/Compile $(MAKE) -C $(PKG_BUILD_DIR) \ $(TARGET_CONFIGURE_OPTS) \ OPT_CFLAGS="$(TARGET_CFLAGS)" \ - LIBS=-lnsl \ + $(TARGET_EXTRA_LIBS) \ NETGROUP= \ VSYSLOG= \ BUGS= \ diff --git a/libs/tcp_wrappers/patches/005-no--lnsl-on-musl.patch b/libs/tcp_wrappers/patches/005-no--lnsl-on-musl.patch new file mode 100644 index 000000000..5e7b968dd --- /dev/null +++ b/libs/tcp_wrappers/patches/005-no--lnsl-on-musl.patch @@ -0,0 +1,22 @@ +Index: tcp_wrappers_7.6/Makefile +=================================================================== +--- tcp_wrappers_7.6.orig/Makefile ++++ tcp_wrappers_7.6/Makefile +@@ -1,4 +1,4 @@ +-GLIBC=$(shell grep -s -c __GLIBC__ /usr/include/features.h) ++GLIBC=$(shell grep -s -c __GLIBC__ ${STAGING_DIR}/usr/include/features.h) + + # @(#) Makefile 1.23 97/03/21 19:27:20 + +@@ -146,9 +146,11 @@ freebsd: + LIBS= RANLIB=ranlib ARFLAGS=rv AUX_OBJ= NETGROUP= TLI= \ + EXTRA_CFLAGS=-DSYS_ERRLIST_DEFINED VSYSLOG= all + ++ifneq ($(GLIBC),) + ifneq ($(GLIBC),0) + MYLIB=-lnsl + endif ++endif + + linux: + @make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \ From 855fdd21d1259fb10f059d7f5217aa9d20bb5c25 Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Sun, 3 May 2015 15:58:52 +0200 Subject: [PATCH 344/681] lvm2: finally fix memory locking issues on musl Always use mlockall fixes it, still trying to keep everything else as untouched as possible. Signed-off-by: Daniel Golle --- utils/lvm2/Makefile | 2 +- utils/lvm2/patches/003-no-mallinfo.patch | 21 ++++++++++++++++++++- 2 files changed, 21 insertions(+), 2 deletions(-) diff --git a/utils/lvm2/Makefile b/utils/lvm2/Makefile index 819bb6d74..4aee2bd9e 100644 --- a/utils/lvm2/Makefile +++ b/utils/lvm2/Makefile @@ -10,7 +10,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=LVM2 PKG_VERSION:=2.02.119 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_LICENSE:=GPL-2.0 LGPL-2.1 PKG_SOURCE:=$(PKG_NAME).$(PKG_VERSION).tgz diff --git a/utils/lvm2/patches/003-no-mallinfo.patch b/utils/lvm2/patches/003-no-mallinfo.patch index e81dbe9e4..d37a5bfa3 100644 --- a/utils/lvm2/patches/003-no-mallinfo.patch +++ b/utils/lvm2/patches/003-no-mallinfo.patch @@ -18,11 +18,30 @@ Index: LVM2.2.02.119/lib/mm/memlock.c inf = mallinfo(); if (hblks < inf.hblks) { -@@ -179,6 +182,7 @@ static void _allocate_memory(void) +@@ -176,9 +179,12 @@ static void _allocate_memory(void) + free(areas[area]); + _size_malloc_tmp /= 2; + } else { ++#endif ++ area; missing -= _size_malloc_tmp; ++#ifdef __GLIBC__ } +#endif if (area == max_areas && missing > 0) { /* Too bad. Warn the user and proceed, as things are +@@ -467,8 +473,13 @@ static void _lock_mem(struct cmd_context + * will not block memory locked thread + * Note: assuming _memlock_count_daemon is updated before _memlock_count + */ ++#ifdef __GLIBC__ + _use_mlockall = _memlock_count_daemon ? 1 : + find_config_tree_bool(cmd, activation_use_mlockall_CFG, NULL); ++#else ++ /* always use mlockall on musl */ ++ _use_mlockall = 1; ++#endif + + if (!_use_mlockall) { + if (!*_procselfmaps && From c5743c7b0be0a8349865f23b4e912c1a855df89b Mon Sep 17 00:00:00 2001 From: Gergely Kiss Date: Sun, 3 May 2015 21:01:21 +0200 Subject: [PATCH 345/681] seafile: create config file in a more elegant way --- net/seafile-server/Makefile | 13 ++++++------- net/seafile-server/files/seafile.init | 1 + 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/net/seafile-server/Makefile b/net/seafile-server/Makefile index 93ac450ff..8e3541656 100644 --- a/net/seafile-server/Makefile +++ b/net/seafile-server/Makefile @@ -40,6 +40,10 @@ define Package/seafile-server/description Open source cloud storage with advanced features on privacy protection and teamwork. endef +define Package/seafile-server/conffiles +/etc/config/seafile +endef + CONFIGURE_ARGS += --disable-riak \ --disable-client \ --disable-fuse \ @@ -60,6 +64,7 @@ define Package/seafile-server/install $(INSTALL_DIR) $(1)/usr/lib/python2.7/site-packages $(INSTALL_DIR) $(1)/usr/share/seafile/seafile-server/runtime $(INSTALL_DIR) $(1)/etc/init.d + $(INSTALL_DIR) $(1)/etc/config $(CP) $(PKG_INSTALL_DIR)/usr/bin/* $(1)/usr/bin/ $(CP) $(PKG_INSTALL_DIR)/usr/lib/python2.7/site-packages/seafile/ $(1)/usr/lib/python2.7/site-packages/ $(CP) $(PKG_INSTALL_DIR)/usr/lib/python2.7/site-packages/seaserv/ $(1)/usr/lib/python2.7/site-packages/ @@ -71,6 +76,7 @@ define Package/seafile-server/install $(CP) $(PKG_BUILD_DIR)/scripts/sqlite2mysql.sh $(1)/usr/share/seafile/seafile-server/ $(CP) $(PKG_BUILD_DIR)/scripts/upgrade/ $(1)/usr/share/seafile/seafile-server/ $(INSTALL_BIN) ./files/seafile.init $(1)/etc/init.d/seafile + $(CP) ./files/seafile.conf $(1)/etc/config/seafile endef define Build/InstallDev @@ -90,13 +96,6 @@ if ! id -u seafile >/dev/null 2>&1; then chown -R seafile:seafile /usr/share/seafile/ chmod -R o-rwx /usr/share/seafile/ -if [ ! -f /etc/config/seafile ]; then -cat < /etc/config/seafile -# Start Seahub in fastcgi mode - 1 = enable, 0 = disable -SEAHUB_FASTCGI=0 -EOF -fi - if [ ! -d "/usr/share/seafile/seafile-data" ] then echo "*** Installation completed, running configuration script..." diff --git a/net/seafile-server/files/seafile.init b/net/seafile-server/files/seafile.init index 819807b16..42f98e2d9 100755 --- a/net/seafile-server/files/seafile.init +++ b/net/seafile-server/files/seafile.init @@ -6,6 +6,7 @@ EXTRA_HELP=" setup Runs the setup script create_admin Creates the administrative login reset_admin Alias to create_admin" EXTRA_COMMANDS="setup create_admin reset_admin" + SEAHUB_FASTCGI=0 [ -f /etc/config/seafile ] && \ From d1270720dc3256886beffbad611507af9c9b2377 Mon Sep 17 00:00:00 2001 From: Gergely Kiss Date: Sun, 3 May 2015 21:05:35 +0200 Subject: [PATCH 346/681] seafile: missing config file added --- net/seafile-server/files/seafile.conf | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 net/seafile-server/files/seafile.conf diff --git a/net/seafile-server/files/seafile.conf b/net/seafile-server/files/seafile.conf new file mode 100644 index 000000000..fa8240e94 --- /dev/null +++ b/net/seafile-server/files/seafile.conf @@ -0,0 +1,2 @@ +# Start Seahub in fastcgi mode - 1 = enable, 0 = disable +SEAHUB_FASTCGI=0 From 46663ca8036996b506bedd382e8f9c3e7612535b Mon Sep 17 00:00:00 2001 From: claymore Date: Mon, 4 May 2015 00:47:21 +0100 Subject: [PATCH 347/681] Boost Patch update This update follows after the previous update[1] Due to the Boost Dev patch submited in [2], this commit also updates the boost patch in order to, instead of excluding all architectures that do not support -m32 and -m64 options, it now includes only the architectures that do support it. [1]: https://github.com/openwrt/packages/pull/1186 [2]: https://github.com/boostorg/build/pull/76 Signed-off-by: Carlos M. Ferreira carlosmf.pt@gmail.com --- libs/boost/patches/001-mips-options-fix.patch | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libs/boost/patches/001-mips-options-fix.patch b/libs/boost/patches/001-mips-options-fix.patch index b32f44792..d9b30e6e9 100644 --- a/libs/boost/patches/001-mips-options-fix.patch +++ b/libs/boost/patches/001-mips-options-fix.patch @@ -5,7 +5,7 @@ { local arch = [ feature.get-values architecture : $(properties) ] ; - if $(arch) != arm -+ if $(arch) != arm && $(arch) != mips1 ++ if $(arch) = power || $(arch) = sparc || $(arch) = x86 { if $(model) = 32 { From 158fa1c26ff868e24c71c019f5f781f40a0000a0 Mon Sep 17 00:00:00 2001 From: Dirk Chang Date: Mon, 4 May 2015 22:15:22 +0800 Subject: [PATCH 348/681] lua-lzlib: upgrade to 0.4.3 lua 5.3 compatibility Signed-off-by: Dirk Chang --- lang/lua-lzlib/Makefile | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/lang/lua-lzlib/Makefile b/lang/lua-lzlib/Makefile index 096cec0d7..e4094f5b3 100644 --- a/lang/lua-lzlib/Makefile +++ b/lang/lua-lzlib/Makefile @@ -8,15 +8,15 @@ include $(TOPDIR)/rules.mk PKG_NAME:=lua-lzlib -PKG_VERSION:=0.4.1 -PKG_RELEASE:=2 +PKG_VERSION:=0.4.3 +PKG_RELEASE:=1 PKG_MAINTAINER:=Dirk Chang PKG_LICENSE:=MIT PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=https://github.com/LuaDist/lzlib.git PKG_SOURCE_PROTO:=git -PKG_SOURCE_VERSION:=9fa3993bb4504fbbc10511cde141e1c6a48c072d +PKG_SOURCE_VERSION:=79329a07d8f79c19eadd7ea2752b4c4e1574b015 PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) include $(INCLUDE_DIR)/package.mk From 26d577ac2607a37ba0dbd4c07824536d431d3ef6 Mon Sep 17 00:00:00 2001 From: heil Date: Mon, 4 May 2015 17:49:47 +0200 Subject: [PATCH 349/681] haproxy: update to 1.5.12 [RELEASE] Released version 1.5.12 Released version 1.5.12 with the following main changes : - BUG/MINOR: ssl: Display correct filename in error message - DOC: Fix L4TOUT typo in documentation - BUG/MEDIUM: Do not consider an agent check as failed on L7 error - BUG/MINOR: pattern: error message missing - BUG/MEDIUM: pattern: some entries are not deleted with case insensitive match - BUG/MEDIUM: buffer: one byte miss in buffer free space check - BUG/MAJOR: http: don't read past buffer's end in http_replace_value - BUG/MEDIUM: http: the function "(req|res)-replace-value" doesn't respect the HTTP syntax - BUG/MEDIUM: peers: correctly configure the client timeout - BUG/MINOR: compression: consider the expansion factor in init - BUG/MEDIUM: http: hdr_cnt would not count any header when called without name - BUG/MEDIUM: listener: don't report an error when resuming unbound listeners - BUG/MEDIUM: init: don't limit cpu-map to the first 32 processes only - BUG/MEDIUM: stream-int: always reset si->ops when si->end is nullified - BUG/MEDIUM: http: remove content-length from chunked messages - DOC: http: update the comments about the rules for determining transfer-length - BUG/MEDIUM: http: do not restrict parsing of transfer-encoding to HTTP/1.1 - BUG/MEDIUM: http: incorrect transfer-coding in the request is a bad request - BUG/MEDIUM: http: remove content-length form responses with bad transfer-encoding - MEDIUM: http: restrict the HTTP version token to 1 digit as per RFC7230 - MEDIUM: http: add option-ignore-probes to get rid of the floods of 408 - BUG/MINOR: config: clear proxy->table.peers.p for disabled proxies - MINOR: stick-table: don't attach to peers in stopped state - MEDIUM: config: initialize stick-tables after peers, not before - MEDIUM: peers: add the ability to disable a peers section - DOC: document option http-ignore-probes - DOC: fix the comments about the meaning of msg->sol in HTTP - BUG/MEDIUM: http: wait for the exact amount of body bytes in wait_for_request_body - BUG/MAJOR: http: prevent risk of reading past end with balance url_param - DOC: update the doc on the proxy protocol Signed-off-by: heil --- net/haproxy/Makefile | 6 +- ...-MINOR-pattern-error-message-missing.patch | 30 --- ...rn-some-entries-are-not-deleted-with.patch | 38 ---- ...t-consider-an-agent-check-as-failed-.patch | 43 ----- ...-correctly-configure-the-client-time.patch | 33 ---- ...r-one-byte-miss-in-buffer-free-space.patch | 30 --- ...on-t-read-past-buffer-s-end-in-http_.patch | 52 ------ ...the-function-req-res-replace-value-d.patch | 171 ------------------ ...ssion-consider-the-expansion-factor-.patch | 43 ----- ...hdr_cnt-would-not-count-any-header-w.patch | 70 ------- 10 files changed, 3 insertions(+), 513 deletions(-) delete mode 100644 net/haproxy/patches/0001-BUG-MINOR-pattern-error-message-missing.patch delete mode 100644 net/haproxy/patches/0002-BUG-MEDIUM-pattern-some-entries-are-not-deleted-with.patch delete mode 100644 net/haproxy/patches/0003-BUG-MEDIUM-Do-not-consider-an-agent-check-as-failed-.patch delete mode 100644 net/haproxy/patches/0004-BUG-MEDIUM-peers-correctly-configure-the-client-time.patch delete mode 100644 net/haproxy/patches/0005-BUG-MEDIUM-buffer-one-byte-miss-in-buffer-free-space.patch delete mode 100644 net/haproxy/patches/0006-BUG-MAJOR-http-don-t-read-past-buffer-s-end-in-http_.patch delete mode 100644 net/haproxy/patches/0007-BUG-MEDIUM-http-the-function-req-res-replace-value-d.patch delete mode 100644 net/haproxy/patches/0008-BUG-MINOR-compression-consider-the-expansion-factor-.patch delete mode 100644 net/haproxy/patches/0009-BUG-MEDIUM-http-hdr_cnt-would-not-count-any-header-w.patch diff --git a/net/haproxy/Makefile b/net/haproxy/Makefile index 1a71856a9..e4de4d40b 100644 --- a/net/haproxy/Makefile +++ b/net/haproxy/Makefile @@ -9,12 +9,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=haproxy -PKG_VERSION:=1.5.11 -PKG_RELEASE:=10 +PKG_VERSION:=1.5.12 +PKG_RELEASE:=01 PKG_SOURCE:=haproxy-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://haproxy.1wt.eu/download/1.5/src/ PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/$(PKG_NAME)-$(PKG_VERSION) -PKG_MD5SUM:=5500a79d0d2b238d4a1e9749bd0c2cb2 +PKG_MD5SUM:=4b94b257f16d88c315716b062b22e48a PKG_MAINTAINER:=Thomas Heil PKG_LICENSE:=GPL-2.0 diff --git a/net/haproxy/patches/0001-BUG-MINOR-pattern-error-message-missing.patch b/net/haproxy/patches/0001-BUG-MINOR-pattern-error-message-missing.patch deleted file mode 100644 index 91b5be6d3..000000000 --- a/net/haproxy/patches/0001-BUG-MINOR-pattern-error-message-missing.patch +++ /dev/null @@ -1,30 +0,0 @@ -From e338a8741983acc9a4501a03ecd593d89e6fade3 Mon Sep 17 00:00:00 2001 -From: Thierry FOURNIER -Date: Fri, 6 Feb 2015 17:50:55 +0100 -Subject: [PATCH 1/2] BUG/MINOR: pattern: error message missing - -This patch must be backported in 1.5 version. -(cherry picked from commit 8aa8384e22dd0b66ded00c70a9c6034278b4bb69) ---- - src/pattern.c | 4 +++- - 1 file changed, 3 insertions(+), 1 deletion(-) - -diff --git a/src/pattern.c b/src/pattern.c -index 208e33a..a6fc52d 100644 ---- a/src/pattern.c -+++ b/src/pattern.c -@@ -989,8 +989,10 @@ int pat_idx_list_ptr(struct pattern_expr *expr, struct pattern *pat, char **err) - - /* allocate pattern */ - patl = calloc(1, sizeof(*patl)); -- if (!patl) -+ if (!patl) { -+ memprintf(err, "out of memory while indexing pattern"); - return 0; -+ } - - /* duplicate pattern */ - memcpy(&patl->pat, pat, sizeof(*pat)); --- -2.0.4 - diff --git a/net/haproxy/patches/0002-BUG-MEDIUM-pattern-some-entries-are-not-deleted-with.patch b/net/haproxy/patches/0002-BUG-MEDIUM-pattern-some-entries-are-not-deleted-with.patch deleted file mode 100644 index 2a0b7cf5d..000000000 --- a/net/haproxy/patches/0002-BUG-MEDIUM-pattern-some-entries-are-not-deleted-with.patch +++ /dev/null @@ -1,38 +0,0 @@ -From 623401b983185c1e0f6507e96557de3bc46fd41b Mon Sep 17 00:00:00 2001 -From: Thierry FOURNIER -Date: Fri, 6 Feb 2015 17:53:54 +0100 -Subject: [PATCH 2/2] BUG/MEDIUM: pattern: some entries are not deleted with - case insensitive match - -ACL or map entries are not deleted with the command "del acl" or "del map" -if the case insentive flag is set. - -This is because the the case insensitive string are stored in a list and the -default delete function associated with string looks in a tree. I add a check -of the case insensitive flag and execute the delete function for lists if it -is set. - -This patch must be backported in 1.5 version. -(cherry picked from commit 73bc285be194f443dc7eab9c949e87e1dbe8f70c) ---- - src/pattern.c | 4 ++++ - 1 file changed, 4 insertions(+) - -diff --git a/src/pattern.c b/src/pattern.c -index a6fc52d..b19ffe2 100644 ---- a/src/pattern.c -+++ b/src/pattern.c -@@ -1308,6 +1308,10 @@ void pat_del_tree_str(struct pattern_expr *expr, struct pat_ref_elt *ref) - struct ebmb_node *node, *next_node; - struct pattern_tree *elt; - -+ /* If the flag PAT_F_IGNORE_CASE is set, we cannot use trees */ -+ if (expr->mflags & PAT_MF_IGNORE_CASE) -+ return pat_del_list_ptr(expr, ref); -+ - /* browse each node of the tree. */ - for (node = ebmb_first(&expr->pattern_tree), next_node = node ? ebmb_next(node) : NULL; - node; --- -2.0.4 - diff --git a/net/haproxy/patches/0003-BUG-MEDIUM-Do-not-consider-an-agent-check-as-failed-.patch b/net/haproxy/patches/0003-BUG-MEDIUM-Do-not-consider-an-agent-check-as-failed-.patch deleted file mode 100644 index 1f257efb0..000000000 --- a/net/haproxy/patches/0003-BUG-MEDIUM-Do-not-consider-an-agent-check-as-failed-.patch +++ /dev/null @@ -1,43 +0,0 @@ -From bfb8f885955efa1ef90f79595f16a01e30fd0dcf Mon Sep 17 00:00:00 2001 -From: Simon Horman -Date: Thu, 26 Feb 2015 11:26:17 +0900 -Subject: [PATCH 3/9] BUG/MEDIUM: Do not consider an agent check as failed on - L7 error - -As failure to connect to the agent check is not sufficient to mark it as -failed it stands to reason that an L7 error shouldn't either. - -Without this fix if an L7 error occurs, for example of connectivity to the -agent is lost immediately after establishing a connection to it, then the -agent check will be considered to have failed and thus may end up with zero -health. Once this has occurred if the primary health check also reaches -zero health, which is likely if connectivity to the server is lost, then -the server will be marked as down and not be marked as up again until a -successful agent check occurs regardless of the success of any primary -health checks. - -This behaviour is not correct as a failed agent check should never cause a -server to be marked as down or by extension continue to be marked as down. - -Signed-off-by: Simon Horman -(cherry picked from commit eaabd52e29a29187f9829fe727028a6ca530cbf9) ---- - src/checks.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/checks.c b/src/checks.c -index b9048da..71debb6 100644 ---- a/src/checks.c -+++ b/src/checks.c -@@ -246,7 +246,7 @@ static void set_server_check_status(struct check *check, short status, const cha - * cause the server to be marked down. - */ - if ((!(check->state & CHK_ST_AGENT) || -- (check->status >= HCHK_STATUS_L7TOUT)) && -+ (check->status >= HCHK_STATUS_L57DATA)) && - (check->health >= check->rise)) { - s->counters.failed_checks++; - report = 1; --- -2.0.5 - diff --git a/net/haproxy/patches/0004-BUG-MEDIUM-peers-correctly-configure-the-client-time.patch b/net/haproxy/patches/0004-BUG-MEDIUM-peers-correctly-configure-the-client-time.patch deleted file mode 100644 index 8d33bb56d..000000000 --- a/net/haproxy/patches/0004-BUG-MEDIUM-peers-correctly-configure-the-client-time.patch +++ /dev/null @@ -1,33 +0,0 @@ -From fc940eb2bf0bbd7adf5b283f28bcff136501ae7f Mon Sep 17 00:00:00 2001 -From: Willy Tarreau -Date: Fri, 13 Mar 2015 16:18:25 +0100 -Subject: [PATCH 4/9] BUG/MEDIUM: peers: correctly configure the client timeout - -The peers frontend timeout was mistakenly set on timeout.connect instead -of timeout.client, resulting in no timeout being applied to the peers -connections. The impact is just that peers can establish connections and -remain connected until they speak. Once they start speaking, only one of -them will still be accepted, and old sessions will be killed, so the -problem is limited. This fix should however be backported to 1.5 since -it was introduced in 1.5-dev3 with peers. -(cherry picked from commit 9ff95bb18c4cd9ae747fa5b3bef6d3f94e54172f) ---- - src/cfgparse.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/cfgparse.c b/src/cfgparse.c -index a91e027..b7613b8 100644 ---- a/src/cfgparse.c -+++ b/src/cfgparse.c -@@ -1834,7 +1834,7 @@ int cfg_parse_peers(const char *file, int linenum, char **args, int kwm) - curpeers->peers_fe->cap = PR_CAP_FE; - curpeers->peers_fe->maxconn = 0; - curpeers->peers_fe->conn_retries = CONN_RETRIES; -- curpeers->peers_fe->timeout.connect = 5000; -+ curpeers->peers_fe->timeout.client = MS_TO_TICKS(5000); - curpeers->peers_fe->accept = peer_accept; - curpeers->peers_fe->options2 |= PR_O2_INDEPSTR | PR_O2_SMARTCON | PR_O2_SMARTACC; - curpeers->peers_fe->conf.args.file = curpeers->peers_fe->conf.file = strdup(file); --- -2.0.5 - diff --git a/net/haproxy/patches/0005-BUG-MEDIUM-buffer-one-byte-miss-in-buffer-free-space.patch b/net/haproxy/patches/0005-BUG-MEDIUM-buffer-one-byte-miss-in-buffer-free-space.patch deleted file mode 100644 index bdc674c0a..000000000 --- a/net/haproxy/patches/0005-BUG-MEDIUM-buffer-one-byte-miss-in-buffer-free-space.patch +++ /dev/null @@ -1,30 +0,0 @@ -From b92902814f796bb1dc24bab2179000caceb5b151 Mon Sep 17 00:00:00 2001 -From: Thierry FOURNIER -Date: Tue, 10 Mar 2015 01:55:01 +0100 -Subject: [PATCH 5/9] BUG/MEDIUM: buffer: one byte miss in buffer free space - check - -Space is not avalaible only if the end of the data inserted -is strictly greater than the end of buffer. If these two value -are equal, the space is avamaible. -(cherry picked from commit fdda6777bffb4f933569c609ba54e24ea5eabf29) ---- - src/buffer.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/buffer.c b/src/buffer.c -index 9037dd3..8d2644e 100644 ---- a/src/buffer.c -+++ b/src/buffer.c -@@ -46,7 +46,7 @@ int buffer_replace2(struct buffer *b, char *pos, char *end, const char *str, int - - delta = len - (end - pos); - -- if (bi_end(b) + delta >= b->data + b->size) -+ if (bi_end(b) + delta > b->data + b->size) - return 0; /* no space left */ - - if (buffer_not_empty(b) && --- -2.0.5 - diff --git a/net/haproxy/patches/0006-BUG-MAJOR-http-don-t-read-past-buffer-s-end-in-http_.patch b/net/haproxy/patches/0006-BUG-MAJOR-http-don-t-read-past-buffer-s-end-in-http_.patch deleted file mode 100644 index 66e0c69ef..000000000 --- a/net/haproxy/patches/0006-BUG-MAJOR-http-don-t-read-past-buffer-s-end-in-http_.patch +++ /dev/null @@ -1,52 +0,0 @@ -From 8e05ac2044c6523c867ceaaae1f10486370eec89 Mon Sep 17 00:00:00 2001 -From: Thierry FOURNIER -Date: Mon, 16 Mar 2015 11:14:41 +0100 -Subject: [PATCH 6/9] BUG/MAJOR: http: don't read past buffer's end in - http_replace_value - -The function http_replace_value use bad variable to detect the end -of the input string. - -Regression introduced by the patch "MEDIUM: regex: Remove null -terminated strings." (c9c2daf2) - -We need to backport this patch int the 1.5 stable branch. - -WT: there is no possibility to overwrite existing data as we only read - past the end of the request buffer, to copy into the trash. The copy - is bounded by buffer_replace2(), just like the replacement performed - by exp_replace(). However if a buffer happens to contain non-zero data - up to the next unmapped page boundary, there's a theorical risk of - crashing the process despite this not being reproducible in tests. - The risk is low because "http-request replace-value" did not work due - to this bug so that probably means it's not used yet. -(cherry picked from commit 534101658d6e19aeb598bf7833a8ce167498c4ed) ---- - src/proto_http.c | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/src/proto_http.c b/src/proto_http.c -index 705f3b4..f53b5e2 100644 ---- a/src/proto_http.c -+++ b/src/proto_http.c -@@ -3206,7 +3206,7 @@ static int http_replace_value(struct my_regex *re, char *dst, uint dst_size, cha - - /* look for delim. */ - p_delim = p; -- while (p_delim < p + len && *p_delim != delim) -+ while (p_delim < val + len && *p_delim != delim) - p_delim++; - - if (regex_exec_match2(re, p, p_delim-p, MAX_MATCH, pmatch)) { -@@ -3230,7 +3230,7 @@ static int http_replace_value(struct my_regex *re, char *dst, uint dst_size, cha - return -1; - - /* end of the replacements. */ -- if (p_delim >= p + len) -+ if (p_delim >= val + len) - break; - - /* Next part. */ --- -2.0.5 - diff --git a/net/haproxy/patches/0007-BUG-MEDIUM-http-the-function-req-res-replace-value-d.patch b/net/haproxy/patches/0007-BUG-MEDIUM-http-the-function-req-res-replace-value-d.patch deleted file mode 100644 index 5d4dbc0af..000000000 --- a/net/haproxy/patches/0007-BUG-MEDIUM-http-the-function-req-res-replace-value-d.patch +++ /dev/null @@ -1,171 +0,0 @@ -From 06170c50ae5cd0fb23510b832826f7e63a5a8894 Mon Sep 17 00:00:00 2001 -From: Thierry FOURNIER -Date: Mon, 16 Mar 2015 23:23:53 +0100 -Subject: [PATCH 7/9] BUG/MEDIUM: http: the function "(req|res)-replace-value" - doesn't respect the HTTP syntax - -These function used an invalid header parser. - - The trailing white-spaces were embedded in the replacement regex, - - The double-quote (") containing comma (,) were not respected. - -This patch replace this parser by the "official" parser http_find_header2(). -(cherry picked from commit 191f9efdc58f21af1d9dde3db5ba198d7f1ce22e) ---- - src/proto_http.c | 126 +++++++++++++++---------------------------------------- - 1 file changed, 34 insertions(+), 92 deletions(-) - -diff --git a/src/proto_http.c b/src/proto_http.c -index f53b5e2..c49c4f4 100644 ---- a/src/proto_http.c -+++ b/src/proto_http.c -@@ -3179,113 +3179,55 @@ static inline void inet_set_tos(int fd, struct sockaddr_storage from, int tos) - #endif - } - --/* Returns the number of characters written to destination, -- * -1 on internal error and -2 if no replacement took place. -- */ --static int http_replace_header(struct my_regex *re, char *dst, uint dst_size, char *val, int len, -- const char *rep_str) --{ -- if (!regex_exec_match2(re, val, len, MAX_MATCH, pmatch)) -- return -2; -- -- return exp_replace(dst, dst_size, val, rep_str, pmatch); --} -- --/* Returns the number of characters written to destination, -- * -1 on internal error and -2 if no replacement took place. -- */ --static int http_replace_value(struct my_regex *re, char *dst, uint dst_size, char *val, int len, char delim, -- const char *rep_str) --{ -- char* p = val; -- char* dst_end = dst + dst_size; -- char* dst_p = dst; -- -- for (;;) { -- char *p_delim; -- -- /* look for delim. */ -- p_delim = p; -- while (p_delim < val + len && *p_delim != delim) -- p_delim++; -- -- if (regex_exec_match2(re, p, p_delim-p, MAX_MATCH, pmatch)) { -- int replace_n = exp_replace(dst_p, dst_end - dst_p, p, rep_str, pmatch); -- -- if (replace_n < 0) -- return -1; -- -- dst_p += replace_n; -- } else { -- uint len = p_delim - p; -- -- if (dst_p + len >= dst_end) -- return -1; -- -- memcpy(dst_p, p, len); -- dst_p += len; -- } -- -- if (dst_p >= dst_end) -- return -1; -- -- /* end of the replacements. */ -- if (p_delim >= val + len) -- break; -- -- /* Next part. */ -- *dst_p++ = delim; -- p = p_delim + 1; -- } -- -- return dst_p - dst; --} -- - static int http_transform_header(struct session* s, struct http_msg *msg, const char* name, uint name_len, - char* buf, struct hdr_idx* idx, struct list *fmt, struct my_regex *re, - struct hdr_ctx* ctx, int action) - { -+ int (*http_find_hdr_func)(const char *name, int len, char *sol, -+ struct hdr_idx *idx, struct hdr_ctx *ctx); -+ struct chunk *replace = get_trash_chunk(); -+ struct chunk *output = get_trash_chunk(); -+ -+ replace->len = build_logline(s, replace->str, replace->size, fmt); -+ if (replace->len >= replace->size - 1) -+ return -1; -+ - ctx->idx = 0; - -- while (http_find_full_header2(name, name_len, buf, idx, ctx)) { -+ /* Choose the header browsing function. */ -+ switch (action) { -+ case HTTP_REQ_ACT_REPLACE_VAL: -+ case HTTP_RES_ACT_REPLACE_VAL: -+ http_find_hdr_func = http_find_header2; -+ break; -+ case HTTP_REQ_ACT_REPLACE_HDR: -+ case HTTP_RES_ACT_REPLACE_HDR: -+ http_find_hdr_func = http_find_full_header2; -+ break; -+ default: /* impossible */ -+ return -1; -+ } -+ -+ while (http_find_hdr_func(name, name_len, buf, idx, ctx)) { - struct hdr_idx_elem *hdr = idx->v + ctx->idx; - int delta; -- char* val = (char*)ctx->line + ctx->val; -- char* val_end = (char*)ctx->line + hdr->len; -- char* reg_dst_buf; -- uint reg_dst_buf_size; -- int n_replaced; -- -- trash.len = build_logline(s, trash.str, trash.size, fmt); -- -- if (trash.len >= trash.size - 1) -- return -1; -+ char *val = ctx->line + ctx->val; -+ char* val_end = val + ctx->vlen; - -- reg_dst_buf = trash.str + trash.len + 1; -- reg_dst_buf_size = trash.size - trash.len - 1; -+ if (!regex_exec_match2(re, val, val_end-val, MAX_MATCH, pmatch)) -+ continue; - -- switch (action) { -- case HTTP_REQ_ACT_REPLACE_VAL: -- case HTTP_RES_ACT_REPLACE_VAL: -- n_replaced = http_replace_value(re, reg_dst_buf, reg_dst_buf_size, val, val_end-val, ',', trash.str); -- break; -- case HTTP_REQ_ACT_REPLACE_HDR: -- case HTTP_RES_ACT_REPLACE_HDR: -- n_replaced = http_replace_header(re, reg_dst_buf, reg_dst_buf_size, val, val_end-val, trash.str); -- break; -- default: /* impossible */ -+ output->len = exp_replace(output->str, output->size, val, replace->str, pmatch); -+ if (output->len == -1) - return -1; -- } - -- switch (n_replaced) { -- case -1: return -1; -- case -2: continue; -- } -- -- delta = buffer_replace2(msg->chn->buf, val, val_end, reg_dst_buf, n_replaced); -+ delta = buffer_replace2(msg->chn->buf, val, val_end, output->str, output->len); - - hdr->len += delta; - http_msg_move_end(msg, delta); -+ -+ /* Adjust the length of the current value of the index. */ -+ ctx->vlen += delta; - } - - return 0; --- -2.0.5 - diff --git a/net/haproxy/patches/0008-BUG-MINOR-compression-consider-the-expansion-factor-.patch b/net/haproxy/patches/0008-BUG-MINOR-compression-consider-the-expansion-factor-.patch deleted file mode 100644 index b8d01f69a..000000000 --- a/net/haproxy/patches/0008-BUG-MINOR-compression-consider-the-expansion-factor-.patch +++ /dev/null @@ -1,43 +0,0 @@ -From 9b9531d90dfd8a334958d23394afafd0185bfa21 Mon Sep 17 00:00:00 2001 -From: Willy Tarreau -Date: Sat, 28 Mar 2015 12:20:33 +0100 -Subject: [PATCH 8/9] BUG/MINOR: compression: consider the expansion factor in - init - -When checking if the buffer is large enough, we used to rely on a fixed -size that was "apparently" enough. We need to consider the expansion -factor of deflate-encoded streams instead, which is of 5 bytes per 32kB. -The previous value was OK till 128kB buffers but became wrong past that. -It's totally harmless since we always keep the reserve when compressiong, -so there's 1kB or so available, which is enough for buffers as large as -6.5 MB, but better fix the check anyway. - -This fix could be backported into 1.5 since compression was added there. -(cherry picked from commit 2aee2215c908c6997addcd1714b5b10f73c0703d) ---- - src/compression.c | 9 ++++++--- - 1 file changed, 6 insertions(+), 3 deletions(-) - -diff --git a/src/compression.c b/src/compression.c -index 3d6085e..d55f14e 100644 ---- a/src/compression.c -+++ b/src/compression.c -@@ -130,9 +130,12 @@ int http_compression_buffer_init(struct session *s, struct buffer *in, struct bu - { - int left; - -- /* not enough space */ -- if (in->size - buffer_len(in) < 40) -- return -1; -+ /* output stream requires at least 10 bytes for the gzip header, plus -+ * at least 8 bytes for the gzip trailer (crc+len), plus a possible -+ * plus at most 5 bytes per 32kB block and 2 bytes to close the stream. -+ */ -+ if (in->size - buffer_len(in) < 20 + 5 * ((in->i + 32767) >> 15)) -+ return -1; - - /* We start by copying the current buffer's pending outgoing data into - * a new temporary buffer that we initialize with a new empty chunk. --- -2.0.5 - diff --git a/net/haproxy/patches/0009-BUG-MEDIUM-http-hdr_cnt-would-not-count-any-header-w.patch b/net/haproxy/patches/0009-BUG-MEDIUM-http-hdr_cnt-would-not-count-any-header-w.patch deleted file mode 100644 index cd258da5e..000000000 --- a/net/haproxy/patches/0009-BUG-MEDIUM-http-hdr_cnt-would-not-count-any-header-w.patch +++ /dev/null @@ -1,70 +0,0 @@ -From 2943734024525d4b9aeec13cca2c1d230c358ee5 Mon Sep 17 00:00:00 2001 -From: Willy Tarreau -Date: Wed, 1 Apr 2015 19:16:09 +0200 -Subject: [PATCH 9/9] BUG/MEDIUM: http: hdr_cnt would not count any header when - called without name - -It's documented that these sample fetch functions should count all headers -and/or all values when called with no name but in practice it's not what is -being done as a missing name causes an immediate return and an absence of -result. - -This bug is present in 1.5 as well and must be backported. -(cherry picked from commit 601a4d1741100d7a861b6d9b66561335c9911277) ---- - src/proto_http.c | 20 ++++++++++++++------ - 1 file changed, 14 insertions(+), 6 deletions(-) - -diff --git a/src/proto_http.c b/src/proto_http.c -index c49c4f4..ccd52ad 100644 ---- a/src/proto_http.c -+++ b/src/proto_http.c -@@ -10014,15 +10014,19 @@ smp_fetch_fhdr_cnt(struct proxy *px, struct session *l4, void *l7, unsigned int - struct hdr_ctx ctx; - const struct http_msg *msg = ((opt & SMP_OPT_DIR) == SMP_OPT_DIR_REQ) ? &txn->req : &txn->rsp; - int cnt; -+ const char *name = NULL; -+ int len = 0; - -- if (!args || args->type != ARGT_STR) -- return 0; -+ if (args && args->type == ARGT_STR) { -+ name = args->data.str.str; -+ len = args->data.str.len; -+ } - - CHECK_HTTP_MESSAGE_FIRST(); - - ctx.idx = 0; - cnt = 0; -- while (http_find_full_header2(args->data.str.str, args->data.str.len, msg->chn->buf->p, idx, &ctx)) -+ while (http_find_full_header2(name, len, msg->chn->buf->p, idx, &ctx)) - cnt++; - - smp->type = SMP_T_UINT; -@@ -10101,15 +10105,19 @@ smp_fetch_hdr_cnt(struct proxy *px, struct session *l4, void *l7, unsigned int o - struct hdr_ctx ctx; - const struct http_msg *msg = ((opt & SMP_OPT_DIR) == SMP_OPT_DIR_REQ) ? &txn->req : &txn->rsp; - int cnt; -+ const char *name = NULL; -+ int len = 0; - -- if (!args || args->type != ARGT_STR) -- return 0; -+ if (args && args->type == ARGT_STR) { -+ name = args->data.str.str; -+ len = args->data.str.len; -+ } - - CHECK_HTTP_MESSAGE_FIRST(); - - ctx.idx = 0; - cnt = 0; -- while (http_find_header2(args->data.str.str, args->data.str.len, msg->chn->buf->p, idx, &ctx)) -+ while (http_find_header2(name, len, msg->chn->buf->p, idx, &ctx)) - cnt++; - - smp->type = SMP_T_UINT; --- -2.0.5 - From 7c331284e0980efbfd6d7b2d7463d62feabb3fe6 Mon Sep 17 00:00:00 2001 From: heil Date: Mon, 4 May 2015 17:53:27 +0200 Subject: [PATCH 350/681] apr: upgrade to 1.5.4 Signed-off-by: heil --- libs/apr/Makefile | 4 ++-- libs/apr/patches/001-autoconf-compat.patch | 14 ++++++++----- .../patches/201-upgrade-and-fix-1.5.1.patch | 21 ++++++++----------- 3 files changed, 20 insertions(+), 19 deletions(-) diff --git a/libs/apr/Makefile b/libs/apr/Makefile index 69f5b5fd9..924db85b4 100644 --- a/libs/apr/Makefile +++ b/libs/apr/Makefile @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=apr -PKG_VERSION:=1.5.1 +PKG_VERSION:=1.5.2 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 PKG_SOURCE_URL:=http://mirrors.ibiblio.org/apache/apr/ -PKG_MD5SUM:=5486180ec5a23efb5cae6d4292b300ab +PKG_MD5SUM:=4e9769f3349fe11fc0a5e1b224c236aa PKG_MAINTAINER:=Thomas Heil PKG_LICENSE:=Apache License diff --git a/libs/apr/patches/001-autoconf-compat.patch b/libs/apr/patches/001-autoconf-compat.patch index 8170572bc..acc94fc3f 100644 --- a/libs/apr/patches/001-autoconf-compat.patch +++ b/libs/apr/patches/001-autoconf-compat.patch @@ -1,5 +1,7 @@ ---- a/Makefile.in -+++ b/Makefile.in +Index: apr-1.5.2/Makefile.in +=================================================================== +--- apr-1.5.2.orig/Makefile.in ++++ apr-1.5.2/Makefile.in @@ -3,6 +3,7 @@ srcdir=@srcdir@ VPATH=@srcdir@ top_srcdir=@apr_srcdir@ @@ -8,9 +10,11 @@ # # APR (Apache Portable Runtime) library Makefile. ---- a/configure.in -+++ b/configure.in -@@ -246,9 +246,6 @@ case $host in +Index: apr-1.5.2/configure.in +=================================================================== +--- apr-1.5.2.orig/configure.in ++++ apr-1.5.2/configure.in +@@ -245,9 +245,6 @@ case $host in gcc $CFLAGS $CPPFLAGS -o $LIBTOOL.exe $LIBTOOL.c ;; *) diff --git a/libs/apr/patches/201-upgrade-and-fix-1.5.1.patch b/libs/apr/patches/201-upgrade-and-fix-1.5.1.patch index 42f4c0f03..87cd546d1 100644 --- a/libs/apr/patches/201-upgrade-and-fix-1.5.1.patch +++ b/libs/apr/patches/201-upgrade-and-fix-1.5.1.patch @@ -15,10 +15,10 @@ Signed-off-by: Hongxu Jia Makefile.in | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) -Index: apr-1.5.1/Makefile.in +Index: apr-1.5.2/Makefile.in =================================================================== ---- apr-1.5.1.orig/Makefile.in -+++ apr-1.5.1/Makefile.in +--- apr-1.5.2.orig/Makefile.in ++++ apr-1.5.2/Makefile.in @@ -20,7 +20,7 @@ INCDIR=./include OSDIR=$(top_srcdir)/include/arch/@OSDIR@ DEFOSDIR=$(INCDIR)/arch/@DEFAULT_OSDIR@ @@ -36,19 +36,16 @@ Index: apr-1.5.1/Makefile.in include/private/apr_escape_test_char.h DISTCLEAN_TARGETS = config.cache config.log config.status \ include/apr.h include/arch/unix/apr_private.h \ -@@ -130,13 +129,8 @@ check: $(TARGET_LIB) - etags: - etags `find . -name '*.[ch]'` +@@ -135,9 +134,9 @@ tools/gen_test_char.lo: tools/gen_test_c + $(APR_MKDIR) tools + $(LT_COMPILE) --make_tools_dir: -- $(APR_MKDIR) tools -- --OBJECTS_gen_test_char = tools/gen_test_char.lo $(LOCAL_LIBS) --tools/gen_test_char.lo: make_tools_dir -tools/gen_test_char@EXEEXT@: $(OBJECTS_gen_test_char) - $(LINK_PROG) $(OBJECTS_gen_test_char) $(ALL_LIBS) +- +tools/gen_test_char@EXEEXT@: tools/gen_test_char.c + $(BUILDCC) $(CFLAGS_FOR_BUILD) $< -o $@ - ++ include/private/apr_escape_test_char.h: tools/gen_test_char@EXEEXT@ $(APR_MKDIR) include/private + tools/gen_test_char@EXEEXT@ > $@ From cb0349ced87a169663f3c53588c60acfac0ddb62 Mon Sep 17 00:00:00 2001 From: heil Date: Mon, 4 May 2015 17:55:00 +0200 Subject: [PATCH 351/681] memcached: upgrade to 1.4.24 Signed-off-by: heil --- net/memcached/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/net/memcached/Makefile b/net/memcached/Makefile index 91ae4da64..111b14d57 100644 --- a/net/memcached/Makefile +++ b/net/memcached/Makefile @@ -9,12 +9,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=memcached -PKG_VERSION:=1.4.22 +PKG_VERSION:=1.4.24 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://memcached.org/files -PKG_MD5SUM:=2b7eefa17c811998f4cd55bfabc12b8e +PKG_MD5SUM:=4d6e8c90e2068580526c7579dd7f37f6 PKG_INSTALL:=1 PKG_MAINTAINER:=Thomas Heil PKG_LICENSE:=permissive free software license From c2f5b6fac4e95303bfa1a0a4d8b033e7abbce484 Mon Sep 17 00:00:00 2001 From: heil Date: Mon, 4 May 2015 18:07:17 +0200 Subject: [PATCH 352/681] pcre: update to 8.37 - fixes CVE-2015-2325, CVE-2015-2326, CVE-2008-2371 Signed-off-by: heil --- libs/pcre/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libs/pcre/Makefile b/libs/pcre/Makefile index 007af93d6..78b9af34a 100644 --- a/libs/pcre/Makefile +++ b/libs/pcre/Makefile @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=pcre -PKG_VERSION:=8.36 +PKG_VERSION:=8.37 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 PKG_SOURCE_URL:=@SF/pcre -PKG_MD5SUM:=b767bc9af0c20bc9c1fe403b0d41ad97 +PKG_MD5SUM:=ed91be292cb01d21bc7e526816c26981 PKG_MAINTAINER:=Thomas Heil PKG_LICENSE:=BSD-3-Clause From 606d375b6fc5911dc7b45719cbacd683002a1054 Mon Sep 17 00:00:00 2001 From: Nikos Mavrogiannopoulos Date: Mon, 4 May 2015 18:41:07 +0200 Subject: [PATCH 353/681] gnutls: updated to 3.4.1 Signed-off-by: Nikos Mavrogiannopoulos --- libs/gnutls/Makefile | 8 +- .../patches/001-libopts-detection.patch | 84 ------------------- 2 files changed, 4 insertions(+), 88 deletions(-) delete mode 100644 libs/gnutls/patches/001-libopts-detection.patch diff --git a/libs/gnutls/Makefile b/libs/gnutls/Makefile index ea8aa53d0..40b807802 100644 --- a/libs/gnutls/Makefile +++ b/libs/gnutls/Makefile @@ -8,14 +8,14 @@ include $(TOPDIR)/rules.mk PKG_NAME:=gnutls -PKG_VERSION:=3.4.0 -PKG_RELEASE:=2 +PKG_VERSION:=3.4.1 +PKG_RELEASE:=1 PKG_USE_MIPS16:=0 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=ftp://ftp.gnutls.org/gcrypt/gnutls/v3.4 -PKG_MD5SUM:=aa015c2666b031044edfb01b01980d84 -PKG_FIXUP:=autoreconf gettext-version +PKG_MD5SUM:=2d04f34fa25b45f9dcb9104c0394e12e +#PKG_FIXUP:=autoreconf gettext-version PKG_MAINTAINER:=Nikos Mavrogiannopoulos PKG_LICENSE:=LGPLv2.1+ diff --git a/libs/gnutls/patches/001-libopts-detection.patch b/libs/gnutls/patches/001-libopts-detection.patch deleted file mode 100644 index eb69f0052..000000000 --- a/libs/gnutls/patches/001-libopts-detection.patch +++ /dev/null @@ -1,84 +0,0 @@ -diff --git a/configure.ac b/configure.ac -index 7c454cd..185ebb6 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -64,7 +64,7 @@ if test "$enable_tools" != "no" || test "$enable_doc" != "no"; then - *** - *** autogen not found. Will not link against libopts. - *** ]]) -- enable_local_libopts=yes -+ included_libopts=yes - fi - fi - -@@ -523,7 +523,7 @@ fi - - AM_CONDITIONAL(ENABLE_TROUSERS, test "$with_tpm" != "no") - --enable_local_libopts=no -+included_libopts=no - if test "$enable_tools" != "no" || test "$enable_doc" != "no"; then - LIBOPTS_CHECK([src/libopts]) - if test "$NEED_LIBOPTS_DIR" = "true";then -@@ -540,15 +540,17 @@ if test "$enable_tools" != "no" || test "$enable_doc" != "no"; then - if test -z "$missing_baks"; then - AC_SUBST([AUTOGEN], [/bin/true]) - fi -- enable_local_libopts=yes -+ included_libopts=yes - fi - else - # Need to ensure the relevant conditionals get set - gl_STDNORETURN_H - AM_CONDITIONAL([INSTALL_LIBOPTS],[false]) - AM_CONDITIONAL([NEED_LIBOPTS], [false]) -+ included_libopts=yes - fi --AM_CONDITIONAL(NEED_LIBOPTS, test "$enable_local_libopts" = "yes") -+ -+AM_CONDITIONAL(NEED_LIBOPTS, test "$included_libopts" = "yes") - - AC_CHECK_TYPE(ssize_t, - [ -@@ -896,7 +898,7 @@ AC_MSG_NOTICE([summary of build options: - Compiler: ${CC} - CFlags: ${CFLAGS} - Library types: Shared=${enable_shared}, Static=${enable_static} -- Local libopts: ${enable_local_libopts} -+ Local libopts: ${included_libopts} - Local libtasn1: ${included_libtasn1} - Use nettle-mini: ${mini_nettle} - ]) -diff --git a/src/Makefile.am b/src/Makefile.am -index 4105ab6..b907249 100644 ---- a/src/Makefile.am -+++ b/src/Makefile.am -@@ -30,13 +30,6 @@ if ENABLE_CRYWRAP - SUBDIRS += crywrap - endif - --if NEED_LIBOPTS --LIBOPTS = libopts/libopts.la --SUBDIRS += libopts --else --LIBOPTS = $(LIBOPTS_LDADD) --endif -- - EXTRA_DIST = args-std.def - - AM_CFLAGS = $(WARN_CFLAGS) $(WERROR_CFLAGS) -@@ -49,6 +42,14 @@ AM_CPPFLAGS = \ - -I$(srcdir)/../extra/includes \ - $(LIBOPTS_CFLAGS) - -+if NEED_LIBOPTS -+LIBOPTS = libopts/libopts.la -+SUBDIRS += libopts -+AM_CPPFLAGS += -I$(srcdir)/libopts -+else -+LIBOPTS = $(LIBOPTS_LDADD) -+endif -+ - bin_PROGRAMS = psktool gnutls-cli-debug certtool - if ENABLE_SRP - bin_PROGRAMS += srptool From d5c824e8bfd00a81c3c8b834c3727768eee4cd5c Mon Sep 17 00:00:00 2001 From: Marty R Date: Wed, 6 May 2015 20:58:02 -0700 Subject: [PATCH 354/681] nut: remove patch for old automake version tools/automake was updated to 1.15 which removed this bug; patch no longer needed. Signed-off-by: Martin Rowe --- .../patches/010-ignore_automake_k_bug.patch | 28 ------------------- 1 file changed, 28 deletions(-) delete mode 100644 net/nut/patches/010-ignore_automake_k_bug.patch diff --git a/net/nut/patches/010-ignore_automake_k_bug.patch b/net/nut/patches/010-ignore_automake_k_bug.patch deleted file mode 100644 index 8d3645d09..000000000 --- a/net/nut/patches/010-ignore_automake_k_bug.patch +++ /dev/null @@ -1,28 +0,0 @@ ---- a/Makefile.in -+++ b/Makefile.in -@@ -431,12 +431,6 @@ distclean-libtool: - # (2) otherwise, pass the desired values on the `make' command line. - $(RECURSIVE_TARGETS): - @fail= failcom='exit 1'; \ -- for f in x $$MAKEFLAGS; do \ -- case $$f in \ -- *=* | --[!k]*);; \ -- *k*) failcom='fail=yes';; \ -- esac; \ -- done; \ - dot_seen=no; \ - target=`echo $@ | sed s/-recursive//`; \ - list='$(SUBDIRS)'; for subdir in $$list; do \ -@@ -456,12 +450,6 @@ $(RECURSIVE_TARGETS): - - $(RECURSIVE_CLEAN_TARGETS): - @fail= failcom='exit 1'; \ -- for f in x $$MAKEFLAGS; do \ -- case $$f in \ -- *=* | --[!k]*);; \ -- *k*) failcom='fail=yes';; \ -- esac; \ -- done; \ - dot_seen=no; \ - case "$@" in \ - distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ From affb6cb9ede0d3459c7c6180663f049bf87313bd Mon Sep 17 00:00:00 2001 From: Karl Palsson Date: Thu, 7 May 2015 10:11:26 +0000 Subject: [PATCH 355/681] libwebsockets: update to 1.4.x release. This changes the ABI and .so number, so it is only suitable for trunk packages. A patch included upstream has been dropped. Full changelog: https://github.com/warmcat/libwebsockets/blob/master/changelog Signed-off-by: Karl Palsson --- libs/libwebsockets/Makefile | 2 +- ...yassl-correct-include-path-for-3.1.x.patch | 25 ------------------- 2 files changed, 1 insertion(+), 26 deletions(-) delete mode 100644 libs/libwebsockets/patches/0001-cyassl-correct-include-path-for-3.1.x.patch diff --git a/libs/libwebsockets/Makefile b/libs/libwebsockets/Makefile index 62cd3fa8b..7b7fac32d 100644 --- a/libs/libwebsockets/Makefile +++ b/libs/libwebsockets/Makefile @@ -8,7 +8,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=libwebsockets -PKG_VERSION:=1.3-chrome37-firefox30 +PKG_VERSION:=1.4-chrome43-firefox-36 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz diff --git a/libs/libwebsockets/patches/0001-cyassl-correct-include-path-for-3.1.x.patch b/libs/libwebsockets/patches/0001-cyassl-correct-include-path-for-3.1.x.patch deleted file mode 100644 index 4413ac929..000000000 --- a/libs/libwebsockets/patches/0001-cyassl-correct-include-path-for-3.1.x.patch +++ /dev/null @@ -1,25 +0,0 @@ -From 4fb4a2353db521667d1ec61480bf8179bf585d5f Mon Sep 17 00:00:00 2001 -From: Karl Palsson -Date: Thu, 14 Aug 2014 16:30:48 +0000 -Subject: [PATCH] cyassl: correct include path for 3.1.x - ---- - lib/private-libwebsockets.h | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/lib/private-libwebsockets.h b/lib/private-libwebsockets.h -index 4194498..fbd22b5 100755 ---- a/lib/private-libwebsockets.h -+++ b/lib/private-libwebsockets.h -@@ -155,7 +155,7 @@ - #ifdef LWS_OPENSSL_SUPPORT - #ifdef USE_CYASSL - #include --#include -+#include - unsigned char * - SHA1(const unsigned char *d, size_t n, unsigned char *md); - #else --- -1.8.3.1 - From d3fd7b112658ed8733664004402617ed75ad0620 Mon Sep 17 00:00:00 2001 From: Karl Palsson Date: Thu, 7 May 2015 14:09:12 +0000 Subject: [PATCH 356/681] libwebsockets: Add maintainer/url info I added the package originally, guess I should maintain it. Signed-off-by: Karl Palsson --- libs/libwebsockets/Makefile | 2 ++ 1 file changed, 2 insertions(+) diff --git a/libs/libwebsockets/Makefile b/libs/libwebsockets/Makefile index 7b7fac32d..d9952e6fb 100644 --- a/libs/libwebsockets/Makefile +++ b/libs/libwebsockets/Makefile @@ -43,6 +43,8 @@ define Package/$(PKG_NAME)/Default CATEGORY:=Libraries TITLE:=libwebsockets DEPENDS:=+zlib + URL:=https://libwebsockets.org + MAINTAINER:=Karl Palsson endef define Package/libwebsockets-openssl From 453152b874740fcdd7f83ab25f0121e08144a3aa Mon Sep 17 00:00:00 2001 From: Karl Palsson Date: Fri, 8 May 2015 10:41:27 +0000 Subject: [PATCH 357/681] net/mosquitto: Upgrade 1.4.1 to 1.4.2 Bugfix release. Full changelog available at: http://mosquitto.org/2015/05/version-1-4-2-released/ Drops a patch now included upstream. Signed-off-by: Karl Palsson --- net/mosquitto/Makefile | 4 ++-- net/mosquitto/patches/101-qos2-inflight.patch | 12 ------------ 2 files changed, 2 insertions(+), 14 deletions(-) delete mode 100644 net/mosquitto/patches/101-qos2-inflight.patch diff --git a/net/mosquitto/Makefile b/net/mosquitto/Makefile index 5b015795c..7ad3bc8ce 100644 --- a/net/mosquitto/Makefile +++ b/net/mosquitto/Makefile @@ -9,14 +9,14 @@ include $(TOPDIR)/rules.mk PKG_NAME:=mosquitto -PKG_VERSION:=1.4.1 +PKG_VERSION:=1.4.2 PKG_RELEASE:=2 PKG_LICENSE:=BSD-3-Clause PKG_LICENSE_FILES:=LICENSE.txt PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://mosquitto.org/files/source/ -PKG_MD5SUM:=46008028563eb750c6aa93281ab2e181 +PKG_MD5SUM:=2c3b19686c04849ed4b183c63149bfe1 PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/$(PKG_NAME)-$(PKG_VERSION) include $(INCLUDE_DIR)/package.mk diff --git a/net/mosquitto/patches/101-qos2-inflight.patch b/net/mosquitto/patches/101-qos2-inflight.patch deleted file mode 100644 index 61706d392..000000000 --- a/net/mosquitto/patches/101-qos2-inflight.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff --git a/lib/mosquitto.c b/lib/mosquitto.c -index bd9dbd3..7314248 100644 ---- a/lib/mosquitto.c -+++ b/lib/mosquitto.c -@@ -594,7 +594,6 @@ int mosquitto_publish(struct mosquitto *mosq, int *mid, const char *topic, int p - pthread_mutex_lock(&mosq->out_message_mutex); - _mosquitto_message_queue(mosq, message, mosq_md_out); - if(mosq->max_inflight_messages == 0 || mosq->inflight_messages < mosq->max_inflight_messages){ -- mosq->inflight_messages++; - if(qos == 1){ - message->state = mosq_ms_wait_for_puback; - }else if(qos == 2){ From c886fe965c3edee5f75faff31d930c987a4b8e49 Mon Sep 17 00:00:00 2001 From: Markus Stenberg Date: Fri, 8 May 2015 12:51:03 +0300 Subject: [PATCH 358/681] mdnsresponder: No longer require IPv4 address to start. It used to require 1+ IPv4 addresses to start on Linux. Now it starts up with 0 addresses (of any type), as netlink can provide us more later. This way, no stupid restart loop with procd if it is racing with netifd at startup. Signed-off-by: Steven Barth --- .../patches/100-linux_fixes.patch | 35 +++++++++++++++---- 1 file changed, 29 insertions(+), 6 deletions(-) diff --git a/net/mdnsresponder/patches/100-linux_fixes.patch b/net/mdnsresponder/patches/100-linux_fixes.patch index 51b948486..02940cf2f 100644 --- a/net/mdnsresponder/patches/100-linux_fixes.patch +++ b/net/mdnsresponder/patches/100-linux_fixes.patch @@ -103,7 +103,7 @@ index 3996b7b..e58d8eb 100755 return status; } diff --git a/mDNSPosix/mDNSPosix.c b/mDNSPosix/mDNSPosix.c -index 6effa12..d3acf99 100755 +index 6effa12..7c1d6eb 100755 --- a/mDNSPosix/mDNSPosix.c +++ b/mDNSPosix/mDNSPosix.c @@ -138,7 +138,7 @@ mDNSlocal void SockAddrTomDNSAddr(const struct sockaddr *const sa, mDNSAddr *ipA @@ -209,7 +209,30 @@ index 6effa12..d3acf99 100755 assert((err == 0) == (*sktPtr != -1)); return err; } -@@ -1026,7 +1085,7 @@ mDNSlocal mStatus OpenIfNotifySocket(int *pFD) +@@ -938,19 +997,14 @@ mDNSlocal int SetupInterfaceList(mDNS *const m) + int err = 0; + struct ifi_info *intfList = get_ifi_info(AF_INET, mDNStrue); + struct ifi_info *firstLoopback = NULL; ++ struct ifi_info **p = &intfList; + + assert(m != NULL); + debugf("SetupInterfaceList"); + +- if (intfList == NULL) err = ENOENT; +- + #if HAVE_IPV6 +- if (err == 0) /* Link the IPv6 list to the end of the IPv4 list */ +- { +- struct ifi_info **p = &intfList; +- while (*p) p = &(*p)->ifi_next; +- *p = get_ifi_info(AF_INET6, mDNStrue); +- } ++ while (*p) p = &(*p)->ifi_next; ++ *p = get_ifi_info(AF_INET6, mDNStrue); + #endif + + if (err == 0) +@@ -1026,7 +1080,7 @@ mDNSlocal mStatus OpenIfNotifySocket(int *pFD) /* Subscribe the socket to Link & IP addr notifications. */ mDNSPlatformMemZero(&snl, sizeof snl); snl.nl_family = AF_NETLINK; @@ -218,7 +241,7 @@ index 6effa12..d3acf99 100755 ret = bind(sock, (struct sockaddr *) &snl, sizeof snl); if (0 == ret) *pFD = sock; -@@ -1104,11 +1163,18 @@ mDNSlocal mDNSu32 ProcessRoutingNotification(int sd) +@@ -1104,11 +1158,18 @@ mDNSlocal mDNSu32 ProcessRoutingNotification(int sd) PrintNetLinkMsg(pNLMsg); #endif @@ -239,7 +262,7 @@ index 6effa12..d3acf99 100755 // Advance pNLMsg to the next message in the buffer if ((pNLMsg->nlmsg_flags & NLM_F_MULTI) != 0 && pNLMsg->nlmsg_type != NLMSG_DONE) -@@ -1279,8 +1345,12 @@ mDNSexport mStatus mDNSPlatformInit(mDNS *const m) +@@ -1279,8 +1340,12 @@ mDNSexport mStatus mDNSPlatformInit(mDNS *const m) if (err == mStatus_NoError) err = SetupSocket(&sa, zeroIPPort, 0, &m->p->unicastSocket6); #endif @@ -252,7 +275,7 @@ index 6effa12..d3acf99 100755 // Tell mDNS core about DNS Servers mDNS_Lock(m); -@@ -1313,9 +1383,17 @@ mDNSexport void mDNSPlatformClose(mDNS *const m) +@@ -1313,9 +1378,17 @@ mDNSexport void mDNSPlatformClose(mDNS *const m) { assert(m != NULL); ClearInterfaceList(m); @@ -272,7 +295,7 @@ index 6effa12..d3acf99 100755 #endif } -@@ -1571,14 +1649,14 @@ mDNSexport mStatus mDNSPlatformClearSPSMACAddr(void) +@@ -1571,14 +1644,14 @@ mDNSexport mStatus mDNSPlatformClearSPSMACAddr(void) mDNSexport mDNSu16 mDNSPlatformGetUDPPort(UDPSocket *sock) { (void) sock; // unused From 8161cba303ad1b30ce157f004a2627977d26f9c3 Mon Sep 17 00:00:00 2001 From: Christian Schoenebeck Date: Fri, 8 May 2015 20:39:10 +0200 Subject: [PATCH 359/681] ddns-scripts: update to version 2.4.2-1 * fix Makefile to force compression of tld_names.dat reported in OpenWrt Ticket 19597 * change default of retry_count to "0" (retry endless) suggested by Henning Schild * updated tld_names.dat include changes until 07.05.2015 Signed-off-by: Christian Schoenebeck --- net/ddns-scripts/Makefile | 4 +- net/ddns-scripts/files/dynamic_dns_updater.sh | 2 +- net/ddns-scripts/files/tld_names.dat | 390 ++++++++++++++---- 3 files changed, 319 insertions(+), 77 deletions(-) diff --git a/net/ddns-scripts/Makefile b/net/ddns-scripts/Makefile index f739cb729..ba04fb5e4 100644 --- a/net/ddns-scripts/Makefile +++ b/net/ddns-scripts/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=ddns-scripts # Version == major.minor.patch # increase on new functionality (minor) or patches (patch) -PKG_VERSION:=2.4.1 +PKG_VERSION:=2.4.2 # Release == build # increase on changes of services files or tld_names.dat PKG_RELEASE:=1 @@ -109,7 +109,7 @@ define Build/Compile -e '/^\/\/\s/d' \ -e '/^\s*$$$$/d' $$$$FILE; \ done - gzip -9 $(PKG_BUILD_DIR)/files/tld_names.dat + gzip -f9 $(PKG_BUILD_DIR)/files/tld_names.dat endef define Package/$(PKG_NAME)/conffiles diff --git a/net/ddns-scripts/files/dynamic_dns_updater.sh b/net/ddns-scripts/files/dynamic_dns_updater.sh index a0143a73c..95d2c9408 100644 --- a/net/ddns-scripts/files/dynamic_dns_updater.sh +++ b/net/ddns-scripts/files/dynamic_dns_updater.sh @@ -120,7 +120,7 @@ ERR_LAST=$? # save return code - equal 0 if SECTION_ID found # set defaults if not defined [ -z "$enabled" ] && enabled=0 -[ -z "$retry_count" ] && retry_count=5 +[ -z "$retry_count" ] && retry_count=0 # endless retry [ -z "$use_syslog" ] && use_syslog=2 # syslog "Notice" [ -z "$use_https" ] && use_https=0 # not use https [ -z "$use_logfile" ] && use_logfile=1 # use logfile by default diff --git a/net/ddns-scripts/files/tld_names.dat b/net/ddns-scripts/files/tld_names.dat index 474b780b3..1d848b41b 100644 --- a/net/ddns-scripts/files/tld_names.dat +++ b/net/ddns-scripts/files/tld_names.dat @@ -830,6 +830,7 @@ edu.et biz.et name.et info.et +net.et // eu : http://en.wikipedia.org/wiki/.eu eu @@ -936,6 +937,11 @@ org.gi // gl : http://en.wikipedia.org/wiki/.gl // http://nic.gl gl +co.gl +com.gl +edu.gl +net.gl +org.gl // gm : http://www.nic.gm/htmlpages%5Cgm-policy.htm gm @@ -3639,6 +3645,7 @@ ltd.lk assn.lk grp.lk hotel.lk +ac.lk // lr : http://psg.com/dns/lr/lr.txt // Submitted by registry 2008-06-17 @@ -4485,9 +4492,9 @@ mobi.ng // ni : http://www.nic.ni/dominios.htm *.ni -// nl : http://www.domain-registry.nl/ace.php/c,728,122,,,,Home.html -// Confirmed by registry (with technical -// reservations) 2008-06-08 +// nl : http://en.wikipedia.org/wiki/.nl +// https://www.sidn.nl/ +// ccTLD for the Netherlands nl // BV.nl will be a registry for dutch BV's (besloten vennootschap) @@ -5551,14 +5558,11 @@ gos.pk info.pk // pl http://www.dns.pl/english/index.html -// confirmed on 26.09.2014 from Bogna Tchórzewska +// updated by .PL registry on 2015-04-28 pl com.pl net.pl org.pl -info.pl -waw.pl -gov.pl // pl functional domains (http://www.dns.pl/english/index.html) aid.pl agro.pl @@ -5568,6 +5572,7 @@ biz.pl edu.pl gmina.pl gsm.pl +info.pl mail.pl miasta.pl media.pl @@ -5589,16 +5594,55 @@ tm.pl tourism.pl travel.pl turystyka.pl -// Government domains (administred by ippt.gov.pl) -uw.gov.pl -um.gov.pl +// Government domains +gov.pl +ap.gov.pl +ic.gov.pl +is.gov.pl +us.gov.pl +kmpsp.gov.pl +kppsp.gov.pl +kwpsp.gov.pl +psp.gov.pl +wskr.gov.pl +kwp.gov.pl +mw.gov.pl ug.gov.pl +um.gov.pl +umig.gov.pl +ugim.gov.pl upow.gov.pl +uw.gov.pl starostwo.gov.pl +pa.gov.pl +po.gov.pl +psse.gov.pl +pup.gov.pl +rzgw.gov.pl +sa.gov.pl so.gov.pl sr.gov.pl -po.gov.pl -pa.gov.pl +wsa.gov.pl +sko.gov.pl +uzs.gov.pl +wiih.gov.pl +winb.gov.pl +pinb.gov.pl +wios.gov.pl +witd.gov.pl +wzmiuw.gov.pl +piw.gov.pl +wiw.gov.pl +griw.gov.pl +wif.gov.pl +oum.gov.pl +sdn.gov.pl +zp.gov.pl +uppo.gov.pl +mup.gov.pl +wuoz.gov.pl +konsulat.gov.pl +oirm.gov.pl // pl regional domains (http://www.dns.pl/english/index.html) augustow.pl babia-gora.pl @@ -5706,6 +5750,7 @@ ustka.pl walbrzych.pl warmia.pl warszawa.pl +waw.pl wegrow.pl wielun.pl wlocl.pl @@ -6871,141 +6916,183 @@ edu.ws yt // IDN ccTLDs -// Please sort by ISO 3166 ccTLD, then punicode string -// when submitting patches and follow this format: -// ("" ) : -// [optional sponsoring org] -// +// When submitting patches, please maintain a sort by ISO 3166 ccTLD, then +// U-label, and follow this format: +// // A-Label ("", [, variant info]) : +// // [sponsoring org] +// U-Label -// xn--mgbaam7a8h ("Emerat" Arabic) : AE +// xn--mgbaam7a8h ("Emerat", Arabic) : AE // http://nic.ae/english/arabicdomain/rules.jsp امارات xn--mgbaam7a8h -// xn--54b7fta0cc ("Bangla" Bangla) : BD +// xn--y9a3aq ("hye", Armenian) : AM +// ISOC AM (operated by .am Registry) +հայ +xn--y9a3aq + +// xn--54b7fta0cc ("Bangla", Bangla) : BD বাংলা xn--54b7fta0cc -// xn--fiqs8s ("China" Chinese-Han-Simplified <.Zhongguo>) : CN +// xn--90ais ("bel", Belarusian/Russian Cyrillic) : BY +// Operated by .by registry +бел +xn--90ais + +// xn--fiqs8s ("Zhongguo/China", Chinese, Simplified) : CN // CNNIC // http://cnnic.cn/html/Dir/2005/10/11/3218.htm 中国 xn--fiqs8s -// xn--fiqz9s ("China" Chinese-Han-Traditional <.Zhongguo>) : CN +// xn--fiqz9s ("Zhongguo/China", Chinese, Traditional) : CN // CNNIC // http://cnnic.cn/html/Dir/2005/10/11/3218.htm 中國 xn--fiqz9s -// xn--lgbbat1ad8j ("Algeria / Al Jazair" Arabic) : DZ +// xn--lgbbat1ad8j ("Algeria/Al Jazair", Arabic) : DZ الجزائر xn--lgbbat1ad8j -// xn--wgbh1c ("Egypt" Arabic .masr) : EG +// xn--wgbh1c ("Egypt/Masr", Arabic) : EG // http://www.dotmasr.eg/ مصر xn--wgbh1c -// xn--node ("ge" Georgian (Mkhedruli)) : GE +// xn--node ("ge", Georgian Mkhedruli) : GE გე xn--node -// xn--j6w193g ("Hong Kong" Chinese-Han) : HK +// xn--qxam ("el", Greek) : GR +// Hellenic Ministry of Infrastructure, Transport, and Networks +ελ +xn--qxam + +// xn--j6w193g ("Hong Kong", Chinese) : HK // https://www2.hkirc.hk/register/rules.jsp 香港 xn--j6w193g -// xn--h2brj9c ("Bharat" Devanagari) : IN +// xn--h2brj9c ("Bharat", Devanagari) : IN // India भारत xn--h2brj9c -// xn--mgbbh1a71e ("Bharat" Arabic) : IN +// xn--mgbbh1a71e ("Bharat", Arabic) : IN // India بھارت xn--mgbbh1a71e -// xn--fpcrj9c3d ("Bharat" Telugu) : IN +// xn--fpcrj9c3d ("Bharat", Telugu) : IN // India భారత్ xn--fpcrj9c3d -// xn--gecrj9c ("Bharat" Gujarati) : IN +// xn--gecrj9c ("Bharat", Gujarati) : IN // India ભારત xn--gecrj9c -// xn--s9brj9c ("Bharat" Gurmukhi) : IN +// xn--s9brj9c ("Bharat", Gurmukhi) : IN // India ਭਾਰਤ xn--s9brj9c -// xn--45brj9c ("Bharat" Bengali) : IN +// xn--45brj9c ("Bharat", Bengali) : IN // India ভারত xn--45brj9c -// xn--xkc2dl3a5ee0h ("India" Tamil) : IN +// xn--xkc2dl3a5ee0h ("India", Tamil) : IN // India இந்தியா xn--xkc2dl3a5ee0h -// xn--mgba3a4f16a ("Iran" Persian) : IR +// xn--mgba3a4f16a ("Iran", Persian) : IR ایران xn--mgba3a4f16a -// xn--mgba3a4fra ("Iran" Arabic) : IR +// xn--mgba3a4fra ("Iran", Arabic) : IR ايران xn--mgba3a4fra -// xn--mgbayh7gpa ("al-Ordon" Arabic) : JO +// xn--mgbtx2b ("Iraq", Arabic) : IQ +// Communications and Media Commission +عراق +xn--mgbtx2b + +// xn--mgbayh7gpa ("al-Ordon", Arabic) : JO // National Information Technology Center (NITC) // Royal Scientific Society, Al-Jubeiha الاردن xn--mgbayh7gpa -// xn--3e0b707e ("Republic of Korea" Hangul) : KR +// xn--3e0b707e ("Republic of Korea", Hangul) : KR 한국 xn--3e0b707e -// xn--80ao21a ("Kaz" Kazakh) : KZ +// xn--80ao21a ("Kaz", Kazakh) : KZ қаз xn--80ao21a -// xn--fzc2c9e2c ("Lanka" Sinhalese-Sinhala) : LK +// xn--fzc2c9e2c ("Lanka", Sinhalese-Sinhala) : LK // http://nic.lk ලංකා xn--fzc2c9e2c -// xn--xkc2al3hye2a ("Ilangai" Tamil) : LK +// xn--xkc2al3hye2a ("Ilangai", Tamil) : LK // http://nic.lk இலங்கை xn--xkc2al3hye2a -// xn--mgbc0a9azcg ("Morocco / al-Maghrib" Arabic) : MA +// xn--mgbc0a9azcg ("Morocco/al-Maghrib", Arabic) : MA المغرب xn--mgbc0a9azcg -// xn--l1acc ("mon" Mongolian) : MN +// xn--d1alf ("mkd", Macedonian) : MK +// MARnet +мкд +xn--d1alf + +// xn--l1acc ("mon", Mongolian) : MN мон xn--l1acc -// xn--mgbx4cd0ab ("Malaysia" Malay) : MY +// xn--mix891f ("Macao", Chinese, Traditional) : MO +// MONIC / HNET Asia (Registry Operator for .mo) +澳門 +xn--mix891f + +// xn--mix082f ("Macao", Chinese, Simplified) : MO +澳门 +xn--mix082f + +// xn--mgbx4cd0ab ("Malaysia", Malay) : MY مليسيا xn--mgbx4cd0ab -// xn--mgb9awbf ("Oman" Arabic) : OM +// xn--mgb9awbf ("Oman", Arabic) : OM عمان xn--mgb9awbf -// xn--ygbi2ammx ("Falasteen" Arabic) : PS +// xn--mgbai9azgqp6j ("Pakistan", Urdu/Arabic) : PK +پاکستان +xn--mgbai9azgqp6j + +// xn--mgbai9a5eva00b ("Pakistan", Urdu/Arabic, variant) : PK +پاكستان +xn--mgbai9a5eva00b + +// xn--ygbi2ammx ("Falasteen", Arabic) : PS // The Palestinian National Internet Naming Authority (PNINA) // http://www.pnina.ps فلسطين xn--ygbi2ammx -// xn--90a3ac ("srb" Cyrillic) : RS +// xn--90a3ac ("srb", Cyrillic) : RS // http://www.rnids.rs/en/the-.срб-domain срб xn--90a3ac @@ -7022,78 +7109,83 @@ xn--o1ach.xn--90a3ac ак.срб xn--80au.xn--90a3ac -// xn--p1ai ("rf" Russian-Cyrillic) : RU +// xn--p1ai ("rf", Russian-Cyrillic) : RU // http://www.cctld.ru/en/docs/rulesrf.php рф xn--p1ai -// xn--wgbl6a ("Qatar" Arabic) : QA +// xn--wgbl6a ("Qatar", Arabic) : QA // http://www.ict.gov.qa/ قطر xn--wgbl6a -// xn--mgberp4a5d4ar ("AlSaudiah" Arabic) : SA +// xn--mgberp4a5d4ar ("AlSaudiah", Arabic) : SA // http://www.nic.net.sa/ السعودية xn--mgberp4a5d4ar -// xn--mgberp4a5d4a87g ("AlSaudiah" Arabic) variant : SA +// xn--mgberp4a5d4a87g ("AlSaudiah", Arabic, variant) : SA السعودیة xn--mgberp4a5d4a87g -// xn--mgbqly7c0a67fbc ("AlSaudiah" Arabic) variant : SA +// xn--mgbqly7c0a67fbc ("AlSaudiah", Arabic, variant) : SA السعودیۃ xn--mgbqly7c0a67fbc -// xn--mgbqly7cvafr ("AlSaudiah" Arabic) variant : SA +// xn--mgbqly7cvafr ("AlSaudiah", Arabic, variant) : SA السعوديه xn--mgbqly7cvafr -// xn--ogbpf8fl ("Syria" Arabic) : SY -سورية -xn--ogbpf8fl - -// xn--mgbtf8fl ("Syria" Arabic) variant : SY -سوريا -xn--mgbtf8fl +// xn--mgbpl2fh ("sudan", Arabic) : SD +// Operated by .sd registry +سودان +xn--mgbpl2fh -// xn--yfro4i67o Singapore ("Singapore" Chinese-Han) : SG +// xn--yfro4i67o Singapore ("Singapore", Chinese) : SG 新加坡 xn--yfro4i67o -// xn--clchc0ea0b2g2a9gcd ("Singapore" Tamil) : SG +// xn--clchc0ea0b2g2a9gcd ("Singapore", Tamil) : SG சிங்கப்பூர் xn--clchc0ea0b2g2a9gcd -// xn--o3cw4h ("Thai" Thai) : TH +// xn--ogbpf8fl ("Syria", Arabic) : SY +سورية +xn--ogbpf8fl + +// xn--mgbtf8fl ("Syria", Arabic, variant) : SY +سوريا +xn--mgbtf8fl + +// xn--o3cw4h ("Thai", Thai) : TH // http://www.thnic.co.th ไทย xn--o3cw4h -// xn--pgbs0dh ("Tunis") : TN +// xn--pgbs0dh ("Tunisia", Arabic) : TN // http://nic.tn تونس xn--pgbs0dh -// xn--kpry57d ("Taiwan" Chinese-Han-Traditional) : TW +// xn--kpry57d ("Taiwan", Chinese, Traditional) : TW // http://www.twnic.net/english/dn/dn_07a.htm 台灣 xn--kpry57d -// xn--kprw13d ("Taiwan" Chinese-Han-Simplified) : TW +// xn--kprw13d ("Taiwan", Chinese, Simplified) : TW // http://www.twnic.net/english/dn/dn_07a.htm 台湾 xn--kprw13d -// xn--nnx388a ("Taiwan") variant : TW +// xn--nnx388a ("Taiwan", Chinese, variant) : TW 臺灣 xn--nnx388a -// xn--j1amh ("ukr" Cyrillic) : UA +// xn--j1amh ("ukr", Cyrillic) : UA укр xn--j1amh -// xn--mgb2ddes ("AlYemen" Arabic) : YE +// xn--mgb2ddes ("AlYemen", Arabic) : YE اليمن xn--mgb2ddes @@ -7113,7 +7205,7 @@ xxx *.zw -// List of new gTLDs imported from https://newgtlds.icann.org/newgtlds.csv on 2015-04-07T06:02:08Z +// List of new gTLDs imported from https://newgtlds.icann.org/newgtlds.csv on 2015-05-06T09:31:08Z // aaa : 2015-02-26 American Automobile Association, Inc. aaa @@ -7166,6 +7258,9 @@ africa // africamagic : 2015-03-05 Electronic Media Network (Pty) Ltd africamagic +// agakhan : 2015-04-23 Fondation Aga Khan (Aga Khan Foundation) +agakhan + // agency : 2013-11-14 Steel Falls, LLC agency @@ -7178,6 +7273,9 @@ airforce // airtel : 2014-10-24 Bharti Airtel Limited airtel +// akdn : 2015-04-23 Fondation Aga Khan (Aga Khan Foundation) +akdn + // alibaba : 2015-01-15 Alibaba Group Holding Limited alibaba @@ -7250,6 +7348,9 @@ axa // azure : 2014-12-18 Microsoft Corporation azure +// baby : 2015-04-09 Johnson & Johnson Services, Inc. +baby + // baidu : 2015-01-08 Baidu, Inc. baidu @@ -7481,13 +7582,16 @@ cba // cbn : 2014-08-22 The Christian Broadcasting Network, Inc. cbn +// ceb : 2015-04-09 The Corporate Executive Board Company +ceb + // center : 2013-11-07 Tin Mill, LLC center // ceo : 2013-11-07 CEOTLD Pty Ltd ceo -// cern : 2014-06-05 European Organization for Nuclear Research ( +// cern : 2014-06-05 European Organization for Nuclear Research ("CERN") cern // cfa : 2014-08-28 CFA Institute @@ -7496,9 +7600,15 @@ cfa // cfd : 2014-12-11 IG Group Holdings PLC cfd +// chanel : 2015-04-09 Chanel International B.V. +chanel + // channel : 2014-05-08 Charleston Road Registry Inc. channel +// chase : 2015-04-30 JPMorgan Chase & Co. +chase + // chat : 2014-12-04 Sand Fields, LLC chat @@ -7550,6 +7660,9 @@ clinic // clothing : 2013-08-27 Steel Lake, LLC clothing +// cloud : 2015-04-16 ARUBA S.p.A. +cloud + // club : 2013-11-08 .CLUB DOMAINS, LLC club @@ -7976,7 +8089,7 @@ garden // gbiz : 2014-07-17 Charleston Road Registry Inc. gbiz -// gdn : 2014-07-31 Joint Stock Company +// gdn : 2014-07-31 Joint Stock Company "Navigation-information systems" gdn // gea : 2014-12-04 GEA Group Aktiengesellschaft @@ -8246,6 +8359,9 @@ java // jcb : 2014-11-20 JCB Co., Ltd. jcb +// jcp : 2015-04-23 JCP Media, Inc. +jcp + // jetzt : 2014-01-09 New TLD Company AB jetzt @@ -8273,6 +8389,9 @@ jot // joy : 2014-12-18 Amazon EU S.à r.l. joy +// jpmorgan : 2015-04-30 JPMorgan Chase & Co. +jpmorgan + // jprs : 2014-09-18 Japan Registry Services Co., Ltd. jprs @@ -8285,6 +8404,15 @@ kaufen // kddi : 2014-09-12 KDDI CORPORATION kddi +// kerryhotels : 2015-04-30 Kerry Trading Co. Limited +kerryhotels + +// kerrylogistics : 2015-04-09 Kerry Trading Co. Limited +kerrylogistics + +// kerryproperties : 2015-04-09 Kerry Trading Co. Limited +kerryproperties + // kfh : 2014-12-04 Kuwait Finance House kfh @@ -8306,6 +8434,9 @@ koeln // komatsu : 2015-01-08 Komatsu Ltd. komatsu +// kpmg : 2015-04-23 KPMG International Cooperative (KPMG International Genossenschaft) +kpmg + // kpn : 2015-01-08 Koninklijke KPN N.V. kpn @@ -8315,6 +8446,9 @@ krd // kred : 2013-12-19 KredTLD Pty Ltd kred +// kuokgroup : 2015-04-09 Kerry Trading Co. Limited +kuokgroup + // kyknet : 2015-03-05 Electronic Media Network (Pty) Ltd kyknet @@ -8348,7 +8482,7 @@ law // lawyer : 2014-03-20 lawyer -// lds : 2014-03-20 IRI Domain Management, LLC ( +// lds : 2014-03-20 IRI Domain Management, LLC ("Applicant") lds // lease : 2014-03-06 Victor Trail, LLC @@ -8360,6 +8494,9 @@ leclerc // legal : 2014-10-16 Blue Falls, LLC legal +// lexus : 2015-04-23 TOYOTA MOTOR CORPORATION +lexus + // lgbt : 2014-05-08 Afilias Limited lgbt @@ -8510,6 +8647,9 @@ microsoft // mini : 2014-01-09 Bayerische Motoren Werke Aktiengesellschaft mini +// mls : 2015-04-23 The Canadian Real Estate Association +mls + // mma : 2014-11-07 MMA IARD mma @@ -8528,6 +8668,9 @@ moe // moi : 2014-12-18 Amazon EU S.à r.l. moi +// mom : 2015-04-16 Uniregistry, Corp. +mom + // monash : 2013-09-30 Monash University monash @@ -8537,7 +8680,7 @@ money // montblanc : 2014-06-23 Richemont DNS Inc. montblanc -// mormon : 2013-12-05 IRI Domain Management, LLC ( +// mormon : 2013-12-05 IRI Domain Management, LLC ("Applicant") mormon // mortgage : 2014-03-20 @@ -8651,6 +8794,9 @@ nyc // obi : 2014-09-25 OBI Group Holding SE & Co. KGaA obi +// observer : 2015-04-30 Guardian News and Media Limited +observer + // office : 2015-03-12 Microsoft Corporation office @@ -8813,6 +8959,9 @@ properties // property : 2014-05-22 Uniregistry, Corp. property +// protection : 2015-04-23 Symantec Corporation +protection + // pub : 2013-12-12 United TLD Holdco Ltd. pub @@ -8990,7 +9139,7 @@ sbs // sca : 2014-03-13 SVENSKA CELLULOSA AKTIEBOLAGET SCA (publ) sca -// scb : 2014-02-20 The Siam Commercial Bank Public Company Limited ( +// scb : 2014-02-20 The Siam Commercial Bank Public Company Limited ("SCB") scb // schmidt : 2014-04-03 SALM S.A.S. @@ -9041,6 +9190,9 @@ sexy // sharp : 2014-05-01 Sharp Corporation sharp +// shaw : 2015-04-23 Shaw Cablesystems G.P. +shaw + // shia : 2014-09-04 Asia Green IT System Bilgisayar San. ve Tic. Ltd. Sti. shia @@ -9068,6 +9220,9 @@ singles // site : 2015-01-15 DotSite Inc. site +// ski : 2015-04-09 STARTING DOT LIMITED +ski + // skin : 2015-01-15 L'Oréal skin @@ -9149,6 +9304,9 @@ stockholm // storage : 2014-12-22 Self Storage Company LLC storage +// store : 2015-04-09 DotStore Inc. +store + // studio : 2015-02-11 Spring Goodbye, LLC studio @@ -9203,13 +9361,16 @@ tab // taipei : 2014-07-10 Taipei City Government taipei +// talk : 2015-04-09 Amazon EU S.à r.l. +talk + // taobao : 2015-01-15 Alibaba Group Holding Limited taobao // tatamotors : 2015-03-12 Tata Motors Ltd tatamotors -// tatar : 2014-04-24 Limited Liability Company +// tatar : 2014-04-24 Limited Liability Company "Coordination Center of Regional Domain of Tatarstan Republic" tatar // tattoo : 2013-08-30 Uniregistry, Corp. @@ -9251,6 +9412,9 @@ thd // theater : 2015-03-19 Blue Tigers, LLC theater +// theguardian : 2015-04-30 Guardian News and Media Limited +theguardian + // tickets : 2015-02-05 Accent Media Limited tickets @@ -9296,6 +9460,9 @@ tours // town : 2014-03-06 Koko Moon, LLC town +// toyota : 2015-04-23 TOYOTA MOTOR CORPORATION +toyota + // toys : 2014-03-06 Pioneer Orchard, LLC toys @@ -9643,6 +9810,10 @@ xn--efvy88h 工行 xn--estv75g +// xn--fct429k : 2015-04-09 Amazon EU S.à r.l. +家電 +xn--fct429k + // xn--fhbei : 2015-01-15 VeriSign Sarl كوم xn--fhbei @@ -9815,6 +9986,10 @@ xn--vhquv 信息 xn--vuq861b +// xn--w4r85el8fhu5dnra : 2015-04-30 Kerry Trading Co. Limited +嘉里大酒店 +xn--w4r85el8fhu5dnra + // xn--xhq521b : 2013-11-14 Guangzhou YU Wei Information Technology Co., Ltd. 广东 xn--xhq521b @@ -9847,6 +10022,9 @@ yoga // yokohama : 2013-12-12 GMO Registry, Inc. yokohama +// you : 2015-04-09 Amazon EU S.à r.l. +you + // youtube : 2014-05-01 Charleston Road Registry Inc. youtube @@ -10289,6 +10467,66 @@ webhop.org worse-than.tv writesthisblog.com +// EU.org https://eu.org/ +// Submitted by Pierre Beyssac 2015-04-17 + +eu.org +al.eu.org +asso.eu.org +at.eu.org +au.eu.org +be.eu.org +bg.eu.org +ca.eu.org +cd.eu.org +ch.eu.org +cn.eu.org +cy.eu.org +cz.eu.org +de.eu.org +dk.eu.org +edu.eu.org +ee.eu.org +es.eu.org +fi.eu.org +fr.eu.org +gr.eu.org +hr.eu.org +hu.eu.org +ie.eu.org +il.eu.org +in.eu.org +int.eu.org +is.eu.org +it.eu.org +jp.eu.org +kr.eu.org +lt.eu.org +lu.eu.org +lv.eu.org +mc.eu.org +me.eu.org +mk.eu.org +mt.eu.org +my.eu.org +net.eu.org +ng.eu.org +nl.eu.org +no.eu.org +nz.eu.org +paris.eu.org +pl.eu.org +pt.eu.org +q-a.eu.org +ro.eu.org +ru.eu.org +se.eu.org +si.eu.org +sk.eu.org +tr.eu.org +uk.eu.org +us.eu.org + // Fastly Inc. http://www.fastly.com/ // Submitted by Vladimir Vuksan 2013-05-31 a.ssl.fastly.net @@ -10392,6 +10630,10 @@ azurewebsites.net azure-mobile.net cloudapp.net +// Neustar Inc. +// Submitted by Trung Tran 2015-04-23 +4u.com + // NFSN, Inc. : https://www.NearlyFreeSpeech.NET/ // Submitted by Jeff Wheelhouse 2014-02-02 nfshost.com From f2d8fc3bc2efc7fb9ee53b5df47aee1520618b29 Mon Sep 17 00:00:00 2001 From: Jonathan Bennett Date: Thu, 7 May 2015 22:39:22 -0500 Subject: [PATCH 360/681] Fwknop: Update to newest release add basic uci support add optional gpg support signed-off-by: Jonathan Bennett --- net/fwknop/Config.in | 12 ++++ net/fwknop/Makefile | 19 ++++-- net/fwknop/files/fwknopd.init | 89 +++++++++++++++++++++++++ net/fwknop/patches/001-fix_config.patch | 18 ----- net/fwknop/patches/002-fix_init.patch | 17 ----- 5 files changed, 114 insertions(+), 41 deletions(-) create mode 100644 net/fwknop/Config.in create mode 100644 net/fwknop/files/fwknopd.init delete mode 100644 net/fwknop/patches/001-fix_config.patch delete mode 100644 net/fwknop/patches/002-fix_init.patch diff --git a/net/fwknop/Config.in b/net/fwknop/Config.in new file mode 100644 index 000000000..ee0e62300 --- /dev/null +++ b/net/fwknop/Config.in @@ -0,0 +1,12 @@ +#fwknop config +menu "Configuration" + depends on PACKAGE_fwknopd + +config FWKNOPD_GPG + bool "Enable GPG support" + select PACKAGE_gnupg + default n + + + +endmenu diff --git a/net/fwknop/Makefile b/net/fwknop/Makefile index df16e15f4..62d85e675 100644 --- a/net/fwknop/Makefile +++ b/net/fwknop/Makefile @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=fwknop -PKG_VERSION:=2.6.5 +PKG_VERSION:=2.6.6 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 PKG_SOURCE_URL:=http://www.cipherdyne.org/fwknop/download -PKG_MD5SUM:=1ae000a499bf604a2aeef4d0a7a178c8 +PKG_MD5SUM:=1372aeaf1e33ab1d6b9906ef9b5cd02e PKG_MAINTAINER:=Jonathan Bennett PKG_LICENSE:=GPLv2 PKG_INSTALL:=1 @@ -42,7 +42,7 @@ define Package/fwknopd CATEGORY:=Network SUBMENU:=Firewall TITLE+= Daemon - DEPENDS:=+iptables +libfko +libpcap + DEPENDS:=+iptables +libfko +libpcap +FWKNOP_GPG:gnupg endef define Package/fwknopd/description @@ -55,6 +55,10 @@ define Package/fwknopd/conffiles /etc/fwknop/fwknopd.conf endef +define Package/fwknopd/config + source "$(SOURCE)/Config.in" +endef + define Package/fwknop $(call Package/fwknop/Default) SECTION:=net @@ -82,8 +86,12 @@ define Package/libfko/description This package contains the libfko shared library. endef + +ifeq ($(CONFIG_FWKNOPD_GPG),n) + CONFIGURE_ARGS += --without-gpgme +endif + CONFIGURE_ARGS += \ - --without-gpgme \ --with-iptables=/usr/sbin/iptables define Build/InstallDev @@ -98,8 +106,7 @@ define Package/fwknopd/install $(INSTALL_CONF) $(PKG_INSTALL_DIR)/etc/fwknop/{access,fwknopd}.conf \ $(1)/etc/fwknop/ $(INSTALL_DIR) $(1)/etc/init.d - $(INSTALL_BIN) $(PKG_BUILD_DIR)/extras/fwknop.init.openwrt \ - $(1)/etc/init.d/fwknopd + $(INSTALL_BIN) ./files/fwknopd.init $(1)/etc/init.d/fwknopd $(INSTALL_DIR) $(1)/usr/sbin $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/fwknopd $(1)/usr/sbin/ endef diff --git a/net/fwknop/files/fwknopd.init b/net/fwknop/files/fwknopd.init new file mode 100644 index 000000000..294258f82 --- /dev/null +++ b/net/fwknop/files/fwknopd.init @@ -0,0 +1,89 @@ +#!/bin/sh /etc/rc.common +# +# Fwknop is developed primarily by the people listed in the file 'AUTHORS'. +# Copyright (C) 2009-2014 fwknop developers and contributors. For a full +# list of contributors, see the file 'CREDITS'. +# +. /lib/functions.sh +UCI_ENABLED=0 +START=60 + +FWKNOPD_BIN=/usr/sbin/fwknopd + +start() +{ + gen_confs + $FWKNOPD_BIN +} + +stop() +{ + $FWKNOPD_BIN -K +} + +restart() +{ + stop; + sleep 1; + start; +} + +reload() +{ + $FWKNOPD_BIN -R +} + +gen_confs() +{ + + +config_cb() { + + local type="$1" + local name="$2" + if [ "$type" = "global" ] + then + option_cb() { + local option="$1" + local value="$2" + if [ "$option" = "uci_enabled" ] && [ "$value" -eq 1 ] ; then + > /etc/fwknop/fwknopd.conf + > /etc/fwknop/access.conf + UCI_ENABLED=1 + fi + } + elif [ "$type" = "config" ] + then + option_cb() { + local option="$1" + local value="$2" + if [ $UCI_ENABLED ]; then + echo "${option//_/-} $value" >> /etc/fwknop/fwknopd.conf #writing each option to fwknopd.conf + fi + } + elif [ "$type" = "SOURCE" ] + then + echo "${type//_/-} $name" >> /etc/fwknop/access.conf #writing each option to access.conf + option_cb() { + local option="$1" + local value="$2" + if [ $UCI_ENABLED ]; then + echo "${option//_/-} $value" >> /etc/fwknop/access.conf #writing each option to access.conf + fi + } + fi + + + + +} + + +if [ -f /etc/config/fwknopd ]; then + + config_load fwknopd + + +fi + +} diff --git a/net/fwknop/patches/001-fix_config.patch b/net/fwknop/patches/001-fix_config.patch deleted file mode 100644 index 8e5e59088..000000000 --- a/net/fwknop/patches/001-fix_config.patch +++ /dev/null @@ -1,18 +0,0 @@ ---- a/server/fwknopd.conf.inst -+++ b/server/fwknopd.conf.inst -@@ -402,8 +402,13 @@ - # The IPT_FORWARD_ACCESS variable is only used if ENABLE_IPT_FORWARDING is - # enabled. - # --#IPT_FORWARD_ACCESS ACCEPT, filter, FORWARD, 1, FWKNOP_FORWARD, 1; --#IPT_DNAT_ACCESS DNAT, nat, PREROUTING, 1, FWKNOP_PREROUTING, 1; -+ -+# These two lines are changed specifically for Openwrt, due to -+# different naming conventions. IPT_FORWARD is still disabled -+# by default, and must be enabled earlier in this file to be used. -+ -+IPT_FORWARD_ACCESS ACCEPT, filter, zone_wan_forward, 1, FWKNOP_FORWARD, 1; -+IPT_DNAT_ACCESS DNAT, nat, zone_wan_prerouting, 1, FWKNOP_PREROUTING, 1; - - # The IPT_SNAT_ACCESS variable is not used unless both ENABLE_IPT_SNAT and - # ENABLE_IPT_FORWARDING are enabled. Also, the external static IP must be diff --git a/net/fwknop/patches/002-fix_init.patch b/net/fwknop/patches/002-fix_init.patch deleted file mode 100644 index 6370c8e60..000000000 --- a/net/fwknop/patches/002-fix_init.patch +++ /dev/null @@ -1,17 +0,0 @@ ---- a/extras/openwrt/package/fwknop/files/fwknopd.init -+++ b/extras/openwrt/package/fwknop/files/fwknopd.init -@@ -11,12 +11,12 @@ FWKNOPD_BIN=/usr/sbin/fwknopd - - start() - { -- $FWKNOPD_BIN -+ service_start $FWKNOPD_BIN - } - - stop() - { -- $FWKNOPD_BIN -K -+ service_stop $FWKNOPD_BIN -K - } - - restart() From 1947795df8ac6c13faeb58d16d0747f99f5585be Mon Sep 17 00:00:00 2001 From: Jonathan Bennett Date: Sat, 9 May 2015 13:10:08 -0500 Subject: [PATCH 361/681] Fwknop: add flexibility to uci support Styling cleanups signed-off-by: Jonathan Bennett --- net/fwknop/Makefile | 8 ++- net/fwknop/files/fwknopd | 9 ++++ net/fwknop/files/fwknopd.init | 97 +++++++++++++++++------------------ 3 files changed, 64 insertions(+), 50 deletions(-) create mode 100644 net/fwknop/files/fwknopd diff --git a/net/fwknop/Makefile b/net/fwknop/Makefile index 62d85e675..829b31c0c 100644 --- a/net/fwknop/Makefile +++ b/net/fwknop/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=fwknop PKG_VERSION:=2.6.6 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 PKG_SOURCE_URL:=http://www.cipherdyne.org/fwknop/download @@ -102,6 +102,8 @@ define Build/InstallDev endef define Package/fwknopd/install + $(INSTALL_DIR) $(1)/etc/config + $(INSTALL_CONF) ./files/fwknopd $(1)/etc/config/fwknopd $(INSTALL_DIR) $(1)/etc/fwknop $(INSTALL_CONF) $(PKG_INSTALL_DIR)/etc/fwknop/{access,fwknopd}.conf \ $(1)/etc/fwknop/ @@ -111,6 +113,10 @@ define Package/fwknopd/install $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/fwknopd $(1)/usr/sbin/ endef +define Package/fwknopd/conffiles + /etc/config/fwknopd +endef + define Package/fwknop/install $(INSTALL_DIR) $(1)/usr/bin $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/fwknop $(1)/usr/bin/ diff --git a/net/fwknop/files/fwknopd b/net/fwknop/files/fwknopd new file mode 100644 index 000000000..0874ee407 --- /dev/null +++ b/net/fwknop/files/fwknopd @@ -0,0 +1,9 @@ +config global +# option uci_enabled '1' + +config access + option SOURCE 'ANY' + option HMAC_KEY 'CHANGEME' + option KEY 'CHANGEME' + +config config diff --git a/net/fwknop/files/fwknopd.init b/net/fwknop/files/fwknopd.init index 294258f82..6aa41607d 100644 --- a/net/fwknop/files/fwknopd.init +++ b/net/fwknop/files/fwknopd.init @@ -30,60 +30,59 @@ restart() reload() { + gen_confs $FWKNOPD_BIN -R } gen_confs() { - - -config_cb() { - - local type="$1" - local name="$2" - if [ "$type" = "global" ] - then - option_cb() { - local option="$1" - local value="$2" - if [ "$option" = "uci_enabled" ] && [ "$value" -eq 1 ] ; then - > /etc/fwknop/fwknopd.conf - > /etc/fwknop/access.conf - UCI_ENABLED=1 + [ -f /tmp/access.conf.tmp ] && rm /tmp/access.conf.tmp + config_cb() { + local type="$1" + local name="$2" + if [ "$type" = "global" ]; then + option_cb() { + local option="$1" + local value="$2" + if [ "$option" = "uci_enabled" ] && [ "$value" -eq 1 ] ; then + > /etc/fwknop/fwknopd.conf + > /etc/fwknop/access.conf + UCI_ENABLED=1 + fi + } + elif [ "$type" = "config" ]; then + option_cb() { + local option="$1" + local value="$2" + if [ $UCI_ENABLED ]; then + echo "$option $value" >> /etc/fwknop/fwknopd.conf #writing each option to fwknopd.conf + fi + } + elif [ "$type" = "access" ] + then + if [ -f /tmp/access.conf.tmp ] ; then + cat /tmp/access.conf.tmp >> /etc/fwknop/access.conf + rm /tmp/access.conf.tmp fi - } - elif [ "$type" = "config" ] - then - option_cb() { - local option="$1" - local value="$2" - if [ $UCI_ENABLED ]; then - echo "${option//_/-} $value" >> /etc/fwknop/fwknopd.conf #writing each option to fwknopd.conf - fi - } - elif [ "$type" = "SOURCE" ] - then - echo "${type//_/-} $name" >> /etc/fwknop/access.conf #writing each option to access.conf - option_cb() { - local option="$1" - local value="$2" - if [ $UCI_ENABLED ]; then - echo "${option//_/-} $value" >> /etc/fwknop/access.conf #writing each option to access.conf - fi - } - fi - - - - -} - - -if [ -f /etc/config/fwknopd ]; then - - config_load fwknopd - - -fi + option_cb() { + local option="$1" + local value="$2" + if [ $UCI_ENABLED ] && [ $option = "SOURCE" ]; then + echo "$option $value" >> /etc/fwknop/access.conf #writing each option to access.conf + fi + if [ $UCI_ENABLED ] && [ $option != "SOURCE" ]; then + echo "$option $value" >> /tmp/access.conf.tmp #writing each option to access.conf + fi + } + fi + } + + if [ -f /etc/config/fwknopd ]; then + config_load fwknopd + if [ -f /tmp/access.conf.tmp ] ; then + cat /tmp/access.conf.tmp >> /etc/fwknop/access.conf + rm /tmp/access.conf.tmp + fi + fi } From 14c5938398717196c2b73be91cbbefde085401cc Mon Sep 17 00:00:00 2001 From: Denis Shulyaka Date: Sun, 10 May 2015 22:35:34 +0300 Subject: [PATCH 362/681] postfix: update to 3.0.1 Signed-off-by: Denis Shulyaka --- mail/postfix/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/mail/postfix/Makefile b/mail/postfix/Makefile index 36c0f76f5..3f3ba0ff6 100644 --- a/mail/postfix/Makefile +++ b/mail/postfix/Makefile @@ -10,8 +10,8 @@ include $(TOPDIR)/rules.mk PKG_NAME:=postfix PKG_RELEASE:=1 PKG_SOURCE_URL:=ftp://ftp.porcupine.org/mirrors/postfix-release/official/ -PKG_VERSION:=3.0.0 -PKG_MD5SUM:=a4a83f8d729f31c803bf9c2277701d56 +PKG_VERSION:=3.0.1 +PKG_MD5SUM:=3ec1416e7d4fba9566297c8fcf7a348c PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_MAINTAINER:=Denis Shulyaka PKG_LICENSE:=IPL-1.0 From c8122975d35890fe419c7edb551cee7a3de97535 Mon Sep 17 00:00:00 2001 From: Jonathan Bennett Date: Sun, 10 May 2015 16:05:24 -0500 Subject: [PATCH 363/681] Fwknopd: Fix a typo in the init file Signed-off-by: Jonathan Bennett --- net/fwknop/files/fwknopd.init | 1 - 1 file changed, 1 deletion(-) diff --git a/net/fwknop/files/fwknopd.init b/net/fwknop/files/fwknopd.init index 294258f82..a16763278 100644 --- a/net/fwknop/files/fwknopd.init +++ b/net/fwknop/files/fwknopd.init @@ -5,7 +5,6 @@ # list of contributors, see the file 'CREDITS'. # . /lib/functions.sh -UCI_ENABLED=0 START=60 FWKNOPD_BIN=/usr/sbin/fwknopd From eb8370f5e94359a857de3086c8bb068162c7da23 Mon Sep 17 00:00:00 2001 From: Syrone Wong Date: Sun, 10 May 2015 22:38:14 +0800 Subject: [PATCH 364/681] libsodium: update to 1.0.3 Signed-off-by: Shuoyao Wang --- libs/libsodium/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libs/libsodium/Makefile b/libs/libsodium/Makefile index bd4cb9f39..448109472 100644 --- a/libs/libsodium/Makefile +++ b/libs/libsodium/Makefile @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=libsodium -PKG_VERSION:=1.0.2 +PKG_VERSION:=1.0.3 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=https://download.libsodium.org/libsodium/releases -PKG_MD5SUM:=dc40eb23e293448c6fc908757738003f +PKG_MD5SUM:=b3bcc98e34d3250f55ae196822307fab PKG_FIXUP:=libtool autoreconf PKG_USE_MIPS16:=0 From 5bcbff46f93db550563e04f1d5ee503558ac51d8 Mon Sep 17 00:00:00 2001 From: Luka Perkov Date: Mon, 11 May 2015 11:24:55 +0200 Subject: [PATCH 365/681] squid: fix parallel builds Signed-off-by: Luka Perkov --- net/squid/Makefile | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/net/squid/Makefile b/net/squid/Makefile index aeab76570..da43127c4 100644 --- a/net/squid/Makefile +++ b/net/squid/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=squid PKG_VERSION:=3.5.2 -PKG_RELEASE:=2 +PKG_RELEASE:=3 PKG_LICENSE:=GPL-2.0 PKG_MAINTAINER:=Luka Perkov @@ -96,9 +96,8 @@ CONFIGURE_VARS += \ ac_cv_epoll_works=yes \ define Build/Compile - $(MAKE) -C $(PKG_BUILD_DIR)/lib \ - all - $(MAKE) -C $(PKG_BUILD_DIR) \ + +$(MAKE) $(PKG_JOBS) -C $(PKG_BUILD_DIR)/lib all + +$(MAKE) $(PKG_JOBS) -C $(PKG_BUILD_DIR) \ DESTDIR="$(PKG_INSTALL_DIR)" \ install endef From ee69b91a18cdf4942c74bb6ed41cf9246cac2193 Mon Sep 17 00:00:00 2001 From: Dirk Chang Date: Wed, 13 May 2015 00:47:46 +0800 Subject: [PATCH 366/681] zmq: fix missing libsodium dependency Signed-off-by: Dirk Chang --- libs/zmq/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libs/zmq/Makefile b/libs/zmq/Makefile index 31bf6bf6b..b94db1939 100644 --- a/libs/zmq/Makefile +++ b/libs/zmq/Makefile @@ -44,7 +44,7 @@ define Package/libzmq $(call Package/libzmq/Default) SECTION:=libs CATEGORY:=Libraries - DEPENDS:=+libuuid +libpthread +librt $(CXX_DEPENDS) + DEPENDS:=+libuuid +libpthread +librt +libsodium $(CXX_DEPENDS) TITLE+= (library) URL:= endef From 86668ddea41a6aa8179d36c06b9e934bdb932c1a Mon Sep 17 00:00:00 2001 From: Ted Hess Date: Tue, 12 May 2015 15:00:33 -0400 Subject: [PATCH 367/681] libmpdclient: Update to 2.10 Signed-off-by: Ted Hess --- libs/libmpdclient/Makefile | 6 ++--- .../patches/001-WIP_musl_compatibility.patch | 22 ------------------- 2 files changed, 3 insertions(+), 25 deletions(-) delete mode 100644 libs/libmpdclient/patches/001-WIP_musl_compatibility.patch diff --git a/libs/libmpdclient/Makefile b/libs/libmpdclient/Makefile index dbf5fe02c..06661145f 100644 --- a/libs/libmpdclient/Makefile +++ b/libs/libmpdclient/Makefile @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=libmpdclient -PKG_VERSION:=2.9 -PKG_RELEASE:=3 +PKG_VERSION:=2.10 +PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=http://www.musicpd.org/download/libmpdclient/2/ -PGK_MD5SUM:=4b101a36e5c0cf967dc063391260ddbf +PGK_MD5SUM:=00606c630b905aa6196330373b366c29 PKG_MAINTAINER:=Ted Hess PKG_LICENSE:=BSD-3-Clause diff --git a/libs/libmpdclient/patches/001-WIP_musl_compatibility.patch b/libs/libmpdclient/patches/001-WIP_musl_compatibility.patch deleted file mode 100644 index 02ea65220..000000000 --- a/libs/libmpdclient/patches/001-WIP_musl_compatibility.patch +++ /dev/null @@ -1,22 +0,0 @@ ---- a/src/socket.c -+++ b/src/socket.c -@@ -43,6 +43,7 @@ - #else - # include - # include -+# include - # include - # include - # include ---- a/src/sync.c -+++ b/src/sync.c -@@ -33,6 +33,9 @@ - #include - #include - #include -+#ifndef WIN32 -+#include -+#endif - #include - #include - From 934b9a60cac8ba787b86bba88c3a2c65c4ababdd Mon Sep 17 00:00:00 2001 From: Ted Hess Date: Tue, 12 May 2015 15:16:07 -0400 Subject: [PATCH 368/681] mpd: Update to 0.18.23, fix ALSA support in mpd-mini, refresh patches Signed-off-by: Ted Hess --- sound/mpd/Makefile | 6 ++---- sound/mpd/patches/210-support_raw_pcm_streams.patch | 2 +- .../mpd/patches/220-handle_slow_server_stream_startup.patch | 2 +- 3 files changed, 4 insertions(+), 6 deletions(-) diff --git a/sound/mpd/Makefile b/sound/mpd/Makefile index 1b1e8686e..56e63eb4a 100644 --- a/sound/mpd/Makefile +++ b/sound/mpd/Makefile @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=mpd -PKG_VERSION:=0.18.21 +PKG_VERSION:=0.18.23 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=http://www.musicpd.org/download/mpd/0.18/ -PKG_MD5SUM:=945879f55acc256d30a5f69787338ceb +PKG_MD5SUM:=fcdfe8b3a7a21a87b6776204e6eb7814 PKG_MAINTAINER:=Ted Hess PKG_LICENSE:=GPL-2.0 @@ -161,7 +161,6 @@ ifeq ($(BUILD_VARIANT),full) CONFIGURE_ARGS += \ $(call autoconf_bool,CONFIG_BUILD_PATENTED,aac) \ - $(call autoconf_bool,CONFIG_AUDIO_SUPPORT,alsa) \ --enable-audiofile \ --enable-fifo \ --enable-ffmpeg \ @@ -185,7 +184,6 @@ ifeq ($(BUILD_VARIANT),mini) # oggflac is not compatible with tremor CONFIGURE_ARGS += \ --disable-aac \ - --disable-alsa \ --disable-audiofile \ --disable-fifo \ --disable-ffmpeg \ diff --git a/sound/mpd/patches/210-support_raw_pcm_streams.patch b/sound/mpd/patches/210-support_raw_pcm_streams.patch index 2fe086bab..f6624af18 100644 --- a/sound/mpd/patches/210-support_raw_pcm_streams.patch +++ b/sound/mpd/patches/210-support_raw_pcm_streams.patch @@ -1,6 +1,6 @@ --- a/src/decoder/FfmpegDecoderPlugin.cxx +++ b/src/decoder/FfmpegDecoderPlugin.cxx -@@ -634,6 +634,7 @@ static const char *const ffmpeg_mime_typ +@@ -666,6 +666,7 @@ static const char *const ffmpeg_mime_typ "audio/qcelp", "audio/vorbis", "audio/vorbis+ogg", diff --git a/sound/mpd/patches/220-handle_slow_server_stream_startup.patch b/sound/mpd/patches/220-handle_slow_server_stream_startup.patch index 2c25c33e6..af2773d06 100644 --- a/sound/mpd/patches/220-handle_slow_server_stream_startup.patch +++ b/sound/mpd/patches/220-handle_slow_server_stream_startup.patch @@ -1,6 +1,6 @@ --- a/src/decoder/FfmpegDecoderPlugin.cxx +++ b/src/decoder/FfmpegDecoderPlugin.cxx -@@ -373,6 +373,13 @@ ffmpeg_probe(Decoder *decoder, InputStre +@@ -376,6 +376,13 @@ ffmpeg_probe(Decoder *decoder, InputStre unsigned char buffer[BUFFER_SIZE]; size_t nbytes = decoder_read(decoder, is, buffer, BUFFER_SIZE); From 6e96e4532a944a68f0bc179d17f580791fdb2134 Mon Sep 17 00:00:00 2001 From: Petko Bordjukov Date: Mon, 11 May 2015 18:38:51 +0300 Subject: [PATCH 369/681] upmpdcli: Bump version to 0.11.0 upmpdcli 0.11 mainly improves on the Songcast support, in complement with the changes in sc2mpd. Especially, it now includes an utility (scctl) and web interface to set up multi-room Songcast. Signed-off-by: Petko Bordjukov --- sound/upmpdcli/Config.in | 17 +++++++++++++++++ sound/upmpdcli/Makefile | 19 +++++++++++++++---- 2 files changed, 32 insertions(+), 4 deletions(-) create mode 100644 sound/upmpdcli/Config.in diff --git a/sound/upmpdcli/Config.in b/sound/upmpdcli/Config.in new file mode 100644 index 000000000..fe3272296 --- /dev/null +++ b/sound/upmpdcli/Config.in @@ -0,0 +1,17 @@ +config PACKAGE_UPMPDCLI_SCCTL + bool "scctl command for configuring SongCast receivers" + default no + depends on PACKAGE_upmpdcli + help + Installs the scctl command. See the following link for more info: + http://www.lesbonscomptes.com/upmpdcli/scmulti.html + +config PACKAGE_UPMPDCLI_SC_WEB_INTERFACE + bool "SongCast web server and associated files (depends on python)" + default no + depends on PACKAGE_upmpdcli + select PACKAGE_python + select PACKAGE_UPMPDCLI_SCCTL + help + Installs the SongCast web interface and web server. See the following + link for more info: http://www.lesbonscomptes.com/upmpdcli/scmulti.html diff --git a/sound/upmpdcli/Makefile b/sound/upmpdcli/Makefile index 385a96bee..42b98fa73 100644 --- a/sound/upmpdcli/Makefile +++ b/sound/upmpdcli/Makefile @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=upmpdcli -PKG_VERSION:=0.9.0 -PKG_RELEASE:=2 +PKG_VERSION:=0.11.0 +PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://www.lesbonscomptes.com/upmpdcli/downloads -PKG_MD5SUM:=0e7b86037f19ea3a08067409af6f6902 +PKG_MD5SUM:=40eb2a1988ca367a690fb2506e0f73c1 PKG_MAINTAINER:=Petko Bordjukov PKG_LICENSE:=GPL-2.0 PKG_LICENSE_FILES:=COPYING @@ -29,12 +29,17 @@ define Package/upmpdcli DEPENDS+= +libupnpp +libmpdclient TITLE:=A UPnP front-end to MPD, the Music Player Daemon USERID:=upmpdcli=89:upmpdcli=89 + MENU:=1 endef define Package/upmpdcli/description upmpdcli implements an UPnP Media Renderer, using MPD to perform the real work. endef +define Package/upmpdcli/config + source "$(SOURCE)/Config.in" +endef + define Package/upmpdcli/install $(INSTALL_DIR) $(1)/etc $(INSTALL_CONF) $(PKG_INSTALL_DIR)/etc/upmpdcli.conf $(1)/etc/ @@ -42,8 +47,14 @@ define Package/upmpdcli/install $(INSTALL_CONF) ./files/upmpdcli.config $(1)/etc/config/upmpdcli $(INSTALL_DIR) $(1)/usr/bin $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/upmpdcli $(1)/usr/bin/ +ifeq ($(CONFIG_PACKAGE_UPMPDCLI_SCCTL),y) + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/scctl $(1)/usr/bin/ +endif $(INSTALL_DIR) $(1)/usr/share/upmpdcli - $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/share/upmpdcli/* $(1)/usr/share/upmpdcli/ +ifneq ($(CONFIG_PACKAGE_UPMPDCLI_SC_WEB_INTERFACE),y) + $(RM) -rf $(PKG_INSTALL_DIR)/usr/share/upmpdcli/web +endif + $(CP) -r $(PKG_INSTALL_DIR)/usr/share/upmpdcli $(1)/usr/share/ $(INSTALL_DATA) ./files/upmpdcli.png $(1)/usr/share/upmpdcli/ $(INSTALL_DIR) $(1)/etc/init.d $(INSTALL_BIN) ./files/upmpdcli.init $(1)/etc/init.d/upmpdcli From bfc01f0d59799374efcf322c50e648645da594b3 Mon Sep 17 00:00:00 2001 From: Petko Bordjukov Date: Mon, 11 May 2015 18:30:16 +0300 Subject: [PATCH 370/681] libupnpp: Bump version to 0.11.0 This new version introduces improvements to the OpenHome support. Signed-off-by: Petko Bordjukov --- libs/libupnpp/Makefile | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/libs/libupnpp/Makefile b/libs/libupnpp/Makefile index 8c9071db5..923187465 100644 --- a/libs/libupnpp/Makefile +++ b/libs/libupnpp/Makefile @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=libupnpp -PKG_VERSION:=0.9.0 +PKG_VERSION:=0.11.0 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://www.lesbonscomptes.com/upmpdcli/downloads -PKG_MD5SUM:=ff218bbe2df6cf70b73843d951ef838e +PKG_MD5SUM:=faefaef9e7dbfe57d9224cf49aab6e2e PKG_MAINTAINER:=Petko Bordjukov PKG_LICENSE:=GPL-2.0 PKG_LICENSE_FILES:=COPYING @@ -39,14 +39,13 @@ define Build/InstallDev $(INSTALL_DIR) $(1)/usr/include $(CP) $(PKG_INSTALL_DIR)/usr/include/libupnpp $(1)/usr/include/ $(INSTALL_DIR) $(1)/usr/lib - $(CP) $(PKG_INSTALL_DIR)/usr/lib/libupnpp-$(PKG_VERSION).so* $(1)/usr/lib/ - $(CP) $(PKG_INSTALL_DIR)/usr/lib/libupnpp.{so,la} $(1)/usr/lib/ + $(CP) $(PKG_INSTALL_DIR)/usr/lib/libupnpp.so* $(1)/usr/lib/ + $(CP) $(PKG_INSTALL_DIR)/usr/lib/libupnpp.la $(1)/usr/lib/ endef define Package/libupnpp/install $(INSTALL_DIR) $(1)/usr/lib - $(CP) $(PKG_INSTALL_DIR)/usr/lib/libupnpp-$(PKG_VERSION).so.* $(1)/usr/lib/ - $(CP) $(PKG_INSTALL_DIR)/usr/lib/libupnpp.so $(1)/usr/lib/ + $(CP) $(PKG_INSTALL_DIR)/usr/lib/libupnpp.so.* $(1)/usr/lib/ endef $(eval $(call BuildPackage,libupnpp)) From c7dbdcef173622ec5da51136b109f4706ca0bafa Mon Sep 17 00:00:00 2001 From: Nicolas Thill Date: Tue, 12 May 2015 17:36:33 +0200 Subject: [PATCH 371/681] lttng-modules: update to 2.6.1 Signed-off-by: Nicolas Thill --- devel/lttng-modules/Makefile | 6 +- .../patches/001-mm_page_alloc_extfrag.patch | 98 +------------------ 2 files changed, 8 insertions(+), 96 deletions(-) diff --git a/devel/lttng-modules/Makefile b/devel/lttng-modules/Makefile index 355f32503..85b45f4d5 100644 --- a/devel/lttng-modules/Makefile +++ b/devel/lttng-modules/Makefile @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=lttng-modules -PKG_VERSION:=2.6.0 -PKG_RELEASE:=2 +PKG_VERSION:=2.6.1 +PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 PKG_SOURCE_URL:=https://lttng.org/files/$(PKG_NAME)/ -PKG_MD5SUM:=a058ab037daaca293a54934d7b9f9c98 +PKG_MD5SUM:=ccfb50ad922cdaf54a809e2d9de23da4 PKG_LICENSE:=LGPL-2.1 GPL-2.0 MIT PKG_LICENSE_FILES:=LICENSE diff --git a/devel/lttng-modules/patches/001-mm_page_alloc_extfrag.patch b/devel/lttng-modules/patches/001-mm_page_alloc_extfrag.patch index 183f7d117..d8a0c62fa 100644 --- a/devel/lttng-modules/patches/001-mm_page_alloc_extfrag.patch +++ b/devel/lttng-modules/patches/001-mm_page_alloc_extfrag.patch @@ -1,98 +1,10 @@ --- a/instrumentation/events/lttng-module/kmem.h +++ b/instrumentation/events/lttng-module/kmem.h -@@ -286,7 +286,94 @@ LTTNG_TRACEPOINT_EVENT_INSTANCE_PRINT(mm - __entry->order, __entry->migratetype) +@@ -287,6 +287,7 @@ LTTNG_TRACEPOINT_EVENT_INSTANCE_PRINT(mm ) --#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,12,0)) -+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,19,2) \ -+ || LTTNG_KERNEL_RANGE(3,18,10, 3,19,0) \ -+ || LTTNG_KERNEL_RANGE(3,14,36, 3,15,0)) -+ -+LTTNG_TRACEPOINT_EVENT(mm_page_alloc_extfrag, -+ -+ TP_PROTO(struct page *page, -+ int alloc_order, int fallback_order, -+ int alloc_migratetype, int fallback_migratetype), -+ -+ TP_ARGS(page, -+ alloc_order, fallback_order, -+ alloc_migratetype, fallback_migratetype), -+ -+ TP_STRUCT__entry( -+ __field_hex( struct page *, page ) -+ __field( int, alloc_order ) -+ __field( int, fallback_order ) -+ __field( int, alloc_migratetype ) -+ __field( int, fallback_migratetype ) -+ __field( int, change_ownership ) -+ ), -+ -+ TP_fast_assign( -+ tp_assign(page, page) -+ tp_assign(alloc_order, alloc_order) -+ tp_assign(fallback_order, fallback_order) -+ tp_assign(alloc_migratetype, alloc_migratetype) -+ tp_assign(fallback_migratetype, fallback_migratetype) -+ tp_assign(change_ownership, -+ (alloc_migratetype == get_pageblock_migratetype(page))) -+ ), -+ -+ TP_printk("page=%p pfn=%lu alloc_order=%d fallback_order=%d pageblock_order=%d alloc_migratetype=%d fallback_migratetype=%d fragmenting=%d change_ownership=%d", -+ __entry->page, -+ page_to_pfn(__entry->page), -+ __entry->alloc_order, -+ __entry->fallback_order, -+ pageblock_order, -+ __entry->alloc_migratetype, -+ __entry->fallback_migratetype, -+ __entry->fallback_order < pageblock_order, -+ __entry->change_ownership) -+) -+ -+#elif (LINUX_VERSION_CODE >= KERNEL_VERSION(3,12,30)) -+ -+LTTNG_TRACEPOINT_EVENT(mm_page_alloc_extfrag, -+ -+ TP_PROTO(struct page *page, -+ int alloc_order, int fallback_order, -+ int alloc_migratetype, int fallback_migratetype, int new_migratetype), -+ -+ TP_ARGS(page, -+ alloc_order, fallback_order, -+ alloc_migratetype, fallback_migratetype, new_migratetype), -+ -+ TP_STRUCT__entry( -+ __field_hex( struct page *, page ) -+ __field( int, alloc_order ) -+ __field( int, fallback_order ) -+ __field( int, alloc_migratetype ) -+ __field( int, fallback_migratetype ) -+ __field( int, change_ownership ) -+ ), -+ -+ TP_fast_assign( -+ tp_assign(page, page) -+ tp_assign(alloc_order, alloc_order) -+ tp_assign(fallback_order, fallback_order) -+ tp_assign(alloc_migratetype, alloc_migratetype) -+ tp_assign(fallback_migratetype, fallback_migratetype) -+ tp_assign(change_ownership, (new_migratetype == alloc_migratetype)) -+ ), -+ -+ TP_printk("page=%p pfn=%lu alloc_order=%d fallback_order=%d pageblock_order=%d alloc_migratetype=%d fallback_migratetype=%d fragmenting=%d change_ownership=%d", -+ __entry->page, -+ page_to_pfn(__entry->page), -+ __entry->alloc_order, -+ __entry->fallback_order, -+ pageblock_order, -+ __entry->alloc_migratetype, -+ __entry->fallback_migratetype, -+ __entry->fallback_order < pageblock_order, -+ __entry->change_ownership) -+) -+ -+#elif (LINUX_VERSION_CODE >= KERNEL_VERSION(3,12,0)) - - LTTNG_TRACEPOINT_EVENT(mm_page_alloc_extfrag, + #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,19,2) \ ++ || LTTNG_KERNEL_RANGE(3,18,10, 3,19,0) \ + || LTTNG_KERNEL_RANGE(3,14,36, 3,15,0) \ + || LTTNG_DEBIAN_KERNEL_RANGE(3,16,7,9,0,0, 3,17,0,0,0,0)) From bb61d1da8d17caff15327d1703967b3e01dca870 Mon Sep 17 00:00:00 2001 From: Nicolas Thill Date: Wed, 13 May 2015 01:16:00 +0200 Subject: [PATCH 372/681] lttng-ust: update to 2.6.1 Signed-off-by: Nicolas Thill --- libs/lttng-ust/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libs/lttng-ust/Makefile b/libs/lttng-ust/Makefile index dc9c8920e..872c5be14 100644 --- a/libs/lttng-ust/Makefile +++ b/libs/lttng-ust/Makefile @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=lttng-ust -PKG_VERSION:=2.6.0 +PKG_VERSION:=2.6.1 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 PKG_SOURCE_URL:=https://lttng.org/files/$(PKG_NAME)/ -PKG_MD5SUM:=74ad4826eac76c9dbf50fd3e46523191 +PKG_MD5SUM:=5c7de27a9968e01ac0b08c7c9cf554d0 PKG_LICENSE:=LGPL-2.1 GPL-2.0 PKG_LICENSE_FILES:=COPYING From c1923c34cfab9976057317da7ae20c131d62f054 Mon Sep 17 00:00:00 2001 From: Nicolas Thill Date: Wed, 13 May 2015 01:19:06 +0200 Subject: [PATCH 373/681] lttng-modules: fix dependency on kernel tracing Signed-off-by: Nicolas Thill --- devel/lttng-modules/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/devel/lttng-modules/Makefile b/devel/lttng-modules/Makefile index 85b45f4d5..99510a003 100644 --- a/devel/lttng-modules/Makefile +++ b/devel/lttng-modules/Makefile @@ -26,7 +26,7 @@ define KernelPackage/lttng SUBMENU:=Other modules TITLE:=Linux Trace Toolkit: next generation (kernel modules) URL:=https://lttng.org/ - DEPENDS:= @!TARGET_uml @KERNEL_FTRACE + DEPENDS:= @!TARGET_uml @KERNEL_FTRACE_SYSCALLS FILES:= \ $(PKG_BUILD_DIR)/lttng-*.$(LINUX_KMOD_SUFFIX) \ $(PKG_BUILD_DIR)/lib/lttng-*.$(LINUX_KMOD_SUFFIX) \ From 494dc7d1e2ccb43bc7cd4c3a883efbeb6c40f8c0 Mon Sep 17 00:00:00 2001 From: Luka Perkov Date: Wed, 13 May 2015 01:57:20 +0200 Subject: [PATCH 374/681] libuv: update to 1.5.0 Signed-off-by: Luka Perkov --- libs/libuv/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libs/libuv/Makefile b/libs/libuv/Makefile index 6452f1af7..44a8c8690 100644 --- a/libs/libuv/Makefile +++ b/libs/libuv/Makefile @@ -8,7 +8,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=libuv -PKG_VERSION:=1.4.2 +PKG_VERSION:=1.5.0 PKG_RELEASE:=1 PKG_LICENSE_FILES:=LICENSE @@ -17,7 +17,7 @@ PKG_MAINTAINER:=Luka Perkov PKG_SOURCE:=$(PKG_NAME)-v$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://libuv.org/dist/v$(PKG_VERSION)/ -PKG_MD5SUM:=d116fbe695157b799fb8805477e24eff +PKG_MD5SUM:=a26da181256a824fe9283f5e65e77033 PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-v$(PKG_VERSION) PKG_BUILD_PARALLEL:=1 From a28f5268e7d4c311a66bf5e4199517db69fe90fa Mon Sep 17 00:00:00 2001 From: Lars Gierth Date: Wed, 13 May 2015 02:29:05 +0200 Subject: [PATCH 375/681] dkjson: switch to LuaDist git repo Signed-off-by: Lars Gierth --- lang/dkjson/Makefile | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/lang/dkjson/Makefile b/lang/dkjson/Makefile index d69907898..b9a7bc4a6 100644 --- a/lang/dkjson/Makefile +++ b/lang/dkjson/Makefile @@ -11,10 +11,13 @@ PKG_NAME:=dkjson PKG_VERSION:=2.5 PKG_RELEASE:=2 -PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=http://dkolf.de/src/dkjson-lua.fsl/tarball/ -PKG_MD5SUM:=af6b5f3df681e208f1dfb1a724a87e7c +PKG_SOURCE_URL:=https://github.com/LuaDist/dkjson.git +PKG_SOURCE_PROTO:=git +PKG_SOURCE_VERSION:=e72ba0c9f5d8b8746fc306f6189a819dbb5cd0be PKG_LICENSE:=MIT +PKG_SOURCE:=$(PKG_NAME)-$(PKG_SOURCE_VERSION).tar.bz2 +PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_SOURCE_VERSION) +PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_SOURCE_VERSION) include $(INCLUDE_DIR)/package.mk From 2f0667f1ee7cfb43b1bf1b9e9b7480f9479c7f4b Mon Sep 17 00:00:00 2001 From: Lars Gierth Date: Wed, 13 May 2015 02:30:20 +0200 Subject: [PATCH 376/681] dkjson: bump release Signed-off-by: Lars Gierth --- lang/dkjson/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lang/dkjson/Makefile b/lang/dkjson/Makefile index b9a7bc4a6..efb0012d0 100644 --- a/lang/dkjson/Makefile +++ b/lang/dkjson/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=dkjson PKG_VERSION:=2.5 -PKG_RELEASE:=2 +PKG_RELEASE:=3 PKG_SOURCE_URL:=https://github.com/LuaDist/dkjson.git PKG_SOURCE_PROTO:=git From b240c7ede63f6ff2dc1de8080049af589ec5c155 Mon Sep 17 00:00:00 2001 From: Luka Perkov Date: Wed, 13 May 2015 12:39:48 +0200 Subject: [PATCH 377/681] tmux: update to 2.0 Signed-off-by: Luka Perkov --- utils/tmux/Makefile | 8 +++-- .../tmux/patches/100-b64_ntop-conflict.patch | 35 +++++++++++++++++++ .../100-b64_ntop-conflict_compath_h.patch | 15 -------- ...-b64_ntop-conflict_compat_b64_ntop_c.patch | 13 ------- .../patches/102-b64_ntop-conflict_tty_c.patch | 13 ------- utils/tmux/patches/200-usr-local.patch | 14 -------- 6 files changed, 40 insertions(+), 58 deletions(-) create mode 100644 utils/tmux/patches/100-b64_ntop-conflict.patch delete mode 100644 utils/tmux/patches/100-b64_ntop-conflict_compath_h.patch delete mode 100644 utils/tmux/patches/101-b64_ntop-conflict_compat_b64_ntop_c.patch delete mode 100644 utils/tmux/patches/102-b64_ntop-conflict_tty_c.patch delete mode 100644 utils/tmux/patches/200-usr-local.patch diff --git a/utils/tmux/Makefile b/utils/tmux/Makefile index 1a7e6d147..db13ff5b9 100644 --- a/utils/tmux/Makefile +++ b/utils/tmux/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2009-2012 OpenWrt.org +# Copyright (C) 2009-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -8,16 +8,18 @@ include $(TOPDIR)/rules.mk PKG_NAME:=tmux -PKG_VERSION:=1.9a +PKG_VERSION:=2.0 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=@SF/tmux -PKG_MD5SUM:=b07601711f96f1d260b390513b509a2d +PKG_MD5SUM:=9fb6b443392c3978da5d599f1e814eaa PKG_MAINTAINER:=Maxim Storchak + PKG_LICENSE:=ISC PKG_LICENSE_FILES:=COPYING +PKG_BUILD_PARALLEL:=1 PKG_INSTALL:=1 include $(INCLUDE_DIR)/package.mk diff --git a/utils/tmux/patches/100-b64_ntop-conflict.patch b/utils/tmux/patches/100-b64_ntop-conflict.patch new file mode 100644 index 000000000..6350f5b71 --- /dev/null +++ b/utils/tmux/patches/100-b64_ntop-conflict.patch @@ -0,0 +1,35 @@ +--- a/compat.h ++++ b/compat.h +@@ -230,7 +230,9 @@ int daemon(int, int); + #ifndef HAVE_B64_NTOP + /* b64_ntop.c */ + #undef b64_ntop /* for Cygwin */ +-int b64_ntop(const char *, size_t, char *, size_t); ++int local_b64_ntop(const char *, size_t, char *, size_t); ++#else ++#define local_b64_ntop b64_ntop + #endif + + #ifndef HAVE_FORKPTY +--- a/tty.c ++++ b/tty.c +@@ -1070,7 +1070,7 @@ tty_cmd_setselection(struct tty *tty, co + off = 4 * ((ctx->num + 2) / 3) + 1; /* storage for base64 */ + buf = xmalloc(off); + +- b64_ntop(ctx->ptr, ctx->num, buf, off); ++ local_b64_ntop(ctx->ptr, ctx->num, buf, off); + tty_putcode_ptr2(tty, TTYC_MS, "", buf); + + free(buf); +--- a/compat/b64_ntop.c ++++ b/compat/b64_ntop.c +@@ -122,7 +122,7 @@ static const char Pad64 = '='; + */ + + int +-b64_ntop(uint8_t const *src, size_t srclength, char *target, size_t targsize) { ++local_b64_ntop(uint8_t const *src, size_t srclength, char *target, size_t targsize) { + size_t datalength = 0; + uint8_t input[3]; + uint8_t output[4]; diff --git a/utils/tmux/patches/100-b64_ntop-conflict_compath_h.patch b/utils/tmux/patches/100-b64_ntop-conflict_compath_h.patch deleted file mode 100644 index 3b216698c..000000000 --- a/utils/tmux/patches/100-b64_ntop-conflict_compath_h.patch +++ /dev/null @@ -1,15 +0,0 @@ -diff --git a/compat.h b/compat.h -index 65d6ec7..7fc3aa7 100644 ---- a/compat.h -+++ b/compat.h -@@ -219,7 +219,9 @@ int daemon(int, int); - #ifndef HAVE_B64_NTOP - /* b64_ntop.c */ - #undef b64_ntop /* for Cygwin */ --int b64_ntop(const char *, size_t, char *, size_t); -+int local_b64_ntop(const char *, size_t, char *, size_t); -+#else -+#define local_b64_ntop b64_ntop - #endif - - #ifndef HAVE_FORKPTY diff --git a/utils/tmux/patches/101-b64_ntop-conflict_compat_b64_ntop_c.patch b/utils/tmux/patches/101-b64_ntop-conflict_compat_b64_ntop_c.patch deleted file mode 100644 index a03d18fab..000000000 --- a/utils/tmux/patches/101-b64_ntop-conflict_compat_b64_ntop_c.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/compat/b64_ntop.c b/compat/b64_ntop.c -index 2b4dc2d..a1314ca 100644 ---- a/compat/b64_ntop.c -+++ b/compat/b64_ntop.c -@@ -122,7 +122,7 @@ static const char Pad64 = '='; - */ - - int --b64_ntop(uint8_t const *src, size_t srclength, char *target, size_t targsize) { -+local_b64_ntop(uint8_t const *src, size_t srclength, char *target, size_t targsize) { - size_t datalength = 0; - uint8_t input[3]; - uint8_t output[4]; diff --git a/utils/tmux/patches/102-b64_ntop-conflict_tty_c.patch b/utils/tmux/patches/102-b64_ntop-conflict_tty_c.patch deleted file mode 100644 index 72e0a0789..000000000 --- a/utils/tmux/patches/102-b64_ntop-conflict_tty_c.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/tty.c b/tty.c -index eb2511c..576edbc 100644 ---- a/tty.c -+++ b/tty.c -@@ -1067,7 +1067,7 @@ tty_cmd_setselection(struct tty *tty, const struct tty_ctx *ctx) - off = 4 * ((ctx->num + 2) / 3) + 1; /* storage for base64 */ - buf = xmalloc(off); - -- b64_ntop(ctx->ptr, ctx->num, buf, off); -+ local_b64_ntop(ctx->ptr, ctx->num, buf, off); - tty_putcode_ptr2(tty, TTYC_MS, "", buf); - - free(buf); diff --git a/utils/tmux/patches/200-usr-local.patch b/utils/tmux/patches/200-usr-local.patch deleted file mode 100644 index 07336deb8..000000000 --- a/utils/tmux/patches/200-usr-local.patch +++ /dev/null @@ -1,14 +0,0 @@ ---- a/Makefile.in -+++ b/Makefile.in -@@ -101,9 +101,9 @@ bin_PROGRAMS = tmux$(EXEEXT) - @IS_DEBUG_TRUE@@IS_GCC_TRUE@ -Wdeclaration-after-statement - @IS_DEBUG_TRUE@@IS_GCC_TRUE@am__append_4 = -DDEBUG - @IS_DEBUG_FALSE@@IS_GCC_TRUE@am__append_5 = -O2 --@IS_GCC4_TRUE@@IS_GCC_TRUE@am__append_6 = -iquote. -I/usr/local/include -+@IS_GCC4_TRUE@@IS_GCC_TRUE@am__append_6 = -iquote. - @IS_DEBUG_TRUE@@IS_GCC4_TRUE@@IS_GCC_TRUE@am__append_7 = -Wno-pointer-sign --@IS_GCC4_FALSE@@IS_GCC_TRUE@am__append_8 = -I. -I- -I/usr/local/include -+@IS_GCC4_FALSE@@IS_GCC_TRUE@am__append_8 = -I. -I- - - # Set flags for Solaris. - @IS_GCC_TRUE@@IS_SUNOS_TRUE@am__append_9 = -D_XPG6 -D__EXTENSIONS__ -D_POSIX_PTHREAD_SEMANTICS From 1211a4d708f7c4d40609b6800718f1807051f8f3 Mon Sep 17 00:00:00 2001 From: Luka Perkov Date: Wed, 13 May 2015 12:48:18 +0200 Subject: [PATCH 378/681] taskwarrior: update to 2.4.4 Signed-off-by: Luka Perkov --- utils/taskwarrior/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/utils/taskwarrior/Makefile b/utils/taskwarrior/Makefile index 0a2d62c0c..a417a45b0 100644 --- a/utils/taskwarrior/Makefile +++ b/utils/taskwarrior/Makefile @@ -8,14 +8,14 @@ include $(TOPDIR)/rules.mk PKG_NAME:=taskwarrior -PKG_VERSION:=2.4.1 +PKG_VERSION:=2.4.4 PKG_RELEASE:=1 PKG_LICENSE:=MIT PKG_SOURCE:=task-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://www.taskwarrior.org/download/ -PKG_MD5SUM:=f250f3fb3922e4153c6ad1b1270dceb8 +PKG_MD5SUM:=517450c4a23a5842df3e9905b38801b3 PKG_MAINTAINER:=Luka Perkov PKG_BUILD_DIR:=$(BUILD_DIR)/task-$(PKG_VERSION) From 5a509d937218037127de94c5e119682f1c1faf93 Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Wed, 13 May 2015 12:05:05 +0200 Subject: [PATCH 379/681] debootstrap: update source Signed-off-by: Daniel Golle --- admin/debootstrap/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/admin/debootstrap/Makefile b/admin/debootstrap/Makefile index a55ba353f..de8f1da85 100644 --- a/admin/debootstrap/Makefile +++ b/admin/debootstrap/Makefile @@ -9,13 +9,13 @@ include $(TOPDIR)/rules.mk PKG_NAME:=debootstrap -PKG_VERSION:=1.0.67 +PKG_VERSION:=1.0.68 PKG_RELEASE:=1 PKG_MAINTAINER=Daniel Golle PKG_SOURCE:=$(PKG_NAME)-udeb_$(PKG_VERSION)_all.udeb PKG_SOURCE_URL:=http://ftp.debian.org/debian/pool/main/d/debootstrap -PKG_MD5SUM:=e7854d4b10ab860f08921525406debdd +PKG_MD5SUM:=0f0ce1195a08f2809673d8e867fa61e6 PKG_LICENSE:=Unique PKG_LICENSE_FILES:=debian/copyright From ecf0ad21555211cfb36992db8cad04bb0ce25246 Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Wed, 13 May 2015 12:07:39 +0200 Subject: [PATCH 380/681] libp11: update source Signed-off-by: Daniel Golle --- libs/libp11/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libs/libp11/Makefile b/libs/libp11/Makefile index 4258604e5..c64f79cfe 100644 --- a/libs/libp11/Makefile +++ b/libs/libp11/Makefile @@ -8,7 +8,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=libp11 -PKG_VERSION:=20131021 +PKG_VERSION:=20141217 PKG_RELEASE:=1 PKG_MAINTAINER:=Daniel Golle PKG_LICENSE:=LGPL-2.1+ @@ -19,7 +19,7 @@ PKG_RELEASE=$(PKG_SOURCE_VERSION) PKG_SOURCE_PROTO:=git PKG_SOURCE_URL:=https://github.com/OpenSC/libp11.git PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) -PKG_SOURCE_VERSION:=ab6306ee7ede9b2fb9c1fa2c3694c6e7ff044a9e +PKG_SOURCE_VERSION:=9f433022a039bbdf31f6c334f442ac3494ac4a07 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_FIXUP:=libtool From cb331a41701865480ee45f07e5daa50fa67f9461 Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Wed, 13 May 2015 12:09:17 +0200 Subject: [PATCH 381/681] libowfat: update source Signed-off-by: Daniel Golle --- libs/libowfat/Makefile | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/libs/libowfat/Makefile b/libs/libowfat/Makefile index 173e5dca1..12f000bd4 100644 --- a/libs/libowfat/Makefile +++ b/libs/libowfat/Makefile @@ -7,15 +7,15 @@ include $(TOPDIR)/rules.mk -LOWFAT_VERSION=0.29 +LOWFAT_VERSION=0.30 PKG_NAME:=libowfat PKG_VERSION:=$(LOWFAT_VERSION) -PKG_RELEASE:=2 +PKG_RELEASE:=1 -PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=http://dl.fefe.de -PKG_MD5SUM:=1187c6acf11429e7adb9ebe180f644bb +PKG_MD5SUM:=f0119532ea834ce9e80afe49d7d85512 PKG_MAINTAINER:=Daniel Golle PKG_LICENSE:=GPL-2.0 PKG_LICENSE_FILES:=COPYING From a865d57de19f7c97832c6e850c9a715c3f1f7fc5 Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Wed, 13 May 2015 12:11:12 +0200 Subject: [PATCH 382/681] engine_pkcs11: update source Signed-off-by: Daniel Golle --- libs/engine_pkcs11/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libs/engine_pkcs11/Makefile b/libs/engine_pkcs11/Makefile index dbdafdab6..c7449ed47 100644 --- a/libs/engine_pkcs11/Makefile +++ b/libs/engine_pkcs11/Makefile @@ -8,7 +8,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=engine_pkcs11 -PKG_VERSION:=20131021 +PKG_VERSION:=20150429 PKG_RELEASE:=1 PKG_MAINTAINER:=Daniel Golle PKG_LICENSE:=LGPL-2.1+ @@ -18,7 +18,7 @@ PKG_RELEASE=$(PKG_SOURCE_VERSION) PKG_SOURCE_PROTO:=git PKG_SOURCE_URL:=https://github.com/OpenSC/engine_pkcs11.git PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) -PKG_SOURCE_VERSION:=5abdc7e0d6d519d2514e3eccc116b335bc427254 +PKG_SOURCE_VERSION:=0cc9d88eb291f5c545e5bc91d56866a2e0e95d48 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_FIXUP:=libtool From 324383e5b1bb068770e08906e0461e8a74354df2 Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Wed, 13 May 2015 12:13:53 +0200 Subject: [PATCH 383/681] opentracker: update source Signed-off-by: Daniel Golle --- net/opentracker/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/net/opentracker/Makefile b/net/opentracker/Makefile index 9fafaf2e3..4422cd399 100644 --- a/net/opentracker/Makefile +++ b/net/opentracker/Makefile @@ -8,9 +8,9 @@ include $(TOPDIR)/rules.mk PKG_NAME:=opentracker -PKG_VERSION:=20141007 +PKG_VERSION:=20150427 PKG_RELEASE:=1 -PKG_REV:=6c60309745ced3c121a2c5c7d80ed85a573b848e +PKG_REV:=27499d7a55bde404f3273a23026f2495e96adf87 PKG_MAINTAINER:=Daniel Golle PKG_LICENSE:=Beerware From a7526b1a08e5a7c278e5ddf043aa4503ddc4d56a Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Wed, 13 May 2015 12:19:04 +0200 Subject: [PATCH 384/681] ccid: update source Signed-off-by: Daniel Golle --- utils/ccid/Makefile | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/utils/ccid/Makefile b/utils/ccid/Makefile index ce059cbb4..f79f3ad77 100644 --- a/utils/ccid/Makefile +++ b/utils/ccid/Makefile @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=ccid -PKG_VERSION:=1.4.18 +PKG_VERSION:=1.4.19 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 -PKG_SOURCE_URL:=https://alioth.debian.org/frs/download.php/file/4111 -PKG_MD5SUM:=8d57342bda53aaee706ef2d02409c4f4 +PKG_SOURCE_URL:=https://alioth.debian.org/frs/download.php/file/4132 +PKG_MD5SUM:=d1eed995ba9a2eb395a65a8a78090f52 PKG_MAINTAINER:=Daniel Golle PKG_LICENSE:=LGPL-2.1+ PKG_LICENSE_FILES:=COPYING From 764c55e0139d38627bfd10c95a80c70537b5391c Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Wed, 13 May 2015 12:58:16 +0200 Subject: [PATCH 385/681] opensc: update source, refresh patches Also import two new GnuK-related patches. Signed-off-by: Daniel Golle --- utils/opensc/Makefile | 4 +- ...penPGP-Detect-and-support-Gnuk-Token.patch | 63 +++++++------- ...P-Add-Gnuk-in-pkcs15-emulation-layer.patch | 25 +++--- ...private-DO-to-filesystem-at-driver-i.patch | 13 ++- ...-PKCS15-OpenPGP-Declare-DATA-objects.patch | 19 ++--- ...5-OpenPGP-Support-erasing-reset-card.patch | 31 ++++--- ...gp-tool-Support-deleting-key-in-Gnuk.patch | 17 ++-- ...building-Extended-Header-List-when-i.patch | 13 ++- ...penPGP-Read-some-empty-DOs-from-Gnuk.patch | 15 ++-- ...o-not-show-empty-DO-in-pkcs15-emu_in.patch | 13 ++- ...llow-to-store-data-to-pkcs15-data-ob.patch | 25 +++--- ...enough-buffer-to-read-pubkey-from-Gn.patch | 19 ++--- ...P-Support-write-certificate-for-Gnuk.patch | 19 ++--- ...hange-to-sc_put_data-instead-of-sc_u.patch | 13 ++- ...-the-restriction-of-even-data-length.patch | 15 ++-- ...-OpenPGP-Delete-key-as-file-for-Gnuk.patch | 17 ++-- ...6-OpenPGP-Correct-parameter-checking.patch | 17 ++-- .../0017-OpenPGP-Make-code-neater.patch | 15 ++-- ...018-Move-declaration-to-top-of-block.patch | 15 ++-- ...ake-indentation-consistent-space-tab.patch | 31 ++++--- ...PGP-Don-t-use-sc_log-in-openpgp-tool.patch | 19 ++--- ...implement-gnuk_delete_key-in-openpgp.patch | 17 ++-- ...ctly-binary-array-of-APDUs-for-ERASE.patch | 15 ++-- ...rivate-blob-type-to-avoid-confusing-.patch | 73 ++++++++--------- ...rash-after-accessing-inexistent-file.patch | 17 ++-- .../patches/0025-Replace-hardcode.patch | 23 +++--- .../0026-hardcode-defines-for-DO-s.patch | 17 ++-- ...e-unused-variables-and-fix-type-cast.patch | 82 +++++++++++++++++++ ...0028-openpgp-tool-Fix-wrong-operator.patch | 28 +++++++ 29 files changed, 361 insertions(+), 329 deletions(-) create mode 100644 utils/opensc/patches/0027-OpenPGP-Remove-unused-variables-and-fix-type-cast.patch create mode 100644 utils/opensc/patches/0028-openpgp-tool-Fix-wrong-operator.patch diff --git a/utils/opensc/Makefile b/utils/opensc/Makefile index a7b830149..adb249f82 100644 --- a/utils/opensc/Makefile +++ b/utils/opensc/Makefile @@ -8,7 +8,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=opensc -PKG_VERSION:=20141126 +PKG_VERSION:=20150513 PKG_RELEASE:=1 PKG_LICENSE:=LGPL-2.1+ PKG_LICENSE_FILES:=COPYING @@ -19,7 +19,7 @@ PKG_RELEASE=$(PKG_SOURCE_VERSION) PKG_SOURCE_PROTO:=git PKG_SOURCE_URL:=https://github.com/OpenSC/OpenSC.git PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) -PKG_SOURCE_VERSION:=8aadbbd678730dbafb819382da553439887499fd +PKG_SOURCE_VERSION:=a09ca246a797230c14bc33a34f2dddc4a4dbff40 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_BUILD_DEPENDS:=+libpcsclite PKG_FIXUP:=libtool diff --git a/utils/opensc/patches/0001-OpenPGP-Detect-and-support-Gnuk-Token.patch b/utils/opensc/patches/0001-OpenPGP-Detect-and-support-Gnuk-Token.patch index 08b2a8324..3bd03a6f2 100644 --- a/utils/opensc/patches/0001-OpenPGP-Detect-and-support-Gnuk-Token.patch +++ b/utils/opensc/patches/0001-OpenPGP-Detect-and-support-Gnuk-Token.patch @@ -11,11 +11,11 @@ http://www.fsij.org/gnuk/ src/tools/openpgp-tool.c | 7 ++++- 3 files changed, 55 insertions(+), 14 deletions(-) -diff --git a/src/libopensc/card-openpgp.c b/src/libopensc/card-openpgp.c -index 6774fe1..c785a55 100644 ---- a/src/libopensc/card-openpgp.c -+++ b/src/libopensc/card-openpgp.c -@@ -43,6 +43,7 @@ +Index: opensc-20150513/src/libopensc/card-openpgp.c +=================================================================== +--- opensc-20150513.orig/src/libopensc/card-openpgp.c ++++ opensc-20150513/src/libopensc/card-openpgp.c +@@ -45,6 +45,7 @@ static struct sc_atr_table pgp_atrs[] = { { "3b:fa:13:00:ff:81:31:80:45:00:31:c1:73:c0:01:00:00:90:00:b1", NULL, "OpenPGP card v1.0/1.1", SC_CARD_TYPE_OPENPGP_V1, 0, NULL }, { "3b:da:18:ff:81:b1:fe:75:1f:03:00:31:c5:73:c0:01:40:00:90:00:0c", NULL, "CryptoStick v1.2 (OpenPGP v2.0)", SC_CARD_TYPE_OPENPGP_V2, 0, NULL }, @@ -23,16 +23,16 @@ index 6774fe1..c785a55 100644 { NULL, NULL, NULL, 0, 0, NULL } }; -@@ -307,6 +308,8 @@ pgp_init(sc_card_t *card) +@@ -309,6 +310,8 @@ pgp_init(sc_card_t *card) int r; - struct blob *child = NULL; + struct blob *child = NULL; + LOG_FUNC_CALLED(card->ctx); + priv = calloc (1, sizeof *priv); if (!priv) return SC_ERROR_OUT_OF_MEMORY; -@@ -315,11 +318,11 @@ pgp_init(sc_card_t *card) +@@ -317,11 +320,11 @@ pgp_init(sc_card_t *card) card->cla = 0x00; /* set pointer to correct list of card objects */ @@ -46,7 +46,7 @@ index 6774fe1..c785a55 100644 ? OPENPGP_CARD_2_0 : OPENPGP_CARD_1_1; /* select application "OpenPGP" */ -@@ -428,7 +431,8 @@ pgp_get_card_features(sc_card_t *card) +@@ -436,7 +439,8 @@ pgp_get_card_features(sc_card_t *card) if ((pgp_get_blob(card, blob73, 0x00c0, &blob) >= 0) && (blob->data != NULL) && (blob->len > 0)) { /* in v2.0 bit 0x04 in first byte means "algorithm attributes changeable */ @@ -56,7 +56,7 @@ index 6774fe1..c785a55 100644 priv->ext_caps |= EXT_CAP_ALG_ATTR_CHANGEABLE; /* bit 0x08 in first byte means "support for private use DOs" */ if (blob->data[0] & 0x08) -@@ -445,7 +449,8 @@ pgp_get_card_features(sc_card_t *card) +@@ -453,7 +457,8 @@ pgp_get_card_features(sc_card_t *card) priv->ext_caps |= EXT_CAP_GET_CHALLENGE; } /* in v2.0 bit 0x80 in first byte means "support Secure Messaging" */ @@ -66,7 +66,7 @@ index 6774fe1..c785a55 100644 priv->ext_caps |= EXT_CAP_SM; if ((priv->bcd_version >= OPENPGP_CARD_2_0) && (blob->len >= 10)) { -@@ -1057,12 +1062,18 @@ static int +@@ -1065,12 +1070,18 @@ static int pgp_get_pubkey(sc_card_t *card, unsigned int tag, u8 *buf, size_t buf_len) { sc_apdu_t apdu; @@ -86,7 +86,7 @@ index 6774fe1..c785a55 100644 apdu.lc = 2; apdu.data = ushort2bebytes(idbuf, tag); apdu.datalen = 2; -@@ -1154,6 +1165,7 @@ pgp_put_data(sc_card_t *card, unsigned int tag, const u8 *buf, size_t buf_len) +@@ -1162,6 +1173,7 @@ pgp_put_data(sc_card_t *card, unsigned i u8 ins = 0xDA; u8 p1 = tag >> 8; u8 p2 = tag & 0xFF; @@ -94,7 +94,7 @@ index 6774fe1..c785a55 100644 int r; LOG_FUNC_CALLED(card->ctx); -@@ -1195,13 +1207,17 @@ pgp_put_data(sc_card_t *card, unsigned int tag, const u8 *buf, size_t buf_len) +@@ -1203,13 +1215,17 @@ pgp_put_data(sc_card_t *card, unsigned i /* Build APDU */ if (buf != NULL && buf_len > 0) { @@ -114,7 +114,7 @@ index 6774fe1..c785a55 100644 apdu.datalen = buf_len; apdu.lc = buf_len; } -@@ -1328,6 +1344,7 @@ pgp_compute_signature(sc_card_t *card, const u8 *data, +@@ -1336,6 +1352,7 @@ pgp_compute_signature(sc_card_t *card, c struct pgp_priv_data *priv = DRVDATA(card); sc_security_env_t *env = &priv->sec_env; sc_apdu_t apdu; @@ -122,7 +122,7 @@ index 6774fe1..c785a55 100644 int r; LOG_FUNC_CALLED(card->ctx); -@@ -1336,14 +1353,19 @@ pgp_compute_signature(sc_card_t *card, const u8 *data, +@@ -1344,14 +1361,19 @@ pgp_compute_signature(sc_card_t *card, c LOG_TEST_RET(card->ctx, SC_ERROR_INVALID_ARGUMENTS, "invalid operation"); @@ -144,7 +144,7 @@ index 6774fe1..c785a55 100644 break; case 0x01: default: -@@ -1352,7 +1374,7 @@ pgp_compute_signature(sc_card_t *card, const u8 *data, +@@ -1360,7 +1382,7 @@ pgp_compute_signature(sc_card_t *card, c } apdu.lc = data_len; @@ -153,7 +153,7 @@ index 6774fe1..c785a55 100644 apdu.datalen = data_len; apdu.le = ((outlen >= 256) && !(card->caps & SC_CARD_CAP_APDU_EXT)) ? 256 : outlen; apdu.resp = out; -@@ -1376,6 +1398,7 @@ pgp_decipher(sc_card_t *card, const u8 *in, size_t inlen, +@@ -1384,6 +1406,7 @@ pgp_decipher(sc_card_t *card, const u8 * struct pgp_priv_data *priv = DRVDATA(card); sc_security_env_t *env = &priv->sec_env; sc_apdu_t apdu; @@ -161,7 +161,7 @@ index 6774fe1..c785a55 100644 u8 *temp = NULL; int r; -@@ -1400,7 +1423,7 @@ pgp_decipher(sc_card_t *card, const u8 *in, size_t inlen, +@@ -1408,7 +1431,7 @@ pgp_decipher(sc_card_t *card, const u8 * case 0x01: /* Decryption key */ case 0x02: /* authentication key */ /* PSO DECIPHER */ @@ -170,7 +170,7 @@ index 6774fe1..c785a55 100644 break; case 0x00: /* signature key */ default: -@@ -1409,8 +1432,13 @@ pgp_decipher(sc_card_t *card, const u8 *in, size_t inlen, +@@ -1417,8 +1440,13 @@ pgp_decipher(sc_card_t *card, const u8 * "invalid key reference"); } @@ -185,7 +185,7 @@ index 6774fe1..c785a55 100644 apdu.datalen = inlen; apdu.le = ((outlen >= 256) && !(card->caps & SC_CARD_CAP_APDU_EXT)) ? 256 : outlen; apdu.resp = out; -@@ -1794,6 +1822,11 @@ static int pgp_gen_key(sc_card_t *card, sc_cardctl_openpgp_keygen_info_t *key_in +@@ -1802,6 +1830,11 @@ static int pgp_gen_key(sc_card_t *card, LOG_FUNC_RETURN(card->ctx, SC_ERROR_INVALID_ARGUMENTS); } @@ -197,7 +197,7 @@ index 6774fe1..c785a55 100644 /* Set attributes for new-generated key */ r = pgp_update_new_algo_attr(card, key_info); LOG_TEST_RET(card->ctx, r, "Cannot set attributes for new-generated key"); -@@ -1801,7 +1834,9 @@ static int pgp_gen_key(sc_card_t *card, sc_cardctl_openpgp_keygen_info_t *key_in +@@ -1809,7 +1842,9 @@ static int pgp_gen_key(sc_card_t *card, /* Test whether we will need extended APDU. 1900 is an * arbitrary modulus length which for sure fits into a short APDU. * This idea is borrowed from GnuPG code. */ @@ -208,10 +208,10 @@ index 6774fe1..c785a55 100644 /* We won't store to apdu variable yet, because it will be reset in * sc_format_apdu() */ apdu_le = card->max_recv_size; -diff --git a/src/libopensc/cards.h b/src/libopensc/cards.h -index 7be6667..a3f3634 100644 ---- a/src/libopensc/cards.h -+++ b/src/libopensc/cards.h +Index: opensc-20150513/src/libopensc/cards.h +=================================================================== +--- opensc-20150513.orig/src/libopensc/cards.h ++++ opensc-20150513/src/libopensc/cards.h @@ -105,6 +105,7 @@ enum { SC_CARD_TYPE_OPENPGP_BASE = 9000, SC_CARD_TYPE_OPENPGP_V1, @@ -220,10 +220,10 @@ index 7be6667..a3f3634 100644 /* jcop driver */ SC_CARD_TYPE_JCOP_BASE = 10000, -diff --git a/src/tools/openpgp-tool.c b/src/tools/openpgp-tool.c -index f42e6d6..a24a395 100644 ---- a/src/tools/openpgp-tool.c -+++ b/src/tools/openpgp-tool.c +Index: opensc-20150513/src/tools/openpgp-tool.c +=================================================================== +--- opensc-20150513.orig/src/tools/openpgp-tool.c ++++ opensc-20150513/src/tools/openpgp-tool.c @@ -33,6 +33,7 @@ #include "libopensc/cards.h" #include "libopensc/cardctl.h" @@ -232,7 +232,7 @@ index f42e6d6..a24a395 100644 #include "util.h" #include "libopensc/log.h" -@@ -396,6 +397,8 @@ int do_genkey(sc_card_t *card, u8 key_id, unsigned int key_len) +@@ -396,6 +397,8 @@ int do_genkey(sc_card_t *card, u8 key_id sc_path_t path; sc_file_t *file; @@ -253,6 +253,3 @@ index f42e6d6..a24a395 100644 exit_status = EXIT_FAILURE; goto out; } --- -2.1.3 - diff --git a/utils/opensc/patches/0002-OpenPGP-Add-Gnuk-in-pkcs15-emulation-layer.patch b/utils/opensc/patches/0002-OpenPGP-Add-Gnuk-in-pkcs15-emulation-layer.patch index c08a6e0a3..2514c16df 100644 --- a/utils/opensc/patches/0002-OpenPGP-Add-Gnuk-in-pkcs15-emulation-layer.patch +++ b/utils/opensc/patches/0002-OpenPGP-Add-Gnuk-in-pkcs15-emulation-layer.patch @@ -9,11 +9,11 @@ Subject: [PATCH 02/26] OpenPGP: Add Gnuk in pkcs15 emulation layer. src/libopensc/pkcs15-syn.c | 1 + 2 files changed, 5 insertions(+), 2 deletions(-) -diff --git a/src/libopensc/pkcs15-openpgp.c b/src/libopensc/pkcs15-openpgp.c -index 4daaa98..fdf720a 100644 ---- a/src/libopensc/pkcs15-openpgp.c -+++ b/src/libopensc/pkcs15-openpgp.c -@@ -151,7 +151,8 @@ sc_pkcs15emu_openpgp_init(sc_pkcs15_card_t *p15card) +Index: opensc-20150513/src/libopensc/pkcs15-openpgp.c +=================================================================== +--- opensc-20150513.orig/src/libopensc/pkcs15-openpgp.c ++++ opensc-20150513/src/libopensc/pkcs15-openpgp.c +@@ -153,7 +153,8 @@ sc_pkcs15emu_openpgp_init(sc_pkcs15_card u8 c4data[10]; u8 c5data[70]; int r, i; @@ -23,7 +23,7 @@ index 4daaa98..fdf720a 100644 sc_path_t path; sc_file_t *file; -@@ -363,7 +364,8 @@ failed: sc_debug(card->ctx, SC_LOG_DEBUG_NORMAL, "Failed to initialize OpenPGP e +@@ -365,7 +366,8 @@ failed: sc_debug(card->ctx, SC_LOG_DEBUG static int openpgp_detect_card(sc_pkcs15_card_t *p15card) { @@ -33,11 +33,11 @@ index 4daaa98..fdf720a 100644 return SC_SUCCESS; else return SC_ERROR_WRONG_CARD; -diff --git a/src/libopensc/pkcs15-syn.c b/src/libopensc/pkcs15-syn.c -index ffbf642..d2c086c 100644 ---- a/src/libopensc/pkcs15-syn.c -+++ b/src/libopensc/pkcs15-syn.c -@@ -115,6 +115,7 @@ int sc_pkcs15_is_emulation_only(sc_card_t *card) +Index: opensc-20150513/src/libopensc/pkcs15-syn.c +=================================================================== +--- opensc-20150513.orig/src/libopensc/pkcs15-syn.c ++++ opensc-20150513/src/libopensc/pkcs15-syn.c +@@ -117,6 +117,7 @@ int sc_pkcs15_is_emulation_only(sc_card_ case SC_CARD_TYPE_GEMSAFEV1_PTEID: case SC_CARD_TYPE_OPENPGP_V1: case SC_CARD_TYPE_OPENPGP_V2: @@ -45,6 +45,3 @@ index ffbf642..d2c086c 100644 case SC_CARD_TYPE_SC_HSM: case SC_CARD_TYPE_DNIE_BASE: case SC_CARD_TYPE_DNIE_BLANK: --- -2.1.3 - diff --git a/utils/opensc/patches/0003-OpenPGP-Include-private-DO-to-filesystem-at-driver-i.patch b/utils/opensc/patches/0003-OpenPGP-Include-private-DO-to-filesystem-at-driver-i.patch index 9e96cfef6..49fce825b 100644 --- a/utils/opensc/patches/0003-OpenPGP-Include-private-DO-to-filesystem-at-driver-i.patch +++ b/utils/opensc/patches/0003-OpenPGP-Include-private-DO-to-filesystem-at-driver-i.patch @@ -12,11 +12,11 @@ leading to that we cannot read their data later, even if we verified PIN. src/libopensc/card-openpgp.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -diff --git a/src/libopensc/card-openpgp.c b/src/libopensc/card-openpgp.c -index c785a55..1cc3923 100644 ---- a/src/libopensc/card-openpgp.c -+++ b/src/libopensc/card-openpgp.c -@@ -357,7 +357,7 @@ pgp_init(sc_card_t *card) +Index: opensc-20150513/src/libopensc/card-openpgp.c +=================================================================== +--- opensc-20150513.orig/src/libopensc/card-openpgp.c ++++ opensc-20150513/src/libopensc/card-openpgp.c +@@ -365,7 +365,7 @@ pgp_init(sc_card_t *card) /* Populate MF - add matching blobs listed in the pgp_objects table. */ for (info = priv->pgp_objects; (info != NULL) && (info->id > 0); info++) { @@ -25,6 +25,3 @@ index c785a55..1cc3923 100644 (info->get_fn != NULL)) { child = pgp_new_blob(card, priv->mf, info->id, sc_file_new()); --- -2.1.3 - diff --git a/utils/opensc/patches/0004-PKCS15-OpenPGP-Declare-DATA-objects.patch b/utils/opensc/patches/0004-PKCS15-OpenPGP-Declare-DATA-objects.patch index b6408de7f..619ea8cc4 100644 --- a/utils/opensc/patches/0004-PKCS15-OpenPGP-Declare-DATA-objects.patch +++ b/utils/opensc/patches/0004-PKCS15-OpenPGP-Declare-DATA-objects.patch @@ -10,11 +10,11 @@ This object is used by TrueCrypt. src/libopensc/pkcs15-openpgp.c | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) -diff --git a/src/libopensc/pkcs15-openpgp.c b/src/libopensc/pkcs15-openpgp.c -index fdf720a..fea2805 100644 ---- a/src/libopensc/pkcs15-openpgp.c -+++ b/src/libopensc/pkcs15-openpgp.c -@@ -32,6 +32,7 @@ +Index: opensc-20150513/src/libopensc/pkcs15-openpgp.c +=================================================================== +--- opensc-20150513.orig/src/libopensc/pkcs15-openpgp.c ++++ opensc-20150513/src/libopensc/pkcs15-openpgp.c +@@ -34,6 +34,7 @@ #include "log.h" int sc_pkcs15emu_openpgp_init_ex(sc_pkcs15_card_t *, sc_pkcs15emu_opt_t *); @@ -22,7 +22,7 @@ index fdf720a..fea2805 100644 #define PGP_USER_PIN_FLAGS (SC_PKCS15_PIN_FLAG_CASE_SENSITIVE \ -@@ -41,6 +42,8 @@ int sc_pkcs15emu_openpgp_init_ex(sc_pkcs15_card_t *, sc_pkcs15emu_opt_t *); +@@ -43,6 +44,8 @@ int sc_pkcs15emu_openpgp_init_ex(sc_pkcs | SC_PKCS15_PIN_FLAG_UNBLOCK_DISABLED \ | SC_PKCS15_PIN_FLAG_SO_PIN) @@ -31,7 +31,7 @@ index fdf720a..fea2805 100644 typedef struct _pgp_pin_cfg { const char *label; int reference; -@@ -355,6 +358,9 @@ sc_pkcs15emu_openpgp_init(sc_pkcs15_card_t *p15card) +@@ -357,6 +360,9 @@ sc_pkcs15emu_openpgp_init(sc_pkcs15_card goto failed; } @@ -41,7 +41,7 @@ index fdf720a..fea2805 100644 return 0; failed: sc_debug(card->ctx, SC_LOG_DEBUG_NORMAL, "Failed to initialize OpenPGP emulation: %s\n", -@@ -362,6 +368,35 @@ failed: sc_debug(card->ctx, SC_LOG_DEBUG_NORMAL, "Failed to initialize OpenPGP e +@@ -364,6 +370,35 @@ failed: sc_debug(card->ctx, SC_LOG_DEBUG return r; } @@ -77,6 +77,3 @@ index fdf720a..fea2805 100644 static int openpgp_detect_card(sc_pkcs15_card_t *p15card) { if (p15card->card->type == SC_CARD_TYPE_OPENPGP_V1 || p15card->card->type == SC_CARD_TYPE_OPENPGP_V2 --- -2.1.3 - diff --git a/utils/opensc/patches/0005-OpenPGP-Support-erasing-reset-card.patch b/utils/opensc/patches/0005-OpenPGP-Support-erasing-reset-card.patch index 0dc495462..aa3c9d38b 100644 --- a/utils/opensc/patches/0005-OpenPGP-Support-erasing-reset-card.patch +++ b/utils/opensc/patches/0005-OpenPGP-Support-erasing-reset-card.patch @@ -10,11 +10,11 @@ Command: openpgp-tool --erase src/tools/openpgp-tool.c | 22 ++++++++++++++- 2 files changed, 85 insertions(+), 1 deletion(-) -diff --git a/src/libopensc/card-openpgp.c b/src/libopensc/card-openpgp.c -index 1cc3923..7349876 100644 ---- a/src/libopensc/card-openpgp.c -+++ b/src/libopensc/card-openpgp.c -@@ -2195,6 +2195,66 @@ out: +Index: opensc-20150513/src/libopensc/card-openpgp.c +=================================================================== +--- opensc-20150513.orig/src/libopensc/card-openpgp.c ++++ opensc-20150513/src/libopensc/card-openpgp.c +@@ -2206,6 +2206,66 @@ out: #endif /* ENABLE_OPENSSL */ @@ -81,7 +81,7 @@ index 1cc3923..7349876 100644 /* ABI: card ctl: perform special card-specific operations */ static int pgp_card_ctl(sc_card_t *card, unsigned long cmd, void *ptr) { -@@ -2219,6 +2279,10 @@ static int pgp_card_ctl(sc_card_t *card, unsigned long cmd, void *ptr) +@@ -2232,6 +2292,10 @@ static int pgp_card_ctl(sc_card_t *card, LOG_FUNC_RETURN(card->ctx, r); break; #endif /* ENABLE_OPENSSL */ @@ -92,12 +92,12 @@ index 1cc3923..7349876 100644 } LOG_FUNC_RETURN(card->ctx, SC_ERROR_NOT_SUPPORTED); -diff --git a/src/tools/openpgp-tool.c b/src/tools/openpgp-tool.c -index a24a395..de1c9d4 100644 ---- a/src/tools/openpgp-tool.c -+++ b/src/tools/openpgp-tool.c +Index: opensc-20150513/src/tools/openpgp-tool.c +=================================================================== +--- opensc-20150513.orig/src/tools/openpgp-tool.c ++++ opensc-20150513/src/tools/openpgp-tool.c @@ -78,6 +78,7 @@ static int opt_pin = 0; - static char *pin = NULL; + static const char *pin = NULL; static int opt_dump_do = 0; static u8 do_dump_idx; +static int opt_erase = 0; @@ -120,7 +120,7 @@ index a24a395..de1c9d4 100644 "Verify PIN (CHV1, CHV2, CHV3...)", "PIN string", /* d */ "Dump private data object number (i.e. PRIVATE-DO-)" -@@ -232,7 +235,7 @@ static int decode_options(int argc, char **argv) +@@ -232,7 +235,7 @@ static int decode_options(int argc, char { int c; @@ -129,7 +129,7 @@ index a24a395..de1c9d4 100644 switch (c) { case 'r': opt_reader = optarg; -@@ -296,6 +299,8 @@ static int decode_options(int argc, char **argv) +@@ -294,6 +297,8 @@ static int decode_options(int argc, char do_dump_idx = optarg[0] - '0'; opt_dump_do++; actions++; @@ -138,7 +138,7 @@ index a24a395..de1c9d4 100644 break; default: util_print_usage_and_die(app_name, options, option_help, NULL); -@@ -452,6 +457,18 @@ int do_verify(sc_card_t *card, char *type, char *pin) +@@ -452,6 +457,18 @@ int do_verify(sc_card_t *card, char *typ return r; } @@ -167,6 +167,3 @@ index a24a395..de1c9d4 100644 out: sc_unlock(card); sc_disconnect_card(card); --- -2.1.3 - diff --git a/utils/opensc/patches/0006-openpgp-tool-Support-deleting-key-in-Gnuk.patch b/utils/opensc/patches/0006-openpgp-tool-Support-deleting-key-in-Gnuk.patch index 915f6842c..4286e4604 100644 --- a/utils/opensc/patches/0006-openpgp-tool-Support-deleting-key-in-Gnuk.patch +++ b/utils/opensc/patches/0006-openpgp-tool-Support-deleting-key-in-Gnuk.patch @@ -8,10 +8,10 @@ Subject: [PATCH 06/26] openpgp-tool: Support deleting key in Gnuk. src/tools/openpgp-tool.c | 142 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 142 insertions(+) -diff --git a/src/tools/openpgp-tool.c b/src/tools/openpgp-tool.c -index de1c9d4..374819a 100644 ---- a/src/tools/openpgp-tool.c -+++ b/src/tools/openpgp-tool.c +Index: opensc-20150513/src/tools/openpgp-tool.c +=================================================================== +--- opensc-20150513.orig/src/tools/openpgp-tool.c ++++ opensc-20150513/src/tools/openpgp-tool.c @@ -41,6 +41,7 @@ #define OPT_PRETTY 257 #define OPT_VERIFY 258 @@ -20,7 +20,7 @@ index de1c9d4..374819a 100644 /* define structures */ struct ef_name_map { -@@ -79,6 +80,7 @@ static char *pin = NULL; +@@ -79,6 +80,7 @@ static const char *pin = NULL; static int opt_dump_do = 0; static u8 do_dump_idx; static int opt_erase = 0; @@ -44,7 +44,7 @@ index de1c9d4..374819a 100644 /* d */ "Dump private data object number (i.e. PRIVATE-DO-)" }; -@@ -302,6 +306,14 @@ static int decode_options(int argc, char **argv) +@@ -300,6 +304,14 @@ static int decode_options(int argc, char case 'E': opt_erase++; break; @@ -59,7 +59,7 @@ index de1c9d4..374819a 100644 default: util_print_usage_and_die(app_name, options, option_help, NULL); } -@@ -457,6 +469,133 @@ int do_verify(sc_card_t *card, char *type, char *pin) +@@ -457,6 +469,133 @@ int do_verify(sc_card_t *card, char *typ return r; } @@ -203,6 +203,3 @@ index de1c9d4..374819a 100644 if (opt_erase) exit_status != do_erase(card); --- -2.1.3 - diff --git a/utils/opensc/patches/0007-OpenPGP-Correct-building-Extended-Header-List-when-i.patch b/utils/opensc/patches/0007-OpenPGP-Correct-building-Extended-Header-List-when-i.patch index 7d8045679..f5b2cc045 100644 --- a/utils/opensc/patches/0007-OpenPGP-Correct-building-Extended-Header-List-when-i.patch +++ b/utils/opensc/patches/0007-OpenPGP-Correct-building-Extended-Header-List-when-i.patch @@ -9,11 +9,11 @@ Subject: [PATCH 07/26] OpenPGP: Correct building Extended Header List when src/libopensc/card-openpgp.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -diff --git a/src/libopensc/card-openpgp.c b/src/libopensc/card-openpgp.c -index 7349876..91c311b 100644 ---- a/src/libopensc/card-openpgp.c -+++ b/src/libopensc/card-openpgp.c -@@ -1977,7 +1977,7 @@ pgp_build_extended_header_list(sc_card_t *card, sc_cardctl_openpgp_keystore_info +Index: opensc-20150513/src/libopensc/card-openpgp.c +=================================================================== +--- opensc-20150513.orig/src/libopensc/card-openpgp.c ++++ opensc-20150513/src/libopensc/card-openpgp.c +@@ -1988,7 +1988,7 @@ pgp_build_extended_header_list(sc_card_t u8 *p = NULL; u8 *components[] = {key_info->e, key_info->p, key_info->q, key_info->n}; size_t componentlens[] = {key_info->e_len, key_info->p_len, key_info->q_len, key_info->n_len}; @@ -22,6 +22,3 @@ index 7349876..91c311b 100644 char *componentnames[] = { "public exponent", "prime p", --- -2.1.3 - diff --git a/utils/opensc/patches/0008-OpenPGP-Read-some-empty-DOs-from-Gnuk.patch b/utils/opensc/patches/0008-OpenPGP-Read-some-empty-DOs-from-Gnuk.patch index 17aaf92ca..9d942d0f5 100644 --- a/utils/opensc/patches/0008-OpenPGP-Read-some-empty-DOs-from-Gnuk.patch +++ b/utils/opensc/patches/0008-OpenPGP-Read-some-empty-DOs-from-Gnuk.patch @@ -10,11 +10,11 @@ So, we will consider them exist in driver. src/libopensc/card-openpgp.c | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) -diff --git a/src/libopensc/card-openpgp.c b/src/libopensc/card-openpgp.c -index 91c311b..e7b25c0 100644 ---- a/src/libopensc/card-openpgp.c -+++ b/src/libopensc/card-openpgp.c -@@ -815,6 +815,23 @@ pgp_get_blob(sc_card_t *card, struct blob *blob, unsigned int id, +Index: opensc-20150513/src/libopensc/card-openpgp.c +=================================================================== +--- opensc-20150513.orig/src/libopensc/card-openpgp.c ++++ opensc-20150513/src/libopensc/card-openpgp.c +@@ -823,6 +823,23 @@ pgp_get_blob(sc_card_t *card, struct blo } } @@ -38,7 +38,7 @@ index 91c311b..e7b25c0 100644 return SC_ERROR_FILE_NOT_FOUND; } -@@ -1149,6 +1166,14 @@ pgp_get_data(sc_card_t *card, unsigned int tag, u8 *buf, size_t buf_len) +@@ -1157,6 +1174,14 @@ pgp_get_data(sc_card_t *card, unsigned i LOG_TEST_RET(card->ctx, r, "APDU transmit failed"); r = sc_check_sw(card, apdu.sw1, apdu.sw2); @@ -53,6 +53,3 @@ index 91c311b..e7b25c0 100644 LOG_TEST_RET(card->ctx, r, "Card returned error"); LOG_FUNC_RETURN(card->ctx, apdu.resplen); --- -2.1.3 - diff --git a/utils/opensc/patches/0009-PKCS15-OpenPGP-Do-not-show-empty-DO-in-pkcs15-emu_in.patch b/utils/opensc/patches/0009-PKCS15-OpenPGP-Do-not-show-empty-DO-in-pkcs15-emu_in.patch index a75a2c2ce..16431a4d9 100644 --- a/utils/opensc/patches/0009-PKCS15-OpenPGP-Do-not-show-empty-DO-in-pkcs15-emu_in.patch +++ b/utils/opensc/patches/0009-PKCS15-OpenPGP-Do-not-show-empty-DO-in-pkcs15-emu_in.patch @@ -9,11 +9,11 @@ Subject: [PATCH 09/26] PKCS15-OpenPGP: Do not show empty DO in pkcs15 src/libopensc/pkcs15-openpgp.c | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) -diff --git a/src/libopensc/pkcs15-openpgp.c b/src/libopensc/pkcs15-openpgp.c -index fea2805..51a2032 100644 ---- a/src/libopensc/pkcs15-openpgp.c -+++ b/src/libopensc/pkcs15-openpgp.c -@@ -381,16 +381,34 @@ sc_pkcs15emu_openpgp_add_data(sc_pkcs15_card_t *p15card) +Index: opensc-20150513/src/libopensc/pkcs15-openpgp.c +=================================================================== +--- opensc-20150513.orig/src/libopensc/pkcs15-openpgp.c ++++ opensc-20150513/src/libopensc/pkcs15-openpgp.c +@@ -383,16 +383,34 @@ sc_pkcs15emu_openpgp_add_data(sc_pkcs15_ sc_pkcs15_object_t dat_obj; char name[8]; char path[9]; @@ -48,6 +48,3 @@ index fea2805..51a2032 100644 sc_log(ctx, "Add %s data object", name); r = sc_pkcs15emu_add_data_object(p15card, &dat_obj, &dat_info); } --- -2.1.3 - diff --git a/utils/opensc/patches/0010-PKCS15-OpenPGP-Allow-to-store-data-to-pkcs15-data-ob.patch b/utils/opensc/patches/0010-PKCS15-OpenPGP-Allow-to-store-data-to-pkcs15-data-ob.patch index 7b0f493cc..afcf9d598 100644 --- a/utils/opensc/patches/0010-PKCS15-OpenPGP-Allow-to-store-data-to-pkcs15-data-ob.patch +++ b/utils/opensc/patches/0010-PKCS15-OpenPGP-Allow-to-store-data-to-pkcs15-data-ob.patch @@ -11,11 +11,11 @@ Only one DO is supported now. src/pkcs15init/pkcs15-openpgp.c | 38 +++++++++++++++++++++++++++++++++++++- 2 files changed, 38 insertions(+), 2 deletions(-) -diff --git a/src/libopensc/pkcs15-openpgp.c b/src/libopensc/pkcs15-openpgp.c -index 51a2032..4cc1c39 100644 ---- a/src/libopensc/pkcs15-openpgp.c -+++ b/src/libopensc/pkcs15-openpgp.c -@@ -393,7 +393,7 @@ sc_pkcs15emu_openpgp_add_data(sc_pkcs15_card_t *p15card) +Index: opensc-20150513/src/libopensc/pkcs15-openpgp.c +=================================================================== +--- opensc-20150513.orig/src/libopensc/pkcs15-openpgp.c ++++ opensc-20150513/src/libopensc/pkcs15-openpgp.c +@@ -395,7 +395,7 @@ sc_pkcs15emu_openpgp_add_data(sc_pkcs15_ */ r = read_file(p15card->card, path, content, sizeof(content)); if (r <= 0 ) { @@ -24,11 +24,11 @@ index 51a2032..4cc1c39 100644 /* Skip */ continue; } -diff --git a/src/pkcs15init/pkcs15-openpgp.c b/src/pkcs15init/pkcs15-openpgp.c -index f3a4962..1455580 100755 ---- a/src/pkcs15init/pkcs15-openpgp.c -+++ b/src/pkcs15init/pkcs15-openpgp.c -@@ -236,13 +236,16 @@ static int openpgp_emu_update_tokeninfo(sc_profile_t *profile, sc_pkcs15_card_t +Index: opensc-20150513/src/pkcs15init/pkcs15-openpgp.c +=================================================================== +--- opensc-20150513.orig/src/pkcs15init/pkcs15-openpgp.c ++++ opensc-20150513/src/pkcs15init/pkcs15-openpgp.c +@@ -236,13 +236,16 @@ static int openpgp_emu_update_tokeninfo( } static int openpgp_store_data(struct sc_pkcs15_card *p15card, struct sc_profile *profile, @@ -46,7 +46,7 @@ index f3a4962..1455580 100755 int r; LOG_FUNC_CALLED(card->ctx); -@@ -282,6 +285,39 @@ static int openpgp_store_data(struct sc_pkcs15_card *p15card, struct sc_profile +@@ -282,6 +285,39 @@ static int openpgp_store_data(struct sc_ content->len, 0); break; @@ -86,6 +86,3 @@ index f3a4962..1455580 100755 default: r = SC_ERROR_NOT_IMPLEMENTED; } --- -2.1.3 - diff --git a/utils/opensc/patches/0011-OpenPGP-Provide-enough-buffer-to-read-pubkey-from-Gn.patch b/utils/opensc/patches/0011-OpenPGP-Provide-enough-buffer-to-read-pubkey-from-Gn.patch index d133e8059..a4c52621a 100644 --- a/utils/opensc/patches/0011-OpenPGP-Provide-enough-buffer-to-read-pubkey-from-Gn.patch +++ b/utils/opensc/patches/0011-OpenPGP-Provide-enough-buffer-to-read-pubkey-from-Gn.patch @@ -9,11 +9,11 @@ Subject: [PATCH 11/26] OpenPGP: Provide enough buffer to read pubkey from src/libopensc/card-openpgp.c | 28 +++++++++++++++++++++++----- 1 file changed, 23 insertions(+), 5 deletions(-) -diff --git a/src/libopensc/card-openpgp.c b/src/libopensc/card-openpgp.c -index e7b25c0..1913eca 100644 ---- a/src/libopensc/card-openpgp.c -+++ b/src/libopensc/card-openpgp.c -@@ -263,7 +263,12 @@ static struct do_info pgp2_objects[] = { /* OpenPGP card spec 2.0 */ +Index: opensc-20150513/src/libopensc/card-openpgp.c +=================================================================== +--- opensc-20150513.orig/src/libopensc/card-openpgp.c ++++ opensc-20150513/src/libopensc/card-openpgp.c +@@ -265,7 +265,12 @@ static struct do_info pgp2_objects[] = /* The DO holding X.509 certificate is constructed but does not contain child DO. * We should notice this when building fake file system later. */ @@ -27,7 +27,7 @@ index e7b25c0..1913eca 100644 #define DRVDATA(card) ((struct pgp_priv_data *) ((card)->drv_data)) struct pgp_priv_data { -@@ -731,6 +736,14 @@ pgp_read_blob(sc_card_t *card, struct blob *blob) +@@ -739,6 +744,14 @@ pgp_read_blob(sc_card_t *card, struct bl u8 buffer[2048]; size_t buf_len = (card->caps & SC_CARD_CAP_APDU_EXT) ? sizeof(buffer) : 256; @@ -42,7 +42,7 @@ index e7b25c0..1913eca 100644 int r = blob->info->get_fn(card, blob->id, buffer, buf_len); if (r < 0) { /* an error occurred */ -@@ -1828,6 +1841,7 @@ static int pgp_gen_key(sc_card_t *card, sc_cardctl_openpgp_keygen_info_t *key_in +@@ -1836,6 +1849,7 @@ static int pgp_gen_key(sc_card_t *card, u8 apdu_case; u8 *apdu_data; size_t apdu_le; @@ -50,7 +50,7 @@ index e7b25c0..1913eca 100644 int r = SC_SUCCESS; LOG_FUNC_CALLED(card->ctx); -@@ -1868,23 +1882,27 @@ static int pgp_gen_key(sc_card_t *card, sc_cardctl_openpgp_keygen_info_t *key_in +@@ -1876,23 +1890,27 @@ static int pgp_gen_key(sc_card_t *card, apdu_case = SC_APDU_CASE_4_EXT; } else { @@ -82,6 +82,3 @@ index e7b25c0..1913eca 100644 /* Send */ sc_log(card->ctx, "Waiting for the card to generate key..."); --- -2.1.3 - diff --git a/utils/opensc/patches/0012-OpenPGP-Support-write-certificate-for-Gnuk.patch b/utils/opensc/patches/0012-OpenPGP-Support-write-certificate-for-Gnuk.patch index 3a2526f4e..40c0c8541 100644 --- a/utils/opensc/patches/0012-OpenPGP-Support-write-certificate-for-Gnuk.patch +++ b/utils/opensc/patches/0012-OpenPGP-Support-write-certificate-for-Gnuk.patch @@ -8,11 +8,11 @@ Subject: [PATCH 12/26] OpenPGP: Support write certificate for Gnuk. src/libopensc/card-openpgp.c | 158 +++++++++++++++++++++++++++++++++---------- 1 file changed, 123 insertions(+), 35 deletions(-) -diff --git a/src/libopensc/card-openpgp.c b/src/libopensc/card-openpgp.c -index 1913eca..7cea84f 100644 ---- a/src/libopensc/card-openpgp.c -+++ b/src/libopensc/card-openpgp.c -@@ -727,6 +727,8 @@ pgp_iterate_blobs(struct blob *blob, int level, void (*func)()) +Index: opensc-20150513/src/libopensc/card-openpgp.c +=================================================================== +--- opensc-20150513.orig/src/libopensc/card-openpgp.c ++++ opensc-20150513/src/libopensc/card-openpgp.c +@@ -735,6 +735,8 @@ pgp_iterate_blobs(struct blob *blob, int static int pgp_read_blob(sc_card_t *card, struct blob *blob) { @@ -21,7 +21,7 @@ index 1913eca..7cea84f 100644 if (blob->data != NULL) return SC_SUCCESS; if (blob->info == NULL) -@@ -737,6 +739,11 @@ pgp_read_blob(sc_card_t *card, struct blob *blob) +@@ -745,6 +747,11 @@ pgp_read_blob(sc_card_t *card, struct bl size_t buf_len = (card->caps & SC_CARD_CAP_APDU_EXT) ? sizeof(buffer) : 256; @@ -33,7 +33,7 @@ index 1913eca..7cea84f 100644 /* Buffer length for Gnuk pubkey */ if (card->type == SC_CARD_TYPE_OPENPGP_GNUK && (blob->id == 0xa400 || blob->id == 0xb600 || blob->id == 0xb800 -@@ -1192,49 +1199,75 @@ pgp_get_data(sc_card_t *card, unsigned int tag, u8 *buf, size_t buf_len) +@@ -1200,49 +1207,75 @@ pgp_get_data(sc_card_t *card, unsigned i LOG_FUNC_RETURN(card->ctx, apdu.resplen); } @@ -143,7 +143,7 @@ index 1913eca..7cea84f 100644 /* Extended Header list (004D DO) needs a variant of PUT DATA command */ if (tag == 0x004D) { -@@ -1260,15 +1293,70 @@ pgp_put_data(sc_card_t *card, unsigned int tag, const u8 *buf, size_t buf_len) +@@ -1268,15 +1301,70 @@ pgp_put_data(sc_card_t *card, unsigned i apdu.lc = buf_len; } else { @@ -215,6 +215,3 @@ index 1913eca..7cea84f 100644 /* Instruct more in case of error */ if (r == SC_ERROR_SECURITY_STATUS_NOT_SATISFIED) { sc_debug(card->ctx, SC_LOG_DEBUG_VERBOSE, "Please verify PIN first."); --- -2.1.3 - diff --git a/utils/opensc/patches/0013-pkcs15-openpgp-Change-to-sc_put_data-instead-of-sc_u.patch b/utils/opensc/patches/0013-pkcs15-openpgp-Change-to-sc_put_data-instead-of-sc_u.patch index 48afb3739..c785a0dd5 100644 --- a/utils/opensc/patches/0013-pkcs15-openpgp-Change-to-sc_put_data-instead-of-sc_u.patch +++ b/utils/opensc/patches/0013-pkcs15-openpgp-Change-to-sc_put_data-instead-of-sc_u.patch @@ -9,11 +9,11 @@ Subject: [PATCH 13/26] pkcs15-openpgp: Change to sc_put_data instead of src/pkcs15init/pkcs15-openpgp.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) -diff --git a/src/pkcs15init/pkcs15-openpgp.c b/src/pkcs15init/pkcs15-openpgp.c -index 1455580..be1291e 100755 ---- a/src/pkcs15init/pkcs15-openpgp.c -+++ b/src/pkcs15init/pkcs15-openpgp.c -@@ -279,10 +279,9 @@ static int openpgp_store_data(struct sc_pkcs15_card *p15card, struct sc_profile +Index: opensc-20150513/src/pkcs15init/pkcs15-openpgp.c +=================================================================== +--- opensc-20150513.orig/src/pkcs15init/pkcs15-openpgp.c ++++ opensc-20150513/src/pkcs15init/pkcs15-openpgp.c +@@ -279,10 +279,9 @@ static int openpgp_store_data(struct sc_ r = sc_select_file(card, path, &file); LOG_TEST_RET(card->ctx, r, "Cannot select cert file"); r = sc_pkcs15init_authenticate(profile, p15card, file, SC_AC_OP_UPDATE); @@ -26,6 +26,3 @@ index 1455580..be1291e 100755 break; case SC_PKCS15_TYPE_DATA_OBJECT: --- -2.1.3 - diff --git a/utils/opensc/patches/0014-OpenPGP-Overcome-the-restriction-of-even-data-length.patch b/utils/opensc/patches/0014-OpenPGP-Overcome-the-restriction-of-even-data-length.patch index 0fa8f2c3d..884e4fa7d 100644 --- a/utils/opensc/patches/0014-OpenPGP-Overcome-the-restriction-of-even-data-length.patch +++ b/utils/opensc/patches/0014-OpenPGP-Overcome-the-restriction-of-even-data-length.patch @@ -10,11 +10,11 @@ When write certificate with odd length to Gnuk, we add zero padding to make it e src/libopensc/card-openpgp.c | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) -diff --git a/src/libopensc/card-openpgp.c b/src/libopensc/card-openpgp.c -index 7cea84f..7a77a71 100644 ---- a/src/libopensc/card-openpgp.c -+++ b/src/libopensc/card-openpgp.c -@@ -1208,6 +1208,10 @@ static int gnuk_write_certificate(sc_card_t *card, const u8 *buf, size_t length) +Index: opensc-20150513/src/libopensc/card-openpgp.c +=================================================================== +--- opensc-20150513.orig/src/libopensc/card-openpgp.c ++++ opensc-20150513/src/libopensc/card-openpgp.c +@@ -1216,6 +1216,10 @@ static int gnuk_write_certificate(sc_car sc_apdu_t apdu; u8 *part; size_t plen; @@ -25,7 +25,7 @@ index 7cea84f..7a77a71 100644 int r = SC_SUCCESS; LOG_FUNC_CALLED(ctx); -@@ -1238,8 +1242,20 @@ static int gnuk_write_certificate(sc_card_t *card, const u8 *buf, size_t length) +@@ -1246,8 +1250,20 @@ static int gnuk_write_certificate(sc_car sc_format_apdu(card, &apdu, SC_APDU_CASE_3_SHORT, 0xD6, i, 0); } apdu.flags |= SC_APDU_FLAGS_CHAINING; @@ -48,6 +48,3 @@ index 7cea84f..7a77a71 100644 r = sc_transmit_apdu(card, &apdu); LOG_TEST_RET(card->ctx, r, "APDU transmit failed"); --- -2.1.3 - diff --git a/utils/opensc/patches/0015-OpenPGP-Delete-key-as-file-for-Gnuk.patch b/utils/opensc/patches/0015-OpenPGP-Delete-key-as-file-for-Gnuk.patch index 2389cd109..e9ac9d343 100644 --- a/utils/opensc/patches/0015-OpenPGP-Delete-key-as-file-for-Gnuk.patch +++ b/utils/opensc/patches/0015-OpenPGP-Delete-key-as-file-for-Gnuk.patch @@ -8,11 +8,11 @@ Subject: [PATCH 15/26] OpenPGP: Delete key as file, for Gnuk. src/libopensc/card-openpgp.c | 51 +++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 50 insertions(+), 1 deletion(-) -diff --git a/src/libopensc/card-openpgp.c b/src/libopensc/card-openpgp.c -index 7a77a71..4d0500d 100644 ---- a/src/libopensc/card-openpgp.c -+++ b/src/libopensc/card-openpgp.c -@@ -2435,6 +2435,44 @@ static int pgp_card_ctl(sc_card_t *card, unsigned long cmd, void *ptr) +Index: opensc-20150513/src/libopensc/card-openpgp.c +=================================================================== +--- opensc-20150513.orig/src/libopensc/card-openpgp.c ++++ opensc-20150513/src/libopensc/card-openpgp.c +@@ -2448,6 +2448,44 @@ static int pgp_card_ctl(sc_card_t *card, LOG_FUNC_RETURN(card->ctx, SC_ERROR_NOT_SUPPORTED); } @@ -57,7 +57,7 @@ index 7a77a71..4d0500d 100644 /* ABI: DELETE FILE */ static int pgp_delete_file(sc_card_t *card, const sc_path_t *path) -@@ -2442,6 +2480,7 @@ pgp_delete_file(sc_card_t *card, const sc_path_t *path) +@@ -2455,6 +2493,7 @@ pgp_delete_file(sc_card_t *card, const s struct pgp_priv_data *priv = DRVDATA(card); struct blob *blob; sc_file_t *file; @@ -65,7 +65,7 @@ index 7a77a71..4d0500d 100644 int r; LOG_FUNC_CALLED(card->ctx); -@@ -2457,10 +2496,20 @@ pgp_delete_file(sc_card_t *card, const sc_path_t *path) +@@ -2470,10 +2509,20 @@ pgp_delete_file(sc_card_t *card, const s if (blob == priv->mf) LOG_FUNC_RETURN(card->ctx, SC_ERROR_NOT_SUPPORTED); @@ -87,6 +87,3 @@ index 7a77a71..4d0500d 100644 else { /* call pgp_put_data() with zero-sized NULL-buffer to zap the DO contents */ r = pgp_put_data(card, file->id, NULL, 0); --- -2.1.3 - diff --git a/utils/opensc/patches/0016-OpenPGP-Correct-parameter-checking.patch b/utils/opensc/patches/0016-OpenPGP-Correct-parameter-checking.patch index 76c8624e3..3f80a0602 100644 --- a/utils/opensc/patches/0016-OpenPGP-Correct-parameter-checking.patch +++ b/utils/opensc/patches/0016-OpenPGP-Correct-parameter-checking.patch @@ -8,11 +8,11 @@ Subject: [PATCH 16/26] OpenPGP: Correct parameter checking. src/libopensc/card-openpgp.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) -diff --git a/src/libopensc/card-openpgp.c b/src/libopensc/card-openpgp.c -index 4d0500d..beeee83 100644 ---- a/src/libopensc/card-openpgp.c -+++ b/src/libopensc/card-openpgp.c -@@ -1223,6 +1223,8 @@ static int gnuk_write_certificate(sc_card_t *card, const u8 *buf, size_t length) +Index: opensc-20150513/src/libopensc/card-openpgp.c +=================================================================== +--- opensc-20150513.orig/src/libopensc/card-openpgp.c ++++ opensc-20150513/src/libopensc/card-openpgp.c +@@ -1231,6 +1231,8 @@ static int gnuk_write_certificate(sc_car LOG_TEST_RET(card->ctx, r, "APDU transmit failed"); /* Check response */ r = sc_check_sw(card, apdu.sw1, apdu.sw2); @@ -21,7 +21,7 @@ index 4d0500d..beeee83 100644 LOG_FUNC_RETURN(card->ctx, length); } -@@ -2446,6 +2448,11 @@ gnuk_delete_key(sc_card_t *card, u8 key_id) +@@ -2459,6 +2461,11 @@ gnuk_delete_key(sc_card_t *card, u8 key_ LOG_FUNC_CALLED(ctx); @@ -33,7 +33,7 @@ index 4d0500d..beeee83 100644 /* Delete fingerprint */ sc_log(ctx, "Delete fingerprints"); r = pgp_put_data(card, 0xC6 + key_id, NULL, 0); -@@ -2464,8 +2471,6 @@ gnuk_delete_key(sc_card_t *card, u8 key_id) +@@ -2477,8 +2484,6 @@ gnuk_delete_key(sc_card_t *card, u8 key_ data = "\x4D\x02\xB8"; else if (key_id == 3) data = "\x4D\x02\xA4"; @@ -42,6 +42,3 @@ index 4d0500d..beeee83 100644 r = pgp_put_data(card, 0x4D, data, strlen(data) + 1); --- -2.1.3 - diff --git a/utils/opensc/patches/0017-OpenPGP-Make-code-neater.patch b/utils/opensc/patches/0017-OpenPGP-Make-code-neater.patch index 2bb6fccaf..25a23e235 100644 --- a/utils/opensc/patches/0017-OpenPGP-Make-code-neater.patch +++ b/utils/opensc/patches/0017-OpenPGP-Make-code-neater.patch @@ -8,11 +8,11 @@ Subject: [PATCH 17/26] OpenPGP: Make code neater src/libopensc/card-openpgp.c | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) -diff --git a/src/libopensc/card-openpgp.c b/src/libopensc/card-openpgp.c -index beeee83..ca0d01b 100644 ---- a/src/libopensc/card-openpgp.c -+++ b/src/libopensc/card-openpgp.c -@@ -1222,10 +1222,7 @@ static int gnuk_write_certificate(sc_card_t *card, const u8 *buf, size_t length) +Index: opensc-20150513/src/libopensc/card-openpgp.c +=================================================================== +--- opensc-20150513.orig/src/libopensc/card-openpgp.c ++++ opensc-20150513/src/libopensc/card-openpgp.c +@@ -1230,10 +1230,7 @@ static int gnuk_write_certificate(sc_car r = sc_transmit_apdu(card, &apdu); LOG_TEST_RET(card->ctx, r, "APDU transmit failed"); /* Check response */ @@ -24,7 +24,7 @@ index beeee83..ca0d01b 100644 } /* Ref: gnuk_put_binary_libusb.py and gnuk_token.py in Gnuk source tree */ -@@ -1262,8 +1259,7 @@ static int gnuk_write_certificate(sc_card_t *card, const u8 *buf, size_t length) +@@ -1270,8 +1267,7 @@ static int gnuk_write_certificate(sc_car r = sc_transmit_apdu(card, &apdu); LOG_TEST_RET(card->ctx, r, "APDU transmit failed"); /* Check response */ @@ -34,6 +34,3 @@ index beeee83..ca0d01b 100644 /* To next part */ i++; --- -2.1.3 - diff --git a/utils/opensc/patches/0018-Move-declaration-to-top-of-block.patch b/utils/opensc/patches/0018-Move-declaration-to-top-of-block.patch index 774ed58a1..2d617b597 100644 --- a/utils/opensc/patches/0018-Move-declaration-to-top-of-block.patch +++ b/utils/opensc/patches/0018-Move-declaration-to-top-of-block.patch @@ -8,11 +8,11 @@ Subject: [PATCH 18/26] Move declaration to top of block. src/libopensc/card-openpgp.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) -diff --git a/src/libopensc/card-openpgp.c b/src/libopensc/card-openpgp.c -index ca0d01b..037ef73 100644 ---- a/src/libopensc/card-openpgp.c -+++ b/src/libopensc/card-openpgp.c -@@ -738,6 +738,7 @@ pgp_read_blob(sc_card_t *card, struct blob *blob) +Index: opensc-20150513/src/libopensc/card-openpgp.c +=================================================================== +--- opensc-20150513.orig/src/libopensc/card-openpgp.c ++++ opensc-20150513/src/libopensc/card-openpgp.c +@@ -746,6 +746,7 @@ pgp_read_blob(sc_card_t *card, struct bl u8 buffer[2048]; size_t buf_len = (card->caps & SC_CARD_CAP_APDU_EXT) ? sizeof(buffer) : 256; @@ -20,7 +20,7 @@ index ca0d01b..037ef73 100644 /* Buffer length for certificate */ if (blob->id == DO_CERT && priv->max_cert_size > 0) { -@@ -751,7 +752,7 @@ pgp_read_blob(sc_card_t *card, struct blob *blob) +@@ -759,7 +760,7 @@ pgp_read_blob(sc_card_t *card, struct bl buf_len = MAXLEN_RESP_PUBKEY_GNUK; } @@ -29,6 +29,3 @@ index ca0d01b..037ef73 100644 if (r < 0) { /* an error occurred */ blob->status = r; --- -2.1.3 - diff --git a/utils/opensc/patches/0019-OpenPGP-Make-indentation-consistent-space-tab.patch b/utils/opensc/patches/0019-OpenPGP-Make-indentation-consistent-space-tab.patch index 3702d61be..6130fa451 100644 --- a/utils/opensc/patches/0019-OpenPGP-Make-indentation-consistent-space-tab.patch +++ b/utils/opensc/patches/0019-OpenPGP-Make-indentation-consistent-space-tab.patch @@ -9,11 +9,11 @@ Subject: [PATCH 19/26] OpenPGP: Make indentation consistent (space -> tab). src/tools/openpgp-tool.c | 56 ++++++++++++++++++++++---------------------- 2 files changed, 39 insertions(+), 39 deletions(-) -diff --git a/src/libopensc/card-openpgp.c b/src/libopensc/card-openpgp.c -index 037ef73..ae40940 100644 ---- a/src/libopensc/card-openpgp.c -+++ b/src/libopensc/card-openpgp.c -@@ -192,12 +192,12 @@ static struct do_info pgp1_objects[] = { /* OpenPGP card spec 1.1 */ +Index: opensc-20150513/src/libopensc/card-openpgp.c +=================================================================== +--- opensc-20150513.orig/src/libopensc/card-openpgp.c ++++ opensc-20150513/src/libopensc/card-openpgp.c +@@ -194,12 +194,12 @@ static struct do_info pgp1_objects[] = { 0x5f35, SIMPLE, READ_ALWAYS | WRITE_PIN3, NULL, sc_put_data }, { 0x5f50, SIMPLE, READ_ALWAYS | WRITE_PIN3, sc_get_data, sc_put_data }, { 0x7f49, CONSTRUCTED, READ_ALWAYS | WRITE_NEVER, NULL, NULL }, @@ -32,7 +32,7 @@ index 037ef73..ae40940 100644 { 0, 0, 0, NULL, NULL }, }; -@@ -253,11 +253,11 @@ static struct do_info pgp2_objects[] = { /* OpenPGP card spec 2.0 */ +@@ -255,11 +255,11 @@ static struct do_info pgp2_objects[] = /* The 0xA401, 0xB601, 0xB801 are just symbolic, it does not represent any real DO. * However, their R/W access condition may block the process of importing key in pkcs15init. * So we set their accesses condition as WRITE_PIN3 (writable). */ @@ -49,10 +49,10 @@ index 037ef73..ae40940 100644 { 0, 0, 0, NULL, NULL }, }; -diff --git a/src/tools/openpgp-tool.c b/src/tools/openpgp-tool.c -index 374819a..a0334ca 100644 ---- a/src/tools/openpgp-tool.c -+++ b/src/tools/openpgp-tool.c +Index: opensc-20150513/src/tools/openpgp-tool.c +=================================================================== +--- opensc-20150513.orig/src/tools/openpgp-tool.c ++++ opensc-20150513/src/tools/openpgp-tool.c @@ -37,11 +37,11 @@ #include "util.h" #include "libopensc/log.h" @@ -70,7 +70,7 @@ index 374819a..a0334ca 100644 /* define structures */ struct ef_name_map { -@@ -142,10 +142,10 @@ static const struct ef_name_map openpgp_data[] = { +@@ -142,10 +142,10 @@ static const struct ef_name_map openpgp_ static void show_version(void) { fprintf(stderr, @@ -85,7 +85,7 @@ index 374819a..a0334ca 100644 } -@@ -176,16 +176,16 @@ static char *prettify_language(char *str) +@@ -176,16 +176,16 @@ static char *prettify_language(char *str { if (str != NULL) { switch (strlen(str)) { @@ -121,7 +121,7 @@ index 374819a..a0334ca 100644 } } return NULL; -@@ -218,7 +218,7 @@ static void display_data(const struct ef_name_map *mapping, char *value) +@@ -218,7 +218,7 @@ static void display_data(const struct ef char *envvar; envvar = malloc(strlen(mapping->env_name) + @@ -130,7 +130,7 @@ index 374819a..a0334ca 100644 if (envvar != NULL) { strcpy(envvar, mapping->env_name); strcat(envvar, "="); -@@ -346,20 +346,20 @@ static int do_userinfo(sc_card_t *card) +@@ -344,20 +344,20 @@ static int do_userinfo(sc_card_t *card) if (!count) continue; @@ -177,6 +177,3 @@ index 374819a..a0334ca 100644 return EXIT_FAILURE; } --- -2.1.3 - diff --git a/utils/opensc/patches/0020-OpenPGP-Don-t-use-sc_log-in-openpgp-tool.patch b/utils/opensc/patches/0020-OpenPGP-Don-t-use-sc_log-in-openpgp-tool.patch index b73826fa2..dbd7bc0dc 100644 --- a/utils/opensc/patches/0020-OpenPGP-Don-t-use-sc_log-in-openpgp-tool.patch +++ b/utils/opensc/patches/0020-OpenPGP-Don-t-use-sc_log-in-openpgp-tool.patch @@ -8,11 +8,11 @@ Subject: [PATCH 20/26] OpenPGP: Don't use sc_log in openpgp-tool. src/tools/openpgp-tool.c | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) -diff --git a/src/tools/openpgp-tool.c b/src/tools/openpgp-tool.c -index a0334ca..505abd9 100644 ---- a/src/tools/openpgp-tool.c -+++ b/src/tools/openpgp-tool.c -@@ -414,8 +414,6 @@ int do_genkey(sc_card_t *card, u8 key_id, unsigned int key_len) +Index: opensc-20150513/src/tools/openpgp-tool.c +=================================================================== +--- opensc-20150513.orig/src/tools/openpgp-tool.c ++++ opensc-20150513/src/tools/openpgp-tool.c +@@ -414,8 +414,6 @@ int do_genkey(sc_card_t *card, u8 key_id sc_path_t path; sc_file_t *file; @@ -21,7 +21,7 @@ index a0334ca..505abd9 100644 if (key_id < 1 || key_id > 3) { printf("Unknown key ID %d.\n", key_id); return 1; -@@ -479,14 +477,14 @@ int delete_key_gnuk(sc_card_t *card, u8 key_id) +@@ -479,14 +477,14 @@ int delete_key_gnuk(sc_card_t *card, u8 u8 *data = NULL; /* Delete fingerprint */ @@ -39,7 +39,7 @@ index a0334ca..505abd9 100644 if (key_id == 1) data = "\x4D\x02\xB6"; -@@ -534,15 +532,18 @@ int delete_key_openpgp(sc_card_t *card, u8 key_id) +@@ -534,15 +532,18 @@ int delete_key_openpgp(sc_card_t *card, /* Build APDU from binary array */ r = sc_bytes2apdu(card->ctx, buf, len0, &apdu); if (r) { @@ -61,7 +61,7 @@ index a0334ca..505abd9 100644 } /* TODO: Rewrite Extended Header List. * Not support by OpenGPG v2 yet */ -@@ -557,7 +558,7 @@ int delete_key(sc_card_t *card, u8 key_id) +@@ -557,7 +558,7 @@ int delete_key(sc_card_t *card, u8 key_i LOG_FUNC_CALLED(ctx); /* Check key ID */ if (key_id < 1 || key_id > 3) { @@ -79,6 +79,3 @@ index a0334ca..505abd9 100644 exit_status = EXIT_FAILURE; goto out; } --- -2.1.3 - diff --git a/utils/opensc/patches/0021-OpenPGP-Don-t-reimplement-gnuk_delete_key-in-openpgp.patch b/utils/opensc/patches/0021-OpenPGP-Don-t-reimplement-gnuk_delete_key-in-openpgp.patch index dc8fe8499..c84ef8e97 100644 --- a/utils/opensc/patches/0021-OpenPGP-Don-t-reimplement-gnuk_delete_key-in-openpgp.patch +++ b/utils/opensc/patches/0021-OpenPGP-Don-t-reimplement-gnuk_delete_key-in-openpgp.patch @@ -9,11 +9,11 @@ Subject: [PATCH 21/26] OpenPGP: Don't reimplement gnuk_delete_key in src/tools/openpgp-tool.c | 64 ++++++------------------------------------------ 1 file changed, 8 insertions(+), 56 deletions(-) -diff --git a/src/tools/openpgp-tool.c b/src/tools/openpgp-tool.c -index 505abd9..a7796e7 100644 ---- a/src/tools/openpgp-tool.c -+++ b/src/tools/openpgp-tool.c -@@ -468,38 +468,6 @@ int do_verify(sc_card_t *card, char *type, char *pin) +Index: opensc-20150513/src/tools/openpgp-tool.c +=================================================================== +--- opensc-20150513.orig/src/tools/openpgp-tool.c ++++ opensc-20150513/src/tools/openpgp-tool.c +@@ -468,38 +468,6 @@ int do_verify(sc_card_t *card, char *typ } /** @@ -52,7 +52,7 @@ index 505abd9..a7796e7 100644 * Delete key, for OpenPGP card. * This function is not complete and is reserved for future version (> 2) of OpenPGP card. **/ -@@ -547,32 +515,13 @@ int delete_key_openpgp(sc_card_t *card, u8 key_id) +@@ -547,32 +515,13 @@ int delete_key_openpgp(sc_card_t *card, } /* TODO: Rewrite Extended Header List. * Not support by OpenGPG v2 yet */ @@ -87,7 +87,7 @@ index 505abd9..a7796e7 100644 int r = SC_SUCCESS; /* Currently, only Gnuk supports deleting keys */ -@@ -586,13 +535,16 @@ int do_delete_key(sc_card_t *card, u8 key_id) +@@ -586,13 +535,16 @@ int do_delete_key(sc_card_t *card, u8 ke return SC_ERROR_INVALID_ARGUMENTS; } if (key_id == 1 || key_id == 'a') { @@ -107,6 +107,3 @@ index 505abd9..a7796e7 100644 } return r; } --- -2.1.3 - diff --git a/utils/opensc/patches/0022-OpenPGP-Use-directly-binary-array-of-APDUs-for-ERASE.patch b/utils/opensc/patches/0022-OpenPGP-Use-directly-binary-array-of-APDUs-for-ERASE.patch index 6297783ec..20c66effe 100644 --- a/utils/opensc/patches/0022-OpenPGP-Use-directly-binary-array-of-APDUs-for-ERASE.patch +++ b/utils/opensc/patches/0022-OpenPGP-Use-directly-binary-array-of-APDUs-for-ERASE.patch @@ -10,11 +10,11 @@ I used a string presentation before and it needed an extra conversion step. src/libopensc/card-openpgp.c | 47 +++++++++++++++++++++++--------------------- 1 file changed, 25 insertions(+), 22 deletions(-) -diff --git a/src/libopensc/card-openpgp.c b/src/libopensc/card-openpgp.c -index ae40940..724fe73 100644 ---- a/src/libopensc/card-openpgp.c -+++ b/src/libopensc/card-openpgp.c -@@ -2347,24 +2347,27 @@ out: +Index: opensc-20150513/src/libopensc/card-openpgp.c +=================================================================== +--- opensc-20150513.orig/src/libopensc/card-openpgp.c ++++ opensc-20150513/src/libopensc/card-openpgp.c +@@ -2358,24 +2358,27 @@ out: static int pgp_erase_card(sc_card_t *card) { sc_context_t *ctx = card->ctx; @@ -56,7 +56,7 @@ index ae40940..724fe73 100644 LOG_FUNC_CALLED(ctx); -@@ -2376,17 +2379,17 @@ static int pgp_erase_card(sc_card_t *card) +@@ -2387,17 +2390,17 @@ static int pgp_erase_card(sc_card_t *car sc_log(ctx, "Card is OpenPGP v2. Erase card."); /* Iterate over 10 commands above */ @@ -82,6 +82,3 @@ index ae40940..724fe73 100644 if (r) { sc_log(ctx, "Failed to build APDU"); LOG_FUNC_RETURN(ctx, SC_ERROR_INTERNAL); --- -2.1.3 - diff --git a/utils/opensc/patches/0023-OpenPGP-Rename-private-blob-type-to-avoid-confusing-.patch b/utils/opensc/patches/0023-OpenPGP-Rename-private-blob-type-to-avoid-confusing-.patch index f859f7cf1..1eedf5fd6 100644 --- a/utils/opensc/patches/0023-OpenPGP-Rename-private-blob-type-to-avoid-confusing-.patch +++ b/utils/opensc/patches/0023-OpenPGP-Rename-private-blob-type-to-avoid-confusing-.patch @@ -11,11 +11,11 @@ type. src/libopensc/card-openpgp.c | 96 ++++++++++++++++++++++---------------------- 1 file changed, 49 insertions(+), 47 deletions(-) -diff --git a/src/libopensc/card-openpgp.c b/src/libopensc/card-openpgp.c -index 724fe73..ca3173c 100644 ---- a/src/libopensc/card-openpgp.c -+++ b/src/libopensc/card-openpgp.c -@@ -111,9 +111,9 @@ enum _card_state { +Index: opensc-20150513/src/libopensc/card-openpgp.c +=================================================================== +--- opensc-20150513.orig/src/libopensc/card-openpgp.c ++++ opensc-20150513/src/libopensc/card-openpgp.c +@@ -113,9 +113,9 @@ enum _card_state { CARD_STATE_ACTIVATED = 0x05 }; @@ -28,7 +28,7 @@ index 724fe73..ca3173c 100644 struct do_info *info; sc_file_t * file; -@@ -122,8 +122,8 @@ struct blob { +@@ -124,8 +124,8 @@ struct blob { unsigned char * data; unsigned int len; @@ -39,7 +39,7 @@ index 724fe73..ca3173c 100644 struct do_info { unsigned int id; /* ID of the DO in question */ -@@ -141,12 +141,12 @@ struct do_info { +@@ -143,12 +143,12 @@ struct do_info { static int pgp_get_card_features(sc_card_t *card); static int pgp_finish(sc_card_t *card); @@ -57,7 +57,7 @@ index 724fe73..ca3173c 100644 static int pgp_get_pubkey(sc_card_t *, unsigned int, u8 *, size_t); static int pgp_get_pubkey_pem(sc_card_t *, unsigned int, -@@ -272,8 +272,8 @@ static struct do_info pgp2_objects[] = { /* OpenPGP card spec 2.0 */ +@@ -274,8 +274,8 @@ static struct do_info pgp2_objects[] = #define DRVDATA(card) ((struct pgp_priv_data *) ((card)->drv_data)) struct pgp_priv_data { @@ -68,16 +68,16 @@ index 724fe73..ca3173c 100644 enum _version bcd_version; struct do_info *pgp_objects; -@@ -311,7 +311,7 @@ pgp_init(sc_card_t *card) +@@ -313,7 +313,7 @@ pgp_init(sc_card_t *card) sc_file_t *file = NULL; struct do_info *info; int r; -- struct blob *child = NULL; -+ pgp_blob_t *child = NULL; +- struct blob *child = NULL; ++ pgp_blob_t *child = NULL; LOG_FUNC_CALLED(card->ctx); -@@ -389,7 +389,7 @@ pgp_get_card_features(sc_card_t *card) +@@ -397,7 +397,7 @@ pgp_get_card_features(sc_card_t *card) unsigned char *hist_bytes = card->atr.value; size_t atr_len = card->atr.len; size_t i = 0; @@ -86,7 +86,7 @@ index 724fe73..ca3173c 100644 /* parse card capabilities from historical bytes */ while ((i < atr_len) && (hist_bytes[i] != 0x73)) -@@ -526,7 +526,7 @@ pgp_finish(sc_card_t *card) +@@ -534,7 +534,7 @@ pgp_finish(sc_card_t *card) /* internal: fill a blob's data */ static int @@ -95,7 +95,7 @@ index 724fe73..ca3173c 100644 { if (blob->data) free(blob->data); -@@ -620,16 +620,16 @@ pgp_attach_acl(sc_card_t *card, sc_file_t *file, struct do_info *info) +@@ -628,16 +628,16 @@ pgp_attach_acl(sc_card_t *card, sc_file_ } /* internal: append a blob to the list of children of a given parent blob */ @@ -116,7 +116,7 @@ index 724fe73..ca3173c 100644 struct pgp_priv_data *priv = DRVDATA (card); struct do_info *info; -@@ -643,7 +643,7 @@ pgp_new_blob(sc_card_t *card, struct blob *parent, unsigned int file_id, +@@ -651,7 +651,7 @@ pgp_new_blob(sc_card_t *card, struct blo blob->parent = parent; if (parent != NULL) { @@ -125,7 +125,7 @@ index 724fe73..ca3173c 100644 /* set file's path = parent's path + file's id */ blob->file->path = parent->file->path; -@@ -681,11 +681,11 @@ pgp_new_blob(sc_card_t *card, struct blob *parent, unsigned int file_id, +@@ -689,11 +689,11 @@ pgp_new_blob(sc_card_t *card, struct blo /* internal: free a blob including its content */ static void @@ -139,7 +139,7 @@ index 724fe73..ca3173c 100644 /* remove blob from list of parent's children */ for (p = &blob->parent->files; *p != NULL && *p != blob; p = &(*p)->next) -@@ -705,14 +705,14 @@ pgp_free_blob(struct blob *blob) +@@ -713,14 +713,14 @@ pgp_free_blob(struct blob *blob) /* internal: iterate through the blob tree, calling a function for each blob */ static void @@ -157,7 +157,7 @@ index 724fe73..ca3173c 100644 pgp_iterate_blobs(child, level-1, func); child = next; -@@ -725,7 +725,7 @@ pgp_iterate_blobs(struct blob *blob, int level, void (*func)()) +@@ -733,7 +733,7 @@ pgp_iterate_blobs(struct blob *blob, int /* internal: read a blob's contents from card */ static int @@ -166,7 +166,7 @@ index 724fe73..ca3173c 100644 { struct pgp_priv_data *priv = DRVDATA (card); -@@ -772,7 +772,7 @@ pgp_read_blob(sc_card_t *card, struct blob *blob) +@@ -780,7 +780,7 @@ pgp_read_blob(sc_card_t *card, struct bl * The OpenPGP card has a TLV encoding according ASN.1 BER-encoding rules. */ static int @@ -175,7 +175,7 @@ index 724fe73..ca3173c 100644 { const u8 *in; int r; -@@ -789,7 +789,7 @@ pgp_enumerate_blob(sc_card_t *card, struct blob *blob) +@@ -797,7 +797,7 @@ pgp_enumerate_blob(sc_card_t *card, stru unsigned int cla, tag, tmptag; size_t len; const u8 *data = in; @@ -184,7 +184,7 @@ index 724fe73..ca3173c 100644 r = sc_asn1_read_tag(&data, blob->len - (in - blob->data), &cla, &tag, &len); -@@ -819,10 +819,10 @@ pgp_enumerate_blob(sc_card_t *card, struct blob *blob) +@@ -827,10 +827,10 @@ pgp_enumerate_blob(sc_card_t *card, stru /* internal: find a blob by ID below a given parent, filling its contents when necessary */ static int @@ -198,7 +198,7 @@ index 724fe73..ca3173c 100644 int r; if ((r = pgp_enumerate_blob(card, blob)) < 0) -@@ -858,10 +858,10 @@ pgp_get_blob(sc_card_t *card, struct blob *blob, unsigned int id, +@@ -866,10 +866,10 @@ pgp_get_blob(sc_card_t *card, struct blo /* Internal: search recursively for a blob by ID below a given root */ static int @@ -212,7 +212,7 @@ index 724fe73..ca3173c 100644 int r; if ((r = pgp_get_blob(card, root, id, ret)) == 0) -@@ -883,11 +883,11 @@ pgp_seek_blob(sc_card_t *card, struct blob *root, unsigned int id, +@@ -891,11 +891,11 @@ pgp_seek_blob(sc_card_t *card, struct bl } /* internal: find a blob by tag - pgp_seek_blob with optimizations */ @@ -226,7 +226,7 @@ index 724fe73..ca3173c 100644 int r; /* Check if current selected blob is which we want to test*/ -@@ -941,7 +941,7 @@ static int +@@ -949,7 +949,7 @@ static int pgp_select_file(sc_card_t *card, const sc_path_t *path, sc_file_t **ret) { struct pgp_priv_data *priv = DRVDATA(card); @@ -235,7 +235,7 @@ index 724fe73..ca3173c 100644 unsigned int path_start = 0; unsigned int n; sc_path_t dummy_path; -@@ -1022,7 +1022,7 @@ static int +@@ -1030,7 +1030,7 @@ static int pgp_list_files(sc_card_t *card, u8 *buf, size_t buflen) { struct pgp_priv_data *priv = DRVDATA(card); @@ -244,7 +244,7 @@ index 724fe73..ca3173c 100644 unsigned int k; int r; -@@ -1058,7 +1058,7 @@ pgp_read_binary(sc_card_t *card, unsigned int idx, +@@ -1066,7 +1066,7 @@ pgp_read_binary(sc_card_t *card, unsigne u8 *buf, size_t count, unsigned long flags) { struct pgp_priv_data *priv = DRVDATA(card); @@ -253,7 +253,7 @@ index 724fe73..ca3173c 100644 int r; LOG_FUNC_CALLED(card->ctx); -@@ -1134,7 +1134,7 @@ static int +@@ -1142,7 +1142,7 @@ static int pgp_get_pubkey_pem(sc_card_t *card, unsigned int tag, u8 *buf, size_t buf_len) { struct pgp_priv_data *priv = DRVDATA(card); @@ -262,7 +262,7 @@ index 724fe73..ca3173c 100644 sc_pkcs15_pubkey_t pubkey; u8 *data; size_t len; -@@ -1329,7 +1329,7 @@ static int +@@ -1337,7 +1337,7 @@ static int pgp_put_data(sc_card_t *card, unsigned int tag, const u8 *buf, size_t buf_len) { struct pgp_priv_data *priv = DRVDATA(card); @@ -271,7 +271,7 @@ index 724fe73..ca3173c 100644 struct do_info *dinfo = NULL; int r; -@@ -1603,7 +1603,7 @@ static int +@@ -1611,7 +1611,7 @@ static int pgp_update_new_algo_attr(sc_card_t *card, sc_cardctl_openpgp_keygen_info_t *key_info) { struct pgp_priv_data *priv = DRVDATA(card); @@ -280,7 +280,7 @@ index 724fe73..ca3173c 100644 unsigned int old_modulus_len; /* Measured in bit */ unsigned int old_exponent_len; const unsigned int tag = 0x00C0 | key_info->keytype; -@@ -1708,7 +1708,7 @@ pgp_calculate_and_store_fingerprint(sc_card_t *card, time_t ctime, +@@ -1716,7 +1716,7 @@ pgp_calculate_and_store_fingerprint(sc_c u8 *p; /* Use this pointer to set fp_buffer content */ size_t pk_packet_len; unsigned int tag; @@ -289,7 +289,7 @@ index 724fe73..ca3173c 100644 u8 *newdata; int r; -@@ -1797,7 +1797,7 @@ pgp_update_pubkey_blob(sc_card_t *card, u8* modulus, size_t modulus_len, +@@ -1805,7 +1805,7 @@ pgp_update_pubkey_blob(sc_card_t *card, u8* exponent, size_t exponent_len, u8 key_id) { struct pgp_priv_data *priv = DRVDATA(card); @@ -298,7 +298,7 @@ index 724fe73..ca3173c 100644 unsigned int blob_id; sc_pkcs15_pubkey_t pubkey; u8 *data = NULL; -@@ -1939,6 +1939,8 @@ static int pgp_update_card_algorithms(sc_card_t *card, sc_cardctl_openpgp_keygen +@@ -1947,6 +1947,8 @@ static int pgp_update_card_algorithms(sc **/ static int pgp_gen_key(sc_card_t *card, sc_cardctl_openpgp_keygen_info_t *key_info) { @@ -307,7 +307,7 @@ index 724fe73..ca3173c 100644 sc_apdu_t apdu; /* Temporary variables to hold APDU params */ u8 apdu_case; -@@ -2132,7 +2134,7 @@ pgp_build_extended_header_list(sc_card_t *card, sc_cardctl_openpgp_keystore_info +@@ -2143,7 +2145,7 @@ pgp_build_extended_header_list(sc_card_t }; size_t comp_to_add = 3; size_t req_e_len = 0; /* The exponent length specified in Algorithm Attributes */ @@ -316,7 +316,7 @@ index 724fe73..ca3173c 100644 u8 i; int r; -@@ -2483,7 +2485,7 @@ static int +@@ -2496,7 +2498,7 @@ static int pgp_delete_file(sc_card_t *card, const sc_path_t *path) { struct pgp_priv_data *priv = DRVDATA(card); @@ -325,7 +325,7 @@ index 724fe73..ca3173c 100644 sc_file_t *file; u8 key_id; int r; -@@ -2533,7 +2535,7 @@ pgp_update_binary(sc_card_t *card, unsigned int idx, +@@ -2546,7 +2548,7 @@ pgp_update_binary(sc_card_t *card, unsig const u8 *buf, size_t count, unsigned long flags) { struct pgp_priv_data *priv = DRVDATA(card); @@ -334,6 +334,3 @@ index 724fe73..ca3173c 100644 int r = SC_SUCCESS; LOG_FUNC_CALLED(card->ctx); --- -2.1.3 - diff --git a/utils/opensc/patches/0024-OpenPGP-Fix-crash-after-accessing-inexistent-file.patch b/utils/opensc/patches/0024-OpenPGP-Fix-crash-after-accessing-inexistent-file.patch index 7d8a0ffc1..22ae5f43f 100644 --- a/utils/opensc/patches/0024-OpenPGP-Fix-crash-after-accessing-inexistent-file.patch +++ b/utils/opensc/patches/0024-OpenPGP-Fix-crash-after-accessing-inexistent-file.patch @@ -8,11 +8,11 @@ Subject: [PATCH 24/26] OpenPGP: Fix crash after accessing inexistent file. src/libopensc/card-openpgp.c | 3 --- 1 file changed, 3 deletions(-) -diff --git a/src/libopensc/card-openpgp.c b/src/libopensc/card-openpgp.c -index ca3173c..94c69ae 100644 ---- a/src/libopensc/card-openpgp.c -+++ b/src/libopensc/card-openpgp.c -@@ -973,7 +973,6 @@ pgp_select_file(sc_card_t *card, const sc_path_t *path, sc_file_t **ret) +Index: opensc-20150513/src/libopensc/card-openpgp.c +=================================================================== +--- opensc-20150513.orig/src/libopensc/card-openpgp.c ++++ opensc-20150513/src/libopensc/card-openpgp.c +@@ -981,7 +981,6 @@ pgp_select_file(sc_card_t *card, const s * So we set its size to be the same as max certificate size the card supports. */ (*ret)->size = priv->max_cert_size; } @@ -20,7 +20,7 @@ index ca3173c..94c69ae 100644 LOG_FUNC_RETURN(card->ctx, SC_SUCCESS); } -@@ -990,7 +989,6 @@ pgp_select_file(sc_card_t *card, const sc_path_t *path, sc_file_t **ret) +@@ -998,7 +997,6 @@ pgp_select_file(sc_card_t *card, const s /* This file ID is refered when importing key&certificate via pkcs15init, like above. * We pretend to successfully find this inexistent file. */ if (id == 0x4402 || id == 0x5f48) { @@ -28,7 +28,7 @@ index ca3173c..94c69ae 100644 if (ret == NULL) /* No need to return file */ LOG_FUNC_RETURN(card->ctx, SC_SUCCESS); -@@ -1002,7 +1000,6 @@ pgp_select_file(sc_card_t *card, const sc_path_t *path, sc_file_t **ret) +@@ -1010,7 +1008,6 @@ pgp_select_file(sc_card_t *card, const s } if (r < 0) { /* failure */ @@ -36,6 +36,3 @@ index ca3173c..94c69ae 100644 LOG_FUNC_RETURN(card->ctx, r); } } --- -2.1.3 - diff --git a/utils/opensc/patches/0025-Replace-hardcode.patch b/utils/opensc/patches/0025-Replace-hardcode.patch index 0eb750c34..002bec3d9 100644 --- a/utils/opensc/patches/0025-Replace-hardcode.patch +++ b/utils/opensc/patches/0025-Replace-hardcode.patch @@ -8,11 +8,11 @@ Subject: [PATCH 25/26] Replace hardcode. src/libopensc/card-openpgp.c | 72 +++++++++++++++++++++++++------------------- 1 file changed, 41 insertions(+), 31 deletions(-) -diff --git a/src/libopensc/card-openpgp.c b/src/libopensc/card-openpgp.c -index 94c69ae..1e6e338 100644 ---- a/src/libopensc/card-openpgp.c -+++ b/src/libopensc/card-openpgp.c -@@ -152,6 +152,24 @@ static int pgp_get_pubkey(sc_card_t *, unsigned int, +Index: opensc-20150513/src/libopensc/card-openpgp.c +=================================================================== +--- opensc-20150513.orig/src/libopensc/card-openpgp.c ++++ opensc-20150513/src/libopensc/card-openpgp.c +@@ -154,6 +154,24 @@ static int pgp_get_pubkey(sc_card_t *, static int pgp_get_pubkey_pem(sc_card_t *, unsigned int, u8 *, size_t); @@ -37,7 +37,7 @@ index 94c69ae..1e6e338 100644 static struct do_info pgp1_objects[] = { /* OpenPGP card spec 1.1 */ { 0x004f, SIMPLE, READ_ALWAYS | WRITE_NEVER, NULL, NULL }, { 0x005b, SIMPLE, READ_ALWAYS | WRITE_PIN3, NULL, sc_put_data }, -@@ -192,12 +210,12 @@ static struct do_info pgp1_objects[] = { /* OpenPGP card spec 1.1 */ +@@ -194,12 +212,12 @@ static struct do_info pgp1_objects[] = { 0x5f35, SIMPLE, READ_ALWAYS | WRITE_PIN3, NULL, sc_put_data }, { 0x5f50, SIMPLE, READ_ALWAYS | WRITE_PIN3, sc_get_data, sc_put_data }, { 0x7f49, CONSTRUCTED, READ_ALWAYS | WRITE_NEVER, NULL, NULL }, @@ -56,7 +56,7 @@ index 94c69ae..1e6e338 100644 { 0, 0, 0, NULL, NULL }, }; -@@ -246,30 +264,21 @@ static struct do_info pgp2_objects[] = { /* OpenPGP card spec 2.0 */ +@@ -248,30 +266,21 @@ static struct do_info pgp2_objects[] = { 0x5f52, SIMPLE, READ_ALWAYS | WRITE_NEVER, sc_get_data, NULL }, /* The 7F21 is constructed DO in spec, but in practice, its content can be retrieved * as simple DO (no need to parse TLV). */ @@ -94,7 +94,7 @@ index 94c69ae..1e6e338 100644 #define DRVDATA(card) ((struct pgp_priv_data *) ((card)->drv_data)) struct pgp_priv_data { pgp_blob_t * mf; -@@ -747,8 +756,9 @@ pgp_read_blob(sc_card_t *card, pgp_blob_t *blob) +@@ -755,8 +764,9 @@ pgp_read_blob(sc_card_t *card, pgp_blob_ /* Buffer length for Gnuk pubkey */ if (card->type == SC_CARD_TYPE_OPENPGP_GNUK && @@ -106,7 +106,7 @@ index 94c69ae..1e6e338 100644 buf_len = MAXLEN_RESP_PUBKEY_GNUK; } -@@ -1804,11 +1814,11 @@ pgp_update_pubkey_blob(sc_card_t *card, u8* modulus, size_t modulus_len, +@@ -1812,11 +1822,11 @@ pgp_update_pubkey_blob(sc_card_t *card, LOG_FUNC_CALLED(card->ctx); if (key_id == SC_OPENPGP_KEY_SIGN) @@ -121,7 +121,7 @@ index 94c69ae..1e6e338 100644 else { sc_log(card->ctx, "Unknown key id %X.", key_id); LOG_FUNC_RETURN(card->ctx, SC_ERROR_INVALID_ARGUMENTS); -@@ -2501,17 +2511,17 @@ pgp_delete_file(sc_card_t *card, const sc_path_t *path) +@@ -2514,17 +2524,17 @@ pgp_delete_file(sc_card_t *card, const s LOG_FUNC_RETURN(card->ctx, SC_ERROR_NOT_SUPPORTED); if (card->type != SC_CARD_TYPE_OPENPGP_GNUK && @@ -143,6 +143,3 @@ index 94c69ae..1e6e338 100644 r = gnuk_delete_key(card, 3); } else { --- -2.1.3 - diff --git a/utils/opensc/patches/0026-hardcode-defines-for-DO-s.patch b/utils/opensc/patches/0026-hardcode-defines-for-DO-s.patch index d106e868c..6931aa64a 100644 --- a/utils/opensc/patches/0026-hardcode-defines-for-DO-s.patch +++ b/utils/opensc/patches/0026-hardcode-defines-for-DO-s.patch @@ -7,11 +7,11 @@ Subject: [PATCH 26/26] hardcode->defines for DO's src/libopensc/card-openpgp.c | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) -diff --git a/src/libopensc/card-openpgp.c b/src/libopensc/card-openpgp.c -index 1e6e338..8464914 100644 ---- a/src/libopensc/card-openpgp.c -+++ b/src/libopensc/card-openpgp.c -@@ -164,6 +164,18 @@ static int pgp_get_pubkey_pem(sc_card_t *, unsigned int, +Index: opensc-20150513/src/libopensc/card-openpgp.c +=================================================================== +--- opensc-20150513.orig/src/libopensc/card-openpgp.c ++++ opensc-20150513/src/libopensc/card-openpgp.c +@@ -166,6 +166,18 @@ static int pgp_get_pubkey_pem(sc_card_t #define DO_SIGN_SYM 0xb601 #define DO_ENCR_SYM 0xb801 #define DO_AUTH_SYM 0xa401 @@ -30,7 +30,7 @@ index 1e6e338..8464914 100644 /* Maximum length for response buffer when reading pubkey. This value is calculated with * 4096-bit key length */ #define MAXLEN_RESP_PUBKEY 527 -@@ -851,7 +863,7 @@ pgp_get_blob(sc_card_t *card, pgp_blob_t *blob, unsigned int id, +@@ -859,7 +871,7 @@ pgp_get_blob(sc_card_t *card, pgp_blob_t /* Special case: * Gnuk does not have default value for children of DO 65 (DOs 5B, 5F2D, 5F35) * So, if these blob was not found, we create it. */ @@ -39,7 +39,7 @@ index 1e6e338..8464914 100644 sc_log(card->ctx, "Create blob %X under %X", id, blob->id); child = pgp_new_blob(card, blob, id, sc_file_new()); if (child) { -@@ -1198,7 +1210,7 @@ pgp_get_data(sc_card_t *card, unsigned int tag, u8 *buf, size_t buf_len) +@@ -1206,7 +1218,7 @@ pgp_get_data(sc_card_t *card, unsigned i /* For Gnuk card, if there is no certificate, it returns error instead of empty data. * So, for this case, we ignore error and consider success */ if (r == SC_ERROR_DATA_OBJECT_NOT_FOUND && card->type == SC_CARD_TYPE_OPENPGP_GNUK @@ -48,6 +48,3 @@ index 1e6e338..8464914 100644 r = SC_SUCCESS; apdu.resplen = 0; } --- -2.1.3 - diff --git a/utils/opensc/patches/0027-OpenPGP-Remove-unused-variables-and-fix-type-cast.patch b/utils/opensc/patches/0027-OpenPGP-Remove-unused-variables-and-fix-type-cast.patch new file mode 100644 index 000000000..742f76ac9 --- /dev/null +++ b/utils/opensc/patches/0027-OpenPGP-Remove-unused-variables-and-fix-type-cast.patch @@ -0,0 +1,82 @@ +From 99b5cb53e1da2f0d7692f28dceff8485d4b74daf Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Nguy=E1=BB=85n=20H=E1=BB=93ng=20Qu=C3=A2n?= + +Date: Wed, 10 Dec 2014 03:59:54 +0800 +Subject: [PATCH 1/2] OpenPGP: Remove unused variables and fix type cast. + +--- + src/libopensc/card-openpgp.c | 10 +++------- + src/tools/openpgp-tool.c | 4 +--- + 2 files changed, 4 insertions(+), 10 deletions(-) + +Index: opensc-20150513/src/libopensc/card-openpgp.c +=================================================================== +--- opensc-20150513.orig/src/libopensc/card-openpgp.c ++++ opensc-20150513/src/libopensc/card-openpgp.c +@@ -1966,8 +1966,6 @@ static int pgp_update_card_algorithms(sc + **/ + static int pgp_gen_key(sc_card_t *card, sc_cardctl_openpgp_keygen_info_t *key_info) + { +- struct pgp_priv_data *priv = DRVDATA(card); +- pgp_blob_t *algo_blob; + sc_apdu_t apdu; + /* Temporary variables to hold APDU params */ + u8 apdu_case; +@@ -2396,10 +2394,9 @@ static int pgp_erase_card(sc_card_t *car + {0, 0x44, 0, 0} + }; + u8 apdu_lens[10] = {13, 13, 13, 13, 13, 13, 13, 13, 4, 4}; +- u8 buf[SC_MAX_APDU_BUFFER_SIZE]; + u8 rbuf[SC_MAX_APDU_BUFFER_SIZE]; + sc_apdu_t apdu; +- int i, l, r; ++ u8 i, l, r; + + LOG_FUNC_CALLED(ctx); + +@@ -2478,7 +2475,7 @@ gnuk_delete_key(sc_card_t *card, u8 key_ + { + sc_context_t *ctx = card->ctx; + int r = SC_SUCCESS; +- u8 *data = NULL; ++ char *data = NULL; + + LOG_FUNC_CALLED(ctx); + +@@ -2506,7 +2503,7 @@ gnuk_delete_key(sc_card_t *card, u8 key_ + else if (key_id == 3) + data = "\x4D\x02\xA4"; + +- r = pgp_put_data(card, 0x4D, data, strlen(data) + 1); ++ r = pgp_put_data(card, 0x4D, (const u8 *)data, strlen((const char *)data) + 1); + + LOG_FUNC_RETURN(ctx, r); + } +@@ -2519,7 +2516,6 @@ pgp_delete_file(sc_card_t *card, const s + struct pgp_priv_data *priv = DRVDATA(card); + pgp_blob_t *blob; + sc_file_t *file; +- u8 key_id; + int r; + + LOG_FUNC_CALLED(card->ctx); +Index: opensc-20150513/src/tools/openpgp-tool.c +=================================================================== +--- opensc-20150513.orig/src/tools/openpgp-tool.c ++++ opensc-20150513/src/tools/openpgp-tool.c +@@ -473,7 +473,6 @@ int do_verify(sc_card_t *card, char *typ + **/ + int delete_key_openpgp(sc_card_t *card, u8 key_id) + { +- sc_context_t *ctx = card->ctx; + char *del_fingerprint = "00:DA:00:C6:14:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00"; + char *del_creationtime = "00:DA:00:CD:04:00:00:00:00"; + /* We need to replace the 4th byte later */ +@@ -520,7 +519,6 @@ int delete_key_openpgp(sc_card_t *card, + + int do_delete_key(sc_card_t *card, u8 key_id) + { +- sc_context_t *ctx = card->ctx; + sc_path_t path; + int r = SC_SUCCESS; + diff --git a/utils/opensc/patches/0028-openpgp-tool-Fix-wrong-operator.patch b/utils/opensc/patches/0028-openpgp-tool-Fix-wrong-operator.patch new file mode 100644 index 000000000..e423e1703 --- /dev/null +++ b/utils/opensc/patches/0028-openpgp-tool-Fix-wrong-operator.patch @@ -0,0 +1,28 @@ +From c71a453ff1e19721a9245b8a2d637eabd9f12e54 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Nguy=E1=BB=85n=20H=E1=BB=93ng=20Qu=C3=A2n?= + +Date: Thu, 11 Dec 2014 12:51:15 +0800 +Subject: [PATCH 2/2] openpgp-tool: Fix wrong operator + +Used "!=" instead of "|=" +--- + src/tools/openpgp-tool.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +Index: opensc-20150513/src/tools/openpgp-tool.c +=================================================================== +--- opensc-20150513.orig/src/tools/openpgp-tool.c ++++ opensc-20150513/src/tools/openpgp-tool.c +@@ -639,10 +639,10 @@ int main(int argc, char **argv) + } + + if (opt_delkey) +- exit_status != do_delete_key(card, key_id); ++ exit_status |= do_delete_key(card, key_id); + + if (opt_erase) +- exit_status != do_erase(card); ++ exit_status |= do_erase(card); + + out: + sc_unlock(card); From 964edd830b12884df476f9abb001478754506660 Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Wed, 13 May 2015 13:20:06 +0200 Subject: [PATCH 386/681] xl2tpd: update source, import some useful patches Yousong Zhou made a couple of useful fixes mostly for the xl2tpd-control tool which was broken. imported them (patches/2*) here. Signed-off-by: Daniel Golle --- net/xl2tpd/Makefile | 4 +- .../patches/100-makefile_opt_flags.patch | 2 +- .../patches/110-makefile_dont_build_pfc.patch | 6 +- .../patches/120-no-bsd-signal-in-musl.patch | 6 +- ...heck-end-of-file-when-reading-pipe-t.patch | 37 +++++++++++ ...efine-_GNU_SOURCE-to-use-fmemopen-an.patch | 21 +++++++ ...ol-open-control-file-with-O_NONBLOCK.patch | 37 +++++++++++ ...-place-opts-after-plugin-pppol2tp.so.patch | 62 +++++++++++++++++++ ...pd-control-cleaup-result-file-atexit.patch | 62 +++++++++++++++++++ ...ble-buffer-overflow-when-filling-str.patch | 22 +++++++ ...log-prefix-that-will-duplicate-with-.patch | 21 +++++++ 11 files changed, 270 insertions(+), 10 deletions(-) create mode 100644 net/xl2tpd/patches/201-xl2tpd-control-check-end-of-file-when-reading-pipe-t.patch create mode 100644 net/xl2tpd/patches/202-xl2tpd-control-define-_GNU_SOURCE-to-use-fmemopen-an.patch create mode 100644 net/xl2tpd/patches/203-xl2tpd-control-open-control-file-with-O_NONBLOCK.patch create mode 100644 net/xl2tpd/patches/204-start_pppd-place-opts-after-plugin-pppol2tp.so.patch create mode 100644 net/xl2tpd/patches/205-xl2tpd-control-cleaup-result-file-atexit.patch create mode 100644 net/xl2tpd/patches/206-xl2tpd-fix-possible-buffer-overflow-when-filling-str.patch create mode 100644 net/xl2tpd/patches/207-l2tp_log-remove-log-prefix-that-will-duplicate-with-.patch diff --git a/net/xl2tpd/Makefile b/net/xl2tpd/Makefile index 2a1c4a5df..29107f085 100644 --- a/net/xl2tpd/Makefile +++ b/net/xl2tpd/Makefile @@ -8,7 +8,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=xl2tpd -PKG_VERSION:=1.3.6 +PKG_VERSION:=1.3.7pre20141126 PKG_RELEASE:=1 PKG_MAINTAINER:=Daniel Golle PKG_LICENSE:=GPL-2.0 @@ -19,7 +19,7 @@ PKG_RELEASE=$(PKG_SOURCE_VERSION) PKG_SOURCE_PROTO:=git PKG_SOURCE_URL:=https://github.com/xelerance/xl2tpd.git PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) -PKG_SOURCE_VERSION:=5619e1771048e74b729804e8602f409af0f3faea +PKG_SOURCE_VERSION:=1cda2a266e2e957b81019d63a8902b28304a0ac4 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_INSTALL:=1 diff --git a/net/xl2tpd/patches/100-makefile_opt_flags.patch b/net/xl2tpd/patches/100-makefile_opt_flags.patch index 82e875d70..1af416f96 100644 --- a/net/xl2tpd/patches/100-makefile_opt_flags.patch +++ b/net/xl2tpd/patches/100-makefile_opt_flags.patch @@ -1,6 +1,6 @@ --- a/Makefile +++ b/Makefile -@@ -91,7 +91,8 @@ OSFLAGS+= -DUSE_KERNEL +@@ -97,7 +97,8 @@ OSFLAGS+= -DUSE_KERNEL IPFLAGS?= -DIP_ALLOCATION diff --git a/net/xl2tpd/patches/110-makefile_dont_build_pfc.patch b/net/xl2tpd/patches/110-makefile_dont_build_pfc.patch index 460a0f15d..f76364fa8 100644 --- a/net/xl2tpd/patches/110-makefile_dont_build_pfc.patch +++ b/net/xl2tpd/patches/110-makefile_dont_build_pfc.patch @@ -1,6 +1,6 @@ --- a/Makefile +++ b/Makefile -@@ -107,10 +107,10 @@ BINDIR?=$(DESTDIR)${PREFIX}/bin +@@ -113,10 +113,10 @@ BINDIR?=$(DESTDIR)${PREFIX}/bin MANDIR?=$(DESTDIR)${PREFIX}/share/man @@ -13,7 +13,7 @@ $(EXEC): $(OBJS) $(HDRS) $(CC) $(LDFLAGS) -o $@ $(OBJS) $(LDLIBS) -@@ -118,14 +118,10 @@ $(EXEC): $(OBJS) $(HDRS) +@@ -124,14 +124,10 @@ $(EXEC): $(OBJS) $(HDRS) $(CONTROL_EXEC): $(CONTROL_SRCS) $(CC) $(CFLAGS) $(LDFLAGS) $(CONTROL_SRCS) -o $@ @@ -29,7 +29,7 @@ install -d -m 0755 ${SBINDIR} install -m 0755 $(EXEC) ${SBINDIR}/$(EXEC) install -d -m 0755 ${MANDIR}/man5 -@@ -133,11 +129,6 @@ install: ${EXEC} pfc ${CONTROL_EXEC} +@@ -139,11 +135,6 @@ install: ${EXEC} pfc ${CONTROL_EXEC} install -m 0644 doc/xl2tpd.8 ${MANDIR}/man8/ install -m 0644 doc/xl2tpd.conf.5 doc/l2tp-secrets.5 \ ${MANDIR}/man5/ diff --git a/net/xl2tpd/patches/120-no-bsd-signal-in-musl.patch b/net/xl2tpd/patches/120-no-bsd-signal-in-musl.patch index dba544c0e..c8c4a7dd6 100644 --- a/net/xl2tpd/patches/120-no-bsd-signal-in-musl.patch +++ b/net/xl2tpd/patches/120-no-bsd-signal-in-musl.patch @@ -1,7 +1,5 @@ -Index: xl2tpd-1.3.6/xl2tpd.c -=================================================================== ---- xl2tpd-1.3.6.orig/xl2tpd.c -+++ xl2tpd-1.3.6/xl2tpd.c +--- a/xl2tpd.c ++++ b/xl2tpd.c @@ -30,7 +30,7 @@ #include #include diff --git a/net/xl2tpd/patches/201-xl2tpd-control-check-end-of-file-when-reading-pipe-t.patch b/net/xl2tpd/patches/201-xl2tpd-control-check-end-of-file-when-reading-pipe-t.patch new file mode 100644 index 000000000..52f8332cd --- /dev/null +++ b/net/xl2tpd/patches/201-xl2tpd-control-check-end-of-file-when-reading-pipe-t.patch @@ -0,0 +1,37 @@ +From 8c5853b8e22f34bc1c1acba278f7850ab7946894 Mon Sep 17 00:00:00 2001 +From: Yousong Zhou +Date: Tue, 28 Apr 2015 21:26:15 +0800 +Subject: [PATCH 1/7] xl2tpd-control: check end-of-file when reading pipe to + avoid dead loop. + +--- + xl2tpd-control.c | 11 +++++++---- + 1 file changed, 7 insertions(+), 4 deletions(-) + +--- a/xl2tpd-control.c ++++ b/xl2tpd-control.c +@@ -306,17 +306,20 @@ int read_result(int result_fd, char* buf + /*FIXME: there is a chance to hang up reading. + Should I create watching thread with timeout? + */ +- ssize_t readed; ++ ssize_t readed = 0; ++ ssize_t len; ++ + do + { +- readed = read (result_fd, buf, size); +- if (readed < 0) ++ len = read (result_fd, buf + readed, size - readed); ++ if (len < 0) + { + print_error (ERROR_LEVEL, + "error: can't read command result: %s\n", strerror (errno)); + break; + } +- } while (readed == 0); ++ readed += len; ++ } while (len > 0 && (size - readed) > 0); + buf[readed] = '\0'; + + /* scan result code */ diff --git a/net/xl2tpd/patches/202-xl2tpd-control-define-_GNU_SOURCE-to-use-fmemopen-an.patch b/net/xl2tpd/patches/202-xl2tpd-control-define-_GNU_SOURCE-to-use-fmemopen-an.patch new file mode 100644 index 000000000..d75010f9a --- /dev/null +++ b/net/xl2tpd/patches/202-xl2tpd-control-define-_GNU_SOURCE-to-use-fmemopen-an.patch @@ -0,0 +1,21 @@ +From 76f444d284c0b0a351a488954e0d39b72a0ce211 Mon Sep 17 00:00:00 2001 +From: Yousong Zhou +Date: Wed, 29 Apr 2015 10:32:37 +0800 +Subject: [PATCH 2/7] xl2tpd-control: define _GNU_SOURCE to use fmemopen() and + friends. + +--- + xl2tpd-control.c | 2 ++ + 1 file changed, 2 insertions(+) + +--- a/xl2tpd-control.c ++++ b/xl2tpd-control.c +@@ -10,6 +10,8 @@ + * + */ + ++#define _GNU_SOURCE ++ + #include + #include + #include diff --git a/net/xl2tpd/patches/203-xl2tpd-control-open-control-file-with-O_NONBLOCK.patch b/net/xl2tpd/patches/203-xl2tpd-control-open-control-file-with-O_NONBLOCK.patch new file mode 100644 index 000000000..aef1f7c15 --- /dev/null +++ b/net/xl2tpd/patches/203-xl2tpd-control-open-control-file-with-O_NONBLOCK.patch @@ -0,0 +1,37 @@ +From f7cfd36b8a93afd326c0d9378e99576c616bd3fc Mon Sep 17 00:00:00 2001 +From: Yousong Zhou +Date: Wed, 29 Apr 2015 14:21:12 +0800 +Subject: [PATCH 3/7] xl2tpd-control: open control file with O_NONBLOCK. + +Otherwise xl2tpd-control would block indefinitely in case xl2tpd is +not running. +--- + xl2tpd-control.c | 10 +++++++++- + 1 file changed, 9 insertions(+), 1 deletion(-) + +--- a/xl2tpd-control.c ++++ b/xl2tpd-control.c +@@ -246,7 +246,7 @@ int main (int argc, char *argv[]) + print_error (DEBUG_LEVEL, "command to be passed:\n%s\n", buf); + + /* try to open control file for writing */ +- int control_fd = open (control_filename, O_WRONLY, 0600); ++ int control_fd = open (control_filename, O_WRONLY | O_NONBLOCK, 0600); + if (control_fd < 0) + { + int errorno = errno; +@@ -265,6 +265,14 @@ int main (int argc, char *argv[]) + } + return -1; + } ++ ++ /* turn off O_NONBLOCK */ ++ if (fcntl (control_fd, F_SETFL, O_WRONLY) == -1) { ++ print_error (ERROR_LEVEL, ++ "Can not turn off nonblocking mode for control_fd: %s\n", ++ strerror(errno)); ++ return -2; ++ } + + /* pass command to control pipe */ + if (write (control_fd, buf, ftell (mesf)) < 0) diff --git a/net/xl2tpd/patches/204-start_pppd-place-opts-after-plugin-pppol2tp.so.patch b/net/xl2tpd/patches/204-start_pppd-place-opts-after-plugin-pppol2tp.so.patch new file mode 100644 index 000000000..1d50eaa25 --- /dev/null +++ b/net/xl2tpd/patches/204-start_pppd-place-opts-after-plugin-pppol2tp.so.patch @@ -0,0 +1,62 @@ +From 7a343f7b79b70a8e7e04b2bd465d344ad0ef4c49 Mon Sep 17 00:00:00 2001 +From: Yousong Zhou +Date: Wed, 29 Apr 2015 16:30:17 +0800 +Subject: [PATCH 4/7] start_pppd: place opts after "plugin pppol2tp.so". + +so that plugin options like pppol2tp_debug_mark can be recognized by pppd. +--- + xl2tpd.c | 21 ++++++++++----------- + 1 file changed, 10 insertions(+), 11 deletions(-) + +--- a/xl2tpd.c ++++ b/xl2tpd.c +@@ -382,7 +382,6 @@ int start_pppd (struct call *c, struct p + /* char a, b; */ + char tty[512]; + char *stropt[80]; +- struct ppp_opts *p; + #ifdef USE_KERNEL + struct sockaddr_pppol2tp sax; + int flags; +@@ -396,16 +395,7 @@ int start_pppd (struct call *c, struct p + struct call *sc; + struct tunnel *st; + +- p = opts; + stropt[0] = strdup (PPPD); +- while (p) +- { +- stropt[pos] = (char *) malloc (strlen (p->option) + 1); +- strncpy (stropt[pos], p->option, strlen (p->option) + 1); +- pos++; +- p = p->next; +- } +- stropt[pos] = NULL; + if (c->pppd > 0) + { + l2tp_log(LOG_WARNING, "%s: PPP already started on call!\n", __FUNCTION__); +@@ -467,7 +457,6 @@ int start_pppd (struct call *c, struct p + snprintf (stropt[pos], 10, "%d", c->ourcid); + pos++; + } +- stropt[pos] = NULL; + } + else + #endif +@@ -497,6 +486,16 @@ int start_pppd (struct call *c, struct p + return -EINVAL; + } + stropt[pos++] = strdup(tty); ++ } ++ ++ { ++ struct ppp_opts *p = opts; ++ while (p) ++ { ++ stropt[pos] = strdup (p->option); ++ pos++; ++ p = p->next; ++ } + stropt[pos] = NULL; + } + diff --git a/net/xl2tpd/patches/205-xl2tpd-control-cleaup-result-file-atexit.patch b/net/xl2tpd/patches/205-xl2tpd-control-cleaup-result-file-atexit.patch new file mode 100644 index 000000000..bfd01a2b6 --- /dev/null +++ b/net/xl2tpd/patches/205-xl2tpd-control-cleaup-result-file-atexit.patch @@ -0,0 +1,62 @@ +From d4a484db1684cce15966bb722644416f90253ea7 Mon Sep 17 00:00:00 2001 +From: Yousong Zhou +Date: Thu, 30 Apr 2015 13:53:11 +0800 +Subject: [PATCH 5/7] xl2tpd-control: cleaup result file atexit(). + +--- + xl2tpd-control.c | 20 +++++++++++++------- + 1 file changed, 13 insertions(+), 7 deletions(-) + +--- a/xl2tpd-control.c ++++ b/xl2tpd-control.c +@@ -35,6 +35,9 @@ + #define TUNNEL_REQUIRED 1 + #define TUNNEL_NOT_REQUIRED 0 + ++char result_filename[128]; ++int result_fd = -1; ++ + int log_level = ERROR_LEVEL; + + void print_error (int level, const char *fmt, ...); +@@ -117,6 +120,14 @@ void help() + ); + } + ++void cleanup(void) ++{ ++ /* cleaning up */ ++ if (result_fd >= 0) ++ close (result_fd); ++ unlink (result_filename); ++} ++ + int main (int argc, char *argv[]) + { + char* control_filename = NULL; +@@ -195,11 +206,11 @@ int main (int argc, char *argv[]) + FILE* mesf = fmemopen (buf, CONTROL_PIPE_MESSAGE_SIZE, "w"); + + /* create result pipe for reading */ +- char result_filename[128]; + snprintf (result_filename, 128, RESULT_FILENAME_FORMAT, getpid()); + unlink (result_filename); + mkfifo (result_filename, 0600); +- int result_fd = open (result_filename, O_RDONLY | O_NONBLOCK, 0600); ++ atexit(cleanup); ++ result_fd = open (result_filename, O_RDONLY | O_NONBLOCK, 0600); + if (result_fd < 0) + { + print_error (ERROR_LEVEL, +@@ -293,11 +304,6 @@ int main (int argc, char *argv[]) + ); + printf ("%s", rbuf); + +- /* cleaning up */ +- +- close (result_fd); +- unlink (result_filename); +- + return command_result_code; + } + diff --git a/net/xl2tpd/patches/206-xl2tpd-fix-possible-buffer-overflow-when-filling-str.patch b/net/xl2tpd/patches/206-xl2tpd-fix-possible-buffer-overflow-when-filling-str.patch new file mode 100644 index 000000000..6110b0c5b --- /dev/null +++ b/net/xl2tpd/patches/206-xl2tpd-fix-possible-buffer-overflow-when-filling-str.patch @@ -0,0 +1,22 @@ +From 1e8b82388578a622c5caf8fa04c238fdd7808ecc Mon Sep 17 00:00:00 2001 +From: Yousong Zhou +Date: Thu, 30 Apr 2015 13:53:40 +0800 +Subject: [PATCH 6/7] xl2tpd: fix possible buffer overflow when filling + stropt[]. + +--- + xl2tpd.c | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +--- a/xl2tpd.c ++++ b/xl2tpd.c +@@ -490,7 +490,8 @@ int start_pppd (struct call *c, struct p + + { + struct ppp_opts *p = opts; +- while (p) ++ int maxn_opts = sizeof(stropt) / sizeof(stropt[0]) - 1; ++ while (p && pos < maxn_opts) + { + stropt[pos] = strdup (p->option); + pos++; diff --git a/net/xl2tpd/patches/207-l2tp_log-remove-log-prefix-that-will-duplicate-with-.patch b/net/xl2tpd/patches/207-l2tp_log-remove-log-prefix-that-will-duplicate-with-.patch new file mode 100644 index 000000000..d513a5820 --- /dev/null +++ b/net/xl2tpd/patches/207-l2tp_log-remove-log-prefix-that-will-duplicate-with-.patch @@ -0,0 +1,21 @@ +From 44ced2bbf1d6b39bb36c3cb8be6e40c8764e2e8a Mon Sep 17 00:00:00 2001 +From: Yousong Zhou +Date: Thu, 30 Apr 2015 13:57:36 +0800 +Subject: [PATCH 7/7] l2tp_log: remove log prefix that will duplicate with + procd. + +--- + misc.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +--- a/misc.c ++++ b/misc.c +@@ -61,7 +61,7 @@ void l2tp_log (int level, const char *fm + init_log(); + SYSLOG_CALL( syslog (level, "%s", buf) ); + } else { +- fprintf(stderr, "xl2tpd[%d]: %s", getpid(), buf); ++ fprintf(stderr, "%s", buf); + } + } + From 386d09b7d8482c0aa1f7dcd9672c6067eded2eba Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Wed, 13 May 2015 13:34:36 +0200 Subject: [PATCH 387/681] debootstrap: fix wrong source MD5 Signed-off-by: Daniel Golle --- admin/debootstrap/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/admin/debootstrap/Makefile b/admin/debootstrap/Makefile index de8f1da85..629f221d4 100644 --- a/admin/debootstrap/Makefile +++ b/admin/debootstrap/Makefile @@ -15,7 +15,7 @@ PKG_MAINTAINER=Daniel Golle PKG_SOURCE:=$(PKG_NAME)-udeb_$(PKG_VERSION)_all.udeb PKG_SOURCE_URL:=http://ftp.debian.org/debian/pool/main/d/debootstrap -PKG_MD5SUM:=0f0ce1195a08f2809673d8e867fa61e6 +PKG_MD5SUM:=b7e98013966e595ba50230f60efe7cbe PKG_LICENSE:=Unique PKG_LICENSE_FILES:=debian/copyright From b47fe96be480fd68c23642498f8a72b86613a0ae Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Wed, 13 May 2015 13:39:15 +0200 Subject: [PATCH 388/681] libowfat: fix download URL Signed-off-by: Daniel Golle --- libs/libowfat/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libs/libowfat/Makefile b/libs/libowfat/Makefile index 12f000bd4..01bd25a1f 100644 --- a/libs/libowfat/Makefile +++ b/libs/libowfat/Makefile @@ -14,7 +14,7 @@ PKG_VERSION:=$(LOWFAT_VERSION) PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz -PKG_SOURCE_URL:=http://dl.fefe.de +PKG_SOURCE_URL:=http://www.fefe.de/libowfat PKG_MD5SUM:=f0119532ea834ce9e80afe49d7d85512 PKG_MAINTAINER:=Daniel Golle PKG_LICENSE:=GPL-2.0 From d4381c289f8d12d7eabb5847234743edc03161ba Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Wed, 13 May 2015 16:12:04 +0200 Subject: [PATCH 389/681] xl2tpd: fix a minor compiler warning gcc complains about atexit() being implicitely defined in xl2tpd-control.c Fix that by including stdlib.h in xl2tpd-control.c Signed-off-by: Daniel Golle --- .../250-xl2tpd-control-atexit-needs-stdlib.patch | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 net/xl2tpd/patches/250-xl2tpd-control-atexit-needs-stdlib.patch diff --git a/net/xl2tpd/patches/250-xl2tpd-control-atexit-needs-stdlib.patch b/net/xl2tpd/patches/250-xl2tpd-control-atexit-needs-stdlib.patch new file mode 100644 index 000000000..e4dad8e8d --- /dev/null +++ b/net/xl2tpd/patches/250-xl2tpd-control-atexit-needs-stdlib.patch @@ -0,0 +1,12 @@ +Index: xl2tpd-1.3.7pre20141126/xl2tpd-control.c +=================================================================== +--- xl2tpd-1.3.7pre20141126.orig/xl2tpd-control.c ++++ xl2tpd-1.3.7pre20141126/xl2tpd-control.c +@@ -12,6 +12,7 @@ + + #define _GNU_SOURCE + ++#include + #include + #include + #include From 552f24a63fecae6b7061b769f0cd56ea964c2f72 Mon Sep 17 00:00:00 2001 From: Alex Samorukov Date: Wed, 13 May 2015 18:10:59 +0000 Subject: [PATCH 390/681] Add lxc-device applet Signed-off-by: Alex Samorukov --- utils/lxc/Makefile | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/utils/lxc/Makefile b/utils/lxc/Makefile index 214e83b07..a429e41d0 100644 --- a/utils/lxc/Makefile +++ b/utils/lxc/Makefile @@ -28,7 +28,8 @@ include $(INCLUDE_DIR)/package.mk LXC_APPLETS_BIN += \ attach autostart cgroup clone config console create destroy execute \ - freeze info monitor snapshot start stop unfreeze unshare usernsexec wait + freeze info monitor snapshot start stop unfreeze unshare usernsexec wait \ + device LXC_APPLETS_LIB += \ monitord user-nic From 69aef5a4d5ac4866b7444f87887ec5b386c742b1 Mon Sep 17 00:00:00 2001 From: Ted Hess Date: Thu, 14 May 2015 14:24:18 -0400 Subject: [PATCH 391/681] lzmq: Use smaller .tar.gz source package Signed-off-by: Ted Hess --- lang/lzmq/Makefile | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/lang/lzmq/Makefile b/lang/lzmq/Makefile index bc1587ee9..a62d7e075 100644 --- a/lang/lzmq/Makefile +++ b/lang/lzmq/Makefile @@ -9,13 +9,13 @@ include $(TOPDIR)/rules.mk PKG_NAME:=lzmq PKG_VERSION:=0.4.2 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_MAINTAINER:=Dirk Chang PKG_LICENSE:=MIT -PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).zip -PKG_SOURCE_URL:=https://codeload.github.com/zeromq/lzmq/zip/v0.4.2? -PKG_MD5SUM:=6789895c925e7eb9036e526181ec1a33 +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz +PKG_SOURCE_URL:=https://codeload.github.com/zeromq/lzmq/tar.gz/v0.4.2? +PKG_MD5SUM:=ec9e15bd1495f4c87959fe22a368523d include $(INCLUDE_DIR)/package.mk include $(INCLUDE_DIR)/cmake.mk From 877469ccfe8067464999aa4375617b3eeaba7963 Mon Sep 17 00:00:00 2001 From: Ted Hess Date: Thu, 14 May 2015 14:28:23 -0400 Subject: [PATCH 392/681] zmq: Make CurveZMQ security (libsodium) optional, cleanup descrition and dependencies Signed-off-by: Ted Hess --- libs/zmq/Makefile | 32 +++++++++++++++----------------- 1 file changed, 15 insertions(+), 17 deletions(-) diff --git a/libs/zmq/Makefile b/libs/zmq/Makefile index b94db1939..515d6face 100644 --- a/libs/zmq/Makefile +++ b/libs/zmq/Makefile @@ -11,7 +11,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=zeromq PKG_VERSION:=4.0.5 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_MAINTAINER:=Dirk Chang PKG_LICENSE:=GPL-3.0+ PKG_LICENSE_FILES:=LICENCE.txt @@ -31,28 +31,26 @@ PKG_INSTALL:=1 include $(INCLUDE_DIR)/uclibc++.mk include $(INCLUDE_DIR)/package.mk -define Package/libzmq/Default - TITLE:=ZeroMQ - Code Connected - URL:=http://www.zeromq.org/ -endef - -define Package/libzmq/Default/description - A replacment for raw socket developing library -endef - define Package/libzmq - $(call Package/libzmq/Default) + TITLE:=ZeroMQ - Message Queue engine + URL:=http://www.zeromq.org/ SECTION:=libs CATEGORY:=Libraries - DEPENDS:=+libuuid +libpthread +librt +libsodium $(CXX_DEPENDS) - TITLE+= (library) - URL:= + DEPENDS:=+libuuid +libpthread +librt +PACKAGE_libsodium:libsodium $(CXX_DEPENDS) + MENU:=1 +endef + +define Package/libzmq/config + config LIBZMQ_CURVEZMQ + bool "Include support for CurveZMQ security" + depends on PACKAGE_libzmq + default y + select PACKAGE_libsodium endef define Package/libzmq/description - $(call Package/libzmq/Default/description) - This package contains the ZeroMQ shared library, used by other - programs. + This package contains the ZeroMQ messaging engine shared library. + CurveZMQ security protocols are optional using libsodium. endef # add extra configure flags here From 851c9c9da733f43f85c2c874e8cd239179eeea6c Mon Sep 17 00:00:00 2001 From: Charles Lehner Date: Sat, 2 May 2015 09:40:43 -0400 Subject: [PATCH 393/681] ncdu: update to 1.11 - Add patch to get WEXITSTATUS and WIFEXITED defined The issue is fixed in upstream's development repo, so the patch won't be needed with ncdu's next release. - Depend on more commonly used libncurses instead of libncursesw - Enable parallel build - Update copyright Signed-off-by: Charles Lehner --- utils/ncdu/Makefile | 11 +++++++---- utils/ncdu/patches/010-add_sys_wait.patch | 10 ++++++++++ 2 files changed, 17 insertions(+), 4 deletions(-) create mode 100644 utils/ncdu/patches/010-add_sys_wait.patch diff --git a/utils/ncdu/Makefile b/utils/ncdu/Makefile index edd852758..39f6b78ef 100644 --- a/utils/ncdu/Makefile +++ b/utils/ncdu/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2014 OpenWrt.org +# Copyright (C) 2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -8,14 +8,15 @@ include $(TOPDIR)/rules.mk PKG_NAME:=ncdu -PKG_VERSION:=1.10 +PKG_VERSION:=1.11 PKG_RELEASE=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://dev.yorhel.nl/download -PKG_MD5SUM:=7535decc8d54eca811493e82d4bfab2d +PKG_MD5SUM:=9e44240a5356b029f05f0e70a63c4d12 PKG_INSTALL:=1 +PKG_BUILD_PARALLEL:=1 PKG_LICENSE:=MIT PKG_LICENSE_FILES:=COPYING @@ -26,7 +27,7 @@ define Package/ncdu SUBMENU:=Filesystem SECTION:=utils CATEGORY:=Utilities - DEPENDS:=+libncursesw + DEPENDS:=+libncurses TITLE:=ncurses disk usage viewer MAINTAINER:=Charles Lehner URL:=http://dev.yorhel.nl/ncdu @@ -38,6 +39,8 @@ define Package/ncdu/description directories and show percentages of disk usage with ncurses library. endef +CONFIGURE_ARGS += --with-ncurses + define Package/ncdu/install $(INSTALL_DIR) $(1)/usr/bin $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/ncdu $(1)/usr/bin/ diff --git a/utils/ncdu/patches/010-add_sys_wait.patch b/utils/ncdu/patches/010-add_sys_wait.patch new file mode 100644 index 000000000..dfc06117e --- /dev/null +++ b/utils/ncdu/patches/010-add_sys_wait.patch @@ -0,0 +1,10 @@ +--- a/src/shell.c ++++ b/src/shell.c +@@ -33,6 +33,7 @@ + #include + #include ++#include + + void shell_draw() { + char *full_path; + int res; From 264b65a41bcd5df4641e5968a6f3ccec44285064 Mon Sep 17 00:00:00 2001 From: Luka Perkov Date: Fri, 15 May 2015 02:31:19 +0200 Subject: [PATCH 394/681] pptpd: import from old packages Signed-off-by: Luka Perkov --- net/pptpd/Makefile | 69 ++++++++++++++++++++ net/pptpd/files/options.pptpd | 22 +++++++ net/pptpd/files/pptpd.conf | 5 ++ net/pptpd/files/pptpd.config | 8 +++ net/pptpd/files/pptpd.init | 58 ++++++++++++++++ net/pptpd/patches/001-bad_pqueue_debug.patch | 18 +++++ net/pptpd/patches/002-makefile_fix.patch | 11 ++++ net/pptpd/patches/003-opt_flags.patch | 11 ++++ 8 files changed, 202 insertions(+) create mode 100644 net/pptpd/Makefile create mode 100644 net/pptpd/files/options.pptpd create mode 100644 net/pptpd/files/pptpd.conf create mode 100644 net/pptpd/files/pptpd.config create mode 100644 net/pptpd/files/pptpd.init create mode 100644 net/pptpd/patches/001-bad_pqueue_debug.patch create mode 100644 net/pptpd/patches/002-makefile_fix.patch create mode 100644 net/pptpd/patches/003-opt_flags.patch diff --git a/net/pptpd/Makefile b/net/pptpd/Makefile new file mode 100644 index 000000000..a2fb91fa9 --- /dev/null +++ b/net/pptpd/Makefile @@ -0,0 +1,69 @@ +# +# Copyright (C) 2006-2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=pptpd +PKG_VERSION:=1.4.0 +PKG_RELEASE:=1 + +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz +PKG_SOURCE_URL:=@SF/poptop +PKG_MD5SUM:=36f9f45c6ffa92bc3b6e24ae2d053505 + +PKG_INSTALL:=1 +PKG_BUILD_PARALLEL:=1 + +PKG_MAINTAINER:=Luka Perkov + +include $(INCLUDE_DIR)/package.mk + +define Package/pptpd + SECTION:=net + CATEGORY:=Network + DEPENDS:=+kmod-ppp +kmod-gre +kmod-mppe +ppp + TITLE:=PopTop pptp server + URL:=http://poptop.sourceforge.net/ + SUBMENU:=VPN +endef + +CONFIGURE_ARGS += \ + --enable-bcrelay \ + +CONFIGURE_VARS += \ + ac_cv_header_libintl_h=no \ + +MAKE_FLAGS += \ + COPTS="$(TARGET_CFLAGS)" \ + INSTALL="install" \ + +define Package/pptpd/conffiles +/etc/pptpd.conf +/etc/ppp/options.pptpd +/etc/config/pptpd +endef + +define Package/pptpd/install + $(INSTALL_DIR) $(1)/usr/sbin + $(CP) \ + $(PKG_INSTALL_DIR)/usr/sbin/bcrelay \ + $(PKG_INSTALL_DIR)/usr/sbin/pptpctrl \ + $(PKG_INSTALL_DIR)/usr/sbin/pptpd \ + $(1)/usr/sbin/ + $(INSTALL_DIR) $(1)/usr/lib/pptpd + $(CP) $(PKG_INSTALL_DIR)/usr/lib/pptpd/* $(1)/usr/lib/pptpd/ + $(INSTALL_DIR) $(1)/etc + $(INSTALL_DATA) ./files/pptpd.conf $(1)/etc/ + $(INSTALL_DIR) $(1)/etc/init.d + $(INSTALL_BIN) ./files/pptpd.init $(1)/etc/init.d/pptpd + $(INSTALL_DIR) $(1)/etc/ppp + $(INSTALL_DATA) ./files/options.pptpd $(1)/etc/ppp/ + $(INSTALL_DIR) $(1)/etc/config + $(INSTALL_DATA) ./files/pptpd.config $(1)/etc/config/pptpd +endef + +$(eval $(call BuildPackage,pptpd)) diff --git a/net/pptpd/files/options.pptpd b/net/pptpd/files/options.pptpd new file mode 100644 index 000000000..f73eeea23 --- /dev/null +++ b/net/pptpd/files/options.pptpd @@ -0,0 +1,22 @@ +#debug +#logfile /tmp/pptp-server.log +auth +name "pptp-server" +lcp-echo-failure 3 +lcp-echo-interval 60 +default-asyncmap +mtu 1482 +mru 1482 +nobsdcomp +nodeflate +#noproxyarp +#nomppc +mppe required,no40,no56,stateless +require-mschap-v2 +refuse-chap +refuse-mschap +refuse-eap +refuse-pap +#ms-dns 172.16.1.1 +#plugin radius.so +#radius-config-file /etc/radius.conf diff --git a/net/pptpd/files/pptpd.conf b/net/pptpd/files/pptpd.conf new file mode 100644 index 000000000..354745f59 --- /dev/null +++ b/net/pptpd/files/pptpd.conf @@ -0,0 +1,5 @@ +#debug +option /etc/ppp/options.pptpd +speed 115200 +stimeout 10 +#localip & remoteip are not needed, ip management is done by pppd diff --git a/net/pptpd/files/pptpd.config b/net/pptpd/files/pptpd.config new file mode 100644 index 000000000..b2d5df5d7 --- /dev/null +++ b/net/pptpd/files/pptpd.config @@ -0,0 +1,8 @@ +config service 'pptpd' + option 'enabled' '0' + option 'localip' '192.168.0.1' + option 'remoteip' '192.168.0.20-30' + +config 'login' + option 'username' 'youruser' + option 'password' 'yourpass' diff --git a/net/pptpd/files/pptpd.init b/net/pptpd/files/pptpd.init new file mode 100644 index 000000000..0d0639fee --- /dev/null +++ b/net/pptpd/files/pptpd.init @@ -0,0 +1,58 @@ +#!/bin/sh /etc/rc.common +# Copyright (C) 2006 OpenWrt.org + +START=60 +BIN=/usr/sbin/pptpd +DEFAULT=/etc/default/$BIN +RUN_D=/var/run +PID_F=$RUN_D/$BIN.pid +CONFIG=/var/etc/pptpd.conf +CHAP_SECRETS=/var/etc/chap-secrets + +setup_login() { + local section="$1" + + config_get username "$section" username + config_get password "$section" password + [ -n "$username" ] || return 0 + [ -n "$password" ] || return 0 + + echo "$username pptp-server $password *" >> $CHAP_SECRETS +} + +setup_config() { + local section="$1" + + config_get enabled "$section" enabled + [ "$enabled" -eq 0 ] && return 1 + + mkdir -p /var/etc + cp /etc/pptpd.conf $CONFIG + + config_get localip "$section" localip + config_get remoteip "$section" remoteip + [ -n "$localip" ] && echo "localip $localip" >> $CONFIG + [ -n "$remoteip" ] && echo "remoteip $remoteip" >> $CONFIG + return 0 +} + +start_pptpd() { + [ -f $DEFAULT ] && . $DEFAULT + mkdir -p $RUN_D + for m in arc4 sha1_generic slhc crc-ccitt ppp_generic ppp_async ppp_mppe; do + insmod $m >/dev/null 2>&1 + done + ln -sfn $CHAP_SECRETS /etc/ppp/chap-secrets + service_start $BIN $OPTIONS -c $CONFIG +} + +start() { + config_load pptpd + setup_config pptpd || return + config_foreach setup_login login + start_pptpd +} + +stop() { + service_stop $BIN +} diff --git a/net/pptpd/patches/001-bad_pqueue_debug.patch b/net/pptpd/patches/001-bad_pqueue_debug.patch new file mode 100644 index 000000000..50d525284 --- /dev/null +++ b/net/pptpd/patches/001-bad_pqueue_debug.patch @@ -0,0 +1,18 @@ +--- a/pqueue.c ++++ b/pqueue.c +@@ -7,13 +7,11 @@ + #include "pqueue.h" + + #ifdef DEBUG_PQUEUE +-#define DEBUG_ON 1 ++#define DEBUG_CMD(_a) { _a } + #else +-#define DEBUG_ON 0 ++#define DEBUG_CMD(_a) + #endif + +-#define DEBUG_CMD(_a) if (DEBUG_ON) { _a } +- + #define MIN_CAPACITY 128 /* min allocated buffer for a packet */ + + static int pqueue_alloc (int seq, unsigned char *packet, int packlen, pqueue_t **new); diff --git a/net/pptpd/patches/002-makefile_fix.patch b/net/pptpd/patches/002-makefile_fix.patch new file mode 100644 index 000000000..74e333509 --- /dev/null +++ b/net/pptpd/patches/002-makefile_fix.patch @@ -0,0 +1,11 @@ +--- a/plugins/Makefile ++++ b/plugins/Makefile +@@ -18,7 +18,7 @@ all: $(PLUGINS) + %.so: %.c + $(CC) -o $@ $(LDFLAGS) $(CFLAGS) $^ $(LDADD) + +-LIBDIR ?= $(DESTDIR)$(prefix)/lib/pptpd ++LIBDIR = $(DESTDIR)$(prefix)/lib/pptpd + + install: $(PLUGINS) + $(INSTALL) -d $(LIBDIR) diff --git a/net/pptpd/patches/003-opt_flags.patch b/net/pptpd/patches/003-opt_flags.patch new file mode 100644 index 000000000..cc136c516 --- /dev/null +++ b/net/pptpd/patches/003-opt_flags.patch @@ -0,0 +1,11 @@ +--- a/Makefile.in ++++ b/Makefile.in +@@ -153,7 +153,7 @@ AUTOMAKE = @AUTOMAKE@ + AWK = @AWK@ + CC = @CC@ + CCDEPMODE = @CCDEPMODE@ +-CFLAGS = -O2 -fno-builtin -Wall -DSBINDIR='"$(sbindir)"' ++CFLAGS = $(COPTS) -fno-builtin -Wall -DSBINDIR='"$(sbindir)"' + CPP = @CPP@ + CPPFLAGS = @CPPFLAGS@ + CYGPATH_W = @CYGPATH_W@ From 2925a16a833a8502bf77771924ee222c6d8a123c Mon Sep 17 00:00:00 2001 From: Cezary Jackiewicz Date: Fri, 15 May 2015 07:55:33 +0200 Subject: [PATCH 395/681] usbip: import from old packages --- net/usbip/Makefile | 107 ++++++++ net/usbip/patches/001-upstream_svn_r99.diff | 11 + net/usbip/patches/002-upstream_svn_r152.patch | 229 ++++++++++++++++++ 3 files changed, 347 insertions(+) create mode 100644 net/usbip/Makefile create mode 100644 net/usbip/patches/001-upstream_svn_r99.diff create mode 100644 net/usbip/patches/002-upstream_svn_r152.patch diff --git a/net/usbip/Makefile b/net/usbip/Makefile new file mode 100644 index 000000000..ee8ebc91e --- /dev/null +++ b/net/usbip/Makefile @@ -0,0 +1,107 @@ +# +# Copyright (C) 2010-2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk +include $(INCLUDE_DIR)/kernel.mk + +PKG_NAME:=usbip +PKG_RELEASE:=4 + +# Since kernel 2.6.39.1 userspace tools are inside the kernel tree +# Package Automatic match version in kernel +# MD5SUM is not useful kernel package already check it +PKG_VERSION:=$(shell sed -n -e '/^AC_INIT/s/.*\[\([[:digit:]\.]*\)\].*/\1/gp' $(LINUX_DIR)/tools/usb/usbip/configure.ac) +PKG_SOURCE:= +PKG_SOURCE_URL:= +PKG_MD5SUM:=unknown + +PKG_MAINTAINER:=Nuno Goncalves + +PATCH_DIR:=./patches-$(PKG_VERSION) + +define prepare_source_directory + rm -rf $(PKG_BUILD_DIR) + $(CP) $(LINUX_DIR)/tools/usb/usbip $(PKG_BUILD_DIR) +endef +Hooks/Prepare/Pre += prepare_source_directory + +PKG_BUILD_DEPENDS:=udev +PKG_FIXUP:=autoreconf +PKG_INSTALL:=1 + +include $(INCLUDE_DIR)/package.mk +include $(INCLUDE_DIR)/nls.mk + +define Package/usbip/Common + TITLE:=USB-over-IP + URL:=http://usbip.sourceforge.net/ + DEPENDS:=@USB_SUPPORT +endef + +define Package/usbip/Default + $(call Package/usbip/Common) + SECTION:=net + CATEGORY:=Network +endef + +define Package/usbip + $(call Package/usbip/Default) + TITLE+= (common) + DEPENDS+= +libwrap +kmod-usbip +udev +endef + +define Package/usbip-client + $(call Package/usbip/Default) + TITLE+= (client) + DEPENDS+= usbip +kmod-usbip-client +endef + +define Package/usbip-server + $(call Package/usbip/Default) + TITLE+= (server) + DEPENDS+= usbip +kmod-usbip-server +endef + +CONFIGURE_PATH:=. +MAKE_PATH:=. +LIBTOOL_PATHS:=. +MAKE_FLAGS+=CFLAGS="-Wno-implicit-function-declaration" + +define Build/Configure + (cd $(PKG_BUILD_DIR); ./autogen.sh ); + $(call Build/Configure/Default) +endef + +CFLAGS+="$(TARGET_CFLAGS) -I$(STAGING_DIR)/usr/include" + +define Download/usb.ids + URL:=http://www.linux-usb.org/ + FILE:=usb.ids + MD5SUM:= +endef + +define Package/usbip/install + $(INSTALL_DIR) $(1)/usr/lib + $(CP) $(PKG_INSTALL_DIR)/usr/lib/libusbip.so.* $(1)/usr/lib/ + $(INSTALL_DIR) $(1)/usr/share/hwdata + $(CP) $(DL_DIR)/usb.ids $(1)/usr/share/hwdata/ +endef + +define Package/usbip-client/install + $(INSTALL_DIR) $(1)/usr/sbin + $(CP) $(PKG_INSTALL_DIR)/usr/sbin/usbip $(1)/usr/sbin/ +endef + +define Package/usbip-server/install + $(INSTALL_DIR) $(1)/usr/sbin + $(CP) $(PKG_INSTALL_DIR)/usr/sbin/usbipd $(1)/usr/sbin/ +endef + +$(eval $(call Download,usb.ids)) +$(eval $(call BuildPackage,usbip)) +$(eval $(call BuildPackage,usbip-client)) +$(eval $(call BuildPackage,usbip-server)) diff --git a/net/usbip/patches/001-upstream_svn_r99.diff b/net/usbip/patches/001-upstream_svn_r99.diff new file mode 100644 index 000000000..aa193e136 --- /dev/null +++ b/net/usbip/patches/001-upstream_svn_r99.diff @@ -0,0 +1,11 @@ +Index: trunk/src/cmd/Makefile.am +=================================================================== +--- trunk/src/cmd/Makefile.am (revision 98) ++++ trunk/src/cmd/Makefile.am (revision 99) +@@ -17,5 +17,5 @@ + INCLUDES = -I$(top_srcdir)/lib + LDADD = ../lib/libusbip.la @PACKAGE_LIBS@ + EXTRA_CFLAGS = @EXTRA_CFLAGS@ +-AM_CFLAGS = -Wall -W -Wstrict-prototypes -std=gnu99 $(EXTRA_CFLAGS) @PACKAGE_CFLAGS@ ++AM_CFLAGS = -Wall -W -Wstrict-prototypes -std=gnu99 $(EXTRA_CFLAGS) @PACKAGE_CFLAGS@ -DUSBIDS_FILE='"@USBIDS_DIR@/usb.ids"' + diff --git a/net/usbip/patches/002-upstream_svn_r152.patch b/net/usbip/patches/002-upstream_svn_r152.patch new file mode 100644 index 000000000..e7135a66c --- /dev/null +++ b/net/usbip/patches/002-upstream_svn_r152.patch @@ -0,0 +1,229 @@ +--- a/drivers/head/stub_dev.c ++++ b/drivers/head/stub_dev.c +@@ -398,7 +398,11 @@ static int stub_probe(struct usb_interfa + { + struct usb_device *udev = interface_to_usbdev(interface); + struct stub_device *sdev = NULL; ++#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,30) + char *udev_busid = interface->dev.parent->bus_id; ++#else ++ char *udev_busid = dev_name(interface->dev.parent); ++#endif + int err = 0; + + udbg("Enter\n"); +--- a/drivers/head/stub_main.c ++++ b/drivers/head/stub_main.c +@@ -252,18 +252,17 @@ static int __init usb_stub_init(void) + return -ENOMEM; + } + ++ info(DRIVER_DESC "" DRIVER_VERSION); ++ ++ memset(busid_table, 0, sizeof(busid_table)); ++ spin_lock_init(&busid_table_lock); ++ + ret = usb_register(&stub_driver); + if (ret) { + uerr("usb_register failed %d\n", ret); + return ret; + } + +- +- info(DRIVER_DESC "" DRIVER_VERSION); +- +- memset(busid_table, 0, sizeof(busid_table)); +- spin_lock_init(&busid_table_lock); +- + ret = driver_create_file(&stub_driver.drvwrap.driver, &driver_attr_match_busid); + + if (ret) { +--- a/drivers/head/stub_rx.c ++++ b/drivers/head/stub_rx.c +@@ -159,7 +159,11 @@ static int tweak_set_configuration_cmd(s + * A user may need to set a special configuration value before + * exporting the device. + */ ++#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,30) + uinfo("set_configuration (%d) to %s\n", config, urb->dev->dev.bus_id); ++#else ++ uinfo("set_configuration (%d) to %s\n", config, dev_name(&urb->dev->dev)); ++#endif + uinfo("but, skip!\n"); + + return 0; +@@ -177,7 +181,11 @@ static int tweak_reset_device_cmd(struct + value = le16_to_cpu(req->wValue); + index = le16_to_cpu(req->wIndex); + ++#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,30) + uinfo("reset_device (port %d) to %s\n", index, urb->dev->dev.bus_id); ++#else ++ uinfo("reset_device (port %d) to %s\n", index, dev_name(&urb->dev->dev)); ++#endif + + /* all interfaces should be owned by usbip driver, so just reset it. */ + ret = usb_lock_device_for_reset(urb->dev, NULL); +@@ -187,7 +195,11 @@ static int tweak_reset_device_cmd(struct + } + + /* try to reset the device */ +- ret = usb_reset_composite_device(urb->dev, NULL); ++#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,27) ++ ret = usb_reset_composite_device(urb->dev, NULL); ++#else ++ ret = usb_reset_device(urb->dev); ++#endif + if (ret < 0) + uerr("device reset\n"); + +--- a/drivers/head/usbip_common.c ++++ b/drivers/head/usbip_common.c +@@ -55,10 +55,7 @@ static ssize_t show_flag(struct device * + static ssize_t store_flag(struct device *dev, struct device_attribute *attr, + const char *buf, size_t count) + { +- unsigned long flag; +- +- sscanf(buf, "%lx", &flag); +- usbip_debug_flag = flag; ++ sscanf(buf, "%lx", &usbip_debug_flag); + + return count; + } +@@ -390,7 +387,7 @@ int usbip_thread(void *param) + unlock_kernel(); + + /* srv.rb must wait for rx_thread starting */ +- complete(&ut->thread_done); ++ complete(&ut->thread_started); + + /* start of while loop */ + ut->loop_ops(ut); +@@ -403,15 +400,21 @@ int usbip_thread(void *param) + + void usbip_start_threads(struct usbip_device *ud) + { ++ + /* + * threads are invoked per one device (per one connection). + */ ++ INIT_COMPLETION(ud->tcp_rx.thread_started); ++ INIT_COMPLETION(ud->tcp_tx.thread_started); ++ INIT_COMPLETION(ud->tcp_rx.thread_done); ++ INIT_COMPLETION(ud->tcp_tx.thread_done); ++ + kernel_thread((int(*)(void *))usbip_thread, (void *)&ud->tcp_rx, 0); + kernel_thread((int(*)(void *))usbip_thread, (void *)&ud->tcp_tx, 0); + + /* confirm threads are starting */ +- wait_for_completion(&ud->tcp_rx.thread_done); +- wait_for_completion(&ud->tcp_tx.thread_done); ++ wait_for_completion(&ud->tcp_rx.thread_started); ++ wait_for_completion(&ud->tcp_tx.thread_started); + } + EXPORT_SYMBOL(usbip_start_threads); + +@@ -436,6 +439,7 @@ void usbip_task_init(struct usbip_task * + void (*loop_ops)(struct usbip_task *)) + { + ut->thread = NULL; ++ init_completion(&ut->thread_started); + init_completion(&ut->thread_done); + ut->name = name; + ut->loop_ops = loop_ops; +--- a/drivers/head/usbip_event.c ++++ b/drivers/head/usbip_event.c +@@ -38,7 +38,7 @@ void usbip_start_eh(struct usbip_device + + kernel_thread((int(*)(void *)) usbip_thread, (void *) eh, 0); + +- wait_for_completion(&eh->thread_done); ++ wait_for_completion(&eh->thread_started); + } + EXPORT_SYMBOL(usbip_start_eh); + +--- a/drivers/head/vhci_hcd.c ++++ b/drivers/head/vhci_hcd.c +@@ -58,7 +58,7 @@ static void vhci_stop(struct usb_hcd *hc + static int vhci_get_frame_number(struct usb_hcd *hcd); + + static const char driver_name[] = "vhci_hcd"; +-static const char driver_desc[] = "USB/IP Virtual Host Contoroller"; ++static const char driver_desc[] = "USB/IP Virtual Host Controller"; + + + +@@ -416,14 +416,6 @@ static int vhci_hub_control(struct usb_h + case USB_PORT_FEAT_SUSPEND: + dbg_vhci_rh(" SetPortFeature: USB_PORT_FEAT_SUSPEND\n"); + uerr(" not yet\n"); +-#if 0 +- dum->port_status[rhport] |= (1 << USB_PORT_FEAT_SUSPEND); +- if (dum->driver->suspend) { +- spin_unlock (&dum->lock); +- dum->driver->suspend (&dum->gadget); +- spin_lock (&dum->lock); +- } +-#endif + break; + case USB_PORT_FEAT_RESET: + dbg_vhci_rh(" SetPortFeature: USB_PORT_FEAT_RESET\n"); +@@ -432,12 +424,6 @@ static int vhci_hub_control(struct usb_h + dum->port_status[rhport] &= ~(USB_PORT_STAT_ENABLE + | USB_PORT_STAT_LOW_SPEED + | USB_PORT_STAT_HIGH_SPEED); +-#if 0 +- if (dum->driver) { +- dev_dbg (hardware, "disconnect\n"); +- stop_activity (dum, dum->driver); +- } +-#endif + + /* FIXME test that code path! */ + } +@@ -1060,7 +1046,7 @@ static int vhci_hcd_probe(struct platfor + struct usb_hcd *hcd; + int ret; + +- uinfo("proving...\n"); ++ uinfo("probing...\n"); + + dbg_vhci_hc("name %s id %d\n", pdev->name, pdev->id); + +@@ -1076,7 +1062,11 @@ static int vhci_hcd_probe(struct platfor + * Allocate and initialize hcd. + * Our private data is also allocated automatically. + */ ++#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,30) + hcd = usb_create_hcd(&vhci_hc_driver, &pdev->dev, pdev->dev.bus_id); ++#else ++ hcd = usb_create_hcd(&vhci_hc_driver, &pdev->dev, dev_name(&pdev->dev)); ++#endif + if (!hcd) { + uerr("create hcd failed\n"); + return -ENOMEM; +--- a/drivers/head/vhci_sysfs.c ++++ b/drivers/head/vhci_sysfs.c +@@ -123,7 +123,11 @@ static ssize_t show_status(struct device + out += sprintf(out, "%03u %08x ", + vdev->speed, vdev->devid); + out += sprintf(out, "%16p ", vdev->ud.tcp_socket); ++#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,30) + out += sprintf(out, "%s", vdev->udev->dev.bus_id); ++#else ++ out += sprintf(out, "%s", dev_name(&vdev->udev->dev)); ++#endif + + } else + out += sprintf(out, "000 000 000 0000000000000000 0-0"); +--- a/drivers/head/usbip_common.h ++++ b/drivers/head/usbip_common.h +@@ -300,6 +300,7 @@ struct usbip_device; + + struct usbip_task { + struct task_struct *thread; ++ struct completion thread_started; + struct completion thread_done; + char *name; + void (*loop_ops)(struct usbip_task *); From 064391a1d8a38155ca7a9e7a800ef46e0a42b19c Mon Sep 17 00:00:00 2001 From: Michael Heimpold Date: Fri, 15 May 2015 22:57:35 +0200 Subject: [PATCH 396/681] php5: pecl: move phpize into prepare stage This allows pecl modules to rely on PKG_FIXUP:=autoreconf. Signed-off-by: Michael Heimpold --- lang/php5/pecl.mk | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/lang/php5/pecl.mk b/lang/php5/pecl.mk index e1b981963..ee2a5ce77 100644 --- a/lang/php5/pecl.mk +++ b/lang/php5/pecl.mk @@ -1,5 +1,5 @@ # -# Copyright (C) 2011-2014 OpenWrt.org +# Copyright (C) 2011-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -10,13 +10,12 @@ define Package/php5-pecl/Default SECTION:=lang CATEGORY:=Languages URL:=http://pecl.php.net/ - MAINTAINER:=Michael Heimpold DEPENDS:=php5 endef -define Build/Configure +define Build/Prepare + $(Build/Prepare/Default) ( cd $(PKG_BUILD_DIR); $(STAGING_DIR_HOST)/usr/bin/phpize ) - $(Build/Configure/Default) endef CONFIGURE_ARGS+= \ From fba7808916a3999b1afe9683c5c7ac944c3b42d7 Mon Sep 17 00:00:00 2001 From: Michael Heimpold Date: Fri, 15 May 2015 23:01:42 +0200 Subject: [PATCH 397/681] php5-pecl-libevent: move from oldpackages and fix build Signed-off-by: Michael Heimpold --- lang/php5-pecl-libevent/Makefile | 38 ++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 lang/php5-pecl-libevent/Makefile diff --git a/lang/php5-pecl-libevent/Makefile b/lang/php5-pecl-libevent/Makefile new file mode 100644 index 000000000..6beee26f2 --- /dev/null +++ b/lang/php5-pecl-libevent/Makefile @@ -0,0 +1,38 @@ +# +# Copyright (C) 2012-2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PECL_NAME:=libevent +PECL_LONGNAME:=Libevent - event notification + +PKG_VERSION:=0.1.0 +PKG_RELEASE:=1 +PKG_MD5SUM:=e091371a9e714098a4c04a6e3daeb56a + +PKG_NAME:=php5-pecl-$(PECL_NAME) +PKG_SOURCE:=$(PECL_NAME)-$(PKG_VERSION).tgz +PKG_SOURCE_URL:=http://pecl.php.net/get/ + +PKG_MAINTAINER:=Michael Heimpold + +PKG_LICENSE:=PHPv3.01 +PKG_LICENSE_FILES:= + +PKG_BUILD_DIR:=$(BUILD_DIR)/$(PECL_NAME)-$(PKG_VERSION) +PKG_BUILD_PARALLEL:=1 + +PKG_FIXUP:=autoreconf + +include $(INCLUDE_DIR)/package.mk +include $(INCLUDE_DIR)/nls.mk +include ../php5/pecl.mk + +CONFIGURE_ARGS+= --with-libevent=shared,"$(STAGING_DIR)/usr" + +$(eval $(call PECLPackage,$(PECL_NAME),$(PECL_LONGNAME),+libevent2)) +$(eval $(call BuildPackage,$(PKG_NAME))) From 737da8a5d74ef1c583aa808882bb336e8b3108d9 Mon Sep 17 00:00:00 2001 From: Michael Heimpold Date: Fri, 15 May 2015 23:02:17 +0200 Subject: [PATCH 398/681] php5-pecl-dio: move from oldpackages, update and fix build Signed-off-by: Michael Heimpold --- lang/php5-pecl-dio/Makefile | 36 +++++++++++++++++++ .../patches/010-additional-baudrates.patch | 29 +++++++++++++++ 2 files changed, 65 insertions(+) create mode 100644 lang/php5-pecl-dio/Makefile create mode 100644 lang/php5-pecl-dio/patches/010-additional-baudrates.patch diff --git a/lang/php5-pecl-dio/Makefile b/lang/php5-pecl-dio/Makefile new file mode 100644 index 000000000..9f7367bc1 --- /dev/null +++ b/lang/php5-pecl-dio/Makefile @@ -0,0 +1,36 @@ +# +# Copyright (C) 2012-2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PECL_NAME:=dio +PECL_LONGNAME:=Direct I/O functions + +PKG_VERSION:=0.0.7 +PKG_RELEASE:=1 +PKG_MD5SUM:=a1a4df428a17dbe1ab4277b492dfa052 + +PKG_NAME:=php5-pecl-$(PECL_NAME) +PKG_SOURCE:=$(PECL_NAME)-$(PKG_VERSION).tgz +PKG_SOURCE_URL:=http://pecl.php.net/get/ + +PKG_BUILD_DIR:=$(BUILD_DIR)/$(PECL_NAME)-$(PKG_VERSION) +PKG_BUILD_PARALLEL:=1 + +PKG_MAINTAINER:=Michael Heimpold + +PKG_LICENSE:=PHPv3.01 +PKG_LICENSE_FILES:= + +PKG_FIXUP:=autoreconf + +include $(INCLUDE_DIR)/package.mk +include $(INCLUDE_DIR)/nls.mk +include ../php5/pecl.mk + +$(eval $(call PECLPackage,$(PECL_NAME),$(PECL_LONGNAME))) +$(eval $(call BuildPackage,$(PKG_NAME))) diff --git a/lang/php5-pecl-dio/patches/010-additional-baudrates.patch b/lang/php5-pecl-dio/patches/010-additional-baudrates.patch new file mode 100644 index 000000000..5032e6e14 --- /dev/null +++ b/lang/php5-pecl-dio/patches/010-additional-baudrates.patch @@ -0,0 +1,29 @@ +--- a/dio.c ++++ b/dio.c +@@ -442,6 +442,26 @@ PHP_FUNCTION(dio_tcsetattr) + + /* assign to correct values... */ + switch (Baud_Rate) { ++#ifdef B460800 ++ case 460800: ++ BAUD = B460800; ++ break; ++#endif ++#ifdef B230400 ++ case 230400: ++ BAUD = B230400; ++ break; ++#endif ++#ifdef B115200 ++ case 115200: ++ BAUD = B115200; ++ break; ++#endif ++#ifdef B57600 ++ case 57600: ++ BAUD = B57600; ++ break; ++#endif + case 38400: + BAUD = B38400; + break; From b349c051ddde6bfbd601dd64743b85bf28a15c77 Mon Sep 17 00:00:00 2001 From: Michael Heimpold Date: Fri, 15 May 2015 23:03:20 +0200 Subject: [PATCH 399/681] php5-pecl-raphf: add new package Signed-off-by: Michael Heimpold --- lang/php5-pecl-raphf/Makefile | 39 +++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 lang/php5-pecl-raphf/Makefile diff --git a/lang/php5-pecl-raphf/Makefile b/lang/php5-pecl-raphf/Makefile new file mode 100644 index 000000000..fdd23871e --- /dev/null +++ b/lang/php5-pecl-raphf/Makefile @@ -0,0 +1,39 @@ +# +# Copyright (C) 2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PECL_NAME:=raphf +PECL_LONGNAME:=Resource and persistent handles factory + +PKG_VERSION:=1.0.4 +PKG_RELEASE:=1 +PKG_MD5SUM:=e5e7e5c3954a5fd31c034c347f22c4a5 + +PKG_NAME:=php5-pecl-raphf +PKG_SOURCE:=$(PECL_NAME)-$(PKG_VERSION).tgz +PKG_SOURCE_URL:=http://pecl.php.net/get/ + +PKG_MAINTAINER:=Michael Heimpold + +PKG_LICENSE:=BSD-3-Clause +PKG_LICENSE_FILES:=LICENSE + +PKG_BUILD_DIR:=$(BUILD_DIR)/$(PECL_NAME)-$(PKG_VERSION) +PKG_BUILD_PARALLEL:=1 + +PKG_FIXUP:=autoreconf + +include $(INCLUDE_DIR)/package.mk +include $(INCLUDE_DIR)/nls.mk +include ../php5/pecl.mk + +CONFIGURE_ARGS+= \ + --enable-raphf + +$(eval $(call PECLPackage,$(PECL_NAME),$(PECL_LONGNAME))) +$(eval $(call BuildPackage,$(PKG_NAME))) From dad4c3af1119ea15f5660e7b59d8cfbc0e26fd37 Mon Sep 17 00:00:00 2001 From: Michael Heimpold Date: Fri, 15 May 2015 23:03:33 +0200 Subject: [PATCH 400/681] php5-pecl-propro: add new package Signed-off-by: Michael Heimpold --- lang/php5-pecl-propro/Makefile | 39 ++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 lang/php5-pecl-propro/Makefile diff --git a/lang/php5-pecl-propro/Makefile b/lang/php5-pecl-propro/Makefile new file mode 100644 index 000000000..14f39fdc6 --- /dev/null +++ b/lang/php5-pecl-propro/Makefile @@ -0,0 +1,39 @@ +# +# Copyright (C) 2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PECL_NAME:=propro +PECL_LONGNAME:=Property proxy + +PKG_VERSION:=1.0.0 +PKG_RELEASE:=1 +PKG_MD5SUM:=9c775035fd17c65f0162b7eb1b4f8564 + +PKG_NAME:=php5-pecl-propro +PKG_SOURCE:=$(PECL_NAME)-$(PKG_VERSION).tgz +PKG_SOURCE_URL:=http://pecl.php.net/get/ + +PKG_MAINTAINER:=Michael Heimpold + +PKG_LICENSE:=BSD-3-Clause +PKG_LICENSE_FILES:=LICENSE + +PKG_BUILD_DIR:=$(BUILD_DIR)/$(PECL_NAME)-$(PKG_VERSION) +PKG_BUILD_PARALLEL:=1 + +PKG_FIXUP:=autoreconf + +include $(INCLUDE_DIR)/package.mk +include $(INCLUDE_DIR)/nls.mk +include ../php5/pecl.mk + +CONFIGURE_ARGS+= \ + --enable-propro + +$(eval $(call PECLPackage,$(PECL_NAME),$(PECL_LONGNAME))) +$(eval $(call BuildPackage,$(PKG_NAME))) From 93af3486a9f7b18b34433959098175192b1c90e6 Mon Sep 17 00:00:00 2001 From: Dirk Chang Date: Sat, 16 May 2015 10:56:32 +0800 Subject: [PATCH 401/681] lua-cjson: remove the dependency of libzmq Signed-off-by: Dirk Chang --- lang/lua-cjson/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lang/lua-cjson/Makefile b/lang/lua-cjson/Makefile index fd489f2b4..fbdcf17d1 100644 --- a/lang/lua-cjson/Makefile +++ b/lang/lua-cjson/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=lua-cjson PKG_VERSION:=2.1.0 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_MAINTAINER:=Dirk Chang PKG_LICENSE:=MIT PKG_LICENSE_FILES:=LICENSE @@ -29,7 +29,7 @@ define Package/lua-cjson CATEGORY:=Languages TITLE:=Lua CJSON parser URL:=https://github.com/mpx/lua-cjson - DEPENDS:= +lua +libzmq + DEPENDS:= +lua endef define Package/lua-cjson/description From cd0bcd23e7d86420f5417bf461b137b52ea84140 Mon Sep 17 00:00:00 2001 From: Michael Heimpold Date: Sun, 17 May 2015 17:05:50 +0200 Subject: [PATCH 402/681] php5: add php5-mod-opcache (fixes #1010) This patch adds build infrastructure for PHP's OPcache extension. Compared with the other extension, this is a Zend module and it need a little workaround during cross-compiling. Signed-off-by: Michael Heimpold --- lang/php5/Makefile | 15 +- lang/php5/files/php.ini | 10 ++ ...xt-opcache-fix-detection-of-shm-mmap.patch | 159 ++++++++++++++++++ 3 files changed, 182 insertions(+), 2 deletions(-) create mode 100644 lang/php5/patches/200-ext-opcache-fix-detection-of-shm-mmap.patch diff --git a/lang/php5/Makefile b/lang/php5/Makefile index dac3c738e..2b6f4cad8 100644 --- a/lang/php5/Makefile +++ b/lang/php5/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=php PKG_VERSION:=5.6.8 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_MAINTAINER:=W. Michael Petullo @@ -36,7 +36,7 @@ PHP5_MODULES = \ json \ ldap \ mbstring mcrypt mysql mysqli \ - openssl \ + opcache openssl \ pcntl pdo pdo-mysql pdo-pgsql pdo-sqlite pgsql \ session shmop simplexml soap sockets sqlite3 sysvmsg sysvsem sysvshm \ tokenizer \ @@ -276,6 +276,12 @@ else CONFIGURE_ARGS+= --without-mysqli endif +ifneq ($(SDK)$(CONFIG_PACKAGE_php5-mod-opcache),) + CONFIGURE_ARGS+= --enable-opcache=shared +else + CONFIGURE_ARGS+= --disable-opcache +endif + ifneq ($(SDK)$(CONFIG_PACKAGE_php5-mod-openssl),) CONFIGURE_ARGS+= \ --with-openssl=shared,"$(STAGING_DIR)/usr" \ @@ -508,7 +514,11 @@ define BuildModule $(INSTALL_DIR) $$(1)/usr/lib/php $(INSTALL_BIN) $(PKG_BUILD_DIR)/modules/$(subst -,_,$(1)).so $$(1)/usr/lib/php/ $(INSTALL_DIR) $$(1)/etc/php5 + ifeq ($(4),zend) + echo "zend_extension=/usr/lib/php/$(subst -,_,$(1)).so" > $$(1)/etc/php5/$(subst -,_,$(1)).ini + else echo "extension=$(subst -,_,$(1)).so" > $$(1)/etc/php5/$(subst -,_,$(1)).ini + endif endef $$(eval $$(call BuildPackage,php5-mod-$(1))) @@ -540,6 +550,7 @@ $(eval $(call BuildModule,mbstring,MBString)) $(eval $(call BuildModule,mcrypt,Mcrypt,+PACKAGE_php5-mod-mcrypt:libmcrypt +PACKAGE_php5-mod-mcrypt:libltdl)) $(eval $(call BuildModule,mysql,MySQL,+PACKAGE_php5-mod-mysql:libmysqlclient)) $(eval $(call BuildModule,mysqli,MySQL Improved Extension,+PACKAGE_php5-mod-mysqli:libmysqlclient)) +$(eval $(call BuildModule,opcache,OPcache,,zend)) $(eval $(call BuildModule,openssl,OpenSSL,+PACKAGE_php5-mod-openssl:libopenssl)) $(eval $(call BuildModule,pcntl,PCNTL)) $(eval $(call BuildModule,pdo,PHP Data Objects)) diff --git a/lang/php5/files/php.ini b/lang/php5/files/php.ini index 6fe2a3108..23a8bb988 100644 --- a/lang/php5/files/php.ini +++ b/lang/php5/files/php.ini @@ -309,3 +309,13 @@ ldap.max_links = -1 [mcrypt] ;mcrypt.algorithms_dir= ;mcrypt.modes_dir= + +[opcache] +;opcache.memory_consumption=8 ; 8M is the allowed minimum +;opcache.interned_strings_buffer=1 +opcache.max_accelerated_files=200 ; 200 is the allowed minimum +;opcache.revalidate_freq=60 +;opcache.fast_shutdown=1 +opcache.enable_cli=1 +opcache.enable=1 +;opcache.log_verbosity_level=4 diff --git a/lang/php5/patches/200-ext-opcache-fix-detection-of-shm-mmap.patch b/lang/php5/patches/200-ext-opcache-fix-detection-of-shm-mmap.patch new file mode 100644 index 000000000..d2a1e91af --- /dev/null +++ b/lang/php5/patches/200-ext-opcache-fix-detection-of-shm-mmap.patch @@ -0,0 +1,159 @@ +From dc8bb6a53bfdfe42d9ae81d4e78c6155ad4bfd6e Mon Sep 17 00:00:00 2001 +From: Michael Heimpold +Date: Sun, 17 May 2015 16:50:50 +0200 +Subject: [PATCH] ext/opcache: fix detection of shm/mmap + +The detection of sysvipc and mmap doesn't work well when cross-compiling, +so I decided to only check for the availability of the functions involved. +This is not a clean solution, but works for now(tm) :-) + +It should be discussed with upstream to find a better solution. + +This solves the issue reported at +https://github.com/openwrt/packages/issues/1010 +and makes opcache usable on OpenWrt. + +Signed-off-by: Michael Heimpold +--- + ext/opcache/config.m4 | 122 ++----------------------------------------------- + 1 file changed, 4 insertions(+), 118 deletions(-) + +diff --git a/ext/opcache/config.m4 b/ext/opcache/config.m4 +index b7e4835..7b6c0aa 100644 +--- a/ext/opcache/config.m4 ++++ b/ext/opcache/config.m4 +@@ -11,127 +11,13 @@ if test "$PHP_OPCACHE" != "no"; then + AC_DEFINE(HAVE_MPROTECT, 1, [Define if you have mprotect() function]) + ]) + +- AC_MSG_CHECKING(for sysvipc shared memory support) +- AC_TRY_RUN([ +-#include +-#include +-#include +-#include +-#include +-#include +- +-int main() { +- pid_t pid; +- int status; +- int ipc_id; +- char *shm; +- struct shmid_ds shmbuf; +- +- ipc_id = shmget(IPC_PRIVATE, 4096, (IPC_CREAT | SHM_R | SHM_W)); +- if (ipc_id == -1) { +- return 1; +- } +- +- shm = shmat(ipc_id, NULL, 0); +- if (shm == (void *)-1) { +- shmctl(ipc_id, IPC_RMID, NULL); +- return 2; +- } +- +- if (shmctl(ipc_id, IPC_STAT, &shmbuf) != 0) { +- shmdt(shm); +- shmctl(ipc_id, IPC_RMID, NULL); +- return 3; +- } +- +- shmbuf.shm_perm.uid = getuid(); +- shmbuf.shm_perm.gid = getgid(); +- shmbuf.shm_perm.mode = 0600; +- +- if (shmctl(ipc_id, IPC_SET, &shmbuf) != 0) { +- shmdt(shm); +- shmctl(ipc_id, IPC_RMID, NULL); +- return 4; +- } +- +- shmctl(ipc_id, IPC_RMID, NULL); +- +- strcpy(shm, "hello"); +- +- pid = fork(); +- if (pid < 0) { +- return 5; +- } else if (pid == 0) { +- strcpy(shm, "bye"); +- return 6; +- } +- if (wait(&status) != pid) { +- return 7; +- } +- if (!WIFEXITED(status) || WEXITSTATUS(status) != 6) { +- return 8; +- } +- if (strcmp(shm, "bye") != 0) { +- return 9; +- } +- return 0; +-} +-],dnl ++ AC_CHECK_FUNC(shmget,[ + AC_DEFINE(HAVE_SHM_IPC, 1, [Define if you have SysV IPC SHM support]) +- msg=yes,msg=no,msg=no) +- AC_MSG_RESULT([$msg]) +- +- AC_MSG_CHECKING(for mmap() using MAP_ANON shared memory support) +- AC_TRY_RUN([ +-#include +-#include +-#include +-#include +-#include +- +-#ifndef MAP_ANON +-# ifdef MAP_ANONYMOUS +-# define MAP_ANON MAP_ANONYMOUS +-# endif +-#endif +-#ifndef MAP_FAILED +-# define MAP_FAILED ((void*)-1) +-#endif +- +-int main() { +- pid_t pid; +- int status; +- char *shm; +- +- shm = mmap(NULL, 4096, PROT_READ | PROT_WRITE, MAP_SHARED | MAP_ANON, -1, 0); +- if (shm == MAP_FAILED) { +- return 1; +- } +- +- strcpy(shm, "hello"); ++ ]) + +- pid = fork(); +- if (pid < 0) { +- return 5; +- } else if (pid == 0) { +- strcpy(shm, "bye"); +- return 6; +- } +- if (wait(&status) != pid) { +- return 7; +- } +- if (!WIFEXITED(status) || WEXITSTATUS(status) != 6) { +- return 8; +- } +- if (strcmp(shm, "bye") != 0) { +- return 9; +- } +- return 0; +-} +-],dnl ++ AC_CHECK_FUNC(mmap,[ + AC_DEFINE(HAVE_SHM_MMAP_ANON, 1, [Define if you have mmap(MAP_ANON) SHM support]) +- msg=yes,msg=no,msg=no) +- AC_MSG_RESULT([$msg]) ++ ]) + + AC_MSG_CHECKING(for mmap() using /dev/zero shared memory support) + AC_TRY_RUN([ +-- +1.7.10.4 + From 7af256a6cdbf014cf28c21ac6dcf8f316ee8b0cc Mon Sep 17 00:00:00 2001 From: Christian Pointner Date: Sun, 17 May 2015 18:53:22 +0200 Subject: [PATCH 403/681] tcpproxy: update to version 1.2 Signed-off-by: Christian Pointner --- net/tcpproxy/Makefile | 5 +- .../patches/001-ragel_generated.patch | 1892 ++++++++--------- 2 files changed, 949 insertions(+), 948 deletions(-) diff --git a/net/tcpproxy/Makefile b/net/tcpproxy/Makefile index 2f7cb4d0f..77ef8259d 100644 --- a/net/tcpproxy/Makefile +++ b/net/tcpproxy/Makefile @@ -12,12 +12,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=tcpproxy -PKG_VERSION:=1.1 +PKG_VERSION:=1.2 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://www.spreadspace.org/tcpproxy/releases/ -PKG_MD5SUM:=55126473bcde635f9ee019c6caf19bb7 +PKG_MD5SUM:=14f734a61350c52556909e2ed5bff361 PKG_MAINTAINER:=Christian Pointner PKG_LICENSE:=GPL-3.0+ PKG_LICENSE_FILES:=LICENSE @@ -56,6 +56,7 @@ define Build/Configure echo '#define TARGET "linux"' >> config.h; \ echo '#define PREFIX "/usr"' >> config.h; \ echo '#define BINDIR "/usr/bin"' >> config.h; \ + echo '#define SYSTEMDDIR "/tmp"' >> config.h; \ echo '#define ETCDIR "/etc"' >> config.h; \ echo '#define CONFFILE "/etc/tcpproxy.conf"' >> config.h; \ echo '' >> config.h; \ diff --git a/net/tcpproxy/patches/001-ragel_generated.patch b/net/tcpproxy/patches/001-ragel_generated.patch index 38d6bc77e..600e602c2 100644 --- a/net/tcpproxy/patches/001-ragel_generated.patch +++ b/net/tcpproxy/patches/001-ragel_generated.patch @@ -1,6 +1,6 @@ -diff -Nur tcpproxy-1.1.orig/src/cfg_parser.c tcpproxy-1.1/src/cfg_parser.c ---- tcpproxy-1.1.orig/src/cfg_parser.c 1970-01-01 01:00:00.000000000 +0100 -+++ tcpproxy-1.1/src/cfg_parser.c 2014-02-24 04:05:11.087171984 +0100 +diff -Nur tcpproxy-1.2.orig/src/cfg_parser.c tcpproxy-1.2/src/cfg_parser.c +--- tcpproxy-1.2.orig/src/cfg_parser.c 1970-01-01 01:00:00.000000000 +0100 ++++ tcpproxy-1.2/src/cfg_parser.c 2015-05-17 18:10:54.933307372 +0200 @@ -0,0 +1,1374 @@ + +#line 1 "cfg_parser.rl" @@ -13,7 +13,7 @@ diff -Nur tcpproxy-1.1.orig/src/cfg_parser.c tcpproxy-1.1/src/cfg_parser.c + * endpoints and vice versa. + * + * -+ * Copyright (C) 2010-2013 Christian Pointner ++ * Copyright (C) 2010-2015 Christian Pointner + * + * This file is part of tcpproxy. + * @@ -113,7 +113,7 @@ diff -Nur tcpproxy-1.1.orig/src/cfg_parser.c tcpproxy-1.1/src/cfg_parser.c +{ + int cs, ret = 0, cur_line = 1; + -+ ++ +#line 114 "cfg_parser.c" +static const int cfg_parser_start = 67; +static const int cfg_parser_first_final = 67; @@ -123,11 +123,11 @@ diff -Nur tcpproxy-1.1.orig/src/cfg_parser.c tcpproxy-1.1/src/cfg_parser.c + + +#line 170 "cfg_parser.rl" -+ ++ +#line 124 "cfg_parser.c" -+ { -+ cs = cfg_parser_start; -+ } ++ { ++ cs = cfg_parser_start; ++ } + +#line 171 "cfg_parser.rl" + @@ -136,119 +136,119 @@ diff -Nur tcpproxy-1.1.orig/src/cfg_parser.c tcpproxy-1.1/src/cfg_parser.c + init_listener_struct(&lst); + + char* eof = pe; -+ ++ +#line 137 "cfg_parser.c" -+ { -+ if ( p == pe ) -+ goto _test_eof; -+ goto _resume; ++ { ++ if ( p == pe ) ++ goto _test_eof; ++ goto _resume; + +_again: -+ switch ( cs ) { -+ case 67: goto st67; -+ case 0: goto st0; -+ case 1: goto st1; -+ case 2: goto st2; -+ case 3: goto st3; -+ case 4: goto st4; -+ case 5: goto st5; -+ case 6: goto st6; -+ case 7: goto st7; -+ case 8: goto st8; -+ case 9: goto st9; -+ case 10: goto st10; -+ case 11: goto st11; -+ case 12: goto st12; -+ case 13: goto st13; -+ case 14: goto st14; -+ case 15: goto st15; -+ case 16: goto st16; -+ case 17: goto st17; -+ case 18: goto st18; -+ case 19: goto st19; -+ case 20: goto st20; -+ case 21: goto st21; -+ case 22: goto st22; -+ case 23: goto st23; -+ case 24: goto st24; -+ case 25: goto st25; -+ case 26: goto st26; -+ case 27: goto st27; -+ case 28: goto st28; -+ case 29: goto st29; -+ case 30: goto st30; -+ case 31: goto st31; -+ case 32: goto st32; -+ case 33: goto st33; -+ case 34: goto st34; -+ case 35: goto st35; -+ case 36: goto st36; -+ case 37: goto st37; -+ case 38: goto st38; -+ case 39: goto st39; -+ case 40: goto st40; -+ case 41: goto st41; -+ case 42: goto st42; -+ case 43: goto st43; -+ case 44: goto st44; -+ case 45: goto st45; -+ case 46: goto st46; -+ case 47: goto st47; -+ case 48: goto st48; -+ case 49: goto st49; -+ case 50: goto st50; -+ case 51: goto st51; -+ case 52: goto st52; -+ case 53: goto st53; -+ case 54: goto st54; -+ case 55: goto st55; -+ case 56: goto st56; -+ case 57: goto st57; -+ case 58: goto st58; -+ case 59: goto st59; -+ case 60: goto st60; -+ case 61: goto st61; -+ case 62: goto st62; -+ case 63: goto st63; -+ case 64: goto st64; -+ case 65: goto st65; -+ case 66: goto st66; -+ default: break; -+ } ++ switch ( cs ) { ++ case 67: goto st67; ++ case 0: goto st0; ++ case 1: goto st1; ++ case 2: goto st2; ++ case 3: goto st3; ++ case 4: goto st4; ++ case 5: goto st5; ++ case 6: goto st6; ++ case 7: goto st7; ++ case 8: goto st8; ++ case 9: goto st9; ++ case 10: goto st10; ++ case 11: goto st11; ++ case 12: goto st12; ++ case 13: goto st13; ++ case 14: goto st14; ++ case 15: goto st15; ++ case 16: goto st16; ++ case 17: goto st17; ++ case 18: goto st18; ++ case 19: goto st19; ++ case 20: goto st20; ++ case 21: goto st21; ++ case 22: goto st22; ++ case 23: goto st23; ++ case 24: goto st24; ++ case 25: goto st25; ++ case 26: goto st26; ++ case 27: goto st27; ++ case 28: goto st28; ++ case 29: goto st29; ++ case 30: goto st30; ++ case 31: goto st31; ++ case 32: goto st32; ++ case 33: goto st33; ++ case 34: goto st34; ++ case 35: goto st35; ++ case 36: goto st36; ++ case 37: goto st37; ++ case 38: goto st38; ++ case 39: goto st39; ++ case 40: goto st40; ++ case 41: goto st41; ++ case 42: goto st42; ++ case 43: goto st43; ++ case 44: goto st44; ++ case 45: goto st45; ++ case 46: goto st46; ++ case 47: goto st47; ++ case 48: goto st48; ++ case 49: goto st49; ++ case 50: goto st50; ++ case 51: goto st51; ++ case 52: goto st52; ++ case 53: goto st53; ++ case 54: goto st54; ++ case 55: goto st55; ++ case 56: goto st56; ++ case 57: goto st57; ++ case 58: goto st58; ++ case 59: goto st59; ++ case 60: goto st60; ++ case 61: goto st61; ++ case 62: goto st62; ++ case 63: goto st63; ++ case 64: goto st64; ++ case 65: goto st65; ++ case 66: goto st66; ++ default: break; ++ } + -+ if ( ++p == pe ) -+ goto _test_eof; ++ if ( ++p == pe ) ++ goto _test_eof; +_resume: -+ switch ( cs ) -+ { ++ switch ( cs ) ++ { +tr1: +#line 127 "cfg_parser.rl" -+ {cur_line++;} -+ goto st67; ++ {cur_line++;} ++ goto st67; +tr90: +#line 114 "cfg_parser.rl" -+ { ++ { + ret = listeners_add(listener, lst.la_, lst.lrt_, lst.lp_, lst.ra_, lst.rrt_, lst.rp_, lst.sa_); + clear_listener_struct(&lst); + } -+ goto st67; ++ goto st67; +st67: -+ if ( ++p == pe ) -+ goto _test_eof67; ++ if ( ++p == pe ) ++ goto _test_eof67; +case 67: +#line 236 "cfg_parser.c" -+ switch( (*p) ) { -+ case 10: goto tr1; -+ case 32: goto st67; -+ case 35: goto st1; -+ case 108: goto st2; -+ } -+ if ( 9 <= (*p) && (*p) <= 13 ) -+ goto st67; -+ goto tr2; ++ switch( (*p) ) { ++ case 10: goto tr1; ++ case 32: goto st67; ++ case 35: goto st1; ++ case 108: goto st2; ++ } ++ if ( 9 <= (*p) && (*p) <= 13 ) ++ goto st67; ++ goto tr2; +tr2: +#line 118 "cfg_parser.rl" -+ { ++ { + if(p == eof) + log_printf(ERROR, "config file syntax error: unexpected end of file"); + else @@ -256,1051 +256,1051 @@ diff -Nur tcpproxy-1.1.orig/src/cfg_parser.c tcpproxy-1.1/src/cfg_parser.c + + {cs = (cfg_parser_error); goto _again;} + } -+ goto st0; ++ goto st0; +#line 257 "cfg_parser.c" +st0: +cs = 0; -+ goto _out; ++ goto _out; +st1: -+ if ( ++p == pe ) -+ goto _test_eof1; ++ if ( ++p == pe ) ++ goto _test_eof1; +case 1: -+ if ( (*p) == 10 ) -+ goto tr1; -+ goto st1; ++ if ( (*p) == 10 ) ++ goto tr1; ++ goto st1; +st2: -+ if ( ++p == pe ) -+ goto _test_eof2; ++ if ( ++p == pe ) ++ goto _test_eof2; +case 2: -+ if ( (*p) == 105 ) -+ goto st3; -+ goto tr2; ++ if ( (*p) == 105 ) ++ goto st3; ++ goto tr2; +st3: -+ if ( ++p == pe ) -+ goto _test_eof3; ++ if ( ++p == pe ) ++ goto _test_eof3; +case 3: -+ if ( (*p) == 115 ) -+ goto st4; -+ goto tr2; ++ if ( (*p) == 115 ) ++ goto st4; ++ goto tr2; +st4: -+ if ( ++p == pe ) -+ goto _test_eof4; ++ if ( ++p == pe ) ++ goto _test_eof4; +case 4: -+ if ( (*p) == 116 ) -+ goto st5; -+ goto tr2; ++ if ( (*p) == 116 ) ++ goto st5; ++ goto tr2; +st5: -+ if ( ++p == pe ) -+ goto _test_eof5; ++ if ( ++p == pe ) ++ goto _test_eof5; +case 5: -+ if ( (*p) == 101 ) -+ goto st6; -+ goto tr2; ++ if ( (*p) == 101 ) ++ goto st6; ++ goto tr2; +st6: -+ if ( ++p == pe ) -+ goto _test_eof6; ++ if ( ++p == pe ) ++ goto _test_eof6; +case 6: -+ if ( (*p) == 110 ) -+ goto st7; -+ goto tr2; ++ if ( (*p) == 110 ) ++ goto st7; ++ goto tr2; +st7: -+ if ( ++p == pe ) -+ goto _test_eof7; ++ if ( ++p == pe ) ++ goto _test_eof7; +case 7: -+ switch( (*p) ) { -+ case 9: goto st8; -+ case 32: goto st8; -+ } -+ goto tr2; ++ switch( (*p) ) { ++ case 9: goto st8; ++ case 32: goto st8; ++ } ++ goto tr2; +st8: -+ if ( ++p == pe ) -+ goto _test_eof8; ++ if ( ++p == pe ) ++ goto _test_eof8; +case 8: -+ switch( (*p) ) { -+ case 9: goto st8; -+ case 32: goto st8; -+ case 42: goto st9; -+ case 58: goto tr12; -+ } -+ if ( (*p) < 65 ) { -+ if ( (*p) > 46 ) { -+ if ( 48 <= (*p) && (*p) <= 57 ) -+ goto tr11; -+ } else if ( (*p) >= 45 ) -+ goto tr10; -+ } else if ( (*p) > 70 ) { -+ if ( (*p) < 97 ) { -+ if ( 71 <= (*p) && (*p) <= 90 ) -+ goto tr10; -+ } else if ( (*p) > 102 ) { -+ if ( 103 <= (*p) && (*p) <= 122 ) -+ goto tr10; -+ } else -+ goto tr11; -+ } else -+ goto tr11; -+ goto tr2; ++ switch( (*p) ) { ++ case 9: goto st8; ++ case 32: goto st8; ++ case 42: goto st9; ++ case 58: goto tr12; ++ } ++ if ( (*p) < 65 ) { ++ if ( (*p) > 46 ) { ++ if ( 48 <= (*p) && (*p) <= 57 ) ++ goto tr11; ++ } else if ( (*p) >= 45 ) ++ goto tr10; ++ } else if ( (*p) > 70 ) { ++ if ( (*p) < 97 ) { ++ if ( 71 <= (*p) && (*p) <= 90 ) ++ goto tr10; ++ } else if ( (*p) > 102 ) { ++ if ( 103 <= (*p) && (*p) <= 122 ) ++ goto tr10; ++ } else ++ goto tr11; ++ } else ++ goto tr11; ++ goto tr2; +st9: -+ if ( ++p == pe ) -+ goto _test_eof9; ++ if ( ++p == pe ) ++ goto _test_eof9; +case 9: -+ switch( (*p) ) { -+ case 9: goto st10; -+ case 32: goto st10; -+ } -+ goto tr2; ++ switch( (*p) ) { ++ case 9: goto st10; ++ case 32: goto st10; ++ } ++ goto tr2; +tr91: +#line 105 "cfg_parser.rl" -+ { ret = owrt_string(&(lst.la_), cpy_start, p); cpy_start = NULL; } -+ goto st10; ++ { ret = owrt_string(&(lst.la_), cpy_start, p); cpy_start = NULL; } ++ goto st10; +st10: -+ if ( ++p == pe ) -+ goto _test_eof10; ++ if ( ++p == pe ) ++ goto _test_eof10; +case 10: +#line 357 "cfg_parser.c" -+ switch( (*p) ) { -+ case 9: goto st10; -+ case 32: goto st10; -+ case 45: goto tr14; -+ } -+ if ( (*p) < 65 ) { -+ if ( 48 <= (*p) && (*p) <= 57 ) -+ goto tr14; -+ } else if ( (*p) > 90 ) { -+ if ( 97 <= (*p) && (*p) <= 122 ) -+ goto tr14; -+ } else -+ goto tr14; -+ goto tr2; ++ switch( (*p) ) { ++ case 9: goto st10; ++ case 32: goto st10; ++ case 45: goto tr14; ++ } ++ if ( (*p) < 65 ) { ++ if ( 48 <= (*p) && (*p) <= 57 ) ++ goto tr14; ++ } else if ( (*p) > 90 ) { ++ if ( 97 <= (*p) && (*p) <= 122 ) ++ goto tr14; ++ } else ++ goto tr14; ++ goto tr2; +tr14: +#line 104 "cfg_parser.rl" -+ { cpy_start = p; } -+ goto st11; ++ { cpy_start = p; } ++ goto st11; +st11: -+ if ( ++p == pe ) -+ goto _test_eof11; ++ if ( ++p == pe ) ++ goto _test_eof11; +case 11: +#line 380 "cfg_parser.c" -+ switch( (*p) ) { -+ case 10: goto tr16; -+ case 32: goto tr15; -+ case 35: goto tr17; -+ case 45: goto st11; -+ case 123: goto tr19; -+ } -+ if ( (*p) < 48 ) { -+ if ( 9 <= (*p) && (*p) <= 13 ) -+ goto tr15; -+ } else if ( (*p) > 57 ) { -+ if ( (*p) > 90 ) { -+ if ( 97 <= (*p) && (*p) <= 122 ) -+ goto st11; -+ } else if ( (*p) >= 65 ) -+ goto st11; -+ } else -+ goto st11; -+ goto tr2; ++ switch( (*p) ) { ++ case 10: goto tr16; ++ case 32: goto tr15; ++ case 35: goto tr17; ++ case 45: goto st11; ++ case 123: goto tr19; ++ } ++ if ( (*p) < 48 ) { ++ if ( 9 <= (*p) && (*p) <= 13 ) ++ goto tr15; ++ } else if ( (*p) > 57 ) { ++ if ( (*p) > 90 ) { ++ if ( 97 <= (*p) && (*p) <= 122 ) ++ goto st11; ++ } else if ( (*p) >= 65 ) ++ goto st11; ++ } else ++ goto st11; ++ goto tr2; +tr21: +#line 127 "cfg_parser.rl" -+ {cur_line++;} -+ goto st12; ++ {cur_line++;} ++ goto st12; +tr15: +#line 106 "cfg_parser.rl" -+ { ret = owrt_string(&(lst.lp_), cpy_start, p); cpy_start = NULL; } -+ goto st12; ++ { ret = owrt_string(&(lst.lp_), cpy_start, p); cpy_start = NULL; } ++ goto st12; +tr16: +#line 106 "cfg_parser.rl" -+ { ret = owrt_string(&(lst.lp_), cpy_start, p); cpy_start = NULL; } ++ { ret = owrt_string(&(lst.lp_), cpy_start, p); cpy_start = NULL; } +#line 127 "cfg_parser.rl" -+ {cur_line++;} -+ goto st12; ++ {cur_line++;} ++ goto st12; +st12: -+ if ( ++p == pe ) -+ goto _test_eof12; ++ if ( ++p == pe ) ++ goto _test_eof12; +case 12: +#line 418 "cfg_parser.c" -+ switch( (*p) ) { -+ case 10: goto tr21; -+ case 32: goto st12; -+ case 35: goto st13; -+ case 123: goto st14; -+ } -+ if ( 9 <= (*p) && (*p) <= 13 ) -+ goto st12; -+ goto tr2; ++ switch( (*p) ) { ++ case 10: goto tr21; ++ case 32: goto st12; ++ case 35: goto st13; ++ case 123: goto st14; ++ } ++ if ( 9 <= (*p) && (*p) <= 13 ) ++ goto st12; ++ goto tr2; +tr17: +#line 106 "cfg_parser.rl" -+ { ret = owrt_string(&(lst.lp_), cpy_start, p); cpy_start = NULL; } -+ goto st13; ++ { ret = owrt_string(&(lst.lp_), cpy_start, p); cpy_start = NULL; } ++ goto st13; +st13: -+ if ( ++p == pe ) -+ goto _test_eof13; ++ if ( ++p == pe ) ++ goto _test_eof13; +case 13: +#line 436 "cfg_parser.c" -+ if ( (*p) == 10 ) -+ goto tr21; -+ goto st13; ++ if ( (*p) == 10 ) ++ goto tr21; ++ goto st13; +tr24: +#line 127 "cfg_parser.rl" -+ {cur_line++;} -+ goto st14; ++ {cur_line++;} ++ goto st14; +tr19: +#line 106 "cfg_parser.rl" -+ { ret = owrt_string(&(lst.lp_), cpy_start, p); cpy_start = NULL; } -+ goto st14; ++ { ret = owrt_string(&(lst.lp_), cpy_start, p); cpy_start = NULL; } ++ goto st14; +tr48: +#line 110 "cfg_parser.rl" -+ { ret = owrt_string(&(lst.rp_), cpy_start, p); cpy_start = NULL; } -+ goto st14; ++ { ret = owrt_string(&(lst.rp_), cpy_start, p); cpy_start = NULL; } ++ goto st14; +tr87: +#line 113 "cfg_parser.rl" -+ { ret = owrt_string(&(lst.sa_), cpy_start, p); cpy_start = NULL; } -+ goto st14; ++ { ret = owrt_string(&(lst.sa_), cpy_start, p); cpy_start = NULL; } ++ goto st14; +st14: -+ if ( ++p == pe ) -+ goto _test_eof14; ++ if ( ++p == pe ) ++ goto _test_eof14; +case 14: +#line 460 "cfg_parser.c" -+ switch( (*p) ) { -+ case 10: goto tr24; -+ case 32: goto st14; -+ case 35: goto st15; -+ case 114: goto st16; -+ case 115: goto st52; -+ case 125: goto st63; -+ } -+ if ( 9 <= (*p) && (*p) <= 13 ) -+ goto st14; -+ goto tr2; ++ switch( (*p) ) { ++ case 10: goto tr24; ++ case 32: goto st14; ++ case 35: goto st15; ++ case 114: goto st16; ++ case 115: goto st52; ++ case 125: goto st63; ++ } ++ if ( 9 <= (*p) && (*p) <= 13 ) ++ goto st14; ++ goto tr2; +st15: -+ if ( ++p == pe ) -+ goto _test_eof15; ++ if ( ++p == pe ) ++ goto _test_eof15; +case 15: -+ if ( (*p) == 10 ) -+ goto tr24; -+ goto st15; ++ if ( (*p) == 10 ) ++ goto tr24; ++ goto st15; +st16: -+ if ( ++p == pe ) -+ goto _test_eof16; ++ if ( ++p == pe ) ++ goto _test_eof16; +case 16: -+ if ( (*p) == 101 ) -+ goto st17; -+ goto tr2; ++ if ( (*p) == 101 ) ++ goto st17; ++ goto tr2; +st17: -+ if ( ++p == pe ) -+ goto _test_eof17; ++ if ( ++p == pe ) ++ goto _test_eof17; +case 17: -+ switch( (*p) ) { -+ case 109: goto st18; -+ case 115: goto st43; -+ } -+ goto tr2; ++ switch( (*p) ) { ++ case 109: goto st18; ++ case 115: goto st43; ++ } ++ goto tr2; +st18: -+ if ( ++p == pe ) -+ goto _test_eof18; ++ if ( ++p == pe ) ++ goto _test_eof18; +case 18: -+ if ( (*p) == 111 ) -+ goto st19; -+ goto tr2; ++ if ( (*p) == 111 ) ++ goto st19; ++ goto tr2; +st19: -+ if ( ++p == pe ) -+ goto _test_eof19; ++ if ( ++p == pe ) ++ goto _test_eof19; +case 19: -+ if ( (*p) == 116 ) -+ goto st20; -+ goto tr2; ++ if ( (*p) == 116 ) ++ goto st20; ++ goto tr2; +st20: -+ if ( ++p == pe ) -+ goto _test_eof20; ++ if ( ++p == pe ) ++ goto _test_eof20; +case 20: -+ if ( (*p) == 101 ) -+ goto st21; -+ goto tr2; ++ if ( (*p) == 101 ) ++ goto st21; ++ goto tr2; +st21: -+ if ( ++p == pe ) -+ goto _test_eof21; ++ if ( ++p == pe ) ++ goto _test_eof21; +case 21: -+ switch( (*p) ) { -+ case 9: goto st22; -+ case 32: goto st22; -+ case 45: goto st31; -+ case 58: goto st23; -+ } -+ goto tr2; ++ switch( (*p) ) { ++ case 9: goto st22; ++ case 32: goto st22; ++ case 45: goto st31; ++ case 58: goto st23; ++ } ++ goto tr2; +st22: -+ if ( ++p == pe ) -+ goto _test_eof22; ++ if ( ++p == pe ) ++ goto _test_eof22; +case 22: -+ switch( (*p) ) { -+ case 9: goto st22; -+ case 32: goto st22; -+ case 58: goto st23; -+ } -+ goto tr2; ++ switch( (*p) ) { ++ case 9: goto st22; ++ case 32: goto st22; ++ case 58: goto st23; ++ } ++ goto tr2; +st23: -+ if ( ++p == pe ) -+ goto _test_eof23; ++ if ( ++p == pe ) ++ goto _test_eof23; +case 23: -+ switch( (*p) ) { -+ case 9: goto st24; -+ case 32: goto st24; -+ } -+ goto tr2; ++ switch( (*p) ) { ++ case 9: goto st24; ++ case 32: goto st24; ++ } ++ goto tr2; +st24: -+ if ( ++p == pe ) -+ goto _test_eof24; ++ if ( ++p == pe ) ++ goto _test_eof24; +case 24: -+ switch( (*p) ) { -+ case 9: goto st24; -+ case 32: goto st24; -+ case 58: goto tr41; -+ } -+ if ( (*p) < 65 ) { -+ if ( (*p) > 46 ) { -+ if ( 48 <= (*p) && (*p) <= 57 ) -+ goto tr40; -+ } else if ( (*p) >= 45 ) -+ goto tr39; -+ } else if ( (*p) > 70 ) { -+ if ( (*p) < 97 ) { -+ if ( 71 <= (*p) && (*p) <= 90 ) -+ goto tr39; -+ } else if ( (*p) > 102 ) { -+ if ( 103 <= (*p) && (*p) <= 122 ) -+ goto tr39; -+ } else -+ goto tr40; -+ } else -+ goto tr40; -+ goto tr2; ++ switch( (*p) ) { ++ case 9: goto st24; ++ case 32: goto st24; ++ case 58: goto tr41; ++ } ++ if ( (*p) < 65 ) { ++ if ( (*p) > 46 ) { ++ if ( 48 <= (*p) && (*p) <= 57 ) ++ goto tr40; ++ } else if ( (*p) >= 45 ) ++ goto tr39; ++ } else if ( (*p) > 70 ) { ++ if ( (*p) < 97 ) { ++ if ( 71 <= (*p) && (*p) <= 90 ) ++ goto tr39; ++ } else if ( (*p) > 102 ) { ++ if ( 103 <= (*p) && (*p) <= 122 ) ++ goto tr39; ++ } else ++ goto tr40; ++ } else ++ goto tr40; ++ goto tr2; +tr39: +#line 104 "cfg_parser.rl" -+ { cpy_start = p; } -+ goto st25; ++ { cpy_start = p; } ++ goto st25; +st25: -+ if ( ++p == pe ) -+ goto _test_eof25; ++ if ( ++p == pe ) ++ goto _test_eof25; +case 25: +#line 581 "cfg_parser.c" -+ switch( (*p) ) { -+ case 9: goto tr42; -+ case 32: goto tr42; -+ } -+ if ( (*p) < 48 ) { -+ if ( 45 <= (*p) && (*p) <= 46 ) -+ goto st25; -+ } else if ( (*p) > 57 ) { -+ if ( (*p) > 90 ) { -+ if ( 97 <= (*p) && (*p) <= 122 ) -+ goto st25; -+ } else if ( (*p) >= 65 ) -+ goto st25; -+ } else -+ goto st25; -+ goto tr2; ++ switch( (*p) ) { ++ case 9: goto tr42; ++ case 32: goto tr42; ++ } ++ if ( (*p) < 48 ) { ++ if ( 45 <= (*p) && (*p) <= 46 ) ++ goto st25; ++ } else if ( (*p) > 57 ) { ++ if ( (*p) > 90 ) { ++ if ( 97 <= (*p) && (*p) <= 122 ) ++ goto st25; ++ } else if ( (*p) >= 65 ) ++ goto st25; ++ } else ++ goto st25; ++ goto tr2; +tr42: +#line 109 "cfg_parser.rl" -+ { ret = owrt_string(&(lst.ra_), cpy_start, p); cpy_start = NULL; } -+ goto st26; ++ { ret = owrt_string(&(lst.ra_), cpy_start, p); cpy_start = NULL; } ++ goto st26; +st26: -+ if ( ++p == pe ) -+ goto _test_eof26; ++ if ( ++p == pe ) ++ goto _test_eof26; +case 26: +#line 606 "cfg_parser.c" -+ switch( (*p) ) { -+ case 9: goto st26; -+ case 32: goto st26; -+ case 45: goto tr45; -+ } -+ if ( (*p) < 65 ) { -+ if ( 48 <= (*p) && (*p) <= 57 ) -+ goto tr45; -+ } else if ( (*p) > 90 ) { -+ if ( 97 <= (*p) && (*p) <= 122 ) -+ goto tr45; -+ } else -+ goto tr45; -+ goto tr2; ++ switch( (*p) ) { ++ case 9: goto st26; ++ case 32: goto st26; ++ case 45: goto tr45; ++ } ++ if ( (*p) < 65 ) { ++ if ( 48 <= (*p) && (*p) <= 57 ) ++ goto tr45; ++ } else if ( (*p) > 90 ) { ++ if ( 97 <= (*p) && (*p) <= 122 ) ++ goto tr45; ++ } else ++ goto tr45; ++ goto tr2; +tr45: +#line 104 "cfg_parser.rl" -+ { cpy_start = p; } -+ goto st27; ++ { cpy_start = p; } ++ goto st27; +st27: -+ if ( ++p == pe ) -+ goto _test_eof27; ++ if ( ++p == pe ) ++ goto _test_eof27; +case 27: +#line 629 "cfg_parser.c" -+ switch( (*p) ) { -+ case 9: goto tr46; -+ case 32: goto tr46; -+ case 45: goto st27; -+ case 59: goto tr48; -+ } -+ if ( (*p) < 65 ) { -+ if ( 48 <= (*p) && (*p) <= 57 ) -+ goto st27; -+ } else if ( (*p) > 90 ) { -+ if ( 97 <= (*p) && (*p) <= 122 ) -+ goto st27; -+ } else -+ goto st27; -+ goto tr2; ++ switch( (*p) ) { ++ case 9: goto tr46; ++ case 32: goto tr46; ++ case 45: goto st27; ++ case 59: goto tr48; ++ } ++ if ( (*p) < 65 ) { ++ if ( 48 <= (*p) && (*p) <= 57 ) ++ goto st27; ++ } else if ( (*p) > 90 ) { ++ if ( 97 <= (*p) && (*p) <= 122 ) ++ goto st27; ++ } else ++ goto st27; ++ goto tr2; +tr46: +#line 110 "cfg_parser.rl" -+ { ret = owrt_string(&(lst.rp_), cpy_start, p); cpy_start = NULL; } -+ goto st28; ++ { ret = owrt_string(&(lst.rp_), cpy_start, p); cpy_start = NULL; } ++ goto st28; +tr63: +#line 111 "cfg_parser.rl" -+ { lst.rrt_ = IPV4_ONLY; } -+ goto st28; ++ { lst.rrt_ = IPV4_ONLY; } ++ goto st28; +tr64: +#line 112 "cfg_parser.rl" -+ { lst.rrt_ = IPV6_ONLY; } -+ goto st28; ++ { lst.rrt_ = IPV6_ONLY; } ++ goto st28; +tr73: +#line 107 "cfg_parser.rl" -+ { lst.lrt_ = IPV4_ONLY; } -+ goto st28; ++ { lst.lrt_ = IPV4_ONLY; } ++ goto st28; +tr74: +#line 108 "cfg_parser.rl" -+ { lst.lrt_ = IPV6_ONLY; } -+ goto st28; ++ { lst.lrt_ = IPV6_ONLY; } ++ goto st28; +tr85: +#line 113 "cfg_parser.rl" -+ { ret = owrt_string(&(lst.sa_), cpy_start, p); cpy_start = NULL; } -+ goto st28; ++ { ret = owrt_string(&(lst.sa_), cpy_start, p); cpy_start = NULL; } ++ goto st28; +st28: -+ if ( ++p == pe ) -+ goto _test_eof28; ++ if ( ++p == pe ) ++ goto _test_eof28; +case 28: +#line 673 "cfg_parser.c" -+ switch( (*p) ) { -+ case 9: goto st28; -+ case 32: goto st28; -+ case 59: goto st14; -+ } -+ goto tr2; ++ switch( (*p) ) { ++ case 9: goto st28; ++ case 32: goto st28; ++ case 59: goto st14; ++ } ++ goto tr2; +tr40: +#line 104 "cfg_parser.rl" -+ { cpy_start = p; } -+ goto st29; ++ { cpy_start = p; } ++ goto st29; +st29: -+ if ( ++p == pe ) -+ goto _test_eof29; ++ if ( ++p == pe ) ++ goto _test_eof29; +case 29: +#line 688 "cfg_parser.c" -+ switch( (*p) ) { -+ case 9: goto tr42; -+ case 32: goto tr42; -+ case 58: goto st30; -+ } -+ if ( (*p) < 65 ) { -+ if ( (*p) > 46 ) { -+ if ( 48 <= (*p) && (*p) <= 57 ) -+ goto st29; -+ } else if ( (*p) >= 45 ) -+ goto st25; -+ } else if ( (*p) > 70 ) { -+ if ( (*p) < 97 ) { -+ if ( 71 <= (*p) && (*p) <= 90 ) -+ goto st25; -+ } else if ( (*p) > 102 ) { -+ if ( 103 <= (*p) && (*p) <= 122 ) -+ goto st25; -+ } else -+ goto st29; -+ } else -+ goto st29; -+ goto tr2; ++ switch( (*p) ) { ++ case 9: goto tr42; ++ case 32: goto tr42; ++ case 58: goto st30; ++ } ++ if ( (*p) < 65 ) { ++ if ( (*p) > 46 ) { ++ if ( 48 <= (*p) && (*p) <= 57 ) ++ goto st29; ++ } else if ( (*p) >= 45 ) ++ goto st25; ++ } else if ( (*p) > 70 ) { ++ if ( (*p) < 97 ) { ++ if ( 71 <= (*p) && (*p) <= 90 ) ++ goto st25; ++ } else if ( (*p) > 102 ) { ++ if ( 103 <= (*p) && (*p) <= 122 ) ++ goto st25; ++ } else ++ goto st29; ++ } else ++ goto st29; ++ goto tr2; +tr41: +#line 104 "cfg_parser.rl" -+ { cpy_start = p; } -+ goto st30; ++ { cpy_start = p; } ++ goto st30; +st30: -+ if ( ++p == pe ) -+ goto _test_eof30; ++ if ( ++p == pe ) ++ goto _test_eof30; +case 30: +#line 720 "cfg_parser.c" -+ switch( (*p) ) { -+ case 9: goto tr42; -+ case 32: goto tr42; -+ } -+ if ( (*p) < 65 ) { -+ if ( 48 <= (*p) && (*p) <= 58 ) -+ goto st30; -+ } else if ( (*p) > 70 ) { -+ if ( 97 <= (*p) && (*p) <= 102 ) -+ goto st30; -+ } else -+ goto st30; -+ goto tr2; ++ switch( (*p) ) { ++ case 9: goto tr42; ++ case 32: goto tr42; ++ } ++ if ( (*p) < 65 ) { ++ if ( 48 <= (*p) && (*p) <= 58 ) ++ goto st30; ++ } else if ( (*p) > 70 ) { ++ if ( 97 <= (*p) && (*p) <= 102 ) ++ goto st30; ++ } else ++ goto st30; ++ goto tr2; +st31: -+ if ( ++p == pe ) -+ goto _test_eof31; ++ if ( ++p == pe ) ++ goto _test_eof31; +case 31: -+ if ( (*p) == 114 ) -+ goto st32; -+ goto tr2; ++ if ( (*p) == 114 ) ++ goto st32; ++ goto tr2; +st32: -+ if ( ++p == pe ) -+ goto _test_eof32; ++ if ( ++p == pe ) ++ goto _test_eof32; +case 32: -+ if ( (*p) == 101 ) -+ goto st33; -+ goto tr2; ++ if ( (*p) == 101 ) ++ goto st33; ++ goto tr2; +st33: -+ if ( ++p == pe ) -+ goto _test_eof33; ++ if ( ++p == pe ) ++ goto _test_eof33; +case 33: -+ if ( (*p) == 115 ) -+ goto st34; -+ goto tr2; ++ if ( (*p) == 115 ) ++ goto st34; ++ goto tr2; +st34: -+ if ( ++p == pe ) -+ goto _test_eof34; ++ if ( ++p == pe ) ++ goto _test_eof34; +case 34: -+ if ( (*p) == 111 ) -+ goto st35; -+ goto tr2; ++ if ( (*p) == 111 ) ++ goto st35; ++ goto tr2; +st35: -+ if ( ++p == pe ) -+ goto _test_eof35; ++ if ( ++p == pe ) ++ goto _test_eof35; +case 35: -+ if ( (*p) == 108 ) -+ goto st36; -+ goto tr2; ++ if ( (*p) == 108 ) ++ goto st36; ++ goto tr2; +st36: -+ if ( ++p == pe ) -+ goto _test_eof36; ++ if ( ++p == pe ) ++ goto _test_eof36; +case 36: -+ if ( (*p) == 118 ) -+ goto st37; -+ goto tr2; ++ if ( (*p) == 118 ) ++ goto st37; ++ goto tr2; +st37: -+ if ( ++p == pe ) -+ goto _test_eof37; ++ if ( ++p == pe ) ++ goto _test_eof37; +case 37: -+ switch( (*p) ) { -+ case 9: goto st37; -+ case 32: goto st37; -+ case 58: goto st38; -+ } -+ goto tr2; ++ switch( (*p) ) { ++ case 9: goto st37; ++ case 32: goto st37; ++ case 58: goto st38; ++ } ++ goto tr2; +st38: -+ if ( ++p == pe ) -+ goto _test_eof38; ++ if ( ++p == pe ) ++ goto _test_eof38; +case 38: -+ switch( (*p) ) { -+ case 9: goto st39; -+ case 32: goto st39; -+ } -+ goto tr2; ++ switch( (*p) ) { ++ case 9: goto st39; ++ case 32: goto st39; ++ } ++ goto tr2; +st39: -+ if ( ++p == pe ) -+ goto _test_eof39; ++ if ( ++p == pe ) ++ goto _test_eof39; +case 39: -+ switch( (*p) ) { -+ case 9: goto st39; -+ case 32: goto st39; -+ case 73: goto st40; -+ case 105: goto st40; -+ } -+ goto tr2; ++ switch( (*p) ) { ++ case 9: goto st39; ++ case 32: goto st39; ++ case 73: goto st40; ++ case 105: goto st40; ++ } ++ goto tr2; +st40: -+ if ( ++p == pe ) -+ goto _test_eof40; ++ if ( ++p == pe ) ++ goto _test_eof40; +case 40: -+ switch( (*p) ) { -+ case 80: goto st41; -+ case 112: goto st41; -+ } -+ goto tr2; ++ switch( (*p) ) { ++ case 80: goto st41; ++ case 112: goto st41; ++ } ++ goto tr2; +st41: -+ if ( ++p == pe ) -+ goto _test_eof41; ++ if ( ++p == pe ) ++ goto _test_eof41; +case 41: -+ switch( (*p) ) { -+ case 86: goto st42; -+ case 118: goto st42; -+ } -+ goto tr2; ++ switch( (*p) ) { ++ case 86: goto st42; ++ case 118: goto st42; ++ } ++ goto tr2; +st42: -+ if ( ++p == pe ) -+ goto _test_eof42; ++ if ( ++p == pe ) ++ goto _test_eof42; +case 42: -+ switch( (*p) ) { -+ case 52: goto tr63; -+ case 54: goto tr64; -+ } -+ goto tr2; ++ switch( (*p) ) { ++ case 52: goto tr63; ++ case 54: goto tr64; ++ } ++ goto tr2; +st43: -+ if ( ++p == pe ) -+ goto _test_eof43; ++ if ( ++p == pe ) ++ goto _test_eof43; +case 43: -+ if ( (*p) == 111 ) -+ goto st44; -+ goto tr2; ++ if ( (*p) == 111 ) ++ goto st44; ++ goto tr2; +st44: -+ if ( ++p == pe ) -+ goto _test_eof44; ++ if ( ++p == pe ) ++ goto _test_eof44; +case 44: -+ if ( (*p) == 108 ) -+ goto st45; -+ goto tr2; ++ if ( (*p) == 108 ) ++ goto st45; ++ goto tr2; +st45: -+ if ( ++p == pe ) -+ goto _test_eof45; ++ if ( ++p == pe ) ++ goto _test_eof45; +case 45: -+ if ( (*p) == 118 ) -+ goto st46; -+ goto tr2; ++ if ( (*p) == 118 ) ++ goto st46; ++ goto tr2; +st46: -+ if ( ++p == pe ) -+ goto _test_eof46; ++ if ( ++p == pe ) ++ goto _test_eof46; +case 46: -+ switch( (*p) ) { -+ case 9: goto st46; -+ case 32: goto st46; -+ case 58: goto st47; -+ } -+ goto tr2; ++ switch( (*p) ) { ++ case 9: goto st46; ++ case 32: goto st46; ++ case 58: goto st47; ++ } ++ goto tr2; +st47: -+ if ( ++p == pe ) -+ goto _test_eof47; ++ if ( ++p == pe ) ++ goto _test_eof47; +case 47: -+ switch( (*p) ) { -+ case 9: goto st48; -+ case 32: goto st48; -+ } -+ goto tr2; ++ switch( (*p) ) { ++ case 9: goto st48; ++ case 32: goto st48; ++ } ++ goto tr2; +st48: -+ if ( ++p == pe ) -+ goto _test_eof48; ++ if ( ++p == pe ) ++ goto _test_eof48; +case 48: -+ switch( (*p) ) { -+ case 9: goto st48; -+ case 32: goto st48; -+ case 73: goto st49; -+ case 105: goto st49; -+ } -+ goto tr2; ++ switch( (*p) ) { ++ case 9: goto st48; ++ case 32: goto st48; ++ case 73: goto st49; ++ case 105: goto st49; ++ } ++ goto tr2; +st49: -+ if ( ++p == pe ) -+ goto _test_eof49; ++ if ( ++p == pe ) ++ goto _test_eof49; +case 49: -+ switch( (*p) ) { -+ case 80: goto st50; -+ case 112: goto st50; -+ } -+ goto tr2; ++ switch( (*p) ) { ++ case 80: goto st50; ++ case 112: goto st50; ++ } ++ goto tr2; +st50: -+ if ( ++p == pe ) -+ goto _test_eof50; ++ if ( ++p == pe ) ++ goto _test_eof50; +case 50: -+ switch( (*p) ) { -+ case 86: goto st51; -+ case 118: goto st51; -+ } -+ goto tr2; ++ switch( (*p) ) { ++ case 86: goto st51; ++ case 118: goto st51; ++ } ++ goto tr2; +st51: -+ if ( ++p == pe ) -+ goto _test_eof51; ++ if ( ++p == pe ) ++ goto _test_eof51; +case 51: -+ switch( (*p) ) { -+ case 52: goto tr73; -+ case 54: goto tr74; -+ } -+ goto tr2; ++ switch( (*p) ) { ++ case 52: goto tr73; ++ case 54: goto tr74; ++ } ++ goto tr2; +st52: -+ if ( ++p == pe ) -+ goto _test_eof52; ++ if ( ++p == pe ) ++ goto _test_eof52; +case 52: -+ if ( (*p) == 111 ) -+ goto st53; -+ goto tr2; ++ if ( (*p) == 111 ) ++ goto st53; ++ goto tr2; +st53: -+ if ( ++p == pe ) -+ goto _test_eof53; ++ if ( ++p == pe ) ++ goto _test_eof53; +case 53: -+ if ( (*p) == 117 ) -+ goto st54; -+ goto tr2; ++ if ( (*p) == 117 ) ++ goto st54; ++ goto tr2; +st54: -+ if ( ++p == pe ) -+ goto _test_eof54; ++ if ( ++p == pe ) ++ goto _test_eof54; +case 54: -+ if ( (*p) == 114 ) -+ goto st55; -+ goto tr2; ++ if ( (*p) == 114 ) ++ goto st55; ++ goto tr2; +st55: -+ if ( ++p == pe ) -+ goto _test_eof55; ++ if ( ++p == pe ) ++ goto _test_eof55; +case 55: -+ if ( (*p) == 99 ) -+ goto st56; -+ goto tr2; ++ if ( (*p) == 99 ) ++ goto st56; ++ goto tr2; +st56: -+ if ( ++p == pe ) -+ goto _test_eof56; ++ if ( ++p == pe ) ++ goto _test_eof56; +case 56: -+ if ( (*p) == 101 ) -+ goto st57; -+ goto tr2; ++ if ( (*p) == 101 ) ++ goto st57; ++ goto tr2; +st57: -+ if ( ++p == pe ) -+ goto _test_eof57; ++ if ( ++p == pe ) ++ goto _test_eof57; +case 57: -+ switch( (*p) ) { -+ case 9: goto st57; -+ case 32: goto st57; -+ case 58: goto st58; -+ } -+ goto tr2; ++ switch( (*p) ) { ++ case 9: goto st57; ++ case 32: goto st57; ++ case 58: goto st58; ++ } ++ goto tr2; +st58: -+ if ( ++p == pe ) -+ goto _test_eof58; ++ if ( ++p == pe ) ++ goto _test_eof58; +case 58: -+ switch( (*p) ) { -+ case 9: goto st59; -+ case 32: goto st59; -+ } -+ goto tr2; ++ switch( (*p) ) { ++ case 9: goto st59; ++ case 32: goto st59; ++ } ++ goto tr2; +st59: -+ if ( ++p == pe ) -+ goto _test_eof59; ++ if ( ++p == pe ) ++ goto _test_eof59; +case 59: -+ switch( (*p) ) { -+ case 9: goto st59; -+ case 32: goto st59; -+ case 58: goto tr84; -+ } -+ if ( (*p) < 65 ) { -+ if ( (*p) > 46 ) { -+ if ( 48 <= (*p) && (*p) <= 57 ) -+ goto tr83; -+ } else if ( (*p) >= 45 ) -+ goto tr82; -+ } else if ( (*p) > 70 ) { -+ if ( (*p) < 97 ) { -+ if ( 71 <= (*p) && (*p) <= 90 ) -+ goto tr82; -+ } else if ( (*p) > 102 ) { -+ if ( 103 <= (*p) && (*p) <= 122 ) -+ goto tr82; -+ } else -+ goto tr83; -+ } else -+ goto tr83; -+ goto tr2; ++ switch( (*p) ) { ++ case 9: goto st59; ++ case 32: goto st59; ++ case 58: goto tr84; ++ } ++ if ( (*p) < 65 ) { ++ if ( (*p) > 46 ) { ++ if ( 48 <= (*p) && (*p) <= 57 ) ++ goto tr83; ++ } else if ( (*p) >= 45 ) ++ goto tr82; ++ } else if ( (*p) > 70 ) { ++ if ( (*p) < 97 ) { ++ if ( 71 <= (*p) && (*p) <= 90 ) ++ goto tr82; ++ } else if ( (*p) > 102 ) { ++ if ( 103 <= (*p) && (*p) <= 122 ) ++ goto tr82; ++ } else ++ goto tr83; ++ } else ++ goto tr83; ++ goto tr2; +tr82: +#line 104 "cfg_parser.rl" -+ { cpy_start = p; } -+ goto st60; ++ { cpy_start = p; } ++ goto st60; +st60: -+ if ( ++p == pe ) -+ goto _test_eof60; ++ if ( ++p == pe ) ++ goto _test_eof60; +case 60: +#line 1000 "cfg_parser.c" -+ switch( (*p) ) { -+ case 9: goto tr85; -+ case 32: goto tr85; -+ case 59: goto tr87; -+ } -+ if ( (*p) < 48 ) { -+ if ( 45 <= (*p) && (*p) <= 46 ) -+ goto st60; -+ } else if ( (*p) > 57 ) { -+ if ( (*p) > 90 ) { -+ if ( 97 <= (*p) && (*p) <= 122 ) -+ goto st60; -+ } else if ( (*p) >= 65 ) -+ goto st60; -+ } else -+ goto st60; -+ goto tr2; ++ switch( (*p) ) { ++ case 9: goto tr85; ++ case 32: goto tr85; ++ case 59: goto tr87; ++ } ++ if ( (*p) < 48 ) { ++ if ( 45 <= (*p) && (*p) <= 46 ) ++ goto st60; ++ } else if ( (*p) > 57 ) { ++ if ( (*p) > 90 ) { ++ if ( 97 <= (*p) && (*p) <= 122 ) ++ goto st60; ++ } else if ( (*p) >= 65 ) ++ goto st60; ++ } else ++ goto st60; ++ goto tr2; +tr83: +#line 104 "cfg_parser.rl" -+ { cpy_start = p; } -+ goto st61; ++ { cpy_start = p; } ++ goto st61; +st61: -+ if ( ++p == pe ) -+ goto _test_eof61; ++ if ( ++p == pe ) ++ goto _test_eof61; +case 61: +#line 1026 "cfg_parser.c" -+ switch( (*p) ) { -+ case 9: goto tr85; -+ case 32: goto tr85; -+ case 58: goto st62; -+ case 59: goto tr87; -+ } -+ if ( (*p) < 65 ) { -+ if ( (*p) > 46 ) { -+ if ( 48 <= (*p) && (*p) <= 57 ) -+ goto st61; -+ } else if ( (*p) >= 45 ) -+ goto st60; -+ } else if ( (*p) > 70 ) { -+ if ( (*p) < 97 ) { -+ if ( 71 <= (*p) && (*p) <= 90 ) -+ goto st60; -+ } else if ( (*p) > 102 ) { -+ if ( 103 <= (*p) && (*p) <= 122 ) -+ goto st60; -+ } else -+ goto st61; -+ } else -+ goto st61; -+ goto tr2; ++ switch( (*p) ) { ++ case 9: goto tr85; ++ case 32: goto tr85; ++ case 58: goto st62; ++ case 59: goto tr87; ++ } ++ if ( (*p) < 65 ) { ++ if ( (*p) > 46 ) { ++ if ( 48 <= (*p) && (*p) <= 57 ) ++ goto st61; ++ } else if ( (*p) >= 45 ) ++ goto st60; ++ } else if ( (*p) > 70 ) { ++ if ( (*p) < 97 ) { ++ if ( 71 <= (*p) && (*p) <= 90 ) ++ goto st60; ++ } else if ( (*p) > 102 ) { ++ if ( 103 <= (*p) && (*p) <= 122 ) ++ goto st60; ++ } else ++ goto st61; ++ } else ++ goto st61; ++ goto tr2; +tr84: +#line 104 "cfg_parser.rl" -+ { cpy_start = p; } -+ goto st62; ++ { cpy_start = p; } ++ goto st62; +st62: -+ if ( ++p == pe ) -+ goto _test_eof62; ++ if ( ++p == pe ) ++ goto _test_eof62; +case 62: +#line 1059 "cfg_parser.c" -+ switch( (*p) ) { -+ case 9: goto tr85; -+ case 32: goto tr85; -+ case 59: goto tr87; -+ } -+ if ( (*p) < 65 ) { -+ if ( 48 <= (*p) && (*p) <= 58 ) -+ goto st62; -+ } else if ( (*p) > 70 ) { -+ if ( 97 <= (*p) && (*p) <= 102 ) -+ goto st62; -+ } else -+ goto st62; -+ goto tr2; ++ switch( (*p) ) { ++ case 9: goto tr85; ++ case 32: goto tr85; ++ case 59: goto tr87; ++ } ++ if ( (*p) < 65 ) { ++ if ( 48 <= (*p) && (*p) <= 58 ) ++ goto st62; ++ } else if ( (*p) > 70 ) { ++ if ( 97 <= (*p) && (*p) <= 102 ) ++ goto st62; ++ } else ++ goto st62; ++ goto tr2; +st63: -+ if ( ++p == pe ) -+ goto _test_eof63; ++ if ( ++p == pe ) ++ goto _test_eof63; +case 63: -+ if ( (*p) == 59 ) -+ goto tr90; -+ goto tr2; ++ if ( (*p) == 59 ) ++ goto tr90; ++ goto tr2; +tr10: +#line 104 "cfg_parser.rl" -+ { cpy_start = p; } -+ goto st64; ++ { cpy_start = p; } ++ goto st64; +st64: -+ if ( ++p == pe ) -+ goto _test_eof64; ++ if ( ++p == pe ) ++ goto _test_eof64; +case 64: +#line 1089 "cfg_parser.c" -+ switch( (*p) ) { -+ case 9: goto tr91; -+ case 32: goto tr91; -+ } -+ if ( (*p) < 48 ) { -+ if ( 45 <= (*p) && (*p) <= 46 ) -+ goto st64; -+ } else if ( (*p) > 57 ) { -+ if ( (*p) > 90 ) { -+ if ( 97 <= (*p) && (*p) <= 122 ) -+ goto st64; -+ } else if ( (*p) >= 65 ) -+ goto st64; -+ } else -+ goto st64; -+ goto tr2; ++ switch( (*p) ) { ++ case 9: goto tr91; ++ case 32: goto tr91; ++ } ++ if ( (*p) < 48 ) { ++ if ( 45 <= (*p) && (*p) <= 46 ) ++ goto st64; ++ } else if ( (*p) > 57 ) { ++ if ( (*p) > 90 ) { ++ if ( 97 <= (*p) && (*p) <= 122 ) ++ goto st64; ++ } else if ( (*p) >= 65 ) ++ goto st64; ++ } else ++ goto st64; ++ goto tr2; +tr11: +#line 104 "cfg_parser.rl" -+ { cpy_start = p; } -+ goto st65; ++ { cpy_start = p; } ++ goto st65; +st65: -+ if ( ++p == pe ) -+ goto _test_eof65; ++ if ( ++p == pe ) ++ goto _test_eof65; +case 65: +#line 1114 "cfg_parser.c" -+ switch( (*p) ) { -+ case 9: goto tr91; -+ case 32: goto tr91; -+ case 58: goto st66; -+ } -+ if ( (*p) < 65 ) { -+ if ( (*p) > 46 ) { -+ if ( 48 <= (*p) && (*p) <= 57 ) -+ goto st65; -+ } else if ( (*p) >= 45 ) -+ goto st64; -+ } else if ( (*p) > 70 ) { -+ if ( (*p) < 97 ) { -+ if ( 71 <= (*p) && (*p) <= 90 ) -+ goto st64; -+ } else if ( (*p) > 102 ) { -+ if ( 103 <= (*p) && (*p) <= 122 ) -+ goto st64; -+ } else -+ goto st65; -+ } else -+ goto st65; -+ goto tr2; ++ switch( (*p) ) { ++ case 9: goto tr91; ++ case 32: goto tr91; ++ case 58: goto st66; ++ } ++ if ( (*p) < 65 ) { ++ if ( (*p) > 46 ) { ++ if ( 48 <= (*p) && (*p) <= 57 ) ++ goto st65; ++ } else if ( (*p) >= 45 ) ++ goto st64; ++ } else if ( (*p) > 70 ) { ++ if ( (*p) < 97 ) { ++ if ( 71 <= (*p) && (*p) <= 90 ) ++ goto st64; ++ } else if ( (*p) > 102 ) { ++ if ( 103 <= (*p) && (*p) <= 122 ) ++ goto st64; ++ } else ++ goto st65; ++ } else ++ goto st65; ++ goto tr2; +tr12: +#line 104 "cfg_parser.rl" -+ { cpy_start = p; } -+ goto st66; ++ { cpy_start = p; } ++ goto st66; +st66: -+ if ( ++p == pe ) -+ goto _test_eof66; ++ if ( ++p == pe ) ++ goto _test_eof66; +case 66: +#line 1146 "cfg_parser.c" -+ switch( (*p) ) { -+ case 9: goto tr91; -+ case 32: goto tr91; -+ } -+ if ( (*p) < 65 ) { -+ if ( 48 <= (*p) && (*p) <= 58 ) -+ goto st66; -+ } else if ( (*p) > 70 ) { -+ if ( 97 <= (*p) && (*p) <= 102 ) -+ goto st66; -+ } else -+ goto st66; -+ goto tr2; -+ } -+ _test_eof67: cs = 67; goto _test_eof; -+ _test_eof1: cs = 1; goto _test_eof; -+ _test_eof2: cs = 2; goto _test_eof; -+ _test_eof3: cs = 3; goto _test_eof; -+ _test_eof4: cs = 4; goto _test_eof; -+ _test_eof5: cs = 5; goto _test_eof; -+ _test_eof6: cs = 6; goto _test_eof; -+ _test_eof7: cs = 7; goto _test_eof; -+ _test_eof8: cs = 8; goto _test_eof; -+ _test_eof9: cs = 9; goto _test_eof; -+ _test_eof10: cs = 10; goto _test_eof; -+ _test_eof11: cs = 11; goto _test_eof; -+ _test_eof12: cs = 12; goto _test_eof; -+ _test_eof13: cs = 13; goto _test_eof; -+ _test_eof14: cs = 14; goto _test_eof; -+ _test_eof15: cs = 15; goto _test_eof; -+ _test_eof16: cs = 16; goto _test_eof; -+ _test_eof17: cs = 17; goto _test_eof; -+ _test_eof18: cs = 18; goto _test_eof; -+ _test_eof19: cs = 19; goto _test_eof; -+ _test_eof20: cs = 20; goto _test_eof; -+ _test_eof21: cs = 21; goto _test_eof; -+ _test_eof22: cs = 22; goto _test_eof; -+ _test_eof23: cs = 23; goto _test_eof; -+ _test_eof24: cs = 24; goto _test_eof; -+ _test_eof25: cs = 25; goto _test_eof; -+ _test_eof26: cs = 26; goto _test_eof; -+ _test_eof27: cs = 27; goto _test_eof; -+ _test_eof28: cs = 28; goto _test_eof; -+ _test_eof29: cs = 29; goto _test_eof; -+ _test_eof30: cs = 30; goto _test_eof; -+ _test_eof31: cs = 31; goto _test_eof; -+ _test_eof32: cs = 32; goto _test_eof; -+ _test_eof33: cs = 33; goto _test_eof; -+ _test_eof34: cs = 34; goto _test_eof; -+ _test_eof35: cs = 35; goto _test_eof; -+ _test_eof36: cs = 36; goto _test_eof; -+ _test_eof37: cs = 37; goto _test_eof; -+ _test_eof38: cs = 38; goto _test_eof; -+ _test_eof39: cs = 39; goto _test_eof; -+ _test_eof40: cs = 40; goto _test_eof; -+ _test_eof41: cs = 41; goto _test_eof; -+ _test_eof42: cs = 42; goto _test_eof; -+ _test_eof43: cs = 43; goto _test_eof; -+ _test_eof44: cs = 44; goto _test_eof; -+ _test_eof45: cs = 45; goto _test_eof; -+ _test_eof46: cs = 46; goto _test_eof; -+ _test_eof47: cs = 47; goto _test_eof; -+ _test_eof48: cs = 48; goto _test_eof; -+ _test_eof49: cs = 49; goto _test_eof; -+ _test_eof50: cs = 50; goto _test_eof; -+ _test_eof51: cs = 51; goto _test_eof; -+ _test_eof52: cs = 52; goto _test_eof; -+ _test_eof53: cs = 53; goto _test_eof; -+ _test_eof54: cs = 54; goto _test_eof; -+ _test_eof55: cs = 55; goto _test_eof; -+ _test_eof56: cs = 56; goto _test_eof; -+ _test_eof57: cs = 57; goto _test_eof; -+ _test_eof58: cs = 58; goto _test_eof; -+ _test_eof59: cs = 59; goto _test_eof; -+ _test_eof60: cs = 60; goto _test_eof; -+ _test_eof61: cs = 61; goto _test_eof; -+ _test_eof62: cs = 62; goto _test_eof; -+ _test_eof63: cs = 63; goto _test_eof; -+ _test_eof64: cs = 64; goto _test_eof; -+ _test_eof65: cs = 65; goto _test_eof; -+ _test_eof66: cs = 66; goto _test_eof; ++ switch( (*p) ) { ++ case 9: goto tr91; ++ case 32: goto tr91; ++ } ++ if ( (*p) < 65 ) { ++ if ( 48 <= (*p) && (*p) <= 58 ) ++ goto st66; ++ } else if ( (*p) > 70 ) { ++ if ( 97 <= (*p) && (*p) <= 102 ) ++ goto st66; ++ } else ++ goto st66; ++ goto tr2; ++ } ++ _test_eof67: cs = 67; goto _test_eof; ++ _test_eof1: cs = 1; goto _test_eof; ++ _test_eof2: cs = 2; goto _test_eof; ++ _test_eof3: cs = 3; goto _test_eof; ++ _test_eof4: cs = 4; goto _test_eof; ++ _test_eof5: cs = 5; goto _test_eof; ++ _test_eof6: cs = 6; goto _test_eof; ++ _test_eof7: cs = 7; goto _test_eof; ++ _test_eof8: cs = 8; goto _test_eof; ++ _test_eof9: cs = 9; goto _test_eof; ++ _test_eof10: cs = 10; goto _test_eof; ++ _test_eof11: cs = 11; goto _test_eof; ++ _test_eof12: cs = 12; goto _test_eof; ++ _test_eof13: cs = 13; goto _test_eof; ++ _test_eof14: cs = 14; goto _test_eof; ++ _test_eof15: cs = 15; goto _test_eof; ++ _test_eof16: cs = 16; goto _test_eof; ++ _test_eof17: cs = 17; goto _test_eof; ++ _test_eof18: cs = 18; goto _test_eof; ++ _test_eof19: cs = 19; goto _test_eof; ++ _test_eof20: cs = 20; goto _test_eof; ++ _test_eof21: cs = 21; goto _test_eof; ++ _test_eof22: cs = 22; goto _test_eof; ++ _test_eof23: cs = 23; goto _test_eof; ++ _test_eof24: cs = 24; goto _test_eof; ++ _test_eof25: cs = 25; goto _test_eof; ++ _test_eof26: cs = 26; goto _test_eof; ++ _test_eof27: cs = 27; goto _test_eof; ++ _test_eof28: cs = 28; goto _test_eof; ++ _test_eof29: cs = 29; goto _test_eof; ++ _test_eof30: cs = 30; goto _test_eof; ++ _test_eof31: cs = 31; goto _test_eof; ++ _test_eof32: cs = 32; goto _test_eof; ++ _test_eof33: cs = 33; goto _test_eof; ++ _test_eof34: cs = 34; goto _test_eof; ++ _test_eof35: cs = 35; goto _test_eof; ++ _test_eof36: cs = 36; goto _test_eof; ++ _test_eof37: cs = 37; goto _test_eof; ++ _test_eof38: cs = 38; goto _test_eof; ++ _test_eof39: cs = 39; goto _test_eof; ++ _test_eof40: cs = 40; goto _test_eof; ++ _test_eof41: cs = 41; goto _test_eof; ++ _test_eof42: cs = 42; goto _test_eof; ++ _test_eof43: cs = 43; goto _test_eof; ++ _test_eof44: cs = 44; goto _test_eof; ++ _test_eof45: cs = 45; goto _test_eof; ++ _test_eof46: cs = 46; goto _test_eof; ++ _test_eof47: cs = 47; goto _test_eof; ++ _test_eof48: cs = 48; goto _test_eof; ++ _test_eof49: cs = 49; goto _test_eof; ++ _test_eof50: cs = 50; goto _test_eof; ++ _test_eof51: cs = 51; goto _test_eof; ++ _test_eof52: cs = 52; goto _test_eof; ++ _test_eof53: cs = 53; goto _test_eof; ++ _test_eof54: cs = 54; goto _test_eof; ++ _test_eof55: cs = 55; goto _test_eof; ++ _test_eof56: cs = 56; goto _test_eof; ++ _test_eof57: cs = 57; goto _test_eof; ++ _test_eof58: cs = 58; goto _test_eof; ++ _test_eof59: cs = 59; goto _test_eof; ++ _test_eof60: cs = 60; goto _test_eof; ++ _test_eof61: cs = 61; goto _test_eof; ++ _test_eof62: cs = 62; goto _test_eof; ++ _test_eof63: cs = 63; goto _test_eof; ++ _test_eof64: cs = 64; goto _test_eof; ++ _test_eof65: cs = 65; goto _test_eof; ++ _test_eof66: cs = 66; goto _test_eof; + -+ _test_eof: {} -+ if ( p == eof ) -+ { -+ switch ( cs ) { -+ case 1: -+ case 2: -+ case 3: -+ case 4: -+ case 5: -+ case 6: -+ case 7: -+ case 8: -+ case 9: -+ case 10: -+ case 11: -+ case 12: -+ case 13: -+ case 14: -+ case 15: -+ case 16: -+ case 17: -+ case 18: -+ case 19: -+ case 20: -+ case 21: -+ case 22: -+ case 23: -+ case 24: -+ case 25: -+ case 26: -+ case 27: -+ case 28: -+ case 29: -+ case 30: -+ case 31: -+ case 32: -+ case 33: -+ case 34: -+ case 35: -+ case 36: -+ case 37: -+ case 38: -+ case 39: -+ case 40: -+ case 41: -+ case 42: -+ case 43: -+ case 44: -+ case 45: -+ case 46: -+ case 47: -+ case 48: -+ case 49: -+ case 50: -+ case 51: -+ case 52: -+ case 53: -+ case 54: -+ case 55: -+ case 56: -+ case 57: -+ case 58: -+ case 59: -+ case 60: -+ case 61: -+ case 62: -+ case 63: -+ case 64: -+ case 65: -+ case 66: ++ _test_eof: {} ++ if ( p == eof ) ++ { ++ switch ( cs ) { ++ case 1: ++ case 2: ++ case 3: ++ case 4: ++ case 5: ++ case 6: ++ case 7: ++ case 8: ++ case 9: ++ case 10: ++ case 11: ++ case 12: ++ case 13: ++ case 14: ++ case 15: ++ case 16: ++ case 17: ++ case 18: ++ case 19: ++ case 20: ++ case 21: ++ case 22: ++ case 23: ++ case 24: ++ case 25: ++ case 26: ++ case 27: ++ case 28: ++ case 29: ++ case 30: ++ case 31: ++ case 32: ++ case 33: ++ case 34: ++ case 35: ++ case 36: ++ case 37: ++ case 38: ++ case 39: ++ case 40: ++ case 41: ++ case 42: ++ case 43: ++ case 44: ++ case 45: ++ case 46: ++ case 47: ++ case 48: ++ case 49: ++ case 50: ++ case 51: ++ case 52: ++ case 53: ++ case 54: ++ case 55: ++ case 56: ++ case 57: ++ case 58: ++ case 59: ++ case 60: ++ case 61: ++ case 62: ++ case 63: ++ case 64: ++ case 65: ++ case 66: +#line 118 "cfg_parser.rl" -+ { ++ { + if(p == eof) + log_printf(ERROR, "config file syntax error: unexpected end of file"); + else @@ -1308,13 +1308,13 @@ diff -Nur tcpproxy-1.1.orig/src/cfg_parser.c tcpproxy-1.1/src/cfg_parser.c + + {cs = (cfg_parser_error); goto _again;} + } -+ break; ++ break; +#line 1309 "cfg_parser.c" -+ } -+ } ++ } ++ } + -+ _out: {} -+ } ++ _out: {} ++ } + +#line 178 "cfg_parser.rl" + From 21645ec347120495a75dc30568013de5c4ebe376 Mon Sep 17 00:00:00 2001 From: Nikos Mavrogiannopoulos Date: Sun, 17 May 2015 20:10:31 +0200 Subject: [PATCH 404/681] libseccomp: updated to 2.2.1 Signed-off-by: Nikos Mavrogiannopoulos --- libs/libseccomp/Makefile | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/libs/libseccomp/Makefile b/libs/libseccomp/Makefile index 8c40fdcb7..1ad5d2bff 100644 --- a/libs/libseccomp/Makefile +++ b/libs/libseccomp/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2005-2010 OpenWrt.org +# Copyright (C) 2014-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -8,13 +8,13 @@ include $(TOPDIR)/rules.mk PKG_NAME:=libseccomp -PKG_VERSION:=2.2.0 -PKG_RELEASE:=2 +PKG_VERSION:=2.2.1 +PKG_RELEASE:=1 PKG_USE_MIPS16:=0 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=https://github.com/seccomp/libseccomp/releases/download/v$(PKG_VERSION)/ -PKG_MD5SUM:=e9509301a1fc024cd10127ac1f31792a +PKG_MD5SUM:=068af8e1bc36fcd4b326ee83875ab4fd PKG_MAINTAINER:=Nikos Mavrogiannopoulos PKG_INSTALL:=1 From d1a5f0ab5d481ec350ad63e28fac33be39cd302a Mon Sep 17 00:00:00 2001 From: Ian Leonard Date: Sun, 17 May 2015 12:42:52 -0700 Subject: [PATCH 405/681] ffmpeg: update to 2.6.3, remove stray spaces Signed-off-by: Ian Leonard --- multimedia/ffmpeg/Makefile | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/multimedia/ffmpeg/Makefile b/multimedia/ffmpeg/Makefile index dddb6efbd..5b100cf4d 100644 --- a/multimedia/ffmpeg/Makefile +++ b/multimedia/ffmpeg/Makefile @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=ffmpeg -PKG_VERSION:=2.6.2 +PKG_VERSION:=2.6.3 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 PKG_SOURCE_URL:=http://ffmpeg.org/releases/ -PKG_MD5SUM:=e75d598921285d6775f20164a91936ac +PKG_MD5SUM:=e2cc3c209f91393d35ab58598e41cf22 PKG_MAINTAINER:=Ted Hess PKG_LICENSE:=LGPL-2.1+ GPL-2+ LGPL-3 @@ -125,7 +125,7 @@ FFMPEG_MINI_DECODERS:= \ wmav1 \ wmav2 \ -FFMPEG_MINI_DEMUXERS := \ +FFMPEG_MINI_DEMUXERS:= \ aac \ ac3 \ avi \ @@ -144,7 +144,7 @@ FFMPEG_MINI_PARSERS:= \ mpeg4video \ mpegaudio \ -FFMPEG_MINI_PROTOCOLS := \ +FFMPEG_MINI_PROTOCOLS:= \ file \ FFMPEG_AUDIO_DECODERS:= \ From e97dd9fee115036aabe709d6e1af23a2a68d7044 Mon Sep 17 00:00:00 2001 From: Ian Leonard Date: Sun, 17 May 2015 12:56:27 -0700 Subject: [PATCH 406/681] libopus: disable building unused features disable-doc turns off API documentation disable-extra-programs turns off demo and test creation Commit also removes whitespace at EOL in description. Signed-off-by: Ian Leonard --- libs/opus/Makefile | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/libs/opus/Makefile b/libs/opus/Makefile index dbcb4dd95..ed64c3ed5 100644 --- a/libs/opus/Makefile +++ b/libs/opus/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2014 OpenWrt.org +# Copyright (C) 2014-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=opus PKG_VERSION:=1.1 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://downloads.xiph.org/releases/opus/ @@ -31,11 +31,15 @@ define Package/libopus endef define Package/libopus/description - Opus is a totally open, royalty-free, highly versatile audio codec. Opus is - unmatched for interactive speech and music transmission over the Internet, but + Opus is a totally open, royalty-free, highly versatile audio codec. Opus is + unmatched for interactive speech and music transmission over the Internet, but is also intended for storage and streaming applications. endef +CONFIGURE_ARGS+= \ + --disable-doc \ + --disable-extra-programs + define Build/InstallDev $(INSTALL_DIR) $(1)/usr/include $(CP) $(PKG_INSTALL_DIR)/usr/include/opus $(1)/usr/include/ From c14e55e452f97329f14a1af0aec6d62c3a3801c5 Mon Sep 17 00:00:00 2001 From: Jaehoon You Date: Mon, 18 May 2015 13:50:03 +0900 Subject: [PATCH 407/681] coova-chilli: fix stat failed error when compile without kmod This patch fixes #1261. Signed-off-by: Jaehoon You --- net/coova-chilli/Makefile | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/net/coova-chilli/Makefile b/net/coova-chilli/Makefile index 32e394000..b8acf5426 100644 --- a/net/coova-chilli/Makefile +++ b/net/coova-chilli/Makefile @@ -134,8 +134,10 @@ define Package/coova-chilli/install $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/chilli* $(1)/usr/sbin/ $(INSTALL_DIR) $(1)/usr/lib/ $(CP) $(PKG_INSTALL_DIR)/usr/lib/lib*.so.* $(1)/usr/lib/ - $(INSTALL_DIR) $(1)/usr/lib/iptables - $(CP) $(PKG_INSTALL_DIR)/usr/lib/iptables/lib*.so $(1)/usr/lib/iptables/ + $(if $(CONFIG_PACKAGE_kmod-ipt-coova), \ + $(INSTALL_DIR) $(1)/usr/lib/iptables; \ + $(CP) $(PKG_INSTALL_DIR)/usr/lib/iptables/lib*.so $(1)/usr/lib/iptables/ \ + ) $(INSTALL_DIR) $(1)/etc/init.d $(INSTALL_BIN) files/chilli.init $(1)/etc/init.d/chilli $(INSTALL_DIR) $(1)/etc/config From 2f46e824a231169f74e5061813e972a7aecf23c5 Mon Sep 17 00:00:00 2001 From: Darik Horn Date: Sun, 17 May 2015 23:51:48 -0400 Subject: [PATCH 408/681] liblz4: add new package Signed-off-by: Darik Horn --- libs/liblz4/Makefile | 58 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 58 insertions(+) create mode 100644 libs/liblz4/Makefile diff --git a/libs/liblz4/Makefile b/libs/liblz4/Makefile new file mode 100644 index 000000000..c24d50971 --- /dev/null +++ b/libs/liblz4/Makefile @@ -0,0 +1,58 @@ +# +# Copyright (C) 2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +# Although liblz4 exports a major.minor.patch version, it isn't always +# incremented for new releases, so use the release tag instead. +PKG_NAME:=liblz4 +PKG_VERSION:=r129 +PKG_RELEASE:=1 + +PKG_LICENSE:=BSD-2-Clause +PKG_MAINTAINER:=Darik Horn + +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz +PKG_SOURCE_PROTO:=git +PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) +PKG_SOURCE_URL:=https://github.com/Cyan4973/lz4.git +PKG_SOURCE_VERSION:=$(PKG_VERSION) + +include $(INCLUDE_DIR)/package.mk + +define Package/liblz4 + SECTION:=libs + CATEGORY:=Libraries + TITLE:=Extremely fast compression + URL:=http://www.lz4.org/ +endef + +define Package/liblz4/description + LZ4 is a compression codec that features a very fast encoder and an + even faster decoder. This package provides the liblz4 shared library. +endef + +TARGET_CFLAGS += $(FPIC) + +define Build/Compile + $(MAKE) -C "$(PKG_BUILD_DIR)/lib" $(MAKE_INSTALL_FLAGS) \ + CC="$(TARGET_CC)" \ + CFLAGS="$(TARGET_CFLAGS)" \ + PREFIX="$(CONFIGURE_PREFIX)" \ + install +endef + +define Build/InstallDev + $(CP) $(PKG_INSTALL_DIR)/* $(1)/ +endef + +define Package/liblz4/install + $(INSTALL_DIR) $(1)/usr/lib + $(CP) $(PKG_INSTALL_DIR)/usr/lib/liblz4.so* $(1)/usr/lib/ +endef + +$(eval $(call BuildPackage,liblz4)) From 3a98dd9f31e78b118e2fbb0c98b7f902955650ec Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Wed, 20 May 2015 01:16:42 +0200 Subject: [PATCH 409/681] lvm2: switch to version 2.2.02.120 Signed-off-by: Daniel Golle --- utils/lvm2/Makefile | 6 +++--- utils/lvm2/patches/002-const-stdio.patch | 22 +++++++++++----------- 2 files changed, 14 insertions(+), 14 deletions(-) diff --git a/utils/lvm2/Makefile b/utils/lvm2/Makefile index 4aee2bd9e..7a2e39e38 100644 --- a/utils/lvm2/Makefile +++ b/utils/lvm2/Makefile @@ -9,13 +9,13 @@ include $(TOPDIR)/rules.mk PKG_NAME:=LVM2 -PKG_VERSION:=2.02.119 -PKG_RELEASE:=2 +PKG_VERSION:=2.02.120 +PKG_RELEASE:=1 PKG_LICENSE:=GPL-2.0 LGPL-2.1 PKG_SOURCE:=$(PKG_NAME).$(PKG_VERSION).tgz PKG_SOURCE_URL:=ftp://sources.redhat.com/pub/lvm2 -PKG_MD5SUM:=93d15d76ab78fbcec4721c4b44284bbb +PKG_MD5SUM:=326df8542d3a2376da907e98a0888ccf PKG_MAINTAINER:=Daniel Golle PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME).$(PKG_VERSION) diff --git a/utils/lvm2/patches/002-const-stdio.patch b/utils/lvm2/patches/002-const-stdio.patch index 15c2e8650..5605f0dd1 100644 --- a/utils/lvm2/patches/002-const-stdio.patch +++ b/utils/lvm2/patches/002-const-stdio.patch @@ -1,8 +1,8 @@ -Index: LVM2.2.02.118/lib/commands/toolcontext.c +Index: LVM2.2.02.120/lib/commands/toolcontext.c =================================================================== ---- LVM2.2.02.118.orig/lib/commands/toolcontext.c -+++ LVM2.2.02.118/lib/commands/toolcontext.c -@@ -1625,8 +1625,10 @@ struct cmd_context *create_toolcontext(u +--- LVM2.2.02.120.orig/lib/commands/toolcontext.c ++++ LVM2.2.02.120/lib/commands/toolcontext.c +@@ -1637,8 +1637,10 @@ struct cmd_context *create_toolcontext(u unsigned threaded) { struct cmd_context *cmd; @@ -13,7 +13,7 @@ Index: LVM2.2.02.118/lib/commands/toolcontext.c #ifdef M_MMAP_MAX mallopt(M_MMAP_MAX, 0); -@@ -1662,7 +1664,7 @@ struct cmd_context *create_toolcontext(u +@@ -1674,7 +1676,7 @@ struct cmd_context *create_toolcontext(u /* FIXME Make this configurable? */ reset_lvm_errno(1); @@ -22,7 +22,7 @@ Index: LVM2.2.02.118/lib/commands/toolcontext.c /* Set in/out stream buffering before glibc */ if (set_buffering) { /* Allocate 2 buffers */ -@@ -2035,7 +2037,7 @@ void destroy_toolcontext(struct cmd_cont +@@ -2047,7 +2049,7 @@ void destroy_toolcontext(struct cmd_cont if (cmd->libmem) dm_pool_destroy(cmd->libmem); @@ -31,11 +31,11 @@ Index: LVM2.2.02.118/lib/commands/toolcontext.c if (cmd->linebuffer) { /* Reset stream buffering to defaults */ if (is_valid_fd(STDIN_FILENO) && -Index: LVM2.2.02.118/tools/lvmcmdline.c +Index: LVM2.2.02.120/tools/lvmcmdline.c =================================================================== ---- LVM2.2.02.118.orig/tools/lvmcmdline.c -+++ LVM2.2.02.118/tools/lvmcmdline.c -@@ -1602,6 +1602,7 @@ int lvm_split(char *str, int *argc, char +--- LVM2.2.02.120.orig/tools/lvmcmdline.c ++++ LVM2.2.02.120/tools/lvmcmdline.c +@@ -1606,6 +1606,7 @@ int lvm_split(char *str, int *argc, char /* Make sure we have always valid filedescriptors 0,1,2 */ static int _check_standard_fds(void) { @@ -43,7 +43,7 @@ Index: LVM2.2.02.118/tools/lvmcmdline.c int err = is_valid_fd(STDERR_FILENO); if (!is_valid_fd(STDIN_FILENO) && -@@ -1628,6 +1629,12 @@ static int _check_standard_fds(void) +@@ -1632,6 +1633,12 @@ static int _check_standard_fds(void) strerror(errno)); return 0; } From 5c241d1498c46a7bd70669fd5b1b77bbd21c6a89 Mon Sep 17 00:00:00 2001 From: Jonathan Bennett Date: Sat, 16 May 2015 19:13:54 -0500 Subject: [PATCH 410/681] libqrencode: import from old packages Update to latest release add qrencode package which contains the qrencode binary Remove libpng dependancy Signed-off-by: Jonathan Bennett --- libs/qrencode/Makefile | 90 ++++++ libs/qrencode/patches/001-disable-png.patch | 293 ++++++++++++++++++++ 2 files changed, 383 insertions(+) create mode 100644 libs/qrencode/Makefile create mode 100644 libs/qrencode/patches/001-disable-png.patch diff --git a/libs/qrencode/Makefile b/libs/qrencode/Makefile new file mode 100644 index 000000000..db2d69713 --- /dev/null +++ b/libs/qrencode/Makefile @@ -0,0 +1,90 @@ +# +# Copyright (C) 2006-2012 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=qrencode +PKG_VERSION:=3.4.4 +PKG_RELEASE:=1 + +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz +PKG_SOURCE_URL:=http://fukuchi.org/works/qrencode/ +PKG_MD5SUM:=be545f3ce36ea8fbb58612d72c4222de +PKG_MAINTAINER:=Jonathan Bennett +PKG_LICENSE:=LGPL-2.1+ +PKG_INSTALL:=1 +PKG:FIXUP:=autoreconf + +include $(INCLUDE_DIR)/package.mk + +define Package/libqrencode + SECTION:=libs + CATEGORY:=Libraries + TITLE:=Library for encoding data in a QR Code symbol + URL:=http://fukuchi.org/works/qrencode/ +endef + +define Package/libqrencode/description +Libqrencode is a C library for encoding data in a QR Code symbol, +a kind of 2D symbology that can be scanned by handy terminals such +as a mobile phone with CCD. The capacity of QR Code is up to 7000 +digits or 4000 characters, and is highly robust. +endef + +define Package/qrencode + SECTION:=utils + CATEGORY:=Utilities + TITLE:=qrencode binary for producing qr codes + URL:=http://fukuchi.org/works/qrencode/ + DEPENDS:=+libqrencode +endef + +define Package/qrencode/description +Qrencode is a C program for encoding data in a QR Code symbol, +a kind of 2D symbology that can be scanned by handy terminals such +as a mobile phone with CCD. The capacity of QR Code is up to 7000 +digits or 4000 characters, and is highly robust. +endef + + +CONFIGURE_ARGS+= \ + --enable-shared \ + --enable-static \ + --disable-rpath \ + --disable-sdltest \ + --without-tests + +TARGET_LDFLAGS+= -s + +define Build/Compile + $(MAKE) -C $(PKG_BUILD_DIR) \ + $(TARGET_CONFIGURE_OPTS) \ + CFLAGS="$(TARGET_CFLAGS)" \ + LDFLAGS="$(TARGET_LDFLAGS)" \ + DESTDIR="$(PKG_INSTALL_DIR)" \ + all install +endef + +define Build/InstallDev + $(INSTALL_DIR) $(1)/usr/include $(1)/usr/lib $(1)/usr/lib/pkgconfig + $(CP) $(PKG_INSTALL_DIR)/usr/include/qrencode.h $(1)/usr/include/ + $(CP) $(PKG_INSTALL_DIR)/usr/lib/libqrencode.{a,so*} $(1)/usr/lib/ + $(CP) $(PKG_BUILD_DIR)/libqrencode.pc $(1)/usr/lib/pkgconfig/ +endef + +define Package/libqrencode/install + $(INSTALL_DIR) $(1)/usr/lib + $(CP) $(PKG_INSTALL_DIR)/usr/lib/libqrencode.so* $(1)/usr/lib/ +endef + +define Package/qrencode/install + $(INSTALL_DIR) $(1)/usr/bin + $(CP) $(PKG_INSTALL_DIR)/usr/bin/qrencode $(1)/usr/bin/ +endef + +$(eval $(call BuildPackage,libqrencode)) +$(eval $(call BuildPackage,qrencode)) diff --git a/libs/qrencode/patches/001-disable-png.patch b/libs/qrencode/patches/001-disable-png.patch new file mode 100644 index 000000000..2549ee6fc --- /dev/null +++ b/libs/qrencode/patches/001-disable-png.patch @@ -0,0 +1,293 @@ +--- a/configure.ac ++++ b/configure.ac +@@ -58,9 +58,6 @@ + [build_tools=$withval], [build_tools=yes]) + + AM_CONDITIONAL(BUILD_TOOLS, [test "x$build_tools" = "xyes" ]) +-if test x$build_tools = xyes ; then +- PKG_CHECK_MODULES(png, "libpng") +-fi + + dnl --with-tests + AC_ARG_WITH([tests], [AS_HELP_STRING([--with-tests], [build tests [default=no]])], +--- a/qrenc.c ++++ b/qrenc.c +@@ -25,7 +25,6 @@ + #include + #include + #include +-#include + #include + + #include "qrencode.h" +@@ -49,7 +48,6 @@ + static int verbose = 0; + + enum imageType { +- PNG_TYPE, + EPS_TYPE, + SVG_TYPE, + ANSI_TYPE, +@@ -60,7 +58,7 @@ + ANSIUTF8_TYPE + }; + +-static enum imageType image_type = PNG_TYPE; ++static enum imageType image_type = SVG_TYPE; + + static const struct option options[] = { + {"help" , no_argument , NULL, 'h'}, +@@ -96,13 +94,13 @@ + if(longopt) { + fprintf(stderr, + "Usage: qrencode [OPTION]... [STRING]\n" +-"Encode input data in a QR Code and save as a PNG or EPS image.\n\n" ++"Encode input data in a QR Code and save as a SVG or EPS image.\n\n" + " -h, --help display the help message. -h displays only the help of short\n" + " options.\n\n" + " -o FILENAME, --output=FILENAME\n" + " write image to FILENAME. If '-' is specified, the result\n" + " will be output to standard output. If -S is given, structured\n" +-" symbols are written to FILENAME-01.png, FILENAME-02.png, ...\n" ++" symbols are written to FILENAME-01.svg, FILENAME-02.svg, ...\n" + " (suffix is removed from FILENAME, if specified)\n" + " -s NUMBER, --size=NUMBER\n" + " specify module size in dots (pixels). (default=3)\n\n" +@@ -116,9 +114,9 @@ + " specify the width of the margins. (default=4 (2 for Micro QR)))\n\n" + " -d NUMBER, --dpi=NUMBER\n" + " specify the DPI of the generated PNG. (default=72)\n\n" +-" -t {PNG,EPS,SVG,ANSI,ANSI256,ASCII,ASCIIi,UTF8,ANSIUTF8}, --type={PNG,EPS,\n" ++" -t {EPS,SVG,ANSI,ANSI256,ASCII,ASCIIi,UTF8,ANSIUTF8}, --type={EPS,\n" + " SVG,ANSI,ANSI256,ASCII,ASCIIi,UTF8,ANSIUTF8}\n" +-" specify the type of the generated image. (default=PNG)\n\n" ++" specify the type of the generated image. (default=SVG)\n\n" + " -S, --structured\n" + " make structured symbols. Version must be specified.\n\n" + " -k, --kanji assume that the input text contains kanji (shift-jis).\n\n" +@@ -133,7 +131,7 @@ + " --background=RRGGBB[AA]\n" + " specify foreground/background color in hexadecimal notation.\n" + " 6-digit (RGB) or 8-digit (RGBA) form are supported.\n" +-" Color output support available only in PNG and SVG.\n" ++" Color output support available only in SVG.\n" + " -V, --version\n" + " display the version number and copyrights of the qrencode.\n\n" + " --verbose\n" +@@ -153,12 +151,12 @@ + } else { + fprintf(stderr, + "Usage: qrencode [OPTION]... [STRING]\n" +-"Encode input data in a QR Code and save as a PNG or EPS image.\n\n" ++"Encode input data in a QR Code and save as a SVG or EPS image.\n\n" + " -h display this message.\n" + " --help display the usage of long options.\n" + " -o FILENAME write image to FILENAME. If '-' is specified, the result\n" + " will be output to standard output. If -S is given, structured\n" +-" symbols are written to FILENAME-01.png, FILENAME-02.png, ...\n" ++" symbols are written to FILENAME-01.svg, FILENAME-02.svg, ...\n" + " (suffix is removed from FILENAME, if specified)\n" + " -s NUMBER specify module size in dots (pixels). (default=3)\n" + " -l {LMQH} specify error correction level from L (lowest) to H (highest).\n" +@@ -166,8 +164,8 @@ + " -v NUMBER specify the version of the symbol. (default=auto)\n" + " -m NUMBER specify the width of the margins. (default=4 (2 for Micro))\n" + " -d NUMBER specify the DPI of the generated PNG. (default=72)\n" +-" -t {PNG,EPS,SVG,ANSI,ANSI256,ASCII,ASCIIi,UTF8,ANSIUTF8}\n" +-" specify the type of the generated image. (default=PNG)\n" ++" -t {EPS,SVG,ANSI,ANSI256,ASCII,ASCIIi,UTF8,ANSIUTF8}\n" ++" specify the type of the generated image. (default=SVG)\n" + " -S make structured symbols. Version must be specified.\n" + " -k assume that the input text contains kanji (shift-jis).\n" + " -c encode lower-case alphabet characters in 8-bit mode. (default)\n" +@@ -178,7 +176,7 @@ + " --background=RRGGBB[AA]\n" + " specify foreground/background color in hexadecimal notation.\n" + " 6-digit (RGB) or 8-digit (RGBA) form are supported.\n" +-" Color output support available only in PNG and SVG.\n" ++" Color output support available only in SVG.\n" + " -V display the version number and copyrights of the qrencode.\n" + " [STRING] input data. If it is not specified, data will be taken from\n" + " standard input.\n" +@@ -253,128 +251,6 @@ + return fp; + } + +-static int writePNG(QRcode *qrcode, const char *outfile) +-{ +- static FILE *fp; // avoid clobbering by setjmp. +- png_structp png_ptr; +- png_infop info_ptr; +- png_colorp palette; +- png_byte alpha_values[2]; +- unsigned char *row, *p, *q; +- int x, y, xx, yy, bit; +- int realwidth; +- +- realwidth = (qrcode->width + margin * 2) * size; +- row = (unsigned char *)malloc((realwidth + 7) / 8); +- if(row == NULL) { +- fprintf(stderr, "Failed to allocate memory.\n"); +- exit(EXIT_FAILURE); +- } +- +- if(outfile[0] == '-' && outfile[1] == '\0') { +- fp = stdout; +- } else { +- fp = fopen(outfile, "wb"); +- if(fp == NULL) { +- fprintf(stderr, "Failed to create file: %s\n", outfile); +- perror(NULL); +- exit(EXIT_FAILURE); +- } +- } +- +- png_ptr = png_create_write_struct(PNG_LIBPNG_VER_STRING, NULL, NULL, NULL); +- if(png_ptr == NULL) { +- fprintf(stderr, "Failed to initialize PNG writer.\n"); +- exit(EXIT_FAILURE); +- } +- +- info_ptr = png_create_info_struct(png_ptr); +- if(info_ptr == NULL) { +- fprintf(stderr, "Failed to initialize PNG write.\n"); +- exit(EXIT_FAILURE); +- } +- +- if(setjmp(png_jmpbuf(png_ptr))) { +- png_destroy_write_struct(&png_ptr, &info_ptr); +- fprintf(stderr, "Failed to write PNG image.\n"); +- exit(EXIT_FAILURE); +- } +- +- palette = (png_colorp) malloc(sizeof(png_color) * 2); +- if(palette == NULL) { +- fprintf(stderr, "Failed to allocate memory.\n"); +- exit(EXIT_FAILURE); +- } +- palette[0].red = fg_color[0]; +- palette[0].green = fg_color[1]; +- palette[0].blue = fg_color[2]; +- palette[1].red = bg_color[0]; +- palette[1].green = bg_color[1]; +- palette[1].blue = bg_color[2]; +- alpha_values[0] = fg_color[3]; +- alpha_values[1] = bg_color[3]; +- png_set_PLTE(png_ptr, info_ptr, palette, 2); +- png_set_tRNS(png_ptr, info_ptr, alpha_values, 2, NULL); +- +- png_init_io(png_ptr, fp); +- png_set_IHDR(png_ptr, info_ptr, +- realwidth, realwidth, +- 1, +- PNG_COLOR_TYPE_PALETTE, +- PNG_INTERLACE_NONE, +- PNG_COMPRESSION_TYPE_DEFAULT, +- PNG_FILTER_TYPE_DEFAULT); +- png_set_pHYs(png_ptr, info_ptr, +- dpi * INCHES_PER_METER, +- dpi * INCHES_PER_METER, +- PNG_RESOLUTION_METER); +- png_write_info(png_ptr, info_ptr); +- +- /* top margin */ +- memset(row, 0xff, (realwidth + 7) / 8); +- for(y=0; ydata; +- for(y=0; ywidth; y++) { +- bit = 7; +- memset(row, 0xff, (realwidth + 7) / 8); +- q = row; +- q += margin * size / 8; +- bit = 7 - (margin * size % 8); +- for(x=0; xwidth; x++) { +- for(xx=0; xxcode, filename); +- break; + case EPS_TYPE: + writeEPS(p->code, filename); + break; +@@ -1062,9 +929,7 @@ + } + break; + case 't': +- if(strcasecmp(optarg, "png") == 0) { +- image_type = PNG_TYPE; +- } else if(strcasecmp(optarg, "eps") == 0) { ++ if(strcasecmp(optarg, "eps") == 0) { + image_type = EPS_TYPE; + } else if(strcasecmp(optarg, "svg") == 0) { + image_type = SVG_TYPE; +@@ -1133,11 +998,6 @@ + exit(EXIT_SUCCESS); + } + +- if(outfile == NULL && image_type == PNG_TYPE) { +- fprintf(stderr, "No output filename is given.\n"); +- exit(EXIT_FAILURE); +- } +- + if(optind < argc) { + intext = (unsigned char *)argv[optind]; + length = strlen((char *)intext); From 2f75695b3999935fdfc7f3865cea12548d2af26e Mon Sep 17 00:00:00 2001 From: Alexander Ryzhov Date: Wed, 20 May 2015 09:10:01 +0000 Subject: [PATCH 411/681] xz: add xz-utils meta package Signed-off-by: Alexander Ryzhov --- utils/xz/Makefile | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/utils/xz/Makefile b/utils/xz/Makefile index e08ef9513..373140da2 100644 --- a/utils/xz/Makefile +++ b/utils/xz/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=xz PKG_VERSION:=5.2.1 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 PKG_SOURCE_URL:=http://tukaani.org/xz @@ -94,6 +94,10 @@ define Build/InstallDev $(1)/usr/lib/pkgconfig/ endef +define Package/xz-utils/install + true +endef + define Package/liblzma/install $(INSTALL_DIR) $(1)/usr/lib $(CP) $(PKG_INSTALL_DIR)/usr/lib/liblzma.so.* $(1)/usr/lib/ From 52e66a21d4dc3e4c9e43ee51fe35464164d56def Mon Sep 17 00:00:00 2001 From: Marko Ratkaj Date: Wed, 20 May 2015 15:36:30 +0200 Subject: [PATCH 412/681] e2guardian: bump to 3.1.2 Signed-off-by: Marko Ratkaj --- net/e2guardian/Makefile | 21 ++--- net/e2guardian/files/e2guardian.config | 5 +- net/e2guardian/files/e2guardian.init | 32 +++++-- net/e2guardian/files/e2guardianf1.conf | 114 +++++++++++++------------ 4 files changed, 98 insertions(+), 74 deletions(-) diff --git a/net/e2guardian/Makefile b/net/e2guardian/Makefile index 114453da3..10a41b91e 100644 --- a/net/e2guardian/Makefile +++ b/net/e2guardian/Makefile @@ -8,18 +8,16 @@ include $(TOPDIR)/rules.mk PKG_NAME:=e2guardian -PKG_VERSION:=3.0.4 +PKG_VERSION:=3.1.2 PKG_RELEASE:=1 PKG_LICENSE:=GPL-2.0 PKG_MAINTAINER:=Luka Perkov -PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz -PKG_SOURCE_PROTO:=git -PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) -PKG_SOURCE_URL:=https://github.com/e2guardian/e2guardian.git -PKG_SOURCE_VERSION:=v$(PKG_VERSION) - +PKG_SOURCE:=v$(PKG_VERSION).tar.gz +PKG_SOURCE_URL:=https://github.com/e2guardian/e2guardian/archive/ +PKG_MD5SUM:=85cfa16074737dbc3935f93dfcded285 +PKG_FIXUP:=autoreconf PKG_BUILD_PARALLEL:=1 PKG_INSTALL:=1 @@ -47,9 +45,12 @@ CONFIGURE_VARS += \ CONFIGURE_ARGS += \ --with-sysconfsubdir=e2guardian \ - --with-proxyuser=root \ - --with-proxygroup=root \ - --enable-pcre=yes + --with-proxyuser=nobody \ + --with-proxygroup=nogroup \ + --enable-pcre=yes \ + --with-piddir=/tmp/e2guardian/ \ + --enable-sslextralists=no \ + --enable-sslmitm=no define Build/Configure $(call Build/Configure/Default,$CONFIGURE_ARGS) diff --git a/net/e2guardian/files/e2guardian.config b/net/e2guardian/files/e2guardian.config index 2b46f2035..a87615138 100644 --- a/net/e2guardian/files/e2guardian.config +++ b/net/e2guardian/files/e2guardian.config @@ -1,13 +1,11 @@ config e2guardian 'e2guardian' - option config_file '/etc/e2guardian/e2guardianf1.conf' option languagedir '/usr/share/e2guardian/languages' option language 'ukenglish' option loglevel '2' option logexceptionhits '2' option logfileformat '1' - option loglocation '/dev/null' + option loglocation '/var/log/e2guardian/access.log' option maxuploadsize '-1' - option filterip '' option filterports '8080' option proxyip '127.0.0.1' option proxyport '3128' @@ -45,6 +43,7 @@ config e2guardian 'e2guardian' option deletedownloadedtempfiles 'on' option initialtrickledelay '20' option trickledelay '10' + option downloadmanager '/etc/e2guardian/downloadmanagers/fancy.conf' option downloadmanager '/etc/e2guardian/downloadmanagers/default.conf' option contentscannertimeout '60' option contentscanexceptions 'off' diff --git a/net/e2guardian/files/e2guardian.init b/net/e2guardian/files/e2guardian.init index 132b61f83..96c2802c1 100644 --- a/net/e2guardian/files/e2guardian.init +++ b/net/e2guardian/files/e2guardian.init @@ -7,13 +7,15 @@ STOP=10 USE_PROCD=1 PROG=/usr/sbin/e2guardian CONFIGFILE="/tmp/e2guardian/e2guardian.conf" +LOGFILE="/tmp/e2guardian/access.log" +GROUPCONFIG="/tmp/e2guardian/e2guardianf1.conf" validate_e2guardian_section() { uci_validate_section e2guardian e2guardian "${1}" \ - 'config_file:string' \ 'accessdeniedaddress:string' \ 'bannediplist:string' \ 'contentscanexceptions:string' \ + 'contentscanner:string' 'contentscannertimeout:uinteger' \ 'createlistcachefiles:string' \ 'custombannedflashfile:string' \ @@ -83,7 +85,7 @@ validate_e2guardian_section() { start_service() { - local config_file accessdeniedaddress bannediplist contentscanexceptions contentscannertimeout \ + local accessdeniedaddress bannediplist contentscanexceptions contentscanner contentscannertimeout \ createlistcachefiles custombannedflashfile custombannedimagefile deletedownloadedtempfiles \ downloadmanager exceptioniplist filecachedir loglocation \ filtergroups filtergroupslist filterip filterports forcequicksearch forwardedfor hexdecodecontent \ @@ -102,10 +104,26 @@ start_service() { } mkdir -p $(dirname $CONFIGFILE) - ln -sf $config_file $(dirname $CONFIGFILE) + chown -R nobody:nogroup $(dirname $CONFIGFILE) + + mkdir -p $(dirname $loglocation) + chown -R nobody:nogroup $(dirname $loglocation) + + touch $loglocation + chown nobody:nogroup $loglocation + + ln -sf $loglocation $(dirname $LOGFILE) + ln -sf /etc/e2guardian/e2guardian.conf $CONFIGFILE + ln -sf /etc/e2guardian/e2guardianf1.conf $GROUPCONFIG echo "accessdeniedaddress = " $accessdeniedaddress > $CONFIGFILE echo "bannediplist = " $bannediplist >> $CONFIGFILE + + if [ "$contentscanner" != "" ] + then + echo "contentscanner = " $contentscanner >> $CONFIGFILE + fi + echo "contentscanexceptions = " $contentscanexceptions >> $CONFIGFILE echo "contentscannertimeout = " $contentscannertimeout >> $CONFIGFILE echo "createlistcachefiles = " $createlistcachefiles >> $CONFIGFILE @@ -174,15 +192,17 @@ start_service() { echo "weightedphrasemode = " $weightedphrasemode >> $CONFIGFILE procd_open_instance - procd_set_param command $PROG -N -c "$CONFIGFILE" + procd_set_param command $PROG -c $CONFIGFILE procd_set_param file $CONFIGFILE - procd_set_param respawn procd_close_instance + } stop_service() { - e2guardian -s | awk -F':' '{ print $2}' | xargs kill -9 + PID=`cat /tmp/e2guardian/e2guardian.pid` + kill $PID + rm -f /tmp/e2guardian/e2guardian.pid } service_triggers() diff --git a/net/e2guardian/files/e2guardianf1.conf b/net/e2guardian/files/e2guardianf1.conf index 21a145a49..c4b821fc3 100644 --- a/net/e2guardian/files/e2guardianf1.conf +++ b/net/e2guardian/files/e2guardianf1.conf @@ -1,4 +1,4 @@ -# e2guardian filter group config file for version 3.0.4 +# e2guardian filter group config file for version 3.1.2 # Filter group mode @@ -25,41 +25,41 @@ groupmode = 1 groupname = '' # Content filtering files location -bannedphraselist = 'etc/e2guardian/lists/bannedphraselist' -weightedphraselist = 'etc/e2guardian/lists/weightedphraselist' -exceptionphraselist = 'etc/e2guardian/lists/exceptionphraselist' -bannedsitelist = 'etc/e2guardian/lists/bannedsitelist' -greysitelist = 'etc/e2guardian/lists/greysitelist' -bannedsslsitelist = 'etc/e2guardian/lists/bannedsslsitelist' -greysslsitelist = 'etc/e2guardian/lists/greysslsitelist' -exceptionsitelist = 'etc/e2guardian/lists/exceptionsitelist' -bannedurllist = 'etc/e2guardian/lists/bannedurllist' -greyurllist = 'etc/e2guardian/lists/greyurllist' -exceptionurllist = 'etc/e2guardian/lists/exceptionurllist' -exceptionregexpurllist = 'etc/e2guardian/lists/exceptionregexpurllist' -bannedregexpurllist = 'etc/e2guardian/lists/bannedregexpurllist' -picsfile = 'etc/e2guardian/lists/pics' -contentregexplist = 'etc/e2guardian/lists/contentregexplist' -urlregexplist = 'etc/e2guardian/lists/urlregexplist' -refererexceptionsitelist = 'etc/e2guardian/lists/refererexceptionsitelist' -refererexceptionurllist = 'etc/e2guardian/lists/refererexceptionurllist' -embededreferersitelist = 'etc/e2guardian/lists/embededreferersitelist' -embededrefererurllist = 'etc/e2guardian/lists/embededrefererurllist' -urlredirectregexplist = 'etc/e2guardian/lists/urlredirectregexplist' +bannedphraselist = '/etc/e2guardian/lists/bannedphraselist' +weightedphraselist = '/etc/e2guardian/lists/weightedphraselist' +exceptionphraselist = '/etc/e2guardian/lists/exceptionphraselist' +bannedsitelist = '/etc/e2guardian/lists/bannedsitelist' +greysitelist = '/etc/e2guardian/lists/greysitelist' +bannedsslsitelist = '/etc/e2guardian/lists/bannedsslsitelist' +greysslsitelist = '/etc/e2guardian/lists/greysslsitelist' +exceptionsitelist = '/etc/e2guardian/lists/exceptionsitelist' +bannedurllist = '/etc/e2guardian/lists/bannedurllist' +greyurllist = '/etc/e2guardian/lists/greyurllist' +exceptionurllist = '/etc/e2guardian/lists/exceptionurllist' +exceptionregexpurllist = '/etc/e2guardian/lists/exceptionregexpurllist' +bannedregexpurllist = '/etc/e2guardian/lists/bannedregexpurllist' +picsfile = '/etc/e2guardian/lists/pics' +contentregexplist = '/etc/e2guardian/lists/contentregexplist' +urlregexplist = '/etc/e2guardian/lists/urlregexplist' +refererexceptionsitelist = '/etc/e2guardian/lists/refererexceptionsitelist' +refererexceptionurllist = '/etc/e2guardian/lists/refererexceptionurllist' +embededreferersitelist = '/etc/e2guardian/lists/embededreferersitelist' +embededrefererurllist = '/etc/e2guardian/lists/embededrefererurllist' +urlredirectregexplist = '/etc/e2guardian/lists/urlredirectregexplist' # local versions of lists (where LOCAL_LISTS enabled) -#localbannedsitelist = 'etc/e2guardian/lists/localbannedsitelist' -#localgreysitelist = 'etc/e2guardian/lists/localgreysitelist' -#localexceptionsitelist = 'etc/e2guardian/lists/localexceptionsitelist' -#localbannedurllist = 'etc/e2guardian/lists/localbannedurllist' -#localgreyurllist = 'etc/e2guardian/lists/localgreyurllist' -#localexceptionurllist = 'etc/e2guardian/lists/localexceptionurllist' -#localbannedsslsitelist = 'etc/e2guardian/lists/localbannedsslsitelist' -#localgreysslsitelist = 'etc/e2guardian/lists/localgreysslsitelist' -#localbannedsearchlist = 'etc/e2guardian/lists/localbannedsearchlist' - -!! Not compiled !! authexceptionsitelist = 'etc/e2guardian/lists/authexceptionsitelist' -!! Not compiled !! authexceptionurllist = 'etc/e2guardian/lists/authexceptionurllist' +#localbannedsitelist = '/etc/e2guardian/lists/localbannedsitelist' +#localgreysitelist = '/etc/e2guardian/lists/localgreysitelist' +#localexceptionsitelist = '/etc/e2guardian/lists/localexceptionsitelist' +#localbannedurllist = '/etc/e2guardian/lists/localbannedurllist' +#localgreyurllist = '/etc/e2guardian/lists/localgreyurllist' +#localexceptionurllist = '/etc/e2guardian/lists/localexceptionurllist' +#localbannedsslsitelist = '/etc/e2guardian/lists/localbannedsslsitelist' +#localgreysslsitelist = '/etc/e2guardian/lists/localgreysslsitelist' +#localbannedsearchlist = '/etc/e2guardian/lists/localbannedsearchlist' + +!! Not compiled !! authexceptionsitelist = '/etc/e2guardian/lists/authexceptionsitelist' +!! Not compiled !! authexceptionurllist = '/etc/e2guardian/lists/authexceptionurllist' # Filetype filtering # @@ -78,20 +78,20 @@ urlredirectregexplist = 'etc/e2guardian/lists/urlredirectregexplist' # (on | off) # blockdownloads = off -exceptionextensionlist = 'etc/e2guardian/lists/exceptionextensionlist' -exceptionmimetypelist = 'etc/e2guardian/lists/exceptionmimetypelist' +exceptionextensionlist = '/etc/e2guardian/lists/exceptionextensionlist' +exceptionmimetypelist = '/etc/e2guardian/lists/exceptionmimetypelist' # # Use the following lists to block specific kinds of file downloads. # The two exception lists above can be used to override these. # -bannedextensionlist = 'etc/e2guardian/lists/bannedextensionlist' -bannedmimetypelist = 'etc/e2guardian/lists/bannedmimetypelist' +bannedextensionlist = '/etc/e2guardian/lists/bannedextensionlist' +bannedmimetypelist = '/etc/e2guardian/lists/bannedmimetypelist' # # In either file filtering mode, the following list can be used to override # MIME type & extension blocks for particular domains & URLs (trusted download sites). # -exceptionfilesitelist = 'etc/e2guardian/lists/exceptionfilesitelist' -exceptionfileurllist = 'etc/e2guardian/lists/exceptionfileurllist' +exceptionfilesitelist = '/etc/e2guardian/lists/exceptionfilesitelist' +exceptionfileurllist = '/etc/e2guardian/lists/exceptionfileurllist' # POST protection (web upload and forms) # does not block forms without any file upload, i.e. this is just for @@ -108,9 +108,9 @@ maxuploadsize = -1 # Supply categorised lists here and the category string shall be logged against # matching requests, but matching these lists does not perform any filtering # action. -#logsitelist = 'etc/e2guardian/lists/logsitelist' -#logurllist = 'etc/e2guardian/lists/logurllist' -#logregexpurllist = 'etc/e2guardian/lists/logregexpurllist' +#logsitelist = '/etc/e2guardian/lists/logsitelist' +#logurllist = '/etc/e2guardian/lists/logurllist' +#logregexpurllist = '/etc/e2guardian/lists/logregexpurllist' # Outgoing HTTP header rules: # Optional lists for blocking based on, and modification of, outgoing HTTP @@ -121,9 +121,9 @@ maxuploadsize = -1 # Headers are matched/replaced on a line-by-line basis, not as a contiguous # block. # Use for example, to remove cookies or prevent certain user-agents. -headerregexplist = 'etc/e2guardian/lists/headerregexplist' -bannedregexpheaderlist = 'etc/e2guardian/lists/bannedregexpheaderlist' -addheaderregexplist = 'etc/e2guardian/lists/addheaderregexplist' +headerregexplist = '/etc/e2guardian/lists/headerregexplist' +bannedregexpheaderlist = '/etc/e2guardian/lists/bannedregexpheaderlist' +addheaderregexplist = '/etc/e2guardian/lists/addheaderregexplist' # Weighted phrase mode # Optional; overrides the weightedphrasemode option in e2guardian.conf @@ -166,11 +166,11 @@ naughtynesslimit = 50 # List of regular expressions for matching search engine URLs. It is assumed # that the search terms themselves will be contained in the # of output of each expression. -#searchregexplist = 'etc/e2guardian/lists/searchregexplist' +#searchregexplist = '/etc/e2guardian/lists/searchregexplist' # # Banned Search Term list(s) for option 1 -#bannedsearchlist = 'etc/e2guardian/lists/bannedsearchlist' -#bannedsearchoveridelist = 'etc/e2guardian/lists/bannedsearchoveridelist' +#bannedsearchlist = '/etc/e2guardian/lists/bannedsearchlist' +#bannedsearchoveridelist = '/etc/e2guardian/lists/bannedsearchoveridelist' # Search term limit (for Option 2) @@ -192,9 +192,9 @@ naughtynesslimit = 50 # of text. # Please note that all or none of the below should be uncommented, not a # mixture. -#bannedsearchtermlist = 'etc/e2guardian/lists/bannedsearchtermlist' -#weightedsearchtermlist = 'etc/e2guardian/lists/weightedsearchtermlist' -#exceptionsearchtermlist = 'etc/e2guardian/lists/exceptionsearchtermlist' +#bannedsearchtermlist = '/etc/e2guardian/lists/bannedsearchtermlist' +#weightedsearchtermlist = '/etc/e2guardian/lists/weightedsearchtermlist' +#exceptionsearchtermlist = '/etc/e2guardian/lists/exceptionsearchtermlist' # Category display threshold # This option only applies to pages blocked by weighted phrase filtering. @@ -330,12 +330,12 @@ reportinglevel = 3 # only used in reporting level 3. # # The default template file path is //template.h -# e.g. share/e2guardian/languages/ukenglish/template.html when using 'ukenglish' +# e.g. /share/e2guardian/languages/ukenglish/template.html when using 'ukenglish' # language. # # This option generates a file path of the form: # // -# e.g. share/e2guardian/languages/ukenglish/custom.html +# e.g. /share/e2guardian/languages/ukenglish/custom.html # #htmltemplate = 'custom.html' @@ -420,7 +420,11 @@ reportinglevel = 3 sslcertcheck = off #SSL man in the middle -# Forge ssl certificates for all sites, decrypt the data then re encrypt it +# Forge ssl certificates for all non-exception sites, decrypt the data then re encrypt it # using a different private key. Used to filter ssl sites sslmitm = off +#Limit SSL MITM to sites in greysslsitelist(s) +# ignored if sslmitm is off +# SSL sites not matching greysslsitelist will be treat as if sslmitm is off. +onlymitmsslgrey = off From 8c13dbd2e1edea36f156ecb5a6d3c655b1d8bba7 Mon Sep 17 00:00:00 2001 From: Marko Ratkaj Date: Wed, 20 May 2015 15:38:16 +0200 Subject: [PATCH 413/681] luci-app-e2guardian: add package Signed-off-by: Marko Ratkaj --- net/luci-app-e2guardian/Makefile | 53 +++ .../files/e2guardian-cbi.lua | 399 ++++++++++++++++++ .../files/e2guardian-controller.lua | 22 + 3 files changed, 474 insertions(+) create mode 100644 net/luci-app-e2guardian/Makefile create mode 100644 net/luci-app-e2guardian/files/e2guardian-cbi.lua create mode 100644 net/luci-app-e2guardian/files/e2guardian-controller.lua diff --git a/net/luci-app-e2guardian/Makefile b/net/luci-app-e2guardian/Makefile new file mode 100644 index 000000000..880f373bd --- /dev/null +++ b/net/luci-app-e2guardian/Makefile @@ -0,0 +1,53 @@ +# +# Copyright (C) 2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=luci-app-e2guardian +PKG_RELEASE:=20150520 + +PKG_LICENSE:=Apache-2.0 + +PKG_BUILD_DIR := $(BUILD_DIR)/$(PKG_NAME) + +include $(INCLUDE_DIR)/package.mk + +define Package/luci-app-e2guardian + SECTION:=luci + CATEGORY:=LuCI + SUBMENU:=3. Applications + TITLE:=E2Guardian Web UI + DEPENDS:=+luci-mod-admin-full +e2guardian + MAINTAINER:=Marko Ratkaj +endef + +define Package/luci-app-e2guardian/description + This package will install E2Guardian Web UI. +endef + +define Build/Prepare +endef + +define Build/Configure +endef + +define Build/Compile +endef + +define Package/luci-app-e2guardian/install + $(INSTALL_DIR) $(1)/usr/lib/lua/luci/controller/ + $(INSTALL_BIN) \ + ./files/e2guardian-controller.lua \ + $(1)/usr/lib/lua/luci/controller/e2guardian.lua + + $(INSTALL_DIR) $(1)/usr/lib/lua/luci/model/cbi/ + $(INSTALL_BIN) \ + ./files//e2guardian-cbi.lua \ + $(1)/usr/lib/lua/luci/model/cbi/e2guardian.lua +endef + +$(eval $(call BuildPackage,luci-app-e2guardian)) diff --git a/net/luci-app-e2guardian/files/e2guardian-cbi.lua b/net/luci-app-e2guardian/files/e2guardian-cbi.lua new file mode 100644 index 000000000..a943115b8 --- /dev/null +++ b/net/luci-app-e2guardian/files/e2guardian-cbi.lua @@ -0,0 +1,399 @@ +--[[ + +LuCI E2Guardian module + +Copyright (C) 2015, Itus Networks, Inc. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Author: Marko Ratkaj + Luka Perkov + +]]-- + +local fs = require "nixio.fs" +local sys = require "luci.sys" + +m = Map("e2guardian", translate("E2Guardian")) +m.on_after_commit = function() luci.sys.call("/etc/init.d/e2guardian restart") end + +s = m:section(TypedSection, "e2guardian") +s.anonymous = true +s.addremove = false + +s:tab("tab_general", translate("General Settings")) +s:tab("tab_additional", translate("Additional Settings")) +s:tab("tab_logs", translate("Logs")) + + +----------------- General Settings Tab ----------------------- + +filterip = s:taboption("tab_general", Value, "filterip", translate("IP that E2Guardian listens")) +filterip.datatype = "ip4addr" + +filterports = s:taboption("tab_general", Value, "filterports", translate("Port that E2Guardian listens")) +filterports.datatype = "portrange" +filterports.placeholder = "0-65535" + +proxyip = s:taboption("tab_general", Value, "proxyip", translate("IP address of the proxy")) +proxyip.datatype = "ip4addr" +proxyip.default = "127.0.0.1" + +proxyport = s:taboption("tab_general", Value, "proxyport", translate("Port of the proxy")) +proxyport.datatype = "portrange" +proxyport.placeholder = "0-65535" + +languagedir = s:taboption("tab_general", Value, "languagedir", translate("Language dir")) +languagedir.datatype = "string" +languagedir.default = "/usr/share/e2guardian/languages" + +language = s:taboption("tab_general", Value, "language", translate("Language to use")) +language.datatype = "string" +language.default = "ukenglish" + +loglevel = s:taboption("tab_general", ListValue, "loglevel", translate("Logging Settings")) +loglevel:value("0", translate("none")) +loglevel:value("1", translate("just denied")) +loglevel:value("2", translate("all text based")) +loglevel:value("3", translate("all requests")) +loglevel.default = "2" + +logexceptionhits = s:taboption("tab_general", ListValue, "logexceptionhits", translate("Log Exception Hits")) +logexceptionhits:value("0", translate("never")) +logexceptionhits:value("1", translate("log, but dont mark as exceptions")) +logexceptionhits:value("2", translate("log and mark")) +logexceptionhits.default = "2" + +logfileformat = s:taboption("tab_general", ListValue, "logfileformat", translate("Log File Format")) +logfileformat:value("1", translate("DansgGuardian format, space delimited")) +logfileformat:value("2", translate("CSV-style format")) +logfileformat:value("3", translate("Squid Log File Format")) +logfileformat:value("4", translate("Tab delimited")) +logfileformat:value("5", translate("Protex format")) +logfileformat:value("6", translate("Protex format with server field blanked")) +logfileformat.default = "1" + +accessdeniedaddress = s:taboption("tab_general", Value, "accessdeniedaddress", translate("Access denied address"), +translate("Server to which the cgi e2guardian reporting script was copied. Reporting levels 1 and 2 only")) +accessdeniedaddress.datatype = "string" +accessdeniedaddress.default = "http://YOURSERVER.YOURDOMAIN/cgi-bin/e2guardian.pl" + +usecustombannedimage = s:taboption("tab_general", ListValue, "usecustombannedimage", translate("Banned image replacement")) +usecustombannedimage:value("on", translate("Yes")) +usecustombannedimage:value("off", translate("No")) +usecustombannedimage.default = "on" + +custombannedimagefile = s:taboption("tab_general", Value, "custombannedimagefile", translate("Custom banned image file")) +custombannedimagefile.datatype = "string" +custombannedimagefile.default = "/usr/share/e2guardian/transparent1x1.gif" + +usecustombannedflash = s:taboption("tab_general", ListValue, "usecustombannedflash", translate("Banned flash replacement")) +usecustombannedflash:value("on", translate("Yes")) +usecustombannedflash:value("off", translate("No")) +usecustombannedflash.default = "on" + +custombannedflashfile = s:taboption("tab_general", Value, "custombannedflashfile", translate("Custom banned flash file")) +custombannedflashfile.datatype = "string" +custombannedflashfile.default = "/usr/share/e2guardian/blockedflash.swf" + +filtergroups = s:taboption("tab_general", Value, "filtergroups", translate("Number of filter groups")) +filtergroups.datatype = "and(uinteger,min(1))" +filtergroups.default = "1" + +filtergroupslist = s:taboption("tab_general", Value, "filtergroupslist", translate("List of filter groups")) +filtergroupslist.datatype = "string" +filtergroupslist.default = "/etc/e2guardian/lists/filtergroupslist" + +bannediplist = s:taboption("tab_general", Value, "bannediplist", translate("List of banned IPs")) +bannediplist.datatype = "string" +bannediplist.default = "/etc/e2guardian/lists/bannediplist" + +exceptioniplist = s:taboption("tab_general", Value, "exceptioniplist", translate("List of IP exceptions")) +exceptioniplist.datatype = "string" +exceptioniplist.default = "/etc/e2guardian/lists/exceptioniplist" + +perroomblockingdirectory = s:taboption("tab_general", Value, "perroomblockingdirectory", translate("Per-Room blocking definition directory")) +perroomblockingdirectory.datatype = "string" +perroomblockingdirectory.default = "/etc/e2guardian/lists/bannedrooms/" + +showweightedfound = s:taboption("tab_general", ListValue, "showweightedfound", translate("Show weighted phrases found")) +showweightedfound:value("on", translate("Yes")) +showweightedfound:value("off", translate("No")) +showweightedfound.default = "on" + +weightedphrasemode = s:taboption("tab_general", ListValue, "weightedphrasemode", translate("Weighted phrase mode")) +weightedphrasemode:value("0", translate("off")) +weightedphrasemode:value("1", translate("on, normal operation")) +weightedphrasemode:value("2", translate("on, phrase found only counts once on a page")) +weightedphrasemode.default = "2" + +urlcachenumber = s:taboption("tab_general", Value, "urlcachenumber", translate("Clean result caching for URLs")) +urlcachenumber.datatype = "and(uinteger,min(0))" +urlcachenumber.default = "1000" + +urlcacheage = s:taboption("tab_general", Value, "urlcacheage", translate("Age before they should be ignored in seconds")) +urlcacheage.datatype = "and(uinteger,min(0))" +urlcacheage.default = "900" + +scancleancache = s:taboption("tab_general", ListValue, "scancleancache", translate("Cache for content (AV) scans as 'clean'")) +scancleancache:value("on", translate("Yes")) +scancleancache:value("off", translate("No")) +scancleancache.default = "on" + +phrasefiltermode = s:taboption("tab_general", ListValue, "phrasefiltermode", translate("Filtering options")) +phrasefiltermode:value("0", translate("raw")) +phrasefiltermode:value("1", translate("smart")) +phrasefiltermode:value("2", translate("both raw and smart")) +phrasefiltermode:value("3", translate("meta/title")) +phrasefiltermode.default = "2" + +preservecase = s:taboption("tab_general", ListValue, "perservecase", translate("Lower caseing options")) +preservecase:value("0", translate("force lower case")) +preservecase:value("1", translate("dont change")) +preservecase:value("2", translate("scan fist in lower, then in original")) +preservecase.default = "0" + +hexdecodecontent = s:taboption("tab_general", ListValue, "hexdecodecontent", translate("Hex decoding options")) +hexdecodecontent:value("on", translate("Yes")) +hexdecodecontent:value("off", translate("No")) +hexdecodecontent.default = "off" + +forcequicksearch = s:taboption("tab_general", ListValue, "forcequicksearch", translate("Quick search")) +forcequicksearch:value("on", translate("Yes")) +forcequicksearch:value("off", translate("No")) +forcequicksearch.default = "off" + +reverseaddresslookups= s:taboption("tab_general", ListValue, "reverseaddresslookups", translate("Reverse lookups for banned site and URLs")) +reverseaddresslookups:value("on", translate("Yes")) +reverseaddresslookups:value("off", translate("No")) +reverseaddresslookups.default = "off" + +reverseclientiplookups = s:taboption("tab_general", ListValue, "reverseclientiplookups", translate("Reverse lookups for banned and exception IP lists")) +reverseclientiplookups:value("on", translate("Yes")) +reverseclientiplookups:value("off", translate("No")) +reverseclientiplookups.default = "off" + +logclienthostnames = s:taboption("tab_general", ListValue, "logclienthostnames", translate("Perform reverse lookups on client IPs for successful requests")) +logclienthostnames:value("on", translate("Yes")) +logclienthostnames:value("off", translate("No")) +logclienthostnames.default = "off" + +createlistcachefiles = s:taboption("tab_general", ListValue, "createlistcachefiles", translate("Build bannedsitelist and bannedurllist cache files")) +createlistcachefiles:value("on",translate("Yes")) +createlistcachefiles:value("off",translate("No")) +createlistcachefiles.default = "on" + +prefercachedlists = s:taboption("tab_general", ListValue, "prefercachedlists", translate("Prefer cached list files")) +prefercachedlists:value("on", translate("Yes")) +prefercachedlists:value("off", translate("No")) +prefercachedlists.default = "off" + +maxuploadsize = s:taboption("tab_general", Value, "maxuploadsize", translate("Max upload size (in Kbytes)")) +maxuploadsize:value("-1", translate("no blocking")) +maxuploadsize:value("0", translate("complete block")) +maxuploadsize.default = "-1" + +maxcontentfiltersize = s:taboption("tab_general", Value, "maxcontentfiltersize", translate("Max content filter size"), +translate("The value must not be higher than max content ram cache scan size or 0 to match it")) +maxcontentfiltersize.datatype = "and(uinteger,min(0))" +maxcontentfiltersize.default = "256" + +maxcontentramcachescansize = s:taboption("tab_general", Value, "maxcontentramcachescansize", translate("Max content ram cache scan size"), +translate("This is the max size of file that DG will download and cache in RAM")) +maxcontentramcachescansize.datatype = "and(uinteger,min(0))" +maxcontentramcachescansize.default = "2000" + +maxcontentfilecachescansize = s:taboption("tab_general", Value, "maxcontentfilecachescansize", translate("Max content file cache scan size")) +maxcontentfilecachescansize.datatype = "and(uinteger,min(0))" +maxcontentfilecachescansize.default = "20000" + +proxytimeout = s:taboption("tab_general", Value, "proxytimeout", translate("Proxy timeout (5-100)")) +proxytimeout.datatype = "range(5,100)" +proxytimeout.default = "20" + +proxyexchange = s:taboption("tab_general", Value, "proxyexchange", translate("Proxy header excahnge (20-300)")) +proxyexchange.datatype = "range(20,300)" +proxyexchange.default = "20" + +pcontimeout = s:taboption("tab_general", Value, "pcontimeout", translate("Pconn timeout"), +translate("How long a persistent connection will wait for other requests")) +pcontimeout.datatype = "range(5,300)" +pcontimeout.default = "55" + +filecachedir = s:taboption("tab_general", Value, "filecachedir", translate("File cache directory")) +filecachedir.datatype = "string" +filecachedir.default = "/tmp" + +deletedownloadedtempfiles = s:taboption("tab_general", ListValue, "deletedownloadedtempfiles", translate("Delete file cache after user completes download")) +deletedownloadedtempfiles:value("on", translate("Yes")) +deletedownloadedtempfiles:value("off", translate("No")) +deletedownloadedtempfiles.default = "on" + +initialtrickledelay = s:taboption("tab_general", Value, "initialtrickledelay", translate("Initial Trickle delay"), +translate("Number of seconds a browser connection is left waiting before first being sent *something* to keep it alive")) +initialtrickledelay.datatype = "and(uinteger,min(0))" +initialtrickledelay.default = "20" + +trickledelay = s:taboption("tab_general", Value, "trickledelay", translate("Trickle delay"), +translate("Number of seconds a browser connection is left waiting before being sent more *something* to keep it alive")) +trickledelay.datatype = "and(uinteger,min(0))" +trickledelay.default = "10" + +downloadmanager = s:taboption("tab_general", Value, "downloadmanager", translate("Download manager")) +downloadmanager.datatype = "string" +downloadmanager.default = "/etc/e2guardian/downloadmanagers/default.conf" + +contentscannertimeout = s:taboption("tab_general", Value, "contentscannertimeout", translate("Content scanner timeout")) +contentscannertimeout.datatype = "and(uinteger,min(0))" +contentscannertimeout.default = "60" + +contentscanexceptions = s:taboption("tab_general", ListValue, "contentscanexceptions", translate("Content scan exceptions")) +contentscanexceptions:value("on", translate("Yes")) +contentscanexceptions:value("off", translate("No")) +contentscanexceptions.default = "off" + +recheckreplacedurls = s:taboption("tab_general", ListValue, "recheckreplacedurls", translate("e-check replaced URLs")) +recheckreplacedurls:value("on", translate("Yes")) +recheckreplacedurls:value("off", translate("No")) +recheckreplacedurls.default = "off" + +forwardedfor = s:taboption("tab_general", ListValue, "forwardedfor", translate("Misc setting: forwardedfor"), +translate("If on, it may help solve some problem sites that need to know the source ip.")) +forwardedfor:value("on", translate("Yes")) +forwardedfor:value("off", translate("No")) +forwardedfor.default = "off" + +usexforwardedfor = s:taboption("tab_general", ListValue, "usexforwardedfor", translate("Misc setting: usexforwardedfor"), +translate("This is for when you have squid between the clients and E2Guardian")) +usexforwardedfor:value("on", translate("Yes")) +usexforwardedfor:value("off", translate("No")) +usexforwardedfor.default = "off" + +logconnectionhandlingerrors = s:taboption("tab_general", ListValue, "logconnectionhandlingerrors", translate("Log debug info about log()ing and accept()ing")) +logconnectionhandlingerrors:value("on", translate("Yes")) +logconnectionhandlingerrors:value("off", translate("No")) +logconnectionhandlingerrors.default = "on" + +logchildprocesshandling = s:taboption("tab_general", ListValue, "logchildprocesshandling", translate("Log child process handling")) +logchildprocesshandling:value("on", translate("Yes")) +logchildprocesshandling:value("off", translate("No")) +logchildprocesshandling.default = "off" + +maxchildren = s:taboption("tab_general", Value, "maxchildren", translate("Max number of processes to spawn")) +maxchildren.datatype = "and(uinteger,min(0))" +maxchildren.default = "180" + +minchildren = s:taboption("tab_general", Value, "minchildren", translate("Min number of processes to spawn")) +minchildren.datatype = "and(uinteger,min(0))" +minchildren.default = "20" + +minsparechildren = s:taboption("tab_general", Value, "minsparechildren", translate("Min number of processes to keep ready")) +minsparechildren.datatype = "and(uinteger,min(0))" +minsparechildren.default = "16" + +preforkchildren = s:taboption("tab_general", Value, "preforkchildren", translate("Sets minimum nuber of processes when it runs out")) +preforkchildren.datatype = "and(uinteger,min(0))" +preforkchildren.default = "10" + +maxsparechildren = s:taboption("tab_general", Value, "maxsparechildren", translate("Sets the maximum number of processes to have doing nothing")) +maxsparechildren.datatype = "and(uinteger,min(0))" +maxsparechildren.default = "32" + +maxagechildren = s:taboption("tab_general", Value, "maxagechildren", translate("Max age of child process")) +maxagechildren.datatype = "and(uinteger,min(0))" +maxagechildren.default = "500" + +maxips = s:taboption("tab_general", Value, "maxips", translate("Max number of clinets allowed to connect")) +maxips:value("0", translate("no limit")) +maxips.default = "0" + +ipipcfilename = s:taboption("tab_general", Value, "ipipcfilename", translate("IP list IPC server directory and filename")) +ipipcfilename.datatype = "string" +ipipcfilename.default = "/tmp/.dguardianipc" + +urlipcfilename = s:taboption("tab_general", Value, "urlipcfilename", translate("Defines URL list IPC server directory and filename used to communicate with the URL cache process")) +urlipcfilename.datatype = "string" +urlipcfilename.default = "/tmp/.dguardianurlipc" + +ipcfilename = s:taboption("tab_general", Value, "ipcfilename", translate("Defines URL list IPC server directory and filename used to communicate with the URL cache process")) +ipcfilename.datatype = "string" +ipcfilename.default = "/tmp/.dguardianipipc" + +nodeamon = s:taboption("tab_general", ListValue, "nodeamon", translate("Disable deamoning")) +nodeamon:value("on", translate("Yes")) +nodeamon:value("off", translate("No")) +nodeamon.default = "off" + +nologger = s:taboption("tab_general", ListValue, "nologger", translate("Disable logger")) +nologger:value("on", translate("Yes")) +nologger:value("off", translate("No")) +nologger.default = "off" + +logadblock = s:taboption("tab_general", ListValue, "logadblock", translate("Enable logging of ADs")) +logadblock:value("on", translate("Yes")) +logadblock:value("off", translate("No")) +logadblock.default = "off" + +loguseragent = s:taboption("tab_general", ListValue, "loguseragent", translate("Enable logging of client user agent")) +loguseragent:value("on", translate("Yes")) +loguseragent:value("off", translate("No")) +loguseragent.default = "off" + +softrestart = s:taboption("tab_general", ListValue, "softrestart", translate("Enable soft restart")) +softrestart:value("on", translate("Yes")) +softrestart:value("off", translate("No")) +softrestart.default = "off" + + +------------------------ Additional Settings Tab ---------------------------- + +e2guardian_config_file = s:taboption("tab_additional", TextValue, "_data", "") +e2guardian_config_file.wrap = "off" +e2guardian_config_file.rows = 25 +e2guardian_config_file.rmempty = false + +function e2guardian_config_file.cfgvalue() + local uci = require "luci.model.uci".cursor_state() + file = "/etc/e2guardian/e2guardianf1.conf" + if file then + return fs.readfile(file) or "" + else + return "" + end +end + +function e2guardian_config_file.write(self, section, value) + if value then + local uci = require "luci.model.uci".cursor_state() + file = "/etc/e2guardian/e2guardianf1.conf" + fs.writefile(file, value:gsub("\r\n", "\n")) + end +end + + +---------------------------- Logs Tab ----------------------------- + +e2guardian_logfile = s:taboption("tab_logs", TextValue, "lines", "") +e2guardian_logfile.wrap = "off" +e2guardian_logfile.rows = 25 +e2guardian_logfile.rmempty = true + +function e2guardian_logfile.cfgvalue() + local uci = require "luci.model.uci".cursor_state() + file = "/tmp/e2guardian/access.log" + if file then + return fs.readfile(file) or "" + else + return "Can't read log file" + end +end + +function e2guardian_logfile.write() + return "" +end + +return m diff --git a/net/luci-app-e2guardian/files/e2guardian-controller.lua b/net/luci-app-e2guardian/files/e2guardian-controller.lua new file mode 100644 index 000000000..dd545f50b --- /dev/null +++ b/net/luci-app-e2guardian/files/e2guardian-controller.lua @@ -0,0 +1,22 @@ +--[[ + +LuCI E2Guardian module + +Copyright (C) 2015, Itus Networks, Inc. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Author: Marko Ratkaj + Luka Perkov + +]]-- + +module("luci.controller.e2guardian", package.seeall) + +function index() + entry({"admin", "services", "e2guardian"}, cbi("e2guardian"), _("E2Guardian")) +end From f9507c02e0da760c0ea17588349fe01c1c3db365 Mon Sep 17 00:00:00 2001 From: Marko Ratkaj Date: Thu, 21 May 2015 12:45:16 +0200 Subject: [PATCH 414/681] clamav: add package Signed-off-by: Marko Ratkaj --- net/clamav/Makefile | 120 +++++++++++++++++++++++++++ net/clamav/files/bytecode.cvd | Bin 0 -> 68662 bytes net/clamav/files/clamav.config | 34 ++++++++ net/clamav/files/clamav.init | 116 ++++++++++++++++++++++++++ net/clamav/files/freshclam.config | 7 ++ net/clamav/files/freshclam.init | 63 ++++++++++++++ net/clamav/patches/001-compile.patch | 10 +++ 7 files changed, 350 insertions(+) create mode 100644 net/clamav/Makefile create mode 100644 net/clamav/files/bytecode.cvd create mode 100644 net/clamav/files/clamav.config create mode 100644 net/clamav/files/clamav.init create mode 100644 net/clamav/files/freshclam.config create mode 100644 net/clamav/files/freshclam.init create mode 100644 net/clamav/patches/001-compile.patch diff --git a/net/clamav/Makefile b/net/clamav/Makefile new file mode 100644 index 000000000..a401e7493 --- /dev/null +++ b/net/clamav/Makefile @@ -0,0 +1,120 @@ +# +# Copyright (C) 2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=clamav +PKG_VERSION:=0.98.6 +PKG_RELEASE:=1 + +PKG_LICENSE:=GPL-2.0 +PKG_MAINTAINER:=Marko Ratkaj + +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz +PKG_SOURCE_URL:=http://downloads.sourceforge.net/project/clamav/clamav/$(PKG_VERSION)/ +PKG_MD5SUM:=7f4f7e82a09e42c4ebf153d6d452d9d8 + +PKG_BUILD_PARALLEL:=1 +PKG_INSTALL:=1 + +include $(INCLUDE_DIR)/uclibc++.mk +include $(INCLUDE_DIR)/package.mk + +define Package/clamav/Default + SECTION:=net + DEPENDS:=+libpthread +uclibcxx +zlib +libcurl +libopenssl + CATEGORY:=Network + SUBMENU:=Web Servers/Proxies + TITLE:=ClamAV + URL:=http://www.clamav.net/ +endef + +define Package/clamav + $(call Package/clamav/Default) +endef + +define Package/freshclam + $(call Package/clamav/Default) + DEPENDS+= +clamav + TITLE+=database updater +endef + +define Package/clamav/description + ClamAV is an open source antivirus engine for detecting trojans, + viruses, malware & other malicious threats. +endef + +define Package/freshclam/description + Database updater for ClamAV +endef + +define Package/clamav/conffiles +endef + +CONFIGURE_VARS += \ + INCLUDES="" \ + CXXFLAGS="$$$$CXXFLAGS -fno-rtti" \ + LIBS="-lpthread" \ + +define Build/Configure + $(call Build/Configure/Default, \ + --sysconfdir=/etc/clamav/ \ + --prefix=/usr/ \ + --exec-prefix=/usr/ \ + --disable-xml \ + --disable-bzip2 \ + --enable-ltdl-install \ + --with-user nobody \ + --with-group nogroup \ + ) +endef + +define Build/Compile + $(MAKE) -C $(PKG_BUILD_DIR) \ + DESTDIR="$(PKG_INSTALL_DIR)" \ + all install +endef + +define Package/clamav/install + $(INSTALL_DIR) $(1)/usr/sbin + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/clamd $(1)/usr/sbin/ + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/clamav-config $(1)/usr/sbin/ + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/clambc $(1)/usr/sbin/ + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/clamconf $(1)/usr/sbin/ + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/clamdscan $(1)/usr/sbin/ + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/clamscan $(1)/usr/sbin/ + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/sigtool $(1)/usr/sbin/ + + $(INSTALL_DIR) $(1)/usr/include + $(CP) $(PKG_INSTALL_DIR)/usr/include/clamav.h $(1)/usr/include/ + + $(INSTALL_DIR) $(1)/usr/lib + $(CP) $(PKG_INSTALL_DIR)/usr/lib*/* $(1)/usr/lib/ + + $(INSTALL_DIR) $(1)/etc/config + $(INSTALL_CONF) ./files/clamav.config $(1)/etc/config/clamav + + $(INSTALL_DIR) $(1)/etc/init.d/ + $(INSTALL_BIN) ./files/clamav.init $(1)/etc/init.d/clamav + + $(INSTALL_DIR) $(1)/usr/share/clamav + $(CP) ./files/bytecode.cvd $(1)/usr/share/clamav/ +endef + +define Package/freshclam/install + $(INSTALL_DIR) $(1)/usr/sbin + $(CP) $(PKG_INSTALL_DIR)/usr/bin/freshclam $(1)/usr/sbin/ + + $(INSTALL_DIR) $(1)/etc/config + $(INSTALL_CONF) ./files/freshclam.config $(1)/etc/config/freshclam + + $(INSTALL_DIR) $(1)/etc/init.d/ + $(INSTALL_BIN) ./files/freshclam.init $(1)/etc/init.d/freshclam +endef + +$(eval $(call BuildPackage,clamav)) +$(eval $(call BuildPackage,freshclam)) diff --git a/net/clamav/files/bytecode.cvd b/net/clamav/files/bytecode.cvd new file mode 100644 index 0000000000000000000000000000000000000000..07ff8ab014f8f8288b7df3dd11bddd9b777c6fda GIT binary patch literal 68662 zcmd>E1ydbO({pwAPEZx0}C4o12d4BnTM5~gNL1!hl7oW z#h3%!47oT>SqwQ?xDD7?S-F{kMn)X0CM-s#T--b&lI)5`w(KVCtdiym94_+KF6_c; zZYm}QwoV2rszwS<=FaMN8mhA9Qqr~@jzCsc4SQx2I%W}ZQ4=Q%W)~F>S1tz!ab-m( zV`(*Y19y2YGgEVR31gs?x`;I$le{{UmWhn1l!3jQnh}tNMb?%{(w##F$jV~&lS4-G zr-<55B{vl(7Z-M8E)7>!I}Q_|61$-zn~4(8S=!mdU4~iGRMk{S1juG?YsO=1V#mY6 z&dSEg3FKhmAo+jVh{Ita{;xrvwf}M@;EZGBsfxGq5uq29k#4ha*<`vq(=?T&2%keQ zF;#T25;TEA9fqRApf)oN)v0@Zd%T4(){z)Z@_e{Eb6Sk4)f|WViuU)12+7soDq8`s z*4B?5;t#scS%B=GSyr$C0p+#e+vC#Kj#W*%hQd5LRsz!W^mSmx@;%$fU=?Fm_=H!cKE@@(l==f^Hh*K-%T*i=lgnYoI3>UYbL}k zOhVZ`LYwbK97X=41LJ{jz#5GQWcnKsE(5{a zZgg{;@ll^5i*5rLy%?Ev2g8IzrY{0346y8f(q)?Zm5Y*BMU$c|9oEYA81fd*a{I{OIfYt8qy}>la z_=~&z4&v37itMoM6+HgMe|XCVSxuW#6)rhNw>A-J1Jm zSJOB1H>m88avo5;T-jg3p2s8W2&v5Lo4Wo6Zklt%0^ReDg5M!g-eL0sOZGF_Qc6ttp>F5F zAYD7DeP!em)WD_MjKH}f^MErXrj&1p5`$*iP1aA`?MWX|H1;rWFwdRIb`Qwh5E?>q zVcd<(Ycxf6HydJ$5c}vszGWwhb_D~TykS1|W9193=;_Ac<)9{}4N^|5ev?1j6Ab&@ z=5|NVH|21QD}ul#u^VPN^MB3R@P~4dfiMKn>~qKogc-l7dJYJ-rT9ZxIuf-kl78^w z+Dt7n+jF++SNAv=!!2g?K*DVPiWtIXUvVF`_X}R(${CpA8@ekosrI+6@3}w}I~5VC z^PkW!+4F(2DeM`ou(w_=**6G)*>KiBgMuuJ8h~2Nn1=V_dm%(@UyPKJlEM|$K1auYswU@^N6B>DMWrLX#T%PxctH9F1jR5Z|2#;l4fa}^*)Dlk>|tu zFw8DI^?h*Fr;~>S)@;?&uZiJee$`@@hrmR_AIlSR=?7=qo$VDcldAz^&v}xeEv)7Wo>I^14C_P=~m6{K1i2# zx_TWg9?tHr&Q63-5Ifx9+Tq2hdULRhxa?2pMRcnl-0+Af&_N6du6GQ$9E2X8nOXvl zycOpF6z1K@qDKCUKTpGn#Fvs8$cKE-&v(1)CGY7dQC)VE>mUEZ;>GL;a6`{c3o4b&>PiH&KX0Oonv-qMm_XQ&~ z72dgWMvB{+M`{{zDPw zqKk*<0hQpm4Nf<%UQXV&_X9py#({jnHmDwt4$$*WD;FBNy*{%GJThKw9kLzr7B@~f zr2mFoUJ@d>>SDUErNf88mBR;BxPv?{6Aop9_gC6uq1!S!*5Ky#U-uY$6l-n4WwPRj zJUOftCC5b{*RcifHQ)JA5cW8E*R(&5^KHB+y(}2P7ATkp zF%D}yf(o?qm7&aznAzHJsF@aNL;FYI_eE~?TVo$iXe!mfYe385960aHU8d{i*FF$A z{NKwdh;O!jXt3GVFRz|2x6C-~d2!3FpX=8Z$VD?~>^VYB{c|YWuAXf_ycP;UcAkRN zXo!B>>Pd5lT$Q0NF$-=OiRiD(RcGg-*j+AuqBBB)nQM_xjx{iaUkv1$v~JnUunHkWYs&B~ToZNH{l zmFdG!m&z4tBIM&4#g77{E4_ov=M462m@hxPstK~U&d*$~l#r&rkDsx0m?31C`Il@& z<(y6Px^x|dO?lBfyLe=nNBz29M)QC{nF@$Y#9@SwIWzMaWc<=LBQ$ju(J#qzqe##N z`xOGh%Y7LNc0I}#re+E+@k09vlM9h|8L@FGXu`V02m*pxj;jU8f64NT9f>!4k9wR) zVz-`?Z|P+H`ltNUk2)v#<#_(tWWs|)XAT^6NQghdi!O*R5H|Y$eVvw^euO`w8Ru)f zcE7&&Lqlx8$TFZcD_H@h-(==napVMa8iZ@H3D{*$xL1AhaZAJRgn;)SG$kbAlA zbGp|3ET%BYv-^5x`Vb=gy#5lEkF^!;mAqp6NIP296KAiH(t{6rvzI2%aa1K!z*7h)cD91>|1i^W2i{C>8wAosT^w)m|P_bNBmBgr&{br zLayC&fGXS0ZMb4y4%KlutK5h(6CZ+79;^HiI43LwQ!8wd;8wxXPdF<|qN45Q-|U)Q zZQt+MYrYJX(?Ok`J@De%Te@@c5=liful)J!^xW|rt(|F>3{#CoY_ z*{*2NO!@CENi*x8S?*-EBX|AoLcHdl)bg!cF7AlTEDB7%$%gHL_L`SKnST@-kg(Y{ zP3L&!@Th|$$jjA_$1u;@7oJx_?BgGoA-sniMM)cs`zzGRZ;quO8UaJ=r^n-VWrufE zK5(ml3OuprI-z}jhZLVp3u5^CFSPHH{U9fW2E3+rC5T8OEMB!2YD)^IAH)diz#F_G zr4b$-$2`NY+3{rI1`uk?YFf_yhz2bLbrIrHC>{DO%uxOtuX=W0Ai~1(A;tJzbD%K1jUQdh@3i64xr=+>`s4j055i zr0-D6VinUS41Yr~6xO3!5mFASi~T;KhK)rO^1piD4_4TV)j3F3XM5U8vI94Rfxhj+ zye)A#-f}S2y-Hl2%Um(u2tE4F3z242s3U6Ib+>W!w>s`U=GJ{2qq7y+gRY4%ItQgK ziEa7!8rt;PR|0XmJ8jgxpSk)m<@Ga_i>16-YrKMdN0GdWNz5zyQF^@(-_K8t%>m|Y za?8$c8C(Pa9vC+(;wLr~vp?ke%(fclXUJ}$byPP5OgMe?JNh);jF|VNCF}Nf z+q&7OFFJ6_t+$cIW1o{h8!V??BQ_T9%`B-u2!9i>5$_TLMn^Z`K&hWdHrk79AXCx( zh<@csRSko&NrMR7c36jGo!9sL;fooGA+28cpn1NI@N`)55kZ)K%<`9Nk+W!x{Gsyz zsn>Rb{cBW@lf`~$GMHHDTb?&sM0>S8P#shbuh=!8M*W}=7a>Xvk4kVLdQ*moA##K^ zqSAwP+)rb}ZJM8WK6O}hjFX0%RQe*m-DM3;G-T@vdtb*ZD5VO)IDu@R*1RS2H&cs< z=x+G+w#O{!^X4dLXuEEq6Z$o$4cVS|g@}rHoRY}H#(p>6Y07LF{^8VK?Mm2cBX@eU zr8R8B=kr_M~K*F3kb@C!jEQx+a>v$)NV?+R;^ z?n!caXp9?U>+=(9ZF?J(@IC3rGep+&V$9>gbNXkPZq0#NQ5!KelYi|wS=k}eMiOo0 zqaD2^r;vMaCqimtC$g8MeFhX34FT5s#KEvv<6X_s{N1-~D6Y*7m&4$a_cto)t& z<8q;IT_o$2rY}gl*>&}8kO_N5uXQ(yLn*vtq4|0S$65Zst(Jr#Vlh$PEM>-yd)bNL zas`Em=6VKuNSN@($u)}gILq7bM!MvqO2X@_rCa@<_Uq_BuX!IU1>bIe*81+nklCVT zFQP{yKbdt7R@{olBSje?7V)H$Vs7#u`xtreE7=5tsT$Xpj3@r(+~N=3Wjl@zr+efa zylENw-2J}|+$eJDapJ|z^l;16ys$QDd00o$2~q3U#{N{iwYvnB2?%E-<#^AB=O4xp z0UO8|>vkq{b#(UzON8fg8>vn?k@)o%ZnpVvUXzC~Tw0J!>lRK`{EgGu>ZcCtH%~Y8 zT(v?3%cqKd^0s@ zh@0~hQL6h0o*W2&#!IfR*f4)Tz*)=^eDDpE>2-H`Ji==`*Csn;1~D%ay3Aet0x}ab zUF7i@5CyvYmG(RzzM5Wr|B^0f80(?W;>@ewxb?}=;J?AaaCWvBiYvp=78w}qN0|o?{F+|GK(6$9AHSy|Xa$?_e2R(d!-34S2g3 zn?*+?GKcP<%(Y2n!fk>fVfjOB1m(=V9-sp@dIE1*p2-20+hK9H?xX8RM;g0mjth{~ zk!-o!Zp+tvu$6LBw&~~9HROWoPIF?m-dO1#ci~O68T-h6WckBiBZzb?;C~cwT9fAyqIF_lD&*DDnyuE?b z?}d9=kto;SVWv_leA#kR>bI{6w)xWtt(R?E$tC2bt9N>AH&UPZ#(n5Mawz)#6dF{Y z;3a85*EPs9$lYd%e8*jWb+Xd#@yu9m9=$`Pyc)Rcc7B<}QEWYRjNA{^5l6K=fBF}Z|uUPN{>pT}TrQ95I zL`#UuRxoWgtG0(<PWw~)}3mB4L!vtN?Ib{O`N_znb({tO-H< z3+dB)UN?QPR1tsSj_9FHtTT%L7-HrtD_lFB*EqPq9Fn_Y>Ar2^Q9Z43HrP$u^bj;v zx6)Ft-)nKY-LB)R0tJ>3QtX~G*3%sltnD5>A8JH{`AV|U{4QjlcpB)+k+M1-F>^*P$&i6f=wI+&}m#z+6S_0BJuTIYQ&r!zM znmyavb$S<00v6NL*NncJ*}Foz+9g-N-EQ2xAPdmjZRu@nFzEH|Vrct3{ioUP?{1)P z>U{i020v1^AI$r7e15~z+yd_9{n)Z0U}0l_;|8d$(|m#pYbnjC$}%o9c_7)yR<5|4`i==++V@tzu(y3J=s{;p!!eW zu&cbNOr{HF>inJ2_40IagDv3I{%&8VmF2IzbHA~0j&56}<{L1kx{dW(6rJoTM4Z%Q zXKTBqr`x5~JCQzw@jSP%@$2dL?KOe^J@~!bmh2y0@Wzn@);Hgp1D3`($H4IrWSrWb zn-Fi-t`O+d^YE^^*ging?(~FN8dD!zIJtSiC{Jn<)b03Bf2VKO@o8>v4NU*#=IrFz z=H(2QUCzCvy^z(H?7bn!h`~T#UB7HNHu$aWXA9_V2$;dyJ0T+E_nXyHM45Q6~YV9NZAS1v%Wr=!!!>tA-Nu3iOx zmE_9|wMz9dL2qr{E%1%>(C+>7g%dCm+h7FwOo-K`n_B|QPFKV(Y`3ply&P~~W8c5I za$a4SHu!;a@#W?M-PU$vYT)MN1*Ta?w@Y`EQLk^|e!one*pBHk2|Th(TeY%%cr{{m z*JSmjv8C!KOt02wSk5N<$A^=L`}VBu18l~fiT#DP=q7pVvkPcjaPERFCl?yx?h|k$|zrzzj|=|7QTOjq5)}Yn-um?p9c0yMb|6RW4)WP=< zD`~0noekn+JKN6}3c~GFUnvVr0onO zLi+^q$2C5wDVQ-+{S3DZzeqxzRBPUgz38>oXF|?s48HBjh5TO=*(((M$cLMIX+PzA zEa>f7?0pTybGR97iFCeg5Mxj6_dScPYsY0$-igZv&zqwhGzu6%7Bm1OY*$Q}~fgxOY_r@o8A?x<7F~zq+Hh(d=456wQR1 zIsWMSx)w=QcUHUAx6d4$laUqdDd0Ny^kvAk~c84smYxV-h-IWUw0Rlod z1C*~PFp)i#t=@gDSiTk1;Ih|r>#<6uvlhG1$m?VudtQ%n0nWaMFCT61NQk~F!#S_A zMVdq;nQGr4Afor`2|Foes!|Lr36=J6=FckQQO+JU^KjndH?o%RzeqUvVLY=MphR== z4Dub_@J_==Wctv2Lx$KM$^5A6dKU0S)pp7ImT&__Za9Icg0;9o2o}w!k(-TJkQU8% zE+K8*{t!7Io@7zkM`F00teg=Y{-S_2vI^!0HO*Na%J>H-Asvly7tQFDaD8cgP^%4A ze%H6Q6KtFJX}oOb@vP5qjezVv*7BLvSqk$d$-b4DZ-F?-aSzXC>HOvnM!Mv5fsvdoSwBkC{7rI5r=6Lak?%dX> zD2a-pnpeNm>;oc_@9yD&cdL!R<(Fe^_}lJz-S=<3wlKcfj<|MaP1S^W9_!!wNvcmZ zT6MI_WSzY3k2M$HWGU5)4yUaDa2=hy{Ie4+8USx5{FpLD@YwZvdsqv`rurC%jQDjv z>HNs~@lJ@&MDLOp7}Vjv=QFoLh;n7v`Pd0V{<_JJ!ql_zkH}B4e$nM3zmJRWwfH-v z8|Fw99=U|o^#ife*#8HEU9Ufkt_*KG&QzxiNB=ZLUpPv!Se-;<-BQXb*k_Xob- zUzk=zll~CfdIT}Xyv!QkTzTD0DxR0vLbe^*j*vm6y(l6)IBzgD zZ+IsTWPc~5C0J#rxfZofJUezJvQ^dobK@rL>}*zEH|IS%vK_tU1ZYiOwq`E`uA>;3wEmn>`t38UX2 z;b(&HcZw^Ul)xR)i~}4CuUIM^-_EDoKm$*-0tY2bO``puxIqT7II8&B2HqN64>PC_FzigEfG(`YmEXbg2vLI6?9 z()t8NEQeHVEbP$XJ@#-_G>Y1P3WmJ_E#q9{bBKZCtmCRFXf*W3s6hrAgBED}hkpH{ zXl5g#iixxdsrg)Jk_jYqn2GQ-O5CGgm6g7k;+dr!YHCmpryRofHHTD72;+HzRMkYH z=JMg03}bV8X%m%3n3W`ZRRVLRS`5(;M#DfddjJefCv*hbJyuzx!TfGe2zMpH3_xb@ zL_4NgBCoo2xUW1ywKt9{N+q|MdRAi?G)$WsOh!dZO-g^8lHbc3wM#vUJ|0Fk)J`oW z&OX-Liy=Gr4+M)KvnMprB2fpDh*Jm*Ee_+8EQ1e}GQkXFEu^iSWfh7L)d+B>p$7g0ig9dM9J@*wTM0Eo zcsu=WJ3zc4p^^ZIlS&l-nmE1- zPh)^JMm92f^l>$h-xzjsp5{L07NAKCfbSIhAN6G`UzA9S&6y* ztW)!Ui_=TkCriVH3N(^vBSp1Is9I!d!=&ZnGDeFBCK3e%OJ}Ji}cYN>&F-x>*6HPMe=vk!e z_-AMxMC$0r#!Q7R6*mvSirXi5MW!S48lq9xRf8iOf`SVjP;(q3vMRWS$Eep+5s zXIomhxf3!>YIJlwY|%7Ogh*mihGBwQ=-)rG#&)*f{hn2AUd05{OzQOQ}aS4ILp7%YwkkFUy>$ zU{aRC0#{cgKP&})RBH0SbWBnO>{3Sy$K}G-B)DrUrk19t=8tBGprIvOFtRYxb%9FB zkcGwT$LGSi0D+PkL9sbP`x#1|u}maYL`%x6^VyXWMwAFb zuzk*huSIF%=<})bsKwCs6+;{{hS`~JN>MFv+01a`hFKU@bPYiXs3w{U*ma{R&p+nZ zED}|4Xq6SCgdB9?OO2HhB{dwhO@%~7MMMlrK_FCI3RZMg0NtcX#xO2I>KGp{>OC@W zyf&OZS*cJ{MMMc+a~~IrR5T8E%rBJ-gjrXf4=6JhVG%RQqRfq838PM=-NJ}`6G=31 zQ#>FeQ`FZU=3;b;LKufx2OzZO{7$e6LG*B(Jo9eW-BsDP~XfC zJ0rtRFf-_$ zaVFi1h-1%VPjm+vD&Z!HqD#y5=3}-FQ?IrPo|r|b9~*qQMsA1{jcTfCZb&VrDD7;!OkK597$0mO zGkiGfgGe5`%qW7PDVmvPEEa`$38pGmDVY>?9HtR1h>sqF1|!Y_mm)(=Dg-2guBtdd zMvtr#zapDBBI-vQ6$iphjH^{J7^J635-r~aNx>_Iru0@1v!MkNsH;*K=PF@}st(X= z$3%euG#H0PH>_2Ry?ly^AR*C!uTFBHd=(2RjbSAUT1koF5NS+wRU#A6cpdvl8GE#` z9GRoYUMV$elR_Eu2qSHrAK7HMlxl1*J5wK*QE91C5^d!!pRy`x@7GwelG^fKaF!*} zH_I3{DdYj9Z^lQ6RV6cYhf_?7jRO-5@lEh>xM{+gBf>QP1tNy$ONG;8kc}D_l+q%W zafOPI28^4apO+j&S*nQ+hz7;o0#qck#K{;$Xm84gxeGN0N+cvGXbKdwC@IERCson_ ztkHP@Y*MU5T2oM9(E&>`=jS$|xC}SzLu;zgU{$NT`DZL22VIn4lQv#`S!eJ>Y z3*2OHKy7_khSDAYZfum{lU{xop~sz6v|lxVOomIUmW-if+{8~6*D&s%J0m=4Eg!8> zWt>!?L4uh@7+PTh7TXN%@7*Cyv;iEreKNQ_k$$u?ZGBQUia1s#QH?_GLRL%zZEVF< zbq9Rx)Lm9uwm7&U)ws42sW5tm4*7~&>Mqn471Cr{acm3hV5OwQh|#!PvRwKJAu<^i zEG*S5EEA=ErNWvBLkfh{eh_Rgv&?AmxYt>97%e;#I(^AFW(_dq|z{Y87mUlFur!ULoJUhqAZ+wtXPR!3a?N^GieAH8~4CM zW0b6427pT^M_aH9q8(KMGY+FHl4LBL3@8I!Q_VQFnp+6X1XUar6;ZWfjs6-`MN)+@ zZKYyrC2lHBZTJW-p#((=I#obwSf5b7g^GQgzScLws5y7KW3sSW1iZL%mBdo`y0~3x zSvowb2t`_28J4|((c+Na4CNjRC6&-P4MU9)_7SczzooJ=V#fO6D~|TImyYqxkGG48 z(M?~K@GY~w*R!3QhewpQ=na%PUU%nL$*zyLTVe>o?-uikKB?K=Db6a6wzA)+pZ7Z*iK2Dxua(c_9iP`ID2{cSj|Zeujs!JOv{dh-olU7F(I>Yt77w+{U4da}N&9g?NK*&j6~_(l|G*a zDV3X#g0eT!ZP)U5x9N{<6K!|z9XjtH96BW%W$JdHZ!WM~>DhKmPnWK~aZO{|mmfJC zZP@}F*mubXj&FU3WZLh~k#Fx^RX)C-p%@q+ZjZP3m(TK{6CZpV37594ogVLY4_%=7 z->tr%uTg~Jis<~Gk6m?KFPE$1TV)@0Zh@sboK~LlnQwHoYD&OJHL(R}hU&rA%1{`2+o`2smOs3`oX4QEGi=#!x1jj>(ABuEp? zRS8p*<3=IbWSn&!n<1+kg&f@`bk`kd-)~WR(kD@9V3jx%{ltS)LXW7!91QZK^7_}-dBE0;5bk!=9$d>`Iq@v zo^MuTK7MFIN+OjcYGYhLw_2Q#H3f^|clsGnZ;;jp9jVkn7$#?Atv2Vpxk-XGech+Z zl6lE~*KVt=hGrqO>Re8o6s_e6K9csJD|&6Zk&f-QM@C@E|z0s zl9cH%n!2lN{S%has`Qw!g2E!SKSJfzE&;fpLcX}X81f49LF&E#=p>7hUs8y_hQF4k z@FMR!rN@UO4(iCwQiMS$g)7MwjRYY$GTCq~N z=eT`BGFlO9|8I@U>;dR#zr?I-G|QLVf39I!_!4;Dd++FjhqTVl$Rp z4A370r6ik=3O5t?L&P%Xy{~D}cZ65O67}1t{!gId=}5)t<$mUm(qqq0u~*Ja;-gKJ z{1{6RkPJ;q>8S&dFrN!3#hU?MpoPX1_lTofqvx}){xB@e zqdJE$klq6q>YJ(h8`ZKnasgz5SKzNq5_K`)cW4NMq-97*HAP`35d~SEd;P%-RTaJ1mlN|U!e?|e}VU%o($i~$g3$5yk*rC7&^}4B1jTM94{)t zjsc4Svtx|k$>NsL$H0yy!Hz=#3nEgLp*-#E4Q$h5FAZc}u2v$3drN!`uele5sh6=@ zlEBy`iGVO3yN5^g&={P6d!e~lmZ|Kd9;uq7{&BxZkrnBrBr8hOlKdowCKU`cNm3-Z z<3?0!tVcjR@nA=d6s?*F&_au!t#dmm zB!s;JkO!~@NRKe&PGgqSZz#*g{VGT_w{-jzUnr4V0AO);oFv*>qDNXcD@v85U5w01 zRVPKVqZb&P8YcNMNRKED%V|-L)W&Mzx1r&XN}~%*^~&-T>Pph&UAh++iuIJG1069!wAjTO^B?IC+3QVrf{CT? zo60ngE!YhtH8?p(`;+-wQ^X?KQTj^5@SzSY zU0y!AtZap$DAJUz$v$UxrKoVE?a3hRV?Bi|up&K?LK+B+OSHC(lP%N8{GBUYlvb{y zB-ukxQFU-$feN5+i#;hU)SaK_il%!sescTQ0Q=V6Q7;87w~UKa)$94ABt_HIR3S;{ zG%rqbc&UDC+DxJ5Jf|q@r&+5lJr?CEYgKa-X0u=3SZH8ptyZBbE2SwaE89^k1q9ZR zEpQMnA6IEsVq<|MCii;!mfN*OKU>N?L z!%0m*en6=t`$GtKUb$sjs=J+$WrbRYkO?LyBlK}0Wko`%B;5-8KhPX~dTv@h`zW5` zTC*B3v`|&eVUDK6l57f!hBScW=htto&YuXarJ@W9IV3-YU`Z|Ejpu0Zl)?)svF}OI z+ca%8V$C+DPqOIG8K4(dS!Oj%RDJWqJMQ^Fht^|tmsV7sw>BNuv;|l|P;8`0*@@`{ zy@zgicck>06=QU9RlQQ_M!Ze-^l>pIc3O-_PcKuOGO=oSgU0>DXgKvhzR=qY!t~}m zZ~ffDB!vpB(nI57(Wx|3(ReZ}uApo?Ees_l%Tm#`7_xidnN*gUu_*=?Fmkt0-K*X< zn+;hw2ytPay<%3XSZ$*GLewGL^Np|#}u;iYk3sf{rPpR;)BPm>ke0(!xvffm|a zo`S>;oCRbREz4t?1<%>Lh!@yEN-#P+D%V;djE`)yUU?)7t?<3huECEIVsAbeTWuAw z1(7qK(~%BAT~E+XP=a;wPYOA|Kj2v77-7-Qa6$gQ9^no#6M_Kh72Q{vi#p-XI8KH9 zj(8$*EIrm7?Gjz;ntUK&%@~-HHn>cEwmSd)aHqx%!zW&mrsWuDAY0^cfj1`L^M2au zQ+e|COLXx@qk70-`59Y9$+GsJQIP7h_MW8;RBK?@JKx>FIq2jeLkwy9? zxh@S#J1JCNZ)Wd%iZG4JkA4OhD@%_8?^;_d!lbn>k7h1ueXh@HB#(a6Xm~E=Co>N z>x8jvgoVIK#T{pZLW){nW1l4t1ip1S##MJ^D zww6AprIiLT_!lN?F2B#9#W&yG)4S4zt?!>$L&wQide6R76I*DX3-z@#nZ?;dzOk5H zQ4r){TCR{ASBe&C4prJp`Th+`BdMTgci~xn6>$9wlOZy8^R_oEjPBdS9?9VqJFqpV z>EeR;?s2_45Ps$x#Ps<>_MZH-ucw#)iQnb*JT)TN74m8JbOXN9F7e+<_Fgj6C%4D* zMzlJP1y&Guut98)K~|svTHDqwHKG$*(D9pQ>!Sf~kSKPLsH1r{0L%O8l8=uV* zfkk+M23bKncH~#-Ij&YC^R$IxEV+iISn>DOygWZH0b~pP`6;1zW|+FN;tG7x{IBSg z@=D>$9wMto^h7l1VU}biA)i&KhI0p~Tv_xJK%4`$0s zZrjtU#XK!g4IvMk9^0m_8D}e7K+RAQ;jvj2At5{s2gp>fjoUKqNV?Ktoe&(6t1a=2 zfOL-LS8gB}hKhiWARL~?eFtsHM@VBT}q<2K(s*yZ<){JFGZ#;8+*G2}s^T6FC~ zuw5AZ>%1}%x0wDKS|4F*I zMz1F$vt8`*l-$G3?KbeE>n$nE;DK)2MjpSDR0Y7S5fd{US8R}g++AQwfX#tlLa73t z-U-P#L_&`2Eo_7ldhyX3gwq?g#&|{MB}6(WI{Ns5M0kz1=A_kP{c@yWD*V`9g~l5V zNY6Dg*V$UktFz1)BEKV8BuWs{AkP(#<3?PfNszhBHAZ3pEW(gz3L|69@qNu~Sf2h` zBL+AZw=#o8T$J#LMiaI^A}SF(sm>j%6w4>#1>swfouD2g$G-3bkYW)P56@y^VlH6c z=~$6fO{aSX*W=TQ3!P=L^_HAv(PO7?b>f9@Nziir(@D{QzgsH#VMIc*AOj=!Adt}9 zvC+^j!ItPE0TOSq#aXh6CXW;i~0kr7KGq|FE{8z7|>BT}ME>HW=!-IMhd_TH-!W zpb}AQVYM#%6LD}Qusl&wD27?(_6vY4k<@gi8YBjb&PH#;_-s#}uBItE(NPSS7*j0a zq7rXxQljWmVQEN{Xj#u{$=Ey!iEIlEF+Xu#4RmnAU5vS-0{=fZzBVq)fM}5`B3se> z?$CBW{XOrua{O4BNS#vLiUcWzl|@19hjuXV*9Aa&fS%W)C0Pr9Wp@4J&W530p|@70 zTqV!q{yXz;y+Cs#?D04aSaiL}EDZYm#D1W!2~GlVsl32}_Ni4avmU)5A)41WQ9Dvl z&PZ|`WYg(5zGo}-Rs`|Z`Bl-CkESxGRAbDOG|=S_drv8LgE^mwEF6rX6<>gjPZgiJ zC|oW<&iS=dN!07q)H0?2gr+uwPdF|N!Pc9P zTDDt0V}aa2=Ck6i#zcJ)712Gp!|3DjZR%9t@8c~{=TMwvr90u$G`X` zcDOuCIrr*)r0es$hB^rQ6Ifn`u{dBS+?3@(Ox4Z5fzXmY|MKr}56Dx;Eid5dQt+vB zu~fMHeMg;4C)+h?I)4r=|Q<>Ku zbahVwqt8Ci0lYUBk$wM=DOWur#iKqgw5?|cmr0GJ+W1V&2`}~&#h_vy3jU*7#d9=3 z57tzJ{!VoklB8<9B8*50q%`5)AITbY_(Ww5Z`MFysMu%MS%*$E0e2k5OC@pb@=sY# zK5}w0<=H-ultN2SoJT_#&cN5zdf~j-kB*d$Z;aEx&vyab;|nyrXNnSlbF^6*4_n6X zS@V3hjNsrQ>ud!oq!Xi+TRpxfu_E2hIKHhh;oq>&MmyX-l8?t8m%mpu*|R2Yl)~I` zR)?PXJvOM4*==A#SvYRRs-q{`8P>~nb0UAZcHUdghv-t8VDVQ`*%9ypo@!6=imFvU zv>vguFyGeP4&*z2a=5v*wrys*E)B$^gQYyN8$`B+0!>AGUZgNC%W2&udAn#KD-NyS zvnCjxJb6H-zE^jnI`^f*u)y8(z5SO%kV0rkF5(g=%gGqI8Ps^K7=F*@-+@4}q@?k^ z9qB*TWlfJ44ORtozfMzg^A%uF+z$O8KXy*DN38f-oN8lbt$K=- zaL?Pa7P}^B539E-qyp@#gE?vu{K;nvf@|X|ld0GzJsIcakg|n@< z=^k81iB>mCQ`&5JOzCg-6~Z1!TCLWzG=R)`@zCT!j-xl;?5!36kM`_lME63VP<-!O z?_4nEil<%Ij`;E`&h)c5%+I95JOlwPUpcl8rG_3<92_ImNFZ)Ah@OLureE(!d@TPx_(=V;B z^{qgw(-@!On@$s8$v0CiNG8{3x!6b$?$b(f;G@%di@?q$SoZVuaQYL!Hzn@whPO!3 zpUg5N!t*l2RWI)g2VW1wnyM@3<DHR88ZUG}%u($brS7c*ZkpmMRg(Kl!OY0DpZ2u>2f95~9|eNl)5z$Q22IH^I< z-X9LAe$*IKFm*?|8jS{VlimUe3kQsc~T-W zfDb`0Ld8ULV11Dem{Y$o$DCGYHOWbq!K(rvN76EQnklRuaVYFGff6DA68++6foT*e z9x;$Wp}aVC{GZ4PGB$Akeq8sTg9#P3J8(87ET3G~YOG7tOwqkFgSFw!ySXJ{giPJOl5M8iM6>+z{PQ&Pszd1~1~ z8Co)}kfJ0*v=bqEhKTtD{BbnOk_JXkRWX;LoPT8ZX_tvBp=p`Rbb%6}XDNC-{U!B^ z)cwiw<%4$di7I~Gdhd-5VKi7abnGf^$O#W!HF;(Hiv7`Ivq&|a)d^8on?)YBjRw@Z zs1y??7T3~n_QcL(2TLb^@q%18DPXk8t>U!xYqOG#usi1Xk2x~WcWPG3^|$)U%%~gd zRKaon4n{+#=-}ViLnRZoHsh_TnT6qvL@4qFFA|m7)|2(;8{d;cTqEu-QHws37MxI-YgySp>EJHdk`L4y)Ich|uO zcMI+?z|4G{^PPL|k9k)2{FpV>wX3`8?RW2T(b17;Ru!we!F6v2MjuTzEk*0*vILyX zq|*r67yOuBccPQYRMa!LomuxLYlF^~eCE?MFV~D|maXv-zN6!*q^P=IU>0Hg!;e|< zQ5VInAg`jhih^`1fMl0<_MR=)M!lypHo8cHmoq2Jbj}xCtRJrc_Wva~+9|PAM$msU z#*1UFCSM-8Ovtw+Vqz{ca0W4?o#sLwrW(#;tS4eMSX8Bc;(X+n3 zGY`g+EZeO@G3Axc#-3R_|BVp?~OU9`lD_pgKC~j zTUqOBl9)cV;F`U_Pm}F56H6g@HN*9nz?p6r3tsd8O-#KW7EV>jhMy*vDiZLz8{-*!?{P*~V`hYg%2h%<&hGzIjgsyvPq`;i4TNH z8PX|wllOk`lES;lA(4x{qxJr(@H-VRx@dEcj}QMX8$g1L4<})&J7OT`{97Ny!Q5uZ z22rfh8WDwZN{S++{zGMLVV?+^gqnZDhh<{;DfrYd52$U*k025Z*SYAryaVF8y?kKY z?qrh(C7m^IIlvj0*C#E&30IsP$Z-?6L3=4;7)x});Qj&r(mfX;3YaxdO}Pzs-KM>} z<9#^HJDB>xM%4T1lQW+C86p#zCyz;8L2rLt+EhY;g{H|3Zbu#TK|1XDk+oe}FxQRz>e z6Tcrgk9-CwFBts{)X3*M+1LwtDoCsZHNTXTpn)?3bIN%mJF`0E9n$=&lE<3pW^Tkj zD&*s|Cp|& zzT-P^2ldumLQRFCtP5)2u=?aXTW&kEQf{8lSzN+JM8h`Rt*vZunEdeAwz6)v;~SVsg~RmOD~&`VePu zx=-H4|DzCX>B2eT@%z+%cu6-WTt524#~;yzKhVGa5z(bZIE2UD6=xRsEgOA`#~3}! z!{3jl^EK*&vItMf*twGH`Nj6CgDpXEY{#0nh_BJi&{_7}c>q7h3g^#wm)&4do*-np zU5Y-mNL21G(JrApzXxzx+(HS|z$L4SnbSHV3{f;GvY`ajzYr^67dM*SV--vAV{Y&% z3MhrWp-JN|se_p6OHiHyoEDlEa{?W^9_sQHe(O?yXSKrhW z`W$3yg-i_BD$G(z^Xy$F8-vINk?&}bJ<-T;Pl=?}@T6^|l5F4I!8n$8->hhfQ#{ay zzaB-Dhhs1CvAd{0X#P`o673a0@=Vh-765k@|7s(M&#xQf8i}9EFQ7tmRc*?fR03&O z@As|4VHbxW{;}jXrskiF%?p?uCH#A9Ss_YENff^wT5Ybf>65=O#K>tylFK@*jMtHE{_wl5_De?c-F1F! zbgI3>$3HVoj2^bTr8KKGp*V=7*YJ(jrZxS7e>&7s$UMeZSvWHe6NaM=@#vZ4{iBoL z<0X51jEP6SFHfjs$;ef;PAzo*1yYb*dd~+nZJ<#(jLKd$jQ)+kaMnC4oxAc4pXvPi z!uTMT(^5;0K$d5%cxv+RiKVd`z9I)Bk-oKvbeP(Av|qqbR?f(1+g$-^Kk>M7voHlk zJ&sR(McATWreb?c}tmtMbsoKUbdU7B@ zWr}&yoP98tgmO_SiG1+EEhv-xv++7sR2t4%ilX~6!9z5c7OhC(hLy!~3lx_fFa9)dc+^XENOk0S%u z-s0=$W>ct25qQ+_bzd2S#j%efYB_f0JKg(PiqQVv2hq^n%ykD5;r}C|N&d-7`v5CQ zwMg-S1#N<(Tu@M-8)g=yFfezpCPQdCb40kiRlXq3e!=Xa>r8S-e+XEwao6flH1D** zyZkdJ5D37tVDb-b=@%PbZ`O}-LxkXe^x8Y9hJ+O=iNA8Z? zMu*n56os-@csAeHt4O=0HjyuY_j&3NkjL%Ev(s}Z0Zlvw0-KTDc~LwcO`j!n`DlMl zaX9~B3Ncik$P3m3v*<*>%?P>MWwm}-g%-Ske@Z`iYxq8Jcr;t56;s^J?VqLN*ZvBs z`nhBxKEYK}cTdE5Q%iit!q2Hjlg#cU^4N)GMI56ob_KfTS=PNt6Mv_PNHkUtYT_k* zSuAkn@!hix&o1FfGmj|Q5!zk-OpD|ENP>Y`V!d;vV*oM9uO?wMb8EAhJ5Ql8%J0qf}=?-tqbZr%^a z&XfswUCOC;NDLS?BsN`5Uwv(o7mng-^oe4V#(Z=m$UJL<{z0?^A6w5qV6SK8WUEa& zLL1L!GCIV9BgBMVoOi@KjI(^W@tO-dfRo~lLL}^0qX`|Fb0tWiI|~u@i_-oQJRk|S zxalzmk7}_)qqd;Z^7|ov0^?Ij;mh@X zy))j(iSYP;wDy&Vp+Zimy%te1ntxaFNZ2j1L^gE*_xY|!NJ||1%lRMGBphk#KSc+G zUVa{6Iwn97m&LnYr5Eh~$}bgAasbxi(fXD+e- z<_!{#mLK=bm!+a_eQ`9PO~g9ol@LWFSV9)h&k2UY+P5q>q%nDQizrVkfxKSu*c9ov zlCWF%QlOwqur%Fflh|$ESb1MxE_XHc)0nh)o|NiW;9%UbV~HAs$@BM_>G1mM@s78X zQ@g(Q-cC}dPs7x>b3AN+X_M`snbP6FRVK3}h1a(v`+I>eurPbpuT;Lk;p#Bg@;rA| z6FW>OaP-)XUW;i+NH;QRa^KSNw>nNrz@C*`a4(wNa$hW%F&eC}-|igR%hf&m?Y(?R z*bngVF_~1_X}2;$cEG$6QXY57`;u+c2(>;uq=FH3ro&v<^IWx)U_@jR3SW4P;T54U zJi^~&Hs6_vw|UbC(1g{nIeXD?mqWt9!zi~{{T^FSaHjrrJ1X)tz0#pzg)lH<_-XfS zu<#3GBx+oL93g_c4CcNBUkREOxsR3gpJI0<7BWUg0A2<%DJbJXkkOJVA zOMvW&`!i9$%_Sq3EVBR_M^zdoQ7mbW?n|?MEQWCTR3=uDpk#MF)2B(y23wLZf2Hnf zmy7DcY{8Y|*wVMMd0@)w!ewP+9;xB0v6XZMv8YNV<72L2b*=AB<|gsnzknKu?lLt< zWbXN&naLR}fqbX(afCu*i6mXf7{j&AFOzX*Je+$TTAsN3T(R1Ytd#tGy$ieIvGCo= z6pRqn4oV^N6`I{wT3T{pnO@97JNoETmQGh$l03Y5dzWE(MSfnoufx%Dt*yK0Jalp| zyAzuJ{5qyz72*^~7f^`-d~^!j!Qx9gdF1^4@ap6gI!G9+hRAXRJ4mKu499e0-?M$W zzlJJPslpQ4B1i!uO#N{zp4hU3hS9wFUw$2G;7R@al1V$GVC_PhP4MaG*mD*E(v`R3 zq!hZU{o#}?|6fG>WjaFzfX(+r-e-{#9;IdJFV@wJ?pdX0jY&m^+}6jRYzuDrX^6b~ zh3QE(hhtRi+@jI2ZRd`Y@C|3mSK81tX3{@}O8%0~{O!)CSE_lMUF&XU?Wxo+ZaCa# zZLP*KpFZb1XY7=ZpEGo=jR_Z@&#J0ITX{)E4Gepxsa}`IVPZMzqtC>2gteKoj9LvDH zRy%lWevZ5@Iid4O&B@OrE{FAhv5pAT*7{$3I8Tff4j)CwJH7^dBfK56o#8-?E)egS zyeBi+!*4#TJiz!lyYO3fkY(9KI@3IR&8N$yAYW|x#}xcA?@n|_yvrZF1i}7U1>xtB z1K7I$%f<^;5lmZ8Nb_INM=z5te**~4me;y1SC9M6iHDBduZp|$XDZFN$`%BeMUZPK zMZoi|c|Q!?au@`;9EO2!d(=4+g94ubuv7CDFKMV+4+QKCljI9=g8mUBhk|>+cCQUE zK}aF2?L`W9-U2%c5`S$+imsM~J~#Ayq)K=%qX)@^{qCu%_WRW%P)T`#z}nex(I$G4 z`1rWE0j+PxTc@b*@LLamS;Jk}T1UO`ly))SAe>G9=Huk#ueZ^eV@AkZR{6f<{m}bn zTXgt6qbyqB6rXgkn(Mw@fi}T*uP3&}kRU#{uqiT|8@j&9&Au)PK-4f9h8XtV2ScB} z#zKC$ZZ|U3uCepwz54bj-uWqs=0?rihnTydy@jtJd^T#!hxfjN#Za8Su&4X{U_u1@ z*lb%sfasvow5qTQ*pm6AFkbJ8`uSzI?c_BcY4aC~le-C`5KC0nuxrNQDvsFpn6Z2Tpwr8 zZ6D{qdCBHc?7z?XxopV7H6xXM<+)3@W-@M@*olx(6GSFy!uh$$-7BxNv(wk`t(bY? zEFYS=n@Gm5G3&exiytTdnjDdM&UN4wu@tLh(Y21n&XPYeUZVVk<7;u*<^;tUXSKD6 zc2t~xFU)QODpqw}S?JL=_|bVcny_1_kG}W@?(&m{m zH3tPJarr~YJ9JZYkL)cKa&h8?{D14#aJcI}yo@JM0wkgHO&lwTVs1~*z3j@Nk*yir z6g2RzbNWV#6g#rflI^`G%@Z^x)T|62C-zqTnPnny41QMe?^>m3|D;yK55>4bgDb^* zAFk|=O62u~HLGFvev_^;Hb_k?5sknMZ&}uqT^l#gxyyTY+sK^d$=nGgv~{Kryj0^w zX)gmwEwt8#?aPBedSTVo$W#GZmA5m)Vuj*05lC8v{^Pu`Suvm)q5UtZpPH28lD0RS zC|K1e=||#M((=VDbV8@Fu5R*&JXzGMZwM&<+H%2B7dpbX>C*5wGd}534>}ti7wyIk zvESl1sohyDIhr;&<`yzs({NEDkmd8_7NhRTl<}wpIW|wxmlNZC*h&1&P9i>C?IG|# zFArB>a6@!rXnsHVa*}u27mHZ&mpwY9R&|-E0L(Al(v4W|@0~qa0HW`R{#;!nL$c;B zz-(rx6v32NyIlJX4LwuFY@Fehg+Yqya6cGK;e3%`4)Cg`vBp=q_GEB(+n~S4b4Sj# zb<$J{se6r{rrIW4mxE}*qx5DnALvJ!@!6gH$D7Inc*pFfd1s7NpFSyi2Tm1eciy{m z8fibF3G7tJwgWJ)EeSR^0`;G^cC|i=)_WM4$DOI)!7G(n2xO=h zf}w}wC{8%ODZ>AX^kC2h=q}L=f`Wp;=fGa4N9a|BP~Jjna9WvH$%j9~H+mzN-rIK< z27|p=op3u|PqFSEDHUH9W8J@(yq!{-66)p4NPqh1XBB@^;vT)@%Sg;Yq}s>~f~H3k zWbF)Gu5(3Ajk8E{CZ%;^r?_GI+}P$(=TU_tV(@ofWaWmjxi;)9)1djx9NXPB%c9>_ z9ITH&bHA&}?~bZJWgVkGv;_TV05n+fmokd*{!|y?xPCOtTg$oD_HhDP+YS&ev%ZkFQ-MK5y)!$0S9|a7gZTe#$Z*`R&*B%y*DqpQH44TNhRc zrTcyjau#G!kU~{Iaf`Q38WyxxmRhpZA@w+UV+Woe&h*2HAx&$g1OM1=PoBGFucDBVPDYP8kDUM6A8le&&XqpJ1|rUyp>UKA@d)}< zwYf2?;{mS*1+wXW3Q35S9digrp~?X#z2&v#wOS0^T@KfcM+{K$sGn5^)LdkAFu~gw z%u5xD^zSRWBvP_P&0mryG|_58T?D_V&BsleQD!sTobAwXYFb@x z5dZOO2f`D3kz#{GpU>{szU|HlqP29E@O4~ z`r!}!>|YeV|K9%27L>oZ)(804;{{Ule^p2ccF3!1hlrTnwkGw7Vcv$m#x&oHBCY!X zB|_ba5aTSrsJfx($9R(`o~;+L6%W+o5Rso}U zg;HDkBmj&0t@a7|ifI4_66EY3EVS4qj<-zz9o)KtLJ9*_4m+qoPaiWI%w-6IHy_(> zU9B8|I|EAtmZmZ4s5LZryOl)o?vrvNC6Ofe|K_UiRl&{Zk(i$)*ew}V^YI=E;iFGa z1El;}trjYD_D>}0Ei@Ag`-jFkUoPyaBo+k_g#lcrE@?Q#JZ0pc)mBV3@B5yA`4@Lk zO7s~pwcXkco3Gwo4Rw3JqIP;_ak?+W4&3=N5TE~z5hYsPv(E|Kqlb9A8T-3({G}o9 z{`&dlMES&6(L6hOyr`4h3zXL$_~8C=@izCS>E$u5TwhObgX$7{aRX-twz@@8xC`5G zdhNN4h24uYQ1;-$RNul!TQ5wsLDFYwJ6{$UXRsaA^0-(t+r!CDYUKV&m%<&^taUBHw7{YdUFxAv$OU@vG!dtK7VL1yxH*qHJ@0Pu%}KA zjRF;7u@jWL4UK*;k^K7R{EjH|iuv7VwRZe9!x$&_AOOknz8y_;Me?x0J7pgum(S3w z=|4PXsaF}DnP|>`uRWB`oM({F`%NZL?RRSHKCYVTr;RGQyBp$hO*$z4Y-Q21&&_sF zP@Tv|XNXS$a5dQgGDY&>8@?c=GjmrC^{Xi%i^J;^n7K?QROqI?J0ldX$LgMZo=yxN z^S>gBE1y|Y)1VFebuCUhPSAo;veO@cF^OH!#E`>*X0$<_(Z5#vFUf7^T6^cpfkz0x ziSV_-(lc6qqj;*Yww@ETXk3$-#d0)i-b34h)fW6!amEck>^=7Z!f-4?xrh?l_7!{W zq{tt1Qfp-1?onZ^vScii57@ySv}ijMrW|~-H>Q*o`rEyhpHaCRrR!8n6WoH}dg0;U z5m@Oq3x~{^{eYc28l4qR>qY$O;lgSmvFowIc7|yC8y{fdy zC0DmXn!seVVfPv}tiQ!n*mq!hS&xIyg9C^*9({EqxY|dyj(my~>3h*N!4|`ATqfT2 z37_zGzB=Q!pa_zd{1W+daR4E6-X1A3*#VE* zh(Z3h%8xv-8NES&Kbo`x3Z6zeFCKl1h{`}-(eI~%_{CUexJ(Jw(oaI1q2~MXO#Gks zD&;U-l~Mp6Ln->g#hJ6k1R8G@<(@x}*=As_;EPSN+C&*Og*Xbj5Izm{D#KyCX~j{E z0bdn1dBQN*a5O(t9tLy!eF&joWC`I{VL_ct`t$=Q+{Nez((xx1)UiIWxU}6dd8ZcM z9cn;e#Ggi5!T0w*pr2@hTA#6L`z>07KV;2XA+BB>udrKx4|(?sbJT@W)V}c$=}!pB z7fwgidn=YN7SgPNSeTK>f8eoQe7mRma}rUb{G*4ivjE=BZC2>Phf4G|eZDf?AU3{_ zO@85&Ss^*0l;4|bUJlt#WEO_;=^LZDo`xQk6aJ&Eh5>CU26k|Km&zcg>2_vMN z2xB`UTLze{=ojU>ekw)c#Z1=by+O-SSIGl!i2lz!{p4lZ9y*N=XAq}R%Y8WgxGawjUkkYeiV-wK4aB2mS1dZC zl4ZI2L%9cAl6;2G8V({O$rCZ*+f=U4xDPFi!FoUDUk~36C&{KB9Dh5QX2bEg ziXQEk49@V%MO*PWiOFi^fO%xhf_jE;CJjF)AMlx2i zqwF?I4cQJ4IhWu(0@Fz5s|J4|*6AQm%Z6XgoywYGV(VZ~&eka@Fa~n0CLI?+F$az< zZQdvZw|Aocg=QlfFiW4Q+1Lbfe4ix9qiFdo{mnm%fXf_F9ZV{93hYLmvxjqcm+UX( zjF@jvT67qc&5m=hy72y#LkZeqCX&Qqu1E@QC^7af?DS)p>c0v6k`qBe*r=;z^k>Im zYYDeoJFJ}f7jXIT*}Lz)%PiH8d$h3;B{TudKMuN#d2@4g+)kypoO#!K)1e_oI+(5y zyLV?Q+9=;Zzpg}F%z&eWK8OuQ4Q;07`Z(1kYfkG1<~0-Ne$-DozwB{b_`v9Z_}q4V zljZz7E^EZgBk&MaK=h;?KT}irJ9Hx(s2Z|mYu+t=MCJcyL%TsaHcOM3${+sbNW%d# zBtNJ~j7V#|C7g@esUccRXlktHeY7jGcGRZm?&@gg!-!39$TQ)2a6ikJ$cMQ}lP@ug z<;HS*cx&&~v%C!U0*Q@)CmipZsmSY}R4HF-Fl?acx2_Mhub*`-lTYl_-rHCy$D$E8 z+s4^KI$~oDo`F3do9%XM_o}HSE&KT-Mg4;70LYlFSDV>g1ZIMck_|yqc}xYb9u#PJ zbzY+$gA=00*E=h7n=#0GR#?9bVjM}bUXSgZw7NeG(9@>==^mxe7C1P)>il`@sqFAG zR=Uu6Cv`edXfR4qcUQ)+jh80lXx7s5Lg1vtwuGli_z=;?N9Wc6=bJBwA`)F50H%L> zdq1owR&|dUoyyLwqFSygSqg{)*r^9SI>r)jZ9n(T8sPC2Qg?79UUfvI3#R_%e3GHq zC3r6`rrN+5eS{iM;LDS#tY)8<>m9%RltpxRAzFNW|6uN(bbf|xMe!Y-YprM6dFk{W z%0&!9=HJdHn$MUcxM7~qooCa0l3m~ruDUMIiFyCQX0+Rh4GgOty}j-69ZeG&q{3Ga zZwdKf2H+m*KJ_p(94%SO%=UT5Wc;5S2FU7{0>Ag;r$oz*FXmrb7Vlj){$OWr;e*VL z9fbiroWGulIv*U;oaeqZ_#9o%X?Aa?SA1r%7l`>3K(sV4cj23&0(lbdT%_bvp3!JB zFA1P;1S)QW5+OP^M^w|q9&d^hS68x-Ez#r8j?(wt{x56_v%F4AgKMV=66QgsYPrr= zE`Ol;Xg|50A5A*0F}idPyN)hdf&Og-eFcvrQ2#R$KUyMSY3!`+$EAHT;k#eQDum{& z zmozS$YEbhR1{;xSb+M*wF7ytkQxC-YLK~yhMM{I$3*(U$`_lD4-*?in`2`>LRvR=s zAF33!VOqa-x`fL^rtVa)iHTN6gJ#Qbd9Kb*w{yGq%vII?6C+-kuUj1(*N~l;+n~#Y zjuTNPpBBKGpwop{JdDg3D2e$W^OAa+?;NfTM3WxIi(%M=V0#shW1phbpat(ui1_sI z@Bjq{O=QBpd-}{GO4QRKZu!?rO0K`U`8A38S5}*t>qS-jN>sJtMt?z_!Nu**QR_U! zHLpbBui5T0%b8&A@J;kY;>^74!o>ln(1n7P_~ zp&ra3t+QLm>0I67TpBdiZ4eMy7MRUJHYd>1%>g_9 zb`qdYW9U1xdh(vl>&_DvoU^=kxt$4Q*#hjW@M_2g*mE$+sM8qN`2JeYxjb=?SFW|v z{-$DYH{?q+0bHRAaALXHk|vHd(=`}7m4W;m*~-}(IiMt(paU0FtrOQVb+Lm~xXRWK z8;&>9kHQRNXfn0f*#vOF08afhDCmFAm>MEgC;7?d$2M4l(O!W1sMX!h&v(Z2(PcxY zl>U8x<%31S8_*+91E86dQGF6PHe}-s{{4*e>h;&OAVn$f(XTSZt||&wc_p!=5^>oJ z7<@0uJKGxUlkE9lFakzH@?X+O{dyK+j3mnmP0x-NwI-}>EaQUyWYs?Pjtg*5`!Z~C@2DDL-ej%sF$1WTk3Y<;97Hserf(3qqz z8~S9Rrxr9mBt+=Wp%Dr;iiJXkwqX&1|38j9`ef8cQ?;mmlQET_ml`5&1vV3Lu!Gb#;-dpf2MN7yJ(7rxrh?BP_HeN&S7i!6tP!A!cp;AWlVZdqw zIzV4T^*ap@)dR+Sqs+3h@a}aa1}TuI4~J?rENEgd+ImDOu6VU@5aEr{DKw6R8VeTyjXu2BmR`Jl za>Xk*6+X8sq-g2`P%X(gmkg3KLHaWm1wcM17?Ez5kb-=fi$$iAIb>EzqaPA*6KIe?t%9*TPIoYcH?=M*5bd8BD5Kx3rI7 zSI8w&#S%X_z_KU+mYXZ|wO_nIr!U&C`d8_E($0vaQ^u(6?8P?Jy|B6D5uoB>$_3If z0SSoYy*}G-EqSQ3>f;&I?!BcM+3Pl`sXW-za77HD+VbeHIC zcfXLf@1!SNs3hf7d74u$^`(d=>2cw4U!tvG&ijXlDFIVTfsQ%oUPwY}-unes2!V?i z6O-Djrzmn=gU`WATan6sLm=f206-1hQ*U0|lEj0#whRTmc0Xyt+;;#k8y?V+3xU_f zfP3hZbV9Wb#U|Be&|BpC^Z>{KPkS4VWsj8?|Bc+U&8;&@mx#xg>gtQFAoEVtu2+g) zd6A3VNMc9t+5aKH=GTWz+Z+C18G7qoIaykvS?*c>S^h<)`fopE)PEM!ksJ~J2+6r# zm=iWXW}#P6B?|M)k(2$oz~SXdhc?QjLI?KFQNqWfxMz?+WB4^uZ#4cGGv|F%5hL?+ zIonF##z1UPiYEC~c^8deeINNI=5r8lo)xX!E=w4BcLnDxe=@QPMVXwVtcE=)i0bpG zl-7~5AKzcqil^ZmUUY&t!>elK^!-6fhU&3q@Q>Fe&{lgKTkF} z%<&akAOR1$_?Y%IXXkr;rV~XsHOaSrz}iQ|ib19k(k4|V zODRrEvbAtS6zFPZo)w-I){f@q9fA^OED!|wEh~xdj16d#@cCk;vSgS?jPZBx2rtAQ zl@!p(kc`Fr3auRG0`Lg<|BI=L*1bH8?!~pf$R)>HzMweUT)LnT8wn7hJs@wha4vEf zsS7ncGe10d{m7J3vK_MG%KYeEkVWPu9jw!~v9PK>e1<-mu;!L}Gbo;d!LV!0F67~v zdc(TBA=-JxI+~wn?$qX`Btq-t#qi9<=Ns!4mEiuNBil;g!^97A=jhGIW5@pjK>V}? z!PySlAje(l-feV*)13f*x*Dky+C%RzA;7#P?{{s&x zXTls6p((GL{RhJ#Y1@zJt|X0}aZp_o5Hk23L(GEmG+#X>D{*wJ`w{$vRUC>y`x0{- zewy!e+}sc|m4T+~Bv7q~Pyw6Y+pP$$>3SgrCyl?Oo~zB@E-^7ppN>m`)DouQXbP&x zz`f}${E;-Xs+n=Jcfbv_)yu{x6ZhB~U(h;?6}PUFOr}LGB}{(V?Kc~)s%v6RNf!|N ztaIbbGqog87W3>h1aZ4j+;+HNs<25uCH5q0gW`$Awma=vJ1R{_?mH+=Kind|JwRIk zQm~^7R>;IOjH0C*-2H?zp&0>N|1=WhWY!y$5VaQtIoH0#Rt#DXa)zs1fh)p-Tm8TA z4W0G4u+MFu{EjjwMa!>5$t76xv^YbiU1((->H4pDDHTyflSK!v%n)>szfrZwppzyS zJ3}w>S+~K%6eQr&Cg-?Bl-pu#DmoP+S4n(gwb){n)>*DBpd8{Eia!9C&8dY!Dl?q! zKS|6KbU<5pR7!t81Z+_>eX3A2T@^T)Gm|#W!SYzq%Ea;j#bd_voC96+Aw6Rq8_sR zEzf!I#?swdPN2!W^S9?7uY7Y65ICT$wP8;v_IdRmQBTHIJc!=kgJWl6QfI-pL*7m( zujc+lrB3J}AsvygV)~cM*F$UlQ`7X>f|`5JZ_S(CUhA$Cld?yxJCbZqjFggmx2^0S znM^7L*JM0QDxEME<0%^to}ErEkTr~VRK;(>v#z<(kE=ok7J-d*eLoZmc5msX(u zb(}TLzQ+_8e%4FVJi`9g)}}pe-9h6$wh3Ck|U)W32 zRnI}939Q-K47Rap77z3Fd-?bZI{9*cy?yC)S^YN4Du45gy&Wf78f@sj>}_0lyLXC> zU%Oy>y>zTGjBH#lstz)8;pxS3P|5~p27gayxQM5MexAu%WaWiJfCz|A^-YW)o~8s@KP8DOD`loXh8eSR4f`JK?;)q`l=z3twn2O7UG z=5$RBL*c|L$Dm^OGxrbpo|6k22q*~z?nR#X`ob>buc!MOM=v}7@&Y$pSTQa$C@NBa zwRJSDnOI+(KU};%6c7wJQ7yZAsUVCrqMkr(W4uds_oP>%^uYu3{5^fM-HV*p49?4-uhpG2PukPPjy6k1kU|Wui}z z+GocYLu1*RAPfKcQ{OJjR*4Y*ofw7G7!1V`59eOG_{R8 z4(yet3YMhXeeu3j=vma6m=VSA%l&H_zx4AYNTiBG5$l@!ch#mqoQ&Od@JGEf%CG~vDUExeK=0MjK})jBe6*inWb_{jOy6fxb|*c z>mn7f<+Gm&k0AJI9!}05lWMX5?I{E%`nvtzKk>@5Td`vYg)Fe~f7rqU*dpAAAp7kj z`V_P5v+#SP7m#WO2>bnDDwAXfZVn-=%i}ZHo+pK}AgPG!BKgbSGwQmmZTS{xF^qomBHPk*l z%3pt9IXPNUjdX_#C)JmR3=i}hZzB^$-m!`&PmZ-c#)w&}H3IRG4-kn=bb$`f zs0I3fX#Lr#@>}VkQvN_uIlVaVfKjma1#makty?tT^qm)WLf>mPiJ?5jy{49>pt#L| z`+pJ0`g(MsxDD_cVY;Wf5OnxY{OxV~!rZq3F9Uk7HbLGbZ_73+0QrMg$KKTSgZDDk zMFR4z|J&TFN|GG=5fus*e1dfKtWo``zNo3L_CL6MK%E$2a$cKlCZGK_>Ef1IYYmHP`h0| zc!NoDUw!(Vl0Ki9mZn3kv0qyLH8H?=*Si2;ywz?YM@Ccq-s2n2mwWb>s1B7Nabm~`^6Wbk;|bLm43+&-6@ zi9B^^o&Fy_0dNV!pJ~1zJF#y|gX!Wi=#y{NFnW`2(*VygpEaeGR@>{p*{Azz)d;-J z%P#avBOHR&N$6{P}gPVhoXPvjFW91Ifo47!=jNNyZ7U#RvuosvRYCCWlQ zzTQSUm;tnbWsMHkO4uF}CZf2+pUSw({`i8aL?&TD1sQ2bWk2*!ho;?AbJnxEX^>O| zU%rzR6@NHgQI9c}hyjm-njwAn)pxo<7vT#t7Mr%`+y;)!I{D7yHkCPZ3sSsVI&O!W zzp(SB+4EkQga%p`6zyM9C_;=Scs$B{Jnw2QZ$YnM)u@i$e066Zg+84-QG`yH1OU-#v6uNR1;-iFNMPIo(2b+s?f1`Jh3 zYlLM!R8VFHncT5=_J1&?L7EyV&j=y1)w(IGI1IC#O}*u+_@OoP`YIPd1AD$QbbLWU z#=J|0yV21-Qf5@487sF8&i%pfVF?!72(??7}gE> z(#ilL&C*Qs;yi}D>J(N$|-j<(`yu+hE&gyC^1v&9q zchOmCF$xN5ZZ}z3`>!HARptb#&uoLGPIQcpS@V%1Z^*qa%zd-C`FXv>L4lsoQ?Wh3 z#Zh0-#hZHY*w7c`*#U`y?6@=mDDPRwkM{G${T3 zkuZlR;QxdB6R>C@%I*2zqG1wIa?z2ldCWT_DBk|(^Q3-)E0lW`(LJhwpHQRMfpMcN z9PYM%=ujSd`%=l``fn-1pcyj+YTLsn5L~nw zyi`AOumjxafARNs5C+se$o&=XEf_ZDUklY?;Fn!Ml^0+F+^}}~TDV3GejBP@k1seV zLBbaYE-k48kYdqw%IdWZXye;=og3#k(EqgVa_drZ{rvJxQF(!AC%SctbOR!*t34N? z58bO&7d0DR*px#-#C;{h=e5hoV232&e}N;+#weppLUAgYKV|&w3P~5;IQy9H-jYOG zXQ3GD>^fPLgW{_QqPmJ%C5~!HALU*WRYlPP%9|IdHN}yTln3L|Q0uyii5tuRGeV)i z`dj}ZExaiLOm$V6;`X6B4fNfT*D;!vRX7V#&xFiFIqM(i(=?LHs~E3X4pZj}ahAdU2ybim!q2GoJOcK=hio0R|pQGP>;$)Le{{_c(4<6Lr>*?)!Hw^_%jlI4bARN8RXl55!;49d)~`|}`g#dR?gbibY*1`b4Y&p^B;qV` zJuXHK6t@G;&h9{vsqX4(zjdlVa~3u|f>$<(LH`ed_*YEz-_vv_Q|;lvN?0e)3p&J= z@31W4gRKpwtcP1$U37l9l57gf9UUe#29?=z%Gc~un?vl|RoEuSBE)OJm|)D9uf{Ah zPr5&GS!hwXHERaRdp~K!d@@ueC`*>{>Q`y0ROP34o6r8Mj#?q7PJ38;vL0X2NL1Ap zZL)dKWDZ&=bB;%5&~%jz6Xdu3zj*VmzNwW6uqsc@U4YPkyq&Kj5VET^gv-y$dp{FD_%;TfkCC4pih%zQTZquxK(7wK zYw*+M$lA%+)8z{X6!bV0v}*mM1p7v8qEfm-$PzGy6MfRjTytv{h6BX_2AUp0*Ec1I zUrrA*JJ$B1_AZVSqxQPPUsv@yUIupFa!Z6SycVyY^5OH5VR&DHu91%&f~Wt7PK23% zvg!eqcHt1uU*!ttURoW3wr?W&n~ZLF?mm+vM|A*0oaP%U6d%WDFbZYYPEq8^VBU#} zFxk`FADu3LCag4P&mj|?%uhRR{$iaHIUc#1w60>lV#Jj?LL1lyl%gT!5~*4 zdl)D;7XWiKx}i$!2r2+7b)5rH$O|W!5)VOmUFgD z?+1iP+?l9g&a6haTjSRuKMjQKUwOaX@W1yfZ#UpO-krK+Kk;&=ZiY@+gw{~xIrUB= zPdfY$kBHXgQV8g8FAO4w_ak1U0!B5Gct@uWxo|E2G8=Q1ck6_&+%zD%iNuAJN3JTV z|D-1r+m#AqLIx-2M7Ar9!K58Apa%<}7LHGU9Z^MAg;OyZ9>D2E2OxyhN6pt$d}Zp8 zeAd$lB&OmdRM~7+@wS3hIa+#Qh7`H_3S8xEVQsNw)wjpat{r`$?G=4dAT`rl^%KpI zoaEt$@b>Z#m8uJB`vlGN%Bac9x_Ol(qfEQk`^vjj71)D_W#517>z-R2uj7u%-)wcG z4C(r}qkyU!{`HB#d~hB@MDvhInQjP_h2`y0KGR%OTFu4yE7B6a4RwT`>hztdy1W1W z^Em+a4-m=;L9+zfD26(PdcknUYDj7EU%CUJ_2* zw=H=sJS}d=N)jSv%9WQI63rY8<(Aaf{Gp{Uho&EX*FH~FHRRc|!>n$XihN(twE}Q& zXk?Ff?a(JC9&f!ne04Ohnq_aJ76%Hp(cV@Rx})Zcy53--%a{O&V!K5>Q(%SfoL6-P znDTzq>x61d_Kvm3qnRp=q;59wpzG&w9|l8#NF#ks&&JJTl{r*xq7XFJw6W3vJp;Ks zd=q~Ws0&KoyWQ%1l5xXfc)HrqwHblWKwP)Kk7`KCxm z&a=;#Wr^m9q<*&DyW#NFS;2EF;iaG7b6tlF(|9+=r&JJC(*@35@Z+*J z8^Xvi)!UxaP46u-IzdL>!wXzXKgv)QXGXEHQJZv&*BecFWAS_@W0;7n=`YCB@JO(2 zvnayH)@oXHh zR(uv6P@`)4Cv~(9hfKcRhfQ}>4Bs~hhbp}dkAn1delZdSX;LfeAN)}{o3JZCBHiTO zpR59Q2AWV`zOFt8-&}R)B=yVR|In;`6Q_&ciT1)HF4NFNG4(~q%&v{VyYzlkOLX}7 zgg5E3saD9T=2c+gG%599-OgFwl7T=aou7RHacKAE+jw#CZA8JlvTlE#mKG0^He0&iV@uNp5od z>Wz`niShTRx@jE_>si5zTjTfLIMltj8S!>Bd}YuMB5I%r=+Xn{akTQpo`sKg4w6KT z8oEtDE!C!Vp52=#(uBJ~M*1FvE&th1X-=Z%puo@`7B+Bd$ z-`c-*MpzJwJRNA0WV%xYdw`*F#boJyx>(cY%TQaSN#-bm+RZxtB#T!y0Og#M(Fc)EX=HOXP#dN^!y&?TO3lRgv_d6Ef zVG+o;eFD!2t?!?4iH2Teey8_s$P1Hh1ob`q?mZ4O`Q8`>V=f(MD&EHH$ItBJ(rv3W zQ{z${i|SJc={-+X6fBfgeIz^QT^>@=eMqk_S~L~$S;`-_YSV9D#&;)>Jk@5_1q z*`q#`%sBJ_x_$^gEQ7tu*2J~F1kK8S2JhZ^qk7H zkF9gkGy8n^;Qs@aKx)6T*r8w!zkoZT@xY@-pMbnmxb+q^^~Cc zNjO3Y{aT3DH{Dze&^EA z{3vdIVYx)P)Nbn~m-O`{&*O~W*CDVkLS+6*m z3hlENf7MIylW_LSTE4LFUl>6ofs;2wg6Q?E16hj<+bGARaW$JED zv)eReFP1ncUk)T~M*J&O9$l$bPqg%@`jE^crOWl~mmxk0$1i1yb$hL|faTm}pC0)I zH~FwnkK?_o_vOwl`^~jF+fQvjt^F+Rr?;Qce%AJLIIiQTfkN#6mIA`swX_MUWL>A< zPPf_j@3_C}j}s*?uiJO3?&RG?aNU#}==0yJX5BRX#G(5XA2q$mzi!EAK0o*8w)6+G zPh5QC^VMJfM6N9Qa3Kt449 zUIE)g%$K$vbcG@$0V+qkjF3;(5)~6MU)GM>nyx@`CJ4^} z4HR^JLCJC(cZ9-%@VXLpUa&cR(f`Wd@KV&&j9@PMjt=w>1ZUkjl z0Zdtry}m;ia#L;w1^s4z$#UAut*zX0TW$qqzqjAAoKYSl)g(;|a9d7DLBCE1Ct|)7 z%HxvSlcsLsO*xXXU$$$ObIRjn0IikN+j2$<_B-$_7nH}rt`se|{YMJ0c4f;%%$M5x zp|)~yTdtCVrc&gPZHJyXhVYGYkz#*U|{M=D}Sj;ntKrXvz-JPxcHDN`e(#57P$?<&!<;jeu&e#vGKT{@om4xY7VE-y1-++H?aEXYj(!U|9+)|w9E2o9|vtrv_es1`hQ zHmFp4^b}O%c#ubIJHr&zYjjWakk*swR+RSi@Qc3CN(?2`c;tSSEN5y@`L zLH=+7I3Br7{g-hA*UX(7C425U!2K*BE@<&!-V zd&br>L|GW38CeQYiSj9@kU}R5vum{UB}($%%Sw=10G5)3TIs|4XDs8o zm^=e4g{Jg|#&)M4g3FxddTkeX(|E4U&~YS`|<$g)FrSt@hfymwKF2=4+5%DP*m) zuvA8+kV6f^0FJed{oqia0gjb3IduuIAP}sP+UTEs8P~;9Jm$SN%ZaK6Iah#d!-~qK zJ_B4US90kyN5hKRu*M0i^i6H+Nen^C0FXnYwGzWKKn@h;*0Ac(Xzf^Q$10=^NNbsO zofeVJ{=A56+qzB$ur$mz{JDk~Q|2^T22$A#YP?loL#tpoRS*LRD*ky9*$iN9IAi$d zO=M{k)}PlhPGgL1yw!oG)KLzXD=-!-rAWy)VKqz_rqRp5r>Cw%wGj4Obg1iAEQDLx%2_qDm8rce z6D}&Gscq%Do=G3tWjyn;oH2yNmIb47;L{XO8#fB0RNtDGSYmd#Me2taKdXJ+2Ukxm zdo-&B`08EXe0_gzO*3s#U8r8YxccNU2EhH&w;ny{u57jC}#%yTnYqSQjp z6pHQ*d;QN_e5n+zAqqeLm#Ay_i~o8$bkKnVCw+QKl}d>uSAF)uUsb0t(8KfZ`x$#LO z8LnQh@S_=SB%TL#cp4J)jI9i=TGe&br_Xi!;8RgGT}o9~p?TT6zFVP;HkcLR>cxwj zYZ`lWvyxbLGYNWe3yb0ma!%m@7caiJ`r;BtL)0Zo%p^O#%gD^qzutRdC>> zPcMb>+(92z2v!ah&MI^(Wi_>}%vQ`xvDvmFI%sI?itN(aX7jR`kh(Io&m`TbrZy{` zA?FlbS@mqyv-#??4}nvi6beZEMesuG9oiP~bDd1|=WM>YFom%NZZyVPsOdy7}CUVJy=2s}~Kut?Ja0 z)i#%A)OF3ss=a;L+VCNS8n&ASjokQId4F$nJL8gBo0piIZB^Q+g%@XB5$Pqu!4JuO z`7*h`9)0A@`mtf-cj|oy!INhp{YY(-d)o(mu$5U*KTamxqWbKcuTIX4kJNfDywHL^ zIK!Nr3H?yZ)AmHY`rr}^wXqM1k2L2RO)_%$2p#JB@ooz*zIsVxwq3>sPI|N4FY!cY z6o*ef>63YJcjTanQLl5Cc>di?7X0bLFuQ5<>6p36gS6syuvi#t_0q7nPPf z=h754+7979l8-lEqxc#5z_wDMO`KYa&DH^g9>p1YGG=WJ4tbR&$ATiU`Rs#ho1o!C zXb3g7_fFDlc}ddHHXV#ynRD`MRkL`F;_4~VK_OgSo9*h#xvWk;kSrxu7Yc*v_ER1Vq`+%=Pp`eR zH#)+%d*S8D;T`=D%qHd*Lbyp_5Y}Z}V;T|hjFK&^Y^peXDOFS(hJcRr-Lw)H)murz+mF}>!&+f7K zR$3`LPmfOL)7KhcTX`wEr!^vlYV+BxZTUVo>~dP&Jl+_1UF@_S3lEVqFCNao{!rrR zMwTc~BX805R}Yi-&2YCT&vqrkWuKZlQtrtAIEXY<9EN!sU$T?4T};IqY7VEc-;jlVg0BGFOl7} zG-&2_>}q#)x)1nz1RPgC$-&}m?^oLI`>8cadU}N<>ZlJNC+X#t+r3JTUFETx%wd2g z>^UGd({>u}7f{E$oi4xqrgCu2f#Cg^+NOhkBa%~<+Qf1=C-Q2ELmL_KE28RM2zre3goLL504X3VlBn`Z-?IHg)%| zK3;*;rXUd&HK!LZCk09W?)g{u5=T=~mqJxFE$SLgg1-*&!z;w|1@UhXXD%x0Uy-9w z(W?zZKHf~N-e&aUpHEHaEk<6n`2J8QZhyV9KVcb0||8y^g_m4mR{y&r-fB${aKm7RP?^*Qs-xq!NbJ5lFiD+$4 zM59G=q7|wc#ZcRWP@@smFryk}kNe~$AC{Jq4@<2SPW!7-IlUQWnpJ=1@#u2;efr>| zQaA z<%ZUnH>&DI&wp=oZ%TP+v$4L1-adlcPJbJ2qks|Gd;Z~PR>Q!Nr2j(V_V$C31`-U$ z<_r;dd$szx_pPWb{tKplcGp;ZD>bUR=Id8~*Xvgr82$^k4k)`)<2VC|fHeOFC2s`G zMPRJ{3rd>XOzGa*{Il+@2Y;t~YZa*+kZ)!G2!U`tdFK;el<5ZUQk(O%u#48qynYf^ zyOeU7uD*tPDQkus-hH1%Y2FK0UTSHN@kakwfqLtO745P9vx-z9?T=N^KGYtq{dyH3 z`1}^@`bpOH%dDY4lhO*F-bu;nr`&!UD7ce;E^k5sXay_<^a4~c42%NS0#?g^FnROe z>3vf@Ug)$}O#6?QFN2QfKz4fa^y*8duln!4+q7TxpzM_p&Yw*_nA6{CoqoJ{PbK!1 z{=MjhSJ?Bl*xbK?y|e4RCvR7OUxoORjN8P!?(#m5>t1)fH`Cr~@B0Mm8tQ%M-V)r` zDY$u}c=wg#mlyjy?eAdIJ2`n(;CN$b=T5r%m0#K;ADcFAnN@!^hR^rXm%fF4F`nLl zc`e@kM_cl0gMJ-@KF6p1fvL`;GL|%+Ut#2G`7jX1t$ok!TWI-4rG4i+yuz`4lSVF< z4;f)p8abAH5DBBv$hpwlccG=aJRcO&nU7j&?5|oG`3#Q6{vf0>$RH|*=FM>2&|D#+ za^NHL?Ih7XY;qz<_~R&_PCoJ|;LPCTCIA=Cq(Df{q~RIhLMR%fVdVj0pkaTW3a-q= zl>j#uWa1wuA)f(mWLfgXDJU9zT=RjT3Mjh!NtE4Bq7Wyag@n=a!5Wp1H5qs$%tkRG zKUHdbK>Nu^oV;JUl4L&BGlu4iz)*m-`7d;(>NCKq2$tpH0&vg)S>jSy6Zbz4QZ-*8 z42nu$j#qu8fl9gpoZ92Pu|3|K6a&k0xL2epz@>Rqq;l40fQw@44^dYQHZPEyLbxht z1t_)`+VmNq*x}TXfY9|3MlmWN41GjRHc_$jDc==0MzzK-Nh6HN$9^n)q@7;>QTS*n z<_CmkKOGRQpALvD;s?Z>V!kI_Bn7`7DeZmEaDvH-#uH4YOh?L`Df5wHS^09plPT*7 zPo``w1)X9kdqTDe<)|s?Pfdb4b=YJ)F(bJ2edcn;E3HMO-SS}oOC7M51a(3()2 zv)r-OGI)C~Iy(Jm!sN+JwSAV7eZs=F|F$*?C&zNU#-5)EMyq*t5;N!aB9O$w#VO?K zB-Zu-aB~t{djcrIyg~_pi00?l|2U^qW{r&}2-ck^j9s2Ib}6%j+UXw{6|z2-N-;)-(CbB5DVFaNyVd_Y7_|1Du2Xq7Oo2gH<gTHaEQd-WJqC}XRh<6gAnjNcMC5+h->@#Vr+ zT8fPM%OBp-JJYFq6FfJ`+?jY;YpdoqD64tSC zOQs#7ErcyWrp7H!JGXRFA*X%yn_jMvrKQ+JodEijd#$xzV6{IX7mDR(%O}ogyDei( zDMFRw z?Py1mEz2ZaXKr`!%ffO+_A)a@fLIcXb+Wna?P%OyCLtDb+0n+%?S+1Dd&xyf$g&7% z3qWt^*kv!4y&a9)%Ov!LaR+~07}wlhIE?^@hDCR7AMI$|UMAtNa6Hh~o!blR!R;l; zZ3MV99O$&J2k}YkwoJlh;d%$@ws7c3#mRYLnE=X~NailjXbEE%46c(m>A*vF_~{cAl@Cu6e$4 z8J`KN=DBfwF+j)l#Q>ewNjR(=5A^fS`<2VV`*k0n%PQc!0$kS@19V$o3{cr7;kt6W zgI_kT*OI<+IFpaE=^nLC!B}2w?$rfI=W2k4v|uH(rw1Gj0SBdLem&)@ zJ!cB5GBSVYHSYO?fQxeThYO(NDL?U#sl#pg(+NN9Ia4?($HYIM%4hy8;Jo8sj{N;- zH#_1v^C-bBZ-G#Qj0S^>`b=<2PiVRdqPdyg8b)0O7ccglXB#de50}1BPc}Z%_qD3|av|ht7-& z?8jWK0P1sQleY7G#Ln{xDFr$L7adX#09K<~%E1|;OeqNf!)OVyT;Z7QIn(IIk`QYr zuR*+|Z%rpoQ+c=mx}BlRbOXIzK?~2ghZ|_&85%s%y0|@O8fW8>wDJrQVb7Vy$v7s2 zo@cZ2=m`9I>XHhmGeaF|;l2L#YaBrYS&c%iM35k$L#HGN zt;BPtQ3}^4RU;APW`Is-=rN(Egx(tTOav(f(B%w0H)Z&V!X-=Yqn-$IFhIA?@0Dm1 z*+$R`(K=X90A|mbL@i|NQ|hj2OQP zu^xyiR8s^w8la_DVtShN_NEpE{ot}If}9M{=mlNzSZ)f2g3)+XwJL&~4bVYRkV%iY z>D58Odek>6f?N#Hsn<6uE`BSqlOkP@HAzwgxf-BL@9tS~b>Vp}PYRAZ!K;E~g{}$; zbyLXxAqL7P(@g;=>_DGcU*1nJa4LPeRvJiDr2$ZFzCe}M#a0cROJ5e%EQcwer30Ix zt=7fB0 z?a(ay(xnBgPR%Wfogv!NWd#hUB}BQxkxN%8pgT)Kc*Z%H zZTVSBpQG0+%v(8c7C$l3|iN|cSI9P*- zTs}_u*}rhG1ey6fXdw~R{a6Z*8p1)2O}(JCV;D~uhK`~7vBDe}1_y_s(Kw!H%o%QU za1IX1ndy|D^VHV*v~Z93u@p_g%%+8awYcV!&~4> zErBNE9-vmTwk=@*q9t(E*|oJ#Bkpx}4bVC-h7Mceo@fm_EQLA-R9aubbP9A;u8skU z=^WUE5){)VP(|m!BP+#p4M21WJX!^G%bHEsz~j=b0SbmOkM>)DrP~9TN6qKZnz zBP*b+4HGIJ=UYsypx4t4jh28;k$qBgxIDrDwc5L?p7xPi@%F?8w63gR)YJU+`J#`! zp7gZTUE;h`Qz|aN?af04hrM^A?h;pf!Kim7pn~IGZm9PT(PM3g=%Kbl^iG`gV@vyj>EkHJ`EuDa`UjCNtRx29`1?IGJxF6 zt;2pK*?PHkz@6!T8$iwJzp9M;i3DTrXk|Q3Bu6QXpzXDB+z%u=_Px(|I*^>!=@Be@ zK^xn7q-q)4{^>qT!(z{+L{ z_p9Y|nRYQ*J3p4`?xed;pzizAZQ8{|=HA`Yy-8PQ(Drhek4cyFKIv-5ff>pI=B;tchh`A!@HKmb-(s zF5tEo9G3mYYU~AvBfQCJ&Rsy6zSd+vEytX@v{5`QxXgLppBGRka>_$fC#*r-EX@mO z{lK}Nf&F%BTor}L_v8bIL>X{F2}fC8;#qt-`%cYO!OoXYaiG<09LS09OgWI zp8@hX#}ynBfRb?p`cemnKNDQ1w*OjB`>*xbe|4m~LT$~#y@K<^v6b}o*ngd&J)t9^ zrv_cuWB+xAt_eLP^wOZm6&XUkLLR4+bvU5YHADL0UbmYL+P3B(S=W9sxUHbfJ8IeXk%6tN+P3{-5F3aCn%lm_YKP|5uP1c_ zIkPli+xCU7Y)wFHdvS|cHc+z+s`}PeH&0DmY>@q@=?&Gg?Q*i7p_hbS6FU0P*mgOQ7TZXE76GLbEMEd2Uat$9X@K2uT!GA)warXd0KloMVNY_M%0&Upe%0MR;cc zav|rrZB0Vh#jXkqGU?9TT!mcr+6G~lsj=5K2=8p$Mj_X|+$8K9uzBZ_@ZOw03%TtD z7h#vnRr+aF`1%HH6;hVg%1xLey5)QCeA?YU08&1g3J551V9%@<+fWcITd=8Ly=Exb z*9=4NZSdX!!9eP=cQ=~+@phPCCIQS$11t~=(=r8$tvwninx!>X2-ox7@G0op)=jXn zb~7U^-2xl)VSs%-P8}pg^L(NKg5XGXP-Nlr!Vkuqh@wheS&IaG^d4g(qeFxhvr-8i z`1B;D*j7qeO$tnHvSKV-F)OAv8;qsc(^L2GZe_5|R)ftpn3bVi`+Q$)u+{2kJiVX)~(Qrg$=ga(={nuxh-0$F?cv^;0M5I13ybhvDM5TUI+7AYTX7~ z?Q^uw6p}@YRvol>(W?`>Ey*tMhdA?p`AUH>j5uH)69fF_ERHl2e?6=hp7hapWYdMpmQQ6!^%T=*ryC9XbAWiy|{@rThgEZe{lkS|+ zGc5~o%9}WKPmI~TxBQq?`p&6?@dF3m>$0JVoWz=bNL$I340uF$ADS(l??OzxPSqG= z;KNJTs##TUe^&Q`|IOX*Jwl((jC)DLq)!pGxm(FKTR6ol^I-3@`;+0M54$6{?jkWP z&|(YZNbSK^+^3?tlu38NPuk(;=0`^#J+ZmOq$kp9sp{Hh){^e-J&N0b`v9IoxY}k> zV1vyRS{ZD$q0GzxGdUXzx7MmbClfB|06!gjI$UG)bPL|R>NPCK5b8c}>S^d|DOPN< zt!OD`r3bc=_jKCZ?ru*+?!GEt=e-zu?x38glr)jbmsW zFM1Eh-IhIkJt29?BY$PQ;lwe#*`X6B9@4k%lXT0~hdvpPzNqM=qtB`;?e}B4eX&59 z4W@f!x^%^8ej59$7q4O6Gq`oPRT{;Y=6V{I%YVkjI!K)Fh;vSfl~)b9GZ+SjbX>|R32FYkcYoFO)u|_Y z^O(?jK(do-^w$dCI7>fIcw-kU^Ofl^Y%7~f9MraO0w!fEqb(+-4;J&>Glfq@bSdkV zgZZsk3?XsgfT^h!)1qy+JKMfoziO!{yZi8dkb)ZWf)OFW%;-xr=MzW+KNhV3C5-q(pRGqV;E z>HS5t6?uAZk#(=-oke>1v=0>7j79jNwrHX8V}xlb<%30P*^K2BKI68dORQuRkG<%5 zMT?QLVF>A;k-bR+uN?W*$s~$_9ZlxIa3Hj;0$o59+JDX(b@B1zVgRSPJ-QT^h zS?Q)S9eS&m)2+bV7GirJWv?Sz8=}hVm1VfIXSy#q*YkGY_J5^$`&EIGuPIRSH3dq( zRG{Q*3zU2h{ef>^2^_ofNrnAT zkYzJSYi{*3e%0a``+4)#)k_aobLZsP!zjJ4=A5vu&I1xx@sIoEv9#46I^Rj<-Bi_` z&ORmHzZDww;cXD=sGq^2`oUw#LG9N%nDkBc!}~UF$LtBKAKH2yCH0F-+83APms48? z`$)-adI#G_;?s3wqB>hSwrAOjeC(lZlfo~40en`7}pnG^3fOU^9 zp13or-0T+c*Tzf({h*W|HT+L~{JwW@e05{|#`*jtA79x0Pp@=;Un^4-X9|ncC8o06 z*&!@Fg5^umIJANv6pmj1ztRNw_j7W6^#t;Fao~IUng_mzzncT!7oXE6$~(8z#~rPA z1?;;<^ZB;(LnAu1@vltbnfbvnnuXT=^7h5m^7X{_-r4Gl+jnf5%p+siy0Aw~n@Y}K z3u~#RmZh{i_CkGS?mFxh?(Fam%Y|RHw|n|}=kABEdG3DtyEu10eC>1h)4!>6_uph% zxL)Y<3^kR0cA9R6i@kPo>V`XaPE6f|=gv6l#yqcPnf|tO_&eD-2*2vqq4G;N5AWge zm*T@$#`l@N_#8rf_L%rT%w>5ySnEK^Yo5RE#MgDdy=7bKu3PH8{lZI#EO`rYEb$3r z@#^`gTPl8$-n!j}eQm|7@ZYF*&wcX}tDAf2@ww_-MvGrt_3;}0Up7I04%_Qv`tuX@ z`v>*a1@qV36@IRH@867lIi@ezjeRvC`+7^AeC4H1e&tg4C0y#tf&Xa_QXkYg{)(HG z-wslL`}>vt0O8l&uzYw_y)?ys`Mty|1t0#Wi~s!X_uv2i`yc-H@t?o_@%!(7d?o(# zw?FM z|Kl&u|KGp-{Fi_E=RfuM(Les-n?HQ>k3W3(gZb6^iY8SIdb=H4y6#oMpOXfObRh=z=#1Az?`nkrc0$g z1DIjZhYNtET<0t(9Qkkou(qu9Nr{ys_DVO9u**uz&|m3y0NYi2DB#E*iLd!JZ!KbT z*Gx388zc}NKNYQ2G;GYMbu8F`F@t>pbVN(;wPxro2P%dZ)GKRx9OW|N%6|cy-#Hev z0AIkk*FU63xyy`f;Mkq(6Io32~fT-R{wEu4Y5)c`K7g%FZUI_1NN_VgXV zN-k&tu5bz!2d*H|9`JL6fGYqBhYY}o$BoZGat~VucGxp76?_JWWNSvG;gQ{9H)e=H zWVZI$j(fI}BROQY9oY@J?b#Hv5W)?A#^L#q&K4Pr=_rJL#u!IijL!grtYFF9dgN9< z1FU3#p1H$LP0Jn5n8zbGF^}im>A;-roUR%&r#phj`a+y22UtlaZOp1Eg`N(z~w+%gmeK+|k4 zwTX-=Z4Xma_T1jBMHA1%1)v|&Fn%gFS0{9l0#=vb`KKWRx;1CCEt$i_YQ+=NPABh z#(+yyA6#AAqp62$7ZgPYKK*rEL2QM-xWv0XJiJB6wTp*`b{y_ctJ>?&v=mJT3NwZ9 z*)=xL3;5%NuOYPLOB|2PMtvIF?qT0X5?;M+GHJ27&{Rkt!XgoE?yUli;tby(@4+pQ z&w1m(QN6g(13r6c&kq-ePwkysx?T_t?cwqm#TlDFbmB&C?{`hnJ0TrZh>mJXH8tNf z|Hz9!HZ#$jXF;Hw{f*=1T| zD|!2}vii)2k>}2f7<~5GrCl%y;X<{%QGpM>dU3|6*92@uikX`bZjpXA=p`(lE@V$P z(yzU8NaO6;QAWR!vCUSqg4QuCmE`@3)6>Dj)0W|vbmgF~D^=6}Swn~@0XJvBEe6*{ zOc$lW7cb3NaPzc}o_&a;FVeZef!%cCS9B!fx)sxb4cy+(|?3*(*wvtRYKO8XZNRX@wAzeb^ z4oG(hV6nKwR*o5BDyB<0gk`i6i%VS3PVm*u@69zGCST6ZUVQa%i|RKo(xLY1TlDJ} zztbz%dYwp?x5+qvZRHM8hgIw?M`jA`^km!KB`2EOP#C&jf_k4led@Z!= zRojQrM;o#`3rN=^y+Maq-D}#xX;bOVY7NlRm!+Jb&f?d{yxn%HslU5ZAKv8PZKs}B z!okun+v@($z8i@U>1%x*EJ&!V@4{e>3kX^DrWuiIAcO~h?CAB)3hpId4l zrskU$*H}H6es@YpNE-3R^{i4#n@Mj6*OyJ@Q1)@~bq3zAU8O%i@E-mx4ZOtj+tB-~ z4ZT;%eL7su+@ui zUq|y>0e(R9``ur@`S!=(|HFU1`uuM%^uSHy`^_Kz*KhupZ~wPHeDjY#@kjmXyPtme z!@v8-AAb1$n;*Xa;dkGE`~9~+{P_L*6~HWoZiSN-Mk(}C2s2dFcj$lzpc)3$ho2c4 zCrisO1P;fNTajQpQ*Wi8u0ZH@fR`qr0}x>#i61BxJdGT;P}4FC{L;FQZOS2Q*7M1q*QH*Rg-xT|1#R0FU!#dGRwutJ+U7@JVQ zw{*u?Tc~NKI-XZr<7;RFD@xZLSHYI906xv5C}Rb zWCciuK2}M`;T%wfj&wDyvv6o0$O*x8cu3cCEU;&yF^pp;AmlNuD~*A`Od;p13V|NI z1oOq*o&hdE5BSFw5coxsw2UZVT#+jIT|a#4N%Y?&^}|?E8;eOw#w|ciNfYlDs#(3M!bYJFf8mKGm?BWGcd11aRh zmz_Fu5{~Shx-dI+CWT!2vQsx!;oMZDz%1ODtrrNvqg&BADDq5n-if~KRA|6Xe z$*u?fye2r+6sgz}7F*2i(6OaX_>NXsG^_X@LN)c*iF2SIi*umwk8|*DEqFHy4-3E2 zeG8|UOWtdJNL!pwb5lcwlUJ~*3W;B#vxefSunegk)n`hBn3E$?tMUdEyA3BaVyk{rP zhiytPa<+?5$4Q%-_p!(QVjAIOix=PAn{~x;+dJ==4 zQJO7v+oI%;wGkkkJ;%oE#g`m~J~U&T97(AhQ6GG1wkx-japmCWdu>fpBOI`) zgwjKMvlMDW<>BdE`)-`kow@gsH~2Za#^Bkj6>^ktuWBs}Kq0_mi zNWG$cj>9odM=?pnXAeuQ$Sj*5k+U7}&XT1Di&4d^zlLBVFSx zun(`z3Llv%`pZ0mN&5B=jQv4Nz&~66d z!(VL>K7GAG_>fMM`!3*p!|%|5{&ff7(?|f`YkU@@O^=|H3_Qf5}5b8-h2VY&HG)szvfNPtk9^OK8uKz&T<$KGki-uY#e7f?N zseY25^PD`m`w-WZ4NVSiwm|LJafkBkC9twmy*~*LipGATQ}1uigM$W-5PR2UVE4b77tbhj})deZ&iRGLPH4=v!=$q>%r8bdst z`>&f`994>XI)FVNX?6qLeEFUomZH;lcC&9Dxw!6T4!NGCQtXHkv!4lGE8`aAmF3Xd zH==IQd;5I2*x%LP$ivK|QJN;pytEb0|ZV9>jH9_6|K$ z?wnbUHDGtSAKO072unz_khiG5+dMbvciT79_lY_$DJvgt`#FVcj>7E z^Cse;!kw}C;wM3B)#=+4f3N-R+4|`NXQ1mfC?7_Aa1Yk!y<E$Iq`s`lPrts&x7*H1KRR$awqwxvdk0M~`qc-_ zA#wj^tJKfBEjmAHM&G|N4sY*LQ#T<`4hwAAkJmn{R&S-+c4aci(*TJAU)c@4n0L z-}yJ+{Eq+br{90``~UjgfBWh8-~9gFc3@%M_N%a3p?};V$N-JQ*`f&&3u!MNkwZ|>8SM0Ig@;35W7bNvM@f|KlUIN~u6Q4ISd)0HwjdPXP zO8we~yk6uTjQ)bkU$f2olMV`Q_HfC0!N|?hKnh0CNGV*~H{18pzO}*6?b}-Z)V@p0 zAKSOL@1cE1gRkwow(n@)L;Ei6du-p~+N0UeHwo8Oj^pgQ(vsHqon-nU@wHfAV!aka%VUuavhiL;gu!b584RRyEsxzC*i%=}-Dgq@934vuLqxrnRf~8sbP{2V+EF6>qadOba zI5vL{gZ{Bb`g<4^(RnhpR?V$db8FSqS~V+I>&9P8whCLquB}mvKBhOCRWa=R+8PU1 zHg_M^+oN3-aK)VQySsu_f2%l?-cKpD{lZEsNDi%&gY9UaeW)4R$Rpqa|O5M(=1` zjnaFeQM@#Y=SK0=DV~kMPV!8nyGeB-K;vVK0r(rS-5E8g_w*668dHwE;#$TMNrRN{7Wnh8iocu7OqC`oNF|UopTNKR66GhFZh@f*kh){3#oDh=gn3_wN37oU^1Oq+fyRT3{E|^WXQujDCr5kMNL`c}{ibQDsRH&Wq7#yf|t0eFAg|0YvDn`Y!$1 zIW4kJaE!rlo2wWNpUDN`t; zk0Gq1FZ4j2ZS(~SZ=muFO$I2S$u|0$Y|id&Ue33j$e@8j)aXY|x3y}zt%=apfheJ^P1F5C#=cfSwyws&aMq5Y zP7eJ{(?dOF8EV2CXiV%HEw6zCsL^k9+8m+insI{h4QVh@0|$hL9DDTb#I_Ct#1Jb-@*Z*)h`?%t@TK2JyCv$84(%L+kTiy6uue8xl>d>?UP-|RNtMg>j>K9IcwuJ)`x>jL8 z+xCAtIPJQwMdQ(0nSDDV@FkkR{0`QV)>`5^+tFG}T!-GHv)&bQ=%Q+Fv5BH_D?l=> z?B5074?F~LV9$It76hBfe;ktx8rg4dvFb!xTpR~4B9e_YIU&VXIA)y2fSg5ufTt>d zWCVx>Ec^q+fdomBB}gmcv)vPaFQCJzuDLH@x!E_LFdt?y1jOJ|fRqq>$uhA3M8q%% zVj~(9(MW{j#E}!Hg)j0FH7t**c87ADD{Bhs2pm~GD@7bTjtu(@vEPg5({D(P$cY^% zZX&pg<2nNhSQ@ zN>+M?1u=-ox|)`iEFIM~q#(ml`7BYAz)vnM%c5%u21vvP6RN%*W1!B- zq&iR4Vh$Lm?$=9Eb;@B0v7H6da9lMb@mXoo#d`&5I#>C&8I|>cnE1S;?0pQ<&5dc+ z&*PMoz4xbGaJ?&*`46ksD&jlwk$jXWw^nePe=Q_SS|N$T@zOZ7`Eg9U)(_D~L>~r4 z_dT)5Z5hXiuao?*m(-DcZxfV{2!q6#^cSj<6vcPKEBQBDG}***tXKa^f-C zMmr@&DqEnF0D>9=HiC9)EW_SP|1Kq+hv6)wo;=zUPM4_~8FFEJ*P>964H~|*nNoXB z!^lrwniKJGke@G(gmwsMoXM;?w0{$%N_X?Q&aYD zn|3WLMW0&kd5Ud|-AY>^5ylv}l?H8TWdCS9SH-oq;D)wfXIrqNEor?=F@XV>sFT(1 z9n;M%^gNdLnhma-$tRE4{oPmI$WA-0e81gQ%M_;_RGw~k%ar2sBstZy9(TTHaVu{x z3Kc(CxJB7r>f~Cs|Em+k`^N)c9S?lNc;M0ghKu8Y`P!&nre2PNsr02KGdpzSOW^W# zwH*VdbbB%n8(f<33dv{L^R4xf_C8xUn0~5}6b?ik>Bm>x)4sIvU?d%iE3lPtrRvr~ zy~?zo#Y^k6Auyyfqy#hea~oYs-XL+tC98GV4Dvi5X3MjUo3~TvMXb#Q%M_Pqh4ZwR zjB%|AOJmd><$0Ve6ZS)E@bd8KwELD%x4UjF-4dCj zymTz(pVqfa-MlP)ZN6ESy4AUB6u~Q*n zXrAiyC30&qJ}vv&qI@pPx>jW6VDbDd?KH)ux3l%Mr|aQ_7IB*Xl8v6Ho>1$jTCyRp zZ>OEFeW(2~u{6QXBy{iUR&;te@0MC4={7KUR*Y@O^t8U}F2&xOq;6Vh&d*xUmztIH z*b9rzR_gP0@;v3Gt?63oYunT{S#HzN>EZI(On&nG!d$+Z@>DC!RD0)&)3UE==3JI_ z<2^fC2l4w2cwDPa+IZm%U@(-5PVyoOe(egOoK|w2ZDiK0re_C@2ftueUprKZGRdVwSU7>*LmNy@3Fm5;PixQpHnHOoMp;s;d z&fc9*YX1CpXnh^(Wn1dk>Dse|j2DyUa*`*@izz)OhcT;U>7>xpkog7-(#sOeMx^!X zb2Hs2aqtmwhWD@_>|)32raf&u%}LeZ7kDH;+`g}!fNK0i9chDN4KnUfZ~~@7ai=eR zC;vYO^T7pIb>m>=^7>y;08ZK&M%AcIa$YP`b2~aro$NY5U@Hdn!6lyJuS3%C&OZ za6zW|Kq;V5+ZVEHWn4Tgl@`(uYJ!|o-m$vs$6N=vX&T!kiY1+Ml_2KK|2L9XqPyDwZi~mN>HK<+qT>ek&M18CNnu9R?dzf*5etEoq`XBR8+f1N$ zzux`n;o;%o@$194yZgJxyDwiJzC7IB-QC^orvRl9_H7&6jX~+~FBFIg82l-En>#~q z8~j!Dw&Z4*ZL|Zk4ZcFGvQ$ATk&2}vsW?_at{}Q8?IjBHSlQ!VZ{sQs}gF&8>2YOHO*@HY~{UrLS)=xnx5CzYk>hZ5U z{*~ZBjltWHfA&Pw8gr#GXSQ%9YM43&e5zl(C!${2={k*Ork+p`jA&5&hE(u!NQ)dS zxR~ImU}F(QP)!6-G=j^@i_s2(h-Pe@#&_wB@6rh>FV-;V-Mdy^x0B0{8W-yqN%5h776oREoBS=oZWjlMHc z3H~NZBjQs{5tND0Sdld;;iCgklY1jVLzD}JWUGXrFVR(ihl7jIUM)<2marqhp(7*B z1jwT+;r7}q=t;X}AULAtP*EZx2Tw0bm5GR=<562Q(-y&*ZrF-)io93|HdPbJ;6g0z z$fOBSKPF~GP$GhdngfsIf>d}nhcR`4>LIuaSY?d-Py{+WVwNBx1t9%)7DD2{un-Y< zAw^^$SdrVIT(4r*l6g$K-b2NpK`w*D$kDBov=RUQlL2u% z@*Q%j#LgE2!0#6WA9tBS#5_WNPE5Fy2=P+mCUQh?KY^J&Cwp-U?3kF?GtKWsjUemr zeTWH9LBV&$qF?SpJ2==KlKwgpI!G9#l@L2whV1lcg=PM9HEOvPmLW)-C!2N=BOy?! z%1+_hv&jFszsuou6gDjU zhFC&GA=4{X4PUeN5hB9W3D7NM2snlwRl^#yd~Fs5<*zADz2$6OBc2V@TPHW4dOKu*-Cq( zp?Dv}#~?hTlNmQgw&m(jwp@p)^R_3PcB*&lK=JaXZjz4u(k=bmjqY6c5gezPu8}Nm zmACHF#mO{Wl!LTcFz8I3F@+jWbT_T!IP-hl(ozQpzhKXfF-U~@0*=R`O2<}WFfNr? zoF%l$qes-K@8*&lciVQ8O{Ge#6r_`2%QeYuT&Z&{nr3EnNn~ZV!sap=%(*F;yIASN z*&W=D6|D0lDb7>s=xgDi3^J!2Plpm)zgS_S-nmQ-f8X-yKq6zj{+!}=5EuLPb?VBL zaAp2IY|Ot6ngR+mjx!0tcV{C$8P(+J4B;gUkI+7P>ltPYQ9ce*cv*YN8=IjXvu0nO zxl3TnMzb7VKeV@5cS0;af-@=Cmhzbc$uO{j~<7Uo;?+&-^l&0btCab%EH5cf%AX6 z|9N^k{s#9ycVCWM{6F{iKksIK=>1Qw8R66KfB06`pD*9O9sl^{BJa=LpZp!mmoMRt zzTnFj3Sa(kg$U@|x4XN$Z#P^8Wgh^$4w4JkLCuot$6cWMac5LNbaq+fc2fOhU#0Z? zlAdQ5NB9`o4{?>aN?Zw79V)s;`7@kx^xVX!bDc=%lz8Va$e>=@8%pN6ekK2@8Lj-BTn(z6H#sm4x}L5lnK;nwtB(RL5d4Z3fW8zb#}Kx3P4Np z0#8Jp-q*AW@=G0gEsv;=AR(e55FAlo<%BmP8YqmA>vo+H6f&6XI>V7c1{0B(cz|9s zyfk+G!*!D$MBSmHgptmG2$2F&g3wD{ZeDT`wcNaT zg9D##UQljcYHPV(ym%rsqy!K(DFH-7g=d7&QUnDebfl>CEmb`fD4Hgsk)B4d-I_lC zGGcA7kT|h$2l_oj;{Lo6xPZO1~%G zqt7``oHfq*9HC>&7yP;<%nvuX-1(>I znEdOxp(5Rll_K^i zsieJONL?!Cba1%>BCw^Xyg13eZD19PN)a5qLxN}F4BKU_O;DYX7B5)_(F5?Elh*b~ zELSpObMGyF-iP12-}BG^#`C}XuV3%J{qoCi;s1Siceio=_vPVd-~7}<# zmp^j;mu@@%`}%KpcVF-3r+-iL)4#93{c3pB|6?_;?IY5BK5t z_38fjc>MD8aC|&I9{D&u`}XTsdir|&cKq^mcYOTy>Fe?F>EZb0>EY?&>Hhf3@&4)Y z>EZZz|LyO8eEi=}cgHVJ562rA!$Ux0tl`-Qhz|%Mfc#~Oa8ErYkF-2O;E>Nt37g1`+hFe_m%5{|kg^I8?=lnn!nS%nmxep2)$0 zf}MFLS4I6sIX@{pdm@T@=&5|46sJSaWcjjt5f5iHgr3r~CnDvoBP9r=n)-4E+E}*Q zy>xy&6!p|Rdm>WWD^k`g>Zmt5HR>%}Q%+{prJefc6NmP(xumY`)EA#~byf%2*(W*j zAX=PMQN&rFF*Q8O(v()3YanSTVtlRfVW8$EwkeU<*NJvb2$& zbv1xHjbsw^ zsULnvMCkPlx1%b9-iXi>_0*_qKRM({KJ{rg#SABHb1?2QD!qYB%H!uiJuTeO!%MGR zXy5mEmU#${9W%RqN3+YLQ|64ais)h~@!k&di zgqb4;7WN_>SU5;z&){Is!1_ILWN&{57G_I-nlJI8ur1ZhF$szKyzl?%;1F4unItl^ za54cL3kQCkz&w2<@pgr;4om7ax2FPT;b5)O*6Ba6aAsj}9G{1I%Uq;#?t0^oR_tc# zO#J%#*{9NK8gp~VN>+9)qr|DhGIrIq?1Ui{-RwUF-+c&v{ha!|;d)B_J*{1b{Z-NC zs)<>+Ab|ntAEtgPlfwS~X@kDzs=@3vmyN3ja~M9mN^zj8fgtNPIP*RB zevra9G{1ltOl8~VpeUtrHbXh2*=7A4Bos5;`{F-4H>M0X8OKD38|>B~uwz*eQw;q2 z`g#eiR~4WcCyZWI&1)0aIgDf-S*Uz}0moi;pa>-_7mf*-C65-n(OI(&gD1)39IY`= zmq1m!F+R&n!DpVMd=>?0h(+*&7k_x4sjb@YOmuZ?UbizBNf7mX&Br;Bocin(3nl4i z1~HX&x|f-w()SX^S!TL=D}dO;!q@z8<#uM{F2>IPf4Tb&@L!JiUyhsS|3C3xe(d>w zOK3j-{J+M{=l}N)?>qm$Kg#jp>6iO(d^$cpJuL44p1vOMpMH6IIDR=k9mDa<(H|f0 zzun*8)BXMZFJG}z;L}$t;_K7H@t30HhfT7>-ZJ$NO);-iM<<%G2@q`1Ej; zle!;{k5Av89`3*W{f}Sn?*8|EIDS3Kk&k@*@^ts~_4s)I?djp^{^{}fc>l{+lvHy8 zro2yg$1hJ`pB|2n$8S#$M}Oq|{dW~v0+Iwo(R&J!fFOEr;U$1201`kF;3QxO0lnR2 z*yY8QOAR=pwk!ujSWpBwL`EC_17Wi;whec$n2h2aMDxhiJRH3;Ax7um z2ZOV@UfV>uo^S|NmdZ=zP<326JUfUAC>I5URD)DrsvN5xR+^9N7f~E5NR^{qHbtp= zsi>q$sDP?Q1ymVT!_N*uK2+pdv$C(6P!U&M&^o+S98E=8Di=2^TPrR~MN+jT`Kp9# z`Mgv;s!pmwDk(Q`!$ui)2^YuPJTH5*uGP)A-;a#HoMTTCAHDwU5_Csiv|vJ!`IDb;Gxb_v>l#w94Y z^8EbCh3&jimBqzs(qCDB)%vT^U#o7Z3puu7uo6 zJ&y>3Uiw#&Ts7!kmeunB&z^|9x<{}&EO-K7jt+qU^8eZxTAIa%i8?9-O)v0L93vuu z5b33!0?*(yQ`Shar1$rf$-~Q`qC_>|s3xK&5GAUsj!A>g0=&$k&OGs&g9W^h%secF zt3<9+ls_5>M3LecaE8cLrsDrV<`GfVO`7 z7(#P3nO}wJ3CTPiV)1lHMA=le^q&Ys37Je?sEO*LFLR&pfHt8uaT*h+C3rEn2z148 z8gf;wYUznU6d^QvM=bT`icz&>-Yn(};o#J85)z8qGH4jpR$CKvV4yK^Y7?gcyo^AB zt+kz|jc}}u7)m1?15{d}0eQqk00*K3;;K=UNHCbjW-u?B z;n}pxrd5U)_=0!H*8Ls1inVuzwfh6$fXHXvpGu~F9BIgwsRtZTFEbILvDWo~&>ImN zMxZj+pk=eDVUnY>hP3?biO^d^I%`PJ07I-H1FsH6=gpPJGC2<~h{c1)FZx3HD)MiAJNW4lEJ-nbUp{APn*~HJ5 zI9cNC;RQ_r`CN+MEW~e3{HBQCdL8-dHst|_&J&?m@jE|yO?h;a_`_0s7fhihkqhvG zz9=-9WjKu8h@h6CpE#VElP{SF#e)yQGTCSkr{)xcVSajwL`e3r_6Q(C4vj+$Na2kL zIbfJftu}wb3UHOv>Ka|^PzRkct&vTz88ZM32b(g(>d@~kQ)ij_052fRG=xQ8Ihpqr zi3LB4^%V(#(pNBgI3lnFqNJ~k^hN|0Fvh;}>iCF8n-Rp;A+dEx;04|!5;3(i+)J;E zk*L;(00$&F)p|BLhd}X-2w4y?DOOCe9;f)dXrxpjH5e6urv2UM*8+nRNPI(8cnaU=rtludW|S6Fh|vE9Q7KJXL^mMS8Ya!rq^hCjqrlH=rx*N1Kdli zdX1)6fdf)J)2qoji0L(=nd#Mn`YVBZX;iN!P#smTCQxGnwGm*nMXzyPua>E^OnrnG zbVaXmsn@j7Ycjp2qSu6e(rZGAn&+f?O`~2DhM8WI=~bH%lIb;>UK6~)nHnUSUL)Mg zpn6TF*9Zrsbf#C6bBLzb1mdz7*NFfMRRi_k9JkD9l1;*@T$8FXsoDfDV3Vp#=Ud3$ zn$@LePlO>gy7XBAL()aqa1iq9!bMqYb?Sf&%J70^_hl8iV>7F9Cz+KglpMUyCHctJ9Waz5Wj)>*p;84hUj+05VOvwdV| zm9|+IeXF#yO8X2i$X4l)S2vQbwl&H!xf)(j7kuz~x#-u6MZdO1zb=b@jb_xHuK@>N z6Cu>P=$983gc|LnJE_eCv>DMPlG+yi8eY(uM5$gKpxH7d%am()L0@KtWiy&ZGg@m# zQ<~A%7{+FFHQ>OihEn z3L|SXxV4wl)?Q9qctJFYe0%mnjL@oTy9N%B_N+f*d%h7*R%>jZJrT0inyl8`!V8ks zTDPmpYb;Z3nVJ?}kS$Z&E|k}`bLI7|Dz9rzd3}p|RNl}64ns=>*9D@4p)IS8>(ETf zQ?>z*q|HEQuc)29qIU3t)+FL?u@U!{m@TpI;02u}4&CzQv|GHKcJ^}Gm6y{F{V0Cw z0Eg5OA*=YQD;x3LVVK0Pm*O`jQEd`69lXF#vsO};(CU&oj3-Y0(&@shf}rt!KT0-UGqi+KOoLDJDhFBWiZ7K zs#udqj6x$0@PbqnJFF|#G9}BD2Y5j)iXE1U9Tti;ft#Tyc0fHTb^si@fe8JeiXBG9 z4rpeIwPwih?1|V};1mWGiJc>OL8~$`IXc~qGn}1o)dL)uPYwo&*gHFis|Qstdq?O- zDL6Pf-IKE@qLt_1=-Cr-G}&03p1g5X;d&D;S&kDmb1oTE$(S|cU>R$-I7H;e%})`z zHSxJ|c8sS5TxIcH9IbY!&VGs-8>YcT>&wIAf6gYkIww9eH>1L8hli;!Ss&k zGi{j{VUfr(>v)mNonKm?_$1KJp$E$#t+YboBF7*JJ|cz~q*$nXx3FBg)c$FxROv>T zK+z(a^t&^QTUuCx`-Gn&;+92$6VE!-MH1G|6CXQiC4HIzC1Q(bqd3{$UW8e|X=1N% zVG#C9n`@aP3t|=*ee8?mA|dt*;GJGHc;O_dsr*PJK`hB&h|C`w@fi&tE>**u)qHGj zz1TKyl@<}2K-`5hNhccAG-m9vtaGKVqQ8AJK`HoRL6=AAiP#pycHY4&;T-ombNo2cYRds z4A4E-;%^d~yH_Q*1nmBHTbaEvx~m+*TpeM{)4f{%V67<&H{b7PqE#$0n-DQlCCg-J8K1X0IzWwHw%K7{CB8CgX1@yUa& zJo=KEeXs9+(MQAzCq>)u!ZMKJ9JXhFJo zGlI0jF~|qoePE46mn%a$Ey%twV1Q(9-N3ES~{d`1HClywCNa+35kxN!-Xn~_22_*$AxskQ2< zIzq?is@pE$EXsAOcg{ndxAnOXwcv2e_yOQgeL6f-pO&Q zV1Ev+@^IFI*^Y9vXD+1C5vM2vr($fjbNj_$s`OGCt@Kg~?N`;#TB}c9DCRwO`edUG z^LK~2s^;HrWIbPHW{4Fl&+-!5I*srdWfabsjb<_TY_YW@F1i?mECyG(wnb9c5~K&mjEl-NWHrtbP4?aVKnJ$Oh--K2ubho2Qh;klUJHws+1B zgFtFUQ;`u?3=9iiBaIcKDw5D>`mo#z3Ops zGTZyov#(OeEg~{*nAWbf_Huty12z$a7B!-bc3vK4Nj?~57$LmDy<-2U0rx~%_^s_&Sg@ld72)s+~keBmW}uG zy~F=|$}CaLp=KWY}X7`}Qm6hhl4Xv3~CkX@w-o_#1YTYhaL@XK{P&X06)EcIbnf zi>>p(_TnkxyXKj#s^-=dc>9QQoNE*oFpiLt1(ndnR!CU3t*KqOos3LO+j8xgb1vim z9l8-VcLbaQgoLG8xV}Zn(n~)IKZwYL7dp~gExqGP0e0`WfKDdqWsu@-S-h4a31Su+ zPw~!CLV5eHn z(Mv$=KjO0U^~YRx9)6x4f9C1&Wn1}qhWzsk`P0sj&rR)jbdr3_;_;vKJo!uoKTnlE zcB*`XP5q;uEnj=t`FX;;dBVKkI{pisGheo&pQp{=|Fn6XZ{{cC%J1vHySuxuPmd4Z z?tc04{6F{i504KU{6Am6{_L9{%KzgDL*IQi|Ia`-^8bAO@^IYb|GE41?$=xReg2?C zJ5P^Ce+>8j`1L4HkH_%zu$wR^c_qN9eLxqKG^Y&#O$ew%K)#I}XQ0B1Lz$ANRG4rk z;v2bv_(rY~-^6zi-^6zj-^2^VH}Q=4CY=%A#OuU2HMwVpBQWRGmCK)c&O|KhF+bu;e3&N4+Gx>4Nc%_*ms=67_g?XoFFJxOkqs2@5I| zZDuc3SH29f)~6e+_2T;RcI0t;Of@&+nI457fWVJu6G1R*F1LL>#@6(d22 zL(5d5AW_8MnY-;wXEAaVjX!$6UWaK@}wTl6)avAd09JW*KJ+4vSKVAjYgv z6XiD|2&fzJ=VPIP@KkUMlW{0SB_GI8ttX>H$e@1Y9;iVMLNB6h3&B#NhSDw2FxF&j z3ordP%|b^bH^a>|3q+-F)@c^F&@6z)&M7ntsn9GmMzip*L$M+v1dc{~@ULS3c_Iim z4xSPCjR?Zvso=WWK0j$L+qrN4qQ&A;&wadC^j>2AAust zup;M7LcPBJHozz&*4K@2C8z&@7J;wArR>F9dHsQSE4u`~rTw1=;PN^La5?-0aQO+~ zvI5|;AG&TA)?A^CckJ-_Kyj}-K*vS_=3rx=KeyL6Ptv-0epQW(ih?p4e(mB; z5FcBi{UF1_e}2W)Yj!mg{M<-i&oEeg^ot88?Y8-fxxAm#=j#jnTFO=i;h7tMNi)N7 znG4g2i%W4De!UF%V%Jqj7i!ygx2WEDqXYNGJ))c4Bs!=I_v&5N>+8~oeV^K90S>ET zx>fJK+q~6%^rHUiJ#^yhr1%_bqt=@4@G;-@3!dte6}DHDG~Ke^WE|=F(3RH)5t!Z7CK(eTXR!nU!qqS#16^sz!3-O zF`*gOT(r3Cqb*&QxFm1)7KU@{cwctA&G+QJmq5PtAp}4A)a;+RF522g<=yBV;cv3N zqW?>>sVl(R7-`@jyzHG~$J=Vsy>p0RIYFFT=ax{Vp=zNGuUP0J5=`U0Y|C!`^`$=@ zNPN_V9}=RE>cv=?1Co%4Ib1lz&1OZ+8|ILLgZj@R>Lk}njt;F9UqY3R#K##1dW>0G zX~nRe$GynhtxNYCidU~ri-;nv3=(H?E#pM3<3i#XJg`)1i2>`a*{%4P#l=>#)d9)T z!EuVjo@c@)q~K6v{!q;;#l-I9C&R35Io3-C;pNX&2NQiQURjqNUb}c$nJjQJS%7y< z7cq#Ba~d z^^r!uZn-YL9{#iX|9$)N?eXF3kN5w3xPLkxxBUN}e){J9Q2)QWa}5*1e^B-kWe_i3 zND%$#379_O3FxrT6Y!*B5_eVMYa(sC3$1lfl{N;E&K0bYY zdbkfy-;Vyszy9G*$FD~|etG)(^!51o^z}X*AC8Yt-*)>5W*;yF^%ErT(Swrb7DUOT zCrSZiu7e2bQs@HNe{SYG2snbHZ70H(D0wtQ>F_V8K>;;ThyMUbkAi}*4B{oo5D$c7z$U*xM^DlZjc z)uZZsMPg2LK`O**2vy^&AXPSxz*~#dWa=VEQVpRJUu7|`K`-B})N@ZYzvij7bXb$o z4b3%hP#-Es1V>K)!A*aY(`OUg5nLc7um30z5C~#_lXsi{HXY73J;yG4x6NJ5X#RYo z^0Rd1*Sy{973#k=iB6uZ7qygh`^ob8x`^8!7fyC7Zg?vS^!D#uujDtp_0sa0I`>`i zOx) z9hl+yjR=9!aB*4`a}^`?o{HwrCFai+84Xjd-B?>UCimjiPMK8;RJEk0I(<_^t<}Df zF-Ghj-`o_TwglekaK-3h^Gk|JzOoW~jmG77cgE_5rOHVuJTZf)8@EZ}FN5i9U zqKe%DwI*kXgOa20$HIvsYtC-oBXJ&z?8D&l*MI9|)lE(z~irCg1V|fgC!ndZ^o~`a}akT`hxgu?OQ~4`|rD5D6hfpcy+P zP&D}yA)EZM2SPCUBgHq2&maMy2nj@pCcgxgKL*s3dt@^C+fn|;%E%!CZIK}d5|g1V z{)R--1G&f`ByXc{DWMJk3F-g`G(o>{KpRv*2XsNL#{qpHhc=)KaKI4Ap$}*R9N|4lC}N*&mDC4&N9~Pg&bI>Q3wZw>A46wgynPX_V5P6 zQ2bp5pnxbuNTO3&6dmhX#6B;^dM%AZ79=4;BaK5XfV>f*5p`%a>lbo}Qnlpa$O)cN zrejk~E6<(?z3HVhz4U_2C~M&$I*0Znt1BtjDdl?gJw5uu4_ zfLJ;3nfAEORXmO~B(8p6NcEJA(u5P`1BSIh10c}~4t<90p1tPd)eI3z- zHzK%%ezGu1YGF22A=v_(bOV!Y1Cwk6laLvM%H`9#TgEhmN{!J$ux3FP6j?g1iUNJOBVNyYec2TDXh)~O(+Kerlq$hmQ# z3}jQ4xM-^444zcw^C(KlX5w))AcCF!&)qW-BfXp z%)&jG^+u1Q1H}+Yyddgj7@H#^+4Wf-Np?97qHa8ThZja{Aia|)rF(AhiQxyrL-3q& z_-xMQI%aWk2%V6*UG5}E*1JW-LDa3e6OvxCh$wmVZj$C!NH}r~!f^;*f~2_Lg?7IW z?SL8%b;#o4WGw1Dsx5b@G3;UZJy)7qy5pJyJN69knDsAYSl#Rg>BUEqEWO&DpDVHR zOBMD=h5}P#zz!$iYki_p)~MMly|EYL1Qr&r^vIq)doSbjY#A33qG_rmOf zjKfw7m;KvA`*(MX*3DyThdLaypE!tlloi&#!kzr79K>QuUgaWA$Znrc^4jn#oWX~E zMO+_{m1t-cSE`B8OLCgkJVp_ zS!w^=`8^0?C)vhn5p=WV3Hi1Okze;!*GiC5%^*WaG6-uB>6QG7!~FjKmG_LwTl)8WnOg7N!$*2o zE71Y=x@WN5-oGo$Eg$xc%Uk!&V4TivlH_2^By)}VGrgWA|`?gcL8pGL|h6C2mJYkWTQYD$ae`+~Evc)4Bgm|f3z zGZQ(?V#jZMJri2;T5m06zr2;YWi=#Q4Y61avpXzyNZa+byw%tGqO_g!bT>6_C`pfK z;=CafbwMjZdWqs=TH6m#nTwk^nI7~cZFMVqz6&0t6BiYP^va&~bSJ(hG$ce3v6miZ z$4~e*?mS2Ga^k6Ia6nsD+?;t+=;9Kv#>aUzX2j6=i z5OT2Ntp(A{G*!;`6Q^%nQ;*FXJ&QUYb-cAaPKJKCcHptSPmzst59q+WR`B+&WIN~j zUUNJByWaOs$KBclR3eI|kyk!l7yI{ugU!!tr^(A%c)3L>>tKuPoj4~Fy1t?o40tt>X$9rjNVfB~ z(d{d1-d}lfS}{+hTMFCziaOM_ zg+oK0Qs+b{WD*MSSI9yYalQMUQH>h@;n$LMq+z;s*@qs8!#r>`Zi zx|r$-Dq^`J@dqFWa+|0 zgm-D@nWYOS9XxYi(0N54=~(0c^<9sr^sIht?NshFA*s$fS zJOawx@TxmM{h3sgh2tQ-9QF;Ia`ay=UH9$C8oX!6zLx9K%CP6n|8xXgJqfs^kelX@ z^SAeHsn*`>4?pg`er8ycjF1A8Hq+Uqm1}7#pL1$5H;P-0;OstscE)hU5WIZang6yC zY;?N+{#|_)$>{Fx?&0gVr{gcb1^?gE*Qdt~{GU}~z@PtpKm4De_kHj2oAdvD`{nCD z|9$asgADMik^z2sx_i1i^3yL%LcsfPf4C1vIff%2<>~A3@%Z)l<>~I};py?|{`mNZ z`|$Mj`1tg&{QCae=7ZgEKz&fEz}7H-=2U@cFI^yrlBbT6M#TtdImPd3P<8M6UxSxgi)drzP&riaRSuO8 zRqz%2YVei!Rq&NV6@1ludxT)=+c+ZtB&l4%56T$d5t7GmgY&&XL$EM`B|fi7f>L94boG0ggH%>H|@t z&Y1kDCmH1(X7a)*s~`;qokR#I;6X%7o;w%=AsNmR2mzD~s%FVR=obux!62S|VIU0J z)3RPL@)*?||1TVyhCiw~FN+LEk%&9Xht-N#IUJiKmeeCFDWRR5e2G= zkWB;%sF?_LXdO~O4sS%L!vq%uG+|~2ZK>11Z>-MN>g>YI4EkVZkR~%2f|>zM5K$*X zU6c#6KIOvvjtfAWABiJ7j_g=D8uLZ=M`d-?oFdBk$f7KcTypYM zs^`eTKx2aCoM2b{#ne+>x8%U*@<*-!w(KR4ylxx~AG-KsScxY-;`a~-F9}`s+l;H! zz7v)3dF)XBJbK}eumKk#4s#yh*PlGVKY4&xcz}0tz@EBFZ*5p6A+}Sr5=3T3ww+Sv ztpT+MO87LUUGdr8-ug_UTuP(Gp1aMjY#oSaD&Ba$A>~?fTqzDyahG^#53je(eL#b5 z$4@iPMkrh1+p1}!Q*6)RL-6be?|twkL{x*69NKtV&EW^N=7ewcnmu3geYmuJ*ZJJ@ zUIN?eqsBqtFpZ2QCo7-3l3X9EH-`Yu7mm*u=M%#&b34+zE~qp2Re3sL?5R{aJ0tR0 zrH749y7aoWU>cr>DzPMS;Fx4kUb*q)Ve;rK@eKyaxx1Moo$K}4@UkIq=U*D~C3mA! z``a@^f5-x_P4De45iZ!Cw&+?l#R+tOx6K(O_m5YF`nuH#%v^>(=6kx$TYbH? zozW;?OKC8u>(%U6)>Ppw3VwZ0)ys)%PsPg|+cU@96@G2aU(6fn>ddhO51QtWK_IoA zW|Y}vyPL*{k#uF-b9wGqKW))@1MiqOu5Q6TGG|=czqMDZzB*T2D!$AUJI2lLc6PYj zzA|1er5cTHZ->9HVH@Lc89cE)5=VO1y1DT`PI+%#miDcdm&U{EfMMbiZe@@`+(=t{ zNh#O&9m~~eY~)}Y)$0{lXxatw57+GUJ(6Y=Si1CK0W<#5=2PsNPr;{qj^DF^JGdQf z-D@9*eMQn<*~k~N@hKEnPfyD|&OF4klOPHxPtuCsY4z7=x(}z(U#oEthoA2M|Hs|k z-Q(lehhOf${P_5fFZXv3PaE+c_g{YY%@2+L=yU9-=I|esy^ntI-g{3T!TS;kBK`xB zAbeXS$o;=Pe0lix&wn3-Kc4R9!5?4doX_`5Ca!0M0P+FJZ^v(B zjm~gH9**EH#5uULI0rh5b8y#Lmt$dFMm3-kU->X|Pse-R)79(()l9B7r+^9*6Rd({D_Qj7nmQsZxNQe-rH!o@q#f!S3q+WmHGq2AQQBC z*Y+$Eh~U&;upXaUsWrikPn)SuPwHPy9kqvw2#VH2sMb%Xr3CCSB*C#@hBy< zh{|QxX|fhouflgAOQo#EC*svAUO$PKFaU5EKm?~Q(F3Zi#W}_>CM336p~;A=sL8-) z@S_Vkg%>&TJJrAuNBu;Tr@WQK-^nQzJOt0gp3_yQ)WW=0e**KG3*L*LGp{-0>p5Xy zQzwLf2oAQ$?tAd8am*5hcqhA>CdX~bnK%8UKFpg|y84tYZ4ZZ+HGSep0|(%xRs%7Oq|!8O$sAN!>=q!ir2Po@f99sWTtwZ!*b4#+18Jy9R`T^ z0chblV+-BljKOKZfX)vhF)SGvA|l5E6h3S+YfSe5-ds%Lh$A{zxmQ4?Wm}lri!iEd zAlZiE6bgz{;7PGc*;43<$nNZx6aF0iJS-qQ2E3Msih$&}U>mjU5bRTf24in)i{?&n zMV8idYzMWML1D9>bcxxrN#aJ&W<7`O&zih~8lF#Z;MFI4kT`ab`Zb1GRp#kfPM{sq zSVuV(j%Y)QVDWKV150~8bp%{K)eDnCN#L+Wo}?`t;6sWI1K1~V7y$2MZ> zyCv~)J0%t=`%&h@hVHDB-zhWi?!_#7WscWmR?&JXlhQP64i-c;!A6zi?iOY6_KWYQ zWAH0y;~SVjU3577JSqRL_Fqf?{!wVLfU$DaQ7|NJ%loJxLI|NZ}7*ptlw GZUq1nQNSty literal 0 HcmV?d00001 diff --git a/net/clamav/files/clamav.config b/net/clamav/files/clamav.config new file mode 100644 index 000000000..1543caa71 --- /dev/null +++ b/net/clamav/files/clamav.config @@ -0,0 +1,34 @@ +config clamav 'clamav' + option clamd_config_file '/etc/clamav/clamd.conf' + option LogFile '/tmp/clamd.log' + option LogFileMaxSize '1M' + option LogTime 'no' + option LogVerbose 'no' + option ExtendedDetectionInfo 'no' + option OfficialDatabaseOnly 'no' + option StreamMinPort '1024' + option StreamMaxPort '2048' + option MaxThreads '10' + option ReadTimeout '30' + option CommandReadTimeout '5' + option MaxDirectoryRecursion '15' + option FollowDirectorySymlinks 'no' + option FollowFileSymlinks 'no' + option SelfCheck '600' + option DetectPUA 'yes' + option ScanPE 'yes' + option DisableCertCheck 'no' + option ScanELF 'yes' + option DetectBrokenExecutables 'no' + option ScanOLE2 'yes' + option ScanPDF 'yes' + option ScanSWF 'yes' + option ScanMail 'yes' + option ScanPartialMessages 'no' + option ScanArchive 'yes' + option ArchiveBlockEncrypted 'yes' + option MaxFileSize '10M' + option TemporaryDirectory '/tmp' + option LocalSocket '/var/run/clamav/clamd.sock' + option User 'nobody' + option ExitOnOOM 'yes' diff --git a/net/clamav/files/clamav.init b/net/clamav/files/clamav.init new file mode 100644 index 000000000..b2a895019 --- /dev/null +++ b/net/clamav/files/clamav.init @@ -0,0 +1,116 @@ +#!/bin/sh /etc/rc.common +# Copyright (C) 2015 OpenWrt.org + +START=90 +STOP=10 + +USE_PROCD=1 +PROG=/usr/sbin/clamd +CLAMD_CONFIGFILE="/tmp/clamav/clamd.conf" + +validate_clamav_section() { + uci_validate_section clamav clamav "${1}" \ + 'clamd_config_file:string' \ + 'LogFile:string' \ + 'LogFileMaxSize:string' \ + 'LogVerbose:string' \ + 'ExtendedDetectionInfo:string' \ + 'LogTime:string' \ + 'OfficialDatabaseOnly:string' \ + 'StreamMinPort:uinteger' \ + 'StreamMaxPort:uinteger' \ + 'MaxThreads:uinteger' \ + 'ReadTimeout:uinteger' \ + 'CommandReadTimeout:uinteger' \ + 'MaxDirectoryRecursion:uinteger' \ + 'FollowDirectorySymlinks:string' \ + 'FollowFileSymlinks:string' \ + 'SelfCheck:uinteger' \ + 'DetectPUA:string' \ + 'ScanPE:string' \ + 'DisableCertCheck:string' \ + 'ScanELF:string' \ + 'DetectBrokenExecutables:string' \ + 'ScanOLE2:string' \ + 'ScanPDF:string' \ + 'ScanSWF:string' \ + 'ScanMail:string' \ + 'ScanPartialMessages:string' \ + 'ScanArchive:string' \ + 'TemporaryDirectory:string' \ + 'ArchiveBlockEncrypted:string' \ + 'MaxFileSize:string' \ + 'LocalSocket:string' \ + 'User:string' \ + 'ExitOnOOM:string' +} + +start_service() { + local clamd_config_file LogFile LogTime StreamMinPort \ + StreamMaxPort MaxThreads ReadTimeout CommandReadTimeout MaxDirectoryRecursion \ + FollowFileSymlinks FollowDirectorySymlinks SelfCheck DetectPUA ScanPE DisableCertCheck \ + ScanELF DetectBrokenExecutables ScanOLE2 ScanPDF ScanSWF ScanMail ScanPartialMessages \ + ScanArchive TemporaryDirectory ArchiveBlockEncrypted MaxFileSize LocalSocket User + + validate_clamav_section clamav || { + echo "validation failed" + return 1 + } + + mkdir -p /usr/share/clamav + mkdir -p /etc/clamav/ + mkdir -p /var/run/clamav/ + chmod a+rw /var/run/clamav + + mkdir -p $(dirname $CLAMD_CONFIGFILE) + ln -sf $clamd_config_file $CLAMD_CONFIGFILE + + echo "LogFile " $LogFile > $CLAMD_CONFIGFILE + echo "LogFileMaxSize " $LogFileMaxSize >> $CLAMD_CONFIGFILE + echo "LogVerbose " $LogVerbose >> $CLAMD_CONFIGFILE + echo "ExtendedDetectionInfo " $ExtendedDetectionInfo >> $CLAMD_CONFIGFILE + echo "LogTime " $LogTime >> $CLAMD_CONFIGFILE + echo "OfficialDatabaseOnly " $OfficialDatabaseOnly >> $CLAMD_CONFIGFILE + echo "StreamMinPort " $StreamMinPort >> $CLAMD_CONFIGFILE + echo "StreamMaxPort " $StreamMaxPort >> $CLAMD_CONFIGFILE + echo "MaxThreads " $MaxThreads >> $CLAMD_CONFIGFILE + echo "ReadTimeout " $ReadTimeout >> $CLAMD_CONFIGFILE + echo "CommandReadTimeout " $CommandReadTimeout >> $CLAMD_CONFIGFILE + echo "MaxDirectoryRecursion " $MaxDirectoryRecursion >> $CLAMD_CONFIGFILE + echo "FollowDirectorySymlinks " $FollowDirectorySymlinks >> $CLAMD_CONFIGFILE + echo "FollowFileSymlinks " $FollowFileSymlinks >> $CLAMD_CONFIGFILE + echo "SelfCheck " $SelfCheck >> $CLAMD_CONFIGFILE + echo "DetectPUA " $DetectPUA >> $CLAMD_CONFIGFILE + echo "ScanPE " $ScanPE >> $CLAMD_CONFIGFILE + echo "DisableCertCheck " $DisableCertCheck >> $CLAMD_CONFIGFILE + echo "ScanELF " $ScanELF >> $CLAMD_CONFIGFILE + echo "DetectBrokenExecutables " $DetectBrokenExecutables >> $CLAMD_CONFIGFILE + echo "ScanOLE2 " $ScanOLE2 >> $CLAMD_CONFIGFILE + echo "ScanPDF " $ScanPDF >> $CLAMD_CONFIGFILE + echo "ScanSWF " $ScanSWF >> $CLAMD_CONFIGFILE + echo "ScanMail " $ScanMail >> $CLAMD_CONFIGFILE + echo "ScanPartialMessages " $ScanPartialMessages >> $CLAMD_CONFIGFILE + echo "ScanArchive " $ScanArchive >> $CLAMD_CONFIGFILE + echo "TemporaryDirectory " $TemporaryDirectory >> $CLAMD_CONFIGFILE + echo "ArchiveBlockEncrypted " $ArchiveBlockEncrypted >> $CLAMD_CONFIGFILE + echo "MaxFileSize " $MaxFileSize >> $CLAMD_CONFIGFILE + echo "LocalSocket " $LocalSocket >> $CLAMD_CONFIGFILE + echo "User " $User >> $CLAMD_CONFIGFILE + echo "ExitOnOOM " $ExitOnOOM >> $CLAMD_CONFIGFILE + + procd_open_instance + procd_set_param command $PROG -c $CLAMD_CONFIGFILE + procd_set_param file $CLAMD_CONFIGFILE + procd_close_instance +} + +stop_service() +{ + service_stop ${PROG} +} + +service_triggers() +{ + procd_add_reload_trigger "clamav" + procd_add_validation validate_clamav_section +} diff --git a/net/clamav/files/freshclam.config b/net/clamav/files/freshclam.config new file mode 100644 index 000000000..827e8dd95 --- /dev/null +++ b/net/clamav/files/freshclam.config @@ -0,0 +1,7 @@ +config freshclam 'freshclam' + option freshclam_config_file '/etc/clamav/freshclam.conf' + option UpdateLogFile '/tmp/freshclam.log' + option DatabaseMirror 'database.clamav.net' + option NotifyClamd '/etc/clamav/clamd.conf' + option DatabaseOwner 'root' + option CompressLocalDatabase 'yes' diff --git a/net/clamav/files/freshclam.init b/net/clamav/files/freshclam.init new file mode 100644 index 000000000..37b276729 --- /dev/null +++ b/net/clamav/files/freshclam.init @@ -0,0 +1,63 @@ +#!/bin/sh /etc/rc.common +# Copyright (C) 2015 OpenWrt.org + +START=90 +STOP=10 + +USE_PROCD=1 +PROG=/usr/sbin/freshclam +FRESHCLAM_CONFIGFILE="/tmp/clamav/freshclam.conf" + +validate_freshclam_section() { + uci_validate_section freshclam freshclam "${1}" \ + 'freshclam_config_file:string' \ + 'UpdateLogFile:string' \ + 'DatabaseMirror:string' \ + 'NotifyClamd:string' \ + 'DatabaseOwner:string' \ + 'CompressLocalDatabase:string:' +} + +start_service() { + local freshclam_config_file UpdateLogFile DatabaseOwner NotifyClamd DatabaseMirror + + validate_freshclam_section freshclam || { + echo "validation failed" + return 1 + } + + [ -f /tmp/freshclam.pid ] && echo "already running" && return 0 + + mkdir -p /usr/share/clamav + mkdir -p /etc/clamav + touch /tmp/freshclam.log + touch /tmp/freshclam.pid + + mkdir -p $(dirname $FRESHCLAM_CONFIGFILE) + ln -sf $freshclam_config_file $FRESHCLAM_CONFIGFILE + + echo "UpdateLogFile " $UpdateLogFile > $FRESHCLAM_CONFIGFILE + echo "DatabaseMirror " $DatabaseMirror >> $FRESHCLAM_CONFIGFILE + echo "NotifyClamd " $NotifyClamd >> $FRESHCLAM_CONFIGFILE + echo "DatabaseOwner " $DatabaseOwner >> $FRESHCLAM_CONFIGFILE + echo "CompressLocalDatabase " $CompressLocalDatabase >> $FRESHCLAM_CONFIGFILE + + procd_open_instance + procd_set_param command $PROG -d --config-file=$FRESHCLAM_CONFIGFILE -p /tmp/freshclam.pid --no-warnings + procd_set_param file $FRESHCLAM_CONFIGFILE + procd_close_instance +} + +stop_service() +{ + [ ! -f /tmp/freshclam.pid ] && echo "not running" && return 0 + PID=`cat /tmp/freshclam.pid` + kill $PID + rm -f /tmp/freshclam.pid +} + +service_triggers() +{ + procd_add_reload_trigger "freshclam" + procd_add_validation validate_freshclam_section +} diff --git a/net/clamav/patches/001-compile.patch b/net/clamav/patches/001-compile.patch new file mode 100644 index 000000000..399225708 --- /dev/null +++ b/net/clamav/patches/001-compile.patch @@ -0,0 +1,10 @@ +--- a/clamdscan/proto.c ++++ b/clamdscan/proto.c +@@ -55,6 +55,7 @@ + #include "shared/misc.h" + #include "shared/clamdcom.h" + ++#include + #include "proto.h" + #include "client.h" + From a39de9738a329e4b0881b068ca82ff66265a255c Mon Sep 17 00:00:00 2001 From: Marko Ratkaj Date: Thu, 21 May 2015 12:46:05 +0200 Subject: [PATCH 415/681] luci-app-clamav: add package Signed-off-by: Marko Ratkaj --- net/luci-app-clamav/Makefile | 53 ++++++ .../files/controller/clamav-controller.lua | 22 +++ .../files/model/cbi/clamav-cbi.lua | 178 ++++++++++++++++++ 3 files changed, 253 insertions(+) create mode 100644 net/luci-app-clamav/Makefile create mode 100644 net/luci-app-clamav/files/controller/clamav-controller.lua create mode 100644 net/luci-app-clamav/files/model/cbi/clamav-cbi.lua diff --git a/net/luci-app-clamav/Makefile b/net/luci-app-clamav/Makefile new file mode 100644 index 000000000..fed8e63a7 --- /dev/null +++ b/net/luci-app-clamav/Makefile @@ -0,0 +1,53 @@ +# +# Copyright (C) 2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=luci-app-clamav +PKG_RELEASE:=20150520 + +PKG_BUILD_DIR := $(BUILD_DIR)/$(PKG_NAME) + +PKG_LICENSE:=Apache-2.0 +PKG_MAINTAINER:=Marko Ratkaj + +include $(INCLUDE_DIR)/package.mk + +define Package/luci-app-clamav + SECTION:=luci + CATEGORY:=LuCI + SUBMENU:=3. Applications + TITLE:=ClamAV Web UI + DEPENDS:=+luci-mod-admin-full +clamav +endef + +define Package/luci-app-clamav/description + This package will install ClamAV Web UI. +endef + +define Build/Prepare +endef + +define Build/Configure +endef + +define Build/Compile +endef + +define Package/luci-app-clamav/install + $(INSTALL_DIR) $(1)/usr/lib/lua/luci/controller/ + $(INSTALL_BIN) \ + ./files/controller/clamav-controller.lua \ + $(1)/usr/lib/lua/luci/controller/clamav.lua + + $(INSTALL_DIR) $(1)/usr/lib/lua/luci/model/cbi/ + $(INSTALL_BIN) \ + ./files/model/cbi/clamav-cbi.lua \ + $(1)/usr/lib/lua/luci/model/cbi/clamav.lua +endef + +$(eval $(call BuildPackage,luci-app-clamav)) diff --git a/net/luci-app-clamav/files/controller/clamav-controller.lua b/net/luci-app-clamav/files/controller/clamav-controller.lua new file mode 100644 index 000000000..02f3bfc4b --- /dev/null +++ b/net/luci-app-clamav/files/controller/clamav-controller.lua @@ -0,0 +1,22 @@ +--[[ + +LuCI ClamAV module + +Copyright (C) 2015, Itus Networks, Inc. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Author: Marko Ratkaj + Luka Perkov + +]]-- + +module("luci.controller.clamav", package.seeall) + +function index() + entry({"admin", "services", "clamav"}, cbi("clamav"), _("ClamAV")) +end diff --git a/net/luci-app-clamav/files/model/cbi/clamav-cbi.lua b/net/luci-app-clamav/files/model/cbi/clamav-cbi.lua new file mode 100644 index 000000000..ff98139d4 --- /dev/null +++ b/net/luci-app-clamav/files/model/cbi/clamav-cbi.lua @@ -0,0 +1,178 @@ +--[[ + +LuCI ClamAV module + +Copyright (C) 2015, Itus Networks, Inc. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Author: Marko Ratkaj + Luka Perkov + +]]-- + +local fs = require "nixio.fs" +local sys = require "luci.sys" +require "ubus" + +m = Map("clamav", translate("ClamAV")) +m.on_after_commit = function() luci.sys.call("/etc/init.d/clamav restart") end + +s = m:section(TypedSection, "clamav") +s.anonymous = true +s.addremove = false + +s:tab("tab_advanced", translate("Settings")) +s:tab("tab_logs", translate("Log")) + +--------------- Settings -------------- + +LogFileMaxSize = s:taboption("tab_advanced", Value, "LogFileMaxSize", translate("Max size of log file")) +LogFileMaxSize:value("512K", translate("512K")) +LogFileMaxSize:value("1M", translate("1M")) +LogFileMaxSize:value("2M", translate("2M")) +LogFileMaxSize.default = "1M" + +LogTime = s:taboption("tab_advanced", ListValue, "LogTime", translate("Log time with each message")) +LogTime:value("no", translate("No")) +LogTime:value("yes", translate("Yes")) +LogTime.default = "no" + +LogVerbose = s:taboption("tab_advanced", ListValue, "LogVerbose", translate("Enable verbose logging")) +LogVerbose:value("no", translate("No")) +LogVerbose:value("yes", translate("Yes")) +LogVerbose.default = "no" + +ExtendedDetectionInfo = s:taboption("tab_advanced", ListValue, "ExtendedDetectionInfo", translate("Log additional infection info")) +ExtendedDetectionInfo:value("no", translate("No")) +ExtendedDetectionInfo:value("yes", translate("Yes")) +ExtendedDetectionInfo.default = "no" + +dummy3 = s:taboption("tab_advanced", DummyValue, "") +dummy4 = s:taboption("tab_advanced", DummyValue, "") + +MaxDirectoryRecursion = s:taboption("tab_advanced", Value, "MaxDirectoryRecursion", translate("Max directory scan depth")) +MaxDirectoryRecursion:value("15", translate("15")) +MaxDirectoryRecursion:value("20", translate("20")) +MaxDirectoryRecursion.default = "15" + +FollowDirectorySymlink = s:taboption("tab_advanced", ListValue, "FollowDirectorySymlink", translate("Follow directory symlinks")) +FollowDirectorySymlink:value("no", translate("No")) +FollowDirectorySymlink:value("yes", translate("Yes")) +FollowDirectorySymlink.default = "no" + +FollowFileSymlinks = s:taboption("tab_advanced", ListValue, "FollowFileSymlinks", translate("Follow file symlinks")) +FollowFileSymlinks:value("no", translate("No")) +FollowFileSymlinks:value("yes", translate("Yes")) +FollowFileSymlinks.default = "no" + +DetectPUA = s:taboption("tab_advanced", ListValue, "DetectPUA", translate("Detect possibly unwanted apps")) +DetectPUA:value("no", translate("No")) +DetectPUA:value("yes", translate("Yes")) +DetectPUA.default = "no" + +ScanPE = s:taboption("tab_advanced", ListValue, "ScanPE", translate("Scan portable executables")) +ScanPE:value("no", translate("No")) +ScanPE:value("yes", translate("Yes")) +ScanPE.default = "yes" + +ScanELF = s:taboption("tab_advanced", ListValue, "ScanELF", translate("Scan ELF files")) +ScanELF:value("no", translate("No")) +ScanELF:value("yes", translate("Yes")) +ScanELF.default = "yes" + +DetectBrokenExecutables = s:taboption("tab_advanced", ListValue, "DetectBrokenExecutables", translate("Detect broken executables")) +DetectBrokenExecutables:value("no", translate("No")) +DetectBrokenExecutables:value("yes", translate("Yes")) +DetectBrokenExecutables.default = "no" + +ScanOLE2 = s:taboption("tab_advanced", ListValue, "ScanOLE2", translate("Scan MS Office and .msi files")) +ScanOLE2:value("no", translate("No")) +ScanOLE2:value("yes", translate("Yes")) +ScanOLE2.default = "yes" + +ScanPDF = s:taboption("tab_advanced", ListValue, "ScanPDF", translate("Scan pdf files")) +ScanPDF:value("no", translate("No")) +ScanPDF:value("yes", translate("Yes")) +ScanPDF.default = "yes" + +ScanSWF = s:taboption("tab_advanced", ListValue, "ScanSWF", translate("Scan swf files")) +ScanSWF:value("no", translate("No")) +ScanSWF:value("yes", translate("Yes")) +ScanSWF.default = "yes" + +ScanMail = s:taboption("tab_advanced", ListValue, "ScanMail", translate("Scan emails")) +ScanMail:value("no", translate("No")) +ScanMail:value("yes", translate("Yes")) +ScanMail.default = "yes" + +ScanPartialMessages = s:taboption("tab_advanced", ListValue, "ScanPartialMessages", translate("Scan RFC1341 messages split over many emails")) +ScanPartialMessages:value("no", translate("No")) +ScanPartialMessages:value("yes", translate("Yes")) +ScanPartialMessages.default = "no" + +ScanArchive = s:taboption("tab_advanced", ListValue, "ScanArchive", translate("Scan archives")) +ScanArchive:value("no", translate("No")) +ScanArchive:value("yes", translate("Yes")) +ScanArchive.default = "yes" + +ArchiveBlockEncrypted = s:taboption("tab_advanced", ListValue, "ArchiveBlockEncrypted", translate("Block encrypted archives")) +ArchiveBlockEncrypted:value("no", translate("No")) +ArchiveBlockEncrypted:value("yes", translate("Yes")) +ArchiveBlockEncrypted.default = "no" + +dummy5 = s:taboption("tab_advanced", DummyValue, "") +dummy6 = s:taboption("tab_advanced", DummyValue, "") + +StreamMinPort = s:taboption("tab_advanced", Value, "StreamMinPort", translate("Port range, lowest port")) +StreamMinPort.datatype = "portrange" +StreamMinPort:value("1024",translate("1024")) +StreamMinPort.default = "1024" + +StreamMaxPort = s:taboption("tab_advanced", Value, "StreamMaxPort", translate("Port range, highest port")) +StreamMaxPort.datatype = "portrange" +StreamMaxPort:value("2048",translate("2048")) +StreamMaxPort.default = "2048" + +MaxThreads = s:taboption("tab_advanced", Value, "MaxThreads", translate("Max number of threads")) +MaxThreads.datatype = "and(uinteger,min(1))" +MaxThreads:value("10",translate("10")) +MaxThreads:value("20",translate("20")) +MaxThreads.default = "10" + +SelfCheck = s:taboption("tab_advanced", Value, "SelfCheck", translate("Database check every N sec")) +SelfCheck.datatype = "and(uinteger,min(1))" +SelfCheck:value("600",translate("600")) +SelfCheck.default = "600" + +MaxFileSize = s:taboption("tab_advanced", Value, "MaxFileSize", translate("Max size of scanned file")) +MaxFileSize.datatype = "string" +MaxFileSize:value("150M",translate("150M")) +MaxFileSize:value("50M",translate("50M")) +MaxFileSize.default = "150M" + +------------------ Log -------------------- + +clamav_logfile = s:taboption("tab_logs", TextValue, "lines", "") +clamav_logfile.wrap = "off" +clamav_logfile.rows = 25 +clamav_logfile.rmempty = true + +function clamav_logfile.cfgvalue() + local uci = require "luci.model.uci".cursor_state() + local file = "/tmp/clamd.log" + if file then + return fs.readfile(file) or "" + else + return "" + end +end + +function clamav_logfile.write() +end + +return m From 6d9064e230619679c4dd22c8b324138912877497 Mon Sep 17 00:00:00 2001 From: Luka Perkov Date: Wed, 20 May 2015 19:05:27 +0200 Subject: [PATCH 416/681] snort: add SF mirror Signed-off-by: Luka Perkov --- net/snort/Makefile | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/net/snort/Makefile b/net/snort/Makefile index 9b8fea7e7..33f8b6d5e 100644 --- a/net/snort/Makefile +++ b/net/snort/Makefile @@ -12,7 +12,8 @@ PKG_VERSION:=2.9.7.2 PKG_RELEASE:=2 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://www.snort.org/downloads/snort/ +PKG_SOURCE_URL:=https://www.snort.org/downloads/snort/ \ + @SF/$(PKG_NAME) PKG_MD5SUM:=b01e9964827394c39194a0147bc15705 PKG_BUILD_DEPENDS:=librpc From afd6d913604946c623df17bad648d1ec050bcb8b Mon Sep 17 00:00:00 2001 From: Luka Perkov Date: Wed, 20 May 2015 19:05:39 +0200 Subject: [PATCH 417/681] libdaq: add SF mirror Signed-off-by: Luka Perkov --- libs/libdaq/Makefile | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/libs/libdaq/Makefile b/libs/libdaq/Makefile index fb3585bd7..9c634df7b 100644 --- a/libs/libdaq/Makefile +++ b/libs/libdaq/Makefile @@ -11,7 +11,8 @@ PKG_NAME:=libdaq PKG_VERSION:=2.0.4 PKG_RELEASE:=1 -PKG_SOURCE_URL:=https://www.snort.org/downloads/snort/ +PKG_SOURCE_URL:=https://www.snort.org/downloads/snort/ \ + @SF/snort PKG_SOURCE:=daq-$(PKG_VERSION).tar.gz PKG_MD5SUM:=65e51d72e9d5d8b397e192e4e5857eff PKG_BUILD_DIR:=$(BUILD_DIR)/daq-$(PKG_VERSION) From 8b58c7f207da136350ac396bbd24af853082c983 Mon Sep 17 00:00:00 2001 From: Othmar Truniger Date: Wed, 20 May 2015 19:31:48 +0200 Subject: [PATCH 418/681] knxd: bump to new version Signed-off-by: Othmar Truniger --- net/knxd/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/net/knxd/Makefile b/net/knxd/Makefile index b9ce06d8b..152edd75f 100644 --- a/net/knxd/Makefile +++ b/net/knxd/Makefile @@ -11,12 +11,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=knxd -PKG_VERSION=2015-03-31-$(PKG_SOURCE_VERSION) +PKG_VERSION=2015-05-20-$(PKG_SOURCE_VERSION) PKG_RELEASE:=1 PKG_SOURCE_PROTO:=git PKG_SOURCE_URL:=https://github.com/knxd/knxd.git -PKG_SOURCE_VERSION:=2c6c6732a684dffb87b391ea92cccdf07c8385b8 +PKG_SOURCE_VERSION:=30d490e15dfc3cedffc891c62eaa03c918f8efed PKG_SOURCE_SUBDIR:=$(PKG_NAME) PKG_SOURCE:=$(PKG_NAME)-$(PKG_SOURCE_VERSION).tar.gz From 78c36dfdd6498c94da0ebabdeb4e077a5e72b52d Mon Sep 17 00:00:00 2001 From: Michael Heimpold Date: Wed, 20 May 2015 20:46:29 +0200 Subject: [PATCH 419/681] php5: update to 5.6.9 This fixes CVE-2006-7243, a multipart/form-data remote dos vulnerability, a heap buffer overflow in unpack and a integer overflow in ftp_genlist, which also results in a heap overflow. For more details, see http://php.net/ChangeLog-5.php#5.6.9 Also sync the timezone patch with latest version from Debian and adopt this patch for the changes in this php release. Refresh 950-Fix-dl-cross-compiling-issue.patch. Signed-off-by: Michael Heimpold --- lang/php5/Makefile | 6 +- ...bian_patches_use_embedded_timezonedb.patch | 144 ++++++++++-------- .../950-Fix-dl-cross-compiling-issue.patch | 23 ++- 3 files changed, 96 insertions(+), 77 deletions(-) diff --git a/lang/php5/Makefile b/lang/php5/Makefile index 2b6f4cad8..e5a1aa24d 100644 --- a/lang/php5/Makefile +++ b/lang/php5/Makefile @@ -8,8 +8,8 @@ include $(TOPDIR)/rules.mk PKG_NAME:=php -PKG_VERSION:=5.6.8 -PKG_RELEASE:=2 +PKG_VERSION:=5.6.9 +PKG_RELEASE:=1 PKG_MAINTAINER:=W. Michael Petullo @@ -18,7 +18,7 @@ PKG_LICENSE_FILES:=LICENSE PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 PKG_SOURCE_URL:=http://www.php.net/distributions/ -PKG_MD5SUM:=a5a6df33aade0cb5425e4374e3832f0b +PKG_MD5SUM:=561f37377833772ace776143c5687884 PKG_FIXUP:=libtool autoreconf PKG_BUILD_PARALLEL:=1 diff --git a/lang/php5/patches/102-debian_patches_use_embedded_timezonedb.patch b/lang/php5/patches/102-debian_patches_use_embedded_timezonedb.patch index 438274aa1..4b5ff5b62 100644 --- a/lang/php5/patches/102-debian_patches_use_embedded_timezonedb.patch +++ b/lang/php5/patches/102-debian_patches_use_embedded_timezonedb.patch @@ -1,12 +1,13 @@ - Add support for use of the system timezone database, rather than embedding a copy. Discussed upstream but was not desired. History: -r9: fix another compile error without --with-system-tzdata configured +r11: adopted to php 5.6.9 +r10: make timezone case insensitive +r9: fix another compile error without --with-system-tzdata configured (Michael Heimpold) r8: fix compile error without --with-system-tzdata configured r7: improve check for valid timezone id to exclude directories -r6: fix fd leak in r5, fix country code/BC flag use in +r6: fix fd leak in r5, fix country code/BC flag use in. timezone_identifiers_list() using system db, fix use of PECL timezonedb to override system db, r5: reverts addition of "System/Localtime" fake tzname. @@ -17,10 +18,17 @@ r3: fix a crash if /usr/share/zoneinfo doesn't exist (Raphael Geissert) r2: add filesystem trawl to set up name alias index r1: initial revision ---- a/ext/date/lib/parse_tz.c -+++ b/ext/date/lib/parse_tz.c -@@ -20,6 +20,16 @@ +diff -Naur php-5.6.9.orig/ext/date/lib/parse_tz.c php-5.6.9/ext/date/lib/parse_tz.c +--- php-5.6.9.orig/ext/date/lib/parse_tz.c 2015-05-14 01:13:33.000000000 +0200 ++++ php-5.6.9/ext/date/lib/parse_tz.c 2015-05-18 22:40:55.000000000 +0200 +@@ -18,8 +18,22 @@ + + /* $Id$ */ ++#ifndef PATH_MAX ++#define PATH_MAX 4096 ++#endif ++ #include "timelib.h" +#ifdef HAVE_SYSTEM_TZDATA @@ -36,7 +44,7 @@ r1: initial revision #include #ifdef HAVE_LOCALE_H -@@ -31,7 +41,12 @@ +@@ -31,7 +45,12 @@ #else #include #endif @@ -49,25 +57,19 @@ r1: initial revision #if (defined(__APPLE__) || defined(__APPLE_CC__)) && (defined(__BIG_ENDIAN__) || defined(__LITTLE_ENDIAN__)) # if defined(__LITTLE_ENDIAN__) -@@ -51,9 +66,14 @@ - - static void read_preamble(const unsigned char **tzf, timelib_tzinfo *tz) +@@ -53,6 +72,11 @@ { -- /* skip ID */ -- *tzf += 4; -- -+ if (memcmp(tzf, "TZif", 4) == 0) { -+ *tzf += 20; -+ return; -+ } -+ -+ /* skip ID */ -+ *tzf += 4; -+ - /* read BC flag */ - tz->bc = (**tzf == '\1'); - *tzf += 1; -@@ -256,7 +276,397 @@ void timelib_dump_tzinfo(timelib_tzinfo + uint32_t version; + ++ if (memcmp(tzf, "TZif", 4) == 0) { ++ *tzf += 20; ++ return -1; ++ } ++ + /* read ID */ + version = (*tzf)[3] - '0'; + *tzf += 4; +@@ -296,7 +320,406 @@ } } @@ -81,7 +83,7 @@ r1: initial revision +#endif + +/* System timezone database pointer. */ -+static const timelib_tzdb *timezonedb_system = NULL; ++static const timelib_tzdb *timezonedb_system; + +/* Hash table entry for the cache of the zone.tab mapping table. */ +struct location_info { @@ -99,13 +101,14 @@ r1: initial revision + * prevent too many collisions. */ +#define LOCINFO_HASH_SIZE (1021) + ++/* Compute a case insensitive hash of str */ +static uint32_t tz_hash(const char *str) +{ + const unsigned char *p = (const unsigned char *)str; + uint32_t hash = 5381; + int c; + -+ while ((c = *p++) != '\0') { ++ while ((c = tolower(*p++)) != '\0') { + hash = (hash << 5) ^ hash ^ c; + } + @@ -201,10 +204,10 @@ r1: initial revision + + if (*p == '#' || *p == '\0' || *p == '\n') + continue; -+ ++ + if (!isalpha(p[0]) || !isalpha(p[1]) || p[2] != '\t') + continue; -+ ++ + /* code => AA */ + code = p; + p[2] = 0; @@ -238,7 +241,7 @@ r1: initial revision + + if (*p == '\n' || *p == '\t') + *p = '\0'; -+ ++ + hash = tz_hash(name); + i = malloc(sizeof *i); + memcpy(i->code, code, 2); @@ -274,7 +277,7 @@ r1: initial revision + } + + return NULL; -+} ++} + +/* Filter out some non-tzdata files and the posix/right databases, if + * present. */ @@ -443,6 +446,14 @@ r1: initial revision + return NULL; + } + ++ if (system_location_table) { ++ const struct location_info *li; ++ if ((li = find_zone_info(system_location_table, timezone)) != NULL) { ++ /* Use the stored name to avoid case issue */ ++ timezone = li->name; ++ } ++ } ++ + snprintf(fname, sizeof fname, ZONEINFO_PREFIX "/%s", timezone); + + fd = open(fname, O_RDONLY); @@ -466,11 +477,11 @@ r1: initial revision { int left = 0, right = tzdb->index_size - 1; #ifdef HAVE_SETLOCALE -@@ -295,36 +705,128 @@ static int seek_to_tz_position(const uns +@@ -335,21 +758,90 @@ return 0; } -+static int seek_to_tz_position(const unsigned char **tzf, char *timezone, ++static int seek_to_tz_position(const unsigned char **tzf, char *timezone, + char **map, size_t *maplen, + const timelib_tzdb *tzdb) +{ @@ -483,14 +494,14 @@ r1: initial revision + return 0; + } + -+ (*tzf) = (unsigned char *)orig ; ++ (*tzf) = (unsigned char *)orig; + *map = orig; -+ -+ return 1; ++ ++ return 1; + } -+ else ++ else +#endif -+ { ++ { + return inmem_seek_to_tz_position(tzf, timezone, tzdb); + } +} @@ -505,7 +516,7 @@ r1: initial revision + tmp->data = NULL; + create_zone_index(tmp); + system_location_table = create_location_table(); -+ fake_data_segment(tmp, system_location_table); ++ fake_data_segment(tmp, system_location_table); + timezonedb_system = tmp; + } + @@ -533,38 +544,49 @@ r1: initial revision - return (seek_to_tz_position(&tzf, timezone, tzdb)); + +#ifdef HAVE_SYSTEM_TZDATA -+ if (tzdb == timezonedb_system) { -+ char fname[PATH_MAX]; -+ struct stat st; -+ -+ if (timezone[0] == '\0' || strstr(timezone, "..") != NULL) { -+ return 0; -+ } -+ -+ snprintf(fname, sizeof fname, ZONEINFO_PREFIX "/%s", timezone); -+ -+ return stat(fname, &st) == 0 && is_valid_tzfile(&st); -+ } ++ if (tzdb == timezonedb_system) { ++ char fname[PATH_MAX]; ++ struct stat st; ++ ++ if (timezone[0] == '\0' || strstr(timezone, "..") != NULL) { ++ return 0; ++ } ++ ++ if (system_location_table) { ++ if (find_zone_info(system_location_table, timezone) != NULL) { ++ /* found in cache */ ++ return 1; ++ } ++ } ++ ++ snprintf(fname, sizeof fname, ZONEINFO_PREFIX "/%s", timezone); ++ ++ return stat(fname, &st) == 0 && is_valid_tzfile(&st); ++ } +#endif + + return (inmem_seek_to_tz_position(&tzf, timezone, tzdb)); } + static void skip_64bit_preamble(const unsigned char **tzf, timelib_tzinfo *tz) +@@ -374,10 +866,12 @@ timelib_tzinfo *timelib_parse_tzfile(char *timezone, const timelib_tzdb *tzdb) { const unsigned char *tzf; + char *memmap = NULL; + size_t maplen; timelib_tzinfo *tmp; + int version; - if (seek_to_tz_position(&tzf, timezone, tzdb)) { + if (seek_to_tz_position(&tzf, timezone, &memmap, &maplen, tzdb)) { tmp = timelib_tzinfo_ctor(timezone); - read_preamble(&tzf, tmp); - read_header(&tzf, tmp); - read_transistions(&tzf, tmp); - read_types(&tzf, tmp); + version = read_preamble(&tzf, tmp); +@@ -391,7 +885,34 @@ + skip_64bit_types(&tzf, tmp); + skip_posix_string(&tzf, tmp); + } - read_location(&tzf, tmp); + +#ifdef HAVE_SYSTEM_TZDATA @@ -576,12 +598,11 @@ r1: initial revision + + if ((li = find_zone_info(system_location_table, timezone)) != NULL) { + tmp->location.comments = strdup(li->comment); -+ strncpy(tmp->location.country_code, li->code, 2); ++ strncpy(tmp->location.country_code, li->code, 2); + tmp->location.longitude = li->longitude; + tmp->location.latitude = li->latitude; + tmp->bc = 1; -+ } -+ else { ++ } else { + strcpy(tmp->location.country_code, "??"); + tmp->bc = 0; + tmp->location.comments = strdup(""); @@ -598,9 +619,10 @@ r1: initial revision } else { tmp = NULL; } ---- a/ext/date/lib/timelib.m4 -+++ b/ext/date/lib/timelib.m4 -@@ -78,3 +78,17 @@ stdlib.h +diff -Naur php-5.6.9.orig/ext/date/lib/timelib.m4 php-5.6.9/ext/date/lib/timelib.m4 +--- php-5.6.9.orig/ext/date/lib/timelib.m4 2015-05-14 01:13:33.000000000 +0200 ++++ php-5.6.9/ext/date/lib/timelib.m4 2015-05-18 22:31:36.000000000 +0200 +@@ -78,3 +78,17 @@ dnl Check for strtoll, atoll AC_CHECK_FUNCS(strtoll atoll strftime) diff --git a/lang/php5/patches/950-Fix-dl-cross-compiling-issue.patch b/lang/php5/patches/950-Fix-dl-cross-compiling-issue.patch index 02b1f644c..22122ec82 100644 --- a/lang/php5/patches/950-Fix-dl-cross-compiling-issue.patch +++ b/lang/php5/patches/950-Fix-dl-cross-compiling-issue.patch @@ -1,7 +1,6 @@ -diff -u --recursive php-5.6.6-vanilla/configure.in php-5.6.6/configure.in ---- php-5.6.6-vanilla/configure.in 2015-02-26 22:10:51.865487530 -0500 -+++ php-5.6.6/configure.in 2015-02-26 22:29:59.043102135 -0500 -@@ -453,7 +453,10 @@ +--- a/configure.in ++++ b/configure.in +@@ -453,7 +453,10 @@ PHP_CHECK_FUNC(gethostname, nsl) PHP_CHECK_FUNC(gethostbyaddr, nsl) PHP_CHECK_FUNC(yp_get_default_domain, nsl) @@ -13,10 +12,9 @@ diff -u --recursive php-5.6.6-vanilla/configure.in php-5.6.6/configure.in if test "$ac_cv_func_dlopen" = "yes"; then AC_DEFINE(HAVE_LIBDL, 1, [ ]) fi -diff -u --recursive php-5.6.6-vanilla/ext/fileinfo/config.m4 php-5.6.6/ext/fileinfo/config.m4 ---- php-5.6.6-vanilla/ext/fileinfo/config.m4 2015-02-26 22:10:51.639487135 -0500 -+++ php-5.6.6/ext/fileinfo/config.m4 2015-02-26 22:22:47.645609128 -0500 -@@ -46,6 +46,10 @@ +--- a/ext/fileinfo/config.m4 ++++ b/ext/fileinfo/config.m4 +@@ -46,6 +46,10 @@ int main(void) AC_MSG_RESULT(no) AC_MSG_NOTICE(using libmagic strcasestr implementation) libmagic_sources="$libmagic_sources libmagic/strcasestr.c" @@ -27,10 +25,9 @@ diff -u --recursive php-5.6.6-vanilla/ext/fileinfo/config.m4 php-5.6.6/ext/filei ]) PHP_NEW_EXTENSION(fileinfo, fileinfo.c $libmagic_sources, $ext_shared,,-I@ext_srcdir@/libmagic) -diff -u --recursive php-5.6.6-vanilla/ext/opcache/config.m4 php-5.6.6/ext/opcache/config.m4 ---- php-5.6.6-vanilla/ext/opcache/config.m4 2015-02-26 22:10:51.790487399 -0500 -+++ php-5.6.6/ext/opcache/config.m4 2015-02-26 22:34:19.240414394 -0500 -@@ -341,7 +341,14 @@ +--- a/ext/opcache/config.m4 ++++ b/ext/opcache/config.m4 +@@ -227,7 +227,14 @@ AC_TRY_RUN([ flock_type=linux AC_DEFINE([HAVE_FLOCK_LINUX], [], [Struct flock is Linux-type]) AC_MSG_RESULT("yes") @@ -46,7 +43,7 @@ diff -u --recursive php-5.6.6-vanilla/ext/opcache/config.m4 php-5.6.6/ext/opcach AC_MSG_CHECKING("whether flock struct is BSD ordered") AC_TRY_RUN([ -@@ -357,7 +364,12 @@ +@@ -243,7 +250,12 @@ AC_TRY_RUN([ flock_type=bsd AC_DEFINE([HAVE_FLOCK_BSD], [], [Struct flock is BSD-type]) AC_MSG_RESULT("yes") From 72322f24ae7bba6f8157fa65926d5b123e8403db Mon Sep 17 00:00:00 2001 From: Alexander Ryzhov Date: Thu, 23 Apr 2015 13:43:17 +0000 Subject: [PATCH 420/681] lsof: respect IPv6 settings Signed-off-by: Alexander Ryzhov --- utils/lsof/Makefile | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/utils/lsof/Makefile b/utils/lsof/Makefile index 75b2c5479..adf0d0478 100644 --- a/utils/lsof/Makefile +++ b/utils/lsof/Makefile @@ -10,7 +10,7 @@ include $(INCLUDE_DIR)/kernel.mk PKG_NAME:=lsof PKG_VERSION:=4.86 -PKG_RELEASE:=2 +PKG_RELEASE:=3 PKG_SOURCE:=$(PKG_NAME)_$(PKG_VERSION)+dfsg.orig.tar.gz PKG_SOURCE_URL:=http://ftp2.de.debian.org/debian/pool/main/l/lsof @@ -32,9 +32,15 @@ define Package/lsof URL:=http://people.freebsd.org/~abe/ endef +ifeq ($(CONFIG_IPV6),y) + LINUX_CLIB_IPV6="-DHASIPv6" +else + LINUX_CLIB_IPV6= +endif + define Build/Configure cd $(PKG_BUILD_DIR); \ - LINUX_CLIB="-DGLIBCV=2" \ + LINUX_CLIB="-DGLIBCV=2 $(LINUX_CLIB_IPV6)" \ LSOF_CC="$(TARGET_CC)" \ LSOF_INCLUDE="-I$(STAGING_DIR)/usr/include" \ LSOF_VSTR="$(LINUX_VERSION)" \ From 84d27dccef99fbc384551d5c40d6b6a2894e0552 Mon Sep 17 00:00:00 2001 From: Alexander Ryzhov Date: Thu, 23 Apr 2015 13:47:57 +0000 Subject: [PATCH 421/681] libtorrent: respect IPv6 settings Signed-off-by: Alexander Ryzhov --- libs/libtorrent/Makefile | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/libs/libtorrent/Makefile b/libs/libtorrent/Makefile index f6673acaa..2001235a9 100644 --- a/libs/libtorrent/Makefile +++ b/libs/libtorrent/Makefile @@ -8,7 +8,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=libtorrent -PKG_VERSION:=0.13.4-git-0 +PKG_VERSION:=0.13.4-git-1 PKG_RELEASE=$(PKG_SOURCE_VERSION) PKG_SOURCE_PROTO:=git @@ -49,7 +49,8 @@ CONFIGURE_ARGS+= \ --disable-debug \ --enable-openssl \ --disable-instrumentation \ - --with-zlib=$(STAGING_DIR)/usr + --with-zlib=$(STAGING_DIR)/usr \ + $(call autoconf_bool,CONFIG_IPV6,ipv6) define Build/InstallDev $(INSTALL_DIR) $(1)/usr/include From 3dd3316f67538e22672e4e8e365dd306b0257840 Mon Sep 17 00:00:00 2001 From: Alexander Ryzhov Date: Thu, 23 Apr 2015 13:50:30 +0000 Subject: [PATCH 422/681] mtr: respect IPv6 settings Signed-off-by: Alexander Ryzhov --- net/mtr/Makefile | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/net/mtr/Makefile b/net/mtr/Makefile index 7214991be..9498baf0e 100644 --- a/net/mtr/Makefile +++ b/net/mtr/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=mtr PKG_VERSION:=0.86 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=ftp://ftp.bitwizard.nl/mtr @@ -46,6 +46,7 @@ endef CONFIGURE_ARGS += \ --without-gtk \ --without-glib \ + $(call autoconf_bool,CONFIG_IPV6,ipv6) define Build/Configure (cd $(PKG_BUILD_DIR); touch \ From b0f2853135188c59378785996d446bc72597a4d1 Mon Sep 17 00:00:00 2001 From: Alexander Ryzhov Date: Thu, 23 Apr 2015 13:51:42 +0000 Subject: [PATCH 423/681] nfs-kernel-server: respect IPv6 settings Signed-off-by: Alexander Ryzhov --- net/nfs-kernel-server/Makefile | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/net/nfs-kernel-server/Makefile b/net/nfs-kernel-server/Makefile index fb67bb4ea..3371f97af 100644 --- a/net/nfs-kernel-server/Makefile +++ b/net/nfs-kernel-server/Makefile @@ -8,7 +8,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=nfs-kernel-server PKG_VERSION:=1.3.2 -PKG_RELEASE:=2 +PKG_RELEASE:=3 PKG_MD5SUM:=1e2f3c1ed468dee02d00c534c002ea10 PKG_SOURCE_URL:=@SF/nfs @@ -77,12 +77,12 @@ CONFIGURE_ARGS += \ --disable-gss \ --disable-nfsv4 \ --disable-nfsv41 \ - --disable-ipv6 \ --enable-static \ --enable-shared \ --disable-caps \ --disable-tirpc \ - --disable-nfsdcld + --disable-nfsdcld \ + $(call autoconf_bool,CONFIG_IPV6,ipv6) CONFIGURE_VARS += \ libblkid_cv_is_recent=yes \ From 7343322bd09d898b55cf69cddb7fa434c3da9e00 Mon Sep 17 00:00:00 2001 From: Alexander Ryzhov Date: Thu, 23 Apr 2015 13:52:50 +0000 Subject: [PATCH 424/681] rtorrent: respect IPv6 settings Signed-off-by: Alexander Ryzhov --- net/rtorrent/Makefile | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/net/rtorrent/Makefile b/net/rtorrent/Makefile index af644100d..bba6ddee0 100644 --- a/net/rtorrent/Makefile +++ b/net/rtorrent/Makefile @@ -8,7 +8,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=rtorrent -PKG_VERSION:=0.9.4-git-0 +PKG_VERSION:=0.9.4-git-1 PKG_RELEASE=$(PKG_SOURCE_VERSION) PKG_SOURCE_PROTO:=git @@ -72,7 +72,8 @@ TARGET_LDFLAGS += -lz -lpthread -Wl,-rpath-link=$(STAGING_DIR)/usr/lib CONFIGURE_ARGS+= \ --enable-shared \ --disable-static \ - --disable-debug + --disable-debug \ + $(call autoconf_bool,CONFIG_IPV6,ipv6) ifeq ($(BUILD_VARIANT),rpc) CONFIGURE_ARGS += \ From ca8eecc665d0bc54e47ed73086046eaff18f1f5e Mon Sep 17 00:00:00 2001 From: Alexander Ryzhov Date: Thu, 21 May 2015 06:15:08 +0000 Subject: [PATCH 425/681] apr: respect IPv6 settings Signed-off-by: Alexander Ryzhov --- libs/apr/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libs/apr/Makefile b/libs/apr/Makefile index 924db85b4..d61d31f9e 100644 --- a/libs/apr/Makefile +++ b/libs/apr/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=apr PKG_VERSION:=1.5.2 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 PKG_SOURCE_URL:=http://mirrors.ibiblio.org/apache/apr/ @@ -38,7 +38,7 @@ TARGET_CPPFLAGS += -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE CONFIGURE_ARGS += \ --with-devrandom=/dev/urandom \ --disable-dso \ - --enable-ipv6 + $(call autoconf_bool,CONFIG_IPV6,ipv6) # XXX: ac_cv_sizeof_struct_iovec=1 is just to trick configure CONFIGURE_VARS += \ From 10e7191a6f03f75e9a08b5eb493927e60078156b Mon Sep 17 00:00:00 2001 From: Alexander Ryzhov Date: Thu, 21 May 2015 06:17:05 +0000 Subject: [PATCH 426/681] ruby: respect IPv6 settings Signed-off-by: Alexander Ryzhov --- lang/ruby/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lang/ruby/Makefile b/lang/ruby/Makefile index eb90e3563..54aaadc29 100644 --- a/lang/ruby/Makefile +++ b/lang/ruby/Makefile @@ -11,7 +11,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=ruby PKG_VERSION:=2.2.2 -PKG_RELEASE:=2 +PKG_RELEASE:=3 PKG_LIBVER:=2.2 @@ -815,7 +815,7 @@ CONFIGURE_ARGS += \ --enable-shared \ --enable-static \ --disable-rpath \ - --enable-ipv6 \ + $(call autoconf_bool,CONFIG_IPV6,ipv6) \ --disable-install-doc \ --disable-install-capi \ --with-ruby-version=minor \ From 0a8f277853e94570e531844d0f186deea35347a8 Mon Sep 17 00:00:00 2001 From: Rupan Date: Thu, 21 May 2015 11:00:11 +0200 Subject: [PATCH 427/681] lftp: updated to 4.6.2 Signed-off-by: Federico Di Marco fededim@gmail.com --- net/lftp/Makefile | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/net/lftp/Makefile b/net/lftp/Makefile index 8a4819cc0..33e72f042 100644 --- a/net/lftp/Makefile +++ b/net/lftp/Makefile @@ -8,11 +8,13 @@ include $(TOPDIR)/rules.mk PKG_NAME:=lftp -PKG_VERSION:=4.6.0 +PKG_VERSION:=4.6.2 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=http://lftp.yar.ru/ftp \ http://lftp.cybermirror.org \ http://lftp.cybermirror.org/old -PKG_MD5SUM:=fc5f4e3b45c9011a193eb8c0c12eb2eb +PKG_MD5SUM:=487c064ee1bd732e5f95928e530435a8 + + PKG_LICENSE:=GPL-3.0+ PKG_LICENSE_FILES:=COPYING From 22b220bc774b3b2c789bcfb5fe93a6fae913e2af Mon Sep 17 00:00:00 2001 From: Guillaume Date: Wed, 20 May 2015 23:58:56 +0200 Subject: [PATCH 428/681] protobuf: Add licensing info and update copyright MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Guillaume Déflache --- libs/protobuf/Makefile | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libs/protobuf/Makefile b/libs/protobuf/Makefile index e1d99f67a..ceb304828 100644 --- a/libs/protobuf/Makefile +++ b/libs/protobuf/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2007 OpenWrt.org +# Copyright (C) 2007-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -15,6 +15,9 @@ PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 PKG_SOURCE_URL:=http://protobuf.googlecode.com/files PKG_MD5SUM:=a72001a9067a4c2c4e0e836d0f92ece4 +PKG_LICENSE:=BSD-3-Clause +PKG_LICENSE_FILES:=LICENSE + PKG_BUILD_DEPENDS:=protobuf/host PKG_USE_MIPS16:=0 From 869bab445d95249b090ee196269231427876c01a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Guillaume=20D=C3=A9flache?= Date: Tue, 19 May 2015 17:26:17 +0200 Subject: [PATCH 429/681] protobuf: Update version to 2.6.1 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Unbroke MIPS support which got entirely lost since the upgrade from 2.4.1: now all ISAs should work (MIPS1 would need kernel emulation though, untested) - Fixed host installation which was broken on all targets - Updated source origin to github and related variables - Kept mipseb patch exception and MIPS16:=0 exclusion (needed for BB and CC compilation) Only tested on a ZyXEL NBG6716 router which is MIPS32 (MIPS74Kc), ar71xx target. Signed-off-by: Guillaume Déflache --- libs/protobuf/Makefile | 18 +++++------------- libs/protobuf/patches/001-mipseb-compile.patch | 18 +++++++++--------- .../patches/003-mips2andHigher-compile.patch | 11 +++++++++++ 3 files changed, 25 insertions(+), 22 deletions(-) create mode 100644 libs/protobuf/patches/003-mips2andHigher-compile.patch diff --git a/libs/protobuf/Makefile b/libs/protobuf/Makefile index ceb304828..4f45183e2 100644 --- a/libs/protobuf/Makefile +++ b/libs/protobuf/Makefile @@ -8,18 +8,18 @@ include $(TOPDIR)/rules.mk PKG_NAME:=protobuf -PKG_VERSION:=2.5.0 +PKG_VERSION:=2.6.1 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 -PKG_SOURCE_URL:=http://protobuf.googlecode.com/files -PKG_MD5SUM:=a72001a9067a4c2c4e0e836d0f92ece4 +PKG_SOURCE_URL:=https://github.com/google/protobuf/releases/download/v$(PKG_VERSION) +PKG_MD5SUM:=11aaac2d704eef8efd1867a807865d85 PKG_LICENSE:=BSD-3-Clause PKG_LICENSE_FILES:=LICENSE PKG_BUILD_DEPENDS:=protobuf/host -PKG_USE_MIPS16:=0 +PKG_USE_MIPS16:=0# MIPS16 prevents protobuf's usage of the 'sync' asm-opcode PKG_INSTALL:=1 @@ -41,15 +41,7 @@ define Package/protobuf/description of its internal RPC protocols and file formats. endef -define Host/Compile - $(MAKE) -C $(HOST_BUILD_DIR) -endef - -define Host/Install - $(MAKE) -C $(HOST_BUILD_DIR) install -endef - -CONFIGURE_ARGS += --with-protoc=$(HOST_BUILD_DIR)/src/protoc +CONFIGURE_ARGS += --with-protoc=$(STAGING_DIR_HOST)/bin/protoc define Build/InstallDev $(INSTALL_DIR) \ diff --git a/libs/protobuf/patches/001-mipseb-compile.patch b/libs/protobuf/patches/001-mipseb-compile.patch index 6eb059000..f57683396 100644 --- a/libs/protobuf/patches/001-mipseb-compile.patch +++ b/libs/protobuf/patches/001-mipseb-compile.patch @@ -1,11 +1,11 @@ ---- a/src/google/protobuf/stubs/platform_macros.h -+++ b/src/google/protobuf/stubs/platform_macros.h -@@ -49,7 +49,7 @@ - #elif defined(__ARMEL__) - #define GOOGLE_PROTOBUF_ARCH_ARM 1 - #define GOOGLE_PROTOBUF_ARCH_32_BIT 1 +--- - 2015-05-19 16:27:29.770936016 +0200 ++++ protobuf-2.6.1/src/google/protobuf/stubs/platform_macros.h 2015-05-19 13:49:52.115444643 +0200 +@@ -55,7 +55,7 @@ + #elif defined(__aarch64__) + #define GOOGLE_PROTOBUF_ARCH_AARCH64 1 + #define GOOGLE_PROTOBUF_ARCH_64_BIT 1 -#elif defined(__MIPSEL__) +#elif defined(__MIPSEL__) || defined(__MIPSEB__) - #define GOOGLE_PROTOBUF_ARCH_MIPS 1 - #define GOOGLE_PROTOBUF_ARCH_32_BIT 1 - #elif defined(__pnacl__) + #if defined(__LP64__) + #define GOOGLE_PROTOBUF_ARCH_MIPS64 1 + #define GOOGLE_PROTOBUF_ARCH_64_BIT 1 diff --git a/libs/protobuf/patches/003-mips2andHigher-compile.patch b/libs/protobuf/patches/003-mips2andHigher-compile.patch new file mode 100644 index 000000000..df9792894 --- /dev/null +++ b/libs/protobuf/patches/003-mips2andHigher-compile.patch @@ -0,0 +1,11 @@ +--- - 2015-05-19 16:29:09.614344473 +0200 ++++ protobuf-2.6.1/src/google/protobuf/stubs/atomicops_internals_mips_gcc.h 2015-05-19 13:49:52.127442746 +0200 +@@ -150,7 +150,7 @@ + } + + inline void MemoryBarrier() { +- __asm__ __volatile__("sync" : : : "memory"); ++ __asm__ __volatile__(".set mips2; sync; .set mips0" : : : "memory"); + } + + inline void Acquire_Store(volatile Atomic32* ptr, Atomic32 value) { From 87f1259fda889cc9fc9399cb3e49c1f82957ac15 Mon Sep 17 00:00:00 2001 From: Ted Hess Date: Thu, 21 May 2015 16:02:31 -0400 Subject: [PATCH 430/681] vim: Fix false broken package status (buildbot) Signed-off-by: Ted Hess --- utils/vim/patches/002-remove_helptags_generation.patch | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 utils/vim/patches/002-remove_helptags_generation.patch diff --git a/utils/vim/patches/002-remove_helptags_generation.patch b/utils/vim/patches/002-remove_helptags_generation.patch new file mode 100644 index 000000000..051c8dac8 --- /dev/null +++ b/utils/vim/patches/002-remove_helptags_generation.patch @@ -0,0 +1,10 @@ +--- a/runtime/doc/Makefile ++++ b/runtime/doc/Makefile +@@ -310,7 +310,6 @@ all: tags vim.man evim.man vimdiff.man v + # Use Vim to generate the tags file. Can only be used when Vim has been + # compiled and installed. Supports multiple languages. + vimtags: $(DOCS) +- $(VIMEXE) -u NONE -esX -c "helptags ++t ." -c quit + + # Use "doctags" to generate the tags file. Only works for English! + tags: doctags $(DOCS) From 6c004eb0a2707166399af0465fe2f58797d6199f Mon Sep 17 00:00:00 2001 From: Martin Johansson Date: Thu, 21 May 2015 20:56:29 +0200 Subject: [PATCH 431/681] umurmur: Update to 0.2.16. Also fix build breakage since PolarSSL/MbedTLS's version module was disabled. Signed-off-by: Martin Johansson --- net/umurmur/Makefile | 8 ++++---- ...me-check-for-POLARSSL_VERSION_FEATURES.patch | 17 +++++++++++++++++ 2 files changed, 21 insertions(+), 4 deletions(-) create mode 100644 net/umurmur/patches/10-Add-compile-time-check-for-POLARSSL_VERSION_FEATURES.patch diff --git a/net/umurmur/Makefile b/net/umurmur/Makefile index c7ada87be..27254233e 100644 --- a/net/umurmur/Makefile +++ b/net/umurmur/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2009-2014 OpenWrt.org +# Copyright (C) 2009-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -7,14 +7,14 @@ include $(TOPDIR)/rules.mk PKG_NAME:=umurmur -PKG_VERSION:=0.2.15 +PKG_VERSION:=0.2.16 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) -PKG_SOURCE_URL:=git://github.com/fatbob313/umurmur.git +PKG_SOURCE_URL:=git://github.com/umurmur/umurmur.git PKG_SOURCE_PROTO:=git -PKG_SOURCE_VERSION:=f66c0c3d630aaff1c4d589bc4d884067f00b6529 +PKG_SOURCE_VERSION:=0.2.16 PKG_INSTALL:=1 PKG_FIXUP:=autoreconf diff --git a/net/umurmur/patches/10-Add-compile-time-check-for-POLARSSL_VERSION_FEATURES.patch b/net/umurmur/patches/10-Add-compile-time-check-for-POLARSSL_VERSION_FEATURES.patch new file mode 100644 index 000000000..c8fcdc88a --- /dev/null +++ b/net/umurmur/patches/10-Add-compile-time-check-for-POLARSSL_VERSION_FEATURES.patch @@ -0,0 +1,17 @@ +diff --git a/src/ssli_polarssl.c b/src/ssli_polarssl.c +index a36ccb6..167637b 100644 +--- a/src/ssli_polarssl.c ++++ b/src/ssli_polarssl.c +@@ -225,8 +225,12 @@ void SSLi_init(void) + Log_fatal("Cannot open /dev/urandom"); + #endif + ++#ifdef POLARSSL_VERSION_FEATURES + version_get_string(verstring); + Log_info("PolarSSL library version %s initialized", verstring); ++#else ++ Log_info("PolarSSL library initialized"); ++#endif + } + + void SSLi_deinit(void) From 5fa4fc48844481c8dbfd4760e20311fe605cce71 Mon Sep 17 00:00:00 2001 From: Marcel Denia Date: Fri, 22 May 2015 07:16:26 +0200 Subject: [PATCH 432/681] bash: Update to 4.3.39 Signed-off-by: Marcel Denia --- utils/bash/Makefile | 4 +- .../patches/122-upstream-bash43-022.patch | 2 +- .../patches/134-upstream-bash43-034.patch | 74 +++++++++++++++++++ .../patches/135-upstream-bash43-035.patch | 48 ++++++++++++ .../patches/136-upstream-bash43-036.patch | 48 ++++++++++++ .../patches/137-upstream-bash43-037.patch | 38 ++++++++++ .../patches/138-upstream-bash43-038.patch | 67 +++++++++++++++++ .../patches/139-upstream-bash43-039.patch | 52 +++++++++++++ 8 files changed, 330 insertions(+), 3 deletions(-) create mode 100644 utils/bash/patches/134-upstream-bash43-034.patch create mode 100644 utils/bash/patches/135-upstream-bash43-035.patch create mode 100644 utils/bash/patches/136-upstream-bash43-036.patch create mode 100644 utils/bash/patches/137-upstream-bash43-037.patch create mode 100644 utils/bash/patches/138-upstream-bash43-038.patch create mode 100644 utils/bash/patches/139-upstream-bash43-039.patch diff --git a/utils/bash/Makefile b/utils/bash/Makefile index df97e097f..9586da5c5 100644 --- a/utils/bash/Makefile +++ b/utils/bash/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2007-2014 OpenWrt.org +# Copyright (C) 2007-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -10,7 +10,7 @@ include $(TOPDIR)/rules.mk BASE_VERSION:=4.3 PKG_NAME:=bash -PKG_VERSION:=$(BASE_VERSION).33 +PKG_VERSION:=$(BASE_VERSION).39 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(BASE_VERSION).tar.gz diff --git a/utils/bash/patches/122-upstream-bash43-022.patch b/utils/bash/patches/122-upstream-bash43-022.patch index 4762be2a9..1ee8f13a1 100644 --- a/utils/bash/patches/122-upstream-bash43-022.patch +++ b/utils/bash/patches/122-upstream-bash43-022.patch @@ -17,7 +17,7 @@ Patch (apply with `patch -p0'): --- a/execute_cmd.c +++ b/execute_cmd.c -@@ -2409,7 +2409,16 @@ execute_pipeline (command, asynchronous, +@@ -2413,7 +2413,16 @@ execute_pipeline (command, asynchronous, #endif lstdin = wait_for (lastpid); #if defined (JOB_CONTROL) diff --git a/utils/bash/patches/134-upstream-bash43-034.patch b/utils/bash/patches/134-upstream-bash43-034.patch new file mode 100644 index 000000000..d3c4f8f1d --- /dev/null +++ b/utils/bash/patches/134-upstream-bash43-034.patch @@ -0,0 +1,74 @@ + BASH PATCH REPORT + ================= + +Bash-Release: 4.3 +Patch-ID: bash43-034 + +Bug-Reported-by: Dreamcat4 +Bug-Reference-ID: +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2015-05/msg00001.html + +Bug-Description: + +If neither the -f nor -v options is supplied to unset, and a name argument is +found to be a function and unset, subsequent name arguments are not treated as +variables before attempting to unset a function by that name. + +Patch (apply with `patch -p0'): + +--- a/builtins/set.def ++++ b/builtins/set.def +@@ -751,9 +751,11 @@ unset_builtin (list) + WORD_LIST *list; + { + int unset_function, unset_variable, unset_array, opt, nameref, any_failed; ++ int global_unset_func, global_unset_var; + char *name; + + unset_function = unset_variable = unset_array = nameref = any_failed = 0; ++ global_unset_func = global_unset_var = 0; + + reset_internal_getopt (); + while ((opt = internal_getopt (list, "fnv")) != -1) +@@ -761,10 +763,10 @@ unset_builtin (list) + switch (opt) + { + case 'f': +- unset_function = 1; ++ global_unset_func = 1; + break; + case 'v': +- unset_variable = 1; ++ global_unset_var = 1; + break; + case 'n': + nameref = 1; +@@ -777,7 +779,7 @@ unset_builtin (list) + + list = loptend; + +- if (unset_function && unset_variable) ++ if (global_unset_func && global_unset_var) + { + builtin_error (_("cannot simultaneously unset a function and a variable")); + return (EXECUTION_FAILURE); +@@ -795,6 +797,9 @@ unset_builtin (list) + + name = list->word->word; + ++ unset_function = global_unset_func; ++ unset_variable = global_unset_var; ++ + #if defined (ARRAY_VARS) + unset_array = 0; + if (!unset_function && valid_array_reference (name)) +--- a/patchlevel.h ++++ b/patchlevel.h +@@ -25,6 +25,6 @@ + regexp `^#define[ ]*PATCHLEVEL', since that's what support/mkversion.sh + looks for to find the patch level (for the sccs version string). */ + +-#define PATCHLEVEL 33 ++#define PATCHLEVEL 34 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/utils/bash/patches/135-upstream-bash43-035.patch b/utils/bash/patches/135-upstream-bash43-035.patch new file mode 100644 index 000000000..4e614ce11 --- /dev/null +++ b/utils/bash/patches/135-upstream-bash43-035.patch @@ -0,0 +1,48 @@ + BASH PATCH REPORT + ================= + +Bash-Release: 4.3 +Patch-ID: bash43-035 + +Bug-Reported-by: +Bug-Reference-ID: +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2014-08/msg00045.html + +Bug-Description: + +A locale with a long name can trigger a buffer overflow and core dump. This +applies on systems that do not have locale_charset in libc, are not using +GNU libiconv, and are not using the libintl that ships with bash in lib/intl. + +Patch (apply with `patch -p0'): + +--- a/lib/sh/unicode.c ++++ b/lib/sh/unicode.c +@@ -78,13 +78,15 @@ stub_charset () + s = strrchr (locale, '.'); + if (s) + { +- strcpy (charsetbuf, s+1); ++ strncpy (charsetbuf, s+1, sizeof (charsetbuf) - 1); ++ charsetbuf[sizeof (charsetbuf) - 1] = '\0'; + t = strchr (charsetbuf, '@'); + if (t) + *t = 0; + return charsetbuf; + } +- strcpy (charsetbuf, locale); ++ strncpy (charsetbuf, locale, sizeof (charsetbuf) - 1); ++ charsetbuf[sizeof (charsetbuf) - 1] = '\0'; + return charsetbuf; + } + #endif +--- a/patchlevel.h ++++ b/patchlevel.h +@@ -25,6 +25,6 @@ + regexp `^#define[ ]*PATCHLEVEL', since that's what support/mkversion.sh + looks for to find the patch level (for the sccs version string). */ + +-#define PATCHLEVEL 34 ++#define PATCHLEVEL 35 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/utils/bash/patches/136-upstream-bash43-036.patch b/utils/bash/patches/136-upstream-bash43-036.patch new file mode 100644 index 000000000..198b662c3 --- /dev/null +++ b/utils/bash/patches/136-upstream-bash43-036.patch @@ -0,0 +1,48 @@ + BASH PATCH REPORT + ================= + +Bash-Release: 4.3 +Patch-ID: bash43-036 + +Bug-Reported-by: emanuelczirai@cryptolab.net +Bug-Reference-ID: +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2015-02/msg00071.html + +Bug-Description: + +When evaluating and setting integer variables, and the assignment fails to +create a variable (for example, when performing an operation on an array +variable with an invalid subscript), bash attempts to dereference a null +pointer, causing a segmentation violation. + +Patch (apply with `patch -p0'): + +--- a/variables.c ++++ b/variables.c +@@ -2833,10 +2833,12 @@ bind_int_variable (lhs, rhs) + #endif + v = bind_variable (lhs, rhs, 0); + +- if (v && isint) +- VSETATTR (v, att_integer); +- +- VUNSETATTR (v, att_invisible); ++ if (v) ++ { ++ if (isint) ++ VSETATTR (v, att_integer); ++ VUNSETATTR (v, att_invisible); ++ } + + return (v); + } +--- a/patchlevel.h ++++ b/patchlevel.h +@@ -25,6 +25,6 @@ + regexp `^#define[ ]*PATCHLEVEL', since that's what support/mkversion.sh + looks for to find the patch level (for the sccs version string). */ + +-#define PATCHLEVEL 35 ++#define PATCHLEVEL 36 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/utils/bash/patches/137-upstream-bash43-037.patch b/utils/bash/patches/137-upstream-bash43-037.patch new file mode 100644 index 000000000..946e9fe14 --- /dev/null +++ b/utils/bash/patches/137-upstream-bash43-037.patch @@ -0,0 +1,38 @@ + BASH PATCH REPORT + ================= + +Bash-Release: 4.3 +Patch-ID: bash43-037 + +Bug-Reported-by: Greg Wooledge +Bug-Reference-ID: <20150204144240.GN13956@eeg.ccf.org> +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2015-02/msg00007.html + +Bug-Description: + +If an associative array uses `@' or `*' as a subscript, `declare -p' produces +output that cannot be reused as input. + +Patch (apply with `patch -p0'): + +--- a/assoc.c ++++ b/assoc.c +@@ -436,6 +436,8 @@ assoc_to_assign (hash, quoted) + #if 1 + if (sh_contains_shell_metas (tlist->key)) + istr = sh_double_quote (tlist->key); ++ else if (ALL_ELEMENT_SUB (tlist->key[0]) && tlist->key[1] == '\0') ++ istr = sh_double_quote (tlist->key); + else + istr = tlist->key; + #else +--- a/patchlevel.h ++++ b/patchlevel.h +@@ -25,6 +25,6 @@ + regexp `^#define[ ]*PATCHLEVEL', since that's what support/mkversion.sh + looks for to find the patch level (for the sccs version string). */ + +-#define PATCHLEVEL 36 ++#define PATCHLEVEL 37 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/utils/bash/patches/138-upstream-bash43-038.patch b/utils/bash/patches/138-upstream-bash43-038.patch new file mode 100644 index 000000000..985784759 --- /dev/null +++ b/utils/bash/patches/138-upstream-bash43-038.patch @@ -0,0 +1,67 @@ + BASH PATCH REPORT + ================= + +Bash-Release: 4.3 +Patch-ID: bash43-038 + +Bug-Reported-by: worley@alum.mit.edu (Dale R. Worley) +Bug-Reference-ID: <201406100051.s5A0pCeB014978@hobgoblin.ariadne.com> +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2014-06/msg00028.html + +Bug-Description: + +There are a number of instances where `time' is not recognized as a reserved +word when the shell grammar says it should be. + +Patch (apply with `patch -p0'): + +--- a/parse.y ++++ b/parse.y +@@ -2818,11 +2818,16 @@ time_command_acceptable () + case AND_AND: + case OR_OR: + case '&': ++ case WHILE: + case DO: ++ case UNTIL: ++ case IF: + case THEN: ++ case ELIF: + case ELSE: + case '{': /* } */ +- case '(': /* ) */ ++ case '(': /* )( */ ++ case ')': /* only valid in case statement */ + case BANG: /* ! time pipeline */ + case TIME: /* time time pipeline */ + case TIMEOPT: /* time -p time pipeline */ +--- a/y.tab.c ++++ b/y.tab.c +@@ -5130,11 +5130,16 @@ time_command_acceptable () + case AND_AND: + case OR_OR: + case '&': ++ case WHILE: + case DO: ++ case UNTIL: ++ case IF: + case THEN: ++ case ELIF: + case ELSE: + case '{': /* } */ +- case '(': /* ) */ ++ case '(': /* )( */ ++ case ')': /* only valid in case statement */ + case BANG: /* ! time pipeline */ + case TIME: /* time time pipeline */ + case TIMEOPT: /* time -p time pipeline */ +--- a/patchlevel.h ++++ b/patchlevel.h +@@ -25,6 +25,6 @@ + regexp `^#define[ ]*PATCHLEVEL', since that's what support/mkversion.sh + looks for to find the patch level (for the sccs version string). */ + +-#define PATCHLEVEL 37 ++#define PATCHLEVEL 38 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/utils/bash/patches/139-upstream-bash43-039.patch b/utils/bash/patches/139-upstream-bash43-039.patch new file mode 100644 index 000000000..f8ad363f3 --- /dev/null +++ b/utils/bash/patches/139-upstream-bash43-039.patch @@ -0,0 +1,52 @@ + BASH PATCH REPORT + ================= + +Bash-Release: 4.3 +Patch-ID: bash43-039 + +Bug-Reported-by: SN +Bug-Reference-ID: <54E2554C.205@gazeta.pl> +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2015-02/msg00060.html + +Bug-Description: + +Using the output of `declare -p' when run in a function can result in variables +that are invisible to `declare -p'. This problem occurs when an assignment +builtin such as `declare' receives a quoted compound array assignment as one of +its arguments. + +Patch (apply with `patch -p0'): + +--- a/arrayfunc.c ++++ b/arrayfunc.c +@@ -404,6 +404,9 @@ assign_array_var_from_word_list (var, li + (*var->assign_func) (var, l->word->word, i, 0); + else + array_insert (a, i, l->word->word); ++ ++ VUNSETATTR (var, att_invisible); /* no longer invisible */ ++ + return var; + } + +@@ -634,6 +637,10 @@ assign_array_var_from_string (var, value + + if (nlist) + dispose_words (nlist); ++ ++ if (var) ++ VUNSETATTR (var, att_invisible); /* no longer invisible */ ++ + return (var); + } + +--- a/patchlevel.h ++++ b/patchlevel.h +@@ -25,6 +25,6 @@ + regexp `^#define[ ]*PATCHLEVEL', since that's what support/mkversion.sh + looks for to find the patch level (for the sccs version string). */ + +-#define PATCHLEVEL 38 ++#define PATCHLEVEL 39 + + #endif /* _PATCHLEVEL_H_ */ From 5b045bd1f19c2b7a78c72fa822a17933ab4b44c3 Mon Sep 17 00:00:00 2001 From: Rupan Date: Fri, 22 May 2015 17:29:03 +0200 Subject: [PATCH 433/681] lftp: added mirror directory old to avoid build disruption on new version releases Signed-off-by: Federico Di Marco fededim@gmail.com --- net/lftp/Makefile | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/net/lftp/Makefile b/net/lftp/Makefile index 33e72f042..01ea99820 100644 --- a/net/lftp/Makefile +++ b/net/lftp/Makefile @@ -11,7 +11,10 @@ PKG_NAME:=lftp PKG_VERSION:=4.6.2 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz -PKG_SOURCE_URL:=http://lftp.yar.ru/ftp \ http://lftp.cybermirror.org \ http://lftp.cybermirror.org/old +PKG_SOURCE_URL:=http://lftp.yar.ru/ftp \ + http://lftp.yar.ru/ftp/old \ + http://lftp.cybermirror.org \ + http://lftp.cybermirror.org/old PKG_MD5SUM:=487c064ee1bd732e5f95928e530435a8 From b0a605c1c355bc0d403be562c7ca24148b4029ef Mon Sep 17 00:00:00 2001 From: Jonathan Bennett Date: Thu, 21 May 2015 10:31:30 -0500 Subject: [PATCH 434/681] Fwknopd: Backport patch to enable keygen in fwknopd Signed-off-by: Jonathan Bennett --- net/fwknop/Makefile | 2 +- net/fwknop/patches/001-add-keygen.patch | 427 ++++++++++++++++++++++++ 2 files changed, 428 insertions(+), 1 deletion(-) create mode 100644 net/fwknop/patches/001-add-keygen.patch diff --git a/net/fwknop/Makefile b/net/fwknop/Makefile index 829b31c0c..13c2681f5 100644 --- a/net/fwknop/Makefile +++ b/net/fwknop/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=fwknop PKG_VERSION:=2.6.6 -PKG_RELEASE:=2 +PKG_RELEASE:=3 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 PKG_SOURCE_URL:=http://www.cipherdyne.org/fwknop/download diff --git a/net/fwknop/patches/001-add-keygen.patch b/net/fwknop/patches/001-add-keygen.patch new file mode 100644 index 000000000..bbc3d992f --- /dev/null +++ b/net/fwknop/patches/001-add-keygen.patch @@ -0,0 +1,427 @@ +diff --git a/CREDITS b/CREDITS +index de17d9e..38e2108 100644 +--- a/CREDITS ++++ b/CREDITS +@@ -1,5 +1,6 @@ + Jonathan Bennett + - Contributed OpenWRT support - see the extras/openwrt/ directory. ++ - Suggested the addition of the --key-gen option to fwknopd. + + Sebastien Jeanquier + - Assisted with getting fwknop included in BackTrack Linux - the choice +diff --git a/ChangeLog b/ChangeLog +index 21a5093..4daf008 100644 +--- a/ChangeLog ++++ b/ChangeLog +@@ -1,3 +1,8 @@ ++fwknop-2.6.7 (05//2015): ++ - Added --key-gen to fwknopd. This feature was suggested by Jonathan ++ Bennett, and will help with ease of use efforts. The first platform to ++ take advantage of this will likely be OpenWRT thanks to Jonathan. ++ + fwknop-2.6.6 (04/23/2015): + - [server] Add the ability for fwknopd to function as an generic SPA + gateway. This allows scenarios such as the fwknopd system providing DHCP +diff --git a/client/config_init.c b/client/config_init.c +index cdb233d..f0ae135 100644 +--- a/client/config_init.c ++++ b/client/config_init.c +@@ -199,7 +199,7 @@ static int critical_var_array[] = + }; + + /** +- * @brief Generate Rijndael + HMAC keys from /dev/random (base64 encoded) and exit. ++ * @brief Generate Rijndael + HMAC keys from /dev/urandom (base64 encoded). + * + * @param options FKO command line option structure + */ +diff --git a/client/fwknop_common.h b/client/fwknop_common.h +index aef20c4..c57db02 100644 +--- a/client/fwknop_common.h ++++ b/client/fwknop_common.h +@@ -69,8 +69,6 @@ + #define MAX_HOSTNAME_LEN 70 + #define MAX_URL_HOST_LEN 256 + #define MAX_URL_PATH_LEN 1024 +-#define MAX_KEY_LEN 128 +-#define MAX_B64_KEY_LEN 180 + + /* fwknop client configuration parameters and values + */ +@@ -156,10 +154,10 @@ typedef struct fko_cli_options + unsigned char use_gpg; + unsigned char use_gpg_agent; + unsigned char gpg_no_signing_pw; ++ unsigned char key_gen; + int time_offset_plus; + int time_offset_minus; + int fw_timeout; +- int key_gen; + + char use_rc_stanza[MAX_LINE_LEN]; + unsigned char got_named_stanza; +diff --git a/common/common.h b/common/common.h +index b63e7c2..c7b2e57 100644 +--- a/common/common.h ++++ b/common/common.h +@@ -157,6 +157,9 @@ enum { + #define MAX_GPG_KEY_ID 128 + #define MAX_USERNAME_LEN 30 + ++#define MAX_KEY_LEN 128 ++#define MAX_B64_KEY_LEN 180 ++ + /* Command line argument / argv handling + */ + #define MAX_CMDLINE_ARGS 30 /*!< should be way more than enough */ +diff --git a/doc/fwknop.man.asciidoc b/doc/fwknop.man.asciidoc +index 070ac77..efa99a7 100644 +--- a/doc/fwknop.man.asciidoc ++++ b/doc/fwknop.man.asciidoc +@@ -196,6 +196,11 @@ GENERAL OPTIONS + keys are generally more secure than passphrases that are typed in from the + command line. + ++*--key-gen-file*='':: ++ Write generated keys to the specified file. Note that the file is ++ overwritten if it already exists. If this option is not given, then ++ *--key-gen* writes the keys to stdout. ++ + *--key-len*='':: + Specify the number of bytes for a generated Rijndael key. The maximum size + is currently 128 bytes. +diff --git a/server/cmd_opts.h b/server/cmd_opts.h +index bc1eee1..d7a645c 100644 +--- a/server/cmd_opts.h ++++ b/server/cmd_opts.h +@@ -141,6 +141,10 @@ enum { + FW_LIST = 0x200, + FW_LIST_ALL, + FW_FLUSH, ++ KEY_GEN_FILE, ++ KEY_LEN, ++ HMAC_KEY_LEN, ++ HMAC_DIGEST_TYPE, + AFL_PKT_FILE, + GPG_HOME_DIR, + GPG_EXE_PATH, +@@ -178,7 +182,12 @@ static struct option cmd_opts[] = + {"fault-injection-tag", 1, NULL, FAULT_INJECTION_TAG}, + {"help", 0, NULL, 'h'}, + {"interface", 1, NULL, 'i'}, +- {"kill", 0, NULL, 'K'}, ++ {"key-gen", 0, NULL, 'k'}, ++ {"key-gen-file", 1, NULL, KEY_GEN_FILE }, ++ {"key-len", 1, NULL, KEY_LEN }, ++ {"hmac-key-len", 1, NULL, HMAC_KEY_LEN }, ++ {"hmac-digest-type", 1, NULL, HMAC_DIGEST_TYPE }, ++ {"kill", 0, NULL, 'K' }, + {"fw-flush", 0, NULL, FW_FLUSH }, + {"fw-list", 0, NULL, FW_LIST }, + {"fw-list-all", 0, NULL, FW_LIST_ALL }, +diff --git a/server/config_init.c b/server/config_init.c +index 0ddceee..2f1d293 100644 +--- a/server/config_init.c ++++ b/server/config_init.c +@@ -201,6 +201,69 @@ validate_int_var_ranges(fko_srv_options_t *opts) + return; + } + ++/** ++ * @brief Generate Rijndael + HMAC keys from /dev/urandom (base64 encoded). ++ * ++ * @param options FKO command line option structure ++ */ ++static void ++generate_keys(fko_srv_options_t *options) ++{ ++ char key_base64[MAX_B64_KEY_LEN+1]; ++ char hmac_key_base64[MAX_B64_KEY_LEN+1]; ++ ++ FILE *key_gen_file_ptr = NULL; ++ int res; ++ ++ /* Set defaults and validate for --key-gen mode ++ */ ++ if(options->key_len == 0) ++ options->key_len = FKO_DEFAULT_KEY_LEN; ++ ++ if(options->hmac_key_len == 0) ++ options->hmac_key_len = FKO_DEFAULT_HMAC_KEY_LEN; ++ ++ if(options->hmac_type == 0) ++ options->hmac_type = FKO_DEFAULT_HMAC_MODE; ++ ++ /* Zero out the key buffers */ ++ memset(key_base64, 0x00, sizeof(key_base64)); ++ memset(hmac_key_base64, 0x00, sizeof(hmac_key_base64)); ++ ++ /* Generate the key through libfko */ ++ res = fko_key_gen(key_base64, options->key_len, ++ hmac_key_base64, options->hmac_key_len, ++ options->hmac_type); ++ ++ if(res != FKO_SUCCESS) ++ { ++ log_msg(LOG_ERR, "%s: fko_key_gen: Error %i - %s", ++ MY_NAME, res, fko_errstr(res)); ++ clean_exit(options, NO_FW_CLEANUP, EXIT_FAILURE); ++ } ++ ++ if(options->key_gen_file[0] != '\0') ++ { ++ if ((key_gen_file_ptr = fopen(options->key_gen_file, "w")) == NULL) ++ { ++ log_msg(LOG_ERR, "Unable to create key gen file: %s: %s", ++ options->key_gen_file, strerror(errno)); ++ clean_exit(options, NO_FW_CLEANUP, EXIT_FAILURE); ++ } ++ fprintf(key_gen_file_ptr, "KEY_BASE64: %s\nHMAC_KEY_BASE64: %s\n", ++ key_base64, hmac_key_base64); ++ fclose(key_gen_file_ptr); ++ fprintf(stdout, "[+] Wrote Rijndael and HMAC keys to: %s", ++ options->key_gen_file); ++ } ++ else ++ { ++ fprintf(stdout, "KEY_BASE64: %s\nHMAC_KEY_BASE64: %s\n", ++ key_base64, hmac_key_base64); ++ } ++ clean_exit(options, NO_FW_CLEANUP, EXIT_SUCCESS); ++} ++ + /* Parse the config file... + */ + static void +@@ -427,7 +490,7 @@ validate_options(fko_srv_options_t *opts) + if(opts->config[CONF_ENABLE_DIGEST_PERSISTENCE] == NULL) + set_config_entry(opts, CONF_ENABLE_DIGEST_PERSISTENCE, + DEF_ENABLE_DIGEST_PERSISTENCE); +- ++ + /* Enable destination rule. + */ + if(opts->config[CONF_ENABLE_DESTINATION_RULE] == NULL) +@@ -928,8 +991,9 @@ config_init(fko_srv_options_t *opts, int argc, char **argv) + + /* First, scan the command-line args for -h/--help or an alternate + * configuration file. If we find an alternate config file, use it, +- * otherwise use the default. We also grab any override config files +- * as well. ++ * otherwise use the default. We also grab any override config files ++ * as well. In addition, we handle key generation here since this is ++ * independent of configuration parsing. + */ + while ((cmd_arg = getopt_long(argc, argv, + GETOPTS_OPTION_STRING, cmd_opts, &index)) != -1) { +@@ -952,6 +1016,45 @@ config_init(fko_srv_options_t *opts, int argc, char **argv) + if(got_override_config > 0) + break; + ++ case 'k': ++ opts->key_gen = 1; ++ break; ++ case KEY_GEN_FILE: ++ opts->key_gen = 1; ++ strlcpy(opts->key_gen_file, optarg, sizeof(opts->key_gen_file)); ++ break; ++ case KEY_LEN: /* used in --key-gen mode only */ ++ opts->key_len = strtol_wrapper(optarg, 1, ++ MAX_KEY_LEN, NO_EXIT_UPON_ERR, &is_err); ++ if(is_err != FKO_SUCCESS) ++ { ++ log_msg(LOG_ERR, ++ "Invalid key length '%s', must be in [%d-%d]", ++ optarg, 1, MAX_KEY_LEN); ++ clean_exit(opts, NO_FW_CLEANUP, EXIT_FAILURE); ++ } ++ break; ++ case HMAC_DIGEST_TYPE: /* used in --key-gen mode only */ ++ if((opts->hmac_type = hmac_digest_strtoint(optarg)) < 0) ++ { ++ log_msg(LOG_ERR, ++ "* Invalid hmac digest type: %s, use {md5,sha1,sha256,sha384,sha512}", ++ optarg); ++ clean_exit(opts, NO_FW_CLEANUP, EXIT_FAILURE); ++ } ++ break; ++ case HMAC_KEY_LEN: /* used in --key-gen mode only */ ++ opts->hmac_key_len = strtol_wrapper(optarg, 1, ++ MAX_KEY_LEN, NO_EXIT_UPON_ERR, &is_err); ++ if(is_err != FKO_SUCCESS) ++ { ++ log_msg(LOG_ERR, ++ "Invalid hmac key length '%s', must be in [%d-%d]", ++ optarg, 1, MAX_KEY_LEN); ++ clean_exit(opts, NO_FW_CLEANUP, EXIT_FAILURE); ++ } ++ break; ++ + /* Look for override configuration file arg. + */ + case 'O': +@@ -965,6 +1068,9 @@ config_init(fko_srv_options_t *opts, int argc, char **argv) + } + } + ++ if(opts->key_gen) ++ generate_keys(opts); ++ + /* If no alternate configuration file was specified, we use the + * default. + */ +diff --git a/server/fwknopd_common.h b/server/fwknopd_common.h +index ecf2a81..8c33eaa 100644 +--- a/server/fwknopd_common.h ++++ b/server/fwknopd_common.h +@@ -585,10 +585,14 @@ typedef struct fko_srv_options + unsigned char fw_list; /* List current firewall rules */ + unsigned char fw_list_all; /* List all current firewall rules */ + unsigned char fw_flush; /* Flush current firewall rules */ ++ unsigned char key_gen; /* Generate keys and exit */ ++ unsigned char exit_after_parse_config; /* Parse config and exit */ ++ ++ /* Operational flags ++ */ + unsigned char test; /* Test mode flag */ + unsigned char afl_fuzzing; /* SPA pkts from stdin for AFL fuzzing */ + unsigned char verbose; /* Verbose mode flag */ +- unsigned char exit_after_parse_config; /* Parse config and exit */ + unsigned char enable_udp_server; /* Enable UDP server mode */ + + unsigned char firewd_disable_check_support; /* Don't use firewall-cmd ... -C */ +@@ -605,6 +609,13 @@ typedef struct fko_srv_options + int tcp_server_pid; + int lock_fd; + ++ /* Values used in --key-gen mode only ++ */ ++ char key_gen_file[MAX_PATH_LEN]; ++ int key_len; ++ int hmac_key_len; ++ int hmac_type; ++ + #if USE_FILE_CACHE + struct digest_cache_list *digest_cache; /* In-memory digest cache list */ + #endif +diff --git a/test/tests/basic_operations.pl b/test/tests/basic_operations.pl +index f4dde2e..76a509d 100644 +--- a/test/tests/basic_operations.pl ++++ b/test/tests/basic_operations.pl +@@ -390,6 +390,14 @@ + 'exec_err' => $YES, + 'cmdline' => "$default_client_args --key-gen -K " . 'A'x1030 + }, ++ { ++ 'category' => 'basic operations', ++ 'subcategory' => 'server', ++ 'detail' => '--key-gen file path (-K) too long', ++ 'function' => \&generic_exec, ++ 'exec_err' => $YES, ++ 'cmdline' => "$fwknopdCmd --key-gen --key-gen-file " . 'A'x1030 ++ }, + + { + 'category' => 'basic operations', +diff --git a/test/tests/rijndael.pl b/test/tests/rijndael.pl +index 26aab6a..34af65e 100644 +--- a/test/tests/rijndael.pl ++++ b/test/tests/rijndael.pl +@@ -421,33 +421,6 @@ + 'key_file' => $cf{'rc_named_key'}, + }, + +- ### --key-gen tests +- { +- 'category' => 'Rijndael', +- 'subcategory' => 'client', +- 'detail' => '--key-gen', +- 'function' => \&generic_exec, +- 'cmdline' => "$fwknopCmd --key-gen", +- 'positive_output_matches' => [qr/^KEY_BASE64\:?\s\S{10}/, +- qw/HMAC_KEY_BASE64\:?\s\S{10}/], +- }, +- { +- 'category' => 'Rijndael', +- 'subcategory' => 'client', +- 'detail' => "--key-gen $uniq_keys key uniqueness", +- 'function' => \&key_gen_uniqueness, +- 'cmdline' => "$fwknopCmd --key-gen", ### no valgrind string (too slow for 100 client exec's) +- 'disable_valgrind' => $YES, +- }, +- { +- 'category' => 'Rijndael', +- 'subcategory' => 'client', +- 'detail' => '--key-gen to file', +- 'function' => \&generic_exec, +- 'cmdline' => "$fwknopCmd --key-gen --key-gen-file $key_gen_file", +- 'positive_output_matches' => [qr/Wrote.*\skeys/], +- }, +- + ### rc file tests + { + 'category' => 'Rijndael', +diff --git a/test/tests/rijndael_hmac.pl b/test/tests/rijndael_hmac.pl +index fc1a8af..fd80f04 100644 +--- a/test/tests/rijndael_hmac.pl ++++ b/test/tests/rijndael_hmac.pl +@@ -58,6 +58,59 @@ + 'exec_err' => $YES, + }, + ++ ### --key-gen tests ++ { ++ 'category' => 'Rijndael+HMAC', ++ 'subcategory' => 'client', ++ 'detail' => '--key-gen', ++ 'function' => \&generic_exec, ++ 'cmdline' => "$fwknopCmd --key-gen", ++ 'positive_output_matches' => [qr/^KEY_BASE64\:?\s\S{10}/, ++ qw/HMAC_KEY_BASE64\:?\s\S{10}/], ++ }, ++ { ++ 'category' => 'Rijndael+HMAC', ++ 'subcategory' => 'server', ++ 'detail' => '--key-gen', ++ 'function' => \&generic_exec, ++ 'cmdline' => "$fwknopdCmd --key-gen", ++ 'positive_output_matches' => [qr/^KEY_BASE64\:?\s\S{10}/, ++ qw/HMAC_KEY_BASE64\:?\s\S{10}/], ++ }, ++ { ++ 'category' => 'Rijndael+HMAC', ++ 'subcategory' => 'client', ++ 'detail' => "--key-gen $uniq_keys key uniqueness", ++ 'function' => \&key_gen_uniqueness, ++ 'cmdline' => "$fwknopCmd --key-gen", ### no valgrind string (too slow for 100 exec's) ++ 'disable_valgrind' => $YES, ++ }, ++ { ++ 'category' => 'Rijndael+HMAC', ++ 'subcategory' => 'server', ++ 'detail' => "--key-gen $uniq_keys key uniqueness", ++ 'function' => \&key_gen_uniqueness, ++ 'cmdline' => "$fwknopdCmd --key-gen", ### no valgrind string (too slow for 100 exec's) ++ 'disable_valgrind' => $YES, ++ }, ++ { ++ 'category' => 'Rijndael+HMAC', ++ 'subcategory' => 'client', ++ 'detail' => '--key-gen to file', ++ 'function' => \&generic_exec, ++ 'cmdline' => "$fwknopCmd --key-gen --key-gen-file $key_gen_file", ++ 'positive_output_matches' => [qr/Wrote.*\skeys/], ++ }, ++ { ++ 'category' => 'Rijndael+HMAC', ++ 'subcategory' => 'server', ++ 'detail' => '--key-gen to file', ++ 'function' => \&generic_exec, ++ 'cmdline' => "$fwknopdCmd --key-gen --key-gen-file $key_gen_file", ++ 'positive_output_matches' => [qr/Wrote.*\skeys/], ++ }, ++ ++ ### complete cycle tests + { + 'category' => 'Rijndael+HMAC', + 'subcategory' => 'client+server', From 01851966b8de69309fa2df53159c319fb8db505f Mon Sep 17 00:00:00 2001 From: Nikos Mavrogiannopoulos Date: Fri, 22 May 2015 21:56:00 +0200 Subject: [PATCH 435/681] ocserv: silence warnings and set group default value Signed-off-by: Nikos Mavrogiannopoulos --- net/ocserv/files/ocserv.init | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/net/ocserv/files/ocserv.init b/net/ocserv/files/ocserv.init index fe0718b3b..d4d014dd8 100644 --- a/net/ocserv/files/ocserv.init +++ b/net/ocserv/files/ocserv.init @@ -37,7 +37,7 @@ setup_config() { test $auth = "plain" && authsuffix="\[passwd=/var/etc/ocpasswd\]" dyndns="false" - hostname=`uci show ddns|grep domain|head -1|cut -d '=' -f 2 2>/dev/null` + hostname=`uci show ddns 2>/dev/null|grep domain|head -1|cut -d '=' -f 2` [ -n "$hostname" ] && dyndns="true" mkdir -p /var/etc @@ -67,10 +67,9 @@ setup_users() { local password config_get name $1 name - config_get group $1 group + config_get group $1 group '*' config_get password $1 password - [ -z "$group" ] && group='*' [ -z "$name" -o -z "$password" ] && return echo "$name:$group:$password" >> /var/etc/ocpasswd @@ -100,7 +99,7 @@ setup_dns() { start() { local hostname iface - hostname=`uci show ddns|grep domain|head -1|cut -d '=' -f 2 2>/dev/null` + hostname=`uci show ddns 2>/dev/null|grep domain|head -1|cut -d '=' -f 2` [ -z "$hostname" ] && hostname=`uci get system.@system[0].hostname 2>/dev/null` [ -f /etc/config/ocserv-dir/ca-key.pem ] && mv /etc/config/ocserv-dir/ca-key.pem /etc/ocserv/ca-key.pem From a7a015fb7222957264760c001aa0b38970a359a7 Mon Sep 17 00:00:00 2001 From: Christian Pointner Date: Fri, 22 May 2015 23:07:44 +0200 Subject: [PATCH 436/681] pps-tools: enable for Linux 3.18 Signed-off-by: Christian Pointner --- utils/pps-tools/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/utils/pps-tools/Makefile b/utils/pps-tools/Makefile index 93d0578dc..653f90fbc 100644 --- a/utils/pps-tools/Makefile +++ b/utils/pps-tools/Makefile @@ -26,7 +26,7 @@ define Package/pps-tools SECTION:=utils CATEGORY:=Utilities TITLE:=PPS-tools - DEPENDS:=@LINUX_3_10||@LINUX_3_13||@LINUX_3_14 + DEPENDS:=@LINUX_3_10||@LINUX_3_13||@LINUX_3_14||@LINUX_3_18 endef define Package/pps-tools/description From ae13b1441da30199ed91fc78f47673373fae6c90 Mon Sep 17 00:00:00 2001 From: Ian Leonard Date: Tue, 19 May 2015 23:48:24 -0700 Subject: [PATCH 437/681] ffmpeg: libffmpeg-audio-dec and -custom use integrated opus decoder For libffmpeg-audio-dec: Remove @DEVEL flag from libffmpeg-audio-dec. Reasoning for this is that choosing this package does not rquire any further action by the builder in what codecs or formats should be built in. libffmpeg-custom, the other libffmpeg to require @DEVEL, does need further interaction. Add @BUILD_PATENTED as at least one of the audio codecs is likely patent protected. Add ffmpeg's native Opus decoder to libffmpeg-audio-dec Remove libopus dependency to libffmpeg-audio-dec as libopus provides decode and encode support for Opus audio. Since FFmpeg can decode Opus audio on its own, and libffmpeg-audio-dec is intended for audio decoding, libopus is no longer required for Opus audio support. For libffmpeg-custom: Add in options for ffmpeg's integrated Opus decoder Signed-off-by: Ian Leonard --- multimedia/ffmpeg/Config.in | 11 +++++++++-- multimedia/ffmpeg/Makefile | 9 +++++---- 2 files changed, 14 insertions(+), 6 deletions(-) diff --git a/multimedia/ffmpeg/Config.in b/multimedia/ffmpeg/Config.in index 71c30d1ba..760dad6bf 100644 --- a/multimedia/ffmpeg/Config.in +++ b/multimedia/ffmpeg/Config.in @@ -60,11 +60,11 @@ config FFMPEG_CUSTOM_AUDIO_DEC_SUPPORT select FFMPEG_CUSTOM_DECODER_ape select FFMPEG_CUSTOM_DECODER_atrac3 select FFMPEG_CUSTOM_DECODER_flac - select FFMPEG_CUSTOM_SELECT_libopus select FFMPEG_CUSTOM_DECODER_mp2 select FFMPEG_CUSTOM_DECODER_mp3 select FFMPEG_CUSTOM_DECODER_mpc7 select FFMPEG_CUSTOM_DECODER_mpc8 + select FFMPEG_CUSTOM_DECODER_opus select FFMPEG_CUSTOM_DECODER_pcm_s16be select FFMPEG_CUSTOM_DECODER_pcm_s16le select FFMPEG_CUSTOM_SELECT_speex @@ -98,9 +98,10 @@ config FFMPEG_CUSTOM_AUDIO_DEC_SUPPORT select FFMPEG_CUSTOM_DEMUXER_wv select FFMPEG_CUSTOM_PARSER_aac select FFMPEG_CUSTOM_PARSER_aac_latm - select FFMPEG_CUSTOM_PARSER_flac select FFMPEG_CUSTOM_PARSER_ac3 + select FFMPEG_CUSTOM_PARSER_flac select FFMPEG_CUSTOM_PARSER_mpegaudio + select FFMPEG_CUSTOM_PARSER_opus select FFMPEG_CUSTOM_PROTOCOL_file select FFMPEG_CUSTOM_PROTOCOL_http select FFMPEG_CUSTOM_PROTOCOL_rtp @@ -229,6 +230,9 @@ config FFMPEG_CUSTOM_DECODER_mpc8 bool "Musepack 8" select FFMPEG_CUSTOM_DEMUXER_mpc8 +config FFMPEG_CUSTOM_DECODER_opus + bool "Opus" + config FFMPEG_CUSTOM_DECODER_pcm_s16be bool "PCM signed 16-bit big-endian" @@ -398,6 +402,9 @@ config FFMPEG_CUSTOM_PARSER_mpegvideo config FFMPEG_CUSTOM_PARSER_mpeg4video bool "MPEG-4 Video" +config FFMPEG_CUSTOM_PARSER_opus + bool "Opus" + comment "Protocols ---" config FFMPEG_CUSTOM_PROTOCOL_file diff --git a/multimedia/ffmpeg/Makefile b/multimedia/ffmpeg/Makefile index 5b100cf4d..9aac9a80e 100644 --- a/multimedia/ffmpeg/Makefile +++ b/multimedia/ffmpeg/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=ffmpeg PKG_VERSION:=2.6.3 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 PKG_SOURCE_URL:=http://ffmpeg.org/releases/ @@ -162,6 +162,7 @@ FFMPEG_AUDIO_DECODERS:= \ mp3* \ mpc7 \ mpc8 \ + opus \ pcm_* \ vorbis \ wavpack \ @@ -197,9 +198,10 @@ FFMPEG_AUDIO_DEMUXERS:= \ FFMPEG_AUDIO_PARSERS:= \ aac \ aac_latm \ - flac \ ac3 \ + flac \ mpegaudio \ + opus \ FFMPEG_AUDIO_PROTOCOLS:= \ file http icecast rtp tcp udp @@ -308,7 +310,7 @@ endef define Package/libffmpeg-audio-dec $(call Package/libffmpeg/Default) TITLE+= (audio) - DEPENDS+= @DEVEL +libopus +libspeex + DEPENDS+= @BUILD_PATENTED +libspeex VARIANT:=audio-dec endef @@ -462,7 +464,6 @@ ifeq ($(BUILD_VARIANT),audio-dec) $(call FFMPEG_ENABLE,demuxer,$(FFMPEG_AUDIO_DEMUXERS)) \ $(call FFMPEG_ENABLE,parser,$(FFMPEG_AUDIO_PARSERS)) \ $(call FFMPEG_ENABLE,protocol,$(FFMPEG_AUDIO_PROTOCOLS)) \ - --enable-libopus --enable-decoder=libopus \ --enable-libspeex --enable-decoder=libspeex \ --disable-decoder=pcm_bluray,pcm_dvd \ From e30b50f0a158a04bab630d8999cec25c605f1585 Mon Sep 17 00:00:00 2001 From: Charles Lehner Date: Sat, 23 May 2015 11:29:37 -0400 Subject: [PATCH 438/681] Fix emailrelay init script Signed-off-by: Charles Lehner --- net/emailrelay/Makefile | 2 +- net/emailrelay/files/emailrelay.init | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/net/emailrelay/Makefile b/net/emailrelay/Makefile index bbcd6148b..9352db729 100644 --- a/net/emailrelay/Makefile +++ b/net/emailrelay/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=emailrelay PKG_VERSION:=1.9 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-src.tar.gz PKG_SOURCE_URL:=@SF/emailrelay/$(PKG_VERSION) diff --git a/net/emailrelay/files/emailrelay.init b/net/emailrelay/files/emailrelay.init index c63d2f061..9fc33996e 100644 --- a/net/emailrelay/files/emailrelay.init +++ b/net/emailrelay/files/emailrelay.init @@ -6,10 +6,10 @@ START=90 start() { logger -t 'emailrelay' "Starting emailrelay service." - service_start emailrelay --as-server --poll 60 --forward-to smtpserver:smtpport --spool-dir /tmp --client-tls --client-auth /etc/emailrelay.auth --server-auth /etc/emailrelay.auth --log + service_start /usr/bin/emailrelay --as-server --poll 60 --forward-to smtpserver:smtpport --spool-dir /tmp --client-tls --client-auth /etc/emailrelay.auth --server-auth /etc/emailrelay.auth --log } stop() { logger -t 'emailrelay' "Stopping emailrelay service." - killall -9 emailrelay + service_stop /usr/bin/emailrelay } From 0622e99f910cb113a2ed7ffd5f084cf0b940304a Mon Sep 17 00:00:00 2001 From: Nikos Mavrogiannopoulos Date: Sun, 24 May 2015 11:00:10 +0200 Subject: [PATCH 439/681] ocserv: updated to 0.10.5 Signed-off-by: Nikos Mavrogiannopoulos --- net/ocserv/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/net/ocserv/Makefile b/net/ocserv/Makefile index 9925d340b..6afcd27e3 100644 --- a/net/ocserv/Makefile +++ b/net/ocserv/Makefile @@ -8,13 +8,13 @@ include $(TOPDIR)/rules.mk PKG_NAME:=ocserv -PKG_VERSION:=0.10.4 +PKG_VERSION:=0.10.5 PKG_RELEASE:=1 PKG_BUILD_DIR :=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION) PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=ftp://ftp.infradead.org/pub/ocserv/ -PKG_MD5SUM:=6df31778642320ea7b90f314c4c9a897 +PKG_MD5SUM:=415e663c0ad5d451bf0cb091fedca944 PKG_LICENSE:=GPLv2 PKG_LICENSE_FILES:=COPYING From 15f744bb53b889b201834764f02710a6e817012c Mon Sep 17 00:00:00 2001 From: Nikos Mavrogiannopoulos Date: Sun, 24 May 2015 11:16:28 +0200 Subject: [PATCH 440/681] ocserv: corrected checksum Signed-off-by: Nikos Mavrogiannopoulos --- net/ocserv/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/net/ocserv/Makefile b/net/ocserv/Makefile index 6afcd27e3..78e5a132c 100644 --- a/net/ocserv/Makefile +++ b/net/ocserv/Makefile @@ -14,7 +14,7 @@ PKG_RELEASE:=1 PKG_BUILD_DIR :=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION) PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=ftp://ftp.infradead.org/pub/ocserv/ -PKG_MD5SUM:=415e663c0ad5d451bf0cb091fedca944 +PKG_MD5SUM:=17ee861f352d6ef7cd33114819b215ba PKG_LICENSE:=GPLv2 PKG_LICENSE_FILES:=COPYING From 59f33d2aa7da968294ee1ccdd1336dd7d7d76837 Mon Sep 17 00:00:00 2001 From: Yousong Zhou Date: Wed, 29 Apr 2015 21:11:16 +0800 Subject: [PATCH 441/681] xl2tpd: refactor for more resilience. - Use netifd no_proto_task for notifying that xl2tpd does not have a protocol task running. - Use procd for xl2tpd service management. - Refreshed 2xx patches to - Prevent leftover regular type control result file. - Allow xl2tpd run as foreground process while logging via syslog. Signed-off-by: Yousong Zhou - bumped version - removed dependency on `ip` package as routes are setup by netifd if iproute2 is actually required, please depend on `@(PACKAGE_ip||PACKAGE_ip-full)` instead of `ip` Signed-off-by: Daniel Golle --- net/xl2tpd/Makefile | 8 +- net/xl2tpd/files/l2tp.sh | 51 +++++--- net/xl2tpd/files/xl2tpd.init | 25 ++-- ...eck-end-of-file-when-reading-pipe-t.patch} | 15 ++- ...fine-_GNU_SOURCE-to-use-fmemopen-an.patch} | 13 +- ...l-open-control-file-with-O_NONBLOCK.patch} | 11 +- ...d-control-cleaup-result-file-atexit.patch} | 29 +++-- ...ontrol-enhance-output-of-print_error.patch | 58 +++++++++ ...ypo-in-reporting-available-lns-count.patch | 34 +++++ ...ble-buffer-overflow-when-filling-str.patch | 22 ---- ...-place-opts-after-plugin-pppol2tp.s.patch} | 29 +++-- ...log-prefix-that-will-duplicate-with-.patch | 21 ---- ...-new-option-l-for-using-syslog-as-th.patch | 104 +++++++++++++++ ...sult-file-to-prevent-leftover-a-regu.patch | 26 ++++ .../209-xl2tpd-ignore-SIGPIPE-signal.patch | 32 +++++ ...-show-all-available-commands-in-help.patch | 119 ++++++++++++++++++ ...0-xl2tpd-control-atexit-needs-stdlib.patch | 12 -- 17 files changed, 495 insertions(+), 114 deletions(-) rename net/xl2tpd/patches/{201-xl2tpd-control-check-end-of-file-when-reading-pipe-t.patch => 200-xl2tpd-control-check-end-of-file-when-reading-pipe-t.patch} (70%) rename net/xl2tpd/patches/{202-xl2tpd-control-define-_GNU_SOURCE-to-use-fmemopen-an.patch => 201-xl2tpd-control-define-_GNU_SOURCE-to-use-fmemopen-an.patch} (50%) rename net/xl2tpd/patches/{203-xl2tpd-control-open-control-file-with-O_NONBLOCK.patch => 202-xl2tpd-control-open-control-file-with-O_NONBLOCK.patch} (80%) rename net/xl2tpd/patches/{205-xl2tpd-control-cleaup-result-file-atexit.patch => 203-xl2tpd-control-cleaup-result-file-atexit.patch} (66%) create mode 100644 net/xl2tpd/patches/204-xl2tpd-control-enhance-output-of-print_error.patch create mode 100644 net/xl2tpd/patches/205-xl2tpd-fix-typo-in-reporting-available-lns-count.patch delete mode 100644 net/xl2tpd/patches/206-xl2tpd-fix-possible-buffer-overflow-when-filling-str.patch rename net/xl2tpd/patches/{204-start_pppd-place-opts-after-plugin-pppol2tp.so.patch => 206-xl2tpd-start_pppd-place-opts-after-plugin-pppol2tp.s.patch} (59%) delete mode 100644 net/xl2tpd/patches/207-l2tp_log-remove-log-prefix-that-will-duplicate-with-.patch create mode 100644 net/xl2tpd/patches/207-xl2tpd-introduce-new-option-l-for-using-syslog-as-th.patch create mode 100644 net/xl2tpd/patches/208-xl2tpd-unlink-result-file-to-prevent-leftover-a-regu.patch create mode 100644 net/xl2tpd/patches/209-xl2tpd-ignore-SIGPIPE-signal.patch create mode 100644 net/xl2tpd/patches/210-xl2tpd-control-show-all-available-commands-in-help.patch delete mode 100644 net/xl2tpd/patches/250-xl2tpd-control-atexit-needs-stdlib.patch diff --git a/net/xl2tpd/Makefile b/net/xl2tpd/Makefile index 29107f085..c3582bef7 100644 --- a/net/xl2tpd/Makefile +++ b/net/xl2tpd/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2006-2014 OpenWrt.org +# Copyright (C) 2006-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -8,14 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=xl2tpd -PKG_VERSION:=1.3.7pre20141126 +PKG_VERSION:=1.3.7pre20150524 PKG_RELEASE:=1 PKG_MAINTAINER:=Daniel Golle PKG_LICENSE:=GPL-2.0 PKG_LICENSE_FILES:=LICENSE -PKG_RELEASE=$(PKG_SOURCE_VERSION) - PKG_SOURCE_PROTO:=git PKG_SOURCE_URL:=https://github.com/xelerance/xl2tpd.git PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) @@ -32,7 +30,7 @@ define Package/xl2tpd TITLE:=An L2TP (Layer 2 Tunneling Protocol) daemon URL:=http://www.xelerance.com/software/xl2tpd/ SUBMENU:=VPN - DEPENDS:=+ppp-mod-pppol2tp +ip +resolveip + DEPENDS:=+ppp-mod-pppol2tp +resolveip endef define Package/xl2tpd/description diff --git a/net/xl2tpd/files/l2tp.sh b/net/xl2tpd/files/l2tp.sh index 867234dbe..0748654a7 100644 --- a/net/xl2tpd/files/l2tp.sh +++ b/net/xl2tpd/files/l2tp.sh @@ -18,31 +18,43 @@ proto_l2tp_init_config() { proto_config_add_string "server" available=1 no_device=1 + no_proto_task=1 } proto_l2tp_setup() { - local config="$1" - local iface="$2" - local optfile="/tmp/l2tp/options.${config}" + local interface="$1" + local optfile="/tmp/l2tp/options.${interface}" local ip serv_addr server json_get_var server server && { for ip in $(resolveip -t 5 "$server"); do - ( proto_add_host_dependency "$config" "$ip" ) + ( proto_add_host_dependency "$interface" "$ip" ) serv_addr=1 done } [ -n "$serv_addr" ] || { - echo "Could not resolve server address" + echo "Could not resolve server address" >&2 sleep 5 - proto_setup_failed "$config" + proto_setup_failed "$interface" exit 1 } if [ ! -p /var/run/xl2tpd/l2tp-control ]; then /etc/init.d/xl2tpd start + + local wait_timeout=0 + while [ ! -p /var/run/xl2tpd/l2tp-control ]; do + wait_timeout=$(($wait_timeout + 1)) + [ "$wait_timeout" -gt 5 ] && { + echo "Cannot find xl2tpd control file." >&2 + proto_setup_failed "$interface" + exit 1 + } + sleep 1 + done fi + local ipv6 demand keepalive username password pppd_options json_get_vars ipv6 demand keepalive username password pppd_options [ "$ipv6" = 1 ] || ipv6="" if [ "${demand:-0}" -gt 0 ]; then @@ -51,6 +63,7 @@ proto_l2tp_setup() { demand="persist" fi + local mtu [ -n "$mtu" ] || json_get_var mtu mtu local interval="${keepalive##*[, ]}" @@ -62,8 +75,8 @@ proto_l2tp_setup() { echo "usepeerdns" >> "${optfile}" echo "nodefaultroute" >> "${optfile}" echo "${username:+user \"$username\" password \"$password\"}" >> "${optfile}" - echo "ipparam \"$config\"" >> "${optfile}" - echo "ifname \"l2tp-$config\"" >> "${optfile}" + echo "ipparam \"$interface\"" >> "${optfile}" + echo "ifname \"l2tp-$interface\"" >> "${optfile}" echo "ip-up-script /lib/netifd/ppp-up" >> "${optfile}" echo "ipv6-up-script /lib/netifd/ppp-up" >> "${optfile}" echo "ip-down-script /lib/netifd/ppp-down" >> "${optfile}" @@ -73,14 +86,23 @@ proto_l2tp_setup() { echo "${ipv6:++ipv6} ${pppd_options}" >> "${optfile}" echo "${mtu:+mtu $mtu mru $mtu}" >> "${optfile}" - xl2tpd-control add l2tp-${config} pppoptfile=${optfile} lns=${server} redial=yes redial timeout=20 - xl2tpd-control connect l2tp-${config} + xl2tpd-control add l2tp-${interface} pppoptfile=${optfile} lns=${server} redial=yes redial timeout=20 || { + echo "xl2tpd-control: Add l2tp-$interface failed" >&2 + proto_setup_failed "$interface" + exit 1 + } + xl2tpd-control connect l2tp-${interface} || { + echo "xl2tpd-control: Connect l2tp-$interface failed" >&2 + proto_setup_failed "$interface" + exit 1 + } } proto_l2tp_teardown() { local interface="$1" local optfile="/tmp/l2tp/options.${interface}" + rm -f ${optfile} case "$ERROR" in 11|19) proto_notify_error "$interface" AUTH_FAILED @@ -92,14 +114,15 @@ proto_l2tp_teardown() { ;; esac - xl2tpd-control disconnect l2tp-${interface} + if [ -p /var/run/xl2tpd/l2tp-control ]; then + xl2tpd-control remove l2tp-${interface} || { + echo "xl2tpd-control: Remove l2tp-$interface failed" >&2 + } + fi # Wait for interface to go down while [ -d /sys/class/net/l2tp-${interface} ]; do sleep 1 done - - xl2tpd-control remove l2tp-${interface} - rm -f ${optfile} } [ -n "$INCLUDE_ONLY" ] || { diff --git a/net/xl2tpd/files/xl2tpd.init b/net/xl2tpd/files/xl2tpd.init index 22e845901..86098603e 100644 --- a/net/xl2tpd/files/xl2tpd.init +++ b/net/xl2tpd/files/xl2tpd.init @@ -1,18 +1,23 @@ #!/bin/sh /etc/rc.common -# Copyright (C) 2006-2010 OpenWrt.org +# Copyright (C) 2006-2015 OpenWrt.org START=60 +USE_PROCD=1 + BIN=xl2tpd -DEFAULT=/etc/default/$BIN -RUN_D=/var/run -PID_F=$RUN_D/$BIN.pid +RUN_D="/var/run/xl2tpd" +PID_F="/var/run/xl2tpd.pid" + +start_service() { + rm -rf "$RUN_D" + mkdir -p "$RUN_D" -start() { - mkdir -p $RUN_D/$BIN - [ -f $DEFAULT ] && . $DEFAULT - $BIN $OPTIONS + procd_open_instance + procd_set_param command $BIN -D -l -p "$PID_F" + procd_close_instance } -stop() { - [ -f $PID_F ] && kill $(cat $PID_F) +stop_service() { + rm -rf "$RUN_D" + rm -rf "$PID_F" } diff --git a/net/xl2tpd/patches/201-xl2tpd-control-check-end-of-file-when-reading-pipe-t.patch b/net/xl2tpd/patches/200-xl2tpd-control-check-end-of-file-when-reading-pipe-t.patch similarity index 70% rename from net/xl2tpd/patches/201-xl2tpd-control-check-end-of-file-when-reading-pipe-t.patch rename to net/xl2tpd/patches/200-xl2tpd-control-check-end-of-file-when-reading-pipe-t.patch index 52f8332cd..811f9affe 100644 --- a/net/xl2tpd/patches/201-xl2tpd-control-check-end-of-file-when-reading-pipe-t.patch +++ b/net/xl2tpd/patches/200-xl2tpd-control-check-end-of-file-when-reading-pipe-t.patch @@ -1,16 +1,18 @@ -From 8c5853b8e22f34bc1c1acba278f7850ab7946894 Mon Sep 17 00:00:00 2001 +From 7973d45a0e1716ddc6bfb6caf600f826f59a7932 Mon Sep 17 00:00:00 2001 From: Yousong Zhou Date: Tue, 28 Apr 2015 21:26:15 +0800 -Subject: [PATCH 1/7] xl2tpd-control: check end-of-file when reading pipe to - avoid dead loop. +Subject: [PATCH 200/210] xl2tpd-control: check end-of-file when reading pipe + to avoid dead loop. --- - xl2tpd-control.c | 11 +++++++---- + xl2tpd-control.c | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) +diff --git a/xl2tpd-control.c b/xl2tpd-control.c +index feafe10..e5904d8 100644 --- a/xl2tpd-control.c +++ b/xl2tpd-control.c -@@ -306,17 +306,20 @@ int read_result(int result_fd, char* buf +@@ -306,17 +306,20 @@ int read_result(int result_fd, char* buf, ssize_t size) /*FIXME: there is a chance to hang up reading. Should I create watching thread with timeout? */ @@ -35,3 +37,6 @@ Subject: [PATCH 1/7] xl2tpd-control: check end-of-file when reading pipe to buf[readed] = '\0'; /* scan result code */ +-- +1.7.10.4 + diff --git a/net/xl2tpd/patches/202-xl2tpd-control-define-_GNU_SOURCE-to-use-fmemopen-an.patch b/net/xl2tpd/patches/201-xl2tpd-control-define-_GNU_SOURCE-to-use-fmemopen-an.patch similarity index 50% rename from net/xl2tpd/patches/202-xl2tpd-control-define-_GNU_SOURCE-to-use-fmemopen-an.patch rename to net/xl2tpd/patches/201-xl2tpd-control-define-_GNU_SOURCE-to-use-fmemopen-an.patch index d75010f9a..a4f704aa3 100644 --- a/net/xl2tpd/patches/202-xl2tpd-control-define-_GNU_SOURCE-to-use-fmemopen-an.patch +++ b/net/xl2tpd/patches/201-xl2tpd-control-define-_GNU_SOURCE-to-use-fmemopen-an.patch @@ -1,13 +1,15 @@ -From 76f444d284c0b0a351a488954e0d39b72a0ce211 Mon Sep 17 00:00:00 2001 +From efa0a18b5dfd827792b07acdcb35101229ccf612 Mon Sep 17 00:00:00 2001 From: Yousong Zhou Date: Wed, 29 Apr 2015 10:32:37 +0800 -Subject: [PATCH 2/7] xl2tpd-control: define _GNU_SOURCE to use fmemopen() and - friends. +Subject: [PATCH 201/210] xl2tpd-control: define _GNU_SOURCE to use fmemopen() + and friends. --- - xl2tpd-control.c | 2 ++ + xl2tpd-control.c | 2 ++ 1 file changed, 2 insertions(+) +diff --git a/xl2tpd-control.c b/xl2tpd-control.c +index e5904d8..9b6235d 100644 --- a/xl2tpd-control.c +++ b/xl2tpd-control.c @@ -10,6 +10,8 @@ @@ -19,3 +21,6 @@ Subject: [PATCH 2/7] xl2tpd-control: define _GNU_SOURCE to use fmemopen() and #include #include #include +-- +1.7.10.4 + diff --git a/net/xl2tpd/patches/203-xl2tpd-control-open-control-file-with-O_NONBLOCK.patch b/net/xl2tpd/patches/202-xl2tpd-control-open-control-file-with-O_NONBLOCK.patch similarity index 80% rename from net/xl2tpd/patches/203-xl2tpd-control-open-control-file-with-O_NONBLOCK.patch rename to net/xl2tpd/patches/202-xl2tpd-control-open-control-file-with-O_NONBLOCK.patch index aef1f7c15..17721f278 100644 --- a/net/xl2tpd/patches/203-xl2tpd-control-open-control-file-with-O_NONBLOCK.patch +++ b/net/xl2tpd/patches/202-xl2tpd-control-open-control-file-with-O_NONBLOCK.patch @@ -1,14 +1,16 @@ -From f7cfd36b8a93afd326c0d9378e99576c616bd3fc Mon Sep 17 00:00:00 2001 +From fedfd6685e5f81f0460beb4c448a30e7a6cfbd31 Mon Sep 17 00:00:00 2001 From: Yousong Zhou Date: Wed, 29 Apr 2015 14:21:12 +0800 -Subject: [PATCH 3/7] xl2tpd-control: open control file with O_NONBLOCK. +Subject: [PATCH 202/210] xl2tpd-control: open control file with O_NONBLOCK. Otherwise xl2tpd-control would block indefinitely in case xl2tpd is not running. --- - xl2tpd-control.c | 10 +++++++++- + xl2tpd-control.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) +diff --git a/xl2tpd-control.c b/xl2tpd-control.c +index 9b6235d..973ee87 100644 --- a/xl2tpd-control.c +++ b/xl2tpd-control.c @@ -246,7 +246,7 @@ int main (int argc, char *argv[]) @@ -35,3 +37,6 @@ not running. /* pass command to control pipe */ if (write (control_fd, buf, ftell (mesf)) < 0) +-- +1.7.10.4 + diff --git a/net/xl2tpd/patches/205-xl2tpd-control-cleaup-result-file-atexit.patch b/net/xl2tpd/patches/203-xl2tpd-control-cleaup-result-file-atexit.patch similarity index 66% rename from net/xl2tpd/patches/205-xl2tpd-control-cleaup-result-file-atexit.patch rename to net/xl2tpd/patches/203-xl2tpd-control-cleaup-result-file-atexit.patch index bfd01a2b6..66eee642f 100644 --- a/net/xl2tpd/patches/205-xl2tpd-control-cleaup-result-file-atexit.patch +++ b/net/xl2tpd/patches/203-xl2tpd-control-cleaup-result-file-atexit.patch @@ -1,15 +1,25 @@ -From d4a484db1684cce15966bb722644416f90253ea7 Mon Sep 17 00:00:00 2001 +From 07e522cd7e223517389582a8eb647a4a6a8a5cf8 Mon Sep 17 00:00:00 2001 From: Yousong Zhou Date: Thu, 30 Apr 2015 13:53:11 +0800 -Subject: [PATCH 5/7] xl2tpd-control: cleaup result file atexit(). +Subject: [PATCH 203/210] xl2tpd-control: cleaup result file atexit(). --- - xl2tpd-control.c | 20 +++++++++++++------- - 1 file changed, 13 insertions(+), 7 deletions(-) + xl2tpd-control.c | 21 ++++++++++++++------- + 1 file changed, 14 insertions(+), 7 deletions(-) +diff --git a/xl2tpd-control.c b/xl2tpd-control.c +index 973ee87..abc0324 100644 --- a/xl2tpd-control.c +++ b/xl2tpd-control.c -@@ -35,6 +35,9 @@ +@@ -12,6 +12,7 @@ + + #define _GNU_SOURCE + ++#include + #include + #include + #include +@@ -35,6 +36,9 @@ #define TUNNEL_REQUIRED 1 #define TUNNEL_NOT_REQUIRED 0 @@ -19,7 +29,7 @@ Subject: [PATCH 5/7] xl2tpd-control: cleaup result file atexit(). int log_level = ERROR_LEVEL; void print_error (int level, const char *fmt, ...); -@@ -117,6 +120,14 @@ void help() +@@ -117,6 +121,14 @@ void help() ); } @@ -34,7 +44,7 @@ Subject: [PATCH 5/7] xl2tpd-control: cleaup result file atexit(). int main (int argc, char *argv[]) { char* control_filename = NULL; -@@ -195,11 +206,11 @@ int main (int argc, char *argv[]) +@@ -195,11 +207,11 @@ int main (int argc, char *argv[]) FILE* mesf = fmemopen (buf, CONTROL_PIPE_MESSAGE_SIZE, "w"); /* create result pipe for reading */ @@ -48,7 +58,7 @@ Subject: [PATCH 5/7] xl2tpd-control: cleaup result file atexit(). if (result_fd < 0) { print_error (ERROR_LEVEL, -@@ -293,11 +304,6 @@ int main (int argc, char *argv[]) +@@ -293,11 +305,6 @@ int main (int argc, char *argv[]) ); printf ("%s", rbuf); @@ -60,3 +70,6 @@ Subject: [PATCH 5/7] xl2tpd-control: cleaup result file atexit(). return command_result_code; } +-- +1.7.10.4 + diff --git a/net/xl2tpd/patches/204-xl2tpd-control-enhance-output-of-print_error.patch b/net/xl2tpd/patches/204-xl2tpd-control-enhance-output-of-print_error.patch new file mode 100644 index 000000000..4e575078a --- /dev/null +++ b/net/xl2tpd/patches/204-xl2tpd-control-enhance-output-of-print_error.patch @@ -0,0 +1,58 @@ +From f6eaaabb0b2fab12cf597b8c1d12d470a13e581f Mon Sep 17 00:00:00 2001 +From: Yousong Zhou +Date: Thu, 14 May 2015 14:58:10 +0800 +Subject: [PATCH 204/210] xl2tpd-control: enhance output of print_error(). + + - Add prefix "xl2tpd-control: " to print_error() output. + - Output response from xl2tpd only when -d is enabled as result of + control command can be retrieved from exit code. + - Remove some redundant and not that useful verbose output. +--- + xl2tpd-control.c | 10 ++++------ + 1 file changed, 4 insertions(+), 6 deletions(-) + +diff --git a/xl2tpd-control.c b/xl2tpd-control.c +index abc0324..6b08850 100644 +--- a/xl2tpd-control.c ++++ b/xl2tpd-control.c +@@ -164,7 +164,6 @@ int main (int argc, char *argv[]) + { + control_filename = strdup (CONTROL_PIPE); + } +- print_error (DEBUG_LEVEL, "set control filename to %s\n", control_filename); + + /* parse command name */ + for (command = commands; command->name; command++) +@@ -176,10 +175,7 @@ int main (int argc, char *argv[]) + } + } + +- if (command->name) +- { +- print_error (DEBUG_LEVEL, "get command %s\n", command->name); +- } else { ++ if (!command->name) { + print_error (ERROR_LEVEL, "error: no such command %s\n", argv[i]); + return -1; + } +@@ -303,7 +299,8 @@ int main (int argc, char *argv[]) + int command_result_code = read_result ( + result_fd, rbuf, CONTROL_PIPE_MESSAGE_SIZE + ); +- printf ("%s", rbuf); ++ /* rbuf contains a newline, make it double to form a boundary. */ ++ print_error (DEBUG_LEVEL, "command response: \n%s\n", rbuf); + + return command_result_code; + } +@@ -313,6 +310,7 @@ void print_error (int level, const char *fmt, ...) + if (level > log_level) return; + va_list args; + va_start (args, fmt); ++ fprintf (stderr, "xl2tpd-control: "); + vfprintf (stderr, fmt, args); + va_end (args); + } +-- +1.7.10.4 + diff --git a/net/xl2tpd/patches/205-xl2tpd-fix-typo-in-reporting-available-lns-count.patch b/net/xl2tpd/patches/205-xl2tpd-fix-typo-in-reporting-available-lns-count.patch new file mode 100644 index 000000000..b25e82be4 --- /dev/null +++ b/net/xl2tpd/patches/205-xl2tpd-fix-typo-in-reporting-available-lns-count.patch @@ -0,0 +1,34 @@ +From 1c148f6645f43bf5abd8a9b8f0708a598b357d97 Mon Sep 17 00:00:00 2001 +From: Yousong Zhou +Date: Thu, 14 May 2015 19:56:39 +0800 +Subject: [PATCH 205/210] xl2tpd: fix typo in reporting available lns count. + +--- + xl2tpd.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/xl2tpd.c b/xl2tpd.c +index c9b7579..6c945fc 100644 +--- a/xl2tpd.c ++++ b/xl2tpd.c +@@ -1039,7 +1039,7 @@ int control_handle_available(FILE* resf, char* bufp){ + lns_count++; + } + +- write_res (resf, "%02i AVAILABLE lns.cout=%d\n", 0, lns_count); ++ write_res (resf, "%02i AVAILABLE lns.count=%d\n", 0, lns_count); + + lac = laclist; + int lac_count = 0; +@@ -1053,7 +1053,7 @@ int control_handle_available(FILE* resf, char* bufp){ + if(deflac){ + write_res (resf, "%02i AVAILABLE lac.%d.name=%s\n", 0, lac_count, deflac->entname); + lac_count++; +- } ++ } + + write_res (resf, "%02i AVAILABLE lac.count=%d\n", 0, lac_count); + return 1; +-- +1.7.10.4 + diff --git a/net/xl2tpd/patches/206-xl2tpd-fix-possible-buffer-overflow-when-filling-str.patch b/net/xl2tpd/patches/206-xl2tpd-fix-possible-buffer-overflow-when-filling-str.patch deleted file mode 100644 index 6110b0c5b..000000000 --- a/net/xl2tpd/patches/206-xl2tpd-fix-possible-buffer-overflow-when-filling-str.patch +++ /dev/null @@ -1,22 +0,0 @@ -From 1e8b82388578a622c5caf8fa04c238fdd7808ecc Mon Sep 17 00:00:00 2001 -From: Yousong Zhou -Date: Thu, 30 Apr 2015 13:53:40 +0800 -Subject: [PATCH 6/7] xl2tpd: fix possible buffer overflow when filling - stropt[]. - ---- - xl2tpd.c | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - ---- a/xl2tpd.c -+++ b/xl2tpd.c -@@ -490,7 +490,8 @@ int start_pppd (struct call *c, struct p - - { - struct ppp_opts *p = opts; -- while (p) -+ int maxn_opts = sizeof(stropt) / sizeof(stropt[0]) - 1; -+ while (p && pos < maxn_opts) - { - stropt[pos] = strdup (p->option); - pos++; diff --git a/net/xl2tpd/patches/204-start_pppd-place-opts-after-plugin-pppol2tp.so.patch b/net/xl2tpd/patches/206-xl2tpd-start_pppd-place-opts-after-plugin-pppol2tp.s.patch similarity index 59% rename from net/xl2tpd/patches/204-start_pppd-place-opts-after-plugin-pppol2tp.so.patch rename to net/xl2tpd/patches/206-xl2tpd-start_pppd-place-opts-after-plugin-pppol2tp.s.patch index 1d50eaa25..60d8b84db 100644 --- a/net/xl2tpd/patches/204-start_pppd-place-opts-after-plugin-pppol2tp.so.patch +++ b/net/xl2tpd/patches/206-xl2tpd-start_pppd-place-opts-after-plugin-pppol2tp.s.patch @@ -1,16 +1,21 @@ -From 7a343f7b79b70a8e7e04b2bd465d344ad0ef4c49 Mon Sep 17 00:00:00 2001 +From 18fdf802d31354c62a27cc5a63b196780a0d486e Mon Sep 17 00:00:00 2001 From: Yousong Zhou Date: Wed, 29 Apr 2015 16:30:17 +0800 -Subject: [PATCH 4/7] start_pppd: place opts after "plugin pppol2tp.so". +Subject: [PATCH 206/210] xl2tpd: start_pppd: place opts after "plugin + pppol2tp.so". -so that plugin options like pppol2tp_debug_mark can be recognized by pppd. +so that plugin options like pppol2tp_debug_mark can be recognized by +pppd. While doing this also add bound check to prevent potential buffer +overflow problem. --- - xl2tpd.c | 21 ++++++++++----------- - 1 file changed, 10 insertions(+), 11 deletions(-) + xl2tpd.c | 22 +++++++++++----------- + 1 file changed, 11 insertions(+), 11 deletions(-) +diff --git a/xl2tpd.c b/xl2tpd.c +index 6c945fc..017adfd 100644 --- a/xl2tpd.c +++ b/xl2tpd.c -@@ -382,7 +382,6 @@ int start_pppd (struct call *c, struct p +@@ -382,7 +382,6 @@ int start_pppd (struct call *c, struct ppp_opts *opts) /* char a, b; */ char tty[512]; char *stropt[80]; @@ -18,7 +23,7 @@ so that plugin options like pppol2tp_debug_mark can be recognized by pppd. #ifdef USE_KERNEL struct sockaddr_pppol2tp sax; int flags; -@@ -396,16 +395,7 @@ int start_pppd (struct call *c, struct p +@@ -396,16 +395,7 @@ int start_pppd (struct call *c, struct ppp_opts *opts) struct call *sc; struct tunnel *st; @@ -35,7 +40,7 @@ so that plugin options like pppol2tp_debug_mark can be recognized by pppd. if (c->pppd > 0) { l2tp_log(LOG_WARNING, "%s: PPP already started on call!\n", __FUNCTION__); -@@ -467,7 +457,6 @@ int start_pppd (struct call *c, struct p +@@ -467,7 +457,6 @@ int start_pppd (struct call *c, struct ppp_opts *opts) snprintf (stropt[pos], 10, "%d", c->ourcid); pos++; } @@ -43,7 +48,7 @@ so that plugin options like pppol2tp_debug_mark can be recognized by pppd. } else #endif -@@ -497,6 +486,16 @@ int start_pppd (struct call *c, struct p +@@ -497,6 +486,17 @@ int start_pppd (struct call *c, struct ppp_opts *opts) return -EINVAL; } stropt[pos++] = strdup(tty); @@ -51,7 +56,8 @@ so that plugin options like pppol2tp_debug_mark can be recognized by pppd. + + { + struct ppp_opts *p = opts; -+ while (p) ++ int maxn_opts = sizeof(stropt) / sizeof(stropt[0]) - 1; ++ while (p && pos < maxn_opts) + { + stropt[pos] = strdup (p->option); + pos++; @@ -60,3 +66,6 @@ so that plugin options like pppol2tp_debug_mark can be recognized by pppd. stropt[pos] = NULL; } +-- +1.7.10.4 + diff --git a/net/xl2tpd/patches/207-l2tp_log-remove-log-prefix-that-will-duplicate-with-.patch b/net/xl2tpd/patches/207-l2tp_log-remove-log-prefix-that-will-duplicate-with-.patch deleted file mode 100644 index d513a5820..000000000 --- a/net/xl2tpd/patches/207-l2tp_log-remove-log-prefix-that-will-duplicate-with-.patch +++ /dev/null @@ -1,21 +0,0 @@ -From 44ced2bbf1d6b39bb36c3cb8be6e40c8764e2e8a Mon Sep 17 00:00:00 2001 -From: Yousong Zhou -Date: Thu, 30 Apr 2015 13:57:36 +0800 -Subject: [PATCH 7/7] l2tp_log: remove log prefix that will duplicate with - procd. - ---- - misc.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/misc.c -+++ b/misc.c -@@ -61,7 +61,7 @@ void l2tp_log (int level, const char *fm - init_log(); - SYSLOG_CALL( syslog (level, "%s", buf) ); - } else { -- fprintf(stderr, "xl2tpd[%d]: %s", getpid(), buf); -+ fprintf(stderr, "%s", buf); - } - } - diff --git a/net/xl2tpd/patches/207-xl2tpd-introduce-new-option-l-for-using-syslog-as-th.patch b/net/xl2tpd/patches/207-xl2tpd-introduce-new-option-l-for-using-syslog-as-th.patch new file mode 100644 index 000000000..5ab94cb05 --- /dev/null +++ b/net/xl2tpd/patches/207-xl2tpd-introduce-new-option-l-for-using-syslog-as-th.patch @@ -0,0 +1,104 @@ +From b3402a68a4d29e9b1ae4e012e39a7bcb14fea3cf Mon Sep 17 00:00:00 2001 +From: Yousong Zhou +Date: Thu, 30 Apr 2015 13:57:36 +0800 +Subject: [PATCH 207/210] xl2tpd: introduce new option -l for using syslog as + the logging facility. + +Defaults to old behaviour if no -l option was specified. Also update +manual doc to reflect this change. +--- + doc/xl2tpd.8 | 5 +++++ + file.h | 1 + + misc.c | 2 +- + xl2tpd.c | 13 ++++++++++++- + 4 files changed, 19 insertions(+), 2 deletions(-) + +diff --git a/doc/xl2tpd.8 b/doc/xl2tpd.8 +index 915b247..7afccac 100644 +--- a/doc/xl2tpd.8 ++++ b/doc/xl2tpd.8 +@@ -20,6 +20,11 @@ This option prevents xl2tpd from detaching from the terminal and + daemonizing. + + .TP ++.B -l ++This option tells xl2tpd to use syslog for logging even when \fB\-D\fR ++was specified. ++ ++.TP + .B -c + Tells xl2tpd to use an alternate config file. Default is + /etc/xl2tpd/xl2tpd.conf. Fallback configuration file is +diff --git a/file.h b/file.h +index 89987ae..92df046 100644 +--- a/file.h ++++ b/file.h +@@ -151,6 +151,7 @@ struct global + char pidfile[STRLEN]; /* File containing the pid number*/ + char controlfile[STRLEN]; /* Control file name (named pipe) */ + int daemon; /* Use daemon mode? */ ++ int syslog; /* Use syslog for logging? */ + int accesscontrol; /* Use access control? */ + int forceuserspace; /* Force userspace? */ + int packet_dump; /* Dump (print) all packets? */ +diff --git a/misc.c b/misc.c +index 3092401..cccf4ca 100644 +--- a/misc.c ++++ b/misc.c +@@ -57,7 +57,7 @@ void l2tp_log (int level, const char *fmt, ...) + vsnprintf (buf, sizeof (buf), fmt, args); + va_end (args); + +- if(gconfig.daemon) { ++ if(gconfig.syslog) { + init_log(); + SYSLOG_CALL( syslog (level, "%s", buf) ); + } else { +diff --git a/xl2tpd.c b/xl2tpd.c +index 017adfd..1937690 100644 +--- a/xl2tpd.c ++++ b/xl2tpd.c +@@ -1594,7 +1594,7 @@ void do_control () + void usage(void) { + printf("\nxl2tpd version: %s\n", SERVER_VERSION); + printf("Usage: xl2tpd [-c ] [-s ] [-p ]\n" +- " [-C ] [-D]\n" ++ " [-C ] [-D] [-l]\n" + " [-v, --version]\n"); + printf("\n"); + exit(1); +@@ -1605,6 +1605,7 @@ void init_args(int argc, char *argv[]) + int i=0; + + gconfig.daemon=1; ++ gconfig.syslog=-1; + memset(gconfig.altauthfile,0,STRLEN); + memset(gconfig.altconfigfile,0,STRLEN); + memset(gconfig.authfile,0,STRLEN); +@@ -1642,6 +1643,9 @@ void init_args(int argc, char *argv[]) + else if (! strncmp(argv[i],"-D",2)) { + gconfig.daemon=0; + } ++ else if (! strncmp(argv[i],"-l",2)) { ++ gconfig.syslog=1; ++ } + else if (! strncmp(argv[i],"-s",2)) { + if(++i == argc) + usage(); +@@ -1667,6 +1671,13 @@ void init_args(int argc, char *argv[]) + usage(); + } + } ++ ++ /* ++ * defaults to syslog if no log facility was explicitly ++ * specified and we are about to daemonize ++ */ ++ if (gconfig.syslog < 0) ++ gconfig.syslog = gconfig.daemon; + } + + +-- +1.7.10.4 + diff --git a/net/xl2tpd/patches/208-xl2tpd-unlink-result-file-to-prevent-leftover-a-regu.patch b/net/xl2tpd/patches/208-xl2tpd-unlink-result-file-to-prevent-leftover-a-regu.patch new file mode 100644 index 000000000..90694f228 --- /dev/null +++ b/net/xl2tpd/patches/208-xl2tpd-unlink-result-file-to-prevent-leftover-a-regu.patch @@ -0,0 +1,26 @@ +From a2b163a65a2d4fbca57c3aa82b526cf8fbc8e449 Mon Sep 17 00:00:00 2001 +From: Yousong Zhou +Date: Fri, 15 May 2015 10:56:23 +0800 +Subject: [PATCH 208/210] xl2tpd: unlink result file to prevent leftover a + regular file. + +--- + xl2tpd.c | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/xl2tpd.c b/xl2tpd.c +index 1937690..c11fe66 100644 +--- a/xl2tpd.c ++++ b/xl2tpd.c +@@ -1582,6 +1582,8 @@ void do_control () + if (resf) + { + fclose (resf); ++ /* unlink it anyway to prevent leftover a regular file. */ ++ unlink(res_filename); + } + } + +-- +1.7.10.4 + diff --git a/net/xl2tpd/patches/209-xl2tpd-ignore-SIGPIPE-signal.patch b/net/xl2tpd/patches/209-xl2tpd-ignore-SIGPIPE-signal.patch new file mode 100644 index 000000000..a0d88bd34 --- /dev/null +++ b/net/xl2tpd/patches/209-xl2tpd-ignore-SIGPIPE-signal.patch @@ -0,0 +1,32 @@ +From 2d0eff7f56936823d784425d2171be295ba11027 Mon Sep 17 00:00:00 2001 +From: Yousong Zhou +Date: Fri, 15 May 2015 15:55:10 +0800 +Subject: [PATCH 209/210] xl2tpd: ignore SIGPIPE signal. + +--- + xl2tpd.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/xl2tpd.c b/xl2tpd.c +index c11fe66..58ed868 100644 +--- a/xl2tpd.c ++++ b/xl2tpd.c +@@ -1551,7 +1551,6 @@ void do_control () + /*FIXME: check quotes to allow filenames with spaces? + (do not forget quotes escaping to allow filenames with quotes)*/ + +- /*FIXME: write to res_filename may cause SIGPIPE, need to catch it*/ + resf = fopen (res_filename, "w"); + if (!resf) { + l2tp_log (LOG_DEBUG, "%s: Can't open result file %s\n", +@@ -1811,6 +1810,7 @@ void init (int argc,char *argv[]) + signal (SIGCHLD, &sigchld_handler); + signal (SIGUSR1, &sigusr1_handler); + signal (SIGHUP, &sighup_handler); ++ signal (SIGPIPE, SIG_IGN); + init_scheduler (); + + unlink(gconfig.controlfile); +-- +1.7.10.4 + diff --git a/net/xl2tpd/patches/210-xl2tpd-control-show-all-available-commands-in-help.patch b/net/xl2tpd/patches/210-xl2tpd-control-show-all-available-commands-in-help.patch new file mode 100644 index 000000000..8eccffa58 --- /dev/null +++ b/net/xl2tpd/patches/210-xl2tpd-control-show-all-available-commands-in-help.patch @@ -0,0 +1,119 @@ +From 26b77b7cdc70beddc68507f74372a4e2815720f0 Mon Sep 17 00:00:00 2001 +From: Yousong Zhou +Date: Sun, 17 May 2015 10:53:44 +0800 +Subject: [PATCH 210/210] xl2tpd-control: show all available commands in + --help. + +--- + xl2tpd-control.c | 63 ++++++++++++++++++++++++++++++++++++++---------------- + 1 file changed, 44 insertions(+), 19 deletions(-) + +diff --git a/xl2tpd-control.c b/xl2tpd-control.c +index 6b08850..b98ff24 100644 +--- a/xl2tpd-control.c ++++ b/xl2tpd-control.c +@@ -51,6 +51,7 @@ struct command_t + char *name; + int (*handler) (FILE*, char* tunnel, int optc, char *optv[]); + int requires_tunnel; ++ char *help; + }; + + int command_add_lac (FILE*, char* tunnel, int optc, char *optv[]); +@@ -65,13 +66,29 @@ int command_available (FILE*, char* tunnel, int optc, char *optv[]); + + struct command_t commands[] = { + /* Keep this command mapping for backwards compat */ +- {"add", &command_add_lac, TUNNEL_REQUIRED}, +- {"connect", &command_connect_lac, TUNNEL_REQUIRED}, +- {"disconnect", &command_disconnect_lac, TUNNEL_REQUIRED}, +- {"remove", &command_remove_lac, TUNNEL_REQUIRED}, ++ {"add", &command_add_lac, TUNNEL_REQUIRED, ++ "\tadd\tadds new or modify existing lac configuration.\n" ++ "\t\tConfiguration must be specified as command options in\n" ++ "\t\t= pairs format.\n" ++ "\t\tSee available options in xl2tpd.conf(5)\n" ++ }, ++ {"connect", &command_connect_lac, TUNNEL_REQUIRED, ++ "\tconnect\ttries to activate the tunnel.\n" ++ "\t\tUsername and secret for the tunnel can be passed as\n" ++ "\t\tcommand options.\n" ++ }, ++ {"disconnect", &command_disconnect_lac, TUNNEL_REQUIRED, ++ "\tdisconnect\tdisconnects the tunnel.\n" ++ }, ++ {"remove", &command_remove_lac, TUNNEL_REQUIRED, ++ "\tremove\tremoves lac configuration from xl2tpd.\n" ++ "\t\txl2tpd disconnects the tunnel before removing.\n" ++ }, + + /* LAC commands */ +- {"add-lac", &command_add_lac, TUNNEL_REQUIRED}, ++ {"add-lac", &command_add_lac, TUNNEL_REQUIRED, ++ "\tadd-lns\tadds new or modify existing lns configuration.\n" ++ }, + {"connect-lac", &command_connect_lac, TUNNEL_REQUIRED}, + {"disconnect-lac", &command_disconnect_lac, TUNNEL_REQUIRED}, + {"remove-lac", &command_remove_lac, TUNNEL_REQUIRED}, +@@ -89,36 +106,44 @@ struct command_t commands[] = { + + void usage() + { ++ int i; ++ + printf ("\nxl2tpd server version %s\n", SERVER_VERSION); + printf ("Usage: xl2tpd-control [-c ] []\n" + "\n" + " -c\tspecifies xl2tpd control file\n" + " -d\tspecify xl2tpd-control to run in debug mode\n" + "--help\tshows extended help\n" +- "Available commands: add, connect, disconnect, remove, add-lns\n" + ); ++ ++ printf ("Available commands: "); ++ for (i = 0; commands[i].name; i++) { ++ struct command_t *command = &commands[i]; ++ int last = command[1].name == NULL; ++ ++ printf ("%s%s", command->name, !last ? ", " : "\n"); ++ } + } + + void help() + { ++ int i; ++ + usage(); + printf ( + "\n" + "Commands help:\n" +- "\tadd\tadds new or modify existing lac configuration.\n" +- "\t\tConfiguration must be specified as command options in\n" +- "\t\t= pairs format.\n" +- "\t\tSee available options in xl2tpd.conf(5)\n" +- "\tconnect\ttries to activate the tunnel.\n" +- "\t\tUsername and secret for the tunnel can be passed as\n" +- "\t\tcommand options.\n" +- "\tdisconnect\tdisconnects the tunnel.\n" +- "\tremove\tremoves lac configuration from xl2tpd.\n" +- "\t\txl2tpd disconnects the tunnel before removing.\n" +- "\n" +- "\tadd-lns\tadds new or modify existing lns configuration.\n" +- "See xl2tpd-control man page for more help\n" + ); ++ ++ for (i = 0; commands[i].name; i++) { ++ struct command_t *command = &commands[i]; ++ ++ if (!command->help) ++ continue; ++ printf ("%s", command->help); ++ } ++ /*FIXME Ha! there is currently no manpage for xl2tpd-control */ ++ printf ("See xl2tpd-control man page for more help\n"); + } + + void cleanup(void) +-- +1.7.10.4 + diff --git a/net/xl2tpd/patches/250-xl2tpd-control-atexit-needs-stdlib.patch b/net/xl2tpd/patches/250-xl2tpd-control-atexit-needs-stdlib.patch deleted file mode 100644 index e4dad8e8d..000000000 --- a/net/xl2tpd/patches/250-xl2tpd-control-atexit-needs-stdlib.patch +++ /dev/null @@ -1,12 +0,0 @@ -Index: xl2tpd-1.3.7pre20141126/xl2tpd-control.c -=================================================================== ---- xl2tpd-1.3.7pre20141126.orig/xl2tpd-control.c -+++ xl2tpd-1.3.7pre20141126/xl2tpd-control.c -@@ -12,6 +12,7 @@ - - #define _GNU_SOURCE - -+#include - #include - #include - #include From 84c6815a9c6ba7224c3f94bf3d63645cad7a78d2 Mon Sep 17 00:00:00 2001 From: Hauke Mehrtens Date: Sat, 23 May 2015 18:28:17 +0200 Subject: [PATCH 442/681] openvswitch: fix build with kernel >= 3.18.13 This fixes a build problem with kernel >= 3.18.13. This should close #1283. Signed-off-by: Hauke Mehrtens --- net/openvswitch/Makefile | 2 +- ...add-vlan_hwaccel_push_inside-for-ker.patch | 35 +++++++++++++++++++ 2 files changed, 36 insertions(+), 1 deletion(-) create mode 100644 net/openvswitch/patches/0003-datapath-do-not-add-vlan_hwaccel_push_inside-for-ker.patch diff --git a/net/openvswitch/Makefile b/net/openvswitch/Makefile index eb37696da..08c65be1c 100644 --- a/net/openvswitch/Makefile +++ b/net/openvswitch/Makefile @@ -11,7 +11,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=openvswitch -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_VERSION:=2.3.90 PKG_RELEASE=$(PKG_SOURCE_VERSION) PKG_LICENSE:=Apache-2.0 diff --git a/net/openvswitch/patches/0003-datapath-do-not-add-vlan_hwaccel_push_inside-for-ker.patch b/net/openvswitch/patches/0003-datapath-do-not-add-vlan_hwaccel_push_inside-for-ker.patch new file mode 100644 index 000000000..673b8d6b5 --- /dev/null +++ b/net/openvswitch/patches/0003-datapath-do-not-add-vlan_hwaccel_push_inside-for-ker.patch @@ -0,0 +1,35 @@ +From 5919cb26c631b1dd77a745a3c546f9d117ed34b3 Mon Sep 17 00:00:00 2001 +From: Hauke Mehrtens +Date: Sat, 23 May 2015 18:12:09 +0200 +Subject: [PATCH] datapath: do not add vlan_hwaccel_push_inside() for kernel >= + 3.18.13 + +The vlan_hwaccel_push_inside() function was backported in this commit +to kernel 3.18.13: + +commit a67e2e88342accd49587d9bad72f6dabd7673f7c +Author: Jiri Pirko +Date: Wed Nov 19 14:04:59 2014 +0100 + + vlan: introduce *vlan_hwaccel_push_inside helpers + + [ Upstream commit 5968250c868ceee680aa77395b24e6ddcae17d36 ] + +Without this patch compilation breaks on kernel >= 3.18.13 + +Signed-off-by: Hauke Mehrtens +--- + datapath/linux/compat/include/linux/if_vlan.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +--- a/datapath/linux/compat/include/linux/if_vlan.h ++++ b/datapath/linux/compat/include/linux/if_vlan.h +@@ -52,7 +52,7 @@ static inline struct sk_buff *rpl_vlan_i + } + #endif + +-#if LINUX_VERSION_CODE < KERNEL_VERSION(3,19,0) ++#if LINUX_VERSION_CODE < KERNEL_VERSION(3,18,13) + /* + * __vlan_hwaccel_push_inside - pushes vlan tag to the payload + * @skb: skbuff to tag From d8362b6d049a1e64b5294078e1e069697ff80df5 Mon Sep 17 00:00:00 2001 From: Nicolas Thill Date: Sun, 24 May 2015 20:38:44 +0200 Subject: [PATCH 443/681] ipsec-tools: fix null dereference in racoon * add a patch to fix a null pointer dereference in src/racoon/gssapi.c (CVE-2015-4047) * refresh patches * bumb release number Signed-off-by: Nicolas Thill --- net/ipsec-tools/Makefile | 4 ++-- net/ipsec-tools/patches/002-patch8-utmp.patch | 4 ++-- .../patches/003-microsoft-fqdn-in-main.patch | 2 +- ...OLICY_FWD => 007-force_have_policy_fwd.patch} | 4 +--- .../008-racoon-fix_dereference_crash.patch | 16 ++++++++++++++++ 5 files changed, 22 insertions(+), 8 deletions(-) rename net/ipsec-tools/patches/{force_HAVE_POLICY_FWD => 007-force_have_policy_fwd.patch} (72%) create mode 100644 net/ipsec-tools/patches/008-racoon-fix_dereference_crash.patch diff --git a/net/ipsec-tools/Makefile b/net/ipsec-tools/Makefile index ae9c83c00..d758b3623 100644 --- a/net/ipsec-tools/Makefile +++ b/net/ipsec-tools/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2006-2011 OpenWrt.org +# Copyright (C) 2006-2015 OpenWrt.org # 2014 Noah Meyerhans # # This is free software, licensed under the GNU General Public License v2. @@ -11,7 +11,7 @@ include $(INCLUDE_DIR)/kernel.mk PKG_NAME:=ipsec-tools PKG_VERSION:=0.8.2 -PKG_RELEASE:=2 +PKG_RELEASE:=3 PKG_MAINTAINER := "Noah Meyerhans " PKG_LICENSE := BSD-3-Clause diff --git a/net/ipsec-tools/patches/002-patch8-utmp.patch b/net/ipsec-tools/patches/002-patch8-utmp.patch index 16dc9237c..547539043 100644 --- a/net/ipsec-tools/patches/002-patch8-utmp.patch +++ b/net/ipsec-tools/patches/002-patch8-utmp.patch @@ -9,7 +9,7 @@ #if defined(__APPLE__) && defined(__MACH__) #include #endif -@@ -1661,7 +1661,8 @@ isakmp_cfg_accounting_system(port, raddr +@@ -1664,7 +1664,8 @@ isakmp_cfg_accounting_system(port, raddr int inout; { int error = 0; @@ -19,7 +19,7 @@ char addr[NI_MAXHOST]; if (usr == NULL || usr[0]=='\0') { -@@ -1670,34 +1671,37 @@ isakmp_cfg_accounting_system(port, raddr +@@ -1673,34 +1674,37 @@ isakmp_cfg_accounting_system(port, raddr return -1; } diff --git a/net/ipsec-tools/patches/003-microsoft-fqdn-in-main.patch b/net/ipsec-tools/patches/003-microsoft-fqdn-in-main.patch index 443d38d5e..7174300da 100644 --- a/net/ipsec-tools/patches/003-microsoft-fqdn-in-main.patch +++ b/net/ipsec-tools/patches/003-microsoft-fqdn-in-main.patch @@ -1,6 +1,6 @@ --- a/src/racoon/ipsec_doi.c +++ b/src/racoon/ipsec_doi.c -@@ -3582,8 +3582,8 @@ ipsecdoi_checkid1(iph1) +@@ -3581,8 +3581,8 @@ ipsecdoi_checkid1(iph1) iph1->approval->authmethod == OAKLEY_ATTR_AUTH_METHOD_PSKEY) { if (id_b->type != IPSECDOI_ID_IPV4_ADDR && id_b->type != IPSECDOI_ID_IPV6_ADDR) { diff --git a/net/ipsec-tools/patches/force_HAVE_POLICY_FWD b/net/ipsec-tools/patches/007-force_have_policy_fwd.patch similarity index 72% rename from net/ipsec-tools/patches/force_HAVE_POLICY_FWD rename to net/ipsec-tools/patches/007-force_have_policy_fwd.patch index 24e64458b..69cd1c039 100644 --- a/net/ipsec-tools/patches/force_HAVE_POLICY_FWD +++ b/net/ipsec-tools/patches/007-force_have_policy_fwd.patch @@ -1,8 +1,6 @@ -diff --git a/configure.ac b/configure.ac -index 8506245..eca8895 100644 --- a/configure.ac +++ b/configure.ac -@@ -724,7 +724,8 @@ case $host in +@@ -732,7 +732,8 @@ case $host in ], [AC_MSG_RESULT(yes) AC_DEFINE([HAVE_POLICY_FWD], [], [Have forward policy])], diff --git a/net/ipsec-tools/patches/008-racoon-fix_dereference_crash.patch b/net/ipsec-tools/patches/008-racoon-fix_dereference_crash.patch new file mode 100644 index 000000000..5e3a2d4dd --- /dev/null +++ b/net/ipsec-tools/patches/008-racoon-fix_dereference_crash.patch @@ -0,0 +1,16 @@ +Fix null dereference in racoon/gssapi.c (CVE-2015-4047) + +--- a/src/racoon/gssapi.c ++++ b/src/racoon/gssapi.c +@@ -192,6 +192,11 @@ gssapi_init(struct ph1handle *iph1) + gss_name_t princ, canon_princ; + OM_uint32 maj_stat, min_stat; + ++ if (iph1->rmconf == NULL) { ++ plog(LLV_ERROR, LOCATION, NULL, "no remote config\n"); ++ return -1; ++ } ++ + gps = racoon_calloc(1, sizeof (struct gssapi_ph1_state)); + if (gps == NULL) { + plog(LLV_ERROR, LOCATION, NULL, "racoon_calloc failed\n"); From 65fb23d51589b42d9155bab73b0544b5b182a96c Mon Sep 17 00:00:00 2001 From: Christian Schoenebeck Date: Sun, 24 May 2015 21:34:34 +0200 Subject: [PATCH 444/681] radicale: fixed hotplug and init script * fixed hotplug script (not restarting on "ifup") * fixed init script (not stopping in 1 second) * fixed PKG_MAINTAINER string * removing not needed comments in config file Signed-off-by: Christian Schoenebeck --- net/radicale/Makefile | 4 ++-- net/radicale/files/radicale.config | 2 -- net/radicale/files/radicale.hotplug | 2 +- net/radicale/files/radicale.init | 2 +- 4 files changed, 4 insertions(+), 6 deletions(-) diff --git a/net/radicale/Makefile b/net/radicale/Makefile index 329ab68f0..f604a9fdf 100644 --- a/net/radicale/Makefile +++ b/net/radicale/Makefile @@ -8,8 +8,8 @@ include $(TOPDIR)/rules.mk PKG_NAME:=radicale PKG_VERSION:=0.10 -PKG_RELEASE:=1 -PKG_MAINTAINER:=Christian Schoenebeck +PKG_RELEASE:=2 +PKG_MAINTAINER:=Christian Schoenebeck PKG_LICENSE:=GPL-3.0 PKG_LICENSE_FILES:=COPYING diff --git a/net/radicale/files/radicale.config b/net/radicale/files/radicale.config index ea10bc9f4..58148f823 100644 --- a/net/radicale/files/radicale.config +++ b/net/radicale/files/radicale.config @@ -71,7 +71,6 @@ config setting 'auth' # Value: None | htpasswd | IMAP | LDAP | PAM | courier | http | remote_user | custom # Default: None # if setting 'htpasswd' the file /etc/radicale/users is used (hardcoded) -# option type 'htpasswd' # Htpasswd encryption method # Value: plain | sha1 | ssha | crypt @@ -98,7 +97,6 @@ config setting 'rights' # Value: None | authenticated | owner_only | owner_write | from_file | custom # Default: None # if setting 'from_file' the file /etc/radicale/rights is used (hardcoded) -# option type 'from_file' # Custom rights handler # option custom_handler '' diff --git a/net/radicale/files/radicale.hotplug b/net/radicale/files/radicale.hotplug index 634ad2efa..3b9141986 100644 --- a/net/radicale/files/radicale.hotplug +++ b/net/radicale/files/radicale.hotplug @@ -3,7 +3,7 @@ # only (re-)start on ifup [ "$ACTION" = "ifup" ] || exit 0 -_PID=$(ps | grep '[p]ython.*[r]adicale' 2>/dev/null | awk '{print \$1}') +_PID=$(ps | grep '[p]ython.*[r]adicale' 2>/dev/null | awk '{print $1}') kill -1 $_PID 2>/dev/null if [ $? -eq 0 ]; then # only restart if already running diff --git a/net/radicale/files/radicale.init b/net/radicale/files/radicale.init index bb35a18a0..991ca5051 100755 --- a/net/radicale/files/radicale.init +++ b/net/radicale/files/radicale.init @@ -208,7 +208,7 @@ stop() { local _PID=$(eval "$PGREP") [ -z "$_PID" ] && return 0 # not running kill -15 $_PID 2>/dev/null - sleep 1 # give time to shutdown + sleep 3 # give time to shutdown local _tmp=$(eval "$PGREP") if [ -z "$_tmp" ]; then logger -p user.notice -t "radicale[$_PID]" "Service shutdown successfully" From 2de5acd6bd1c4de4ecd9cb2f2242d71b357a3d8f Mon Sep 17 00:00:00 2001 From: Nuno Goncalves Date: Mon, 25 May 2015 14:46:46 +0100 Subject: [PATCH 445/681] tcsh: update to 6.19.00 Signed-off-by: Nuno Goncalves --- utils/tcsh/Makefile | 6 +++--- utils/tcsh/patches/001-gethost | 11 +++++++++++ 2 files changed, 14 insertions(+), 3 deletions(-) create mode 100644 utils/tcsh/patches/001-gethost diff --git a/utils/tcsh/Makefile b/utils/tcsh/Makefile index a50f18200..e2b6b4fdc 100644 --- a/utils/tcsh/Makefile +++ b/utils/tcsh/Makefile @@ -7,12 +7,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=tcsh -PKG_VERSION:=6.18.01 +PKG_VERSION:=6.19.00 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=ftp://ftp.astron.com/pub/tcsh/ -PKG_MD5SUM:=6eed09dbd4223ab5b6955378450d228a +PKG_SOURCE_URL:=http://ftp.funet.fi/pub/mirrors/ftp.astron.com/pub/tcsh/ +PKG_MD5SUM:=f5f854833578647795bc906dd4bcb5d5 PKG_LICENSE:=BSD-4-Clause-UC PKG_LICENSE_FILES:=Copyright diff --git a/utils/tcsh/patches/001-gethost b/utils/tcsh/patches/001-gethost new file mode 100644 index 000000000..b05e155de --- /dev/null +++ b/utils/tcsh/patches/001-gethost @@ -0,0 +1,11 @@ +--- a/Makefile.in ++++ b/Makefile.in +@@ -449,7 +449,7 @@ pure:$(P) ${OBJS} + + gethost: gethost.c sh.err.h tc.const.h sh.h + rm -f gethost +- ${CC_FOR_GETHOST} -o gethost ${CPPFLAGS} ${CFLAGS} $(srcdir)/gethost.c ++ ${CC_FOR_GETHOST} -o gethost ${CPPFLAGS} $(srcdir)/gethost.c + + tc.defs.c: gethost host.defs + @rm -f $@.tmp From 1e2cd3318b67584d12ea9ee27e1b23927510f630 Mon Sep 17 00:00:00 2001 From: Ted Hess Date: Mon, 25 May 2015 11:50:14 -0400 Subject: [PATCH 446/681] qrencode: Fix build dependency (libpng) Signed-off-by: Ted Hess --- libs/qrencode/Makefile | 2 ++ 1 file changed, 2 insertions(+) diff --git a/libs/qrencode/Makefile b/libs/qrencode/Makefile index db2d69713..8d70b4a05 100644 --- a/libs/qrencode/Makefile +++ b/libs/qrencode/Makefile @@ -21,6 +21,8 @@ PKG:FIXUP:=autoreconf include $(INCLUDE_DIR)/package.mk +PKG_BUILD_DEPENDS:=libpng + define Package/libqrencode SECTION:=libs CATEGORY:=Libraries From 80396166a832ce06f8dec8f33f8b82e6fb3e040a Mon Sep 17 00:00:00 2001 From: Christian Pointner Date: Sun, 17 May 2015 17:58:54 +0200 Subject: [PATCH 447/681] ntpd: enable ATOM (PPS) support Signed-off-by: Christian Pointner --- net/ntpd/Makefile | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/net/ntpd/Makefile b/net/ntpd/Makefile index 46e08f594..b9c9706cb 100644 --- a/net/ntpd/Makefile +++ b/net/ntpd/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=ntp PKG_VERSION:=4.2.8p2 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://www.eecis.udel.edu/~ntp/ntp_spool/ntp4/ntp-4.2/ @@ -103,6 +103,7 @@ CONFIGURE_ARGS += \ --enable-NMEA \ --enable-LOCAL-CLOCK \ --enable-SHM \ + --enable-ATOM \ --enable-linuxcaps \ --with-yielding-select=yes \ --with-crypto \ From 5989f6ca0b47eb575c3df94cf473bcde0819f221 Mon Sep 17 00:00:00 2001 From: Ted Hess Date: Mon, 25 May 2015 16:31:36 -0400 Subject: [PATCH 448/681] qrencode: Completely remove libpng dependency from package configure Signed-off-by: Ted Hess --- libs/qrencode/Makefile | 2 - libs/qrencode/patches/001-disable-png.patch | 133 +++++++++++++++++--- 2 files changed, 118 insertions(+), 17 deletions(-) diff --git a/libs/qrencode/Makefile b/libs/qrencode/Makefile index 8d70b4a05..db2d69713 100644 --- a/libs/qrencode/Makefile +++ b/libs/qrencode/Makefile @@ -21,8 +21,6 @@ PKG:FIXUP:=autoreconf include $(INCLUDE_DIR)/package.mk -PKG_BUILD_DEPENDS:=libpng - define Package/libqrencode SECTION:=libs CATEGORY:=Libraries diff --git a/libs/qrencode/patches/001-disable-png.patch b/libs/qrencode/patches/001-disable-png.patch index 2549ee6fc..8ede38c25 100644 --- a/libs/qrencode/patches/001-disable-png.patch +++ b/libs/qrencode/patches/001-disable-png.patch @@ -1,6 +1,6 @@ --- a/configure.ac +++ b/configure.ac -@@ -58,9 +58,6 @@ +@@ -58,9 +58,6 @@ AC_ARG_WITH([tools], [AS_HELP_STRING([-- [build_tools=$withval], [build_tools=yes]) AM_CONDITIONAL(BUILD_TOOLS, [test "x$build_tools" = "xyes" ]) @@ -20,7 +20,7 @@ #include #include "qrencode.h" -@@ -49,7 +48,6 @@ +@@ -49,7 +48,6 @@ static unsigned int bg_color[4] = {255, static int verbose = 0; enum imageType { @@ -28,7 +28,7 @@ EPS_TYPE, SVG_TYPE, ANSI_TYPE, -@@ -60,7 +58,7 @@ +@@ -60,7 +58,7 @@ enum imageType { ANSIUTF8_TYPE }; @@ -37,7 +37,7 @@ static const struct option options[] = { {"help" , no_argument , NULL, 'h'}, -@@ -96,13 +94,13 @@ +@@ -96,13 +94,13 @@ static void usage(int help, int longopt) if(longopt) { fprintf(stderr, "Usage: qrencode [OPTION]... [STRING]\n" @@ -53,7 +53,7 @@ " (suffix is removed from FILENAME, if specified)\n" " -s NUMBER, --size=NUMBER\n" " specify module size in dots (pixels). (default=3)\n\n" -@@ -116,9 +114,9 @@ +@@ -116,9 +114,9 @@ static void usage(int help, int longopt) " specify the width of the margins. (default=4 (2 for Micro QR)))\n\n" " -d NUMBER, --dpi=NUMBER\n" " specify the DPI of the generated PNG. (default=72)\n\n" @@ -65,7 +65,7 @@ " -S, --structured\n" " make structured symbols. Version must be specified.\n\n" " -k, --kanji assume that the input text contains kanji (shift-jis).\n\n" -@@ -133,7 +131,7 @@ +@@ -133,7 +131,7 @@ static void usage(int help, int longopt) " --background=RRGGBB[AA]\n" " specify foreground/background color in hexadecimal notation.\n" " 6-digit (RGB) or 8-digit (RGBA) form are supported.\n" @@ -74,7 +74,7 @@ " -V, --version\n" " display the version number and copyrights of the qrencode.\n\n" " --verbose\n" -@@ -153,12 +151,12 @@ +@@ -153,12 +151,12 @@ static void usage(int help, int longopt) } else { fprintf(stderr, "Usage: qrencode [OPTION]... [STRING]\n" @@ -89,7 +89,7 @@ " (suffix is removed from FILENAME, if specified)\n" " -s NUMBER specify module size in dots (pixels). (default=3)\n" " -l {LMQH} specify error correction level from L (lowest) to H (highest).\n" -@@ -166,8 +164,8 @@ +@@ -166,8 +164,8 @@ static void usage(int help, int longopt) " -v NUMBER specify the version of the symbol. (default=auto)\n" " -m NUMBER specify the width of the margins. (default=4 (2 for Micro))\n" " -d NUMBER specify the DPI of the generated PNG. (default=72)\n" @@ -100,7 +100,7 @@ " -S make structured symbols. Version must be specified.\n" " -k assume that the input text contains kanji (shift-jis).\n" " -c encode lower-case alphabet characters in 8-bit mode. (default)\n" -@@ -178,7 +176,7 @@ +@@ -178,7 +176,7 @@ static void usage(int help, int longopt) " --background=RRGGBB[AA]\n" " specify foreground/background color in hexadecimal notation.\n" " 6-digit (RGB) or 8-digit (RGBA) form are supported.\n" @@ -109,7 +109,7 @@ " -V display the version number and copyrights of the qrencode.\n" " [STRING] input data. If it is not specified, data will be taken from\n" " standard input.\n" -@@ -253,128 +251,6 @@ +@@ -253,128 +251,6 @@ static FILE *openFile(const char *outfil return fp; } @@ -238,7 +238,7 @@ static int writeEPS(QRcode *qrcode, const char *outfile) { FILE *fp; -@@ -831,9 +707,6 @@ +@@ -831,9 +707,6 @@ static void qrencode(const unsigned char } switch(image_type) { @@ -248,7 +248,7 @@ case EPS_TYPE: writeEPS(qrcode, outfile); break; -@@ -887,9 +760,6 @@ +@@ -887,9 +760,6 @@ static void qrencodeStructured(const uns size_t suffix_size; switch(image_type) { @@ -258,7 +258,7 @@ case EPS_TYPE: type_suffix = ".eps"; break; -@@ -948,9 +818,6 @@ +@@ -948,9 +818,6 @@ static void qrencodeStructured(const uns } switch(image_type) { @@ -268,7 +268,7 @@ case EPS_TYPE: writeEPS(p->code, filename); break; -@@ -1062,9 +929,7 @@ +@@ -1062,9 +929,7 @@ int main(int argc, char **argv) } break; case 't': @@ -279,7 +279,7 @@ image_type = EPS_TYPE; } else if(strcasecmp(optarg, "svg") == 0) { image_type = SVG_TYPE; -@@ -1133,11 +998,6 @@ +@@ -1133,11 +998,6 @@ int main(int argc, char **argv) exit(EXIT_SUCCESS); } @@ -291,3 +291,106 @@ if(optind < argc) { intext = (unsigned char *)argv[optind]; length = strlen((char *)intext); +--- a/configure ++++ b/configure +@@ -12646,100 +12646,6 @@ else + BUILD_TOOLS_FALSE= + fi + +-if test x$build_tools = xyes ; then +- +-pkg_failed=no +-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for png" >&5 +-$as_echo_n "checking for png... " >&6; } +- +-if test -n "$png_CFLAGS"; then +- pkg_cv_png_CFLAGS="$png_CFLAGS" +- elif test -n "$PKG_CONFIG"; then +- if test -n "$PKG_CONFIG" && \ +- { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"\"libpng\"\""; } >&5 +- ($PKG_CONFIG --exists --print-errors ""libpng"") 2>&5 +- ac_status=$? +- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 +- test $ac_status = 0; }; then +- pkg_cv_png_CFLAGS=`$PKG_CONFIG --cflags ""libpng"" 2>/dev/null` +- test "x$?" != "x0" && pkg_failed=yes +-else +- pkg_failed=yes +-fi +- else +- pkg_failed=untried +-fi +-if test -n "$png_LIBS"; then +- pkg_cv_png_LIBS="$png_LIBS" +- elif test -n "$PKG_CONFIG"; then +- if test -n "$PKG_CONFIG" && \ +- { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"\"libpng\"\""; } >&5 +- ($PKG_CONFIG --exists --print-errors ""libpng"") 2>&5 +- ac_status=$? +- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 +- test $ac_status = 0; }; then +- pkg_cv_png_LIBS=`$PKG_CONFIG --libs ""libpng"" 2>/dev/null` +- test "x$?" != "x0" && pkg_failed=yes +-else +- pkg_failed=yes +-fi +- else +- pkg_failed=untried +-fi +- +- +- +-if test $pkg_failed = yes; then +- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +-$as_echo "no" >&6; } +- +-if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then +- _pkg_short_errors_supported=yes +-else +- _pkg_short_errors_supported=no +-fi +- if test $_pkg_short_errors_supported = yes; then +- png_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs ""libpng"" 2>&1` +- else +- png_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs ""libpng"" 2>&1` +- fi +- # Put the nasty error message in config.log where it belongs +- echo "$png_PKG_ERRORS" >&5 +- +- as_fn_error $? "Package requirements (\"libpng\") were not met: +- +-$png_PKG_ERRORS +- +-Consider adjusting the PKG_CONFIG_PATH environment variable if you +-installed software in a non-standard prefix. +- +-Alternatively, you may set the environment variables png_CFLAGS +-and png_LIBS to avoid the need to call pkg-config. +-See the pkg-config man page for more details." "$LINENO" 5 +-elif test $pkg_failed = untried; then +- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +-$as_echo "no" >&6; } +- { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +-as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it +-is in your PATH or set the PKG_CONFIG environment variable to the full +-path to pkg-config. +- +-Alternatively, you may set the environment variables png_CFLAGS +-and png_LIBS to avoid the need to call pkg-config. +-See the pkg-config man page for more details. +- +-To get pkg-config, see . +-See \`config.log' for more details" "$LINENO" 5; } +-else +- png_CFLAGS=$pkg_cv_png_CFLAGS +- png_LIBS=$pkg_cv_png_LIBS +- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +-$as_echo "yes" >&6; } +- +-fi +-fi +- + + # Check whether --with-tests was given. + if test "${with_tests+set}" = set; then : From 76f57ca7eb4308d95118a5eb7ff7a5f73addf989 Mon Sep 17 00:00:00 2001 From: Nuno Goncalves Date: Mon, 25 May 2015 22:03:13 +0100 Subject: [PATCH 449/681] sshtunnel: fixes validation bug with dynamic port forwarding. Thanks to Avi Alkalay Signed-off-by: Nuno Goncalves --- net/sshtunnel/files/sshtunnel.init | 1 - 1 file changed, 1 deletion(-) diff --git a/net/sshtunnel/files/sshtunnel.init b/net/sshtunnel/files/sshtunnel.init index 4ca491f67..482ec6778 100644 --- a/net/sshtunnel/files/sshtunnel.init +++ b/net/sshtunnel/files/sshtunnel.init @@ -66,7 +66,6 @@ load_tunnelD() { config_get localaddress $1 localaddress "*" config_get localport $1 localport - [ "$remoteport" -gt 0 ] || append_string "error" "[tunnelD: $1]remoteport must be a positive integer" "; " [ "$localport" -gt 0 ] || append_string "error" "[tunnelD: $1]localport must be a positive integer" "; " [ -n "$error" ] && return 1 From ccd9752fb68c7ce3d6f70896a717f64a882fd62c Mon Sep 17 00:00:00 2001 From: Mislav Novakovic Date: Tue, 26 May 2015 00:37:09 +0200 Subject: [PATCH 450/681] freeradius2: add mirror for older releases Signed-off-by: Mislav Novakovic --- net/freeradius2/Makefile | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/net/freeradius2/Makefile b/net/freeradius2/Makefile index ac0c1b04b..82a125ba2 100644 --- a/net/freeradius2/Makefile +++ b/net/freeradius2/Makefile @@ -12,7 +12,9 @@ PKG_VERSION:=2.2.7 PKG_RELEASE:=1 PKG_SOURCE:=freeradius-server-$(PKG_VERSION).tar.bz2 -PKG_SOURCE_URL:=ftp://ftp.freeradius.org/pub/freeradius/ +PKG_SOURCE_URL:=\ + ftp://ftp.freeradius.org/pub/freeradius/ \ + ftp://ftp.freeradius.org/pub/freeradius/old/ PKG_MD5SUM:=b84b9ffa1ac9b20b2643e5a08ac483a1 PKG_MAINTAINER:=Daniel Golle PKG_LICENSE:=GPL-2.0 From 4a343362da5b7c54fcfa7b403a026c1a2fee0b88 Mon Sep 17 00:00:00 2001 From: Nikolay Martynov Date: Sun, 24 May 2015 01:52:35 -0400 Subject: [PATCH 451/681] bridge-utils: copy from oldpackages * update Makefile accoring to CONTRIBUTING.md, set maintainer * fix file offset handling * use https://git.kernel.org/pub/scm/linux/kernel/git/shemminger/bridge-utils.git for source code Signed-off-by: Nikolay Martynov --- net/bridge-utils/Makefile | 52 +++++++++++++++++++ .../patches/001-libbridge_cflags.patch | 11 ++++ .../010-fix_struct_in6_addr_usage.patch | 10 ++++ 3 files changed, 73 insertions(+) create mode 100644 net/bridge-utils/Makefile create mode 100644 net/bridge-utils/patches/001-libbridge_cflags.patch create mode 100644 net/bridge-utils/patches/010-fix_struct_in6_addr_usage.patch diff --git a/net/bridge-utils/Makefile b/net/bridge-utils/Makefile new file mode 100644 index 000000000..5a9cdb8af --- /dev/null +++ b/net/bridge-utils/Makefile @@ -0,0 +1,52 @@ +# +# Copyright (C) 2006-2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk +include $(INCLUDE_DIR)/kernel.mk + +PKG_NAME:=bridge-utils +PKG_VERSION:=1.5 +PKG_RELEASE:=3 + +PKG_SOURCE_PROTO:=git +PKG_SOURCE_URL:=https://git.kernel.org/pub/scm/linux/kernel/git/shemminger/bridge-utils.git +PKG_SOURCE_VERSION:=v${PKG_VERSION} +PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz + +PKG_LICENSE:=GPL-2.0+ +PKG_LICENSE_FILES:=COPYING +PKG_FIXUP:=autoreconf + +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz + +include $(INCLUDE_DIR)/package.mk + +define Package/bridge + SECTION:=net + CATEGORY:=Base system + TITLE:=Ethernet bridging configuration utility + URL:=http://bridge.sourceforge.net/ + PKG_MAINTAINER:=Nikolay Martynov +endef + +define Package/bridge/description + Manage ethernet bridging: a way to connect networks together to + form a larger network. +endef + +TARGET_CFLAGS += -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE + +CONFIGURE_ARGS += \ + --with-linux-headers="$(LINUX_DIR)" \ + +define Package/bridge/install + $(INSTALL_DIR) $(1)/usr/sbin + $(INSTALL_BIN) $(PKG_BUILD_DIR)/brctl/brctl $(1)/usr/sbin +endef + +$(eval $(call BuildPackage,bridge)) diff --git a/net/bridge-utils/patches/001-libbridge_cflags.patch b/net/bridge-utils/patches/001-libbridge_cflags.patch new file mode 100644 index 000000000..e35a64947 --- /dev/null +++ b/net/bridge-utils/patches/001-libbridge_cflags.patch @@ -0,0 +1,11 @@ +--- a/libbridge/Makefile.in ++++ b/libbridge/Makefile.in +@@ -5,7 +5,7 @@ AR=ar + RANLIB=@RANLIB@ + + CC=@CC@ +-CFLAGS = -Wall -g $(KERNEL_HEADERS) ++CFLAGS = -Wall -g @CFLAGS@ $(KERNEL_HEADERS) + + prefix=@prefix@ + exec_prefix=@exec_prefix@ diff --git a/net/bridge-utils/patches/010-fix_struct_in6_addr_usage.patch b/net/bridge-utils/patches/010-fix_struct_in6_addr_usage.patch new file mode 100644 index 000000000..c2087e590 --- /dev/null +++ b/net/bridge-utils/patches/010-fix_struct_in6_addr_usage.patch @@ -0,0 +1,10 @@ +--- a/libbridge/libbridge.h ++++ b/libbridge/libbridge.h +@@ -20,6 +20,7 @@ + #define _LIBBRIDGE_H + + #include ++#include + #include + #include + From 402918835cdc196e92cb7acd5fc2f47c69d1d5ab Mon Sep 17 00:00:00 2001 From: Jonathan Bennett Date: Mon, 25 May 2015 23:20:10 -0500 Subject: [PATCH 452/681] Revert "qrencode: Completely remove libpng dependency from package configure" This commit was not made by the package maintainer and needs to be reverted. This reverts commit 5989f6ca0b47eb575c3df94cf473bcde0819f221. Signed-off-by: Jonathan Bennett #include "qrencode.h" -@@ -49,7 +48,6 @@ static unsigned int bg_color[4] = {255, +@@ -49,7 +48,6 @@ static int verbose = 0; enum imageType { @@ -28,7 +28,7 @@ EPS_TYPE, SVG_TYPE, ANSI_TYPE, -@@ -60,7 +58,7 @@ enum imageType { +@@ -60,7 +58,7 @@ ANSIUTF8_TYPE }; @@ -37,7 +37,7 @@ static const struct option options[] = { {"help" , no_argument , NULL, 'h'}, -@@ -96,13 +94,13 @@ static void usage(int help, int longopt) +@@ -96,13 +94,13 @@ if(longopt) { fprintf(stderr, "Usage: qrencode [OPTION]... [STRING]\n" @@ -53,7 +53,7 @@ " (suffix is removed from FILENAME, if specified)\n" " -s NUMBER, --size=NUMBER\n" " specify module size in dots (pixels). (default=3)\n\n" -@@ -116,9 +114,9 @@ static void usage(int help, int longopt) +@@ -116,9 +114,9 @@ " specify the width of the margins. (default=4 (2 for Micro QR)))\n\n" " -d NUMBER, --dpi=NUMBER\n" " specify the DPI of the generated PNG. (default=72)\n\n" @@ -65,7 +65,7 @@ " -S, --structured\n" " make structured symbols. Version must be specified.\n\n" " -k, --kanji assume that the input text contains kanji (shift-jis).\n\n" -@@ -133,7 +131,7 @@ static void usage(int help, int longopt) +@@ -133,7 +131,7 @@ " --background=RRGGBB[AA]\n" " specify foreground/background color in hexadecimal notation.\n" " 6-digit (RGB) or 8-digit (RGBA) form are supported.\n" @@ -74,7 +74,7 @@ " -V, --version\n" " display the version number and copyrights of the qrencode.\n\n" " --verbose\n" -@@ -153,12 +151,12 @@ static void usage(int help, int longopt) +@@ -153,12 +151,12 @@ } else { fprintf(stderr, "Usage: qrencode [OPTION]... [STRING]\n" @@ -89,7 +89,7 @@ " (suffix is removed from FILENAME, if specified)\n" " -s NUMBER specify module size in dots (pixels). (default=3)\n" " -l {LMQH} specify error correction level from L (lowest) to H (highest).\n" -@@ -166,8 +164,8 @@ static void usage(int help, int longopt) +@@ -166,8 +164,8 @@ " -v NUMBER specify the version of the symbol. (default=auto)\n" " -m NUMBER specify the width of the margins. (default=4 (2 for Micro))\n" " -d NUMBER specify the DPI of the generated PNG. (default=72)\n" @@ -100,7 +100,7 @@ " -S make structured symbols. Version must be specified.\n" " -k assume that the input text contains kanji (shift-jis).\n" " -c encode lower-case alphabet characters in 8-bit mode. (default)\n" -@@ -178,7 +176,7 @@ static void usage(int help, int longopt) +@@ -178,7 +176,7 @@ " --background=RRGGBB[AA]\n" " specify foreground/background color in hexadecimal notation.\n" " 6-digit (RGB) or 8-digit (RGBA) form are supported.\n" @@ -109,7 +109,7 @@ " -V display the version number and copyrights of the qrencode.\n" " [STRING] input data. If it is not specified, data will be taken from\n" " standard input.\n" -@@ -253,128 +251,6 @@ static FILE *openFile(const char *outfil +@@ -253,128 +251,6 @@ return fp; } @@ -238,7 +238,7 @@ static int writeEPS(QRcode *qrcode, const char *outfile) { FILE *fp; -@@ -831,9 +707,6 @@ static void qrencode(const unsigned char +@@ -831,9 +707,6 @@ } switch(image_type) { @@ -248,7 +248,7 @@ case EPS_TYPE: writeEPS(qrcode, outfile); break; -@@ -887,9 +760,6 @@ static void qrencodeStructured(const uns +@@ -887,9 +760,6 @@ size_t suffix_size; switch(image_type) { @@ -258,7 +258,7 @@ case EPS_TYPE: type_suffix = ".eps"; break; -@@ -948,9 +818,6 @@ static void qrencodeStructured(const uns +@@ -948,9 +818,6 @@ } switch(image_type) { @@ -268,7 +268,7 @@ case EPS_TYPE: writeEPS(p->code, filename); break; -@@ -1062,9 +929,7 @@ int main(int argc, char **argv) +@@ -1062,9 +929,7 @@ } break; case 't': @@ -279,7 +279,7 @@ image_type = EPS_TYPE; } else if(strcasecmp(optarg, "svg") == 0) { image_type = SVG_TYPE; -@@ -1133,11 +998,6 @@ int main(int argc, char **argv) +@@ -1133,11 +998,6 @@ exit(EXIT_SUCCESS); } @@ -291,106 +291,3 @@ if(optind < argc) { intext = (unsigned char *)argv[optind]; length = strlen((char *)intext); ---- a/configure -+++ b/configure -@@ -12646,100 +12646,6 @@ else - BUILD_TOOLS_FALSE= - fi - --if test x$build_tools = xyes ; then -- --pkg_failed=no --{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for png" >&5 --$as_echo_n "checking for png... " >&6; } -- --if test -n "$png_CFLAGS"; then -- pkg_cv_png_CFLAGS="$png_CFLAGS" -- elif test -n "$PKG_CONFIG"; then -- if test -n "$PKG_CONFIG" && \ -- { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"\"libpng\"\""; } >&5 -- ($PKG_CONFIG --exists --print-errors ""libpng"") 2>&5 -- ac_status=$? -- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 -- test $ac_status = 0; }; then -- pkg_cv_png_CFLAGS=`$PKG_CONFIG --cflags ""libpng"" 2>/dev/null` -- test "x$?" != "x0" && pkg_failed=yes --else -- pkg_failed=yes --fi -- else -- pkg_failed=untried --fi --if test -n "$png_LIBS"; then -- pkg_cv_png_LIBS="$png_LIBS" -- elif test -n "$PKG_CONFIG"; then -- if test -n "$PKG_CONFIG" && \ -- { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"\"libpng\"\""; } >&5 -- ($PKG_CONFIG --exists --print-errors ""libpng"") 2>&5 -- ac_status=$? -- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 -- test $ac_status = 0; }; then -- pkg_cv_png_LIBS=`$PKG_CONFIG --libs ""libpng"" 2>/dev/null` -- test "x$?" != "x0" && pkg_failed=yes --else -- pkg_failed=yes --fi -- else -- pkg_failed=untried --fi -- -- -- --if test $pkg_failed = yes; then -- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 --$as_echo "no" >&6; } -- --if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then -- _pkg_short_errors_supported=yes --else -- _pkg_short_errors_supported=no --fi -- if test $_pkg_short_errors_supported = yes; then -- png_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs ""libpng"" 2>&1` -- else -- png_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs ""libpng"" 2>&1` -- fi -- # Put the nasty error message in config.log where it belongs -- echo "$png_PKG_ERRORS" >&5 -- -- as_fn_error $? "Package requirements (\"libpng\") were not met: -- --$png_PKG_ERRORS -- --Consider adjusting the PKG_CONFIG_PATH environment variable if you --installed software in a non-standard prefix. -- --Alternatively, you may set the environment variables png_CFLAGS --and png_LIBS to avoid the need to call pkg-config. --See the pkg-config man page for more details." "$LINENO" 5 --elif test $pkg_failed = untried; then -- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 --$as_echo "no" >&6; } -- { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 --$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} --as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it --is in your PATH or set the PKG_CONFIG environment variable to the full --path to pkg-config. -- --Alternatively, you may set the environment variables png_CFLAGS --and png_LIBS to avoid the need to call pkg-config. --See the pkg-config man page for more details. -- --To get pkg-config, see . --See \`config.log' for more details" "$LINENO" 5; } --else -- png_CFLAGS=$pkg_cv_png_CFLAGS -- png_LIBS=$pkg_cv_png_LIBS -- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 --$as_echo "yes" >&6; } -- --fi --fi -- - - # Check whether --with-tests was given. - if test "${with_tests+set}" = set; then : From 2c800f9519f363b5ffd556305f185bfdd212238d Mon Sep 17 00:00:00 2001 From: Jonathan Bennett Date: Mon, 25 May 2015 23:22:29 -0500 Subject: [PATCH 453/681] Revert "qrencode: Fix build dependency (libpng)" This commit was not made by the package maintainer and needs to be reverted. This reverts commit 1e2cd3318b67584d12ea9ee27e1b23927510f630. Signed-off-by: Jonathan Bennett --- libs/qrencode/Makefile | 2 -- 1 file changed, 2 deletions(-) diff --git a/libs/qrencode/Makefile b/libs/qrencode/Makefile index 8d70b4a05..db2d69713 100644 --- a/libs/qrencode/Makefile +++ b/libs/qrencode/Makefile @@ -21,8 +21,6 @@ PKG:FIXUP:=autoreconf include $(INCLUDE_DIR)/package.mk -PKG_BUILD_DEPENDS:=libpng - define Package/libqrencode SECTION:=libs CATEGORY:=Libraries From f51adfc3317eb5258d4d0041d6fcdb12a5179e24 Mon Sep 17 00:00:00 2001 From: Jonathan Bennett Date: Mon, 25 May 2015 23:25:36 -0500 Subject: [PATCH 454/681] libqrencode: fix typo in makefile Fix compile error due to autoconf Signed-off-by: Jonathan Bennett --- libs/qrencode/Makefile | 4 +-- libs/qrencode/patches/001-disable-png.patch | 37 ++++++++++++++------- 2 files changed, 27 insertions(+), 14 deletions(-) diff --git a/libs/qrencode/Makefile b/libs/qrencode/Makefile index db2d69713..37d39aac1 100644 --- a/libs/qrencode/Makefile +++ b/libs/qrencode/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=qrencode PKG_VERSION:=3.4.4 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://fukuchi.org/works/qrencode/ @@ -17,7 +17,7 @@ PKG_MD5SUM:=be545f3ce36ea8fbb58612d72c4222de PKG_MAINTAINER:=Jonathan Bennett PKG_LICENSE:=LGPL-2.1+ PKG_INSTALL:=1 -PKG:FIXUP:=autoreconf +PKG_FIXUP:=autoreconf include $(INCLUDE_DIR)/package.mk diff --git a/libs/qrencode/patches/001-disable-png.patch b/libs/qrencode/patches/001-disable-png.patch index 2549ee6fc..345bb6008 100644 --- a/libs/qrencode/patches/001-disable-png.patch +++ b/libs/qrencode/patches/001-disable-png.patch @@ -1,15 +1,3 @@ ---- a/configure.ac -+++ b/configure.ac -@@ -58,9 +58,6 @@ - [build_tools=$withval], [build_tools=yes]) - - AM_CONDITIONAL(BUILD_TOOLS, [test "x$build_tools" = "xyes" ]) --if test x$build_tools = xyes ; then -- PKG_CHECK_MODULES(png, "libpng") --fi - - dnl --with-tests - AC_ARG_WITH([tests], [AS_HELP_STRING([--with-tests], [build tests [default=no]])], --- a/qrenc.c +++ b/qrenc.c @@ -25,7 +25,6 @@ @@ -291,3 +279,28 @@ if(optind < argc) { intext = (unsigned char *)argv[optind]; length = strlen((char *)intext); +--- a/configure.ac ++++ b/configure.ac +@@ -58,9 +58,6 @@ + [build_tools=$withval], [build_tools=yes]) + + AM_CONDITIONAL(BUILD_TOOLS, [test "x$build_tools" = "xyes" ]) +-if test x$build_tools = xyes ; then +- PKG_CHECK_MODULES(png, "libpng") +-fi + + dnl --with-tests + AC_ARG_WITH([tests], [AS_HELP_STRING([--with-tests], [build tests [default=no]])], +@@ -80,12 +77,6 @@ + echo "/* #undef WITH_TESTS */" >>confdefs.h + fi + +-if test x$build_tests = xyes ; then +- SDL_REQUIRED_VERSION=1.2.0 +- AM_PATH_SDL($SDL_REQUIRED_VERSION,,AC_MSG_WARN([*** SDL $SDL_REQUIRED_VERSION or better is required.])) +- AC_MSG_NOTICE([SDL check done.]) +- AM_ICONV_LINK +-fi + AM_CONDITIONAL(HAVE_SDL, [test "x$SDL_CFLAGS" != "x" ]) + + From 669b44a50c99e82bc250ce6c7a08faaa47e8c570 Mon Sep 17 00:00:00 2001 From: Marko Ratkaj Date: Tue, 26 May 2015 10:23:52 +0200 Subject: [PATCH 455/681] clamav: bump to 0.98.7 Signed-off-by: Marko Ratkaj --- net/clamav/Makefile | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/net/clamav/Makefile b/net/clamav/Makefile index a401e7493..3f3edab56 100644 --- a/net/clamav/Makefile +++ b/net/clamav/Makefile @@ -8,15 +8,15 @@ include $(TOPDIR)/rules.mk PKG_NAME:=clamav -PKG_VERSION:=0.98.6 +PKG_VERSION:=0.98.7 PKG_RELEASE:=1 PKG_LICENSE:=GPL-2.0 PKG_MAINTAINER:=Marko Ratkaj PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=http://downloads.sourceforge.net/project/clamav/clamav/$(PKG_VERSION)/ -PKG_MD5SUM:=7f4f7e82a09e42c4ebf153d6d452d9d8 +PKG_SOURCE_URL:=http://sourceforge.net/projects/clamav/files/clamav/$(PKG_VERSION)/ +PKG_MD5SUM:=157c601161da1c2d5a0e48ea1b49e067 PKG_BUILD_PARALLEL:=1 PKG_INSTALL:=1 From 235168192d8d3c6cf2c6db33e6243015a8ab8dc3 Mon Sep 17 00:00:00 2001 From: Mislav Novakovic Date: Wed, 20 May 2015 20:16:02 +0200 Subject: [PATCH 456/681] libnet: add package Signed-off-by: Mislav Novakovic --- libs/libnet-1.2.x/Makefile | 70 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 70 insertions(+) create mode 100644 libs/libnet-1.2.x/Makefile diff --git a/libs/libnet-1.2.x/Makefile b/libs/libnet-1.2.x/Makefile new file mode 100644 index 000000000..6b4a44064 --- /dev/null +++ b/libs/libnet-1.2.x/Makefile @@ -0,0 +1,70 @@ +# +# Copyright (C) 2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=libnet +PKG_VERSION:=1.2-rc3 +PKG_RELEASE:=1 + +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz +PKG_SOURCE_URL:=http://sourceforge.net/projects/libnet-dev/files/ +PKG_MD5SUM:=f051e6e5bdecddb90f77c701c2ca1804 +PKG_MAINTAINER:=Mislav Novakovic + +PKG_FIXUP:=autoreconf +PKG_INSTALL:=1 + +include $(INCLUDE_DIR)/package.mk + +TARGET_CFLAGS += $(FPIC) + +define Package/libnet-1.2.x + SECTION:=libs + CATEGORY:=Libraries + DEPENDS:=+libpcap + TITLE:=Low-level packet creation library +endef + + +CONFIGURE_ARGS += \ + --enable-shared \ + --enable-static + +CONFIGURE_VARS += \ + ac_cv_libnet_endianess=$(ENDIANESS) \ + ac_libnet_have_pf_packet=yes \ + LL_INT_TYPE=libnet_link_linux + +define Build/Configure + (cd $(PKG_BUILD_DIR); touch \ + configure.in \ + include.m4 \ + aclocal.m4 \ + Makefile.in \ + ); + $(call Build/Configure/Default) +endef + + +define Build/InstallDev + $(INSTALL_DIR) $(STAGING_DIR)/usr/lib/libnet-1.2.x/include + $(CP) $(PKG_INSTALL_DIR)/usr/include/libnet.h $(STAGING_DIR)/usr/lib/libnet-1.2.x/include + + $(INSTALL_DIR) $(STAGING_DIR)/usr/lib/libnet-1.2.x/include/libnet + $(CP) $(PKG_INSTALL_DIR)/usr/include/libnet/libnet-*.h $(STAGING_DIR)/usr/lib/libnet-1.2.x/include/libnet + + $(INSTALL_DIR) $(STAGING_DIR)/usr/lib/libnet-1.2.x/lib + $(CP) $(PKG_INSTALL_DIR)/usr/lib/libnet.{a,la,so*} $(STAGING_DIR)/usr/lib/libnet-1.2.x/lib +endef + +define Package/libnet-1.2.x/install + $(INSTALL_DIR) $(1)/usr/lib + $(CP) $(PKG_INSTALL_DIR)/usr/lib/libnet.so* $(1)/usr/lib/ +endef + +$(eval $(call BuildPackage,libnet-1.2.x)) From 387b3f751b3d03720bdc74daf985c414a59ce9d1 Mon Sep 17 00:00:00 2001 From: Mislav Novakovic Date: Wed, 20 May 2015 20:17:40 +0200 Subject: [PATCH 457/681] netdiscover: add package Signed-off-by: Mislav Novakovic --- net/netdiscover/Makefile | 41 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 net/netdiscover/Makefile diff --git a/net/netdiscover/Makefile b/net/netdiscover/Makefile new file mode 100644 index 000000000..8aa63fdee --- /dev/null +++ b/net/netdiscover/Makefile @@ -0,0 +1,41 @@ +# +# Copyright (C) 2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=netdiscover +PKG_VERSION:=0.3-pre-beta7 +PKG_RELEASE:=1 + +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-LINUXONLY.tar.gz +PKG_SOURCE_URL:=http://nixgeneration.com/~jaime/netdiscover/releases/ +PKG_MD5SUM:=8780e66d00496e933b4064cfe9ae61da +PKG_MAINTAINER:=Mislav Novakovic + +PKG_FIXUP:=autoreconf +PKG_INSTALL:=1 + +include $(INCLUDE_DIR)/package.mk + +define Package/netdiscover + SECTION:=net + CATEGORY:=Network + DEPENDS:=+libpcap +libnet-1.2.x +libpthread + TITLE:=An active/passive address reconnaissance tool + URL:=http://nixgeneration.com/~jaime/netdiscover/ +endef + +CONFIGURE_VARS+= \ + CPPFLAGS="$(TARGET_CPPFLAGS) -I$(STAGING_DIR)/usr/lib/libnet-1.2.x/lib" \ + LDFLAGS="$(TARGET_LDFLAGS) -L$(STAGING_DIR)/usr/lib/libnet-1.2.x/lib" + +define Package/netdiscover/install + $(INSTALL_DIR) $(1)/usr/sbin + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/netdiscover $(1)/usr/sbin/ +endef + +$(eval $(call BuildPackage,netdiscover)) From c6d65000d82089a5c6770299274b37b188303892 Mon Sep 17 00:00:00 2001 From: Marcel Denia Date: Sat, 2 May 2015 16:29:52 +0200 Subject: [PATCH 458/681] perl: Allow changing the default directory for perlmod/Configure Signed-off-by: Marcel Denia --- lang/perl/perlmod.mk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lang/perl/perlmod.mk b/lang/perl/perlmod.mk index 5b6ba1655..60d3335e0 100644 --- a/lang/perl/perlmod.mk +++ b/lang/perl/perlmod.mk @@ -52,7 +52,7 @@ define perlmod/host/Install endef define perlmod/Configure - (cd $(PKG_BUILD_DIR); \ + (cd $(if $(3),$(3),$(PKG_BUILD_DIR)); \ PERL_MM_USE_DEFAULT=1 \ $(2) \ $(PERL_CMD) Makefile.PL \ From 9474e497c65d6dd3dac70485265bfb8e4ace6395 Mon Sep 17 00:00:00 2001 From: Marcel Denia Date: Sat, 2 May 2015 16:30:16 +0200 Subject: [PATCH 459/681] perl: Override cpprun configuration symbol This will not change any existing packages' functionality. All packages that used this symbol before during build(with it's value being "cc -E") most likely would've failed compilation. Note that this change is only in effect during build. Signed-off-by: Marcel Denia --- lang/perl/perlmod.mk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lang/perl/perlmod.mk b/lang/perl/perlmod.mk index 60d3335e0..05ddf283c 100644 --- a/lang/perl/perlmod.mk +++ b/lang/perl/perlmod.mk @@ -55,7 +55,7 @@ define perlmod/Configure (cd $(if $(3),$(3),$(PKG_BUILD_DIR)); \ PERL_MM_USE_DEFAULT=1 \ $(2) \ - $(PERL_CMD) Makefile.PL \ + $(PERL_CMD) -MConfig -e '$$$${tied %Config::Config}{cpprun}="$(GNU_TARGET_NAME)-cpp -E"; do "Makefile.PL"' \ $(1) \ AR=ar \ CC=$(GNU_TARGET_NAME)-gcc \ From 828800508d54f3b10a0fce6a74cb07d32a957787 Mon Sep 17 00:00:00 2001 From: Marcel Denia Date: Sat, 2 May 2015 16:42:07 +0200 Subject: [PATCH 460/681] perl: Add "-rdynamic" to LDDLFLAGS override in perlmod/Configure perl would have done the same. Signed-off-by: Marcel Denia --- lang/perl/perlmod.mk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lang/perl/perlmod.mk b/lang/perl/perlmod.mk index 05ddf283c..68cb392a6 100644 --- a/lang/perl/perlmod.mk +++ b/lang/perl/perlmod.mk @@ -67,7 +67,7 @@ define perlmod/Configure EXE_EXT=" " \ FULL_AR=$(GNU_TARGET_NAME)-ar \ LD=$(GNU_TARGET_NAME)-gcc \ - LDDLFLAGS="-shared $(TARGET_LDFLAGS)" \ + LDDLFLAGS="-shared -rdynamic $(TARGET_LDFLAGS)" \ LDFLAGS="$(EXTRA_LIBDIRS:%=-L%) $(EXTRA_LIBS:%=-l%) " \ LIBC=" " \ LIB_EXT=.a \ From 3f7e3977a55a9c8c3e13dc02dd58a2b9e1d943dd Mon Sep 17 00:00:00 2001 From: Marcel Denia Date: Sat, 2 May 2015 16:47:03 +0200 Subject: [PATCH 461/681] perl: Allow changing the default directory for perlmod/Compile Signed-off-by: Marcel Denia --- lang/perl/perlmod.mk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lang/perl/perlmod.mk b/lang/perl/perlmod.mk index 68cb392a6..6cc1e4ccc 100644 --- a/lang/perl/perlmod.mk +++ b/lang/perl/perlmod.mk @@ -108,7 +108,7 @@ endef define perlmod/Compile PERL5LIB=$(PERL_LIB) \ $(2) \ - $(MAKE) -C $(PKG_BUILD_DIR) \ + $(MAKE) -C $(if $(3),$(3),$(PKG_BUILD_DIR)) \ $(1) \ install endef From 109ac2c3830616d1fda7be89193ddf3d8b2bca9e Mon Sep 17 00:00:00 2001 From: Marcel Denia Date: Sat, 2 May 2015 16:08:00 +0200 Subject: [PATCH 462/681] perl: Enable threading in host-perl as well if threading is selected While host-perl only exists to run build scripts(and thus, should have no influence on built packages at all), most packages depend heavily on the feature set of the perl installation that ran their configuration scripts. This change makes them see that threading support is enabled(if it actually is selected). We can't use configuration symbol overrides for this one, as they are visible to host-perl as well. Using overrides would make it act as if it had threading support enabled without actually having it. Signed-off-by: Marcel Denia --- lang/perl/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lang/perl/Makefile b/lang/perl/Makefile index abd327f62..0365ffcff 100644 --- a/lang/perl/Makefile +++ b/lang/perl/Makefile @@ -94,7 +94,7 @@ endef # Static host perl define Host/Configure - ( cd $(HOST_BUILD_DIR); ./Configure -der -Uusedl -Duserelocatableinc -Dprefix=$(HOST_PERL_PREFIX) ) + ( cd $(HOST_BUILD_DIR); ./Configure -der -Uusedl -Duserelocatableinc -Dprefix=$(HOST_PERL_PREFIX) $(if $(CONFIG_PERL_THREADS),-Dusethreads,)) endef define Host/Install From e6874b54ab418a40bfeeab287deeb57463c566a3 Mon Sep 17 00:00:00 2001 From: Marcel Denia Date: Wed, 6 May 2015 07:00:10 +0200 Subject: [PATCH 463/681] perl-www: Remove unnecessary -n Configure switch Signed-off-by: Marcel Denia --- lang/perl-www/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lang/perl-www/Makefile b/lang/perl-www/Makefile index fadc1c023..7657aa27f 100644 --- a/lang/perl-www/Makefile +++ b/lang/perl-www/Makefile @@ -33,7 +33,7 @@ define Package/perl-www endef define Build/Configure - $(call perlmod/Configure,-n,) + $(call perlmod/Configure,,) endef define Build/Compile From afb99d5a3d78fa0b8390a5fa14555cee6b30f237 Mon Sep 17 00:00:00 2001 From: Marcel Denia Date: Fri, 22 May 2015 22:25:24 +0200 Subject: [PATCH 464/681] perl: Remove duplicate "subversion" configuration symbol for armeb Signed-off-by: Marcel Denia --- lang/perl/files/config.sh-armeb-mt.in | 1 - lang/perl/files/config.sh-armeb.in | 1 - 2 files changed, 2 deletions(-) diff --git a/lang/perl/files/config.sh-armeb-mt.in b/lang/perl/files/config.sh-armeb-mt.in index 6dad0eb1d..89b310fe4 100644 --- a/lang/perl/files/config.sh-armeb-mt.in +++ b/lang/perl/files/config.sh-armeb-mt.in @@ -948,7 +948,6 @@ stdio_stream_array='' strerror_r_proto='REENTRANT_PROTO_B_IBW' #strings='/usr/include/string.h' submit='' -subversion='0' sysman='/usr/share/man/man1' tail='' tar='' diff --git a/lang/perl/files/config.sh-armeb.in b/lang/perl/files/config.sh-armeb.in index b6e828b6a..aab5eeb8c 100644 --- a/lang/perl/files/config.sh-armeb.in +++ b/lang/perl/files/config.sh-armeb.in @@ -948,7 +948,6 @@ stdio_stream_array='' strerror_r_proto='0' #strings='/usr/include/string.h' submit='' -subversion='0' sysman='/usr/share/man/man1' tail='' tar='' From 3c7528d2f4e0b34d9bd90b43a9d4287e021a35ff Mon Sep 17 00:00:00 2001 From: Marcel Denia Date: Fri, 22 May 2015 22:33:29 +0200 Subject: [PATCH 465/681] perl: Pass _LARGEFILE_SOURCE and _FILE_OFFSET_BITS in cflags Fixes broken largefile support. Signed-off-by: Marcel Denia --- lang/perl/files/config.sh-arm-mt.in | 2 +- lang/perl/files/config.sh-arm.in | 2 +- lang/perl/files/config.sh-armeb-mt.in | 2 +- lang/perl/files/config.sh-armeb.in | 2 +- lang/perl/files/config.sh-avr32-mt.in | 2 +- lang/perl/files/config.sh-avr32.in | 2 +- lang/perl/files/config.sh-i486-mt.in | 2 +- lang/perl/files/config.sh-i486.in | 2 +- lang/perl/files/config.sh-mips-mt.in | 2 +- lang/perl/files/config.sh-mips.in | 2 +- lang/perl/files/config.sh-mips64-mt.in | 2 +- lang/perl/files/config.sh-mips64.in | 2 +- lang/perl/files/config.sh-mipsel-mt.in | 2 +- lang/perl/files/config.sh-mipsel.in | 2 +- lang/perl/files/config.sh-powerpc-mt.in | 2 +- lang/perl/files/config.sh-powerpc.in | 2 +- lang/perl/files/config.sh-x86_64-mt.in | 2 +- lang/perl/files/config.sh-x86_64.in | 2 +- lang/perl/perlmod.mk | 2 +- 19 files changed, 19 insertions(+), 19 deletions(-) diff --git a/lang/perl/files/config.sh-arm-mt.in b/lang/perl/files/config.sh-arm-mt.in index 635b05e9e..c05d4733c 100644 --- a/lang/perl/files/config.sh-arm-mt.in +++ b/lang/perl/files/config.sh-arm-mt.in @@ -53,7 +53,7 @@ castflags='0' cat='cat' cc='%%CC%%' cccdlflags='-fPIC' -ccflags='-D_REENTRANT -D_GNU_SOURCE %%CFLAGS%%' +ccflags='-D_REENTRANT -D_GNU_SOURCE -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 %%CFLAGS%%' ccflags_uselargefiles='-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64' ccname='gcc' ccsymbols='__ARM_ARCH_3__=1' diff --git a/lang/perl/files/config.sh-arm.in b/lang/perl/files/config.sh-arm.in index 9382b6536..d6c4177c5 100644 --- a/lang/perl/files/config.sh-arm.in +++ b/lang/perl/files/config.sh-arm.in @@ -53,7 +53,7 @@ castflags='0' cat='cat' cc='%%CC%%' cccdlflags='-fPIC' -ccflags='%%CFLAGS%%' +ccflags='-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 %%CFLAGS%%' ccflags_uselargefiles='-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64' ccname='gcc' ccsymbols='__ARM_ARCH_3__=1' diff --git a/lang/perl/files/config.sh-armeb-mt.in b/lang/perl/files/config.sh-armeb-mt.in index 89b310fe4..f20166e0a 100644 --- a/lang/perl/files/config.sh-armeb-mt.in +++ b/lang/perl/files/config.sh-armeb-mt.in @@ -52,7 +52,7 @@ castflags='0' cat='cat' cc='%%CC%%' cccdlflags='-fPIC' -ccflags='-D_REENTRANT -D_GNU_SOURCE %%CFLAGS%%' +ccflags='-D_REENTRANT -D_GNU_SOURCE -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 %%CFLAGS%%' ccflags_uselargefiles='-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64' ccname='gcc' ccsymbols='__ARM_ARCH_3__=1' diff --git a/lang/perl/files/config.sh-armeb.in b/lang/perl/files/config.sh-armeb.in index aab5eeb8c..32bac39e6 100644 --- a/lang/perl/files/config.sh-armeb.in +++ b/lang/perl/files/config.sh-armeb.in @@ -52,7 +52,7 @@ castflags='0' cat='cat' cc='%%CC%%' cccdlflags='-fPIC' -ccflags='%%CFLAGS%%' +ccflags='-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 %%CFLAGS%%' ccflags_uselargefiles='-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64' ccname='gcc' ccsymbols='__ARM_ARCH_3__=1' diff --git a/lang/perl/files/config.sh-avr32-mt.in b/lang/perl/files/config.sh-avr32-mt.in index 7336b666d..4576e0d5d 100644 --- a/lang/perl/files/config.sh-avr32-mt.in +++ b/lang/perl/files/config.sh-avr32-mt.in @@ -53,7 +53,7 @@ castflags='0' cat='cat' cc='%%CC%%' cccdlflags='-fPIC' -ccflags='-D_REENTRANT -D_GNU_SOURCE %%CFLAGS%%' +ccflags='-D_REENTRANT -D_GNU_SOURCE -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 %%CFLAGS%%' ccflags_uselargefiles='-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64' ccname='gcc' ccsymbols='' diff --git a/lang/perl/files/config.sh-avr32.in b/lang/perl/files/config.sh-avr32.in index 2ec7588e3..16c9f1a70 100644 --- a/lang/perl/files/config.sh-avr32.in +++ b/lang/perl/files/config.sh-avr32.in @@ -53,7 +53,7 @@ castflags='0' cat='cat' cc='%%CC%%' cccdlflags='-fPIC' -ccflags='%%CFLAGS%%' +ccflags='-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 %%CFLAGS%%' ccflags_uselargefiles='-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64' ccname='gcc' ccsymbols='' diff --git a/lang/perl/files/config.sh-i486-mt.in b/lang/perl/files/config.sh-i486-mt.in index 89583b65b..bb8e06fcb 100644 --- a/lang/perl/files/config.sh-i486-mt.in +++ b/lang/perl/files/config.sh-i486-mt.in @@ -51,7 +51,7 @@ castflags='0' cat='cat' cc='%%CC%%' cccdlflags='-fPIC' -ccflags='-D_REENTRANT -D_GNU_SOURCE %%CFLAGS%%' +ccflags='-D_REENTRANT -D_GNU_SOURCE -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 %%CFLAGS%%' ccflags_uselargefiles='-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64' ccname='gcc' ccsymbols='' diff --git a/lang/perl/files/config.sh-i486.in b/lang/perl/files/config.sh-i486.in index 9d91dff70..b28b020fd 100644 --- a/lang/perl/files/config.sh-i486.in +++ b/lang/perl/files/config.sh-i486.in @@ -51,7 +51,7 @@ castflags='0' cat='cat' cc='%%CC%%' cccdlflags='-fPIC' -ccflags='%%CFLAGS%%' +ccflags='-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 %%CFLAGS%%' ccflags_uselargefiles='-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64' ccname='gcc' ccsymbols='' diff --git a/lang/perl/files/config.sh-mips-mt.in b/lang/perl/files/config.sh-mips-mt.in index 8564c2338..434d99f87 100644 --- a/lang/perl/files/config.sh-mips-mt.in +++ b/lang/perl/files/config.sh-mips-mt.in @@ -53,7 +53,7 @@ castflags='0' cat='cat' cc='%%CC%%' cccdlflags='-fPIC' -ccflags='-D_REENTRANT -D_GNU_SOURCE %%CFLAGS%%' +ccflags='-D_REENTRANT -D_GNU_SOURCE -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 %%CFLAGS%%' ccflags_uselargefiles='-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64' ccname='gcc' ccsymbols='' diff --git a/lang/perl/files/config.sh-mips.in b/lang/perl/files/config.sh-mips.in index 1a752e74b..808387543 100644 --- a/lang/perl/files/config.sh-mips.in +++ b/lang/perl/files/config.sh-mips.in @@ -53,7 +53,7 @@ castflags='0' cat='cat' cc='%%CC%%' cccdlflags='-fPIC' -ccflags='%%CFLAGS%%' +ccflags='-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 %%CFLAGS%%' ccflags_uselargefiles='-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64' ccname='gcc' ccsymbols='' diff --git a/lang/perl/files/config.sh-mips64-mt.in b/lang/perl/files/config.sh-mips64-mt.in index 26d908a7e..daada6fe4 100644 --- a/lang/perl/files/config.sh-mips64-mt.in +++ b/lang/perl/files/config.sh-mips64-mt.in @@ -53,7 +53,7 @@ castflags='0' cat='cat' cc='%%CC%%' cccdlflags='-fPIC' -ccflags='-D_REENTRANT -D_GNU_SOURCE %%CFLAGS%%' +ccflags='-D_REENTRANT -D_GNU_SOURCE -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 %%CFLAGS%%' ccflags_uselargefiles='-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64' ccname='gcc' ccsymbols='' diff --git a/lang/perl/files/config.sh-mips64.in b/lang/perl/files/config.sh-mips64.in index baab56fdb..c8ccb108e 100644 --- a/lang/perl/files/config.sh-mips64.in +++ b/lang/perl/files/config.sh-mips64.in @@ -53,7 +53,7 @@ castflags='0' cat='cat' cc='%%CC%%' cccdlflags='-fPIC' -ccflags='%%CFLAGS%%' +ccflags='-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 %%CFLAGS%%' ccflags_uselargefiles='-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64' ccname='gcc' ccsymbols='' diff --git a/lang/perl/files/config.sh-mipsel-mt.in b/lang/perl/files/config.sh-mipsel-mt.in index d09586a88..e822f1ffd 100644 --- a/lang/perl/files/config.sh-mipsel-mt.in +++ b/lang/perl/files/config.sh-mipsel-mt.in @@ -51,7 +51,7 @@ castflags='0' cat='cat' cc='%%CC%%' cccdlflags='-fPIC' -ccflags='-D_REENTRANT -D_GNU_SOURCE %%CFLAGS%%' +ccflags='-D_REENTRANT -D_GNU_SOURCE -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 %%CFLAGS%%' ccflags_uselargefiles='-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64' ccname='gcc' ccsymbols='' diff --git a/lang/perl/files/config.sh-mipsel.in b/lang/perl/files/config.sh-mipsel.in index 43c61a69c..880d7dba7 100644 --- a/lang/perl/files/config.sh-mipsel.in +++ b/lang/perl/files/config.sh-mipsel.in @@ -51,7 +51,7 @@ castflags='0' cat='cat' cc='%%CC%%' cccdlflags='-fPIC' -ccflags='%%CFLAGS%%' +ccflags='-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 %%CFLAGS%%' ccflags_uselargefiles='-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64' ccname='gcc' ccsymbols='' diff --git a/lang/perl/files/config.sh-powerpc-mt.in b/lang/perl/files/config.sh-powerpc-mt.in index 564f27bc7..677ed1bde 100644 --- a/lang/perl/files/config.sh-powerpc-mt.in +++ b/lang/perl/files/config.sh-powerpc-mt.in @@ -53,7 +53,7 @@ castflags='0' cat='cat' cc='%%CC%%' cccdlflags='-fPIC' -ccflags='-D_REENTRANT -D_GNU_SOURCE %%CFLAGS%%' +ccflags='-D_REENTRANT -D_GNU_SOURCE -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 %%CFLAGS%%' ccflags_uselargefiles='-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64' ccname='gcc' ccsymbols='__gnu_linux__=1 __linux=1 __linux__=1 __unix=1 __unix__=1 system=linux system=posix system=unix' diff --git a/lang/perl/files/config.sh-powerpc.in b/lang/perl/files/config.sh-powerpc.in index 8906ad68b..c2060476b 100644 --- a/lang/perl/files/config.sh-powerpc.in +++ b/lang/perl/files/config.sh-powerpc.in @@ -53,7 +53,7 @@ castflags='0' cat='cat' cc='%%CC%%' cccdlflags='-fPIC' -ccflags='%%CFLAGS%%' +ccflags='-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 %%CFLAGS%%' ccflags_uselargefiles='-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64' ccname='gcc' ccsymbols='__gnu_linux__=1 __linux=1 __linux__=1 __unix=1 __unix__=1 system=linux system=posix system=unix' diff --git a/lang/perl/files/config.sh-x86_64-mt.in b/lang/perl/files/config.sh-x86_64-mt.in index 3c6ab7b15..894f1309e 100644 --- a/lang/perl/files/config.sh-x86_64-mt.in +++ b/lang/perl/files/config.sh-x86_64-mt.in @@ -51,7 +51,7 @@ castflags='0' cat='cat' cc='%%CC%%' cccdlflags='-fPIC' -ccflags='-D_REENTRANT -D_GNU_SOURCE %%CFLAGS%%' +ccflags='-D_REENTRANT -D_GNU_SOURCE -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 %%CFLAGS%%' ccflags_uselargefiles='-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64' ccname='gcc' ccsymbols='' diff --git a/lang/perl/files/config.sh-x86_64.in b/lang/perl/files/config.sh-x86_64.in index f528c5412..ad89224e9 100644 --- a/lang/perl/files/config.sh-x86_64.in +++ b/lang/perl/files/config.sh-x86_64.in @@ -51,7 +51,7 @@ castflags='0' cat='cat' cc='%%CC%%' cccdlflags='-fPIC' -ccflags='%%CFLAGS%%' +ccflags='-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 %%CFLAGS%%' ccflags_uselargefiles='-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64' ccname='gcc' ccsymbols='' diff --git a/lang/perl/perlmod.mk b/lang/perl/perlmod.mk index 6cc1e4ccc..146a34858 100644 --- a/lang/perl/perlmod.mk +++ b/lang/perl/perlmod.mk @@ -9,7 +9,7 @@ ifneq ($(CONFIG_USE_GLIBC),) endif PERL_CMD:=$(STAGING_DIR_HOST)/usr/bin/perl5.20.0 -MOD_CFLAGS_PERL:=$(TARGET_CFLAGS) $(TARGET_CPPFLAGS) +MOD_CFLAGS_PERL:=-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 $(TARGET_CFLAGS) $(TARGET_CPPFLAGS) ifdef CONFIG_PERL_THREADS MOD_CFLAGS_PERL+= -D_REENTRANT -D_GNU_SOURCE endif From 3202055a464b9df0a00b5618235238924993016e Mon Sep 17 00:00:00 2001 From: Marcel Denia Date: Sun, 24 May 2015 02:09:35 +0200 Subject: [PATCH 466/681] perl: Bump PKG_RELEASE Signed-off-by: Marcel Denia --- lang/perl/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lang/perl/Makefile b/lang/perl/Makefile index 0365ffcff..c915bbf66 100644 --- a/lang/perl/Makefile +++ b/lang/perl/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=perl PKG_VERSION:=5.20.2 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE_URL:=ftp://ftp.cpan.org/pub/CPAN/src/5.0 \ http://www.cpan.org/src/5.0/perl-5.20.0.tar.gz \ From 0cf102a61268b768fc8d732368af6d621c54142f Mon Sep 17 00:00:00 2001 From: Marcel Denia Date: Wed, 6 May 2015 10:56:34 +0200 Subject: [PATCH 467/681] perl-compress-bzip2: Bump PKG_RELEASE Recent changes in the perl package changed the ABI. Signed-off-by: Marcel Denia --- lang/perl-compress-bzip2/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lang/perl-compress-bzip2/Makefile b/lang/perl-compress-bzip2/Makefile index 0671cd971..fd53c1bd6 100644 --- a/lang/perl-compress-bzip2/Makefile +++ b/lang/perl-compress-bzip2/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=perl-compress-bzip2 PKG_VERSION:=2.22 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE_URL:=http://www.cpan.org/authors/id/R/RU/RURBAN/ PKG_SOURCE:=Compress-Bzip2-$(PKG_VERSION).tar.gz From 0db18acdd25dd0aa19a95c4d34610070b9a131f0 Mon Sep 17 00:00:00 2001 From: Marcel Denia Date: Wed, 6 May 2015 10:56:34 +0200 Subject: [PATCH 468/681] perl-dbi: Bump PKG_RELEASE Recent changes in the perl package changed the ABI. Signed-off-by: Marcel Denia --- lang/perl-dbi/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lang/perl-dbi/Makefile b/lang/perl-dbi/Makefile index 263359128..d22ccd84c 100644 --- a/lang/perl-dbi/Makefile +++ b/lang/perl-dbi/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=perl-dbi PKG_VERSION:=1.633 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE_URL:=http://www.cpan.org/authors/id/T/TI/TIMB/ PKG_SOURCE:=DBI-$(PKG_VERSION).tar.gz From b2f92815c5fbe47ba9e6a4d0aecd34b7cbfc64ea Mon Sep 17 00:00:00 2001 From: Marcel Denia Date: Wed, 6 May 2015 10:56:34 +0200 Subject: [PATCH 469/681] perl-html-parser: Bump PKG_RELEASE Recent changes in the perl package changed the ABI. Signed-off-by: Marcel Denia --- lang/perl-html-parser/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lang/perl-html-parser/Makefile b/lang/perl-html-parser/Makefile index 6baa88d82..9d9c31c5f 100644 --- a/lang/perl-html-parser/Makefile +++ b/lang/perl-html-parser/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=perl-html-parser PKG_VERSION:=3.71 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE_URL:=http://www.cpan.org/authors/id/G/GA/GAAS/ PKG_SOURCE:=HTML-Parser-$(PKG_VERSION).tar.gz From 824d02f28a85acdb318e4cd5ea72a0dfe2cbc6bb Mon Sep 17 00:00:00 2001 From: Marcel Denia Date: Wed, 6 May 2015 10:56:34 +0200 Subject: [PATCH 470/681] perl-www-curl: Bump PKG_RELEASE Recent changes in the perl package changed the ABI. Signed-off-by: Marcel Denia --- lang/perl-www-curl/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lang/perl-www-curl/Makefile b/lang/perl-www-curl/Makefile index 8bc3bfda5..912681da7 100644 --- a/lang/perl-www-curl/Makefile +++ b/lang/perl-www-curl/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=perl-www-curl PKG_VERSION:=4.17 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE_URL:=http://www.cpan.org/authors/id/S/SZ/SZBALINT/ PKG_SOURCE:=WWW-Curl-$(PKG_VERSION).tar.gz From 46bdd1d60f235e22f8988cf2b2b7b04d12a2b431 Mon Sep 17 00:00:00 2001 From: Etienne CHAMPETIER Date: Wed, 27 May 2015 07:52:32 +0200 Subject: [PATCH 471/681] monit: update to 5.13 run tested on ar71xx Signed-off-by: Etienne CHAMPETIER --- admin/monit/Makefile | 4 ++-- admin/monit/patches/001-fix-default-piddir.patch | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/admin/monit/Makefile b/admin/monit/Makefile index b14b22257..ba1b64c56 100644 --- a/admin/monit/Makefile +++ b/admin/monit/Makefile @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=monit -PKG_VERSION:=5.12.2 +PKG_VERSION:=5.13 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://mmonit.com/monit/dist -PKG_MD5SUM:=5f5cf4c18b42e8091b49b4e07cf972ce +PKG_MD5SUM:=7902ff45eaa1303ac25f6366eff251ef PKG_LICENSE:=AGPL-3.0 PKG_LICENSE_FILES:=COPYING diff --git a/admin/monit/patches/001-fix-default-piddir.patch b/admin/monit/patches/001-fix-default-piddir.patch index 13d6029c2..7af871f0d 100644 --- a/admin/monit/patches/001-fix-default-piddir.patch +++ b/admin/monit/patches/001-fix-default-piddir.patch @@ -1,6 +1,6 @@ --- a/configure +++ b/configure -@@ -13821,14 +13821,7 @@ fi +@@ -13849,14 +13849,7 @@ fi # Find the right directory to put the root-mode PID file in { $as_echo "$as_me:${as_lineno-$LINENO}: checking pid file location" >&5 $as_echo_n "checking pid file location... " >&6; } From ea28ae05dc4ff04cd9e10c412858cd379906e83d Mon Sep 17 00:00:00 2001 From: Etienne CHAMPETIER Date: Wed, 27 May 2015 08:06:42 +0200 Subject: [PATCH 472/681] zabbix: update to 2.4.5 run tested on ar71xx Signed-off-by: Etienne CHAMPETIER --- admin/zabbix/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/admin/zabbix/Makefile b/admin/zabbix/Makefile index 8e084a772..9f2c86e36 100644 --- a/admin/zabbix/Makefile +++ b/admin/zabbix/Makefile @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=zabbix -PKG_VERSION:=2.4.4 +PKG_VERSION:=2.4.5 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=@SF/zabbix -PKG_MD5SUM:=400a3e2ebec80e2f1fe86d1b32bfd2e1 +PKG_MD5SUM:=a82eb0d55d3ca947e10a4a55238f4388 PKG_LICENSE:=GPL-2.0 PKG_LICENSE_FILES:=COPYING From 9010339ec9b0fef0b0497d9b4cc286e590e0d53f Mon Sep 17 00:00:00 2001 From: Etienne CHAMPETIER Date: Wed, 27 May 2015 08:08:12 +0200 Subject: [PATCH 473/681] sqlite: update to 3.8.10.2 quickly run tested on ar71xx Signed-off-by: Etienne CHAMPETIER --- libs/sqlite3/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libs/sqlite3/Makefile b/libs/sqlite3/Makefile index 8eda862fd..7f5d58a7c 100644 --- a/libs/sqlite3/Makefile +++ b/libs/sqlite3/Makefile @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=sqlite -PKG_VERSION:=3080803 +PKG_VERSION:=3081002 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-autoconf-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://www.sqlite.org/2015/ -PKG_MD5SUM:=51272e875879ee893e51070b07c33888 +PKG_MD5SUM:=a18bfc015cd49a1e7a961b7b77bc3b37 PKG_LICENSE:=PUBLICDOMAIN PKG_LICENSE_FILES:= From 67b39f8f9b703e2cf95616b8e591ec76278a5846 Mon Sep 17 00:00:00 2001 From: Karl Palsson Date: Wed, 27 May 2015 10:23:18 +0000 Subject: [PATCH 474/681] libev: Import from management, with path fixes Imports the latest version from the management feed, and fixes the install paths. All example code, and desktop linux expects and installs libev's headers to /usr/include/ not under a subdirectory. Signed-off-by: Karl Palsson --- libs/libev/Makefile | 57 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 57 insertions(+) create mode 100644 libs/libev/Makefile diff --git a/libs/libev/Makefile b/libs/libev/Makefile new file mode 100644 index 000000000..36bf7f157 --- /dev/null +++ b/libs/libev/Makefile @@ -0,0 +1,57 @@ +# +# Copyright (C) 2014-2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=libev +PKG_VERSION:=4.19 +PKG_RELEASE:=1 + +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz +PKG_SOURCE_URL:=http://dist.schmorp.de/libev/Attic/ +PKG_MD5SUM:=01d1c672697f649b4f94abd0b70584ff +PKG_LICENSE:=BSD-2-Clause +PKG_MAINTAINER:=Karl Palsson + +PKG_BUILD_PARALLEL:=1 +PKG_FIXUP:=autoreconf +PKG_INSTALL:=1 +PKG_USE_MIPS16:=0 + +include $(INCLUDE_DIR)/package.mk + +define Package/libev + SECTION:=libs + CATEGORY:=Libraries + TITLE:=High-performance event loop + URL:=http://software.schmorp.de/pkg/libev.html +endef + +define Package/libev/description + A full-featured and high-performance event loop that is loosely modelled after + libevent, but without its limitations and bugs. +endef + +TARGET_CFLAGS += $(FPIC) + +CONFIGURE_ARGS += \ + --enable-shared \ + --enable-static \ + +define Build/InstallDev + $(INSTALL_DIR) $(1)/usr/include + $(CP) $(PKG_INSTALL_DIR)/usr/include/* $(1)/usr/include/ + $(INSTALL_DIR) $(1)/usr/lib + $(CP) $(PKG_INSTALL_DIR)/usr/lib/libev.{a,so*} $(1)/usr/lib/ +endef + +define Package/libev/install + $(INSTALL_DIR) $(1)/usr/lib + $(CP) $(PKG_INSTALL_DIR)/usr/lib/libev.so* $(1)/usr/lib/ +endef + +$(eval $(call BuildPackage,libev)) From af89de58f51b7bfbbcd9cd4fd30c8173daa63d85 Mon Sep 17 00:00:00 2001 From: Alexandru Ardelean Date: Wed, 27 May 2015 19:52:49 +0300 Subject: [PATCH 475/681] python: upgrade to 2.7.10 Signed-off-by: Alexandru Ardelean --- lang/python/Makefile | 2 +- lang/python/files/python-package.mk | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/lang/python/Makefile b/lang/python/Makefile index 4a740dcd8..133bab0d9 100644 --- a/lang/python/Makefile +++ b/lang/python/Makefile @@ -16,7 +16,7 @@ PKG_RELEASE:=5 PKG_SOURCE:=Python-$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=http://www.python.org/ftp/python/$(PKG_VERSION) -PKG_MD5SUM:=38d530f7efc373d64a8fb1637e3baaa7 +PKG_MD5SUM:=c685ef0b8e9f27b5e3db5db12b268ac6 PKG_LICENSE:=PSF PKG_LICENSE_FILES:=LICENSE Modules/_ctypes/libffi_msvc/LICENSE Modules/_ctypes/darwin/LICENSE Modules/_ctypes/libffi/LICENSE Modules/_ctypes/libffi_osx/LICENSE Tools/pybench/LICENSE diff --git a/lang/python/files/python-package.mk b/lang/python/files/python-package.mk index 4895b91a1..5ab35195d 100644 --- a/lang/python/files/python-package.mk +++ b/lang/python/files/python-package.mk @@ -6,7 +6,7 @@ # PYTHON_VERSION:=2.7 -PYTHON_VERSION_MICRO:=9 +PYTHON_VERSION_MICRO:=10 PYTHON_DIR:=$(STAGING_DIR)/usr PYTHON_BIN_DIR:=$(PYTHON_DIR)/bin From 1710be86057dfa6ed748d3183b637dd65e651b76 Mon Sep 17 00:00:00 2001 From: Peter Wagner Date: Wed, 27 May 2015 21:32:31 +0200 Subject: [PATCH 476/681] git: update to 2.4.2 Signed-off-by: Peter Wagner --- net/git/Makefile | 4 +-- net/git/patches/100-convert_builtin.patch | 30 +++++++++---------- .../patches/400-imapsend_without_curl.patch | 2 +- 3 files changed, 18 insertions(+), 18 deletions(-) diff --git a/net/git/Makefile b/net/git/Makefile index 429d8e690..c088e722e 100644 --- a/net/git/Makefile +++ b/net/git/Makefile @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=git -PKG_VERSION:=2.3.5 +PKG_VERSION:=2.4.2 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=@KERNEL/software/scm/git/ -PKG_MD5SUM:=be8c0bbb0c5ee6ab7cdcffd2c9375fe6 +PKG_MD5SUM:=0b8dc818ed4766342978d744522aec49 PKG_INSTALL:=1 PKG_BUILD_PARALLEL:=1 diff --git a/net/git/patches/100-convert_builtin.patch b/net/git/patches/100-convert_builtin.patch index 05a3f3f33..e3d42007d 100644 --- a/net/git/patches/100-convert_builtin.patch +++ b/net/git/patches/100-convert_builtin.patch @@ -1,6 +1,6 @@ --- a/Makefile +++ b/Makefile -@@ -538,16 +538,7 @@ EXTRA_PROGRAMS = +@@ -549,16 +549,7 @@ EXTRA_PROGRAMS = # ... and all the rest that could be moved out of bindir to gitexecdir PROGRAMS += $(EXTRA_PROGRAMS) @@ -17,7 +17,7 @@ # Binary suffix, set to .exe for Windows builds X = -@@ -896,6 +887,11 @@ BUILTIN_OBJS += builtin/verify-commit.o +@@ -907,6 +898,11 @@ BUILTIN_OBJS += builtin/verify-commit.o BUILTIN_OBJS += builtin/verify-pack.o BUILTIN_OBJS += builtin/verify-tag.o BUILTIN_OBJS += builtin/write-tree.o @@ -29,7 +29,7 @@ GITLIBS = $(LIB_FILE) $(XDIFF_LIB) EXTLIBS = -@@ -1070,7 +1066,7 @@ endif +@@ -1089,7 +1085,7 @@ endif EXTLIBS += -lz ifndef NO_OPENSSL @@ -38,7 +38,7 @@ ifdef OPENSSLDIR BASIC_CFLAGS += -I$(OPENSSLDIR)/include OPENSSL_LINK = -L$(OPENSSLDIR)/$(lib) $(CC_LD_DYNPATH)$(OPENSSLDIR)/$(lib) -@@ -1933,10 +1929,6 @@ endif +@@ -1956,10 +1952,6 @@ endif git-%$X: %.o GIT-LDFLAGS $(GITLIBS) $(QUIET_LINK)$(CC) $(ALL_CFLAGS) -o $@ $(ALL_LDFLAGS) $(filter %.o,$^) $(LIBS) @@ -49,7 +49,7 @@ git-http-fetch$X: http.o http-walker.o http-fetch.o GIT-LDFLAGS $(GITLIBS) $(QUIET_LINK)$(CC) $(ALL_CFLAGS) -o $@ $(ALL_LDFLAGS) $(filter %.o,$^) \ $(LIBS) $(CURL_LIBCURL) -@@ -2254,10 +2246,11 @@ endif +@@ -2277,10 +2269,11 @@ endif bindir=$$(cd '$(DESTDIR_SQ)$(bindir_SQ)' && pwd) && \ execdir=$$(cd '$(DESTDIR_SQ)$(gitexec_instdir_SQ)' && pwd) && \ { test "$$bindir/" = "$$execdir/" || \ @@ -97,7 +97,7 @@ +#include "../upload-pack.c" --- a/daemon.c +++ b/daemon.c -@@ -1193,7 +1193,7 @@ static int serve(struct string_list *lis +@@ -1192,7 +1192,7 @@ static int serve(struct string_list *lis return service_loop(&socklist); } @@ -106,7 +106,7 @@ { int listen_port = 0; struct string_list listen_addr = STRING_LIST_INIT_NODUP; -@@ -1389,12 +1389,13 @@ int main(int argc, char **argv) +@@ -1388,12 +1388,13 @@ int main(int argc, char **argv) store_pid(pid_file); /* prepare argv for serving-processes */ @@ -127,7 +127,7 @@ } --- a/fast-import.c +++ b/fast-import.c -@@ -3354,7 +3354,7 @@ static void parse_argv(void) +@@ -3351,7 +3351,7 @@ static void parse_argv(void) read_marks(); } @@ -138,7 +138,7 @@ --- a/git.c +++ b/git.c -@@ -309,11 +309,11 @@ static int handle_alias(int *argcp, cons +@@ -311,11 +311,11 @@ static int handle_alias(int *argcp, cons struct cmd_struct { const char *cmd; @@ -152,7 +152,7 @@ { int status, help; struct stat st; -@@ -393,6 +393,7 @@ static struct cmd_struct commands[] = { +@@ -395,6 +395,7 @@ static struct cmd_struct commands[] = { { "config", cmd_config, RUN_SETUP_GENTLY }, { "count-objects", cmd_count_objects, RUN_SETUP }, { "credential", cmd_credential, RUN_SETUP_GENTLY }, @@ -160,7 +160,7 @@ { "describe", cmd_describe, RUN_SETUP }, { "diff", cmd_diff }, { "diff-files", cmd_diff_files, RUN_SETUP | NEED_WORK_TREE }, -@@ -411,6 +412,7 @@ static struct cmd_struct commands[] = { +@@ -413,6 +414,7 @@ static struct cmd_struct commands[] = { { "grep", cmd_grep, RUN_SETUP_GENTLY }, { "hash-object", cmd_hash_object }, { "help", cmd_help }, @@ -168,7 +168,7 @@ { "index-pack", cmd_index_pack, RUN_SETUP_GENTLY }, { "init", cmd_init_db, NO_SETUP }, { "init-db", cmd_init_db, NO_SETUP }, -@@ -459,6 +461,7 @@ static struct cmd_struct commands[] = { +@@ -461,6 +463,7 @@ static struct cmd_struct commands[] = { { "revert", cmd_revert, RUN_SETUP | NEED_WORK_TREE }, { "rm", cmd_rm, RUN_SETUP }, { "send-pack", cmd_send_pack, RUN_SETUP }, @@ -176,7 +176,7 @@ { "shortlog", cmd_shortlog, RUN_SETUP_GENTLY | USE_PAGER }, { "show", cmd_show, RUN_SETUP }, { "show-branch", cmd_show_branch, RUN_SETUP }, -@@ -475,6 +478,7 @@ static struct cmd_struct commands[] = { +@@ -477,6 +480,7 @@ static struct cmd_struct commands[] = { { "update-server-info", cmd_update_server_info, RUN_SETUP }, { "upload-archive", cmd_upload_archive }, { "upload-archive--writer", cmd_upload_archive_writer }, @@ -186,7 +186,7 @@ { "verify-pack", cmd_verify_pack }, --- a/imap-send.c +++ b/imap-send.c -@@ -1484,7 +1484,7 @@ static int curl_append_msgs_to_imap(stru +@@ -1492,7 +1492,7 @@ static int curl_append_msgs_to_imap(stru } #endif @@ -208,7 +208,7 @@ const char **user_argv; --- a/upload-pack.c +++ b/upload-pack.c -@@ -793,7 +793,7 @@ static int upload_pack_config(const char +@@ -797,7 +797,7 @@ static int upload_pack_config(const char return parse_hide_refs_config(var, value, "uploadpack"); } diff --git a/net/git/patches/400-imapsend_without_curl.patch b/net/git/patches/400-imapsend_without_curl.patch index 44ceb013f..e96330c0e 100644 --- a/net/git/patches/400-imapsend_without_curl.patch +++ b/net/git/patches/400-imapsend_without_curl.patch @@ -1,6 +1,6 @@ --- a/Makefile +++ b/Makefile -@@ -1039,7 +1039,7 @@ else +@@ -1058,7 +1058,7 @@ else endif curl_check := $(shell (echo 072200; curl-config --vernum | sed -e '/^70[BC]/s/^/0/') 2>/dev/null | sort -r | sed -ne 2p) ifeq "$(curl_check)" "072200" From 19d236187e57567cdd605f6eb301c26e081e741f Mon Sep 17 00:00:00 2001 From: Alex Samorukov Date: Wed, 27 May 2015 23:35:11 +0200 Subject: [PATCH 477/681] Add lxc-device applet to the utils/lxc. lxc-device manages devices in running container. Signed-off-by: Alex Samorukov --- utils/lxc/Makefile | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/utils/lxc/Makefile b/utils/lxc/Makefile index a429e41d0..b8a0761b1 100644 --- a/utils/lxc/Makefile +++ b/utils/lxc/Makefile @@ -27,9 +27,9 @@ PKG_FIXUP:=autoreconf include $(INCLUDE_DIR)/package.mk LXC_APPLETS_BIN += \ - attach autostart cgroup clone config console create destroy execute \ - freeze info monitor snapshot start stop unfreeze unshare usernsexec wait \ - device + attach autostart cgroup clone config console create destroy device \ + execute freeze info monitor snapshot start stop unfreeze unshare \ + usernsexec wait LXC_APPLETS_LIB += \ monitord user-nic From 165fb918a6db3a91e70086d903deafb5c50c05a0 Mon Sep 17 00:00:00 2001 From: Florian Fainelli Date: Sat, 23 May 2015 10:44:12 -0700 Subject: [PATCH 478/681] ethtool: Add option to enable/disable pretty-printing With upstream commit https://git.kernel.org/cgit/network/ethtool/ethtool.git/commit/?id=875616dfcbe57ea0f639a20d85fcbad2172ad744 there is now an option to produce a smaller ethtool build which will disable pretty printing (Ethernet drivers, SFP diagnostics...) for platforms that do not need it. Hook a menu configuration option to control that option. Build size differences on ar71xx: With: -rw-r--r-- 1 florian florian 79K mai 23 10:43 bin/ar71xx/packages/packages/ethtool_3.18-1_ar71xx.ipk Without: -rw-r--r-- 1 florian florian 23K mai 23 10:43 bin/ar71xx/packages/packages/ethtool_3.18-1_ar71xx.ipk Signed-off-by: Florian Fainelli --- net/ethtool/Config.in | 7 +++++++ net/ethtool/Makefile | 14 +++++++++++++- 2 files changed, 20 insertions(+), 1 deletion(-) create mode 100644 net/ethtool/Config.in diff --git a/net/ethtool/Config.in b/net/ethtool/Config.in new file mode 100644 index 000000000..7ec55536e --- /dev/null +++ b/net/ethtool/Config.in @@ -0,0 +1,7 @@ +menu "Configuration" + depends on PACKAGE_ethtool + + config ETHTOOL_PRETTY_DUMP + bool "Enable pretty printing" + +endmenu diff --git a/net/ethtool/Makefile b/net/ethtool/Makefile index 5ffb8253c..818a011ff 100644 --- a/net/ethtool/Makefile +++ b/net/ethtool/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=ethtool PKG_VERSION:=3.18 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_MAINTAINER:=Matthias Schiffer PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz @@ -23,6 +23,8 @@ PKG_FIXUP:=autoreconf PKG_INSTALL:=1 PKG_BUILD_PARALLEL:=1 +PKG_CONFIG_DEPENDS:=ETHTOOL_PRETTY_DUMP + include $(INCLUDE_DIR)/package.mk define Package/ethtool @@ -37,6 +39,16 @@ define Package/ethtool/description network interface endef +define Package/ethtool/config + source "$(SOURCE)/Config.in +endef + +ifeq ($(CONFIG_ETHTOOL_PRETTY_DUMP),y) +CONFIGURE_ARGS += --enable-pretty-dump +else +CONFIGURE_ARGS += --disable-pretty-dump +endif + define Package/ethtool/install $(INSTALL_DIR) $(1)/usr/sbin $(INSTALL_BIN) $(PKG_BUILD_DIR)/ethtool $(1)/usr/sbin From fe3d554c6a9b3d0e572deca05acfbcf094687b04 Mon Sep 17 00:00:00 2001 From: Marko Ratkaj Date: Thu, 28 May 2015 16:00:36 +0200 Subject: [PATCH 479/681] ulogd: add json plugin Signed-off-by: Marko Ratkaj --- net/ulogd/Makefile | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/net/ulogd/Makefile b/net/ulogd/Makefile index 0cca3e4d9..4dfdb2868 100644 --- a/net/ulogd/Makefile +++ b/net/ulogd/Makefile @@ -50,6 +50,12 @@ define Package/ulogd-mod-dbi TITLE:=Output plugin for logging to a database using libdbi endef +define Package/ulogd-mod-json + $(call Package/ulogd/Default) + DEPENDS:=ulogd +jansson + TITLE:=JSON output plugin +endef + define Package/ulogd-mod-mysql $(call Package/ulogd/Default) DEPENDS:=ulogd +libmysqlclient @@ -188,6 +194,7 @@ ULOGD_EXTRA_PLUGINS:= \ $(eval $(call BuildPackage,ulogd)) $(eval $(call BuildPlugin,dbi,output_DBI)) +$(eval $(call BuildPlugin,json,output_JSON)) $(eval $(call BuildPlugin,mysql,output_MYSQL)) $(eval $(call BuildPlugin,nfacct,inpflow_NFACCT)) $(eval $(call BuildPlugin,nfct,inpflow_NFCT)) From 7dc3a17d53db2e2c85cac8355d8b6b6d6c64d1c9 Mon Sep 17 00:00:00 2001 From: Ted Hess Date: Thu, 28 May 2015 13:19:25 -0400 Subject: [PATCH 480/681] bridge-utils: Add busybox fixup in postrm Signed-off-by: Ted Hess --- net/bridge-utils/Makefile | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/net/bridge-utils/Makefile b/net/bridge-utils/Makefile index 5a9cdb8af..7b9691cc9 100644 --- a/net/bridge-utils/Makefile +++ b/net/bridge-utils/Makefile @@ -10,7 +10,7 @@ include $(INCLUDE_DIR)/kernel.mk PKG_NAME:=bridge-utils PKG_VERSION:=1.5 -PKG_RELEASE:=3 +PKG_RELEASE:=4 PKG_SOURCE_PROTO:=git PKG_SOURCE_URL:=https://git.kernel.org/pub/scm/linux/kernel/git/shemminger/bridge-utils.git @@ -49,4 +49,11 @@ define Package/bridge/install $(INSTALL_BIN) $(PKG_BUILD_DIR)/brctl/brctl $(1)/usr/sbin endef +define Package/bridge/prerm +#!/bin/sh +$${IPKG_INSTROOT}/bin/busybox brctl -h 2>&1 | grep -q BusyBox && \ +ln -sf ../../bin/busybox $${IPKG_INSTROOT}/usr/sbin/brctl +exit 0 +endef + $(eval $(call BuildPackage,bridge)) From f97dd0045839c9fff2486184e06aeb7b792beb52 Mon Sep 17 00:00:00 2001 From: Nikos Mavrogiannopoulos Date: Thu, 28 May 2015 19:57:09 +0200 Subject: [PATCH 481/681] freeradius-client: added library Signed-off-by: Nikos Mavrogiannopoulos --- libs/freeradius-client/Makefile | 55 +++++++++++++++++++++++++++++++++ 1 file changed, 55 insertions(+) create mode 100644 libs/freeradius-client/Makefile diff --git a/libs/freeradius-client/Makefile b/libs/freeradius-client/Makefile new file mode 100644 index 000000000..32f9aac59 --- /dev/null +++ b/libs/freeradius-client/Makefile @@ -0,0 +1,55 @@ +# +# Copyright (C) 2011 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=freeradius-client +PKG_VERSION:=1.1.7 +PKG_RELEASE:=1 + +PKG_SOURCE:=freeradius-client-$(PKG_VERSION).tar.gz +PKG_SOURCE_URL:=ftp://ftp.freeradius.org/pub/freeradius/ +PKG_MD5SUM:=43b4d21715b613dc4fe8ef128467fe78 + +PKG_INSTALL:=1 + +include $(INCLUDE_DIR)/package.mk + +define Package/freeradius-client + SECTION:=libs + CATEGORY:=Libraries + TITLE:=A library for radius clients + URL:=http://freeradius.org/freeradius-client/ + MAINTAINER:=Nikos Mavrogiannopoulos +endef + +define Package/freeradius-client/decription + FreeRADIUS Client is a framework and library for writing RADIUS + Clients. The library lets you develop a RADIUS-aware application + in less than 50 lines of C code. It is highly portable and runs on + Linux, many BSD variants and Solaris. +endef + +define Build/InstallDev + $(INSTALL_DIR) $(1)/usr/include + $(CP) \ + $(PKG_INSTALL_DIR)/usr/include/freeradius-client.h \ + $(1)/usr/include/ + $(INSTALL_DIR) $(1)/usr/lib + $(CP) \ + $(PKG_INSTALL_DIR)/usr/lib/libfreeradius-client.{a,so*} \ + $(1)/usr/lib/ +endef + +define Package/freeradius-client/install + $(INSTALL_DIR) $(1)/usr/lib + $(CP) \ + $(PKG_INSTALL_DIR)/usr/lib/libfreeradius-client.so.* \ + $(1)/usr/lib/ +endef + +$(eval $(call BuildPackage,freeradius-client)) From f9f4ba7d1e161ff4717f59d0c5bcc2b73179579e Mon Sep 17 00:00:00 2001 From: Nikos Mavrogiannopoulos Date: Thu, 28 May 2015 20:02:05 +0200 Subject: [PATCH 482/681] ocserv: use freeradius-client library if radius support is requested Signed-off-by: Nikos Mavrogiannopoulos --- net/ocserv/Config.in | 4 ++++ net/ocserv/Makefile | 6 +++++- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/net/ocserv/Config.in b/net/ocserv/Config.in index 88c5f5091..b6460cd8e 100644 --- a/net/ocserv/Config.in +++ b/net/ocserv/Config.in @@ -11,6 +11,10 @@ config OCSERV_SECCOMP bool "enable seccomp" default n +config OCSERV_RADIUS + bool "enable radius authentication" + default n + config OCSERV_PROTOBUF bool "use external libprotobuf" default y diff --git a/net/ocserv/Makefile b/net/ocserv/Makefile index 78e5a132c..c88e78c5f 100644 --- a/net/ocserv/Makefile +++ b/net/ocserv/Makefile @@ -38,7 +38,7 @@ define Package/ocserv TITLE:=OpenConnect VPN server URL:=http://www.infradead.org/ocserv/ MAINTAINER:=Nikos Mavrogiannopoulos - DEPENDS:= +OCSERV_HTTP_PARSER:libhttp-parser +OCSERV_SECCOMP:libseccomp +libgnutls +certtool +libncurses +libreadline +OCSERV_PAM:libpam +OCSERV_PROTOBUF:libprotobuf-c +kmod-tun + DEPENDS:= +OCSERV_RADIUS:freeradius-client +OCSERV_HTTP_PARSER:libhttp-parser +OCSERV_SECCOMP:libseccomp +libgnutls +certtool +libncurses +libreadline +OCSERV_PAM:libpam +OCSERV_PROTOBUF:libprotobuf-c +kmod-tun USERID:=ocserv=72:ocserv=72 endef @@ -65,6 +65,10 @@ ifneq ($(CONFIG_OCSERV_PAM),y) CONFIGURE_ARGS += --without-pam endif +ifneq ($(CONFIG_OCSERV_RADIUS),y) +CONFIGURE_ARGS += --without-radius +endif + ifneq ($(CONFIG_OCSERV_SECCOMP),y) CONFIGURE_ARGS += --disable-seccomp endif From c8a8bea8e3bfd55ecd06e839636b34deea53468a Mon Sep 17 00:00:00 2001 From: Syrone Wong Date: Fri, 29 May 2015 11:15:10 +0800 Subject: [PATCH 483/681] ethtool: add missing quotation mark in Makefile Signed-off-by: Shuoyao Wang --- net/ethtool/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/net/ethtool/Makefile b/net/ethtool/Makefile index 818a011ff..a3924f4a5 100644 --- a/net/ethtool/Makefile +++ b/net/ethtool/Makefile @@ -40,7 +40,7 @@ define Package/ethtool/description endef define Package/ethtool/config - source "$(SOURCE)/Config.in + source "$(SOURCE)/Config.in" endef ifeq ($(CONFIG_ETHTOOL_PRETTY_DUMP),y) From f5ca16f98d7c0e8559537a3d7eedcff91c1452d8 Mon Sep 17 00:00:00 2001 From: Jo-Philipp Wich Date: Fri, 29 May 2015 17:41:33 +0200 Subject: [PATCH 484/681] nfs-kernel-server: revert CONFIG_IPV6 handling Building nfs-kernel-server with --enable-ipv6 requires not yet packaged libtirpc, therfore unconditionally disable IPv6 support again for now. Signed-off-by: Jo-Philipp Wich --- net/nfs-kernel-server/Makefile | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/net/nfs-kernel-server/Makefile b/net/nfs-kernel-server/Makefile index 3371f97af..e66fe65f5 100644 --- a/net/nfs-kernel-server/Makefile +++ b/net/nfs-kernel-server/Makefile @@ -1,4 +1,4 @@ -# Copyright (C) 2009 OpenWrt.org +# Copyright (C) 2009-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -8,7 +8,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=nfs-kernel-server PKG_VERSION:=1.3.2 -PKG_RELEASE:=3 +PKG_RELEASE:=4 PKG_MD5SUM:=1e2f3c1ed468dee02d00c534c002ea10 PKG_SOURCE_URL:=@SF/nfs @@ -77,12 +77,12 @@ CONFIGURE_ARGS += \ --disable-gss \ --disable-nfsv4 \ --disable-nfsv41 \ + --disable-ipv6 \ --enable-static \ --enable-shared \ --disable-caps \ --disable-tirpc \ - --disable-nfsdcld \ - $(call autoconf_bool,CONFIG_IPV6,ipv6) + --disable-nfsdcld CONFIGURE_VARS += \ libblkid_cv_is_recent=yes \ From 5244681f2d59a5cf4504f7bf7340094c0c1a7c62 Mon Sep 17 00:00:00 2001 From: Nikos Mavrogiannopoulos Date: Sat, 30 May 2015 22:50:55 +0200 Subject: [PATCH 485/681] gnutls: corrected regression with camellia cipher Signed-off-by: Nikos Mavrogiannopoulos --- libs/gnutls/Makefile | 2 +- ...camellia256-gcm-corrected-regression.patch | 26 +++++++++++++++++++ 2 files changed, 27 insertions(+), 1 deletion(-) create mode 100644 libs/gnutls/patches/001-camellia256-gcm-corrected-regression.patch diff --git a/libs/gnutls/Makefile b/libs/gnutls/Makefile index 40b807802..61e188ae9 100644 --- a/libs/gnutls/Makefile +++ b/libs/gnutls/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=gnutls PKG_VERSION:=3.4.1 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_USE_MIPS16:=0 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz diff --git a/libs/gnutls/patches/001-camellia256-gcm-corrected-regression.patch b/libs/gnutls/patches/001-camellia256-gcm-corrected-regression.patch new file mode 100644 index 000000000..e29e38eb3 --- /dev/null +++ b/libs/gnutls/patches/001-camellia256-gcm-corrected-regression.patch @@ -0,0 +1,26 @@ +From 6adde30fcea02d3cb541b5a5bfb3b12074f1f3e9 Mon Sep 17 00:00:00 2001 +From: Nikos Mavrogiannopoulos +Date: Thu, 14 May 2015 14:00:11 +0200 +Subject: [PATCH] camellia256-gcm: corrected regression + +Reported by Manuel Pegourie-Gonnard. +--- + lib/nettle/cipher.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/lib/nettle/cipher.c b/lib/nettle/cipher.c +index 59e70dd..74e4203 100644 +--- a/lib/nettle/cipher.c ++++ b/lib/nettle/cipher.c +@@ -302,7 +302,7 @@ static const struct nettle_cipher_st builtin_ciphers[] = { + .ctx_size = sizeof(struct gcm_camellia256_ctx), + .encrypt = _gcm_encrypt, + .decrypt = _gcm_decrypt, +- .set_encrypt_key = (nettle_set_key_func*)gcm_camellia128_set_key, ++ .set_encrypt_key = (nettle_set_key_func*)gcm_camellia256_set_key, + .set_decrypt_key = (nettle_set_key_func*)gcm_camellia256_set_key, + + .tag = (nettle_hash_digest_func*)gcm_camellia256_digest, +-- +2.1.4 + From a0524dbaefb6946d5bab2628045c5f021c681cf8 Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Sat, 30 May 2015 23:08:32 +0200 Subject: [PATCH 486/681] libextractor: add new package Signed-off-by: Daniel Golle --- libs/libextractor/Makefile | 138 +++++++++++++++++++++++++++++++++++++ 1 file changed, 138 insertions(+) create mode 100644 libs/libextractor/Makefile diff --git a/libs/libextractor/Makefile b/libs/libextractor/Makefile new file mode 100644 index 000000000..2caaa1b3f --- /dev/null +++ b/libs/libextractor/Makefile @@ -0,0 +1,138 @@ +# +# Copyright (C) 2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=libextractor +PKG_VERSION:=1.3 +PKG_RELEASE:=$(PKG_SOURCE_VERSION) + +# ToDo: +# - package missing optional dependencies: libexiv2, giflib, gsf, librpm, smf, tidy +# - fix gstreamer-0.10 bindings + +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz +PKG_SOURCE_URL:=@GNU/$(PKG_NAME) +PKG_MD5SUM:=35b8913dbebafe583a2781bf71509c48 + +PKG_LICENSE:=GPL-3.0 +PKG_LICENSE_FILES:=COPYING +PKG_MAINTAINER:=Daniel Golle + +PKG_INSTALL:=1 + +PLUGINS:= \ + archive:+libarchive \ + deb \ + dvi \ + flac:+libflac \ + it \ + jpeg:+libjpeg \ + man \ + mime:+libmagic \ + mpeg:+libmpeg2 \ + nsf \ + nsfe \ + odf \ + ogg:+libvorbis \ + png \ + ps \ + riff \ + s3m \ + sid \ + thumbnailffmpeg:+libffmpeg-full:+libmagic \ + tiff:+libtiff \ + wav \ + xm \ + zip + + +include $(INCLUDE_DIR)/package.mk + +CONFIGURE_ARGS += \ + --enable-ffmpeg \ + --without-gstreamer \ + --without-gtk \ + --disable-gsf \ + --disable-rpath + +define Package/libextractor + SECTION:=libs + CATEGORY:=Libraries + TITLE:=GNU Libextractor + URL:=https://www.gnu.org/software/libextractor/ + DEPENDS:=+libbz2 +libltdl +librt +zlib + MENU:=1 +endef + +define Package/libextractor/description + GNU Libextractor is a library used to extract meta data from files. + The goal is to provide developers of file-sharing networks, browsers or + WWW-indexing bots with a universal library to obtain simple keywords and meta + data to match against queries and to show to users instead of only relying on + filenames. +endef + +define PluginGen +define Package/libextractor-plugin-$(subst _,-,$(firstword $(subst :, ,$(1)))) + SECTION:=libs + CATEGORY:=Libraries + TITLE:=GNU Libextractor ($(firstword $(subst :, ,$(1))) plugin) + URL:=https://www.gnu.org/software/libextractor/ + DEPENDS:=libextractor $(wordlist 2,$(words $(subst :, ,$(1))),$(subst :, ,$(1))) +endef +endef + +$(foreach file,$(PLUGINS),$(eval $(call PluginGen,$(file)))) + +define Package/extract + SECTION:=utils + CATEGORY:=Utilities + TITLE:=extract util from GNU Libextractor + URL:=https://www.gnu.org/software/libextractor/ + DEPENDS:=+libextractor +endef + +define Package/extract/description + libextractor contains the shell command extract that, similar to the + well-known file command, can extract meta data from a file an print the results + to stdout. +endef + +define Build/InstallDev + $(INSTALL_DIR) $(1)/usr/include/ + $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/include/* $(1)/usr/include/ + $(INSTALL_DIR) $(1)/usr/lib/ + $(CP) $(PKG_INSTALL_DIR)/usr/lib/*.{so*,a,la} $(1)/usr/lib/ + $(INSTALL_DIR) $(1)/usr/lib/pkgconfig/ + $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/* $(1)/usr/lib/pkgconfig/ +endef + +define Package/libextractor/install + $(INSTALL_DIR) $(1)/usr/lib/ + $(CP) $(PKG_INSTALL_DIR)/usr/lib/*.so* $(1)/usr/lib/ +endef + +define PluginInstall +define Package/libextractor-plugin-$(subst _,-,$(firstword $(subst :, ,$(1))))/install + $(INSTALL_DIR) $$(1)/usr/lib/libextractor + $(INSTALL_BIN) \ + $(PKG_INSTALL_DIR)/usr/lib/libextractor/libextractor_$(firstword $(subst :, ,$(1))).so \ + $$(1)/usr/lib/libextractor +endef +endef + +define Package/extract/install + $(INSTALL_DIR) $(1)/usr/bin + $(CP) $(PKG_INSTALL_DIR)/usr/bin/* $(1)/usr/bin/ +endef + +$(foreach file,$(PLUGINS),$(eval $(call PluginInstall,$(file)))) + +$(eval $(call BuildPackage,libextractor)) +$(foreach file,$(PLUGINS),$(eval $(call BuildPackage,libextractor-plugin-$(subst _,-,$(firstword $(subst :, ,$(file))))))) +$(eval $(call BuildPackage,extract)) From 98a821a93af266a457ec3967c8cb3e90d0c0037c Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Sat, 30 May 2015 23:09:47 +0200 Subject: [PATCH 487/681] gnunet: add new package The single 'gnunet' package built should be further split up, meta-packages for common use-cases should be added. However, it's not too big to run on devices with 8MB of flash or more, even in the current monolithic package. Integration with procd and netifd is not yet implemented. Signed-off-by: Daniel Golle --- net/gnunet/Makefile | 78 +++++++++++++++++++ .../patches/010-cross-compile-fixes.patch | 13 ++++ net/gnunet/patches/011-no-fpu-includes.patch | 36 +++++++++ 3 files changed, 127 insertions(+) create mode 100644 net/gnunet/Makefile create mode 100644 net/gnunet/patches/010-cross-compile-fixes.patch create mode 100644 net/gnunet/patches/011-no-fpu-includes.patch diff --git a/net/gnunet/Makefile b/net/gnunet/Makefile new file mode 100644 index 000000000..3fc933d4a --- /dev/null +++ b/net/gnunet/Makefile @@ -0,0 +1,78 @@ +# +# Copyright (C) 2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=gnunet +PKG_SOURCE_VERSION:=35839 +PKG_VERSION:=0.10.1-svn$(PKG_SOURCE_VERSION) +PKG_RELEASE:=1 + +# ToDo: +# - split into small packages +# - create meta-packages for common setups +# - allow building with mysql or postgresql +# - package gnurl (?) + +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz +PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) +PKG_SOURCE_URL:=https://gnunet.org/svn/gnunet/ +PKG_SOURCE_PROTO:=svn + +PKG_LICENSE:=GPL-3.0 +PKG_LICENSE_FILES:=COPYING +PKG_MAINTAINER:=Daniel Golle + +PKG_BUILD_PARALLEL:=1 +PKG_FIXUP:=autoreconf +PKG_INSTALL:=1 + +include $(INCLUDE_DIR)/package.mk + +CONFIGURE_ARGS+= \ + --disable-rpath \ + --with-libunistring-prefix \ + --without-postgresql \ + --without-mysql + +define Package/gnunet + SECTION:=net + CATEGORY:=Network + TITLE:=GNUnet peer-to-peer framework focusing on security + DEPENDS:=+libextractor +libidn +libmicrohttpd +libunistring +libgnutls +libsqlite3 +kmod-tun + URL:=https://www.gnunet.org/ +endef + +define Package/gnunet/description + GNUnet is peer-to-peer framework focusing on security. The first and + primary application for GNUnet is anonymous file-sharing. GNUnet is + currently developed by a worldwide group of independent free software + developers. GNUnet is a GNU package (http://www.gnu.org/). + + This is an ALPHA release. There are known and significant bugs as + well as many missing features in this release. +endef + +define Package/gnunet/install + $(INSTALL_DIR) $(1)/usr/bin $(1)/usr/lib/gnunet/libexec + $(INSTALL_DIR) $(1)/usr/share/gnunet/config.d $(1)/usr/share/gnunet/hellos + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/* $(1)/usr/bin/ + $(CP) $(PKG_INSTALL_DIR)/usr/lib/*.so* $(1)/usr/lib/ + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/gnunet/*.so $(1)/usr/lib/gnunet + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/gnunet/libexec/* $(1)/usr/lib/gnunet/libexec + $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/share/gnunet/hellos/* $(1)/usr/share/gnunet/hellos + $(INSTALL_CONF) $(PKG_INSTALL_DIR)/usr/share/gnunet/config.d/* $(1)/usr/share/gnunet/config.d +endef + +define Build/InstallDev + $(INSTALL_DIR) $(1)/usr/include/gnunet $(1)/usr/lib/pkgconfig + $(CP) $(PKG_INSTALL_DIR)/usr/lib/*.{la,so}* $(1)/usr/lib/ + $(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/*.pc $(1)/usr/lib/pkgconfig + $(CP) $(PKG_INSTALL_DIR)/usr/include/gnunet/*.h $(1)/usr/include/gnunet +endef + +$(eval $(call BuildPackage,gnunet)) diff --git a/net/gnunet/patches/010-cross-compile-fixes.patch b/net/gnunet/patches/010-cross-compile-fixes.patch new file mode 100644 index 000000000..820692700 --- /dev/null +++ b/net/gnunet/patches/010-cross-compile-fixes.patch @@ -0,0 +1,13 @@ +Index: gnunet-0.10.1/configure.ac +=================================================================== +--- gnunet-0.10.1.orig/configure.ac ++++ gnunet-0.10.1/configure.ac +@@ -194,7 +194,7 @@ AM_CONDITIONAL(GNU, test "$build_target" + AC_MSG_RESULT([$build_target]) + AC_SUBST(build_target) + AM_CONDITIONAL([am__fastdepOBJC], false) +-AC_UNALIGNED_64_ACCESS ++# AC_UNALIGNED_64_ACCESS + + # some other checks for standard libs + AC_SEARCH_LIBS([gethostbyname], [nsl ws2_32]) diff --git a/net/gnunet/patches/011-no-fpu-includes.patch b/net/gnunet/patches/011-no-fpu-includes.patch new file mode 100644 index 000000000..cb07e3252 --- /dev/null +++ b/net/gnunet/patches/011-no-fpu-includes.patch @@ -0,0 +1,36 @@ +Index: gnunet-0.10.1/src/dht/gnunet-service-dht_neighbours.c +=================================================================== +--- gnunet-0.10.1.orig/src/dht/gnunet-service-dht_neighbours.c ++++ gnunet-0.10.1/src/dht/gnunet-service-dht_neighbours.c +@@ -45,7 +45,6 @@ + #include "gnunet-service-dht_neighbours.h" + #include "gnunet-service-dht_nse.h" + #include "gnunet-service-dht_routing.h" +-#include + #include "dht.h" + + #define LOG_TRAFFIC(kind,...) GNUNET_log_from (kind, "dht-traffic",__VA_ARGS__) +Index: gnunet-0.10.1/src/dht/gnunet-service-wdht_neighbours.c +=================================================================== +--- gnunet-0.10.1.orig/src/dht/gnunet-service-wdht_neighbours.c ++++ gnunet-0.10.1/src/dht/gnunet-service-wdht_neighbours.c +@@ -44,7 +44,6 @@ + #include "gnunet-service-wdht_datacache.h" + #include "gnunet-service-wdht_neighbours.h" + #include "gnunet-service-wdht_nse.h" +-#include + #include + #include + #include "dht.h" +Index: gnunet-0.10.1/src/dht/gnunet-service-xdht_neighbours.c +=================================================================== +--- gnunet-0.10.1.orig/src/dht/gnunet-service-xdht_neighbours.c ++++ gnunet-0.10.1/src/dht/gnunet-service-xdht_neighbours.c +@@ -41,7 +41,6 @@ + #include "gnunet-service-xdht_datacache.h" + #include "gnunet-service-xdht_neighbours.h" + #include "gnunet-service-xdht_routing.h" +-#include + #include "dht.h" + + /** From eba7afcfb7635f69ffa8ba330564b0a896dc5aa3 Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Sun, 31 May 2015 07:08:01 +0200 Subject: [PATCH 488/681] gnurl: add net package This is definitely one of the ugliest things I ever got my hands on. If it even did the job properly, but no, it tries to install it's headers in /usr/include/curl collidings with actual curl's headers. Fixed that by installing them into /usr/include/gnurl instead. Now gnunet can use gnurl. Signed-off-by: Daniel Golle --- net/gnurl/Makefile | 103 ++++++++++++++++++++ net/gnurl/patches/100-check_long_long.patch | 10 ++ net/gnurl/patches/200-no_docs_tests.patch | 22 +++++ 3 files changed, 135 insertions(+) create mode 100644 net/gnurl/Makefile create mode 100644 net/gnurl/patches/100-check_long_long.patch create mode 100644 net/gnurl/patches/200-no_docs_tests.patch diff --git a/net/gnurl/Makefile b/net/gnurl/Makefile new file mode 100644 index 000000000..e1a8c01b7 --- /dev/null +++ b/net/gnurl/Makefile @@ -0,0 +1,103 @@ +# +# Copyright (C) 2007-2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=gnurl +PKG_VERSION:=7.40.0 +PKG_RELEASE:=1 + +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 +PKG_SOURCE_URL:=https://gnunet.org/sites/default/files + +# PKG_MD5SUM:=8d30594212e65657a5c32030f0998fa9 + +PKG_LICENSE:=MIT +PKG_LICENSE_FILES:=COPYING + +PKG_FIXUP:=autoreconf +PKG_BUILD_PARALLEL:=1 + +include $(INCLUDE_DIR)/package.mk + +define Package/gnurl/Default + SECTION:=net + CATEGORY:=Network + URL:=https://gnunet.org/gnurl + MAINTAINER:=Daniel Golle +endef + +define Package/gnurl + $(call Package/gnurl/Default) + SUBMENU:=File Transfer + DEPENDS:=+libgnurl + TITLE:=A client-side HTTP/HTTPS transfer utility +endef + +define Package/libgnurl + $(call Package/gnurl/Default) + SECTION:=libs + CATEGORY:=Libraries + DEPENDS:=+libgnutls +libidn + TITLE:=A client-side HTTP/HTTPS transfer library +endef + +TARGET_CFLAGS += $(FPIC) + +CONFIGURE_ARGS += \ + --disable-debug \ + --disable-ares \ + --enable-ipv6 \ + --enable-shared \ + --enable-static \ + --disable-manual \ + --disable-ldap \ + --disable-ldaps \ + --with-gnutls="$(STAGING_DIR)/usr" \ + --with-ipv6 \ + --with-libidn="$(STAGING_DIR)/usr" \ + --without-axtls \ + --without-ca-bundle \ + --without-ca-path \ + --without-cyassl \ + --without-libmetalink \ + --without-librtmp \ + --without-nss \ + --without-polarssl \ + --without-ssl \ + --without-zlib + +define Build/Compile + +$(MAKE) $(PKG_JOBS) -C $(PKG_BUILD_DIR) \ + DESTDIR="$(PKG_INSTALL_DIR)" \ + CC="$(TARGET_CC)" \ + install +endef + +define Build/InstallDev + $(INSTALL_DIR) $(2)/bin $(1)/usr/bin $(1)/usr/include/gnurl $(1)/usr/lib $(1)/usr/lib/pkgconfig + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/gnurl-config $(1)/usr/bin/ + $(CP) $(PKG_INSTALL_DIR)/usr/include/curl/*.h $(1)/usr/include/gnurl + $(CP) $(PKG_INSTALL_DIR)/usr/lib/libgnurl.{a,so*} $(1)/usr/lib/ + $(CP) $(PKG_BUILD_DIR)/libgnurl.pc $(1)/usr/lib/pkgconfig/ + $(SED) 's,-L$$$${exec_prefix}/lib,,g' $(1)/usr/bin/gnurl-config + [ -n "$(TARGET_LDFLAGS)" ] && $(SED) 's#$(TARGET_LDFLAGS)##g' $(1)/usr/lib/pkgconfig/libgnurl.pc || true + $(LN) $(STAGING_DIR)/usr/bin/gnurl-config $(2)/bin/ +endef + +define Package/gnurl/install + $(INSTALL_DIR) $(1)/usr/bin + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/gnurl $(1)/usr/bin/ +endef + +define Package/libgnurl/install + $(INSTALL_DIR) $(1)/usr/lib + $(CP) $(PKG_INSTALL_DIR)/usr/lib/libgnurl.so.* $(1)/usr/lib/ +endef + +$(eval $(call BuildPackage,gnurl)) +$(eval $(call BuildPackage,libgnurl)) diff --git a/net/gnurl/patches/100-check_long_long.patch b/net/gnurl/patches/100-check_long_long.patch new file mode 100644 index 000000000..2dd8cc72d --- /dev/null +++ b/net/gnurl/patches/100-check_long_long.patch @@ -0,0 +1,10 @@ +--- a/configure.ac ++++ b/configure.ac +@@ -2885,6 +2885,7 @@ CURL_VERIFY_RUNTIMELIBS + + AC_CHECK_SIZEOF(size_t) + AC_CHECK_SIZEOF(long) ++AC_CHECK_SIZEOF(long long) + AC_CHECK_SIZEOF(int) + AC_CHECK_SIZEOF(short) + CURL_CONFIGURE_LONG diff --git a/net/gnurl/patches/200-no_docs_tests.patch b/net/gnurl/patches/200-no_docs_tests.patch new file mode 100644 index 000000000..6a1fdf5b6 --- /dev/null +++ b/net/gnurl/patches/200-no_docs_tests.patch @@ -0,0 +1,22 @@ +--- a/Makefile.am ++++ b/Makefile.am +@@ -129,7 +129,7 @@ CLEANFILES = $(VC6_LIBDSP) $(VC6_SRCDSP) $(VC7_LIBVCPROJ) $(VC7_SRCVCPROJ) \ + bin_SCRIPTS = curl-config + + SUBDIRS = lib src include +-DIST_SUBDIRS = $(SUBDIRS) tests packages docs ++DIST_SUBDIRS = $(SUBDIRS) packages + + pkgconfigdir = $(libdir)/pkgconfig + pkgconfig_DATA = libcurl.pc +--- a/Makefile.in ++++ b/Makefile.in +@@ -577,7 +577,7 @@ CLEANFILES = $(VC6_LIBDSP) $(VC6_SRCDSP) $(VC7_LIBVCPROJ) $(VC7_SRCVCPROJ) \ + + bin_SCRIPTS = curl-config + SUBDIRS = lib src include +-DIST_SUBDIRS = $(SUBDIRS) tests packages docs ++DIST_SUBDIRS = $(SUBDIRS) packages + pkgconfigdir = $(libdir)/pkgconfig + pkgconfig_DATA = libcurl.pc + LIB_VTLS_CFILES = vtls/openssl.c vtls/gtls.c vtls/vtls.c vtls/nss.c \ From ce0b6a4554467a7387b87288100659177e83b70b Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Sun, 31 May 2015 04:54:23 +0200 Subject: [PATCH 489/681] gnunet: fix things and use newer source version - use newer source version from SVN - made it detect gnurl - added init script - added gnunet user Signed-off-by: Daniel Golle --- net/gnunet/Makefile | 21 +++- net/gnunet/files/gnunet.init | 32 ++++++ .../012-work-around-bad-workarounds.patch | 104 ++++++++++++++++++ 3 files changed, 151 insertions(+), 6 deletions(-) create mode 100644 net/gnunet/files/gnunet.init create mode 100644 net/gnunet/patches/012-work-around-bad-workarounds.patch diff --git a/net/gnunet/Makefile b/net/gnunet/Makefile index 3fc933d4a..b2b45389e 100644 --- a/net/gnunet/Makefile +++ b/net/gnunet/Makefile @@ -8,7 +8,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=gnunet -PKG_SOURCE_VERSION:=35839 +PKG_SOURCE_VERSION:=35844 PKG_VERSION:=0.10.1-svn$(PKG_SOURCE_VERSION) PKG_RELEASE:=1 @@ -35,16 +35,23 @@ include $(INCLUDE_DIR)/package.mk CONFIGURE_ARGS+= \ --disable-rpath \ - --with-libunistring-prefix \ - --without-postgresql \ - --without-mysql + --with-extractor=$(STAGING_DIR)/usr \ + --with-gnutls=$(STAGING_DIR)/usr \ + --with-libgnurl=$(STAGING_DIR)/usr \ + --with-libunistring-prefix=$(STAGING_DIR)/usr \ + --with-ltdl \ + --with-microhttpd=$(STAGING_DIR)/usr \ + --without-mysql \ + --without-postgresql define Package/gnunet SECTION:=net CATEGORY:=Network TITLE:=GNUnet peer-to-peer framework focusing on security - DEPENDS:=+libextractor +libidn +libmicrohttpd +libunistring +libgnutls +libsqlite3 +kmod-tun + DEPENDS:=+kmod-tun +libextractor +libgnurl +libgnutls +libidn \ + +libmicrohttpd +libunistring +libsqlite3 URL:=https://www.gnunet.org/ + USERID:=gnunet=400:gnunet=400 endef define Package/gnunet/description @@ -65,7 +72,9 @@ define Package/gnunet/install $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/gnunet/*.so $(1)/usr/lib/gnunet $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/gnunet/libexec/* $(1)/usr/lib/gnunet/libexec $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/share/gnunet/hellos/* $(1)/usr/share/gnunet/hellos - $(INSTALL_CONF) $(PKG_INSTALL_DIR)/usr/share/gnunet/config.d/* $(1)/usr/share/gnunet/config.d + $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/share/gnunet/config.d/* $(1)/usr/share/gnunet/config.d + $(INSTALL_DIR) $(1)/etc/init.d/ + $(INSTALL_BIN) ./files/gnunet.init $(1)/etc/init.d/gnunet endef define Build/InstallDev diff --git a/net/gnunet/files/gnunet.init b/net/gnunet/files/gnunet.init new file mode 100644 index 000000000..baecd9489 --- /dev/null +++ b/net/gnunet/files/gnunet.init @@ -0,0 +1,32 @@ +#!/bin/sh /etc/rc.common +# Copyright (C) 2015 OpenWrt.org + +START=50 +STOP=10 + +USE_PROCD=1 +PROG=/usr/bin/gnunet-arm +CONFIGFILE=/var/run/gnunet/gnunet.conf + +start_service() { + if [ ! -e /var/run/gnunet ]; then + mkdir -p /var/run/gnunet + chmod 0750 /var/run/gnunet + chown gnunet:gnunet /var/run/gnunet + touch $CONFIGFILE + chown gnunet:gnunet $CONFIGFILE + chmod 0600 $CONFIGFILE + fi + procd_open_instance + procd_set_param user gnunet + procd_set_param command $PROG -c $CONFIGFILE -s -m + procd_set_param respawn + procd_close_instance +} + +stop_service() { + procd_open_instance + procd_set_param user gnunet + procd_set_param command $PROG -c $CONFIGFILE -e + procd_close_instance +} diff --git a/net/gnunet/patches/012-work-around-bad-workarounds.patch b/net/gnunet/patches/012-work-around-bad-workarounds.patch new file mode 100644 index 000000000..d4875600f --- /dev/null +++ b/net/gnunet/patches/012-work-around-bad-workarounds.patch @@ -0,0 +1,104 @@ +Index: gnunet-0.10.1-svn35844/m4/libgnurl.m4 +=================================================================== +--- gnunet-0.10.1-svn35844.orig/m4/libgnurl.m4 ++++ gnunet-0.10.1-svn35844/m4/libgnurl.m4 +@@ -146,7 +146,7 @@ AC_DEFUN([LIBGNURL_CHECK_CONFIG], + _libgnurl_save_libs=$LIBS + LIBS="$LIBGNURL $LIBS" + +- AC_LINK_IFELSE([AC_LANG_PROGRAM([#include ],[ ++ AC_LINK_IFELSE([AC_LANG_PROGRAM([#include ],[ + /* Try and use a few common options to force a failure if we are + missing symbols or can't link. */ + int x; +Index: gnunet-0.10.1-svn35844/src/gns/gnunet-gns-proxy.c +=================================================================== +--- gnunet-0.10.1-svn35844.orig/src/gns/gnunet-gns-proxy.c ++++ gnunet-0.10.1-svn35844/src/gns/gnunet-gns-proxy.c +@@ -29,7 +29,7 @@ + */ + #include "platform.h" + #include +-#include ++#include + #include + #include + #include +Index: gnunet-0.10.1-svn35844/src/gns/test_gns_proxy.c +=================================================================== +--- gnunet-0.10.1-svn35844.orig/src/gns/test_gns_proxy.c ++++ gnunet-0.10.1-svn35844/src/gns/test_gns_proxy.c +@@ -24,7 +24,7 @@ + * @author Martin Schanzenbach + */ + #include "platform.h" +-#include ++#include + #include + #include "gnunet_namestore_service.h" + #include "gnunet_gns_service.h" +Index: gnunet-0.10.1-svn35844/src/hostlist/gnunet-daemon-hostlist_client.c +=================================================================== +--- gnunet-0.10.1-svn35844.orig/src/hostlist/gnunet-daemon-hostlist_client.c ++++ gnunet-0.10.1-svn35844/src/hostlist/gnunet-daemon-hostlist_client.c +@@ -29,7 +29,7 @@ + #include "gnunet_statistics_service.h" + #include "gnunet_transport_service.h" + #include "gnunet-daemon-hostlist.h" +-#include ++#include + + + /** +Index: gnunet-0.10.1-svn35844/src/pt/test_gns_vpn.c +=================================================================== +--- gnunet-0.10.1-svn35844.orig/src/pt/test_gns_vpn.c ++++ gnunet-0.10.1-svn35844/src/pt/test_gns_vpn.c +@@ -24,7 +24,7 @@ + * @author Martin Schanzenbach + */ + #include "platform.h" +-#include ++#include + #include + #include "gnunet_identity_service.h" + #include "gnunet_namestore_service.h" +Index: gnunet-0.10.1-svn35844/src/pt/test_gnunet_vpn.c +=================================================================== +--- gnunet-0.10.1-svn35844.orig/src/pt/test_gnunet_vpn.c ++++ gnunet-0.10.1-svn35844/src/pt/test_gnunet_vpn.c +@@ -24,7 +24,7 @@ + * @author Christian Grothoff + */ + #include "platform.h" +-#include ++#include + #include + #include "gnunet_vpn_service.h" + #include "gnunet_testing_lib.h" +Index: gnunet-0.10.1-svn35844/src/transport/plugin_transport_http.h +=================================================================== +--- gnunet-0.10.1-svn35844.orig/src/transport/plugin_transport_http.h ++++ gnunet-0.10.1-svn35844/src/transport/plugin_transport_http.h +@@ -41,7 +41,7 @@ + #include "gnunet_os_lib.h" + #include "gnunet_nat_lib.h" + #include "microhttpd.h" +-#include ++#include + + + #define DEBUG_HTTP GNUNET_EXTRA_LOGGING +Index: gnunet-0.10.1-svn35844/src/transport/plugin_transport_http_client.c +=================================================================== +--- gnunet-0.10.1-svn35844.orig/src/transport/plugin_transport_http_client.c ++++ gnunet-0.10.1-svn35844/src/transport/plugin_transport_http_client.c +@@ -49,7 +49,7 @@ + #include "gnunet_protocols.h" + #include "gnunet_transport_plugin.h" + #include "plugin_transport_http_common.h" +-#include ++#include + + + #define LOG(kind,...) GNUNET_log_from(kind, PLUGIN_NAME, __VA_ARGS__) From f560fb95c365459bd5bde7be82d68128b7ccf204 Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Sun, 31 May 2015 07:20:51 +0200 Subject: [PATCH 490/681] gnurl: add forgotten MD5SUM Signed-off-by: Daniel Golle --- net/gnurl/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/net/gnurl/Makefile b/net/gnurl/Makefile index e1a8c01b7..0b74e2f66 100644 --- a/net/gnurl/Makefile +++ b/net/gnurl/Makefile @@ -14,7 +14,7 @@ PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 PKG_SOURCE_URL:=https://gnunet.org/sites/default/files -# PKG_MD5SUM:=8d30594212e65657a5c32030f0998fa9 +PKG_MD5SUM:=f816deb0c1401c841780ec6b91985a14 PKG_LICENSE:=MIT PKG_LICENSE_FILES:=COPYING From e6deb6136ad6daceebb8ad0bbf8c1e39daa424fb Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Sun, 31 May 2015 07:40:44 +0200 Subject: [PATCH 491/681] gnunet: work-around libmicrohttpd detection Bug filed upstream: https://gnunet.org/bugs/view.php?id=3805 Once fixed, this patch can be removed. Signed-off-by: Daniel Golle --- ...-work-around-libmicrohttpd-detection.patch | 68 +++++++++++++++++++ 1 file changed, 68 insertions(+) create mode 100644 net/gnunet/patches/013-work-around-libmicrohttpd-detection.patch diff --git a/net/gnunet/patches/013-work-around-libmicrohttpd-detection.patch b/net/gnunet/patches/013-work-around-libmicrohttpd-detection.patch new file mode 100644 index 000000000..74457ef2d --- /dev/null +++ b/net/gnunet/patches/013-work-around-libmicrohttpd-detection.patch @@ -0,0 +1,68 @@ +Index: gnunet-0.10.1-svn35844/configure.ac +=================================================================== +--- gnunet-0.10.1-svn35844.orig/configure.ac ++++ gnunet-0.10.1-svn35844/configure.ac +@@ -854,14 +854,7 @@ AC_ARG_WITH(microhttpd, + AC_CHECK_HEADERS([microhttpd.h], + AC_CHECK_DECL(MHD_OPTION_PER_IP_CONNECTION_LIMIT, + AC_CHECK_LIB([microhttpd], [MHD_get_fdset2], +- [AC_MSG_CHECKING([for libmicrohttpd >= 0.9.32]) +- AC_RUN_IFELSE([AC_LANG_SOURCE([ +- #include "$native_srcdir/src/include/platform.h" +- #include +- int main () { return MHD_VERSION >= 0x0093200 ? 0 : 1; } +- ])], [ +- AC_MSG_RESULT(ok) +- lmhd=1],[AC_MSG_RESULT(failed)],lmhd=0)]), ++ ), + [],[#include "$native_srcdir/src/include/platform.h" + #include ]),, + [#include "$native_srcdir/src/include/platform.h"]) +@@ -873,14 +866,7 @@ AC_ARG_WITH(microhttpd, + AC_CHECK_DECL(MHD_OPTION_PER_IP_CONNECTION_LIMIT, + AC_CHECK_LIB([microhttpd], [MHD_get_fdset2], + EXT_LIB_PATH="-L$with_microhttpd/lib $EXT_LIB_PATH" +- [AC_MSG_CHECKING([for libmicrohttpd >= 0.9.32]) +- AC_RUN_IFELSE([AC_LANG_SOURCE([ +- #include "$native_srcdir/src/include/platform.h" +- #include +- int main () { return MHD_VERSION >= 0x0093200 ? 0 : 1; } +- ])], [ +- AC_MSG_RESULT(ok) +- lmhd=1],[AC_MSG_RESULT(failed)],lmhd=0)]), ++ ), + [],[#include "$native_srcdir/src/include/platform.h" + #include ]),, + [#include "$native_srcdir/src/include/platform.h"]) +@@ -891,19 +877,12 @@ AC_ARG_WITH(microhttpd, + AC_CHECK_HEADERS([microhttpd.h], + AC_CHECK_DECL(MHD_OPTION_PER_IP_CONNECTION_LIMIT, + AC_CHECK_LIB([microhttpd], [MHD_get_fdset2], +- [AC_MSG_CHECKING([for libmicrohttpd >= 0.9.32]) +- AC_RUN_IFELSE([AC_LANG_SOURCE([ +- #include "$native_srcdir/src/include/platform.h" +- #include +- int main () { return MHD_VERSION >= 0x0093200 ? 0 : 1; } +- ])], [ +- AC_MSG_RESULT(ok) +- lmhd=1],[AC_MSG_RESULT(failed)],lmhd=0)]), ++ ), + [],[#include "$native_srcdir/src/include/platform.h" + #include ]),, + [#include "$native_srcdir/src/include/platform.h"])]) +-AM_CONDITIONAL(HAVE_MHD, test x$lmhd = x1) +-AC_DEFINE_UNQUOTED([HAVE_MHD], $lmhd, [We have libmicrohttpd]) ++AM_CONDITIONAL(HAVE_MHD, test x1 = x1) ++AC_DEFINE_UNQUOTED([HAVE_MHD], 1, [We have libmicrohttpd]) + + + # restore LIBS +@@ -1655,7 +1634,7 @@ then + fi + + # MHD +-if test "x$lmhd" != "x1" ++if test "x1" != "x1" + then + AC_MSG_NOTICE([NOTICE: libmicrohttpd not found, http transport will not be installed.]) + fi From 93bd063f5b67ef96955054d918b0d82989b7f9fd Mon Sep 17 00:00:00 2001 From: Marcel Denia Date: Thu, 28 May 2015 23:02:43 +0200 Subject: [PATCH 492/681] db47: Force pthread mutexes, bump PKG_RELEASE Fixes #1312. Signed-off-by: Marcel Denia --- libs/db47/Makefile | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/libs/db47/Makefile b/libs/db47/Makefile index 563d47c88..113964a50 100644 --- a/libs/db47/Makefile +++ b/libs/db47/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2009-2014 OpenWrt.org +# Copyright (C) 2009-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -12,7 +12,7 @@ BASE_VERSION:=4.7.25 PKG_NAME:=db47 PKG_VERSION:=$(BASE_VERSION).4.NC -PKG_RELEASE:=3 +PKG_RELEASE:=4 PKG_BUILD_DIR:=$(BUILD_DIR)/db-$(BASE_VERSION).NC PKG_SOURCE:=db-$(BASE_VERSION).NC.tar.gz @@ -62,7 +62,7 @@ CONFIGURE_ARGS += \ --enable-shared \ --enable-static \ --disable-java \ - --with-mutex=UNIX/fcntl \ + --with-mutex=POSIX/pthreads/library \ --disable-tcl \ --disable-rpc \ --enable-compat185 \ From ee8f27517284377821a11b089e36f247855cb6a5 Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Sun, 31 May 2015 12:49:53 +0200 Subject: [PATCH 493/681] glpk: add new package Signed-off-by: Daniel Golle --- libs/glpk/Makefile | 66 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 66 insertions(+) create mode 100644 libs/glpk/Makefile diff --git a/libs/glpk/Makefile b/libs/glpk/Makefile new file mode 100644 index 000000000..e8ef53944 --- /dev/null +++ b/libs/glpk/Makefile @@ -0,0 +1,66 @@ +# +# Copyright (C) 2010-2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=glpk +PKG_VERSION:=4.55 +PKG_RELEASE:=1 + +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz +PKG_SOURCE_URL:=@GNU/$(PKG_NAME) +PKG_MD5SUM:=c632a7a631b8aed02e28eafcd99477f + +PKG_LICENSE:=GPL-3.0 +PKG_LICENSE_FILES:=COPYING +PKG_MAINTAINER:=Daniel Golle + +PKG_INSTALL:=1 + +include $(INCLUDE_DIR)/package.mk + +define Package/libglpk + SECTION:=libs + CATEGORY:=Libraries + TITLE:=The GNU Linear Programming Kit + URL:=http://www.gnu.org/software/glpk/ +endef + +define Package/libglpk/description + The GLPK (GNU Linear Programming Kit) package is intended for solving + large-scale linear programming (LP), mixed integer programming (MIP), + and other related problems. It is a set of routines written in ANSI C + and organized in the form of a callable library. +endef + +define Package/glpsol + SECTION:=libs + CATEGORY:=Libraries + TITLE:=The GNU Linear Programming Kit (glpsol) + URL:=http://www.gnu.org/software/glpk/ + DEPENDS:=libglpk +endef + +define Build/InstallDev + $(INSTALL_DIR) $(1)/usr/include/ + $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/include/* $(1)/usr/include/ + $(INSTALL_DIR) $(1)/usr/lib/ + $(CP) $(PKG_INSTALL_DIR)/usr/lib/*.{so*,a,la} $(1)/usr/lib/ +endef + +define Package/libglpk/install + $(INSTALL_DIR) $(1)/usr/lib/ + $(CP) $(PKG_INSTALL_DIR)/usr/lib/*.so* $(1)/usr/lib/ +endef + +define Package/glpsol/install + $(INSTALL_DIR) $(1)/usr/bin + $(CP) $(PKG_INSTALL_DIR)/usr/bin/glpsol $(1)/usr/bin +endef + +$(eval $(call BuildPackage,libglpk)) +$(eval $(call BuildPackage,glpsol)) From e3515017eb3b4443d591ea9fbb28748e48294be0 Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Sun, 31 May 2015 07:54:16 +0200 Subject: [PATCH 494/681] gnunet: fixup more dependencies Signed-off-by: Daniel Golle --- net/gnunet/Makefile | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/net/gnunet/Makefile b/net/gnunet/Makefile index b2b45389e..af8960c50 100644 --- a/net/gnunet/Makefile +++ b/net/gnunet/Makefile @@ -16,7 +16,6 @@ PKG_RELEASE:=1 # - split into small packages # - create meta-packages for common setups # - allow building with mysql or postgresql -# - package gnurl (?) PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) @@ -44,12 +43,16 @@ CONFIGURE_ARGS+= \ --without-mysql \ --without-postgresql +TARGET_LDFLAGS+= -Wl,-rpath-link=$(STAGING_DIR)/usr/lib/pulseaudio + define Package/gnunet SECTION:=net CATEGORY:=Network TITLE:=GNUnet peer-to-peer framework focusing on security - DEPENDS:=+kmod-tun +libextractor +libgnurl +libgnutls +libidn \ - +libmicrohttpd +libunistring +libsqlite3 + DEPENDS:=+bluez-libs +ca-certificates +certtool +libextractor +libgst1app \ + +libgst1audio +glib2 +kmod-tun +libglpk +libgnurl +libgnutls \ + +libgstreamer1 +libidn +libmicrohttpd +libopus +libogg \ + +libunistring +libsqlite3 +pulseaudio-daemon +openssl-util URL:=https://www.gnunet.org/ USERID:=gnunet=400:gnunet=400 endef @@ -71,6 +74,8 @@ define Package/gnunet/install $(CP) $(PKG_INSTALL_DIR)/usr/lib/*.so* $(1)/usr/lib/ $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/gnunet/*.so $(1)/usr/lib/gnunet $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/gnunet/libexec/* $(1)/usr/lib/gnunet/libexec + $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/share/gnunet/*.html $(1)/usr/share/gnunet + $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/share/gnunet/*.png $(1)/usr/share/gnunet $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/share/gnunet/hellos/* $(1)/usr/share/gnunet/hellos $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/share/gnunet/config.d/* $(1)/usr/share/gnunet/config.d $(INSTALL_DIR) $(1)/etc/init.d/ From 24efa9a6ca4dc7403eda6c6ab03ee7d520d8e901 Mon Sep 17 00:00:00 2001 From: Alexander Ryzhov Date: Sun, 31 May 2015 11:21:58 +0000 Subject: [PATCH 495/681] gnurl: Respect IPv6 settings Signed-off-by: Alexander Ryzhov --- net/gnurl/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/net/gnurl/Makefile b/net/gnurl/Makefile index 0b74e2f66..370e5bf9f 100644 --- a/net/gnurl/Makefile +++ b/net/gnurl/Makefile @@ -51,7 +51,7 @@ TARGET_CFLAGS += $(FPIC) CONFIGURE_ARGS += \ --disable-debug \ --disable-ares \ - --enable-ipv6 \ + $(call autoconf_bool,CONFIG_IPV6,ipv6) \ --enable-shared \ --enable-static \ --disable-manual \ From 70980bc50b2abf6a686754b12252ffa4399929e8 Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Sun, 31 May 2015 14:02:47 +0200 Subject: [PATCH 496/681] gnunet: use upstream fix for libmicrohttpd detection The autoconf issue when detecting libmicrohttpd was fixed upstream in SVN revision 35845. Use that and remove the dirty work-around. See also: https://gnunet.org/bugs/view.php?id=3805#c9201 Signed-off-by: Daniel Golle --- net/gnunet/Makefile | 2 +- ...-work-around-libmicrohttpd-detection.patch | 68 ------------------- 2 files changed, 1 insertion(+), 69 deletions(-) delete mode 100644 net/gnunet/patches/013-work-around-libmicrohttpd-detection.patch diff --git a/net/gnunet/Makefile b/net/gnunet/Makefile index af8960c50..58808c0f9 100644 --- a/net/gnunet/Makefile +++ b/net/gnunet/Makefile @@ -8,7 +8,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=gnunet -PKG_SOURCE_VERSION:=35844 +PKG_SOURCE_VERSION:=35845 PKG_VERSION:=0.10.1-svn$(PKG_SOURCE_VERSION) PKG_RELEASE:=1 diff --git a/net/gnunet/patches/013-work-around-libmicrohttpd-detection.patch b/net/gnunet/patches/013-work-around-libmicrohttpd-detection.patch deleted file mode 100644 index 74457ef2d..000000000 --- a/net/gnunet/patches/013-work-around-libmicrohttpd-detection.patch +++ /dev/null @@ -1,68 +0,0 @@ -Index: gnunet-0.10.1-svn35844/configure.ac -=================================================================== ---- gnunet-0.10.1-svn35844.orig/configure.ac -+++ gnunet-0.10.1-svn35844/configure.ac -@@ -854,14 +854,7 @@ AC_ARG_WITH(microhttpd, - AC_CHECK_HEADERS([microhttpd.h], - AC_CHECK_DECL(MHD_OPTION_PER_IP_CONNECTION_LIMIT, - AC_CHECK_LIB([microhttpd], [MHD_get_fdset2], -- [AC_MSG_CHECKING([for libmicrohttpd >= 0.9.32]) -- AC_RUN_IFELSE([AC_LANG_SOURCE([ -- #include "$native_srcdir/src/include/platform.h" -- #include -- int main () { return MHD_VERSION >= 0x0093200 ? 0 : 1; } -- ])], [ -- AC_MSG_RESULT(ok) -- lmhd=1],[AC_MSG_RESULT(failed)],lmhd=0)]), -+ ), - [],[#include "$native_srcdir/src/include/platform.h" - #include ]),, - [#include "$native_srcdir/src/include/platform.h"]) -@@ -873,14 +866,7 @@ AC_ARG_WITH(microhttpd, - AC_CHECK_DECL(MHD_OPTION_PER_IP_CONNECTION_LIMIT, - AC_CHECK_LIB([microhttpd], [MHD_get_fdset2], - EXT_LIB_PATH="-L$with_microhttpd/lib $EXT_LIB_PATH" -- [AC_MSG_CHECKING([for libmicrohttpd >= 0.9.32]) -- AC_RUN_IFELSE([AC_LANG_SOURCE([ -- #include "$native_srcdir/src/include/platform.h" -- #include -- int main () { return MHD_VERSION >= 0x0093200 ? 0 : 1; } -- ])], [ -- AC_MSG_RESULT(ok) -- lmhd=1],[AC_MSG_RESULT(failed)],lmhd=0)]), -+ ), - [],[#include "$native_srcdir/src/include/platform.h" - #include ]),, - [#include "$native_srcdir/src/include/platform.h"]) -@@ -891,19 +877,12 @@ AC_ARG_WITH(microhttpd, - AC_CHECK_HEADERS([microhttpd.h], - AC_CHECK_DECL(MHD_OPTION_PER_IP_CONNECTION_LIMIT, - AC_CHECK_LIB([microhttpd], [MHD_get_fdset2], -- [AC_MSG_CHECKING([for libmicrohttpd >= 0.9.32]) -- AC_RUN_IFELSE([AC_LANG_SOURCE([ -- #include "$native_srcdir/src/include/platform.h" -- #include -- int main () { return MHD_VERSION >= 0x0093200 ? 0 : 1; } -- ])], [ -- AC_MSG_RESULT(ok) -- lmhd=1],[AC_MSG_RESULT(failed)],lmhd=0)]), -+ ), - [],[#include "$native_srcdir/src/include/platform.h" - #include ]),, - [#include "$native_srcdir/src/include/platform.h"])]) --AM_CONDITIONAL(HAVE_MHD, test x$lmhd = x1) --AC_DEFINE_UNQUOTED([HAVE_MHD], $lmhd, [We have libmicrohttpd]) -+AM_CONDITIONAL(HAVE_MHD, test x1 = x1) -+AC_DEFINE_UNQUOTED([HAVE_MHD], 1, [We have libmicrohttpd]) - - - # restore LIBS -@@ -1655,7 +1634,7 @@ then - fi - - # MHD --if test "x$lmhd" != "x1" -+if test "x1" != "x1" - then - AC_MSG_NOTICE([NOTICE: libmicrohttpd not found, http transport will not be installed.]) - fi From 024ad3dba8f0758d41ed9293bd3082982975b016 Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Sun, 31 May 2015 15:43:26 +0200 Subject: [PATCH 497/681] libextractor: package gstreamer plugin Signed-off-by: Daniel Golle --- libs/libextractor/Makefile | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/libs/libextractor/Makefile b/libs/libextractor/Makefile index 2caaa1b3f..ec355ff0f 100644 --- a/libs/libextractor/Makefile +++ b/libs/libextractor/Makefile @@ -8,12 +8,11 @@ include $(TOPDIR)/rules.mk PKG_NAME:=libextractor -PKG_VERSION:=1.3 +PKG_VERSION:=2 PKG_RELEASE:=$(PKG_SOURCE_VERSION) # ToDo: # - package missing optional dependencies: libexiv2, giflib, gsf, librpm, smf, tidy -# - fix gstreamer-0.10 bindings PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=@GNU/$(PKG_NAME) @@ -30,6 +29,7 @@ PLUGINS:= \ deb \ dvi \ flac:+libflac \ + gstreamer:+libgstreamer1:+libgst1app:+libgst1pbutils:+libgst1tag \ it \ jpeg:+libjpeg \ man \ @@ -55,8 +55,7 @@ include $(INCLUDE_DIR)/package.mk CONFIGURE_ARGS += \ --enable-ffmpeg \ - --without-gstreamer \ - --without-gtk \ + --with-gstreamer \ --disable-gsf \ --disable-rpath From fc488b8b104ed50e6deb8c0e1d9257f0a36f5d6e Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Sun, 31 May 2015 15:45:50 +0200 Subject: [PATCH 498/681] libextractor: fix accidental versioning mess Signed-off-by: Daniel Golle --- libs/libextractor/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libs/libextractor/Makefile b/libs/libextractor/Makefile index ec355ff0f..266e443cf 100644 --- a/libs/libextractor/Makefile +++ b/libs/libextractor/Makefile @@ -8,8 +8,8 @@ include $(TOPDIR)/rules.mk PKG_NAME:=libextractor -PKG_VERSION:=2 -PKG_RELEASE:=$(PKG_SOURCE_VERSION) +PKG_VERSION:=1.3 +PKG_RELEASE:=2 # ToDo: # - package missing optional dependencies: libexiv2, giflib, gsf, librpm, smf, tidy From 10d6da7d46d6a975a4473e874576ebd1b065ff23 Mon Sep 17 00:00:00 2001 From: Othmar Truniger Date: Sun, 31 May 2015 16:00:02 +0200 Subject: [PATCH 499/681] knxd: bump to new version Signed-off-by: Othmar Truniger --- net/knxd/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/net/knxd/Makefile b/net/knxd/Makefile index 152edd75f..91a6e6634 100644 --- a/net/knxd/Makefile +++ b/net/knxd/Makefile @@ -11,12 +11,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=knxd -PKG_VERSION=2015-05-20-$(PKG_SOURCE_VERSION) +PKG_VERSION=2015-05-31-$(PKG_SOURCE_VERSION) PKG_RELEASE:=1 PKG_SOURCE_PROTO:=git PKG_SOURCE_URL:=https://github.com/knxd/knxd.git -PKG_SOURCE_VERSION:=30d490e15dfc3cedffc891c62eaa03c918f8efed +PKG_SOURCE_VERSION:=960a73ac61d3efe5d2893b7fc5edd883ac0abd44 PKG_SOURCE_SUBDIR:=$(PKG_NAME) PKG_SOURCE:=$(PKG_NAME)-$(PKG_SOURCE_VERSION).tar.gz From 6bbdfa55df7f0168e1df019eef6c548027b3c4db Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Sun, 31 May 2015 18:20:45 +0200 Subject: [PATCH 500/681] gnurl: reduce feature-set to match specs in README gnurl's README states quite excatly which CONFIGURE_ARGS to pass, so disable lots of unneeded stuff. Signed-off-by: Daniel Golle --- net/gnurl/Makefile | 43 ++++++++++++++++++++++++++++++------------- 1 file changed, 30 insertions(+), 13 deletions(-) diff --git a/net/gnurl/Makefile b/net/gnurl/Makefile index 370e5bf9f..962cff303 100644 --- a/net/gnurl/Makefile +++ b/net/gnurl/Makefile @@ -42,34 +42,51 @@ define Package/libgnurl $(call Package/gnurl/Default) SECTION:=libs CATEGORY:=Libraries - DEPENDS:=+libgnutls +libidn + DEPENDS:=+libgnutls +libidn +zlib TITLE:=A client-side HTTP/HTTPS transfer library endef TARGET_CFLAGS += $(FPIC) CONFIGURE_ARGS += \ - --disable-debug \ - --disable-ares \ $(call autoconf_bool,CONFIG_IPV6,ipv6) \ - --enable-shared \ - --enable-static \ - --disable-manual \ - --disable-ldap \ - --disable-ldaps \ --with-gnutls="$(STAGING_DIR)/usr" \ - --with-ipv6 \ --with-libidn="$(STAGING_DIR)/usr" \ + --with-zlib="$(STAGING_DIR)/usr" \ + --enable-tls-srp \ + --enable-shared \ + --enable-static \ --without-axtls \ - --without-ca-bundle \ - --without-ca-path \ - --without-cyassl \ + --without-libssh2 \ --without-libmetalink \ + --without-winidn \ --without-librtmp \ + --without-nghttp2 \ --without-nss \ + --without-cyassl \ --without-polarssl \ --without-ssl \ - --without-zlib + --without-winssl \ + --without-darwinssl \ + --disable-ares \ + --disable-sspi \ + --disable-ntlm-wb \ + --disable-ldap \ + --disable-ldaps \ + --disable-rtsp \ + --disable-dict \ + --disable-telnet \ + --disable-tftp \ + --disable-pop3 \ + --disable-imap \ + --disable-smtp \ + --disable-gopher \ + --disable-file \ + --disable-ftp \ + --disable-smb \ + --disable-debug \ + --disable-manual \ + --disable-verbose define Build/Compile +$(MAKE) $(PKG_JOBS) -C $(PKG_BUILD_DIR) \ From b9eb46387d431b2a796efd6235c1e33b5a7df9d9 Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Sun, 31 May 2015 18:32:53 +0200 Subject: [PATCH 501/681] gnurl: bump release Signed-off-by: Daniel Golle --- net/gnurl/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/net/gnurl/Makefile b/net/gnurl/Makefile index 962cff303..cbdaa9a58 100644 --- a/net/gnurl/Makefile +++ b/net/gnurl/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=gnurl PKG_VERSION:=7.40.0 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 PKG_SOURCE_URL:=https://gnunet.org/sites/default/files From a85f38afea7be86c58020919e439ab4bd01c9dc6 Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Sun, 31 May 2015 18:45:13 +0200 Subject: [PATCH 502/681] gnunet: improve procd init-script Directly call /usr/lib/gnunet/libexec/gnunet-service-arm instead of /usr/bin/gnunet-arm, so it remains attached to procd. Signed-off-by: Daniel Golle --- net/gnunet/Makefile | 2 +- net/gnunet/files/gnunet.init | 11 ++--------- 2 files changed, 3 insertions(+), 10 deletions(-) diff --git a/net/gnunet/Makefile b/net/gnunet/Makefile index 58808c0f9..0dba1aefc 100644 --- a/net/gnunet/Makefile +++ b/net/gnunet/Makefile @@ -10,7 +10,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=gnunet PKG_SOURCE_VERSION:=35845 PKG_VERSION:=0.10.1-svn$(PKG_SOURCE_VERSION) -PKG_RELEASE:=1 +PKG_RELEASE:=2 # ToDo: # - split into small packages diff --git a/net/gnunet/files/gnunet.init b/net/gnunet/files/gnunet.init index baecd9489..04b406771 100644 --- a/net/gnunet/files/gnunet.init +++ b/net/gnunet/files/gnunet.init @@ -5,7 +5,7 @@ START=50 STOP=10 USE_PROCD=1 -PROG=/usr/bin/gnunet-arm +PROG=/usr/lib/gnunet/libexec/gnunet-service-arm CONFIGFILE=/var/run/gnunet/gnunet.conf start_service() { @@ -19,14 +19,7 @@ start_service() { fi procd_open_instance procd_set_param user gnunet - procd_set_param command $PROG -c $CONFIGFILE -s -m + procd_set_param command $PROG -c $CONFIGFILE procd_set_param respawn procd_close_instance } - -stop_service() { - procd_open_instance - procd_set_param user gnunet - procd_set_param command $PROG -c $CONFIGFILE -e - procd_close_instance -} From 4020ee4fb6580d36edaf9b5503bb71ad8b4a1b80 Mon Sep 17 00:00:00 2001 From: Michael Heimpold Date: Sun, 31 May 2015 23:29:01 +0200 Subject: [PATCH 503/681] mmc-utils: upgrade to latest revision New features are commands for eMMC cache control and gp partition creation. Signed-off-by: Michael Heimpold --- utils/mmc-utils/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/utils/mmc-utils/Makefile b/utils/mmc-utils/Makefile index ca8549363..a089b2f4c 100644 --- a/utils/mmc-utils/Makefile +++ b/utils/mmc-utils/Makefile @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=mmc-utils -PKG_VERSION=2015-03-25-$(PKG_SOURCE_VERSION) +PKG_VERSION=2015-05-01-$(PKG_SOURCE_VERSION) PKG_RELEASE:=1 PKG_SOURCE_PROTO:=git PKG_SOURCE_URL:=https://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc-utils.git -PKG_SOURCE_VERSION:=50b68547ad895803128519af71c31b9f14bfc791 +PKG_SOURCE_VERSION:=d0b46442b50794217e53b2455c1344c548d9d088 PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_SOURCE_VERSION) PKG_SOURCE:=$(PKG_NAME)-$(PKG_SOURCE_VERSION).tar.gz From e746e0d2a57d52548906d28490daea21894397d4 Mon Sep 17 00:00:00 2001 From: Michael Heimpold Date: Mon, 1 Jun 2015 00:08:57 +0200 Subject: [PATCH 504/681] php5-pecl-libevent: add a patch to force usage of libevent2 headers (refs #1322) Builtbots currently fail to compile this package with (example message): ... /libevent-0.1.0/libevent.c:1403:42: error: 'EVBUFFER_READ' undeclared (first use in this function) REGISTER_LONG_CONSTANT("EVBUFFER_READ", EVBUFFER_READ, CONST_CS | CONST_PERSISTENT); With libevent2, the main include file event.h is deprecated, but includes enough stuff and other compat includes that it _should work_. I could not figure out why it fails (all locally builds work out-of-the-box), so this is a trial to circumvent this compat header file and include the libevent2 headers directly. While at, add a missing dependency to the sockets extension. Signed-off-by: Michael Heimpold --- lang/php5-pecl-libevent/Makefile | 4 ++-- .../patches/010-libevent2.patch | 16 ++++++++++++++++ 2 files changed, 18 insertions(+), 2 deletions(-) create mode 100644 lang/php5-pecl-libevent/patches/010-libevent2.patch diff --git a/lang/php5-pecl-libevent/Makefile b/lang/php5-pecl-libevent/Makefile index 6beee26f2..feca20df3 100644 --- a/lang/php5-pecl-libevent/Makefile +++ b/lang/php5-pecl-libevent/Makefile @@ -11,7 +11,7 @@ PECL_NAME:=libevent PECL_LONGNAME:=Libevent - event notification PKG_VERSION:=0.1.0 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_MD5SUM:=e091371a9e714098a4c04a6e3daeb56a PKG_NAME:=php5-pecl-$(PECL_NAME) @@ -34,5 +34,5 @@ include ../php5/pecl.mk CONFIGURE_ARGS+= --with-libevent=shared,"$(STAGING_DIR)/usr" -$(eval $(call PECLPackage,$(PECL_NAME),$(PECL_LONGNAME),+libevent2)) +$(eval $(call PECLPackage,$(PECL_NAME),$(PECL_LONGNAME),+libevent2 +php5-mod-sockets)) $(eval $(call BuildPackage,$(PKG_NAME))) diff --git a/lang/php5-pecl-libevent/patches/010-libevent2.patch b/lang/php5-pecl-libevent/patches/010-libevent2.patch new file mode 100644 index 000000000..961fb3608 --- /dev/null +++ b/lang/php5-pecl-libevent/patches/010-libevent2.patch @@ -0,0 +1,16 @@ +--- a/libevent.c ++++ b/libevent.c +@@ -42,10 +42,12 @@ + (rsrc = (rsrc_type) zend_fetch_resource(passed_id TSRMLS_CC, default_id, resource_type_name, NULL, 1, resource_type)) + #endif + +-#ifdef PHP_WIN32 ++//#ifdef PHP_WIN32 + /* XXX compiling with 2.x on Windows. Luckily the ext code works thanks to the + compat exports from the libevent. However it might need to be adapted to the + never version, so this ifdefs would go away. */ ++#if 1 ++/* force use of libevent2 on OpenWrt and by-pass compat event.h */ + # include + # include + # include From bae97817334a710371db9b2b4bad3f4ce553c09a Mon Sep 17 00:00:00 2001 From: Roger Date: Mon, 1 Jun 2015 11:22:07 -0500 Subject: [PATCH 505/681] micropython: update to latest Signed-off-by: Roger D --- lang/micropython/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lang/micropython/Makefile b/lang/micropython/Makefile index 1bcc12340..d5c66ada6 100644 --- a/lang/micropython/Makefile +++ b/lang/micropython/Makefile @@ -8,7 +8,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=micropython -PKG_VERSION=1.3.10-20150302-$(PKG_SOURCE_VERSION) +PKG_VERSION=1.4.3-20150601-$(PKG_SOURCE_VERSION) PKG_RELEASE:=1 PKG_MAINTAINER:=Roger D @@ -17,7 +17,7 @@ PKG_LICENSE_FILES:=LICENSE PKG_SOURCE_PROTO:=git PKG_SOURCE_URL:=https://github.com/micropython/micropython.git -PKG_SOURCE_VERSION:=f2a889564b3a215902622b040a1247af38cb8203 +PKG_SOURCE_VERSION:=3ac2d06bd13f1cedb8242eaacc6c608ac08c3520 PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) PKG_SOURCE:=$(PKG_SOURCE_SUBDIR).tar.gz From 78ce3add21744e57e9f2919e12d3a2e411f10439 Mon Sep 17 00:00:00 2001 From: Roger Date: Mon, 1 Jun 2015 11:24:33 -0500 Subject: [PATCH 506/681] micropython-lib: update to latest Signed-off-by: Roger D --- lang/micropython-lib/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lang/micropython-lib/Makefile b/lang/micropython-lib/Makefile index 025ae1712..c8162dc54 100644 --- a/lang/micropython-lib/Makefile +++ b/lang/micropython-lib/Makefile @@ -8,7 +8,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=micropython-lib -PKG_VERSION=0.1-20150302-$(PKG_SOURCE_VERSION) +PKG_VERSION=0.1-20150601-$(PKG_SOURCE_VERSION) PKG_RELEASE:=1 PKG_MAINTAINER:=Roger D @@ -17,7 +17,7 @@ PKG_LICENSE_FILES:=LICENSE PKG_SOURCE_PROTO:=git PKG_SOURCE_URL:=https://github.com/micropython/micropython-lib.git -PKG_SOURCE_VERSION:=654c7d288603f7dae09eb09b57fb67b38c7ac6c3 +PKG_SOURCE_VERSION:=b8092c1838f4942a0fab62c1eb6d08b542cc9e9b PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION) PKG_SOURCE:=$(PKG_SOURCE_SUBDIR).tar.gz From 6e416709e8db3235dee7b31627da3795f5bb56f7 Mon Sep 17 00:00:00 2001 From: Paul Fertser Date: Thu, 28 May 2015 09:22:04 +0300 Subject: [PATCH 507/681] openocd: update to final 0.9.0 Disables building documentation to avoid makeinfo v4,v5 incompatibilities. Signed-off-by: Paul Fertser --- utils/openocd/Makefile | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/utils/openocd/Makefile b/utils/openocd/Makefile index 9f86330d4..2d22e4d36 100644 --- a/utils/openocd/Makefile +++ b/utils/openocd/Makefile @@ -8,7 +8,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=openocd -PKG_VERSION:=v0.9.0-rc1 +PKG_VERSION:=v0.9.0 PKG_RELEASE:=1 PKG_SOURCE_PROTO:=git @@ -56,6 +56,7 @@ endef CONFIGURE_ARGS += \ --prefix="/usr" \ --disable-werror \ + MAKEINFO=true \ --enable-dummy \ --enable-sysfsgpio \ --enable-usb_blaster_libftdi \ From e7850308fdfdebf19e1c1f1c6f7de4c0e77a5b34 Mon Sep 17 00:00:00 2001 From: Marcel Denia Date: Mon, 1 Jun 2015 01:11:19 +0200 Subject: [PATCH 508/681] db47: Fix format security warning Signed-off-by: Marcel Denia --- libs/db47/patches/100-repmgr-format-security.patch | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 libs/db47/patches/100-repmgr-format-security.patch diff --git a/libs/db47/patches/100-repmgr-format-security.patch b/libs/db47/patches/100-repmgr-format-security.patch new file mode 100644 index 000000000..58cfafdd0 --- /dev/null +++ b/libs/db47/patches/100-repmgr-format-security.patch @@ -0,0 +1,11 @@ +--- a/repmgr/repmgr_net.c ++++ b/repmgr/repmgr_net.c +@@ -1136,7 +1136,7 @@ __repmgr_listen(env) + } + + ret = net_errno; +- __db_err(env, ret, why); ++ __db_err(env, ret, "%s", why); + clean: if (s != INVALID_SOCKET) + (void)closesocket(s); + return (ret); From 58d762d6f36aef4a2e5e644693720f3329f7a972 Mon Sep 17 00:00:00 2001 From: Marcel Denia Date: Tue, 2 Jun 2015 15:13:22 +0200 Subject: [PATCH 509/681] db47: Bump PKG_RELEASE Signed-off-by: Marcel Denia --- libs/db47/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libs/db47/Makefile b/libs/db47/Makefile index 113964a50..bf0f0b733 100644 --- a/libs/db47/Makefile +++ b/libs/db47/Makefile @@ -12,7 +12,7 @@ BASE_VERSION:=4.7.25 PKG_NAME:=db47 PKG_VERSION:=$(BASE_VERSION).4.NC -PKG_RELEASE:=4 +PKG_RELEASE:=5 PKG_BUILD_DIR:=$(BUILD_DIR)/db-$(BASE_VERSION).NC PKG_SOURCE:=db-$(BASE_VERSION).NC.tar.gz From def24612af8240fa24debac5d6a723864b43657d Mon Sep 17 00:00:00 2001 From: Othmar Truniger Date: Tue, 2 Jun 2015 20:21:53 +0200 Subject: [PATCH 510/681] knxd: revert to older version Signed-off-by: Othmar Truniger --- net/knxd/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/net/knxd/Makefile b/net/knxd/Makefile index 91a6e6634..cc7f81d41 100644 --- a/net/knxd/Makefile +++ b/net/knxd/Makefile @@ -11,12 +11,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=knxd -PKG_VERSION=2015-05-31-$(PKG_SOURCE_VERSION) +PKG_VERSION=2015-06-02-$(PKG_SOURCE_VERSION) PKG_RELEASE:=1 PKG_SOURCE_PROTO:=git PKG_SOURCE_URL:=https://github.com/knxd/knxd.git -PKG_SOURCE_VERSION:=960a73ac61d3efe5d2893b7fc5edd883ac0abd44 +PKG_SOURCE_VERSION:=3d3b1a5e8112397d297625d673a2a94507f9ebce PKG_SOURCE_SUBDIR:=$(PKG_NAME) PKG_SOURCE:=$(PKG_NAME)-$(PKG_SOURCE_VERSION).tar.gz From ae90788b64b9135482637fad01730d9567e1d42d Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Wed, 3 Jun 2015 22:39:55 +0200 Subject: [PATCH 511/681] gnunet: split up into smaller packages, bump version Signed-off-by: Daniel Golle --- net/gnunet/Makefile | 255 +++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 238 insertions(+), 17 deletions(-) diff --git a/net/gnunet/Makefile b/net/gnunet/Makefile index 0dba1aefc..eca52441b 100644 --- a/net/gnunet/Makefile +++ b/net/gnunet/Makefile @@ -8,14 +8,18 @@ include $(TOPDIR)/rules.mk PKG_NAME:=gnunet -PKG_SOURCE_VERSION:=35845 +PKG_SOURCE_VERSION:=35856 PKG_VERSION:=0.10.1-svn$(PKG_SOURCE_VERSION) -PKG_RELEASE:=2 +PKG_RELEASE:=1 # ToDo: -# - split into small packages -# - create meta-packages for common setups -# - allow building with mysql or postgresql +# - build packages using templates and lists +# - break-out transports +# -> get rid of microhttpd and gnurl dependency for gns and vpn +# requires upstream to split config files +# - break-out {peer,name,data}store +# - building and package mysql or postgresql storage backends +# - package testing stuff PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) @@ -43,18 +47,18 @@ CONFIGURE_ARGS+= \ --without-mysql \ --without-postgresql +# ToDo: request upstream to provide --with-pulseaudio=... TARGET_LDFLAGS+= -Wl,-rpath-link=$(STAGING_DIR)/usr/lib/pulseaudio define Package/gnunet SECTION:=net CATEGORY:=Network - TITLE:=GNUnet peer-to-peer framework focusing on security - DEPENDS:=+bluez-libs +ca-certificates +certtool +libextractor +libgst1app \ - +libgst1audio +glib2 +kmod-tun +libglpk +libgnurl +libgnutls \ - +libgstreamer1 +libidn +libmicrohttpd +libopus +libogg \ - +libunistring +libsqlite3 +pulseaudio-daemon +openssl-util + TITLE:=GNUnet is peer-to-peer framework focusing on security + DEPENDS:=+ca-certificates +libgnurl +libgnutls +libidn +libltdl \ + +libmicrohttpd +libunistring +librt URL:=https://www.gnunet.org/ USERID:=gnunet=400:gnunet=400 + MENU:=1 endef define Package/gnunet/description @@ -65,23 +69,232 @@ define Package/gnunet/description This is an ALPHA release. There are known and significant bugs as well as many missing features in this release. + + This package provides the core components of GNUnet including the + CADET routing engine, a DHT implementation and most transports as well + as their helpers. +endef + +define Package/gnunet-conversation + SECTION:=net + CATEGORY:=Network + TITLE:=GNUnet conversation components + DEPENDS:=gnunet +gnunet-gns +libgst1app +libgst1audio \ + +libgstreamer1 +glib2 +pulseaudio-daemon +libopus +libogg +endef + +define Package/gnunet-experiments + SECTION:=net + CATEGORY:=Network + TITLE:=GNUnet experimental components + DEPENDS:=gnunet +libglpk +endef + +define Package/gnunet-fs + SECTION:=net + CATEGORY:=Network + TITLE:=GNUnet file-sharing components + DEPENDS:=gnunet +gnunet-storage +libextractor +endef + +define Package/gnunet-gns + SECTION:=net + CATEGORY:=Network + TITLE:=GNUnet GNS components + USERID:=gnunetdns=401:gnunetdns=401 + DEPENDS:=gnunet +gnunet-vpn + DEFAULT:=y +endef + +define Package/gnunet-storage + SECTION:=net + CATEGORY:=Network + TITLE:=GNUnet storage components + DEPENDS:=gnunet +gnunet-gns +libsqlite3 +endef + +define Package/gnunet-transport-bluetooth + SECTION:=net + CATEGORY:=Network + TITLE:=GNUnet bluetooth transport + DEPENDS:=gnunet +bluez-libs +endef + +define Package/gnunet-utils + SECTION:=net + CATEGORY:=Network + TITLE:=GNUnet administration utilities + DEPENDS:=gnunet +certtool +openssl-util +endef + +define Package/gnunet-vpn + SECTION:=net + CATEGORY:=Network + TITLE:=GNUnet VPN components + DEPENDS:=gnunet +kmod-tun + DEFAULT:=y endef define Package/gnunet/install $(INSTALL_DIR) $(1)/usr/bin $(1)/usr/lib/gnunet/libexec $(INSTALL_DIR) $(1)/usr/share/gnunet/config.d $(1)/usr/share/gnunet/hellos - $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/* $(1)/usr/bin/ - $(CP) $(PKG_INSTALL_DIR)/usr/lib/*.so* $(1)/usr/lib/ - $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/gnunet/*.so $(1)/usr/lib/gnunet - $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/gnunet/libexec/* $(1)/usr/lib/gnunet/libexec - $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/share/gnunet/*.html $(1)/usr/share/gnunet - $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/share/gnunet/*.png $(1)/usr/share/gnunet + + ( for bin in arm ats core ecc identity nat-server nse \ + peerinfo revocation scalarproduct transport uri; do \ + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/gnunet-$$$$bin $(1)/usr/bin/ ; \ + done ) + + ( for lib in arm ats block cadet core datacache dht \ + dns dnsparser dnsstub fragmentation friends hello identity nat nse \ + peerinfo regexblock regex revocation scalarproduct set \ + statistics transport util; do \ + $(CP) $(PKG_INSTALL_DIR)/usr/lib/libgnunet$$$$lib.so* $(1)/usr/lib/ ; \ + done ) + + ( for plug in ats_proportional block_dht block_regex \ + transport_http_client transport_http_server \ + transport_https_client transport_https_server \ + transport_tcp transport_udp transport_unix transport_wlan; do \ + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/gnunet/libgnunet_plugin_$$$$plug*.so $(1)/usr/lib/gnunet ; \ + done ) + + ( for lex in daemon-hostlist daemon-topology helper-nat-client \ + helper-nat-server service-arm service-ats service-cadet \ + service-core service-dht service-identity service-nse \ + service-peerinfo service-regex service-revocation \ + service-scalarproduct-alice service-scalarproduct-bob \ + service-set service-statistics service-transport; do \ + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/gnunet/libexec/gnunet-$$$$lex $(1)/usr/lib/gnunet/libexec ; \ + done ) + + ( for conf in arm ats cadet core datacache dht hostlist \ + identity nat nse peerinfo regex revocation scalarproduct \ + set statistics topology transport util; do \ + $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/share/gnunet/config.d/$$$$conf.conf $(1)/usr/share/gnunet/config.d ; \ + done ) + $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/share/gnunet/hellos/* $(1)/usr/share/gnunet/hellos - $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/share/gnunet/config.d/* $(1)/usr/share/gnunet/config.d $(INSTALL_DIR) $(1)/etc/init.d/ $(INSTALL_BIN) ./files/gnunet.init $(1)/etc/init.d/gnunet endef +define Package/gnunet-conversation/install + $(INSTALL_DIR) $(1)/usr/bin $(1)/usr/lib/gnunet/libexec + $(INSTALL_DIR) $(1)/usr/share/gnunet/config.d + ( for bin in conversation conversation-test; do \ + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/gnunet-$$$$bin $(1)/usr/bin/ ; \ + done ) + ( for lib in conversation microphone speaker; do \ + $(CP) $(PKG_INSTALL_DIR)/usr/lib/libgnunet$$$$lib.so* $(1)/usr/lib/ ; \ + done ) + ( for plug in gnsrecord_conversation; do \ + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/gnunet/libgnunet_plugin_$$$$plug*.so $(1)/usr/lib/gnunet ; \ + done ) + ( for lex in helper-audio-playback helper-audio-record; do \ + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/gnunet/libexec/gnunet-$$$$lex $(1)/usr/lib/gnunet/libexec ; \ + done ) + ( for conf in conversation; do \ + $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/share/gnunet/config.d/$$$$conf.conf $(1)/usr/share/gnunet/config.d ; \ + done ) +endef + +define Package/gnunet-experiments/install + $(INSTALL_DIR) $(1)/usr/lib/gnunet/libexec + ( for plug in ats_mlp ats_ril; do \ + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/gnunet/libgnunet_plugin_$$$$plug*.so $(1)/usr/lib/gnunet ; \ + done ) +endef + +define Package/gnunet-fs/install + $(INSTALL_DIR) $(1)/usr/bin $(1)/usr/lib/gnunet/libexec + $(INSTALL_DIR) $(1)/usr/share/gnunet/config.d + ( for bin in auto-share directory download download-manager.scm fs publish unindex; do \ + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/gnunet-$$$$bin $(1)/usr/bin/ ; \ + done ) + ( for lib in fs; do \ + $(CP) $(PKG_INSTALL_DIR)/usr/lib/libgnunet$$$$lib.so* $(1)/usr/lib/ ; \ + done ) + ( for plug in block_fs datacache_heap datacache_sqlite; do \ + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/gnunet/libgnunet_plugin_$$$$plug*.so $(1)/usr/lib/gnunet ; \ + done ) + ( for lex in helper-fs-publish service-fs; do \ + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/gnunet/libexec/gnunet-$$$$lex $(1)/usr/lib/gnunet/libexec ; \ + done ) + ( for conf in fs; do \ + $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/share/gnunet/config.d/$$$$conf.conf $(1)/usr/share/gnunet/config.d ; \ + done ) +endef + +define Package/gnunet-gns/install + $(INSTALL_DIR) $(1)/usr/bin $(1)/usr/lib/gnunet/libexec + $(INSTALL_DIR) $(1)/usr/share/gnunet/config.d + ( for bin in gns namecache resolver; do \ + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/gnunet-$$$$bin $(1)/usr/bin/ ; \ + done ) + ( for lib in gns gnsrecord namecache namestore; do \ + $(CP) $(PKG_INSTALL_DIR)/usr/lib/libgnunet$$$$lib.so* $(1)/usr/lib/ ; \ + done ) + ( for plug in block_dns block_gns gnsrecord_dns gnsrecord_gns; do \ + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/gnunet/libgnunet_plugin_$$$$plug*.so $(1)/usr/lib/gnunet ; \ + done ) + ( for lex in dns2gns gns-proxy helper-dns service-dns \ + service-gns service-namecache service-resolver; do \ + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/gnunet/libexec/gnunet-$$$$lex $(1)/usr/lib/gnunet/libexec ; \ + done ) + ( for conf in dns gns namecache resolver; do \ + $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/share/gnunet/config.d/$$$$conf.conf $(1)/usr/share/gnunet/config.d ; \ + done ) +endef + +define Package/gnunet-storage/install + $(INSTALL_DIR) $(1)/usr/bin $(1)/usr/lib/gnunet/libexec + $(INSTALL_DIR) $(1)/usr/share/gnunet/config.d + ( for bin in datastore peerstore; do \ + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/gnunet-$$$$bin $(1)/usr/bin/ ; \ + done ) + ( for lib in datastore peerstore; do \ + $(CP) $(PKG_INSTALL_DIR)/usr/lib/libgnunet$$$$lib.so* $(1)/usr/lib/ ; \ + done ) + ( for plug in datastore_heap datastore_sqlite namecache_sqlite namestore_sqlite; do \ + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/gnunet/libgnunet_plugin_$$$$plug*.so $(1)/usr/lib/gnunet ; \ + done ) + ( for lex in daemon-latency-logger namestore-fcfsd service-datastore service-peerstore; do \ + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/gnunet/libexec/gnunet-$$$$lex $(1)/usr/lib/gnunet/libexec ; \ + done ) + ( for conf in datastore peerstore; do \ + $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/share/gnunet/config.d/$$$$conf.conf $(1)/usr/share/gnunet/config.d ; \ + done ) +endef + +define Package/gnunet-transport-bluetooth/install + $(INSTALL_DIR) $(1)/usr/lib/gnunet/libexec + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/gnunet/libgnunet_plugin_transport_bluetooth.so $(1)/usr/lib/gnunet + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/gnunet/libexec/gnunet-helper-transport-bluetooth $(1)/usr/lib/gnunet/libexec +endef + +define Package/gnunet-utils/install + $(INSTALL_DIR) $(1)/usr/bin $(1)/usr/lib/gnunet/libexec + ( for bin in config gns-import.sh gns-proxy-setup-ca \ + transport-certificate-creation; do \ + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/gnunet-$$$$bin $(1)/usr/bin/ ; \ + done ) +endef + +define Package/gnunet-vpn/install + $(INSTALL_DIR) $(1)/usr/bin $(1)/usr/lib/gnunet/libexec + $(INSTALL_DIR) $(1)/usr/share/gnunet/config.d + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/gnunet-vpn $(1)/usr/bin/ + ( for lib in tun vpn; do \ + $(CP) $(PKG_INSTALL_DIR)/usr/lib/libgnunet$$$$lib.so* $(1)/usr/lib/ ; \ + done ) + ( for lex in daemon-exit daemon-pt helper-exit helper-vpn service-vpn; do \ + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/gnunet/libexec/gnunet-$$$$lex $(1)/usr/lib/gnunet/libexec ; \ + done ) + ( for conf in exit pt vpn; do \ + $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/share/gnunet/config.d/$$$$conf.conf $(1)/usr/share/gnunet/config.d ; \ + done ) +endef + define Build/InstallDev $(INSTALL_DIR) $(1)/usr/include/gnunet $(1)/usr/lib/pkgconfig $(CP) $(PKG_INSTALL_DIR)/usr/lib/*.{la,so}* $(1)/usr/lib/ @@ -90,3 +303,11 @@ define Build/InstallDev endef $(eval $(call BuildPackage,gnunet)) +$(eval $(call BuildPackage,gnunet-conversation)) +$(eval $(call BuildPackage,gnunet-experiments)) +$(eval $(call BuildPackage,gnunet-fs)) +$(eval $(call BuildPackage,gnunet-gns)) +$(eval $(call BuildPackage,gnunet-storage)) +$(eval $(call BuildPackage,gnunet-transport-bluetooth)) +$(eval $(call BuildPackage,gnunet-utils)) +$(eval $(call BuildPackage,gnunet-vpn)) From 67e34ce071467de7a559d555e40071386176495a Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Thu, 4 Jun 2015 00:45:14 +0200 Subject: [PATCH 512/681] gnunet: improve packages Signed-off-by: Daniel Golle --- net/gnunet/Makefile | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/net/gnunet/Makefile b/net/gnunet/Makefile index eca52441b..72bdf2260 100644 --- a/net/gnunet/Makefile +++ b/net/gnunet/Makefile @@ -10,7 +10,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=gnunet PKG_SOURCE_VERSION:=35856 PKG_VERSION:=0.10.1-svn$(PKG_SOURCE_VERSION) -PKG_RELEASE:=1 +PKG_RELEASE:=2 # ToDo: # - build packages using templates and lists @@ -140,7 +140,7 @@ define Package/gnunet/install $(INSTALL_DIR) $(1)/usr/share/gnunet/config.d $(1)/usr/share/gnunet/hellos ( for bin in arm ats core ecc identity nat-server nse \ - peerinfo revocation scalarproduct transport uri; do \ + peerinfo revocation scalarproduct statistics transport uri; do \ $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/gnunet-$$$$bin $(1)/usr/bin/ ; \ done ) @@ -151,7 +151,7 @@ define Package/gnunet/install $(CP) $(PKG_INSTALL_DIR)/usr/lib/libgnunet$$$$lib.so* $(1)/usr/lib/ ; \ done ) - ( for plug in ats_proportional block_dht block_regex \ + ( for plug in ats_proportional block_dht block_regex datacache_heap \ transport_http_client transport_http_server \ transport_https_client transport_https_server \ transport_tcp transport_udp transport_unix transport_wlan; do \ @@ -208,13 +208,13 @@ endef define Package/gnunet-fs/install $(INSTALL_DIR) $(1)/usr/bin $(1)/usr/lib/gnunet/libexec $(INSTALL_DIR) $(1)/usr/share/gnunet/config.d - ( for bin in auto-share directory download download-manager.scm fs publish unindex; do \ + ( for bin in auto-share directory download download-manager.scm fs publish unindex search; do \ $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/gnunet-$$$$bin $(1)/usr/bin/ ; \ done ) ( for lib in fs; do \ $(CP) $(PKG_INSTALL_DIR)/usr/lib/libgnunet$$$$lib.so* $(1)/usr/lib/ ; \ done ) - ( for plug in block_fs datacache_heap datacache_sqlite; do \ + ( for plug in block_fs ; do \ $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/gnunet/libgnunet_plugin_$$$$plug*.so $(1)/usr/lib/gnunet ; \ done ) ( for lex in helper-fs-publish service-fs; do \ @@ -255,7 +255,7 @@ define Package/gnunet-storage/install ( for lib in datastore peerstore; do \ $(CP) $(PKG_INSTALL_DIR)/usr/lib/libgnunet$$$$lib.so* $(1)/usr/lib/ ; \ done ) - ( for plug in datastore_heap datastore_sqlite namecache_sqlite namestore_sqlite; do \ + ( for plug in datacache_sqlite datastore_heap datastore_sqlite namecache_sqlite namestore_sqlite; do \ $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/gnunet/libgnunet_plugin_$$$$plug*.so $(1)/usr/lib/gnunet ; \ done ) ( for lex in daemon-latency-logger namestore-fcfsd service-datastore service-peerstore; do \ From 93584e3cbea649fdb537544957c71638b283a36f Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Thu, 4 Jun 2015 02:37:03 +0200 Subject: [PATCH 513/681] gnunet: use templates to package components Signed-off-by: Daniel Golle --- net/gnunet/Makefile | 295 ++++++++++++++++---------------------------- 1 file changed, 107 insertions(+), 188 deletions(-) diff --git a/net/gnunet/Makefile b/net/gnunet/Makefile index 72bdf2260..455f792b2 100644 --- a/net/gnunet/Makefile +++ b/net/gnunet/Makefile @@ -10,10 +10,9 @@ include $(TOPDIR)/rules.mk PKG_NAME:=gnunet PKG_SOURCE_VERSION:=35856 PKG_VERSION:=0.10.1-svn$(PKG_SOURCE_VERSION) -PKG_RELEASE:=2 +PKG_RELEASE:=3 # ToDo: -# - build packages using templates and lists # - break-out transports # -> get rid of microhttpd and gnurl dependency for gns and vpn # requires upstream to split config files @@ -50,19 +49,24 @@ CONFIGURE_ARGS+= \ # ToDo: request upstream to provide --with-pulseaudio=... TARGET_LDFLAGS+= -Wl,-rpath-link=$(STAGING_DIR)/usr/lib/pulseaudio -define Package/gnunet +define Package/gnunet/Default SECTION:=net CATEGORY:=Network - TITLE:=GNUnet is peer-to-peer framework focusing on security + TITLE:=GNUnet + URL:=https://www.gnunet.org/ +endef + +define Package/gnunet +$(call Package/gnunet/Default) + TITLE+= - a peer-to-peer framework focusing on security DEPENDS:=+ca-certificates +libgnurl +libgnutls +libidn +libltdl \ +libmicrohttpd +libunistring +librt - URL:=https://www.gnunet.org/ USERID:=gnunet=400:gnunet=400 MENU:=1 endef define Package/gnunet/description - GNUnet is peer-to-peer framework focusing on security. The first and + GNUnet is a peer-to-peer framework focusing on security. The first and primary application for GNUnet is anonymous file-sharing. GNUnet is currently developed by a worldwide group of independent free software developers. GNUnet is a GNU package (http://www.gnu.org/). @@ -75,64 +79,52 @@ define Package/gnunet/description as their helpers. endef -define Package/gnunet-conversation - SECTION:=net - CATEGORY:=Network - TITLE:=GNUnet conversation components - DEPENDS:=gnunet +gnunet-gns +libgst1app +libgst1audio \ - +libgstreamer1 +glib2 +pulseaudio-daemon +libopus +libogg -endef - -define Package/gnunet-experiments - SECTION:=net - CATEGORY:=Network - TITLE:=GNUnet experimental components - DEPENDS:=gnunet +libglpk -endef - -define Package/gnunet-fs - SECTION:=net - CATEGORY:=Network - TITLE:=GNUnet file-sharing components - DEPENDS:=gnunet +gnunet-storage +libextractor -endef - -define Package/gnunet-gns - SECTION:=net - CATEGORY:=Network - TITLE:=GNUnet GNS components - USERID:=gnunetdns=401:gnunetdns=401 - DEPENDS:=gnunet +gnunet-vpn - DEFAULT:=y -endef - -define Package/gnunet-storage - SECTION:=net - CATEGORY:=Network - TITLE:=GNUnet storage components - DEPENDS:=gnunet +gnunet-gns +libsqlite3 -endef - -define Package/gnunet-transport-bluetooth - SECTION:=net - CATEGORY:=Network - TITLE:=GNUnet bluetooth transport - DEPENDS:=gnunet +bluez-libs -endef - -define Package/gnunet-utils - SECTION:=net - CATEGORY:=Network - TITLE:=GNUnet administration utilities - DEPENDS:=gnunet +certtool +openssl-util -endef - -define Package/gnunet-vpn - SECTION:=net - CATEGORY:=Network - TITLE:=GNUnet VPN components - DEPENDS:=gnunet +kmod-tun - DEFAULT:=y +define BuildComponent + define Package/gnunet-$(1) + $$(call Package/gnunet/Default) + TITLE+= $(2) + DEPENDS:=gnunet $(DEPENDS_$(1)) + DEFAULT:=$(3) + endef + + define Package/gnunet-$(1)/install + ( if [ "$(BIN_$(1))" ]; then \ + $(INSTALL_DIR) $$(1)/usr/bin ; \ + for bin in $(BIN_$(1)); do \ + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/gnunet-$$$$$$$$bin $$(1)/usr/bin/ ; \ + done \ + fi ) + + ( if [ "$(LIB_$(1))" ]; then \ + $(INSTALL_DIR) $$(1)/usr/lib ; \ + for lib in $(LIB_$(1)); do \ + $(CP) $(PKG_INSTALL_DIR)/usr/lib/libgnunet$$$$$$$$lib.so* $$(1)/usr/lib/ ; \ + done \ + fi ) + + ( if [ "$(PLUGIN_$(1))" ]; then \ + $(INSTALL_DIR) $$(1)/usr/lib/gnunet ; \ + for plug in $(PLUGIN_$(1)); do \ + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/gnunet/libgnunet_plugin_$$$$$$$$plug*.so $$(1)/usr/lib/gnunet ; \ + done \ + fi ) + + ( if [ "$(LIBEXEC_$(1))" ]; then \ + $(INSTALL_DIR) $$(1)/usr/lib/gnunet/libexec ; \ + for lex in $(LIBEXEC_$(1)); do \ + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/gnunet/libexec/gnunet-$$$$$$$$lex $$(1)/usr/lib/gnunet/libexec ; \ + done \ + fi ) + + ( if [ "$(CONF_$(1))" ]; then \ + $(INSTALL_DIR) $$(1)/usr/share/gnunet/config.d ; \ + for conf in $(CONF_$(1)); do \ + $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/share/gnunet/config.d/$$$$$$$$conf.conf $$(1)/usr/share/gnunet/config.d ; \ + done \ + fi ) + endef + + $$(eval $$(call BuildPackage,gnunet-$(1))) endef define Package/gnunet/install @@ -178,122 +170,6 @@ define Package/gnunet/install $(INSTALL_BIN) ./files/gnunet.init $(1)/etc/init.d/gnunet endef -define Package/gnunet-conversation/install - $(INSTALL_DIR) $(1)/usr/bin $(1)/usr/lib/gnunet/libexec - $(INSTALL_DIR) $(1)/usr/share/gnunet/config.d - ( for bin in conversation conversation-test; do \ - $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/gnunet-$$$$bin $(1)/usr/bin/ ; \ - done ) - ( for lib in conversation microphone speaker; do \ - $(CP) $(PKG_INSTALL_DIR)/usr/lib/libgnunet$$$$lib.so* $(1)/usr/lib/ ; \ - done ) - ( for plug in gnsrecord_conversation; do \ - $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/gnunet/libgnunet_plugin_$$$$plug*.so $(1)/usr/lib/gnunet ; \ - done ) - ( for lex in helper-audio-playback helper-audio-record; do \ - $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/gnunet/libexec/gnunet-$$$$lex $(1)/usr/lib/gnunet/libexec ; \ - done ) - ( for conf in conversation; do \ - $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/share/gnunet/config.d/$$$$conf.conf $(1)/usr/share/gnunet/config.d ; \ - done ) -endef - -define Package/gnunet-experiments/install - $(INSTALL_DIR) $(1)/usr/lib/gnunet/libexec - ( for plug in ats_mlp ats_ril; do \ - $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/gnunet/libgnunet_plugin_$$$$plug*.so $(1)/usr/lib/gnunet ; \ - done ) -endef - -define Package/gnunet-fs/install - $(INSTALL_DIR) $(1)/usr/bin $(1)/usr/lib/gnunet/libexec - $(INSTALL_DIR) $(1)/usr/share/gnunet/config.d - ( for bin in auto-share directory download download-manager.scm fs publish unindex search; do \ - $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/gnunet-$$$$bin $(1)/usr/bin/ ; \ - done ) - ( for lib in fs; do \ - $(CP) $(PKG_INSTALL_DIR)/usr/lib/libgnunet$$$$lib.so* $(1)/usr/lib/ ; \ - done ) - ( for plug in block_fs ; do \ - $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/gnunet/libgnunet_plugin_$$$$plug*.so $(1)/usr/lib/gnunet ; \ - done ) - ( for lex in helper-fs-publish service-fs; do \ - $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/gnunet/libexec/gnunet-$$$$lex $(1)/usr/lib/gnunet/libexec ; \ - done ) - ( for conf in fs; do \ - $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/share/gnunet/config.d/$$$$conf.conf $(1)/usr/share/gnunet/config.d ; \ - done ) -endef - -define Package/gnunet-gns/install - $(INSTALL_DIR) $(1)/usr/bin $(1)/usr/lib/gnunet/libexec - $(INSTALL_DIR) $(1)/usr/share/gnunet/config.d - ( for bin in gns namecache resolver; do \ - $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/gnunet-$$$$bin $(1)/usr/bin/ ; \ - done ) - ( for lib in gns gnsrecord namecache namestore; do \ - $(CP) $(PKG_INSTALL_DIR)/usr/lib/libgnunet$$$$lib.so* $(1)/usr/lib/ ; \ - done ) - ( for plug in block_dns block_gns gnsrecord_dns gnsrecord_gns; do \ - $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/gnunet/libgnunet_plugin_$$$$plug*.so $(1)/usr/lib/gnunet ; \ - done ) - ( for lex in dns2gns gns-proxy helper-dns service-dns \ - service-gns service-namecache service-resolver; do \ - $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/gnunet/libexec/gnunet-$$$$lex $(1)/usr/lib/gnunet/libexec ; \ - done ) - ( for conf in dns gns namecache resolver; do \ - $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/share/gnunet/config.d/$$$$conf.conf $(1)/usr/share/gnunet/config.d ; \ - done ) -endef - -define Package/gnunet-storage/install - $(INSTALL_DIR) $(1)/usr/bin $(1)/usr/lib/gnunet/libexec - $(INSTALL_DIR) $(1)/usr/share/gnunet/config.d - ( for bin in datastore peerstore; do \ - $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/gnunet-$$$$bin $(1)/usr/bin/ ; \ - done ) - ( for lib in datastore peerstore; do \ - $(CP) $(PKG_INSTALL_DIR)/usr/lib/libgnunet$$$$lib.so* $(1)/usr/lib/ ; \ - done ) - ( for plug in datacache_sqlite datastore_heap datastore_sqlite namecache_sqlite namestore_sqlite; do \ - $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/gnunet/libgnunet_plugin_$$$$plug*.so $(1)/usr/lib/gnunet ; \ - done ) - ( for lex in daemon-latency-logger namestore-fcfsd service-datastore service-peerstore; do \ - $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/gnunet/libexec/gnunet-$$$$lex $(1)/usr/lib/gnunet/libexec ; \ - done ) - ( for conf in datastore peerstore; do \ - $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/share/gnunet/config.d/$$$$conf.conf $(1)/usr/share/gnunet/config.d ; \ - done ) -endef - -define Package/gnunet-transport-bluetooth/install - $(INSTALL_DIR) $(1)/usr/lib/gnunet/libexec - $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/gnunet/libgnunet_plugin_transport_bluetooth.so $(1)/usr/lib/gnunet - $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/gnunet/libexec/gnunet-helper-transport-bluetooth $(1)/usr/lib/gnunet/libexec -endef - -define Package/gnunet-utils/install - $(INSTALL_DIR) $(1)/usr/bin $(1)/usr/lib/gnunet/libexec - ( for bin in config gns-import.sh gns-proxy-setup-ca \ - transport-certificate-creation; do \ - $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/gnunet-$$$$bin $(1)/usr/bin/ ; \ - done ) -endef - -define Package/gnunet-vpn/install - $(INSTALL_DIR) $(1)/usr/bin $(1)/usr/lib/gnunet/libexec - $(INSTALL_DIR) $(1)/usr/share/gnunet/config.d - $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/gnunet-vpn $(1)/usr/bin/ - ( for lib in tun vpn; do \ - $(CP) $(PKG_INSTALL_DIR)/usr/lib/libgnunet$$$$lib.so* $(1)/usr/lib/ ; \ - done ) - ( for lex in daemon-exit daemon-pt helper-exit helper-vpn service-vpn; do \ - $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/gnunet/libexec/gnunet-$$$$lex $(1)/usr/lib/gnunet/libexec ; \ - done ) - ( for conf in exit pt vpn; do \ - $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/share/gnunet/config.d/$$$$conf.conf $(1)/usr/share/gnunet/config.d ; \ - done ) -endef define Build/InstallDev $(INSTALL_DIR) $(1)/usr/include/gnunet $(1)/usr/lib/pkgconfig @@ -302,12 +178,55 @@ define Build/InstallDev $(CP) $(PKG_INSTALL_DIR)/usr/include/gnunet/*.h $(1)/usr/include/gnunet endef +DEPENDS_conversation:=+gnunet-gns +libgst1app +libgst1audio +libgstreamer1 +glib2 +pulseaudio-daemon +libopus +libogg +BIN_conversation:=conversation conversation-test +LIB_conversation:=conversation microphone speaker +PLUGIN_conversation:=gnsrecord_conversation +LIBEXEC_conversation:=helper-audio-playback helper-audio-record +CONF_conversation:=conversation + +DEPENDS_experiments:=+libglpk +PLUGIN_experiments:=ats_mlp ats_ril + +DEPENDS_fs:=+gnunet-storage +libextractor +BIN_fs:=auto-share directory download download-manager.scm fs publish unindex search +LIB_fs:=fs +PLUGIN_fs:=block_fs +LIB_EXEC_fs:=helper-fs-publish service-fs +CONF_fs:=fs + +DEPENDS_gns:=+gnunet-vpn +BIN_gns:=gns namecache resolver +LIB_gns:=gns gnsrecord namecache namestore +PLUGIN_gns:=block_dns block_gns gnsrecord_dns gnsrecord_gns +LIBEXEC_gns:=dns2gns gns-proxy helper-dns service-dns service-gns service-namecache service-resolver +CONF_gns:=dns gns namecache resolver + +DEPENDS_storage:=+gnunet-gns +libsqlite3 +BIN_storage:=datastore peerstore +LIB_storage:=datastore peerstore +PLUGIN_storage:=datacache_sqlite datastore_heap datastore_sqlite namecache_sqlite namestore_sqlite +LIBEXEC_storage:=daemon-latency-logger namestore-fcfsd service-datastore service-peerstore +CONF_storage:=datastore peerstore + +DEPENDS_transport-bluetooth:=+bluez-libs +PLUGIN_transport-bluetooth:=transport_bluetooth +LIBEXEC_transport-bluetooth:=helper-transport-bluetooth + +DEPENDS_utils:=+certtool +openssl-util +BIN_utils:=config gns-import.sh gns-proxy-setup-ca transport-certificate-creation + +DEPENDS_vpn:=+kmod-tun +LIB_vpn:=tun vpn +LIBEXEC_vpn:=daemon-exit daemon-pt helper-exit helper-vpn service-vpn +CONF_vpn:=exit pt vpn + $(eval $(call BuildPackage,gnunet)) -$(eval $(call BuildPackage,gnunet-conversation)) -$(eval $(call BuildPackage,gnunet-experiments)) -$(eval $(call BuildPackage,gnunet-fs)) -$(eval $(call BuildPackage,gnunet-gns)) -$(eval $(call BuildPackage,gnunet-storage)) -$(eval $(call BuildPackage,gnunet-transport-bluetooth)) -$(eval $(call BuildPackage,gnunet-utils)) -$(eval $(call BuildPackage,gnunet-vpn)) +$(eval $(call BuildComponent,conversation,conversation component,n)) +$(eval $(call BuildComponent,experiments,experimental components,n)) +$(eval $(call BuildComponent,fs,file-sharing components,n)) +$(eval $(call BuildComponent,gns,name resolving components,y)) +$(eval $(call BuildComponent,storage,storage components,n)) +$(eval $(call BuildComponent,transport-bluetooth,bluetooth transport,n)) +$(eval $(call BuildComponent,utils,administration utililties,n)) +$(eval $(call BuildComponent,vpn,vpn components,y)) From 180d34f70b43ea0e43fe06a97d421cd554fa6851 Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Thu, 4 Jun 2015 13:46:32 +0200 Subject: [PATCH 514/681] lxc: allow building with seccomp seccomp was unconditionally disabled before. Also a non-escaped newline in a place where it should be escaped made the build process skip some CONFIGURE_ARGS. Fix CONFIGURE_ARGS and add an option to allow building with seccomp. Signed-off-by: Daniel Golle --- utils/lxc/Config.in | 7 +++++++ utils/lxc/Makefile | 13 +++++++++---- 2 files changed, 16 insertions(+), 4 deletions(-) diff --git a/utils/lxc/Config.in b/utils/lxc/Config.in index 37286bfab..618fde0a0 100644 --- a/utils/lxc/Config.in +++ b/utils/lxc/Config.in @@ -27,4 +27,11 @@ config LXC_BUSYBOX_OPTIONS Select needed busybox options for lxc-create utility. This include XZ tar compression, long option support for tar and built-in getopt support. +config LXC_SECCOMP + bool "Enable support for seccomp in LXC" + default KERNEL_SECCOMP + help + Build LXC with support for seccomp filters. + Select libseccomp which also pulls-in the needed kernel features. + endmenu diff --git a/utils/lxc/Makefile b/utils/lxc/Makefile index b8a0761b1..868e10066 100644 --- a/utils/lxc/Makefile +++ b/utils/lxc/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=lxc PKG_VERSION:=1.1.2 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_LICENSE:=LGPL-2.1+ BSD-2-Clause GPL-2.0 PKG_MAINTAINER:=Luka Perkov @@ -94,7 +94,7 @@ define Package/liblxc SECTION:=libs CATEGORY:=Libraries TITLE:=LXC userspace library - DEPENDS:= lxc +libcap +libpthread + DEPENDS:= lxc +libcap +libpthread +LXC_SECCOMP:libseccomp endef define Package/lxc-lua @@ -113,9 +113,14 @@ CONFIGURE_ARGS += \ --disable-apparmor \ --disable-doc \ --disable-examples \ - --disable-seccomp --enable-lua=yes \ - --with-lua-pc="$(STAGING_DIR)/usr/lib/pkgconfig/lua.pc" \ + --with-lua-pc="$(STAGING_DIR)/usr/lib/pkgconfig/lua.pc" + +ifeq ($(CONFIG_LXC_SECCOMP),y) +CONFIGURE_ARGS += --enable-seccomp +else +CONFIGURE_ARGS += --disable-seccomp +endif MAKE_FLAGS += \ LUA_INSTALL_CMOD="/usr/lib/lua" \ From e1a1eed25fcc74ad928cb5b2b1116245181209f2 Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Thu, 4 Jun 2015 14:44:40 +0200 Subject: [PATCH 515/681] libseccomp: work-around prctl.h mess musl doesn't allow including both, sys/prctl.h and linux/prctl.h. Thus include linux/prctl.h only on GLIBC systems (that includes uClibc which defines __GLIBC__) Signed-off-by: Daniel Golle --- .../100-dont-use-linux-prctl.h-with-musl.patch | 14 ++++++++++++++ 1 file changed, 14 insertions(+) create mode 100644 libs/libseccomp/patches/100-dont-use-linux-prctl.h-with-musl.patch diff --git a/libs/libseccomp/patches/100-dont-use-linux-prctl.h-with-musl.patch b/libs/libseccomp/patches/100-dont-use-linux-prctl.h-with-musl.patch new file mode 100644 index 000000000..ded5b0abe --- /dev/null +++ b/libs/libseccomp/patches/100-dont-use-linux-prctl.h-with-musl.patch @@ -0,0 +1,14 @@ +Index: libseccomp-2.2.1/src/system.h +=================================================================== +--- libseccomp-2.2.1.orig/src/system.h ++++ libseccomp-2.2.1/src/system.h +@@ -23,7 +23,9 @@ + #define _SYSTEM_H + + #include ++#ifdef __GLIBC__ + #include ++#endef + + #include "configure.h" + From 7582a91760148e32a453ebfa6b3f57c76addef45 Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Fri, 5 Jun 2015 01:27:52 +0200 Subject: [PATCH 516/681] gnunet: don't override default to 'n' Overriding DEFAULT to 'n' prevents packages being build unless explicitely selected even if ALL is set. Instead, set 'DEFAULT:=y if PACKAGE_gnunet' for the default packages and otherweise don't touch DEFAULT. Signed-off-by: Daniel Golle --- net/gnunet/Makefile | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/net/gnunet/Makefile b/net/gnunet/Makefile index 455f792b2..7605a5acf 100644 --- a/net/gnunet/Makefile +++ b/net/gnunet/Makefile @@ -84,7 +84,7 @@ define BuildComponent $$(call Package/gnunet/Default) TITLE+= $(2) DEPENDS:=gnunet $(DEPENDS_$(1)) - DEFAULT:=$(3) + $(if $(3),DEFAULT:=y if PACKAGE_gnunet) endef define Package/gnunet-$(1)/install @@ -222,11 +222,11 @@ LIBEXEC_vpn:=daemon-exit daemon-pt helper-exit helper-vpn service-vpn CONF_vpn:=exit pt vpn $(eval $(call BuildPackage,gnunet)) -$(eval $(call BuildComponent,conversation,conversation component,n)) -$(eval $(call BuildComponent,experiments,experimental components,n)) -$(eval $(call BuildComponent,fs,file-sharing components,n)) -$(eval $(call BuildComponent,gns,name resolving components,y)) -$(eval $(call BuildComponent,storage,storage components,n)) -$(eval $(call BuildComponent,transport-bluetooth,bluetooth transport,n)) -$(eval $(call BuildComponent,utils,administration utililties,n)) +$(eval $(call BuildComponent,conversation,conversation component,)) +$(eval $(call BuildComponent,experiments,experimental components,)) +$(eval $(call BuildComponent,fs,file-sharing components,)) +$(eval $(call BuildComponent,gns,name resolution components,y)) +$(eval $(call BuildComponent,storage,storage components,)) +$(eval $(call BuildComponent,transport-bluetooth,bluetooth transport,)) +$(eval $(call BuildComponent,utils,administration utililties,)) $(eval $(call BuildComponent,vpn,vpn components,y)) From 885a425824d80eaed534d6de707cd3eb67ae3b92 Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Fri, 5 Jun 2015 04:22:23 +0200 Subject: [PATCH 517/681] gnurl: no longer force-enable TLS-SRP It might not be available in GnuTLS and is not strictly required by the gnurl manifest, see http://www.git.taler.net/?p=gnurl.git;a=blob;f=README;h=f7521aa431a4e77a58dc558880ff54648d69e072;hb=HEAD#l22 Signed-off-by: Daniel Golle --- net/gnurl/Makefile | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/net/gnurl/Makefile b/net/gnurl/Makefile index cbdaa9a58..e1415de21 100644 --- a/net/gnurl/Makefile +++ b/net/gnurl/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=gnurl PKG_VERSION:=7.40.0 -PKG_RELEASE:=2 +PKG_RELEASE:=3 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 PKG_SOURCE_URL:=https://gnunet.org/sites/default/files @@ -53,7 +53,6 @@ CONFIGURE_ARGS += \ --with-gnutls="$(STAGING_DIR)/usr" \ --with-libidn="$(STAGING_DIR)/usr" \ --with-zlib="$(STAGING_DIR)/usr" \ - --enable-tls-srp \ --enable-shared \ --enable-static \ --without-axtls \ From d6ac08f843fb2b21f2a6e38a4782b28b0dc5b811 Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Fri, 5 Jun 2015 04:24:32 +0200 Subject: [PATCH 518/681] gnunet: improve packaging and set fix permissions on firstrun Signed-off-by: Daniel Golle --- net/gnunet/Makefile | 40 ++++++++++++++++-------------- net/gnunet/files/gnunet.init | 48 +++++++++++++++++++++++++++++------- 2 files changed, 60 insertions(+), 28 deletions(-) diff --git a/net/gnunet/Makefile b/net/gnunet/Makefile index 7605a5acf..01c58a9e9 100644 --- a/net/gnunet/Makefile +++ b/net/gnunet/Makefile @@ -8,9 +8,9 @@ include $(TOPDIR)/rules.mk PKG_NAME:=gnunet -PKG_SOURCE_VERSION:=35856 +PKG_SOURCE_VERSION:=35865 PKG_VERSION:=0.10.1-svn$(PKG_SOURCE_VERSION) -PKG_RELEASE:=3 +PKG_RELEASE:=1 # ToDo: # - break-out transports @@ -85,6 +85,7 @@ define BuildComponent TITLE+= $(2) DEPENDS:=gnunet $(DEPENDS_$(1)) $(if $(3),DEFAULT:=y if PACKAGE_gnunet) + $(if $(USERID_$(1)),USERID:=$(USERID_$(1))) endef define Package/gnunet-$(1)/install @@ -131,14 +132,14 @@ define Package/gnunet/install $(INSTALL_DIR) $(1)/usr/bin $(1)/usr/lib/gnunet/libexec $(INSTALL_DIR) $(1)/usr/share/gnunet/config.d $(1)/usr/share/gnunet/hellos - ( for bin in arm ats core ecc identity nat-server nse \ - peerinfo revocation scalarproduct statistics transport uri; do \ + ( for bin in arm ats core config ecc identity nat-server nse \ + peerinfo peerstore revocation scalarproduct statistics transport uri; do \ $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/gnunet-$$$$bin $(1)/usr/bin/ ; \ done ) ( for lib in arm ats block cadet core datacache dht \ dns dnsparser dnsstub fragmentation friends hello identity nat nse \ - peerinfo regexblock regex revocation scalarproduct set \ + peerinfo peerstore regexblock regex revocation scalarproduct set \ statistics transport util; do \ $(CP) $(PKG_INSTALL_DIR)/usr/lib/libgnunet$$$$lib.so* $(1)/usr/lib/ ; \ done ) @@ -153,14 +154,15 @@ define Package/gnunet/install ( for lex in daemon-hostlist daemon-topology helper-nat-client \ helper-nat-server service-arm service-ats service-cadet \ service-core service-dht service-identity service-nse \ - service-peerinfo service-regex service-revocation \ - service-scalarproduct-alice service-scalarproduct-bob \ - service-set service-statistics service-transport; do \ + service-peerinfo service-peerstore service-regex \ + service-revocation service-scalarproduct-alice \ + service-scalarproduct-bob service-set service-statistics \ + service-transport; do \ $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/gnunet/libexec/gnunet-$$$$lex $(1)/usr/lib/gnunet/libexec ; \ done ) - ( for conf in arm ats cadet core datacache dht hostlist \ - identity nat nse peerinfo regex revocation scalarproduct \ + ( for conf in arm ats cadet core datacache dht hostlist identity \ + nat nse peerinfo peerstore regex revocation scalarproduct \ set statistics topology transport util; do \ $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/share/gnunet/config.d/$$$$conf.conf $(1)/usr/share/gnunet/config.d ; \ done ) @@ -170,7 +172,6 @@ define Package/gnunet/install $(INSTALL_BIN) ./files/gnunet.init $(1)/etc/init.d/gnunet endef - define Build/InstallDev $(INSTALL_DIR) $(1)/usr/include/gnunet $(1)/usr/lib/pkgconfig $(CP) $(PKG_INSTALL_DIR)/usr/lib/*.{la,so}* $(1)/usr/lib/ @@ -196,18 +197,19 @@ LIB_EXEC_fs:=helper-fs-publish service-fs CONF_fs:=fs DEPENDS_gns:=+gnunet-vpn -BIN_gns:=gns namecache resolver +USERID_gns:=gnunetdns=401:gnunetdns=401 +BIN_gns:=gns gns-import.sh namecache namestore resolver LIB_gns:=gns gnsrecord namecache namestore PLUGIN_gns:=block_dns block_gns gnsrecord_dns gnsrecord_gns -LIBEXEC_gns:=dns2gns gns-proxy helper-dns service-dns service-gns service-namecache service-resolver -CONF_gns:=dns gns namecache resolver +LIBEXEC_gns:=dns2gns gns-proxy helper-dns namestore-fcfsd service-dns service-gns service-namecache service-namestore service-resolver +CONF_gns:=dns gns namecache namestore resolver DEPENDS_storage:=+gnunet-gns +libsqlite3 -BIN_storage:=datastore peerstore -LIB_storage:=datastore peerstore +BIN_storage:=datastore +LIB_storage:=datastore PLUGIN_storage:=datacache_sqlite datastore_heap datastore_sqlite namecache_sqlite namestore_sqlite -LIBEXEC_storage:=daemon-latency-logger namestore-fcfsd service-datastore service-peerstore -CONF_storage:=datastore peerstore +LIBEXEC_storage:=daemon-latency-logger service-datastore +CONF_storage:=datastore DEPENDS_transport-bluetooth:=+bluez-libs PLUGIN_transport-bluetooth:=transport_bluetooth @@ -218,7 +220,7 @@ BIN_utils:=config gns-import.sh gns-proxy-setup-ca transport-certificate-creatio DEPENDS_vpn:=+kmod-tun LIB_vpn:=tun vpn -LIBEXEC_vpn:=daemon-exit daemon-pt helper-exit helper-vpn service-vpn +LIBEXEC_vpn:=daemon-exit daemon-pt helper-exit helper-vpn service-vpn CONF_vpn:=exit pt vpn $(eval $(call BuildPackage,gnunet)) diff --git a/net/gnunet/files/gnunet.init b/net/gnunet/files/gnunet.init index 04b406771..66e2600d4 100644 --- a/net/gnunet/files/gnunet.init +++ b/net/gnunet/files/gnunet.init @@ -6,17 +6,47 @@ STOP=10 USE_PROCD=1 PROG=/usr/lib/gnunet/libexec/gnunet-service-arm -CONFIGFILE=/var/run/gnunet/gnunet.conf -start_service() { - if [ ! -e /var/run/gnunet ]; then - mkdir -p /var/run/gnunet - chmod 0750 /var/run/gnunet - chown gnunet:gnunet /var/run/gnunet - touch $CONFIGFILE - chown gnunet:gnunet $CONFIGFILE - chmod 0600 $CONFIGFILE +GNUNET_HOME=/var/run/gnunet +CONFIGFILE=$GNUNET_HOME/gnunet.conf +SUID_ROOT_HELPERS="exit nat-server nat-client transport-bluetooth transport-wlan vpn" + +chmodown_execbin() { + execname=/usr/lib/gnunet/libexec/gnunet-$1 + if [ -x $execname ]; then + chmod $2 $execname + [ "$3" ] && chown $3 $execname fi +} + +fix_libexec_permissions() { + [ -e /usr/share/gnunet/.permfix ] && return + for helper in $SUID_ROOT_HELPERS; do + chmodown_execbin helper-$helper u+s + done + chmodown_execbin helper-dns 4750 root:gnunetdns + chmodown_execbin service-dns 2750 root:gnunetdns + + touch /usr/share/gnunet/.permfix +} + +prepare_config() { + mkdir -p $GNUNET_HOME + chown gnunet:gnunet $GNUNET_HOME + chmod 0750 $GNUNET_HOME + touch $CONFIGFILE + chown root:gnunet $CONFIGFILE + chmod 0640 $CONFIGFILE + gnunet-config -c /tmp/run/gnunet/gnunet.conf -s PATHS -o GNUNET_HOME -V $GNUNET_HOME + defaultservices=$( gnunet-config -c /tmp/run/gnunet/gnunet.conf -s arm -o DEFAULTSERVICES ) + defaultservices="$defaultservices gns2dns" + gnunet-config -c /tmp/run/gnunet/gnunet.conf -s arm -o DEFAULTSERVICES -V "$defaultservices" +} + +start_service() { + fix_libexec_permissions + [ ! -e $GNUNET_HOME ] && prepare_config + procd_open_instance procd_set_param user gnunet procd_set_param command $PROG -c $CONFIGFILE From 0f562aa7c3af47e5a32b648e82dc648fd69d585a Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Fri, 5 Jun 2015 14:04:57 +0200 Subject: [PATCH 519/681] xl2tpd: don't let xl2tpd handle redial netifd is taking care of that already. Signed-off-by: Daniel Golle --- net/xl2tpd/Makefile | 2 +- net/xl2tpd/files/l2tp.sh | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/net/xl2tpd/Makefile b/net/xl2tpd/Makefile index c3582bef7..cba7bf03f 100644 --- a/net/xl2tpd/Makefile +++ b/net/xl2tpd/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=xl2tpd PKG_VERSION:=1.3.7pre20150524 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_MAINTAINER:=Daniel Golle PKG_LICENSE:=GPL-2.0 PKG_LICENSE_FILES:=LICENSE diff --git a/net/xl2tpd/files/l2tp.sh b/net/xl2tpd/files/l2tp.sh index 0748654a7..d4a6505b9 100644 --- a/net/xl2tpd/files/l2tp.sh +++ b/net/xl2tpd/files/l2tp.sh @@ -86,7 +86,7 @@ proto_l2tp_setup() { echo "${ipv6:++ipv6} ${pppd_options}" >> "${optfile}" echo "${mtu:+mtu $mtu mru $mtu}" >> "${optfile}" - xl2tpd-control add l2tp-${interface} pppoptfile=${optfile} lns=${server} redial=yes redial timeout=20 || { + xl2tpd-control add l2tp-${interface} pppoptfile=${optfile} lns=${server} timeout=20 || { echo "xl2tpd-control: Add l2tp-$interface failed" >&2 proto_setup_failed "$interface" exit 1 From e0b2a226a37845fdb8b789432174c788d62c6a64 Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Fri, 5 Jun 2015 17:11:07 +0200 Subject: [PATCH 520/681] xl2tpd: fix xl2tpd options The previous commit left an unwanted string in the options passed to xl2tpd-control. Remove that as well. Also set procd respawn parameter now that I'm at it. Signed-off-by: Daniel Golle --- net/xl2tpd/Makefile | 2 +- net/xl2tpd/files/l2tp.sh | 2 +- net/xl2tpd/files/xl2tpd.init | 1 + 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/net/xl2tpd/Makefile b/net/xl2tpd/Makefile index cba7bf03f..13d510fb5 100644 --- a/net/xl2tpd/Makefile +++ b/net/xl2tpd/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=xl2tpd PKG_VERSION:=1.3.7pre20150524 -PKG_RELEASE:=2 +PKG_RELEASE:=3 PKG_MAINTAINER:=Daniel Golle PKG_LICENSE:=GPL-2.0 PKG_LICENSE_FILES:=LICENSE diff --git a/net/xl2tpd/files/l2tp.sh b/net/xl2tpd/files/l2tp.sh index d4a6505b9..afb3a51c1 100644 --- a/net/xl2tpd/files/l2tp.sh +++ b/net/xl2tpd/files/l2tp.sh @@ -86,7 +86,7 @@ proto_l2tp_setup() { echo "${ipv6:++ipv6} ${pppd_options}" >> "${optfile}" echo "${mtu:+mtu $mtu mru $mtu}" >> "${optfile}" - xl2tpd-control add l2tp-${interface} pppoptfile=${optfile} lns=${server} timeout=20 || { + xl2tpd-control add l2tp-${interface} pppoptfile=${optfile} lns=${server} || { echo "xl2tpd-control: Add l2tp-$interface failed" >&2 proto_setup_failed "$interface" exit 1 diff --git a/net/xl2tpd/files/xl2tpd.init b/net/xl2tpd/files/xl2tpd.init index 86098603e..7d2e9ea30 100644 --- a/net/xl2tpd/files/xl2tpd.init +++ b/net/xl2tpd/files/xl2tpd.init @@ -14,6 +14,7 @@ start_service() { procd_open_instance procd_set_param command $BIN -D -l -p "$PID_F" + procd_set_param respawn procd_close_instance } From 9b5a7966ff813d88ffe74a728e5fb97d35c6319a Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Fri, 5 Jun 2015 17:42:34 +0200 Subject: [PATCH 521/681] gnunet: package accidentally dropped peerstore_sqlite Signed-off-by: Daniel Golle --- net/gnunet/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/net/gnunet/Makefile b/net/gnunet/Makefile index 01c58a9e9..bd4d9cb00 100644 --- a/net/gnunet/Makefile +++ b/net/gnunet/Makefile @@ -10,7 +10,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=gnunet PKG_SOURCE_VERSION:=35865 PKG_VERSION:=0.10.1-svn$(PKG_SOURCE_VERSION) -PKG_RELEASE:=1 +PKG_RELEASE:=2 # ToDo: # - break-out transports @@ -207,7 +207,7 @@ CONF_gns:=dns gns namecache namestore resolver DEPENDS_storage:=+gnunet-gns +libsqlite3 BIN_storage:=datastore LIB_storage:=datastore -PLUGIN_storage:=datacache_sqlite datastore_heap datastore_sqlite namecache_sqlite namestore_sqlite +PLUGIN_storage:=datacache_sqlite datastore_heap datastore_sqlite namecache_sqlite namestore_sqlite peerstore_sqlite LIBEXEC_storage:=daemon-latency-logger service-datastore CONF_storage:=datastore From 9f4c0abc22993ac3ddbde23877aca10164fabe22 Mon Sep 17 00:00:00 2001 From: Florian Fieber Date: Fri, 5 Jun 2015 16:07:56 +0200 Subject: [PATCH 522/681] vim: Fix editing crontabs with crontab -e Per default, vim creates a new file and keeps the original file as backup. This leads to crontab checking the backup file for changes instead of the one actually being edited, resulting in any changes being silently dropped. Since busybox's crontab saves temporary crontab files in "/etc/crontabs.*" vim's default of "backupskip=/tmp/*" doesn't circumvent this. This commit fixes this issue by appending "/etc/crontabs.*" to "backupskip". Signed-off-by: Florian Fieber --- utils/vim/Makefile | 2 +- utils/vim/files/vimrc | 1 + utils/vim/files/vimrc.full | 2 ++ 3 files changed, 4 insertions(+), 1 deletion(-) diff --git a/utils/vim/Makefile b/utils/vim/Makefile index da01c671e..2e9f96a8b 100644 --- a/utils/vim/Makefile +++ b/utils/vim/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=vim PKG_VERSION:=7.4 -PKG_RELEASE:=2 +PKG_RELEASE:=3 VIMVER:=74 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 diff --git a/utils/vim/files/vimrc b/utils/vim/files/vimrc index 2622b773b..b8cea2938 100644 --- a/utils/vim/files/vimrc +++ b/utils/vim/files/vimrc @@ -9,3 +9,4 @@ set linebreak " don't wrap words by default set textwidth=0 " don't wrap lines by default set ruler " show the cursor position all the time +set backupskip+=/etc/crontabs.* " fix crontab -e diff --git a/utils/vim/files/vimrc.full b/utils/vim/files/vimrc.full index 56305c152..99f737e84 100644 --- a/utils/vim/files/vimrc.full +++ b/utils/vim/files/vimrc.full @@ -9,6 +9,8 @@ set linebreak " don't wrap words by default set textwidth=0 " don't wrap lines by default set ruler " show the cursor position all the time +set backupskip+=/etc/crontabs.* " fix crontab -e + if filereadable(expand("$VIMRUNTIME/syntax/synload.vim")) syntax on endif From e07a07985e7d08dffde7ca8419e76f314878a545 Mon Sep 17 00:00:00 2001 From: Luka Perkov Date: Mon, 8 Jun 2015 00:50:33 +0200 Subject: [PATCH 523/681] libuv: bump to 1.6.1 Signed-off-by: Luka Perkov --- libs/libuv/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libs/libuv/Makefile b/libs/libuv/Makefile index 44a8c8690..da1ac326d 100644 --- a/libs/libuv/Makefile +++ b/libs/libuv/Makefile @@ -8,7 +8,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=libuv -PKG_VERSION:=1.5.0 +PKG_VERSION:=1.6.1 PKG_RELEASE:=1 PKG_LICENSE_FILES:=LICENSE @@ -17,7 +17,7 @@ PKG_MAINTAINER:=Luka Perkov PKG_SOURCE:=$(PKG_NAME)-v$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://libuv.org/dist/v$(PKG_VERSION)/ -PKG_MD5SUM:=a26da181256a824fe9283f5e65e77033 +PKG_MD5SUM:=51cfa3d8adc05852982e3c742ec3c039 PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-v$(PKG_VERSION) PKG_BUILD_PARALLEL:=1 From 3a1b961956b576ba2ae69cc8d1a62f0a17e0535b Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Mon, 8 Jun 2015 01:27:18 +0200 Subject: [PATCH 524/681] toxcore: new package This packages the Tox core as well as nTox and tox-bootstrapd. Signed-off-by: Daniel Golle --- libs/toxcore/Makefile | 170 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 170 insertions(+) create mode 100644 libs/toxcore/Makefile diff --git a/libs/toxcore/Makefile b/libs/toxcore/Makefile new file mode 100644 index 000000000..07f0c7651 --- /dev/null +++ b/libs/toxcore/Makefile @@ -0,0 +1,170 @@ +# +# Copyright (C) 2009-2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=toxcore +PKG_VERSION:=0.0.0 +PKG_RELEASE:=1 + +PKG_SOURCE_PROTO:=git +PKG_SOURCE_URL:=https://github.com/irungentoo/toxcore.git +PKG_SOURCE_VERSION:=6d883f488ff59b2394982b62895d50b1d1d55bf4 +PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_SOURCE_VERSION) +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.gz +PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_SOURCE_VERSION) + +PKG_FIXUP:=autoreconf +PKG_INSTALL:=1 + +PKG_MAINTAINER:=Daniel Golle +PKG_LICENSE:=GPL + +include $(INCLUDE_DIR)/package.mk + +define Package/toxcore/Default + SECTION:=libs + CATEGORY:=Libraries + SUBMENU:=Networking + TITLE:=Tox + URL:=https://tox.im +endef + +define Package/toxcore/description/Default + Tox, a FOSS initiative, aims to be an easy to use, all-in-one + communication platform that ensures their users full privacy and + secure message delivery. +endef + +define Package/libtoxcore + $(call Package/toxcore/Default) + DEPENDS:=+libsodium +librt +libpthread + TITLE+= core library +endef + +define Package/libtoxcore/description + $(call Package/toxcore/description/Default) + + core library +endef + +define Package/libtoxav + $(call Package/toxcore/Default) + DEPENDS:=+libtoxcore +libopus +libvpx + TITLE+= A/V library +endef + +define Package/libtoxav/description + $(call Package/toxcore/description/Default) + + A/V library providing audio/video codec bindings +endef + +define Package/libtoxdns + $(call Package/toxcore/Default) + DEPENDS:=+libtoxcore + TITLE+= dns library +endef + +define Package/libtoxdns/description + $(call Package/toxcore/description/Default) + + DNS library +endef + +define Package/libtoxencryptsave + $(call Package/toxcore/Default) + DEPENDS:=+libtoxcore + TITLE+= encryptsave library +endef + +define Package/libtoxencryptsave/description + $(call Package/toxcore/description/Default) + + encryptsave library +endef + +define Package/ntox + SECTION:=net + CATEGORY:=Network + SUBMENU:=Instant Messaging + DEPENDS:=+libtoxcore +libncurses + TITLE:=ntox Tox command-line client +endef + +define Package/ntox/description + $(call Package/toxcore/description/Default) + + nTox is an ncurses-based command-line client for Tox. +endef + +define Package/tox-bootstrapd + SECTION:=net + CATEGORY:=Network + SUBMENU:=Instant Messaging + DEPENDS:=+libtoxcore +libconfig + TITLE:=Tox DHT bootstrap +endef + +define Package/tox-dht-bootstrap/description + $(call Package/toxcore/description/Default) + + This package provide the Tox DHT bootstrap service. +endef + +CONFIGURE_ARGS+= \ + --enable-daemon \ + --enable-ntox \ + --enable-av \ + --disable-testing \ + --disable-tests + +define Package/libtoxav/install + $(INSTALL_DIR) $(1)/usr/lib + $(CP) $(PKG_INSTALL_DIR)/usr/lib/libtoxav.*so* $(1)/usr/lib +endef + +define Package/libtoxcore/install + $(INSTALL_DIR) $(1)/usr/lib + $(CP) $(PKG_INSTALL_DIR)/usr/lib/libtoxcore.*so* $(1)/usr/lib +endef + +define Package/libtoxdns/install + $(INSTALL_DIR) $(1)/usr/lib + $(CP) $(PKG_INSTALL_DIR)/usr/lib/libtoxdns.*so* $(1)/usr/lib +endef + +define Package/libtoxencryptsave/install + $(INSTALL_DIR) $(1)/usr/lib + $(CP) $(PKG_INSTALL_DIR)/usr/lib/libtoxencryptsave.*so* $(1)/usr/lib +endef + +define Package/tox-bootstrapd/install + $(INSTALL_DIR) $(1)/usr/bin + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/tox-bootstrapd $(1)/usr/bin +endef + +define Package/ntox/install + $(INSTALL_DIR) $(1)/usr/bin + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/nTox $(1)/usr/bin +endef + +define Build/InstallDev + $(INSTALL_DIR) $(1)/usr/include/tox + $(CP) $(PKG_INSTALL_DIR)/usr/include/tox/*.h $(1)/usr/include/tox + $(INSTALL_DIR) $(1)/usr/lib + $(CP) $(PKG_INSTALL_DIR)/usr/lib/libtox* $(1)/usr/lib/ + $(INSTALL_DIR) $(1)/usr/lib/pkgconfig + $(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/libtoxcore.pc $(1)/usr/lib/pkgconfig/ +endef + +$(eval $(call BuildPackage,libtoxav)) +$(eval $(call BuildPackage,libtoxcore)) +$(eval $(call BuildPackage,libtoxdns)) +$(eval $(call BuildPackage,libtoxencryptsave)) +$(eval $(call BuildPackage,ntox)) +$(eval $(call BuildPackage,tox-bootstrapd)) From 433a621c42f0658802929006c2a39811656bc78b Mon Sep 17 00:00:00 2001 From: Steven Barth Date: Mon, 8 Jun 2015 07:48:08 +0200 Subject: [PATCH 525/681] strongswan: update to 5.3.1, cleanup broken modules Signed-off-by: Steven Barth --- net/strongswan/Makefile | 16 +++++----------- 1 file changed, 5 insertions(+), 11 deletions(-) diff --git a/net/strongswan/Makefile b/net/strongswan/Makefile index 5a2e0fac0..ea04b3a59 100644 --- a/net/strongswan/Makefile +++ b/net/strongswan/Makefile @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=strongswan -PKG_VERSION:=5.3.0 +PKG_VERSION:=5.3.1 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 PKG_SOURCE_URL:=http://download.strongswan.org/ http://download2.strongswan.org/ -PKG_MD5SUM:=c52d4228231c2025d9c320d0e9990327 +PKG_MD5SUM:=66f258901a3d6c271da1a0c7fb3e5013 PKG_LICENSE:=GPL-2.0+ PKG_MAINTAINER:=Steven Barth @@ -56,7 +56,6 @@ PKG_MOD_AVAILABLE:= \ md5 \ mysql \ openssl \ - padlock \ pem \ pgp \ pkcs1 \ @@ -71,7 +70,6 @@ PKG_MOD_AVAILABLE:= \ smp \ socket-default \ socket-dynamic \ - sql \ sqlite \ stroke \ test-vectors \ @@ -166,7 +164,6 @@ $(call Package/strongswan/Default) +strongswan-mod-md5 \ +strongswan-mod-mysql \ +strongswan-mod-openssl \ - +TARGET_x86:strongswan-mod-padlock \ +strongswan-mod-pem \ +strongswan-mod-pgp \ +strongswan-mod-pkcs1 \ @@ -180,7 +177,6 @@ $(call Package/strongswan/Default) +strongswan-mod-sha2 \ +strongswan-mod-smp \ +strongswan-mod-socket-default \ - +strongswan-mod-sql \ +strongswan-mod-sqlite \ +strongswan-mod-stroke \ +strongswan-mod-test-vectors \ @@ -435,7 +431,7 @@ $(eval $(call BuildPlugin,aes,AES crypto,)) $(eval $(call BuildPlugin,af-alg,AF_ALG crypto interface to Linux Crypto API,+kmod-crypto-user)) $(eval $(call BuildPlugin,agent,SSH agent signing,)) $(eval $(call BuildPlugin,attr,file based config,)) -$(eval $(call BuildPlugin,attr-sql,SQL based config,+strongswan-mod-sql +strongswan-charon)) +$(eval $(call BuildPlugin,attr-sql,SQL based config,+strongswan-charon)) $(eval $(call BuildPlugin,blowfish,Blowfish crypto,)) $(eval $(call BuildPlugin,ccm,CCM AEAD wrapper crypto,)) $(eval $(call BuildPlugin,cmac,CMAC crypto,)) @@ -466,9 +462,8 @@ $(eval $(call BuildPlugin,load-tester,load testing,)) $(eval $(call BuildPlugin,nonce,nonce genereation,)) $(eval $(call BuildPlugin,md4,MD4 crypto,)) $(eval $(call BuildPlugin,md5,MD5 crypto,)) -$(eval $(call BuildPlugin,mysql,MySQL database interface,+strongswan-mod-sql +PACKAGE_strongswan-mod-mysql:libmysqlclient-r)) +$(eval $(call BuildPlugin,mysql,MySQL database interface,+PACKAGE_strongswan-mod-mysql:libmysqlclient-r)) $(eval $(call BuildPlugin,openssl,OpenSSL crypto,+PACKAGE_strongswan-mod-openssl:libopenssl)) -$(eval $(call BuildPlugin,padlock,VIA PadLock crypto,@TARGET_x86)) $(eval $(call BuildPlugin,pem,PEM decoding,)) $(eval $(call BuildPlugin,pgp,PGP key decoding,)) $(eval $(call BuildPlugin,pkcs1,PKCS1 key decoding,)) @@ -483,8 +478,7 @@ $(eval $(call BuildPlugin,sha2,SHA2 crypto,)) $(eval $(call BuildPlugin,smp,SMP configuration and control interface,+PACKAGE_strongswan-mod-smp:libxml2)) $(eval $(call BuildPlugin,socket-default,default socket implementation for charon,)) $(eval $(call BuildPlugin,socket-dynamic,dynamic socket implementation for charon,)) -$(eval $(call BuildPlugin,sql,SQL database interface,)) -$(eval $(call BuildPlugin,sqlite,SQLite database interface,+strongswan-mod-sql +PACKAGE_strongswan-mod-sqlite:libsqlite3)) +$(eval $(call BuildPlugin,sqlite,SQLite database interface,+PACKAGE_strongswan-mod-sqlite:libsqlite3)) $(eval $(call BuildPlugin,stroke,Stroke,+strongswan-utils)) $(eval $(call BuildPlugin,test-vectors,crypto test vectors,)) $(eval $(call BuildPlugin,uci,UCI config interface,+PACKAGE_strongswan-mod-uci:libuci)) From 08631d9c8f197fadb184efe6ce3cfcd340dc9514 Mon Sep 17 00:00:00 2001 From: Marko Ratkaj Date: Tue, 2 Jun 2015 15:15:08 +0200 Subject: [PATCH 526/681] sysstat: import from old packages Signed-off-by: Marko Ratkaj --- utils/sysstat/Makefile | 65 ++++++++++++++++++++++++++++++ utils/sysstat/files/sysstat.config | 7 ++++ utils/sysstat/files/sysstat.init | 49 ++++++++++++++++++++++ 3 files changed, 121 insertions(+) create mode 100644 utils/sysstat/Makefile create mode 100644 utils/sysstat/files/sysstat.config create mode 100755 utils/sysstat/files/sysstat.init diff --git a/utils/sysstat/Makefile b/utils/sysstat/Makefile new file mode 100644 index 000000000..f1f129d7f --- /dev/null +++ b/utils/sysstat/Makefile @@ -0,0 +1,65 @@ +# +# Copyright (C) 2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=sysstat +PKG_VERSION:=11.0.4 +PKG_RELEASE:=1 + +PKG_MAINTAINER:=Marko Ratkaj + +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz +PKG_SOURCE_URL:=http://perso.orange.fr/sebastien.godard/ +PKG_MD5SUM:=df1ed75656eb06320088d54247f0e803 + +PKG_INSTALL:=1 + +include $(INCLUDE_DIR)/package.mk + +define Package/sysstat + SECTION:=utils + CATEGORY:=Utilities + TITLE:=Sysstat performance monitoring tools + URL:=http://pagesperso-orange.fr/sebastien.godard/index.html +endef + +define Package/sysstat/description + The sysstat utilities are a collection of performance monitoring tools for + Linux. These include sar, sadf, mpstat, iostat, pidstat and sa tools. +endef + +define Package/sysstat/conffiles +/etc/sysstat/sysstat.ioconf +/etc/sysstat/sysstat +endef + +CONFIGURE_VARS+= \ + sa_lib_dir="/usr/lib/sysstat" \ + sa_dir="/var/log/sysstat" \ + conf_dir="/etc/sysstat" + +CONFIGURE_ARGS+= \ + --disable-documentation \ + --disable-largefile \ + --disable-sensors \ + --disable-nls + +define Package/sysstat/install + $(INSTALL_DIR) $(1)/usr/lib/sysstat + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/sysstat/{sadc,sa1,sa2} $(1)/usr/lib/sysstat/ + $(INSTALL_DIR) $(1)/usr/bin + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/{sar,sadf,iostat,mpstat,pidstat} $(1)/usr/bin/ + $(INSTALL_DIR) $(1)/etc/sysstat + $(INSTALL_CONF) $(PKG_INSTALL_DIR)/etc/sysstat/sysstat.ioconf $(1)/etc/sysstat/ + $(INSTALL_DIR) $(1)/etc/config + $(INSTALL_CONF) ./files/sysstat.config $(1)/etc/config/sysstat + $(INSTALL_DIR) $(1)/etc/init.d + $(INSTALL_BIN) ./files/sysstat.init $(1)/etc/init.d/sysstat +endef + +$(eval $(call BuildPackage,sysstat)) diff --git a/utils/sysstat/files/sysstat.config b/utils/sysstat/files/sysstat.config new file mode 100644 index 000000000..638b3798c --- /dev/null +++ b/utils/sysstat/files/sysstat.config @@ -0,0 +1,7 @@ +config sysstat 'sysstat' + option log_history '7' + option compressafter '10' + option sadc_options '' + option sa_dir '/var/log/sysstat' + option zip 'xz' + option enabled 'true' diff --git a/utils/sysstat/files/sysstat.init b/utils/sysstat/files/sysstat.init new file mode 100755 index 000000000..a8190008d --- /dev/null +++ b/utils/sysstat/files/sysstat.init @@ -0,0 +1,49 @@ +#!/bin/sh /etc/rc.common +# Copyright (C) 2015 OpenWrt.org + +START=90 +STOP=10 + +USE_PROCD=1 +PROG=/usr/lib/sysstat/sadc +SYSSTAT_CFG="/etc/sysstat/sysstat" + +validate_sysstat_section() { + uci_validate_section sysstat sysstat "${1}" \ + 'log_history:uinteger' \ + 'compressafter:uinteger' \ + 'sadc_options:string' \ + 'sa_dir:string' \ + 'zip:string' \ + 'enabled:string' +} + +start_service() { + + local log_history compressafter sadc_options sa_dir zip enabled + + validate_sysstat_section sysstat || { + echo "validation failed" + return 1 + } + + [ -d /var/log/sysstat ] || mkdir -p /var/log/sysstat + + echo "HISTORY=$log_history" > $SYSSTAT_CFG + echo "COMPRESSAFTER=$compressafter" >> $SYSSTAT_CFG + echo "SADC_OPTIONS=\"$sadc_options\"" >> $SYSSTAT_CFG + echo "SA_DIR=\"$sa_dir\"" >> $SYSSTAT_CFG + echo "ZIP=\"$zip\"" >> $SYSSTAT_CFG + echo "ENABLED=\"$enabled\"" >> $SYSSTAT_CFG + + procd_open_instance + procd_set_param command $PROG -S DISK -F -L - + procd_set_param file $SYSSTAT_CFG + procd_close_instance +} + +service_triggers() +{ + procd_add_reload_trigger "sysstat" + procd_add_validation validate_sysstat_section +} From 47486a98896443c3dad7158c82f377e370bddd45 Mon Sep 17 00:00:00 2001 From: Rupan Date: Mon, 8 Jun 2015 12:26:13 +0200 Subject: [PATCH 527/681] sstp-client: updated to version 1.0.10 Signed-off-by: Federico Di Marco --- net/sstp-client/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/net/sstp-client/Makefile b/net/sstp-client/Makefile index 185e6c06c..6e6526982 100644 --- a/net/sstp-client/Makefile +++ b/net/sstp-client/Makefile @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=sstp-client -PKG_VERSION:=1.0.9 +PKG_VERSION:=1.0.10 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=@SF/sstp-client/$(PKG_VERSION) -PKG_MD5SUM:=40f1d1b1596b4f1817ec903f58b2780c +PKG_MD5SUM:=5f290355187e5ce0423fb7e388e65b9d PKG_LICENSE=GPLv2 include $(INCLUDE_DIR)/package.mk From 267174b7473801c2cf7128808bc137bacca65afa Mon Sep 17 00:00:00 2001 From: Steven Barth Date: Mon, 8 Jun 2015 18:09:43 +0200 Subject: [PATCH 528/681] strongswan: bump to 5.3.2 Signed-off-by: Steven Barth --- net/strongswan/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/net/strongswan/Makefile b/net/strongswan/Makefile index ea04b3a59..b1ba0f284 100644 --- a/net/strongswan/Makefile +++ b/net/strongswan/Makefile @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=strongswan -PKG_VERSION:=5.3.1 +PKG_VERSION:=5.3.2 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 PKG_SOURCE_URL:=http://download.strongswan.org/ http://download2.strongswan.org/ -PKG_MD5SUM:=66f258901a3d6c271da1a0c7fb3e5013 +PKG_MD5SUM:=fab014be1477ef4ebf9a765e10f8802c PKG_LICENSE:=GPL-2.0+ PKG_MAINTAINER:=Steven Barth From 183ec8af2e555760d8b2b2c869b633a8dfbd639e Mon Sep 17 00:00:00 2001 From: heil Date: Mon, 8 Jun 2015 18:14:46 +0200 Subject: [PATCH 529/681] pcre: fix CVE-2015-3210 - should fix eap buffer overflow in pcre_compile2() / compile_regex() Signed-off-by: heil --- libs/pcre/Makefile | 2 +- .../pcre/patches/100-pcre-cve-2015-3210.patch | 32 +++++++++++++++++++ 2 files changed, 33 insertions(+), 1 deletion(-) create mode 100644 libs/pcre/patches/100-pcre-cve-2015-3210.patch diff --git a/libs/pcre/Makefile b/libs/pcre/Makefile index 78b9af34a..6a9c4144c 100644 --- a/libs/pcre/Makefile +++ b/libs/pcre/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=pcre PKG_VERSION:=8.37 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 PKG_SOURCE_URL:=@SF/pcre diff --git a/libs/pcre/patches/100-pcre-cve-2015-3210.patch b/libs/pcre/patches/100-pcre-cve-2015-3210.patch new file mode 100644 index 000000000..276d09e9a --- /dev/null +++ b/libs/pcre/patches/100-pcre-cve-2015-3210.patch @@ -0,0 +1,32 @@ +Index: pcre-8.37/pcre_compile.c +=================================================================== +--- a/pcre_compile.c ++++ b/pcre_compile.c +@@ -7177,14 +7177,26 @@ + number. If the name is not found, set the value to 0 for a forward + reference. */ + ++ recno = 0; + ng = cd->named_groups; + for (i = 0; i < cd->names_found; i++, ng++) + { + if (namelen == ng->length && + STRNCMP_UC_UC(name, ng->name, namelen) == 0) +- break; ++ { ++ open_capitem *oc; ++ recno = ng->number; ++ if (is_recurse) break; ++ for (oc = cd->open_caps; oc != NULL; oc = oc->next) ++ { ++ if (oc->number == recno) ++ { ++ oc->flag = TRUE; ++ break; ++ } ++ } ++ } + } +- recno = (i < cd->names_found)? ng->number : 0; + + /* Count named back references. */ From 7b2de3f296469990bc5eed495796cbe6a37d1cc9 Mon Sep 17 00:00:00 2001 From: Paul Oranje Date: Tue, 9 Jun 2015 00:00:10 +0200 Subject: [PATCH 530/681] perl-device-serialport: add package Adds the POSIX port of the Win32::SerialPort module by Kees Cook Signed-off-by: Paul Oranje --- lang/perl-device-serialport/Makefile | 53 ++++++++++++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 lang/perl-device-serialport/Makefile diff --git a/lang/perl-device-serialport/Makefile b/lang/perl-device-serialport/Makefile new file mode 100644 index 000000000..3abf5b346 --- /dev/null +++ b/lang/perl-device-serialport/Makefile @@ -0,0 +1,53 @@ +# +# Copyright (C) 2014, 2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=perl-device-serialport +PKG_VERSION:=1.04 +PKG_RELEASE:=1 + +PKG_SOURCE_URL:=http://www.cpan.org/authors/id/C/CO/COOK/ +PKG_SOURCE:=Device-SerialPort-$(PKG_VERSION).tar.gz +PKG_MD5SUM:=82c698151f934eb28c65d1838cee7d9e + +PKG_LICENSE:=GPL-1.0+ Artistic-1.0-Perl +PKG_MAINTAINER:=Paul Oranje + +PKG_BUILD_DIR:=$(BUILD_DIR)/perl/Device-SerialPort-$(PKG_VERSION) + +include $(INCLUDE_DIR)/package.mk +include ../perl/perlmod.mk + +define Package/perl-device-serialport + SUBMENU:=Perl + SECTION:=lang + CATEGORY:=Languages + TITLE:=A POSIX-based version of the Win32::SerialPort module + URL:=http://search.cpan.org/dist/Device-SerialPort/ + DEPENDS:=perl +perlbase-essential +endef + +define Package/perl-device-serialport/description + A POSIX-based version of the Win32::SerialPort module + that provides modem support to Perl applications +endef + +define Build/Configure + $(call perlmod/Configure,,) +endef + +define Build/Compile + $(call perlmod/Compile,,) +endef + +define Package/perl-device-serialport/install + $(call perlmod/Install,$(1),Device auto/Device) +endef + + +$(eval $(call BuildPackage,perl-device-serialport)) From c8a6990932d5cfe9c18df48cfcd818fd85b88e29 Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Tue, 9 Jun 2015 03:05:53 +0200 Subject: [PATCH 531/681] lxc: fix build on mpc85xx Initialize ret to 0 so compiler no longer complains about monitor.c: In function 'lxc_monitor_open': monitor.c:212:5: error: 'ret' may be used uninitialized in this function [-Werror=maybe-uninitialized] Signed-off-by: Daniel Golle --- .../patches/016-uninitialized-ret-in-monitor.patch | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 utils/lxc/patches/016-uninitialized-ret-in-monitor.patch diff --git a/utils/lxc/patches/016-uninitialized-ret-in-monitor.patch b/utils/lxc/patches/016-uninitialized-ret-in-monitor.patch new file mode 100644 index 000000000..7eca2eaeb --- /dev/null +++ b/utils/lxc/patches/016-uninitialized-ret-in-monitor.patch @@ -0,0 +1,11 @@ +--- a/src/lxc/monitor.c ++++ b/src/lxc/monitor.c +@@ -181,7 +181,7 @@ int lxc_monitor_sock_name(const char *lx + int lxc_monitor_open(const char *lxcpath) + { + struct sockaddr_un addr; +- int fd,ret; ++ int fd,ret = 0; + int retry,backoff_ms[] = {10, 50, 100}; + size_t len; + From 69116fb9e76481f185c96b685ba6513aa09d054d Mon Sep 17 00:00:00 2001 From: Marko Ratkaj Date: Mon, 8 Jun 2015 15:12:15 +0200 Subject: [PATCH 532/681] squid: minor changes in Makefile and init script Signed-off-by: Marko Ratkaj --- net/squid/Makefile | 4 ++-- net/squid/files/squid.init | 4 +++- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/net/squid/Makefile b/net/squid/Makefile index da43127c4..1d34d26ca 100644 --- a/net/squid/Makefile +++ b/net/squid/Makefile @@ -89,11 +89,11 @@ CONFIGURE_ARGS += \ --disable-arch-native \ --with-krb5-config=no \ --without-libcap \ - --without-netfilter-conntrack \ + --without-netfilter-conntrack CONFIGURE_VARS += \ ac_cv_header_linux_netfilter_ipv4_h=yes \ - ac_cv_epoll_works=yes \ + ac_cv_epoll_works=yes define Build/Compile +$(MAKE) $(PKG_JOBS) -C $(PKG_BUILD_DIR)/lib all diff --git a/net/squid/files/squid.init b/net/squid/files/squid.init index 8b3094840..35d86c877 100644 --- a/net/squid/files/squid.init +++ b/net/squid/files/squid.init @@ -25,7 +25,9 @@ start_service() { return 1 } - mkdir -p $(dirname $CONFIGFILE) + config_dir=$(dirname $CONFIGFILE) + [ -d $config_dir ] || mkdir -p $config_dir && chown nobody:nogroup $config_dir + [ -d $coredump_dir ] || mkdir -p $coredump_dir && chown nobody:nogroup $coredump_dir cat $config_file > $CONFIGFILE echo http_port $http_port >> $CONFIGFILE From 1fac9ac756f0975aba2d789d9c768c33c6e5a11b Mon Sep 17 00:00:00 2001 From: Marko Ratkaj Date: Mon, 8 Jun 2015 15:13:43 +0200 Subject: [PATCH 533/681] luci-app-squid: add package Signed-off-by: Marko Ratkaj --- net/luci-app-squid/Makefile | 53 +++++++++++++++ net/luci-app-squid/files/squid-cbi.lua | 67 +++++++++++++++++++ net/luci-app-squid/files/squid-controller.lua | 21 ++++++ 3 files changed, 141 insertions(+) create mode 100644 net/luci-app-squid/Makefile create mode 100644 net/luci-app-squid/files/squid-cbi.lua create mode 100644 net/luci-app-squid/files/squid-controller.lua diff --git a/net/luci-app-squid/Makefile b/net/luci-app-squid/Makefile new file mode 100644 index 000000000..91ce72414 --- /dev/null +++ b/net/luci-app-squid/Makefile @@ -0,0 +1,53 @@ +# +# Copyright (C) 2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=luci-app-squid +PKG_RELEASE:=20150608 + +PKG_LICENSE:=Apache-2.0 + +PKG_BUILD_DIR := $(BUILD_DIR)/$(PKG_NAME) + +include $(INCLUDE_DIR)/package.mk + +define Package/luci-app-squid + SECTION:=luci + CATEGORY:=LuCI + SUBMENU:=3. Applications + TITLE:=Squid Web UI + DEPENDS:=+luci-mod-admin-full +squid + MAINTAINER:=Marko Ratkaj +endef + +define Package/luci-app-squid/description + This package will install Squid Web UI. +endef + +define Build/Prepare +endef + +define Build/Configure +endef + +define Build/Compile +endef + +define Package/luci-app-squid/install + $(INSTALL_DIR) $(1)/usr/lib/lua/luci/controller/ + $(INSTALL_BIN) \ + ./files/squid-controller.lua \ + $(1)/usr/lib/lua/luci/controller/squid.lua + + $(INSTALL_DIR) $(1)/usr/lib/lua/luci/model/cbi/ + $(INSTALL_BIN) \ + ./files//squid-cbi.lua \ + $(1)/usr/lib/lua/luci/model/cbi/squid.lua +endef + +$(eval $(call BuildPackage,luci-app-squid)) diff --git a/net/luci-app-squid/files/squid-cbi.lua b/net/luci-app-squid/files/squid-cbi.lua new file mode 100644 index 000000000..0ac554a3e --- /dev/null +++ b/net/luci-app-squid/files/squid-cbi.lua @@ -0,0 +1,67 @@ +--[[ + +LuCI Squid module + +Copyright (C) 2015, OpenWrt.org + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Author: Marko Ratkaj + +]]-- + +local fs = require "nixio.fs" +local sys = require "luci.sys" +require "ubus" + +m = Map("squid", translate("Squid")) +m.on_after_commit = function() luci.sys.call("/etc/init.d/squid restart") end + +s = m:section(TypedSection, "squid") +s.anonymous = true +s.addremove = false + +s:tab("general", translate("General Settings")) + +http_port = s:taboption("general", Value, "http_port", translate("Port")) +http_port.datatype = "portrange" +http_port.placeholder = "0-65535" + +visible_hostname = s:taboption("general", Value, "visible_hostname", translate("Visible Hostname")) +visible_hostname.datatype="string" +visible_hostname.placeholder = "OpenWrt" + +coredump_dir = s:taboption("general", Value, "coredump_dir", translate("Coredump files directory")) +coredump_dir.datatype="string" +coredump_dir.placeholder = "/tmp/squid" + +s:tab("advanced", translate("Advanced Settings")) + +squid_config_file = s:taboption("advanced", TextValue, "_data", "") +squid_config_file.wrap = "off" +squid_config_file.rows = 25 +squid_config_file.rmempty = false + +function squid_config_file.cfgvalue() + local uci = require "luci.model.uci".cursor_state() + local file = uci:get("squid", "squid", "config_file") + if file then + return fs.readfile(file) or "" + else + return "" + end +end + +function squid_config_file.write(self, section, value) + if value then + local uci = require "luci.model.uci".cursor_state() + local file = uci:get("squid", "squid", "config_file") + fs.writefile(file, value:gsub("\r\n", "\n")) + end +end + +return m diff --git a/net/luci-app-squid/files/squid-controller.lua b/net/luci-app-squid/files/squid-controller.lua new file mode 100644 index 000000000..09946a151 --- /dev/null +++ b/net/luci-app-squid/files/squid-controller.lua @@ -0,0 +1,21 @@ +--[[ + +LuCI Squid module + +Copyright (C) 2015, OpenWrt.org + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Author: Marko Ratkaj + +]]-- + +module("luci.controller.squid", package.seeall) + +function index() + entry({"admin", "services", "squid"}, cbi("squid"), _("Squid")) +end From b4f4e3488afc806fdddd135e48a80cdbca2bddc2 Mon Sep 17 00:00:00 2001 From: Marko Ratkaj Date: Mon, 8 Jun 2015 15:18:19 +0200 Subject: [PATCH 534/681] sysstat: add license info Signed-off-by: Marko Ratkaj --- utils/sysstat/Makefile | 1 + 1 file changed, 1 insertion(+) diff --git a/utils/sysstat/Makefile b/utils/sysstat/Makefile index f1f129d7f..0c463815d 100644 --- a/utils/sysstat/Makefile +++ b/utils/sysstat/Makefile @@ -11,6 +11,7 @@ PKG_NAME:=sysstat PKG_VERSION:=11.0.4 PKG_RELEASE:=1 +PKG_LICENSE:=GPL-2.0 PKG_MAINTAINER:=Marko Ratkaj PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz From ffc395649bb480a2823da87ad69b8eb0ea935a53 Mon Sep 17 00:00:00 2001 From: Marko Ratkaj Date: Mon, 8 Jun 2015 15:44:30 +0200 Subject: [PATCH 535/681] libnet: add license info Signed-off-by: Marko Ratkaj --- libs/libnet-1.2.x/Makefile | 1 + 1 file changed, 1 insertion(+) diff --git a/libs/libnet-1.2.x/Makefile b/libs/libnet-1.2.x/Makefile index 6b4a44064..f3b5dcdc7 100644 --- a/libs/libnet-1.2.x/Makefile +++ b/libs/libnet-1.2.x/Makefile @@ -15,6 +15,7 @@ PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://sourceforge.net/projects/libnet-dev/files/ PKG_MD5SUM:=f051e6e5bdecddb90f77c701c2ca1804 PKG_MAINTAINER:=Mislav Novakovic +PKG_LICENSE:=GPL-2.0 PKG_FIXUP:=autoreconf PKG_INSTALL:=1 From ca26e170481690c27a1d5b150d40bdb6786f7a17 Mon Sep 17 00:00:00 2001 From: Marko Ratkaj Date: Mon, 8 Jun 2015 15:44:49 +0200 Subject: [PATCH 536/681] netdiscover: add license info Signed-off-by: Marko Ratkaj --- net/netdiscover/Makefile | 1 + 1 file changed, 1 insertion(+) diff --git a/net/netdiscover/Makefile b/net/netdiscover/Makefile index 8aa63fdee..086279908 100644 --- a/net/netdiscover/Makefile +++ b/net/netdiscover/Makefile @@ -15,6 +15,7 @@ PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-LINUXONLY.tar.gz PKG_SOURCE_URL:=http://nixgeneration.com/~jaime/netdiscover/releases/ PKG_MD5SUM:=8780e66d00496e933b4064cfe9ae61da PKG_MAINTAINER:=Mislav Novakovic +PKG_LICENSE:=GPL-2.0 PKG_FIXUP:=autoreconf PKG_INSTALL:=1 From 3841f9d6864604b4a9bb0f7b8840c33d4d26d955 Mon Sep 17 00:00:00 2001 From: Bruno Randolf Date: Fri, 29 May 2015 14:58:29 +0100 Subject: [PATCH 537/681] bluez: Add bluez-daemon package Move bluetoothd and related programs and files from bluez-utils into bluez-daemon package. The main motivation for this is to remove the dependency to DBus from bluez-utils. The utilities like "hcitool" are useful without it. Also add kmod-bluetooth dependency to bluez-utils, as the utils don't make much sense without bluetooth support in the kernel. Signed-off-by: Bruno Randolf --- utils/bluez/Makefile | 39 +++++++++++++++++++++++++++++++++------ 1 file changed, 33 insertions(+), 6 deletions(-) diff --git a/utils/bluez/Makefile b/utils/bluez/Makefile index 4865698f2..ebc164639 100644 --- a/utils/bluez/Makefile +++ b/utils/bluez/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=bluez PKG_VERSION:=5.30 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=http://www.kernel.org/pub/linux/bluetooth/ @@ -47,7 +47,7 @@ $(call Package/bluez/Default) SECTION:=libs CATEGORY:=Libraries TITLE+= library - DEPENDS:=+libpthread + DEPENDS:=+libpthread +kmod-bluetooth endef define Package/bluez-utils @@ -55,10 +55,18 @@ $(call Package/bluez/Default) SECTION:=utils CATEGORY:=Utilities TITLE+= utilities - DEPENDS:=+bluez-libs +libpthread +librt +dbus +glib2 +libical +libncurses +libreadline $(INTL_DEPENDS) $(ICONV_DEPENDS) + DEPENDS:=+bluez-libs +libpthread +librt +glib2 +libncurses +libreadline $(INTL_DEPENDS) $(ICONV_DEPENDS) endef -define Package/bluez-utils/conffiles +define Package/bluez-daemon +$(call Package/bluez/Default) + SECTION:=utils + CATEGORY:=Utilities + TITLE+= daemon + DEPENDS:=+bluez-libs +bluez-utils +dbus +libical $(INTL_DEPENDS) $(ICONV_DEPENDS) +endef + +define Package/bluez-daemon/conffiles /etc/bluetooth/main.conf /etc/bluetooth/network.conf /etc/bluetooth/input.conf @@ -109,10 +117,28 @@ endef define Package/bluez-utils/install $(INSTALL_DIR) $(1)/usr/bin - $(CP) $(PKG_INSTALL_DIR)/usr/bin/* $(1)/usr/bin/ + $(CP) $(PKG_INSTALL_DIR)/usr/bin/bccmd $(1)/usr/bin/ + $(CP) $(PKG_INSTALL_DIR)/usr/bin/bluemoon $(1)/usr/bin/ + $(CP) $(PKG_INSTALL_DIR)/usr/bin/btmon $(1)/usr/bin/ + $(CP) $(PKG_INSTALL_DIR)/usr/bin/ciptool $(1)/usr/bin/ + $(CP) $(PKG_INSTALL_DIR)/usr/bin/hciattach $(1)/usr/bin/ + $(CP) $(PKG_INSTALL_DIR)/usr/bin/hciconfig $(1)/usr/bin/ + $(CP) $(PKG_INSTALL_DIR)/usr/bin/hcidump $(1)/usr/bin/ + $(CP) $(PKG_INSTALL_DIR)/usr/bin/hcitool $(1)/usr/bin/ + $(CP) $(PKG_INSTALL_DIR)/usr/bin/hex2hcd $(1)/usr/bin/ + $(CP) $(PKG_INSTALL_DIR)/usr/bin/l2ping $(1)/usr/bin/ + $(CP) $(PKG_INSTALL_DIR)/usr/bin/l2test $(1)/usr/bin/ + $(CP) $(PKG_INSTALL_DIR)/usr/bin/rctest $(1)/usr/bin/ + $(CP) $(PKG_INSTALL_DIR)/usr/bin/rfcomm $(1)/usr/bin/ + $(CP) $(PKG_INSTALL_DIR)/usr/bin/sdptool $(1)/usr/bin/ + $(INSTALL_BIN) $(PKG_BUILD_DIR)/attrib/gatttool $(1)/usr/bin/ +endef + +define Package/bluez-daemon/install + $(INSTALL_DIR) $(1)/usr/bin $(CP) $(PKG_INSTALL_DIR)/usr/lib/bluetooth/bluetoothd $(1)/usr/bin/ + $(CP) $(PKG_INSTALL_DIR)/usr/bin/bluetoothctl $(1)/usr/bin/ $(CP) $(PKG_INSTALL_DIR)/usr/lib/bluetooth/obexd $(1)/usr/bin/ - $(INSTALL_BIN) $(PKG_BUILD_DIR)/attrib/gatttool $(1)/usr/bin/ $(INSTALL_DIR) $(1)/etc/config $(INSTALL_DATA) ./files/bluetooth.config $(1)/etc/config/bluetooth $(INSTALL_DIR) $(1)/etc/dbus-1/system.d/ @@ -129,3 +155,4 @@ endef $(eval $(call BuildPackage,bluez-examples)) $(eval $(call BuildPackage,bluez-libs)) $(eval $(call BuildPackage,bluez-utils)) +$(eval $(call BuildPackage,bluez-daemon)) From 615e26e4463ce01c9971c21e621fbf01d2e7fb5f Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Wed, 10 Jun 2015 18:12:20 +0200 Subject: [PATCH 538/681] libevdev: new package Signed-off-by: Daniel Golle --- libs/libevdev/Makefile | 57 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 57 insertions(+) create mode 100644 libs/libevdev/Makefile diff --git a/libs/libevdev/Makefile b/libs/libevdev/Makefile new file mode 100644 index 000000000..2fe243331 --- /dev/null +++ b/libs/libevdev/Makefile @@ -0,0 +1,57 @@ +# +# Copyright (C) 2007-2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=libevdev +PKG_VERSION:=1.4.2 +PKG_RELEASE:=1 + +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz +PKG_SOURCE_URL:=http://www.freedesktop.org/software/libevdev/ +PKG_MD5SUM:=debfcd5153558eba25a8e71eb2534ae8 + +PKG_LICENSE:=MIT +PKG_LICENSE_FILES:=COPYING +PKG_MAINTAINER:=Daniel Golle + +PKG_FIXUP:=autoreconf +PKG_INSTALL:=1 + +include $(INCLUDE_DIR)/package.mk + +define Package/libevdev + SECTION:=libs + CATEGORY:=Libraries + TITLE:=a wrapper library for evdev devices + URL:=http://www.freedesktop.org/wiki/Software/libevdev/ +endef + +define Package/libevdev/description + libevdev is a wrapper library for evdev devices. it moves the common + tasks when dealing with evdev devices into a library and provides a + library interface to the callers, thus avoiding erroneous ioctls, etc. + + The eventual goal is that libevdev wraps all ioctls available to + evdev devices, thus making direct access unnecessary. +endef + +define Build/InstallDev + $(INSTALL_DIR) $(1)/usr/include + $(CP) $(PKG_INSTALL_DIR)/usr/include/* $(1)/usr/include/ + $(INSTALL_DIR) $(1)/usr/lib + $(CP) $(PKG_INSTALL_DIR)/usr/lib/*.{a,so*} $(1)/usr/lib/ + $(INSTALL_DIR) $(1)/usr/lib/pkgconfig + $(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/* $(1)/usr/lib/pkgconfig/ +endef + +define Package/libevdev/install + $(INSTALL_DIR) $(1)/usr/lib + $(CP) $(PKG_INSTALL_DIR)/usr/lib/*.so* $(1)/usr/lib/ +endef + +$(eval $(call BuildPackage,libevdev)) From 7fef81c10d8ac2ec1761b6166d24f5708fa27b4a Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Wed, 10 Jun 2015 18:12:33 +0200 Subject: [PATCH 539/681] mtdev: new package Signed-off-by: Daniel Golle --- libs/mtdev/Makefile | 56 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 libs/mtdev/Makefile diff --git a/libs/mtdev/Makefile b/libs/mtdev/Makefile new file mode 100644 index 000000000..6f1e0b79c --- /dev/null +++ b/libs/mtdev/Makefile @@ -0,0 +1,56 @@ +# +# Copyright (C) 2007-2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=mtdev +PKG_VERSION:=1.1.5 +PKG_RELEASE:=1 + +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 +PKG_SOURCE_URL:=http://bitmath.org/code/mtdev/ +PKG_MD5SUM:=52c9610b6002f71d1642dc1a1cca5ec1 + +PKG_LICENSE:=MIT +PKG_LICENSE_FILES:=COPYING +PKG_MAINTAINER:=Daniel Golle + +PKG_FIXUP:=autoreconf +PKG_INSTALL:=1 + +include $(INCLUDE_DIR)/package.mk + +define Package/mtdev + SECTION:=libs + CATEGORY:=Libraries + TITLE:=Multitouch Protocol Translation Library + URL:=http://bitmath.org/code/mtdev/ +endef + +define Package/mtdev/description + The mtdev is a stand-alone library which transforms all variants of + kernel MT events to the slotted type B protocol. The events put into + mtdev may be from any MT device, specifically type A without contact + tracking, type A with contact tracking, or type B with contact + tracking. See the kernel documentation for further details. +endef + +define Build/InstallDev + $(INSTALL_DIR) $(1)/usr/include + $(CP) $(PKG_INSTALL_DIR)/usr/include/* $(1)/usr/include/ + $(INSTALL_DIR) $(1)/usr/lib + $(CP) $(PKG_INSTALL_DIR)/usr/lib/*.{a,so*} $(1)/usr/lib/ + $(INSTALL_DIR) $(1)/usr/lib/pkgconfig + $(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/* $(1)/usr/lib/pkgconfig/ +endef + +define Package/mtdev/install + $(INSTALL_DIR) $(1)/usr/lib + $(CP) $(PKG_INSTALL_DIR)/usr/lib/*.so* $(1)/usr/lib/ +endef + +$(eval $(call BuildPackage,mtdev)) From ca738e067ba0f00eed96f0e59a0041c0a108105f Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Wed, 10 Jun 2015 18:12:44 +0200 Subject: [PATCH 540/681] libinput: new package Signed-off-by: Daniel Golle --- libs/libinput/Makefile | 60 +++++++++++++++++++++++ libs/libinput/patches/001-no-locale.patch | 22 +++++++++ 2 files changed, 82 insertions(+) create mode 100644 libs/libinput/Makefile create mode 100644 libs/libinput/patches/001-no-locale.patch diff --git a/libs/libinput/Makefile b/libs/libinput/Makefile new file mode 100644 index 000000000..f03e1dbec --- /dev/null +++ b/libs/libinput/Makefile @@ -0,0 +1,60 @@ +# +# Copyright (C) 2007-2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=libinput +PKG_VERSION:=0.17.0 +PKG_RELEASE:=1 + +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz +PKG_SOURCE_URL:=http://www.freedesktop.org/software/libinput/ +# PKG_MD5SUM:=debfcd5153558eba25a8e71eb2534ae8 + +PKG_LICENSE:=MIT +PKG_LICENSE_FILES:=COPYING +PKG_MAINTAINER:=Daniel Golle + +PKG_FIXUP:=autoreconf +PKG_INSTALL:=1 + +include $(INCLUDE_DIR)/package.mk + +TARGET_CFLAGS+= -std=gnu99 + +define Package/libinput + SECTION:=libs + CATEGORY:=Libraries + TITLE:=a library to handle input devices + URL:=http://freedesktop.org/wiki/Software/libinput/ + DEPENDS:=+libevdev +mtdev +udev +endef + +define Package/libinput/description + libinput is a library to handle input devices in Wayland compositors + and to provide a generic X.Org input driver. It provides device + detection, device handling, input device event processing and + abstraction so minimize the amount of custom input code compositors + need to provide the common set of functionality that users expect. +endef + +define Build/InstallDev + $(INSTALL_DIR) $(1)/usr/include + $(CP) $(PKG_INSTALL_DIR)/usr/include/* $(1)/usr/include/ + $(INSTALL_DIR) $(1)/usr/lib + $(CP) $(PKG_INSTALL_DIR)/usr/lib/*.{la,so*} $(1)/usr/lib/ + $(INSTALL_DIR) $(1)/usr/lib/pkgconfig + $(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/* $(1)/usr/lib/pkgconfig/ +endef + +define Package/libinput/install + $(INSTALL_DIR) $(1)/usr/lib/udev + $(CP) $(PKG_INSTALL_DIR)/usr/lib/*.so* $(1)/usr/lib/ + $(CP) $(PKG_INSTALL_DIR)/usr/lib/udev/* $(1)/usr/lib/udev +endef + +$(eval $(call BuildPackage,libinput)) diff --git a/libs/libinput/patches/001-no-locale.patch b/libs/libinput/patches/001-no-locale.patch new file mode 100644 index 000000000..adb4aa8be --- /dev/null +++ b/libs/libinput/patches/001-no-locale.patch @@ -0,0 +1,22 @@ +--- a/src/libinput-util.c ++++ b/src/libinput-util.c +@@ -215,18 +215,10 @@ parse_mouse_wheel_click_angle_property(c + double + parse_trackpoint_accel_property(const char *prop) + { +- locale_t c_locale; + double accel; + char *endp; + +- /* Create a "C" locale to force strtod to use '.' as separator */ +- c_locale = newlocale(LC_NUMERIC_MASK, "C", (locale_t)0); +- if (c_locale == (locale_t)0) +- return 0.0; +- +- accel = strtod_l(prop, &endp, c_locale); +- +- freelocale(c_locale); ++ accel = strtod(prop, &endp); + + if (*endp != '\0') + return 0.0; From ace1918bf5592148b903777a31ef39bfbaf581ac Mon Sep 17 00:00:00 2001 From: Matthias Schiffer Date: Wed, 10 Jun 2015 21:19:41 +0200 Subject: [PATCH 541/681] ethtool: update to 4.0 Signed-off-by: Matthias Schiffer --- net/ethtool/Makefile | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/net/ethtool/Makefile b/net/ethtool/Makefile index a3924f4a5..1a0d832b6 100644 --- a/net/ethtool/Makefile +++ b/net/ethtool/Makefile @@ -8,13 +8,13 @@ include $(TOPDIR)/rules.mk PKG_NAME:=ethtool -PKG_VERSION:=3.18 -PKG_RELEASE:=2 +PKG_VERSION:=4.0 +PKG_RELEASE:=1 PKG_MAINTAINER:=Matthias Schiffer PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=@KERNEL/software/network/ethtool -PKG_MD5SUM:=fbf1a167b88a5966a2c56a2483af68c6 +PKG_MD5SUM:=37c77b02556255e4122c3636f75a8646 PKG_LICENSE:=GPL-2.0 PKG_LICENSE_FILES:=COPYING From a624a63150a88d957fe57428d6026cb258255700 Mon Sep 17 00:00:00 2001 From: Jonathan Bennett Date: Wed, 10 Jun 2015 16:58:56 -0500 Subject: [PATCH 542/681] Fwknopd: Set capture interface to wan by default Signed-off-by: Jonathan Bennett --- net/fwknop/files/fwknopd.init | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/net/fwknop/files/fwknopd.init b/net/fwknop/files/fwknopd.init index f8cda50ae..4c86493de 100644 --- a/net/fwknop/files/fwknopd.init +++ b/net/fwknop/files/fwknopd.init @@ -5,7 +5,7 @@ # list of contributors, see the file 'CREDITS'. # . /lib/functions.sh -START=60 +START=95 FWKNOPD_BIN=/usr/sbin/fwknopd @@ -36,6 +36,13 @@ reload() gen_confs() { [ -f /tmp/access.conf.tmp ] && rm /tmp/access.conf.tmp + if [`uci get fwknopd.@access[0].PCAP_INTF` = ""] + then + . /lib/functions/network.sh + network_get_physdev device wan + uci set fwknopd.@config[0].PCAP_INTF="$device" + uci commit + fi config_cb() { local type="$1" local name="$2" From d5c18252d4c4fe01ff582c17ce62721307c9cd26 Mon Sep 17 00:00:00 2001 From: heil Date: Thu, 11 Jun 2015 19:03:14 +0200 Subject: [PATCH 543/681] haproxy: add patches from upstream - [PATCH 1/2] BUG/MEDIUM: stats: properly initialize the scope before - [PATCH 2/2] BUG/MEDIUM: http: don't forward client shutdown without - [PATCH 3/8] BUG/MINOR: check: fix tcpcheck error message - [PATCH 4/8] CLEANUP: checks: fix double usage of cur / current_step - [PATCH 5/8] BUG/MEDIUM: checks: do not dereference head of a - [PATCH 6/8] CLEANUP: checks: simplify the loop processing of - [PATCH 7/8] BUG/MAJOR: checks: always check for end of list before - [PATCH 8/8] BUG/MEDIUM: checks: do not dereference a list as a - [PATCH 09/10] BUG/MEDIUM: peers: apply a random reconnection timeout - [PATCH 10/10] DOC: Update doc about weight, act and bck fields in the - [PATCH 11/14] MINOR: ssl: add a destructor to free allocated SSL - [PATCH 12/14] BUG/MEDIUM: ssl: fix tune.ssl.default-dh-param value - [PATCH 13/14] BUG/MINOR: cfgparse: fix typo in 'option httplog' error - [PATCH 14/14] BUG/MEDIUM: cfgparse: segfault when userlist is misused Signed-off-by: heil --- net/haproxy/Makefile | 2 +- ...-properly-initialize-the-scope-befor.patch | 32 ++++ ...don-t-forward-client-shutdown-withou.patch | 82 ++++++++ ...NOR-check-fix-tcpcheck-error-message.patch | 28 +++ ...ix-double-usage-of-cur-current_step-.patch | 178 ++++++++++++++++++ ...s-do-not-dereference-head-of-a-tcp-c.patch | 53 ++++++ ...implify-the-loop-processing-of-tcp-c.patch | 82 ++++++++ ...-always-check-for-end-of-list-before.patch | 90 +++++++++ ...s-do-not-dereference-a-list-as-a-tcp.patch | 116 ++++++++++++ ...-apply-a-random-reconnection-timeout.patch | 77 ++++++++ ...bout-weight-act-and-bck-fields-in-th.patch | 33 ++++ ...destructor-to-free-allocated-SSL-res.patch | 64 +++++++ ...ix-tune.ssl.default-dh-param-value-b.patch | 98 ++++++++++ ...se-fix-typo-in-option-httplog-error-.patch | 29 +++ ...rse-segfault-when-userlist-is-misuse.patch | 41 ++++ 15 files changed, 1004 insertions(+), 1 deletion(-) create mode 100644 net/haproxy/patches/0001-BUG-MEDIUM-stats-properly-initialize-the-scope-befor.patch create mode 100644 net/haproxy/patches/0002-BUG-MEDIUM-http-don-t-forward-client-shutdown-withou.patch create mode 100644 net/haproxy/patches/0003-BUG-MINOR-check-fix-tcpcheck-error-message.patch create mode 100644 net/haproxy/patches/0004-CLEANUP-checks-fix-double-usage-of-cur-current_step-.patch create mode 100644 net/haproxy/patches/0005-BUG-MEDIUM-checks-do-not-dereference-head-of-a-tcp-c.patch create mode 100644 net/haproxy/patches/0006-CLEANUP-checks-simplify-the-loop-processing-of-tcp-c.patch create mode 100644 net/haproxy/patches/0007-BUG-MAJOR-checks-always-check-for-end-of-list-before.patch create mode 100644 net/haproxy/patches/0008-BUG-MEDIUM-checks-do-not-dereference-a-list-as-a-tcp.patch create mode 100644 net/haproxy/patches/0009-BUG-MEDIUM-peers-apply-a-random-reconnection-timeout.patch create mode 100644 net/haproxy/patches/0010-DOC-Update-doc-about-weight-act-and-bck-fields-in-th.patch create mode 100644 net/haproxy/patches/0011-MINOR-ssl-add-a-destructor-to-free-allocated-SSL-res.patch create mode 100644 net/haproxy/patches/0012-BUG-MEDIUM-ssl-fix-tune.ssl.default-dh-param-value-b.patch create mode 100644 net/haproxy/patches/0013-BUG-MINOR-cfgparse-fix-typo-in-option-httplog-error-.patch create mode 100644 net/haproxy/patches/0014-BUG-MEDIUM-cfgparse-segfault-when-userlist-is-misuse.patch diff --git a/net/haproxy/Makefile b/net/haproxy/Makefile index e4de4d40b..0e6fbd505 100644 --- a/net/haproxy/Makefile +++ b/net/haproxy/Makefile @@ -10,7 +10,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=haproxy PKG_VERSION:=1.5.12 -PKG_RELEASE:=01 +PKG_RELEASE:=14 PKG_SOURCE:=haproxy-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://haproxy.1wt.eu/download/1.5/src/ PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/$(PKG_NAME)-$(PKG_VERSION) diff --git a/net/haproxy/patches/0001-BUG-MEDIUM-stats-properly-initialize-the-scope-befor.patch b/net/haproxy/patches/0001-BUG-MEDIUM-stats-properly-initialize-the-scope-befor.patch new file mode 100644 index 000000000..4ae6c9a84 --- /dev/null +++ b/net/haproxy/patches/0001-BUG-MEDIUM-stats-properly-initialize-the-scope-befor.patch @@ -0,0 +1,32 @@ +From 0aa5899911bbc765ba16ce52a80fa76230781779 Mon Sep 17 00:00:00 2001 +From: Willy Tarreau +Date: Mon, 4 May 2015 18:07:56 +0200 +Subject: [PATCH 1/2] BUG/MEDIUM: stats: properly initialize the scope before + dumping stats + +Issuing a "show sess all" prior to a "show stat" on the CLI results in no +proxy being dumped because the scope_len union member was not properly +reinitialized. + +This fix must be backported into 1.5. +(cherry picked from commit 6bcb95da5b9cb143088102b460c7bcb37c1b3d81) +--- + src/dumpstats.c | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/src/dumpstats.c b/src/dumpstats.c +index b616478..ca084ac 100644 +--- a/src/dumpstats.c ++++ b/src/dumpstats.c +@@ -1109,6 +1109,8 @@ static int stats_sock_parse_request(struct stream_interface *si, char *line) + arg++; + } + ++ appctx->ctx.stats.scope_str = 0; ++ appctx->ctx.stats.scope_len = 0; + appctx->ctx.stats.flags = 0; + if (strcmp(args[0], "show") == 0) { + if (strcmp(args[1], "stat") == 0) { +-- +2.0.5 + diff --git a/net/haproxy/patches/0002-BUG-MEDIUM-http-don-t-forward-client-shutdown-withou.patch b/net/haproxy/patches/0002-BUG-MEDIUM-http-don-t-forward-client-shutdown-withou.patch new file mode 100644 index 000000000..3875b8879 --- /dev/null +++ b/net/haproxy/patches/0002-BUG-MEDIUM-http-don-t-forward-client-shutdown-withou.patch @@ -0,0 +1,82 @@ +From 294e4676a3b775a7accb50eb8428f293c218b5e2 Mon Sep 17 00:00:00 2001 +From: Willy Tarreau +Date: Mon, 11 May 2015 18:30:33 +0200 +Subject: [PATCH 2/2] BUG/MEDIUM: http: don't forward client shutdown without + NOLINGER except for tunnels + +There's an issue related with shutting down POST transfers or closing the +connection after the end of the upload : the shutdown is forwarded to the +server regardless of the abortonclose option. The problem it causes is that +during a scan, brute force or whatever, it becomes possible that all source +ports are exhausted with all sockets in TIME_WAIT state. + +There are multiple issues at once in fact : + - no action is done for the close, it automatically happens at the lower + layers thanks for channel_auto_close(), so we cannot act on NOLINGER ; + + - we *do* want to continue to send a clean shutdown in tunnel mode because + some protocols transported over HTTP may need this, regardless of option + abortonclose, thus we can't set the option inconditionally + + - for all other modes, we do want to close the dirty way because we're + certain whether we've sent everything or not, and we don't want to eat + all source ports. + +The solution is a bit complex and applies to DONE/TUNNEL states : + + 1) disable automatic close for everything not a tunnel and not just + keep-alive / server-close. Force-close is now covered, as is HTTP/1.0 + which implicitly works in force-close mode ; + + 2) when processing option abortonclose, we know we can disable lingering + if the client has closed and the connection is not in tunnel mode. + +Since the last case above leads to a situation where the client side reports +an error, we know the connection will not be reused, so leaving the flag on +the stream-interface is safe. A client closing in the middle of the data +transmission already aborts the transaction so this case is not a problem. + +This fix must be backported to 1.5 where the problem was detected. +(cherry picked from commit bbfb6c40854925367ae5f9e8b22c5c9a18dc69d5) +--- + src/proto_http.c | 14 ++++++++++---- + 1 file changed, 10 insertions(+), 4 deletions(-) + +diff --git a/src/proto_http.c b/src/proto_http.c +index 0ac3a47..5db64b5 100644 +--- a/src/proto_http.c ++++ b/src/proto_http.c +@@ -5452,9 +5452,10 @@ int http_request_forward_body(struct session *s, struct channel *req, int an_bit + msg->sov -= msg->next; + msg->next = 0; + +- /* for keep-alive we don't want to forward closes on DONE */ +- if ((txn->flags & TX_CON_WANT_MSK) == TX_CON_WANT_KAL || +- (txn->flags & TX_CON_WANT_MSK) == TX_CON_WANT_SCL) ++ /* we don't want to forward closes on DONE except in ++ * tunnel mode. ++ */ ++ if ((txn->flags & TX_CON_WANT_MSK) != TX_CON_WANT_TUN) + channel_dont_close(req); + if (http_resync_states(s)) { + /* some state changes occurred, maybe the analyser +@@ -5478,10 +5479,15 @@ int http_request_forward_body(struct session *s, struct channel *req, int an_bit + * want to monitor the client's connection and forward + * any shutdown notification to the server, which will + * decide whether to close or to go on processing the +- * request. ++ * request. We only do that in tunnel mode, and not in ++ * other modes since it can be abused to exhaust source ++ * ports. + */ + if (s->be->options & PR_O_ABRT_CLOSE) { + channel_auto_read(req); ++ if ((req->flags & (CF_SHUTR|CF_READ_NULL)) && ++ ((txn->flags & TX_CON_WANT_MSK) != TX_CON_WANT_TUN)) ++ s->si[1].flags |= SI_FL_NOLINGER; + channel_auto_close(req); + } + else if (s->txn.meth == HTTP_METH_POST) { +-- +2.0.5 + diff --git a/net/haproxy/patches/0003-BUG-MINOR-check-fix-tcpcheck-error-message.patch b/net/haproxy/patches/0003-BUG-MINOR-check-fix-tcpcheck-error-message.patch new file mode 100644 index 000000000..9bb33119e --- /dev/null +++ b/net/haproxy/patches/0003-BUG-MINOR-check-fix-tcpcheck-error-message.patch @@ -0,0 +1,28 @@ +From 68e4fc2b9910dd090c5e729203b72444f75aaa75 Mon Sep 17 00:00:00 2001 +From: Baptiste Assmann +Date: Fri, 1 May 2015 08:09:29 +0200 +Subject: [PATCH 3/8] BUG/MINOR: check: fix tcpcheck error message + +add the keyword 'string' when required (error in a tcpcheck expect +string) +(cherry picked from commit 96a5c9b57738c05ecce7822093b9c4118123dc1e) +--- + src/checks.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/checks.c b/src/checks.c +index 71debb6..8b53f97 100644 +--- a/src/checks.c ++++ b/src/checks.c +@@ -614,7 +614,7 @@ static void chk_report_conn_err(struct connection *conn, int errno_bck, int expi + } + else if (check->last_started_step && check->last_started_step->action == TCPCHK_ACT_EXPECT) { + if (check->last_started_step->string) +- chunk_appendf(chk, " (string '%s')", check->last_started_step->string); ++ chunk_appendf(chk, " (expect string '%s')", check->last_started_step->string); + else if (check->last_started_step->expect_regex) + chunk_appendf(chk, " (expect regex)"); + } +-- +2.0.5 + diff --git a/net/haproxy/patches/0004-CLEANUP-checks-fix-double-usage-of-cur-current_step-.patch b/net/haproxy/patches/0004-CLEANUP-checks-fix-double-usage-of-cur-current_step-.patch new file mode 100644 index 000000000..6acba4e87 --- /dev/null +++ b/net/haproxy/patches/0004-CLEANUP-checks-fix-double-usage-of-cur-current_step-.patch @@ -0,0 +1,178 @@ +From 4f889006269e4d3f802de46f280ed198a15e3a69 Mon Sep 17 00:00:00 2001 +From: Willy Tarreau +Date: Wed, 13 May 2015 11:23:01 +0200 +Subject: [PATCH 4/8] CLEANUP: checks: fix double usage of cur / current_step + in tcp-checks + +This cleanup is a preliminary requirement to the upcoming fixes for +the bug that affect tcp-check's improper use of lists. It will have +to be backported to 1.5 though it will not easily apply. + +There are two variables pointing to the current rule within the loop, +and either one or the other is used depending on the code blocks, +making it much harder to apply checks to fix the list walking bug. +So first get rid of "cur" and only focus on current_step. +(cherry picked from commit ce8c42a37a44a1e0cb94e81abb7cc2baf3d0ef80) + +[wt: 1.5 doesn't have comments so this patch differs significantly + from 1.6, but it's needed for the next batch of fixes] +--- + src/checks.c | 57 ++++++++++++++++++++++++++++----------------------------- + 1 file changed, 28 insertions(+), 29 deletions(-) + +diff --git a/src/checks.c b/src/checks.c +index 8b53f97..cfdfe8c 100644 +--- a/src/checks.c ++++ b/src/checks.c +@@ -1859,7 +1859,7 @@ static int tcpcheck_get_step_id(struct server *s) + static void tcpcheck_main(struct connection *conn) + { + char *contentptr; +- struct tcpcheck_rule *cur, *next; ++ struct tcpcheck_rule *next; + int done = 0, ret = 0; + struct check *check = conn->owner; + struct server *s = check->server; +@@ -1916,15 +1916,11 @@ static void tcpcheck_main(struct connection *conn) + check->bo->o = 0; + check->bi->p = check->bi->data; + check->bi->i = 0; +- cur = check->current_step = LIST_ELEM(head->n, struct tcpcheck_rule *, list); ++ check->current_step = LIST_ELEM(head->n, struct tcpcheck_rule *, list); + t->expire = tick_add(now_ms, MS_TO_TICKS(check->inter)); + if (s->proxy->timeout.check) + t->expire = tick_add_ifset(now_ms, s->proxy->timeout.check); + } +- /* keep on processing step */ +- else { +- cur = check->current_step; +- } + + /* It's only the rules which will enable send/recv */ + __conn_data_stop_both(conn); +@@ -1934,7 +1930,7 @@ static void tcpcheck_main(struct connection *conn) + * or if we're about to send a string that does not fit in the remaining space. + */ + if (check->bo->o && +- (&cur->list == head || ++ (&check->current_step->list == head || + check->current_step->action != TCPCHK_ACT_SEND || + check->current_step->string_len >= buffer_total_space(check->bo))) { + +@@ -1949,14 +1945,17 @@ static void tcpcheck_main(struct connection *conn) + } + + /* did we reach the end ? If so, let's check that everything was sent */ +- if (&cur->list == head) { ++ if (&check->current_step->list == head) { + if (check->bo->o) + goto out_need_io; + break; + } + +- /* have 'next' point to the next rule or NULL if we're on the last one */ +- next = (struct tcpcheck_rule *)cur->list.n; ++ /* have 'next' point to the next rule or NULL if we're on the ++ * last one, connect() needs this. ++ */ ++ next = (struct tcpcheck_rule *)check->current_step->list.n; ++ + if (&next->list == head) + next = NULL; + +@@ -2058,8 +2057,7 @@ static void tcpcheck_main(struct connection *conn) + } + + /* allow next rule */ +- cur = (struct tcpcheck_rule *)cur->list.n; +- check->current_step = cur; ++ check->current_step = (struct tcpcheck_rule *)check->current_step->list.n; + + /* don't do anything until the connection is established */ + if (!(conn->flags & CO_FL_CONNECTED)) { +@@ -2113,8 +2111,7 @@ static void tcpcheck_main(struct connection *conn) + *check->bo->p = '\0'; /* to make gdb output easier to read */ + + /* go to next rule and try to send */ +- cur = (struct tcpcheck_rule *)cur->list.n; +- check->current_step = cur; ++ check->current_step = (struct tcpcheck_rule *)check->current_step->list.n; + } /* end 'send' */ + else if (check->current_step->action == TCPCHK_ACT_EXPECT) { + if (unlikely(check->result == CHK_RES_FAILED)) +@@ -2167,14 +2164,14 @@ static void tcpcheck_main(struct connection *conn) + goto out_end_tcpcheck; + } + +- if (!done && (cur->string != NULL) && (check->bi->i < cur->string_len) ) ++ if (!done && (check->current_step->string != NULL) && (check->bi->i < check->current_step->string_len) ) + continue; /* try to read more */ + + tcpcheck_expect: +- if (cur->string != NULL) +- ret = my_memmem(contentptr, check->bi->i, cur->string, cur->string_len) != NULL; +- else if (cur->expect_regex != NULL) +- ret = regex_exec(cur->expect_regex, contentptr); ++ if (check->current_step->string != NULL) ++ ret = my_memmem(contentptr, check->bi->i, check->current_step->string, check->current_step->string_len) != NULL; ++ else if (check->current_step->expect_regex != NULL) ++ ret = regex_exec(check->current_step->expect_regex, contentptr); + + if (!ret && !done) + continue; /* try to read more */ +@@ -2182,11 +2179,11 @@ static void tcpcheck_main(struct connection *conn) + /* matched */ + if (ret) { + /* matched but we did not want to => ERROR */ +- if (cur->inverse) { ++ if (check->current_step->inverse) { + /* we were looking for a string */ +- if (cur->string != NULL) { ++ if (check->current_step->string != NULL) { + chunk_printf(&trash, "TCPCHK matched unwanted content '%s' at step %d", +- cur->string, tcpcheck_get_step_id(s)); ++ check->current_step->string, tcpcheck_get_step_id(s)); + } + else { + /* we were looking for a regex */ +@@ -2198,8 +2195,9 @@ static void tcpcheck_main(struct connection *conn) + } + /* matched and was supposed to => OK, next step */ + else { +- cur = (struct tcpcheck_rule*)cur->list.n; +- check->current_step = cur; ++ /* allow next rule */ ++ check->current_step = (struct tcpcheck_rule *)check->current_step->list.n; ++ + if (check->current_step->action == TCPCHK_ACT_EXPECT) + goto tcpcheck_expect; + __conn_data_stop_recv(conn); +@@ -2208,9 +2206,10 @@ static void tcpcheck_main(struct connection *conn) + else { + /* not matched */ + /* not matched and was not supposed to => OK, next step */ +- if (cur->inverse) { +- cur = (struct tcpcheck_rule*)cur->list.n; +- check->current_step = cur; ++ if (check->current_step->inverse) { ++ /* allow next rule */ ++ check->current_step = (struct tcpcheck_rule *)check->current_step->list.n; ++ + if (check->current_step->action == TCPCHK_ACT_EXPECT) + goto tcpcheck_expect; + __conn_data_stop_recv(conn); +@@ -2218,9 +2217,9 @@ static void tcpcheck_main(struct connection *conn) + /* not matched but was supposed to => ERROR */ + else { + /* we were looking for a string */ +- if (cur->string != NULL) { ++ if (check->current_step->string != NULL) { + chunk_printf(&trash, "TCPCHK did not match content '%s' at step %d", +- cur->string, tcpcheck_get_step_id(s)); ++ check->current_step->string, tcpcheck_get_step_id(s)); + } + else { + /* we were looking for a regex */ +-- +2.0.5 + diff --git a/net/haproxy/patches/0005-BUG-MEDIUM-checks-do-not-dereference-head-of-a-tcp-c.patch b/net/haproxy/patches/0005-BUG-MEDIUM-checks-do-not-dereference-head-of-a-tcp-c.patch new file mode 100644 index 000000000..f4bc68315 --- /dev/null +++ b/net/haproxy/patches/0005-BUG-MEDIUM-checks-do-not-dereference-head-of-a-tcp-c.patch @@ -0,0 +1,53 @@ +From b94a6d5a37499ce6649ad58f4a8c4664779abd8b Mon Sep 17 00:00:00 2001 +From: Willy Tarreau +Date: Wed, 13 May 2015 11:38:17 +0200 +Subject: [PATCH 5/8] BUG/MEDIUM: checks: do not dereference head of a + tcp-check at the end + +When the end of the list is reached, the current step's action is checked +to know if we must poll or not. Unfortunately, the main reason for going +there is that we walked past the end of list and current_step points to +the head. We cannot dereference ->action since it does not belong to this +structure and can definitely crash if the address is not mapped. + +This bug is unlikely to cause a crash since the action appears just after +the list, and corresponds to the "char *check_req" pointer in the proxy +struct, and it seems that we can't go there with current_step being null. +At worst it can cause the check to register for recv events. + +This fix needs to be backported to 1.5 since the code is incorrect there +as well. +(cherry picked from commit 53c5a049e1f4dbf67412472e23690dc6b3c8d0f8) +--- + src/checks.c | 5 +++-- + 1 file changed, 3 insertions(+), 2 deletions(-) + +diff --git a/src/checks.c b/src/checks.c +index cfdfe8c..a887be1 100644 +--- a/src/checks.c ++++ b/src/checks.c +@@ -2237,10 +2237,12 @@ static void tcpcheck_main(struct connection *conn) + goto out_end_tcpcheck; + + out_need_io: ++ /* warning, current_step may now point to the head */ + if (check->bo->o) + __conn_data_want_send(conn); + +- if (check->current_step->action == TCPCHK_ACT_EXPECT) ++ if (&check->current_step->list != head && ++ check->current_step->action == TCPCHK_ACT_EXPECT) + __conn_data_want_recv(conn); + return; + +@@ -2256,7 +2258,6 @@ static void tcpcheck_main(struct connection *conn) + conn->flags |= CO_FL_ERROR; + + __conn_data_stop_both(conn); +- + return; + } + +-- +2.0.5 + diff --git a/net/haproxy/patches/0006-CLEANUP-checks-simplify-the-loop-processing-of-tcp-c.patch b/net/haproxy/patches/0006-CLEANUP-checks-simplify-the-loop-processing-of-tcp-c.patch new file mode 100644 index 000000000..45ba96022 --- /dev/null +++ b/net/haproxy/patches/0006-CLEANUP-checks-simplify-the-loop-processing-of-tcp-c.patch @@ -0,0 +1,82 @@ +From ebb2bceb34d7787453548627ed0e99c60354672b Mon Sep 17 00:00:00 2001 +From: Willy Tarreau +Date: Wed, 13 May 2015 11:59:14 +0200 +Subject: [PATCH 6/8] CLEANUP: checks: simplify the loop processing of + tcp-checks + +There is some unobvious redundancy between the various ways we can leave +the loop. Some of them can be factored out. So now we leave the loop when +we can't go further, whether it's caused by reaching the end of the rules +or by a blocking I/O. +(cherry picked from commit 263013d031d754c9f96de0d0cb5afcc011af6441) +[wt: this patch is required for the next fix] +--- + src/checks.c | 26 ++++++++++++++------------ + 1 file changed, 14 insertions(+), 12 deletions(-) + +diff --git a/src/checks.c b/src/checks.c +index a887be1..a0c42f2 100644 +--- a/src/checks.c ++++ b/src/checks.c +@@ -1926,8 +1926,10 @@ static void tcpcheck_main(struct connection *conn) + __conn_data_stop_both(conn); + + while (1) { +- /* we have to try to flush the output buffer before reading, at the end, +- * or if we're about to send a string that does not fit in the remaining space. ++ /* We have to try to flush the output buffer before reading, at ++ * the end, or if we're about to send a string that does not fit ++ * in the remaining space. That explains why we break out of the ++ * loop after this control. + */ + if (check->bo->o && + (&check->current_step->list == head || +@@ -1940,16 +1942,12 @@ static void tcpcheck_main(struct connection *conn) + __conn_data_stop_both(conn); + goto out_end_tcpcheck; + } +- goto out_need_io; ++ break; + } + } + +- /* did we reach the end ? If so, let's check that everything was sent */ +- if (&check->current_step->list == head) { +- if (check->bo->o) +- goto out_need_io; ++ if (&check->current_step->list == head) + break; +- } + + /* have 'next' point to the next rule or NULL if we're on the + * last one, connect() needs this. +@@ -2131,7 +2129,7 @@ static void tcpcheck_main(struct connection *conn) + } + } + else +- goto out_need_io; ++ break; + } + + /* mark the step as started */ +@@ -2233,10 +2231,14 @@ static void tcpcheck_main(struct connection *conn) + } /* end expect */ + } /* end loop over double chained step list */ + +- set_server_check_status(check, HCHK_STATUS_L7OKD, "(tcp-check)"); +- goto out_end_tcpcheck; ++ /* We're waiting for some I/O to complete, we've reached the end of the ++ * rules, or both. Do what we have to do, otherwise we're done. ++ */ ++ if (&check->current_step->list == head && !check->bo->o) { ++ set_server_check_status(check, HCHK_STATUS_L7OKD, "(tcp-check)"); ++ goto out_end_tcpcheck; ++ } + +- out_need_io: + /* warning, current_step may now point to the head */ + if (check->bo->o) + __conn_data_want_send(conn); +-- +2.0.5 + diff --git a/net/haproxy/patches/0007-BUG-MAJOR-checks-always-check-for-end-of-list-before.patch b/net/haproxy/patches/0007-BUG-MAJOR-checks-always-check-for-end-of-list-before.patch new file mode 100644 index 000000000..7c2d562f3 --- /dev/null +++ b/net/haproxy/patches/0007-BUG-MAJOR-checks-always-check-for-end-of-list-before.patch @@ -0,0 +1,90 @@ +From 97fccc87f1297d189ee80735e5b8746c34956eda Mon Sep 17 00:00:00 2001 +From: Willy Tarreau +Date: Wed, 13 May 2015 12:08:21 +0200 +Subject: [PATCH 7/8] BUG/MAJOR: checks: always check for end of list before + proceeding + +This is the most important fix of this series. There's a risk of endless +loop and crashes caused by the fact that we go past the head of the list +when skipping to next rule, without checking if it's still a valid element. +Most of the time, the ->action field is checked, which points to the proxy's +check_req pointer (generally NULL), meaning the element is confused with a +TCPCHK_ACT_SEND action. + +The situation was accidently made worse with the addition of tcp-check +comment since it also skips list elements. However, since the action that +makes it go forward is TCPCHK_ACT_COMMENT (3), there's little chance to +see this as a valid pointer, except on 64-bit machines where it can match +the end of a check_req string pointer. + +This fix heavily depends on previous cleanup and both must be backported +to 1.5 where the bug is present. +(cherry picked from commit f2c87353a7f8160930b5f342bb6d6ad0991ee3d1) +[wt: this patch differs significantly from 1.6 since we don't have comments] +--- + src/cfgparse.c | 4 +++- + src/checks.c | 12 ++++++++++++ + 2 files changed, 15 insertions(+), 1 deletion(-) + +diff --git a/src/cfgparse.c b/src/cfgparse.c +index 746c7eb..dba59d1 100644 +--- a/src/cfgparse.c ++++ b/src/cfgparse.c +@@ -4368,7 +4368,9 @@ stats_error_parsing: + l = (struct list *)&curproxy->tcpcheck_rules; + if (l->p != l->n) { + tcpcheck = (struct tcpcheck_rule *)l->n; +- if (tcpcheck && tcpcheck->action != TCPCHK_ACT_CONNECT) { ++ ++ if (&tcpcheck->list != &curproxy->tcpcheck_rules ++ && tcpcheck->action != TCPCHK_ACT_CONNECT) { + Alert("parsing [%s:%d] : first step MUST also be a 'connect' when there is a 'connect' step in the tcp-check ruleset.\n", + file, linenum); + err_code |= ERR_ALERT | ERR_FATAL; +diff --git a/src/checks.c b/src/checks.c +index a0c42f2..e13d561 100644 +--- a/src/checks.c ++++ b/src/checks.c +@@ -2057,6 +2057,9 @@ static void tcpcheck_main(struct connection *conn) + /* allow next rule */ + check->current_step = (struct tcpcheck_rule *)check->current_step->list.n; + ++ if (&check->current_step->list == head) ++ break; ++ + /* don't do anything until the connection is established */ + if (!(conn->flags & CO_FL_CONNECTED)) { + /* update expire time, should be done by process_chk */ +@@ -2110,6 +2113,9 @@ static void tcpcheck_main(struct connection *conn) + + /* go to next rule and try to send */ + check->current_step = (struct tcpcheck_rule *)check->current_step->list.n; ++ ++ if (&check->current_step->list == head) ++ break; + } /* end 'send' */ + else if (check->current_step->action == TCPCHK_ACT_EXPECT) { + if (unlikely(check->result == CHK_RES_FAILED)) +@@ -2196,6 +2202,9 @@ static void tcpcheck_main(struct connection *conn) + /* allow next rule */ + check->current_step = (struct tcpcheck_rule *)check->current_step->list.n; + ++ if (&check->current_step->list == head) ++ break; ++ + if (check->current_step->action == TCPCHK_ACT_EXPECT) + goto tcpcheck_expect; + __conn_data_stop_recv(conn); +@@ -2208,6 +2217,9 @@ static void tcpcheck_main(struct connection *conn) + /* allow next rule */ + check->current_step = (struct tcpcheck_rule *)check->current_step->list.n; + ++ if (&check->current_step->list == head) ++ break; ++ + if (check->current_step->action == TCPCHK_ACT_EXPECT) + goto tcpcheck_expect; + __conn_data_stop_recv(conn); +-- +2.0.5 + diff --git a/net/haproxy/patches/0008-BUG-MEDIUM-checks-do-not-dereference-a-list-as-a-tcp.patch b/net/haproxy/patches/0008-BUG-MEDIUM-checks-do-not-dereference-a-list-as-a-tcp.patch new file mode 100644 index 000000000..454026097 --- /dev/null +++ b/net/haproxy/patches/0008-BUG-MEDIUM-checks-do-not-dereference-a-list-as-a-tcp.patch @@ -0,0 +1,116 @@ +From 5bff05986c501d9ffb67873b60472f9c2a2e41be Mon Sep 17 00:00:00 2001 +From: Willy Tarreau +Date: Wed, 13 May 2015 12:24:53 +0200 +Subject: [PATCH 8/8] BUG/MEDIUM: checks: do not dereference a list as a + tcpcheck struct + +The method used to skip to next rule in the list is wrong, it assumes +that the list element starts at the same offset as the rule. It happens +to be true on most architectures since the list is the first element for +now but it's definitely wrong. Now the code doesn't crash anymore when +the struct list is moved anywhere else in the struct tcpcheck_rule. + +This fix must be backported to 1.5. +(cherry picked from commit 5581c27b579cbfc53afb0ca04cdeebe7e2200131) +[wt: changes from 1.6 : no tcp-check comments, check becomes s->proxy] +--- + src/cfgparse.c | 18 +++++++----------- + src/checks.c | 15 +++++++++------ + 2 files changed, 16 insertions(+), 17 deletions(-) + +diff --git a/src/cfgparse.c b/src/cfgparse.c +index dba59d1..e04eff8 100644 +--- a/src/cfgparse.c ++++ b/src/cfgparse.c +@@ -4362,20 +4362,16 @@ stats_error_parsing: + const char *ptr_arg; + int cur_arg; + struct tcpcheck_rule *tcpcheck; +- struct list *l; + + /* check if first rule is also a 'connect' action */ +- l = (struct list *)&curproxy->tcpcheck_rules; +- if (l->p != l->n) { +- tcpcheck = (struct tcpcheck_rule *)l->n; ++ tcpcheck = LIST_NEXT(&curproxy->tcpcheck_rules, struct tcpcheck_rule *, list); + +- if (&tcpcheck->list != &curproxy->tcpcheck_rules +- && tcpcheck->action != TCPCHK_ACT_CONNECT) { +- Alert("parsing [%s:%d] : first step MUST also be a 'connect' when there is a 'connect' step in the tcp-check ruleset.\n", +- file, linenum); +- err_code |= ERR_ALERT | ERR_FATAL; +- goto out; +- } ++ if (&tcpcheck->list != &curproxy->tcpcheck_rules ++ && tcpcheck->action != TCPCHK_ACT_CONNECT) { ++ Alert("parsing [%s:%d] : first step MUST also be a 'connect' when there is a 'connect' step in the tcp-check ruleset.\n", ++ file, linenum); ++ err_code |= ERR_ALERT | ERR_FATAL; ++ goto out; + } + + cur_arg = 2; +diff --git a/src/checks.c b/src/checks.c +index e13d561..27a23b2 100644 +--- a/src/checks.c ++++ b/src/checks.c +@@ -1444,7 +1444,10 @@ static int connect_chk(struct task *t) + quickack = check->type == 0 || check->type == PR_O2_TCPCHK_CHK; + + if (check->type == PR_O2_TCPCHK_CHK && !LIST_ISEMPTY(&s->proxy->tcpcheck_rules)) { +- struct tcpcheck_rule *r = (struct tcpcheck_rule *) s->proxy->tcpcheck_rules.n; ++ struct tcpcheck_rule *r; ++ ++ r = LIST_NEXT(&s->proxy->tcpcheck_rules, struct tcpcheck_rule *, list); ++ + /* if first step is a 'connect', then tcpcheck_main must run it */ + if (r->action == TCPCHK_ACT_CONNECT) { + tcpcheck_main(conn); +@@ -1952,7 +1955,7 @@ static void tcpcheck_main(struct connection *conn) + /* have 'next' point to the next rule or NULL if we're on the + * last one, connect() needs this. + */ +- next = (struct tcpcheck_rule *)check->current_step->list.n; ++ next = LIST_NEXT(&check->current_step->list, struct tcpcheck_rule *, list); + + if (&next->list == head) + next = NULL; +@@ -2055,7 +2058,7 @@ static void tcpcheck_main(struct connection *conn) + } + + /* allow next rule */ +- check->current_step = (struct tcpcheck_rule *)check->current_step->list.n; ++ check->current_step = LIST_NEXT(&check->current_step->list, struct tcpcheck_rule *, list); + + if (&check->current_step->list == head) + break; +@@ -2112,7 +2115,7 @@ static void tcpcheck_main(struct connection *conn) + *check->bo->p = '\0'; /* to make gdb output easier to read */ + + /* go to next rule and try to send */ +- check->current_step = (struct tcpcheck_rule *)check->current_step->list.n; ++ check->current_step = LIST_NEXT(&check->current_step->list, struct tcpcheck_rule *, list); + + if (&check->current_step->list == head) + break; +@@ -2200,7 +2203,7 @@ static void tcpcheck_main(struct connection *conn) + /* matched and was supposed to => OK, next step */ + else { + /* allow next rule */ +- check->current_step = (struct tcpcheck_rule *)check->current_step->list.n; ++ check->current_step = LIST_NEXT(&check->current_step->list, struct tcpcheck_rule *, list); + + if (&check->current_step->list == head) + break; +@@ -2215,7 +2218,7 @@ static void tcpcheck_main(struct connection *conn) + /* not matched and was not supposed to => OK, next step */ + if (check->current_step->inverse) { + /* allow next rule */ +- check->current_step = (struct tcpcheck_rule *)check->current_step->list.n; ++ check->current_step = LIST_NEXT(&check->current_step->list, struct tcpcheck_rule *, list); + + if (&check->current_step->list == head) + break; +-- +2.0.5 + diff --git a/net/haproxy/patches/0009-BUG-MEDIUM-peers-apply-a-random-reconnection-timeout.patch b/net/haproxy/patches/0009-BUG-MEDIUM-peers-apply-a-random-reconnection-timeout.patch new file mode 100644 index 000000000..96aa743aa --- /dev/null +++ b/net/haproxy/patches/0009-BUG-MEDIUM-peers-apply-a-random-reconnection-timeout.patch @@ -0,0 +1,77 @@ +From 76a06b2804bcdba0fb2c19f834bdb511ce3cf344 Mon Sep 17 00:00:00 2001 +From: Willy Tarreau +Date: Wed, 20 May 2015 10:39:04 +0200 +Subject: [PATCH 09/10] BUG/MEDIUM: peers: apply a random reconnection timeout + +Commit 9ff95bb ("BUG/MEDIUM: peers: correctly configure the client timeout") +uncovered an old bug in the peers : upon disconnect, we reconnect immediately. +This sometimes results in both ends to do the same thing in parallel causing +a loop of connect/accept/close/close that can last several seconds. The risk +of occurrence of the trouble increases with latency, and is emphasized by the +fact that idle connections are now frequently recycled (after 5s of idle). + +In order to avoid this we must apply a random delay before reconnecting. +Fortunately the mechanism already supports a reconnect delay, so here we +compute the random timeout when killing a session. The delay is 50ms plus +a random between 0 and 2 seconds. Ideally an exponential back-off would +be preferred but it's preferable to keep the fix simple. + +This bug was reported by Marco Corte. + +This fix must be backported to 1.5 since the fix above was backported into +1.5.12. +(cherry picked from commit b4e34da692d8a7f6837ad16b3389f5830dbc11d2) +--- + src/peers.c | 14 +++++++++++--- + 1 file changed, 11 insertions(+), 3 deletions(-) + +diff --git a/src/peers.c b/src/peers.c +index b196d88..159f0a4 100644 +--- a/src/peers.c ++++ b/src/peers.c +@@ -1063,6 +1063,7 @@ static void peer_session_forceshutdown(struct session * session) + { + struct stream_interface *oldsi = NULL; + struct appctx *appctx = NULL; ++ struct peer_session *ps; + int i; + + for (i = 0; i <= 1; i++) { +@@ -1079,6 +1080,14 @@ static void peer_session_forceshutdown(struct session * session) + if (!appctx) + return; + ++ ps = (struct peer_session *)appctx->ctx.peers.ptr; ++ /* we're killing a connection, we must apply a random delay before ++ * retrying otherwise the other end will do the same and we can loop ++ * for a while. ++ */ ++ if (ps) ++ ps->reconnect = tick_add(now_ms, MS_TO_TICKS(50 + random() % 2000)); ++ + /* call release to reinit resync states if needed */ + peer_session_release(oldsi); + appctx->st0 = PEER_SESS_ST_END; +@@ -1352,8 +1361,8 @@ static struct task *process_peer_sync(struct task * task) + if (!ps->session) { + /* no active session */ + if (ps->statuscode == 0 || +- ps->statuscode == PEER_SESS_SC_SUCCESSCODE || + ((ps->statuscode == PEER_SESS_SC_CONNECTCODE || ++ ps->statuscode == PEER_SESS_SC_SUCCESSCODE || + ps->statuscode == PEER_SESS_SC_CONNECTEDCODE) && + tick_is_expired(ps->reconnect, now_ms))) { + /* connection never tried +@@ -1364,8 +1373,7 @@ static struct task *process_peer_sync(struct task * task) + /* retry a connect */ + ps->session = peer_session_create(ps->peer, ps); + } +- else if (ps->statuscode == PEER_SESS_SC_CONNECTCODE || +- ps->statuscode == PEER_SESS_SC_CONNECTEDCODE) { ++ else if (!tick_is_expired(ps->reconnect, now_ms)) { + /* If previous session failed during connection + * but reconnection timer is not expired */ + +-- +2.0.5 + diff --git a/net/haproxy/patches/0010-DOC-Update-doc-about-weight-act-and-bck-fields-in-th.patch b/net/haproxy/patches/0010-DOC-Update-doc-about-weight-act-and-bck-fields-in-th.patch new file mode 100644 index 000000000..563ed64b8 --- /dev/null +++ b/net/haproxy/patches/0010-DOC-Update-doc-about-weight-act-and-bck-fields-in-th.patch @@ -0,0 +1,33 @@ +From ac372e18c422841a9f1197b4238637c470e8edca Mon Sep 17 00:00:00 2001 +From: Pavlos Parissis +Date: Sat, 2 May 2015 20:30:44 +0200 +Subject: [PATCH 10/10] DOC: Update doc about weight, act and bck fields in the + statistics + +Reorder description of the mentioned fields in order to match the +order of types +(cherry picked from commit 1f673c72c11d011bbd24e309d3155384eddf7a46) +--- + doc/configuration.txt | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/doc/configuration.txt b/doc/configuration.txt +index a9d497e..6f5eeb1 100644 +--- a/doc/configuration.txt ++++ b/doc/configuration.txt +@@ -13240,9 +13240,9 @@ S (Servers). + server. The server value counts the number of times that server was + switched away from. + 17. status [LFBS]: status (UP/DOWN/NOLB/MAINT/MAINT(via)...) +- 18. weight [..BS]: server weight (server), total weight (backend) +- 19. act [..BS]: server is active (server), number of active servers (backend) +- 20. bck [..BS]: server is backup (server), number of backup servers (backend) ++ 18. weight [..BS]: total weight (backend), server weight (server) ++ 19. act [..BS]: number of active servers (backend), server is active (server) ++ 20. bck [..BS]: number of backup servers (backend), server is backup (server) + 21. chkfail [...S]: number of failed checks. (Only counts checks failed when + the server is up.) + 22. chkdown [..BS]: number of UP->DOWN transitions. The backend counter counts +-- +2.0.5 + diff --git a/net/haproxy/patches/0011-MINOR-ssl-add-a-destructor-to-free-allocated-SSL-res.patch b/net/haproxy/patches/0011-MINOR-ssl-add-a-destructor-to-free-allocated-SSL-res.patch new file mode 100644 index 000000000..86be3b965 --- /dev/null +++ b/net/haproxy/patches/0011-MINOR-ssl-add-a-destructor-to-free-allocated-SSL-res.patch @@ -0,0 +1,64 @@ +From 269a02fbb332da8faf6c2a614d45d5b5018816d1 Mon Sep 17 00:00:00 2001 +From: Remi Gacogne +Date: Thu, 28 May 2015 16:39:47 +0200 +Subject: [PATCH 11/14] MINOR: ssl: add a destructor to free allocated SSL + ressources + +Using valgrind or another memory leak tracking tool is easier +when the memory internally allocated by OpenSSL is cleanly released +at shutdown. +(cherry picked from commit d3a23c3eb8c0950d26204568a133207099923494) +--- + src/ssl_sock.c | 36 ++++++++++++++++++++++++++++++++++++ + 1 file changed, 36 insertions(+) + +diff --git a/src/ssl_sock.c b/src/ssl_sock.c +index d0f4d01..a78fc6a 100644 +--- a/src/ssl_sock.c ++++ b/src/ssl_sock.c +@@ -4717,6 +4717,42 @@ static void __ssl_sock_init(void) + cfg_register_keywords(&cfg_kws); + } + ++__attribute__((destructor)) ++static void __ssl_sock_deinit(void) ++{ ++#ifndef OPENSSL_NO_DH ++ if (local_dh_1024) { ++ DH_free(local_dh_1024); ++ local_dh_1024 = NULL; ++ } ++ ++ if (local_dh_2048) { ++ DH_free(local_dh_2048); ++ local_dh_2048 = NULL; ++ } ++ ++ if (local_dh_4096) { ++ DH_free(local_dh_4096); ++ local_dh_4096 = NULL; ++ } ++ ++ if (local_dh_8192) { ++ DH_free(local_dh_8192); ++ local_dh_8192 = NULL; ++ } ++#endif ++ ++ ERR_remove_state(0); ++ ERR_free_strings(); ++ ++ EVP_cleanup(); ++ ++#if OPENSSL_VERSION_NUMBER >= 0x00907000L ++ CRYPTO_cleanup_all_ex_data(); ++#endif ++} ++ ++ + /* + * Local variables: + * c-indent-level: 8 +-- +2.0.5 + diff --git a/net/haproxy/patches/0012-BUG-MEDIUM-ssl-fix-tune.ssl.default-dh-param-value-b.patch b/net/haproxy/patches/0012-BUG-MEDIUM-ssl-fix-tune.ssl.default-dh-param-value-b.patch new file mode 100644 index 000000000..37600c8a2 --- /dev/null +++ b/net/haproxy/patches/0012-BUG-MEDIUM-ssl-fix-tune.ssl.default-dh-param-value-b.patch @@ -0,0 +1,98 @@ +From 5d769ca828fdb055052b3dbc232864bdf2853c9f Mon Sep 17 00:00:00 2001 +From: Remi Gacogne +Date: Thu, 28 May 2015 16:23:00 +0200 +Subject: [PATCH 12/14] BUG/MEDIUM: ssl: fix tune.ssl.default-dh-param value + being overwritten +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Hervé Commowick reported that the logic used to avoid complaining about +ssl-default-dh-param not being set when static DH params are present +in the certificate file was clearly wrong when more than one sni_ctx +is used. +This patch stores whether static DH params are being used for each +SSL_CTX individually, and does not overwrite the value of +tune.ssl.default-dh-param. +(cherry picked from commit 4f902b88323927c9d25d391a809e3678ac31df41) +--- + src/ssl_sock.c | 28 +++++++++++++++++++++++----- + 1 file changed, 23 insertions(+), 5 deletions(-) + +diff --git a/src/ssl_sock.c b/src/ssl_sock.c +index a78fc6a..0f7819b 100644 +--- a/src/ssl_sock.c ++++ b/src/ssl_sock.c +@@ -47,6 +47,9 @@ + #ifdef SSL_CTRL_SET_TLSEXT_STATUS_REQ_CB + #include + #endif ++#ifndef OPENSSL_NO_DH ++#include ++#endif + + #include + #include +@@ -107,6 +110,7 @@ int sslconns = 0; + int totalsslconns = 0; + + #ifndef OPENSSL_NO_DH ++static int ssl_dh_ptr_index = -1; + static DH *local_dh_1024 = NULL; + static DH *local_dh_2048 = NULL; + static DH *local_dh_4096 = NULL; +@@ -1076,10 +1080,12 @@ int ssl_sock_load_dh_params(SSL_CTX *ctx, const char *file) + if (dh) { + ret = 1; + SSL_CTX_set_tmp_dh(ctx, dh); +- /* Setting ssl default dh param to the size of the static DH params +- found in the file. This way we know that there is no use +- complaining later about ssl-default-dh-param not being set. */ +- global.tune.ssl_default_dh_param = DH_size(dh) * 8; ++ ++ if (ssl_dh_ptr_index >= 0) { ++ /* store a pointer to the DH params to avoid complaining about ++ ssl-default-dh-param not being set for this SSL_CTX */ ++ SSL_CTX_set_ex_data(ctx, ssl_dh_ptr_index, dh); ++ } + } + else { + /* Clear openssl global errors stack */ +@@ -1274,6 +1280,12 @@ static int ssl_sock_load_cert_file(const char *path, struct bind_conf *bind_conf + * the tree, so it will be discovered and cleaned in time. + */ + #ifndef OPENSSL_NO_DH ++ /* store a NULL pointer to indicate we have not yet loaded ++ a custom DH param file */ ++ if (ssl_dh_ptr_index >= 0) { ++ SSL_CTX_set_ex_data(ctx, ssl_dh_ptr_index, NULL); ++ } ++ + ret = ssl_sock_load_dh_params(ctx, path); + if (ret < 0) { + if (err) +@@ -1593,7 +1605,9 @@ int ssl_sock_prepare_ctx(struct bind_conf *bind_conf, SSL_CTX *ctx, struct proxy + + /* If tune.ssl.default-dh-param has not been set and + no static DH params were in the certificate file. */ +- if (global.tune.ssl_default_dh_param == 0) { ++ if (global.tune.ssl_default_dh_param == 0 && ++ (ssl_dh_ptr_index == -1 || ++ SSL_CTX_get_ex_data(ctx, ssl_dh_ptr_index) == NULL)) { + ciphers = ctx->cipher_list; + + if (ciphers) { +@@ -4715,6 +4729,10 @@ static void __ssl_sock_init(void) + bind_register_keywords(&bind_kws); + srv_register_keywords(&srv_kws); + cfg_register_keywords(&cfg_kws); ++ ++#ifndef OPENSSL_NO_DH ++ ssl_dh_ptr_index = SSL_CTX_get_ex_new_index(0, NULL, NULL, NULL, NULL); ++#endif + } + + __attribute__((destructor)) +-- +2.0.5 + diff --git a/net/haproxy/patches/0013-BUG-MINOR-cfgparse-fix-typo-in-option-httplog-error-.patch b/net/haproxy/patches/0013-BUG-MINOR-cfgparse-fix-typo-in-option-httplog-error-.patch new file mode 100644 index 000000000..d09f18df5 --- /dev/null +++ b/net/haproxy/patches/0013-BUG-MINOR-cfgparse-fix-typo-in-option-httplog-error-.patch @@ -0,0 +1,29 @@ +From 629b1c000b26f0031246b9b529680b275a14118f Mon Sep 17 00:00:00 2001 +From: William Lallemand +Date: Thu, 28 May 2015 18:02:48 +0200 +Subject: [PATCH 13/14] BUG/MINOR: cfgparse: fix typo in 'option httplog' error + message + +The error message was displaying the wrong argument when 'option +httplog' took a wrong argument. +(cherry picked from commit 77063bc0c6ceb4257c4e2c08411811ecc48be1aa) +--- + src/cfgparse.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/cfgparse.c b/src/cfgparse.c +index e04eff8..3c3383d 100644 +--- a/src/cfgparse.c ++++ b/src/cfgparse.c +@@ -3792,7 +3792,7 @@ stats_error_parsing: + curproxy->options2 |= PR_O2_CLFLOG; + logformat = clf_http_log_format; + } else { +- Alert("parsing [%s:%d] : keyword '%s' only supports option 'clf'.\n", file, linenum, args[2]); ++ Alert("parsing [%s:%d] : keyword '%s' only supports option 'clf'.\n", file, linenum, args[1]); + err_code |= ERR_ALERT | ERR_FATAL; + goto out; + } +-- +2.0.5 + diff --git a/net/haproxy/patches/0014-BUG-MEDIUM-cfgparse-segfault-when-userlist-is-misuse.patch b/net/haproxy/patches/0014-BUG-MEDIUM-cfgparse-segfault-when-userlist-is-misuse.patch new file mode 100644 index 000000000..329505b7b --- /dev/null +++ b/net/haproxy/patches/0014-BUG-MEDIUM-cfgparse-segfault-when-userlist-is-misuse.patch @@ -0,0 +1,41 @@ +From faf3315f77c527e6e1d027deb7e853cdf6af5858 Mon Sep 17 00:00:00 2001 +From: William Lallemand +Date: Thu, 28 May 2015 18:03:51 +0200 +Subject: [PATCH 14/14] BUG/MEDIUM: cfgparse: segfault when userlist is misused + +If the 'userlist' keyword parsing returns an error and no userlist were +previously created. The parsing of 'user' and 'group' leads to NULL +derefence. + +The userlist pointer is now tested to prevent this issue. +(cherry picked from commit 4ac9f546120d42be8147e3d90588e7b9738af0cc) +--- + src/cfgparse.c | 5 +++++ + 1 file changed, 5 insertions(+) + +diff --git a/src/cfgparse.c b/src/cfgparse.c +index 3c3383d..392a78d 100644 +--- a/src/cfgparse.c ++++ b/src/cfgparse.c +@@ -5668,6 +5668,9 @@ cfg_parse_users(const char *file, int linenum, char **args, int kwm) + goto out; + } + ++ if (!userlist) ++ goto out; ++ + for (ag = userlist->groups; ag; ag = ag->next) + if (!strcmp(ag->name, args[1])) { + Warning("parsing [%s:%d]: ignoring duplicated group '%s' in userlist '%s'.\n", +@@ -5718,6 +5721,8 @@ cfg_parse_users(const char *file, int linenum, char **args, int kwm) + err_code |= ERR_ALERT | ERR_FATAL; + goto out; + } ++ if (!userlist) ++ goto out; + + for (newuser = userlist->users; newuser; newuser = newuser->next) + if (!strcmp(newuser->user, args[1])) { +-- +2.0.5 + From 99263ff5734fef8525fc055f69721b6e041af7f3 Mon Sep 17 00:00:00 2001 From: Ted Hess Date: Thu, 11 Jun 2015 16:17:41 -0400 Subject: [PATCH 544/681] giflib: Import from oldpackages, update to latest version, add myself as maintainer Signed-off-by: Ted Hess --- libs/giflib/Makefile | 61 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 61 insertions(+) create mode 100644 libs/giflib/Makefile diff --git a/libs/giflib/Makefile b/libs/giflib/Makefile new file mode 100644 index 000000000..efeabee68 --- /dev/null +++ b/libs/giflib/Makefile @@ -0,0 +1,61 @@ +# +# Copyright (C) 2006-2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=giflib +PKG_VERSION:=5.1.1 +PKG_RELEASE:=1 + +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 +PKG_SOURCE_URL:=@SF/giflib +PKG_MD5SUM:=1c39333192712788c6568c78a949f13e + +PKG_MAINTAINER:=Ted Hess + +PKG_LICENSE:=MIT +PKG_LICENSE_FILES:=COPYING + +PKG_FIXUP:=autoreconf +PKG_REMOVE_FILES:=autogen.sh aclocal.m4 + +include $(INCLUDE_DIR)/package.mk + +define Package/giflib + SECTION:=libs + CATEGORY:=Libraries + TITLE:=GIF libraries + URL:=http://sourceforge.net/projects/giflib +endef + +define Package/giflib/description + giflib is a library for reading and writing gif images. + It is API and ABI compatible with libungif which was in wide use while + the LZW compression algorithm was patented. +endef + +TARGET_CFLAGS += $(FPIC) +CONFIGURE_ARGS += --enable-x11=no + +define Build/Compile + $(MAKE) -C $(PKG_BUILD_DIR) +endef + +define Build/InstallDev + $(INSTALL_DIR) $(1)/usr/{lib,include} + $(CP) $(PKG_BUILD_DIR)/lib/.libs/lib*so* $(1)/usr/lib + $(CP) $(PKG_BUILD_DIR)/lib/.libs/libgif.a $(1)/usr/lib + $(CP) $(PKG_BUILD_DIR)/lib/libgif.la $(1)/usr/lib + $(CP) $(PKG_BUILD_DIR)/lib/*.h $(1)/usr/include/ +endef + +define Package/giflib/install + $(INSTALL_DIR) $(1)/usr/lib + $(CP) $(PKG_BUILD_DIR)/lib/.libs/lib*so* $(1)/usr/lib/ +endef + +$(eval $(call BuildPackage,giflib)) From 939f2e2dc5a4cc40d1fbccc0bc8ac567ecd74996 Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Fri, 12 Jun 2015 08:00:39 +0200 Subject: [PATCH 545/681] libextractor: build giflib plugin Cherry-picked r34095 'Add giflib-5.1.0 compatibility' into patches to fix build against recent versions of giflib. Signed-off-by: Daniel Golle --- libs/libextractor/Makefile | 5 ++-- .../001-backport-support-for-giflib-5-1.patch | 26 +++++++++++++++++++ 2 files changed, 29 insertions(+), 2 deletions(-) create mode 100644 libs/libextractor/patches/001-backport-support-for-giflib-5-1.patch diff --git a/libs/libextractor/Makefile b/libs/libextractor/Makefile index 266e443cf..1bb15c71d 100644 --- a/libs/libextractor/Makefile +++ b/libs/libextractor/Makefile @@ -9,10 +9,10 @@ include $(TOPDIR)/rules.mk PKG_NAME:=libextractor PKG_VERSION:=1.3 -PKG_RELEASE:=2 +PKG_RELEASE:=3 # ToDo: -# - package missing optional dependencies: libexiv2, giflib, gsf, librpm, smf, tidy +# - package missing optional dependencies: libexiv2, gsf, librpm, smf, tidy PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=@GNU/$(PKG_NAME) @@ -29,6 +29,7 @@ PLUGINS:= \ deb \ dvi \ flac:+libflac \ + gif:+giflib \ gstreamer:+libgstreamer1:+libgst1app:+libgst1pbutils:+libgst1tag \ it \ jpeg:+libjpeg \ diff --git a/libs/libextractor/patches/001-backport-support-for-giflib-5-1.patch b/libs/libextractor/patches/001-backport-support-for-giflib-5-1.patch new file mode 100644 index 000000000..7b7a2df4a --- /dev/null +++ b/libs/libextractor/patches/001-backport-support-for-giflib-5-1.patch @@ -0,0 +1,26 @@ +--- a/src/plugins/gif_extractor.c ++++ b/src/plugins/gif_extractor.c +@@ -78,7 +78,11 @@ EXTRACTOR_gif_extract_method (struct EXT + if (gif_file == NULL || gif_error != 0) + { + if (gif_file != NULL) ++#if GIFLIB_MAJOR < 5 || GIFLIB_MINOR < 1 + EGifCloseFile (gif_file); ++#else ++ EGifCloseFile (gif_file, NULL); ++#endif + return; /* not a GIF */ + } + #endif +@@ -133,7 +137,11 @@ EXTRACTOR_gif_extract_method (struct EXT + DGifGetExtensionNext(gif_file, &ext)) && + (NULL != ext) ) ; /* keep going */ + } ++#if defined (GIF_LIB_VERSION) || GIFLIB_MAJOR < 5 || GIFLIB_MINOR < 1 + DGifCloseFile (gif_file); ++#else ++ DGifCloseFile (gif_file, NULL); ++#endif + } + + /* end of gif_extractor.c */ From 1ff278f98c683bde4c1fad3e4c246f57d627fe56 Mon Sep 17 00:00:00 2001 From: Michael Heimpold Date: Fri, 12 Jun 2015 23:59:29 +0200 Subject: [PATCH 546/681] php5: update to 5.6.10 This fixes the following CVEs: - in PCRE: CVE-2015-2325, CVE-2015-2326 - in sqlite3: CVE-2015-3414, CVE-2015-3415, CVE-2015-3416 Signed-off-by: Michael Heimpold --- lang/php5/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lang/php5/Makefile b/lang/php5/Makefile index e5a1aa24d..8772e9c1f 100644 --- a/lang/php5/Makefile +++ b/lang/php5/Makefile @@ -8,7 +8,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=php -PKG_VERSION:=5.6.9 +PKG_VERSION:=5.6.10 PKG_RELEASE:=1 PKG_MAINTAINER:=W. Michael Petullo @@ -18,7 +18,7 @@ PKG_LICENSE_FILES:=LICENSE PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 PKG_SOURCE_URL:=http://www.php.net/distributions/ -PKG_MD5SUM:=561f37377833772ace776143c5687884 +PKG_MD5SUM:=83b17e0cdc72a3a486f5e6342e76c45e PKG_FIXUP:=libtool autoreconf PKG_BUILD_PARALLEL:=1 From e797b5ff78a9c5a5e35e063c3a7c0450104d756c Mon Sep 17 00:00:00 2001 From: Nikos Mavrogiannopoulos Date: Fri, 12 Jun 2015 19:29:55 +0200 Subject: [PATCH 547/681] transmission: use procd That allows to restart transmission when it crashes, to limit the memory used by it, as well as be jailed in the directories it is supposed to access. Signed-off-by: Nikos Mavrogiannopoulos --- net/transmission/files/transmission.init | 62 +++++++++++++----------- 1 file changed, 35 insertions(+), 27 deletions(-) diff --git a/net/transmission/files/transmission.init b/net/transmission/files/transmission.init index 669e710ec..000043b7a 100644 --- a/net/transmission/files/transmission.init +++ b/net/transmission/files/transmission.init @@ -1,7 +1,9 @@ #!/bin/sh /etc/rc.common -# Copyright (C) 2010-2012 OpenWrt.org +# Copyright (C) 2010-2015 OpenWrt.org START=99 +USE_PROCD=1 + LIST_SEP=" " @@ -40,14 +42,23 @@ section_enabled() { [ $enabled -gt 0 ] } -start_instance() { - local s="$1" +transmission() { + local cfg="$1" + #give transmission 3/5 of the memory of the system + local USE + local MEM=`grep MemTotal /proc/meminfo|sed 's/ \+/ /g'|cut -d ' ' -f 2` + if test "$MEM" -gt 1;then + USE=`expr $MEM \* 3000 / 5` + fi + local user + local download_dir section_enabled "$section" || return 1 - config_get config_dir "$s" 'config_dir' '/var/etc/transmission' - config_get user "$s" 'user' + config_get config_dir "$cfg" 'config_dir' '/var/etc/transmission' + config_get user "$cfg" 'user' + config_get download_dir "$cfg" 'download_dir' '/var/etc/transmission' config_file="$config_dir/settings.json" [ -d $config_dir ] || { @@ -58,7 +69,7 @@ start_instance() { echo "{" > $config_file - append_params "$s" \ + append_params "$cfg" \ alt_speed_down alt_speed_enabled alt_speed_time_begin alt_speed_time_day \ alt_speed_time_enabled alt_speed_time_end alt_speed_up blocklist_enabled \ cache_size_mb download_queue_enabled download_queue_size \ @@ -76,7 +87,7 @@ start_instance() { umask upload_slots_per_torrent utp_enabled scrape_paused_torrents \ watch_dir_enabled - append_params_quotes "$s" \ + append_params_quotes "$cfg" \ blocklist_url bind_address_ipv4 bind_address_ipv6 download_dir incomplete_dir \ peer_congestion_algorithm peer_socket_tos rpc_bind_address rpc_password rpc_url \ rpc_username rpc_whitelist script_torrent_done_filename watch_dir @@ -84,28 +95,25 @@ start_instance() { echo "\""invalid-key"\": false" >> $config_file echo "}" >> $config_file - SERVICE_UID="$user" \ - service_start /usr/bin/transmission-daemon -g $config_dir + procd_open_instance + procd_set_param command /usr/bin/transmission-daemon -g $config_dir -f + procd_set_param respawn + procd_set_param user "$user" + if test -z "$USE";then + procd_set_param limits core="0 0" + else + procd_set_param limits core="0 0" as="$USE $USE" + logger -t transmission "Starting with $USE virt mem" + fi + + procd_add_jail transmission log + procd_add_jail_mount $config_file + procd_add_jail_mount_rw $download_dir + procd_close_instance } -stop_instance() { - local s="$1" - local user - - section_enabled "$section" || return 1 - - config_get user "$s" 'user' - - SERVICE_UID="$user" \ - service_stop /usr/bin/transmission-daemon -} - -start() { +start_service() { config_load 'transmission' - config_foreach start_instance 'transmission' + config_foreach transmission 'transmission' } -stop() { - config_load 'transmission' - config_foreach stop_instance 'transmission' -} From 6091831a5b6257f79a42bc5ed6591f89c127752b Mon Sep 17 00:00:00 2001 From: Nikos Mavrogiannopoulos Date: Sat, 13 Jun 2015 00:28:47 +0200 Subject: [PATCH 548/681] transmission: make the memory percentage allowed configurable Signed-off-by: Nikos Mavrogiannopoulos --- net/transmission/files/transmission.config | 1 + net/transmission/files/transmission.init | 12 +++++++----- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/net/transmission/files/transmission.config b/net/transmission/files/transmission.config index a8fd56d9b..31e2d5af4 100644 --- a/net/transmission/files/transmission.config +++ b/net/transmission/files/transmission.config @@ -2,6 +2,7 @@ config transmission option enabled 0 option config_dir '/tmp/transmission' #option user 'nobody' + option mem_percentage 50 option alt_speed_down 50 option alt_speed_enabled false option alt_speed_time_begin 540 diff --git a/net/transmission/files/transmission.init b/net/transmission/files/transmission.init index 000043b7a..d9b52bb67 100644 --- a/net/transmission/files/transmission.init +++ b/net/transmission/files/transmission.init @@ -44,21 +44,23 @@ section_enabled() { transmission() { local cfg="$1" - #give transmission 3/5 of the memory of the system local USE - local MEM=`grep MemTotal /proc/meminfo|sed 's/ \+/ /g'|cut -d ' ' -f 2` - if test "$MEM" -gt 1;then - USE=`expr $MEM \* 3000 / 5` - fi local user local download_dir + local mem_percentage section_enabled "$section" || return 1 config_get config_dir "$cfg" 'config_dir' '/var/etc/transmission' config_get user "$cfg" 'user' config_get download_dir "$cfg" 'download_dir' '/var/etc/transmission' + config_get mem_percentage "$cfg" 'mem_percentage' '50' + + local MEM=$(grep MemTotal /proc/meminfo|sed 's/ \+/ /g'|cut -d ' ' -f 2) + if test "$MEM" -gt 1;then + USE=$(expr $MEM \* $mem_percentage \* 10) + fi config_file="$config_dir/settings.json" [ -d $config_dir ] || { From 1f8033c63f59f7133bfd452063d61777931313f5 Mon Sep 17 00:00:00 2001 From: Gergely Kiss Date: Sun, 14 Jun 2015 18:01:25 +0200 Subject: [PATCH 549/681] libevhtp-1.1: package added seafile-server seems to have compatibility issues with the 1.2 branch of libevtp. This package makes it possible to build seafile against a supported version, 1.1.7. --- libs/libevhtp-1.1/Makefile | 47 +++++++++++++++++++ .../patches/010-CMakeLists-fixes.patch | 29 ++++++++++++ 2 files changed, 76 insertions(+) create mode 100644 libs/libevhtp-1.1/Makefile create mode 100644 libs/libevhtp-1.1/patches/010-CMakeLists-fixes.patch diff --git a/libs/libevhtp-1.1/Makefile b/libs/libevhtp-1.1/Makefile new file mode 100644 index 000000000..9d3cdbc26 --- /dev/null +++ b/libs/libevhtp-1.1/Makefile @@ -0,0 +1,47 @@ +# +# Copyright (C) 2007-2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=libevhtp-1.1 +PKG_VERSION:=1.1.7 +PKG_RELEASE:=1 +PKG_LICENSE:=BSD-3-Clause + +PKG_SOURCE_PROTO:=git +PKG_SOURCE_URL:=https://github.com/ellzey/libevhtp.git +PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) +PKG_SOURCE_VERSION:=f70c920d4d8d4146ff662867f47c4b5854045b3c +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.gz + +include $(INCLUDE_DIR)/package.mk + +define Package/libevhtp-1.1 + SECTION:=libs + CATEGORY:=Libraries + TITLE:=A more flexible replacement for libevent's httpd API - compatibility package + MAINTAINER:=Gergely Kiss + URL:=https://github.com/ellzey/libevhtp + DEPENDS:=+libevent2 +libevent2-pthreads +libpthread +endef + +define Package/libevhtp-1.1/description + Libevhtp was created as a replacement API for Libevent's current HTTP API. + + NOTE: This is an older version required for compatibility reasons. The latest version has its own package named "libevhtp". +endef + +include $(INCLUDE_DIR)/cmake.mk + +define Build/InstallDev + $(INSTALL_DIR) $(1)/usr/include/libevhtp-1.1/ + $(INSTALL_DIR) $(1)/usr/lib/libevhtp-1.1/ + $(CP) $(PKG_INSTALL_DIR)/usr/include/* $(1)/usr/include/ + $(CP) $(PKG_INSTALL_DIR)/usr/lib/* $(1)/usr/lib/ +endef + +$(eval $(call BuildPackage,libevhtp-1.1)) diff --git a/libs/libevhtp-1.1/patches/010-CMakeLists-fixes.patch b/libs/libevhtp-1.1/patches/010-CMakeLists-fixes.patch new file mode 100644 index 000000000..970bb76a0 --- /dev/null +++ b/libs/libevhtp-1.1/patches/010-CMakeLists-fixes.patch @@ -0,0 +1,29 @@ +diff -rupN libevhtp-1.1-1.1.7-orig/CMakeLists.txt libevhtp-1.1-1.1.7/CMakeLists.txt +--- libevhtp-1.1-1.1.7-orig/CMakeLists.txt 2015-06-14 00:15:28.000000000 +0200 ++++ libevhtp-1.1-1.1.7/CMakeLists.txt 2015-06-14 00:21:17.441299942 +0200 +@@ -54,7 +54,7 @@ if (NOT HAVE_SYS_UN) + set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DNO_SYS_UN") + endif(NOT HAVE_SYS_UN) + +-OPTION(EVHTP_DISABLE_SSL "Disable ssl support" OFF) ++OPTION(EVHTP_DISABLE_SSL "Disable ssl support" ON) + OPTION(EVHTP_DISABLE_EVTHR "Disable evthread support" OFF) + OPTION(EVHTP_DIABLE_REGEX "Disable regex support" OFF) + +@@ -182,11 +182,11 @@ endif() + add_library(libevhtp STATIC ${LIBEVHTP_SOURCES} ${ONIG_SOURCES}) + set_target_properties(libevhtp PROPERTIES OUTPUT_NAME "evhtp") + +-install (TARGETS libevhtp DESTINATION lib) +-install (FILES evhtp.h DESTINATION include) +-install (FILES htparse/htparse.h DESTINATION include) +-install (FILES evthr/evthr.h DESTINATION include) +-install (FILES oniguruma/onigposix.h DESTINATION include) ++install (TARGETS libevhtp DESTINATION lib/libevhtp-1.1) ++install (FILES evhtp.h DESTINATION include/libevhtp-1.1) ++install (FILES htparse/htparse.h DESTINATION include/libevhtp-1.1) ++install (FILES evthr/evthr.h DESTINATION include/libevhtp-1.1) ++install (FILES oniguruma/onigposix.h DESTINATION include/libevhtp-1.1) + + find_library (LIB_DL dl) + set (SYS_LIBS ${LIB_DL}) From 4b897fe76483bc809111818f8300c937d2cc2504 Mon Sep 17 00:00:00 2001 From: Gergely Kiss Date: Sun, 14 Jun 2015 18:04:23 +0200 Subject: [PATCH 550/681] seafile: build against libevhtp 1.1 instead of 1.2 This fixes multiple issues like upload/download problems on seahub and also makes it possible to use the new HTTP syncing feature which doesn't work with libevhtp 1.2.10 at all. --- net/seafile-server/Makefile | 7 ++++--- .../patches/050-libevhtp-search-path-fix.patch | 17 +++++++++++++++++ 2 files changed, 21 insertions(+), 3 deletions(-) create mode 100644 net/seafile-server/patches/050-libevhtp-search-path-fix.patch diff --git a/net/seafile-server/Makefile b/net/seafile-server/Makefile index 8e3541656..f671a799f 100644 --- a/net/seafile-server/Makefile +++ b/net/seafile-server/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=seafile-server PKG_VERSION:=4.1.2 -PKG_RELEASE=$(PKG_SOURCE_VERSION) +PKG_RELEASE=$(PKG_SOURCE_VERSION)-2 PKG_LICENSE:=GPL-3.0 PKG_SOURCE_PROTO:=git @@ -31,7 +31,7 @@ define Package/seafile-server URL:=http://seafile.com/ DEPENDS:=+shadow-useradd +libarchive +libopenssl +glib2 +libsearpc +seafile-ccnet +seafile-seahub \ +sqlite3-cli +python-mysql +jansson +libevent2 +libevent2-openssl +zlib +libzdb +libsqlite3 \ - +libmysqlclient +libevhtp +libpthread +libuuid \ + +libmysqlclient +libpthread +libuuid \ +bash +sudo +procps +procps-pkill $(ICONV_DEPENDS) EXTRA_DEPENDS:=seafile-ccnet (=4.1.2-a73109f09af4ecc49cdc4c57cdde51b38e15c31a), seafile-seahub (=4.1.2-3fb1288f920de03a4e2e6a06b60671ce98971742) endef @@ -54,7 +54,8 @@ CONFIGURE_ARGS += --disable-riak \ --disable-console PKG_BUILD_DEPENDS:=vala/host \ - libsearpc/host + libsearpc/host \ + libevhtp-1.1 TARGET_LDFLAGS += -Wl,-rpath-link=$(STAGING_DIR)/usr/lib -liconv \ -L$(STAGING_DIR)/usr/lib/mysql -lmysqlclient -lz diff --git a/net/seafile-server/patches/050-libevhtp-search-path-fix.patch b/net/seafile-server/patches/050-libevhtp-search-path-fix.patch new file mode 100644 index 000000000..cb7e545d1 --- /dev/null +++ b/net/seafile-server/patches/050-libevhtp-search-path-fix.patch @@ -0,0 +1,17 @@ +diff -rupN seafile-server-4.1.2.orig/server/Makefile.am seafile-server-4.1.2/server/Makefile.am +--- seafile-server-4.1.2.orig/server/Makefile.am 2015-05-02 11:04:11.000000000 +0200 ++++ seafile-server-4.1.2/server/Makefile.am 2015-06-14 01:28:55.924834806 +0200 +@@ -4,6 +4,7 @@ AM_CFLAGS = -DPKGDATADIR=\"$(pkgdatadir) + -DPACKAGE_DATA_DIR=\""$(pkgdatadir)"\" \ + -DSEAFILE_SERVER \ + -DFULL_FEATURE \ ++ -I$(STAGING_DIR)/usr/include/libevhtp-1.1 \ + -I$(top_srcdir)/include \ + -I$(top_srcdir)/lib \ + -I$(top_builddir)/lib \ +@@ -122,4 +123,4 @@ seaf_server_LDADD = @CCNET_LIBS@ \ + @SEARPC_LIBS@ @JANSSON_LIBS@ @ZDB_LIBS@ @CURL_LIBS@ ${LIB_WS32} @ZLIB_LIBS@ \ + @LIBARCHIVE_LIBS@ + +-seaf_server_LDFLAGS = @STATIC_COMPILE@ @SERVER_PKG_RPATH@ ++seaf_server_LDFLAGS = @STATIC_COMPILE@ @SERVER_PKG_RPATH@ -L$(STAGING_DIR)/usr/lib/libevhtp-1.1 From 15330a002e8df88e708e78fce02626e8e8bd133c Mon Sep 17 00:00:00 2001 From: Maxim Storchak Date: Sun, 14 Jun 2015 22:13:43 +0300 Subject: [PATCH 551/681] smartmontools: update to 6.4 Signed-off-by: Maxim Storchak --- utils/smartmontools/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/utils/smartmontools/Makefile b/utils/smartmontools/Makefile index b09165a09..3632fca9b 100644 --- a/utils/smartmontools/Makefile +++ b/utils/smartmontools/Makefile @@ -9,12 +9,12 @@ include $(TOPDIR)/rules.mk include $(INCLUDE_DIR)/uclibc++.mk PKG_NAME:=smartmontools -PKG_VERSION:=6.3 +PKG_VERSION:=6.4 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=@SF/smartmontools -PKG_MD5SUM:=2ea0c62206e110192a97b59291b17f54 +PKG_MD5SUM:=56812c8312fd123ed40ef65afde1049e PKG_MAINTAINER:=Maxim Storchak PKG_LICENSE:=GPL-2.0+ PKG_LICENSE_FILES:=COPYING From 6161f40875e044e34b0875f95235417a6d5e20d3 Mon Sep 17 00:00:00 2001 From: Nikos Mavrogiannopoulos Date: Sun, 14 Jun 2015 21:21:01 +0200 Subject: [PATCH 552/681] Optimized /proc/meminfo parsing Suggested by @jow- Signed-off-by: Nikos Mavrogiannopoulos --- net/transmission/files/transmission.init | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/net/transmission/files/transmission.init b/net/transmission/files/transmission.init index d9b52bb67..463e8ddb9 100644 --- a/net/transmission/files/transmission.init +++ b/net/transmission/files/transmission.init @@ -57,7 +57,7 @@ transmission() { config_get download_dir "$cfg" 'download_dir' '/var/etc/transmission' config_get mem_percentage "$cfg" 'mem_percentage' '50' - local MEM=$(grep MemTotal /proc/meminfo|sed 's/ \+/ /g'|cut -d ' ' -f 2) + local MEM=$(sed -ne 's!^MemTotal:[[:space:]]*\([0-9]*\) kB$!\1!p' /proc/meminfo) if test "$MEM" -gt 1;then USE=$(expr $MEM \* $mem_percentage \* 10) fi From 3a81a9b9fae2410c32d72974b9e04340c4cc8389 Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Sun, 14 Jun 2015 22:19:34 +0200 Subject: [PATCH 553/681] lvm2: update source and refresh patches Signed-off-by: Daniel Golle --- utils/lvm2/Makefile | 4 ++-- utils/lvm2/patches/002-const-stdio.patch | 12 ++++-------- utils/lvm2/patches/003-no-mallinfo.patch | 6 ++---- 3 files changed, 8 insertions(+), 14 deletions(-) diff --git a/utils/lvm2/Makefile b/utils/lvm2/Makefile index 7a2e39e38..38b9d63e2 100644 --- a/utils/lvm2/Makefile +++ b/utils/lvm2/Makefile @@ -9,13 +9,13 @@ include $(TOPDIR)/rules.mk PKG_NAME:=LVM2 -PKG_VERSION:=2.02.120 +PKG_VERSION:=2.02.121 PKG_RELEASE:=1 PKG_LICENSE:=GPL-2.0 LGPL-2.1 PKG_SOURCE:=$(PKG_NAME).$(PKG_VERSION).tgz PKG_SOURCE_URL:=ftp://sources.redhat.com/pub/lvm2 -PKG_MD5SUM:=326df8542d3a2376da907e98a0888ccf +PKG_MD5SUM:=702c61bf07a8fc6dc0db6e9d323d9f6d PKG_MAINTAINER:=Daniel Golle PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME).$(PKG_VERSION) diff --git a/utils/lvm2/patches/002-const-stdio.patch b/utils/lvm2/patches/002-const-stdio.patch index 5605f0dd1..399485831 100644 --- a/utils/lvm2/patches/002-const-stdio.patch +++ b/utils/lvm2/patches/002-const-stdio.patch @@ -1,7 +1,5 @@ -Index: LVM2.2.02.120/lib/commands/toolcontext.c -=================================================================== ---- LVM2.2.02.120.orig/lib/commands/toolcontext.c -+++ LVM2.2.02.120/lib/commands/toolcontext.c +--- a/lib/commands/toolcontext.c ++++ b/lib/commands/toolcontext.c @@ -1637,8 +1637,10 @@ struct cmd_context *create_toolcontext(u unsigned threaded) { @@ -31,10 +29,8 @@ Index: LVM2.2.02.120/lib/commands/toolcontext.c if (cmd->linebuffer) { /* Reset stream buffering to defaults */ if (is_valid_fd(STDIN_FILENO) && -Index: LVM2.2.02.120/tools/lvmcmdline.c -=================================================================== ---- LVM2.2.02.120.orig/tools/lvmcmdline.c -+++ LVM2.2.02.120/tools/lvmcmdline.c +--- a/tools/lvmcmdline.c ++++ b/tools/lvmcmdline.c @@ -1606,6 +1606,7 @@ int lvm_split(char *str, int *argc, char /* Make sure we have always valid filedescriptors 0,1,2 */ static int _check_standard_fds(void) diff --git a/utils/lvm2/patches/003-no-mallinfo.patch b/utils/lvm2/patches/003-no-mallinfo.patch index d37a5bfa3..be9a6625d 100644 --- a/utils/lvm2/patches/003-no-mallinfo.patch +++ b/utils/lvm2/patches/003-no-mallinfo.patch @@ -1,7 +1,5 @@ -Index: LVM2.2.02.119/lib/mm/memlock.c -=================================================================== ---- LVM2.2.02.119.orig/lib/mm/memlock.c -+++ LVM2.2.02.119/lib/mm/memlock.c +--- a/lib/mm/memlock.c ++++ b/lib/mm/memlock.c @@ -161,12 +161,15 @@ static void _allocate_memory(void) * memory on free(), this is good enough for our purposes. */ From b065013042b54053e6be86c88f8d3761b2b07b2c Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Sun, 14 Jun 2015 22:33:19 +0200 Subject: [PATCH 554/681] libevdev: work around macro definition missing in uClibc Signed-off-by: Daniel Golle --- .../010-no-clock-monotonic-raw-in-uclibc.patch | 14 ++++++++++++++ 1 file changed, 14 insertions(+) create mode 100644 libs/libevdev/patches/010-no-clock-monotonic-raw-in-uclibc.patch diff --git a/libs/libevdev/patches/010-no-clock-monotonic-raw-in-uclibc.patch b/libs/libevdev/patches/010-no-clock-monotonic-raw-in-uclibc.patch new file mode 100644 index 000000000..a11ac1e46 --- /dev/null +++ b/libs/libevdev/patches/010-no-clock-monotonic-raw-in-uclibc.patch @@ -0,0 +1,14 @@ +--- a/test/test-libevdev-init.c ++++ b/test/test-libevdev-init.c +@@ -32,6 +32,11 @@ + #include + #include "test-common.h" + ++/* work-around CLOCK_MONOTONIC_RAW definition missing in uClibc */ ++#ifndef CLOCK_MONOTONIC_RAW ++#define CLOCK_MONOTONIC_RAW 4 ++#endif ++ + START_TEST(test_new_device) + { + struct libevdev *dev; From 8b22db13d21a44cb946f2717c1ae10b2ae7ba65f Mon Sep 17 00:00:00 2001 From: Nikos Mavrogiannopoulos Date: Mon, 15 Jun 2015 00:22:40 +0200 Subject: [PATCH 555/681] libseccomp: corrected typo in patch Signed-off-by: Nikos Mavrogiannopoulos --- .../patches/100-dont-use-linux-prctl.h-with-musl.patch | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libs/libseccomp/patches/100-dont-use-linux-prctl.h-with-musl.patch b/libs/libseccomp/patches/100-dont-use-linux-prctl.h-with-musl.patch index ded5b0abe..4093ca353 100644 --- a/libs/libseccomp/patches/100-dont-use-linux-prctl.h-with-musl.patch +++ b/libs/libseccomp/patches/100-dont-use-linux-prctl.h-with-musl.patch @@ -8,7 +8,7 @@ Index: libseccomp-2.2.1/src/system.h #include +#ifdef __GLIBC__ #include -+#endef ++#endif #include "configure.h" From c6e4370b19c1cc542538e01d46df1bfce8ff05c3 Mon Sep 17 00:00:00 2001 From: Ted Hess Date: Sun, 14 Jun 2015 20:30:56 -0400 Subject: [PATCH 556/681] argp-standalone: Moved to git.openwrt.org/openwrt.git Signed-off-by: Ted Hess --- libs/argp-standalone/Makefile | 48 ----------- .../patches/001-throw-in-funcdef.patch | 79 ------------------- 2 files changed, 127 deletions(-) delete mode 100644 libs/argp-standalone/Makefile delete mode 100644 libs/argp-standalone/patches/001-throw-in-funcdef.patch diff --git a/libs/argp-standalone/Makefile b/libs/argp-standalone/Makefile deleted file mode 100644 index 8cf23fec5..000000000 --- a/libs/argp-standalone/Makefile +++ /dev/null @@ -1,48 +0,0 @@ -# -# Copyright (C) 2007-2014 OpenWrt.org -# -# This is free software, licensed under the GNU General Public License v2. -# See /LICENSE for more information. -# - -include $(TOPDIR)/rules.mk - -PKG_NAME:=argp-standalone -PKG_VERSION:=1.3 -PKG_RELEASE:=1 - -PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=http://www.lysator.liu.se/~nisse/misc/ -PKG_MD5SUM:=720704bac078d067111b32444e24ba69 -PKG_MAINTAINER:=Ted Hess - -PKG_LICENSE:=LGPL-2.1 -PKG_LICENSE:=Makefile.am - -include $(INCLUDE_DIR)/package.mk - -define Package/argp-standalone - SECTION:=libs - CATEGORY:=Libraries - TITLE:=Hierarchial argument parsing broken out from glibc - URL:=http://www.lysator.liu.se/~nisse/misc/ -endef - -define Package/argp-standalone/description - GNU libc hierarchial argument parsing library broken out from glibc. -endef - -MAKE_FLAGS += \ - CFLAGS="$(TARGET_CFLAGS) $(FPIC)" - - -define Build/InstallDev - $(INSTALL_DIR) $(1)/usr/include - $(CP) $(PKG_BUILD_DIR)/argp.h \ - $(1)/usr/include/ - $(INSTALL_DIR) $(1)/usr/lib - $(CP) $(PKG_BUILD_DIR)/libargp.a \ - $(1)/usr/lib/ -endef - -$(eval $(call BuildPackage,argp-standalone)) diff --git a/libs/argp-standalone/patches/001-throw-in-funcdef.patch b/libs/argp-standalone/patches/001-throw-in-funcdef.patch deleted file mode 100644 index 4a90751e1..000000000 --- a/libs/argp-standalone/patches/001-throw-in-funcdef.patch +++ /dev/null @@ -1,79 +0,0 @@ -# --- T2-COPYRIGHT-NOTE-BEGIN --- -# This copyright note is auto-generated by ./scripts/Create-CopyPatch. -# -# T2 SDE: package/.../rng-tools/throw-in-funcdef.patch.argp-standalone -# Copyright (C) 2006 The T2 SDE Project -# -# More information can be found in the files COPYING and README. -# -# This patch file is dual-licensed. It is available under the license the -# patched project is licensed under, as long as it is an OpenSource license -# as defined at http://www.opensource.org/ (e.g. BSD, X11) or under the terms -# of the GNU General Public License as published by the Free Software -# Foundation; either version 2 of the License, or (at your option) any later -# version. -# --- T2-COPYRIGHT-NOTE-END --- - - -No __THROW in function implementation. - --jsaw - ---- argp-standalone-1.4-test2/argp.h.orig 2006-01-06 02:29:59.000000000 +0100 -+++ argp-standalone-1.4-test2/argp.h 2006-01-06 02:41:10.000000000 +0100 -@@ -560,17 +560,17 @@ - # endif - - # ifndef ARGP_EI --# define ARGP_EI extern __inline__ -+# define ARGP_EI extern inline - # endif - - ARGP_EI void --__argp_usage (__const struct argp_state *__state) __THROW -+__argp_usage (__const struct argp_state *__state) - { - __argp_state_help (__state, stderr, ARGP_HELP_STD_USAGE); - } - - ARGP_EI int --__option_is_short (__const struct argp_option *__opt) __THROW -+__option_is_short (__const struct argp_option *__opt) - { - if (__opt->flags & OPTION_DOC) - return 0; -@@ -582,7 +582,7 @@ - } - - ARGP_EI int --__option_is_end (__const struct argp_option *__opt) __THROW -+__option_is_end (__const struct argp_option *__opt) - { - return !__opt->key && !__opt->name && !__opt->doc && !__opt->group; - } ---- argp-standalone-1.4-test2/argp-parse.c.orig 2006-01-06 02:47:48.000000000 +0100 -+++ argp-standalone-1.4-test2/argp-parse.c 2006-01-06 02:48:16.000000000 +0100 -@@ -1290,13 +1290,13 @@ - /* Defined here, in case a user is not inlining the definitions in - * argp.h */ - void --__argp_usage (__const struct argp_state *__state) __THROW -+__argp_usage (__const struct argp_state *__state) - { - __argp_state_help (__state, stderr, ARGP_HELP_STD_USAGE); - } - - int --__option_is_short (__const struct argp_option *__opt) __THROW -+__option_is_short (__const struct argp_option *__opt) - { - if (__opt->flags & OPTION_DOC) - return 0; -@@ -1310,7 +1310,7 @@ - } - - int --__option_is_end (__const struct argp_option *__opt) __THROW -+__option_is_end (__const struct argp_option *__opt) - { - return !__opt->key && !__opt->name && !__opt->doc && !__opt->group; - } From 12f573dded67915c018f71111c8bed1ebf181ae4 Mon Sep 17 00:00:00 2001 From: Vladimir Ulrich Date: Mon, 15 Jun 2015 04:35:40 +0300 Subject: [PATCH 557/681] [utils/zoneinfo] Updated to the latest version Signed-off-by: Vladimir Ulrich --- utils/zoneinfo/Makefile | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/utils/zoneinfo/Makefile b/utils/zoneinfo/Makefile index fdbdf2814..8b39dc48f 100644 --- a/utils/zoneinfo/Makefile +++ b/utils/zoneinfo/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2007-2014 OpenWrt.org +# Copyright (C) 2007-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -9,8 +9,8 @@ include $(TOPDIR)/rules.mk PKG_NAME:=zoneinfo -PKG_VERSION:=2015d -PKG_VERSION_CODE:=2015d +PKG_VERSION:=2015e +PKG_VERSION_CODE:=2015e PKG_RELEASE:=1 #As i couldn't find real license used "Public Domain" @@ -20,14 +20,14 @@ PKG_LICENSE:=Public Domain PKG_SOURCE:=tzdata$(PKG_VERSION).tar.gz PKG_SOURCE_CODE:=tzcode$(PKG_VERSION_CODE).tar.gz PKG_SOURCE_URL:=http://www.iana.org/time-zones/repository/releases -PKG_MD5SUM:=b595bdc4474b8fc1a15cffc67c66025b +PKG_MD5SUM:=36f9056efb432ca945c73397acfce0d4 include $(INCLUDE_DIR)/package.mk define Download/tzcode FILE=$(PKG_SOURCE_CODE) URL=$(PKG_SOURCE_URL) - MD5SUM:=4008a3abc025a398697b2587c48258b9 + MD5SUM:=fb62eb6daf3ddb8c41fd40be05ec657e endef $(eval $(call Download,tzcode)) From 0a2681c8e4c570b81c9a9f28e840b4f9448b6b5d Mon Sep 17 00:00:00 2001 From: Steven Barth Date: Mon, 15 Jun 2015 09:54:11 +0200 Subject: [PATCH 558/681] bzip2: moved to base Signed-off-by: Steven Barth --- utils/bzip2/Makefile | 87 -------------------------------------------- 1 file changed, 87 deletions(-) delete mode 100644 utils/bzip2/Makefile diff --git a/utils/bzip2/Makefile b/utils/bzip2/Makefile deleted file mode 100644 index 493ccc931..000000000 --- a/utils/bzip2/Makefile +++ /dev/null @@ -1,87 +0,0 @@ -# -# Copyright (C) 2007-2008 OpenWrt.org -# -# This is free software, licensed under the GNU General Public License v2. -# See /LICENSE for more information. -# - -include $(TOPDIR)/rules.mk - -PKG_NAME:=bzip2 -PKG_VERSION:=1.0.6 -PKG_RELEASE:=2 - -PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=http://www.bzip.org/$(PKG_VERSION) -PKG_MD5SUM:=00b516f4704d4a7cb50a1d97e6e8e15b -PKG_MAINTAINER:=Steven Barth - -PKG_LICENSE:=BZIP2 -PKG_LICENSE_FILES:=LICENSE - -include $(INCLUDE_DIR)/package.mk - -define Package/bzip2/Default - SUBMENU:=Compression - URL:=http://www.bzip.org/ -endef - -define Package/libbz2 -$(call Package/bzip2/Default) - SECTION:=libs - CATEGORY:=Libraries - DEPENDS:= - TITLE:=bzip2 library. -endef - -define Package/libbz2/description - bzip2 is a freely available, patent free, high-quality - data compressor. This packages provides libbz2 library. -endef - -define Package/bzip2 -$(call Package/bzip2/Default) - SECTION:=utils - CATEGORY:=Utilities - DEPENDS:=+libbz2 - TITLE:=bzip2 is a compression utility. -endef - -define Package/bzip2/description - bzip2 is a freely available, patent free, high-quality - data compressor. This package provides the binary. -endef - -TARGET_CFLAGS += \ - $(FPIC) \ - $(TARGET_LDFLAGS) - -CONFIGURE_ARGS += --prefix=/usr - -MAKE_FLAGS += \ - -f Makefile-libbz2_so \ - CFLAGS="$(TARGET_CFLAGS)" \ - all - -define Build/InstallDev - $(INSTALL_DIR) $(1)/usr/include - $(CP) $(PKG_BUILD_DIR)/bzlib.h $(1)/usr/include/ - $(INSTALL_DIR) $(1)/usr/lib - $(CP) $(PKG_BUILD_DIR)/libbz2.so.$(PKG_VERSION) $(1)/usr/lib/ - $(LN) libbz2.so.$(PKG_VERSION) $(1)/usr/lib/libbz2.so.1.0 - $(LN) libbz2.so.$(PKG_VERSION) $(1)/usr/lib/libbz2.so -endef - -define Package/libbz2/install - $(INSTALL_DIR) $(1)/usr/lib/ - $(CP) $(PKG_BUILD_DIR)/libbz2.so.$(PKG_VERSION) $(1)/usr/lib/ - $(LN) libbz2.so.$(PKG_VERSION) $(1)/usr/lib/libbz2.so.1.0 -endef - -define Package/bzip2/install - $(INSTALL_DIR) $(1)/usr/bin/ - $(INSTALL_BIN) $(PKG_BUILD_DIR)/bzip2-shared $(1)/usr/bin/bzip2 -endef - -$(eval $(call BuildPackage,libbz2)) -$(eval $(call BuildPackage,bzip2)) From 9f5d9acb5f0547cf87d781ccdb033a274eb42d4f Mon Sep 17 00:00:00 2001 From: Steven Barth Date: Mon, 15 Jun 2015 09:56:57 +0200 Subject: [PATCH 559/681] elfutils: moved to base Signed-off-by: Steven Barth --- libs/elfutils/Makefile | 97 - .../patches/001-elfutils-portability.patch | 1871 ----------------- .../patches/002-argp_standalone.patch | 14 - libs/elfutils/patches/003-libint-stub.patch | 49 - .../patches/004-maybe-uninitialized.patch | 11 - libs/elfutils/patches/004-memcpy_def.patch | 14 - .../patches/005-build_only_libs.patch | 24 - libs/elfutils/patches/006-libdw_LIBS.patch | 11 - libs/elfutils/patches/100-musl-compat.patch | 788 ------- libs/elfutils/patches/101-no-fts.patch | 109 - 10 files changed, 2988 deletions(-) delete mode 100644 libs/elfutils/Makefile delete mode 100644 libs/elfutils/patches/001-elfutils-portability.patch delete mode 100644 libs/elfutils/patches/002-argp_standalone.patch delete mode 100644 libs/elfutils/patches/003-libint-stub.patch delete mode 100644 libs/elfutils/patches/004-maybe-uninitialized.patch delete mode 100644 libs/elfutils/patches/004-memcpy_def.patch delete mode 100644 libs/elfutils/patches/005-build_only_libs.patch delete mode 100644 libs/elfutils/patches/006-libdw_LIBS.patch delete mode 100644 libs/elfutils/patches/100-musl-compat.patch delete mode 100644 libs/elfutils/patches/101-no-fts.patch diff --git a/libs/elfutils/Makefile b/libs/elfutils/Makefile deleted file mode 100644 index d3e1552c6..000000000 --- a/libs/elfutils/Makefile +++ /dev/null @@ -1,97 +0,0 @@ -# -# Copyright (C) 2010-2014 OpenWrt.org -# -# This is free software, licensed under the GNU General Public License v2. -# See /LICENSE for more information. -# -include $(TOPDIR)/rules.mk - -PKG_NAME:=elfutils -PKG_VERSION:=0.161 -PKG_RELEASE:=1 - -PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 -PKG_SOURCE_URL:=http://fedorahosted.org/releases/e/l/$(PKG_NAME)/$(PKG_VERSION) -PKG_MD5SUM:=e1b9847c9a6a1ad340de8d47a863ec52 -PKG_MAINTAINER:=Luiz Angelo Daros de Luca -PKG_LICENSE:=GPL-3.0+ -PKG_LICENSE_FILES:=COPYING COPYING-GPLV2 COPYING-LGPLV3 - -PKG_INSTALL:=1 -PKG_USE_MIPS16:=0 - -PKG_BUILD_DEPENDS:=USE_UCLIBC:argp-standalone USE_MUSL:argp-standalone - -include $(INCLUDE_DIR)/package.mk -include $(INCLUDE_DIR)/nls.mk - -define Package/elfutils/Default - SECTION:=libs - CATEGORY:=Libraries - DEPENDS:=$(INTL_DEPENDS) - TITLE:=ELF manipulation libraries - URL:=https://fedorahosted.org/elfutils/ -endef - -define Package/libasm - $(call Package/elfutils/Default) - TITLE+= (libasm) - DEPENDS:=libelf1 -endef - -define Package/libdw - $(call Package/elfutils/Default) - DEPENDS:=libelf1 +zlib +libbz2 - TITLE+= (libdw) -endef - -define Package/libelf1 - $(call Package/elfutils/Default) - TITLE+= (libelf) -endef - -ifeq ($(CONFIG_BUILD_NLS),y) -TARGET_LDFLAGS += "-lintl" -endif - -ifdef CONFIG_USE_UCLIBC -CONFIGURE_VARS += \ - LIBS="-largp" -endif - -ifdef CONFIG_USE_MUSL -CONFIGURE_VARS += \ - LIBS="-largp" -endif - -CONFIGURE_ARGS += \ - --disable-werror \ - --without-lzma - -define Build/InstallDev - $(INSTALL_DIR) $(1)/usr/include - $(CP) $(PKG_INSTALL_DIR)/usr/include/* $(1)/usr/include/ - $(INSTALL_DIR) $(1)/usr/lib - $(CP) $(PKG_BUILD_DIR)/libasm/libasm.{a,so*} $(1)/usr/lib/ - $(CP) $(PKG_BUILD_DIR)/libdw/libdw.{a,so*} $(1)/usr/lib/ - $(CP) $(PKG_BUILD_DIR)/libelf/libelf.{a,so*} $(1)/usr/lib/ -endef - -define Package/libasm/install - $(INSTALL_DIR) $(1)/usr/lib - $(CP) $(PKG_BUILD_DIR)/libasm/libasm.so* $(1)/usr/lib/ -endef - -define Package/libdw/install - $(INSTALL_DIR) $(1)/usr/lib - $(CP) $(PKG_BUILD_DIR)/libdw/libdw.so* $(1)/usr/lib/ -endef - -define Package/libelf1/install - $(INSTALL_DIR) $(1)/usr/lib - $(CP) $(PKG_BUILD_DIR)/libelf/libelf.so* $(1)/usr/lib/ -endef - -$(eval $(call BuildPackage,libasm)) -$(eval $(call BuildPackage,libdw)) -$(eval $(call BuildPackage,libelf1)) diff --git a/libs/elfutils/patches/001-elfutils-portability.patch b/libs/elfutils/patches/001-elfutils-portability.patch deleted file mode 100644 index 7539f8bb6..000000000 --- a/libs/elfutils/patches/001-elfutils-portability.patch +++ /dev/null @@ -1,1871 +0,0 @@ ---- elfutils/backends/ChangeLog -+++ elfutils/backends/ChangeLog -@@ -433,6 +433,10 @@ - * ppc_attrs.c (ppc_check_object_attribute): Handle tag - GNU_Power_ABI_Struct_Return. - -+2009-01-23 Roland McGrath -+ -+ * Makefile.am (libebl_%.so): Use $(LD_AS_NEEDED). -+ - 2008-10-04 Ulrich Drepper - - * i386_reloc.def: Fix entries for TLS_GOTDESC, TLS_DESC_CALL, and -@@ -760,6 +764,11 @@ - * sparc_init.c: Likewise. - * x86_64_init.c: Likewise. - -+2005-11-22 Roland McGrath -+ -+ * Makefile.am (LD_AS_NEEDED): New variable, substituted by configure. -+ (libebl_%.so rule): Use it in place of -Wl,--as-needed. -+ - 2005-11-19 Roland McGrath - - * ppc64_reloc.def: REL30 -> ADDR30. -@@ -782,6 +791,9 @@ - * Makefile.am (uninstall): Don't try to remove $(pkgincludedir). - (CLEANFILES): Add libebl_$(m).so. - -+ * Makefile.am (WEXTRA): New variable, substituted by configure. -+ (AM_CFLAGS): Use it in place of -Wextra. -+ - * ppc_reloc.def: Update bits per Alan Modra . - * ppc64_reloc.def: Likewise. - ---- elfutils/backends/Makefile.am -+++ elfutils/backends/Makefile.am -@@ -119,7 +119,7 @@ libebl_%.so libebl_%.map: libebl_%_pic.a - $(LINK) -shared -o $(@:.map=.so) \ - -Wl,--whole-archive $< $(cpu_$*) -Wl,--no-whole-archive \ - -Wl,--version-script,$(@:.so=.map) \ -- -Wl,-z,defs -Wl,--as-needed $(libelf) $(libdw) -+ -Wl,-z,defs $(LD_AS_NEEDED) $(libelf) $(libdw) - @$(textrel_check) - - libebl_i386.so: $(cpu_i386) ---- elfutils/backends/Makefile.in -+++ elfutils/backends/Makefile.in -@@ -83,6 +83,7 @@ host_triplet = @host@ - DIST_COMMON = $(top_srcdir)/config/eu.am $(srcdir)/Makefile.in \ - $(srcdir)/Makefile.am $(top_srcdir)/config/depcomp \ - $(noinst_HEADERS) ChangeLog -+@BUILD_WERROR_TRUE@am__append_1 = $(if $($(*F)_no_Werror),,-Werror) - subdir = backends - ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 - am__aclocal_m4_deps = $(top_srcdir)/m4/biarch.m4 \ -@@ -285,6 +286,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ - INSTALL_SCRIPT = @INSTALL_SCRIPT@ - INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ - LDFLAGS = @LDFLAGS@ -+LD_AS_NEEDED = @LD_AS_NEEDED@ - LEX = @LEX@ - LEXLIB = @LEXLIB@ - LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ -@@ -316,6 +318,7 @@ SHELL = @SHELL@ - STRIP = @STRIP@ - USE_NLS = @USE_NLS@ - VERSION = @VERSION@ -+WEXTRA = @WEXTRA@ - XGETTEXT = @XGETTEXT@ - XGETTEXT_015 = @XGETTEXT_015@ - XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ -@@ -378,11 +381,11 @@ zip_LIBS = @zip_LIBS@ - AM_CPPFLAGS = -I. -I$(srcdir) -I$(top_srcdir)/lib -I.. \ - -I$(top_srcdir)/libebl -I$(top_srcdir)/libasm \ - -I$(top_srcdir)/libelf -I$(top_srcdir)/libdw --AM_CFLAGS = -std=gnu99 -Wall -Wshadow -Wformat=2 \ -- $(if $($(*F)_no_Werror),,-Werror) \ -- $(if $($(*F)_no_Wunused),,-Wunused -Wextra) \ -- $($(*F)_CFLAGS) -- -+AM_CFLAGS = -std=gnu99 -Wall -Wshadow $(if \ -+ $($(*F)_no_Werror),,-Werror) $(if \ -+ $($(*F)_no_Wunused),,-Wunused $(WEXTRA)) $(if \ -+ $($(*F)_no_Wformat),-Wno-format,-Wformat=2) $($(*F)_CFLAGS) \ -+ $(am__append_1) - COMPILE.os = $(filter-out -fprofile-arcs -ftest-coverage, $(COMPILE)) - CLEANFILES = *.gcno *.gcda $(foreach m,$(modules), libebl_$(m).map \ - libebl_$(m).so $(am_libebl_$(m)_pic_a_OBJECTS)) -@@ -888,7 +891,7 @@ libebl_%.so libebl_%.map: libebl_%_pic.a - $(LINK) -shared -o $(@:.map=.so) \ - -Wl,--whole-archive $< $(cpu_$*) -Wl,--no-whole-archive \ - -Wl,--version-script,$(@:.so=.map) \ -- -Wl,-z,defs -Wl,--as-needed $(libelf) $(libdw) -+ -Wl,-z,defs $(LD_AS_NEEDED) $(libelf) $(libdw) - @$(textrel_check) - - libebl_i386.so: $(cpu_i386) ---- elfutils/ChangeLog -+++ elfutils/ChangeLog -@@ -187,6 +187,8 @@ - - 2012-01-24 Mark Wielaard - -+ * configure.ac: Wrap AC_COMPILE_IFELSE sources in AC_LANG_SOURCE. -+ - * COPYING: Fix address. Updated version from gnulib. - - 2012-01-23 Mark Wielaard -@@ -205,6 +207,9 @@ - - 2011-10-08 Mike Frysinger - -+ * configure.ac (--disable-werror): Handle it, controlling BUILD_WERROR -+ automake option. -+ - * configure.ac: Fix use of AC_ARG_ENABLE to handle $enableval correctly. - - 2011-10-02 Ulrich Drepper -@@ -226,6 +231,10 @@ - - * configure.ac (LOCALEDIR, DATADIRNAME): Removed. - -+2009-11-22 Roland McGrath -+ -+ * configure.ac: Use sed and expr instead of modern bash extensions. -+ - 2009-09-21 Ulrich Drepper - - * configure.ac: Update for more modern autoconf. -@@ -234,6 +243,10 @@ - - * configure.ac (zip_LIBS): Check for liblzma too. - -+2009-08-17 Roland McGrath -+ -+ * configure.ac: Check for -fgnu89-inline; add it to WEXTRA if it works. -+ - 2009-04-19 Roland McGrath - - * configure.ac (eu_version): Round down here, not in version.h macros. -@@ -245,6 +258,8 @@ - - 2009-01-23 Roland McGrath - -+ * configure.ac: Check for __builtin_popcount. -+ - * configure.ac (zlib check): Check for gzdirect, need zlib >= 1.2.2.3. - - * configure.ac (__thread check): Use AC_LINK_IFELSE, in case of -@@ -325,6 +340,10 @@ - * configure.ac: Add dummy automake conditional to get dependencies - for non-generic linker right. See src/Makefile.am. - -+2005-11-22 Roland McGrath -+ -+ * configure.ac: Check for --as-needed linker option. -+ - 2005-11-18 Roland McGrath - - * Makefile.am (DISTCHECK_CONFIGURE_FLAGS): New variable. -@@ -372,6 +391,17 @@ - * Makefile.am (all_SUBDIRS): Add libdwfl. - * configure.ac: Write libdwfl/Makefile. - -+2005-05-31 Roland McGrath -+ -+ * configure.ac (WEXTRA): Check for -Wextra and set this substitution. -+ -+ * configure.ac: Check for struct stat st_?tim members. -+ * src/strip.c (process_file): Use st_?time if st_?tim are not there. -+ -+ * configure.ac: Check for futimes function. -+ * src/strip.c (handle_elf) [! HAVE_FUTIMES]: Use utimes instead. -+ (handle_ar) [! HAVE_FUTIMES]: Likewise. -+ - 2005-05-19 Roland McGrath - - * configure.ac [AH_BOTTOM] (INTDECL, _INTDECL): New macros. ---- elfutils/config/ChangeLog -+++ elfutils/config/ChangeLog -@@ -71,6 +71,10 @@ - - * known-dwarf.awk: Use gawk. - -+2011-10-08 Mike Frysinger -+ -+ * eu.am [BUILD_WERROR]: Conditionalize -Werror use on this. -+ - 2010-07-02 Ulrich Drepper - - * elfutils.spec.in: Add more BuildRequires. ---- elfutils/config/eu.am -+++ elfutils/config/eu.am -@@ -1,6 +1,6 @@ - ## Common automake fragments for elfutils subdirectory makefiles. - ## --## Copyright (C) 2010, 2014 Red Hat, Inc. -+## Copyright (C) 2010-2011, 2014 Red Hat, Inc. - ## - ## This file is part of elfutils. - ## -@@ -29,13 +29,21 @@ - ## not, see . - ## - -+WEXTRA = @WEXTRA@ -+LD_AS_NEEDED = @LD_AS_NEEDED@ -+ - DEFS = -D_GNU_SOURCE -DHAVE_CONFIG_H -DLOCALEDIR='"${localedir}"' - AM_CPPFLAGS = -I. -I$(srcdir) -I$(top_srcdir)/lib -I.. --AM_CFLAGS = -std=gnu99 -Wall -Wshadow -Wformat=2 \ -+AM_CFLAGS = -std=gnu99 -Wall -Wshadow \ - $(if $($(*F)_no_Werror),,-Werror) \ -- $(if $($(*F)_no_Wunused),,-Wunused -Wextra) \ -+ $(if $($(*F)_no_Wunused),,-Wunused $(WEXTRA)) \ -+ $(if $($(*F)_no_Wformat),-Wno-format,-Wformat=2) \ - $($(*F)_CFLAGS) - -+if BUILD_WERROR -+AM_CFLAGS += $(if $($(*F)_no_Werror),,-Werror) -+endif -+ - COMPILE.os = $(filter-out -fprofile-arcs -ftest-coverage, $(COMPILE)) - - %.os: %.c %.o ---- elfutils/config/Makefile.in -+++ elfutils/config/Makefile.in -@@ -147,6 +147,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ - INSTALL_SCRIPT = @INSTALL_SCRIPT@ - INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ - LDFLAGS = @LDFLAGS@ -+LD_AS_NEEDED = @LD_AS_NEEDED@ - LEX = @LEX@ - LEXLIB = @LEXLIB@ - LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ -@@ -178,6 +179,7 @@ SHELL = @SHELL@ - STRIP = @STRIP@ - USE_NLS = @USE_NLS@ - VERSION = @VERSION@ -+WEXTRA = @WEXTRA@ - XGETTEXT = @XGETTEXT@ - XGETTEXT_015 = @XGETTEXT_015@ - XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ ---- elfutils/config.h.in -+++ elfutils/config.h.in -@@ -3,6 +3,9 @@ - /* Should ar and ranlib use -D behavior by default? */ - #undef DEFAULT_AR_DETERMINISTIC - -+/* Have __builtin_popcount. */ -+#undef HAVE_BUILTIN_POPCOUNT -+ - /* Define to 1 if you have the header file. */ - #undef HAVE_INTTYPES_H - -@@ -102,4 +105,7 @@ - /* Define for large files, on AIX-style hosts. */ - #undef _LARGE_FILES - -+/* Stubbed out if missing compiler support. */ -+#undef __thread -+ - #include ---- elfutils/configure -+++ elfutils/configure -@@ -663,6 +663,8 @@ ZLIB_TRUE - LIBEBL_SUBDIR - TESTS_RPATH_FALSE - TESTS_RPATH_TRUE -+BUILD_WERROR_FALSE -+BUILD_WERROR_TRUE - BUILD_STATIC_FALSE - BUILD_STATIC_TRUE - USE_VALGRIND_FALSE -@@ -678,6 +680,8 @@ NEVER_TRUE - base_cpu - NATIVE_LD_FALSE - NATIVE_LD_TRUE -+LD_AS_NEEDED -+WEXTRA - NM - READELF - ac_ct_AR -@@ -798,6 +802,7 @@ enable_debugpred - enable_gprof - enable_gcov - enable_valgrind -+enable_werror - enable_tests_rpath - enable_libebl_subdir - with_zlib -@@ -1455,6 +1460,7 @@ Optional Features: - --enable-gprof build binaries with gprof support - --enable-gcov build binaries with gcov support - --enable-valgrind run all tests under valgrind -+ --disable-werror do not build with -Werror - --enable-tests-rpath build $ORIGIN-using rpath into tests - --enable-libebl-subdir=DIR - install libebl_CPU modules in $(libdir)/DIR -@@ -4843,6 +4849,130 @@ if test "x$ac_cv_c99" != xyes; then : - as_fn_error $? "gcc with C99 support required" "$LINENO" 5 - fi - -+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for -Wextra option to $CC" >&5 -+$as_echo_n "checking for -Wextra option to $CC... " >&6; } -+if ${ac_cv_cc_wextra+:} false; then : -+ $as_echo_n "(cached) " >&6 -+else -+ old_CFLAGS="$CFLAGS" -+CFLAGS="$CFLAGS -Wextra" -+cat confdefs.h - <<_ACEOF >conftest.$ac_ext -+/* end confdefs.h. */ -+void foo (void) { } -+_ACEOF -+if ac_fn_c_try_compile "$LINENO"; then : -+ ac_cv_cc_wextra=yes -+else -+ ac_cv_cc_wextra=no -+fi -+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -+CFLAGS="$old_CFLAGS" -+fi -+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_cc_wextra" >&5 -+$as_echo "$ac_cv_cc_wextra" >&6; } -+ -+if test "x$ac_cv_cc_wextra" = xyes; then : -+ WEXTRA=-Wextra -+else -+ WEXTRA=-W -+fi -+ -+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for -fgnu89-inline option to $CC" >&5 -+$as_echo_n "checking for -fgnu89-inline option to $CC... " >&6; } -+if ${ac_cv_cc_gnu89_inline+:} false; then : -+ $as_echo_n "(cached) " >&6 -+else -+ old_CFLAGS="$CFLAGS" -+CFLAGS="$CFLAGS -fgnu89-inline -Werror" -+cat confdefs.h - <<_ACEOF >conftest.$ac_ext -+/* end confdefs.h. */ -+ -+void foo (void) -+{ -+ inline void bar (void) {} -+ bar (); -+} -+extern inline void baz (void) {} -+ -+_ACEOF -+if ac_fn_c_try_compile "$LINENO"; then : -+ ac_cv_cc_gnu89_inline=yes -+else -+ ac_cv_cc_gnu89_inline=no -+fi -+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -+CFLAGS="$old_CFLAGS" -+fi -+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_cc_gnu89_inline" >&5 -+$as_echo "$ac_cv_cc_gnu89_inline" >&6; } -+if test "x$ac_cv_cc_gnu89_inline" = xyes; then : -+ WEXTRA="${WEXTRA:+$WEXTRA }-fgnu89-inline" -+fi -+ -+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for --as-needed linker option" >&5 -+$as_echo_n "checking for --as-needed linker option... " >&6; } -+if ${ac_cv_as_needed+:} false; then : -+ $as_echo_n "(cached) " >&6 -+else -+ cat > conftest.c <&5 -+ (eval $ac_try) 2>&5 -+ ac_status=$? -+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 -+ test $ac_status = 0; }; } -+then -+ ac_cv_as_needed=yes -+else -+ ac_cv_as_needed=no -+fi -+rm -f conftest* -+fi -+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_as_needed" >&5 -+$as_echo "$ac_cv_as_needed" >&6; } -+if test "x$ac_cv_as_needed" = xyes; then : -+ LD_AS_NEEDED=-Wl,--as-needed -+else -+ LD_AS_NEEDED= -+fi -+ -+ -+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for __builtin_popcount" >&5 -+$as_echo_n "checking for __builtin_popcount... " >&6; } -+if ${ac_cv_popcount+:} false; then : -+ $as_echo_n "(cached) " >&6 -+else -+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext -+/* end confdefs.h. */ -+ -+int -+main () -+{ -+exit (__builtin_popcount (127)); -+ ; -+ return 0; -+} -+_ACEOF -+if ac_fn_c_try_link "$LINENO"; then : -+ ac_cv_popcount=yes -+else -+ ac_cv_popcount=no -+fi -+rm -f core conftest.err conftest.$ac_objext \ -+ conftest$ac_exeext conftest.$ac_ext -+fi -+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_popcount" >&5 -+$as_echo "$ac_cv_popcount" >&6; } -+if test "x$ac_cv_popcount" = xyes; then : -+ -+$as_echo "#define HAVE_BUILTIN_POPCOUNT 1" >>confdefs.h -+ -+fi -+ - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for __thread support" >&5 - $as_echo_n "checking for __thread support... " >&6; } - if ${ac_cv_tls+:} false; then : -@@ -4879,7 +5009,13 @@ fi - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_tls" >&5 - $as_echo "$ac_cv_tls" >&6; } - if test "x$ac_cv_tls" != xyes; then : -- as_fn_error $? "__thread support required" "$LINENO" 5 -+ if test "$use_locks" = yes; then : -+ as_fn_error $? "--enable-thread-safety requires __thread support" "$LINENO" 5 -+else -+ -+$as_echo "#define __thread /* empty: no multi-thread support */" >>confdefs.h -+ -+fi - fi - - # Check whether --enable-largefile was given. -@@ -5246,6 +5382,22 @@ else - fi - - -+# Check whether --enable-werror was given. -+if test "${enable_werror+set}" = set; then : -+ enableval=$enable_werror; enable_werror=$enableval -+else -+ enable_werror=yes -+fi -+ -+ if test "$enable_werror" = yes; then -+ BUILD_WERROR_TRUE= -+ BUILD_WERROR_FALSE='#' -+else -+ BUILD_WERROR_TRUE='#' -+ BUILD_WERROR_FALSE= -+fi -+ -+ - # Check whether --enable-tests-rpath was given. - if test "${enable_tests_rpath+set}" = set; then : - enableval=$enable_tests_rpath; tests_use_rpath=$enableval -@@ -5983,7 +6135,7 @@ case "$eu_version" in - esac - - # Round up to the next release API (x.y) version. --eu_version=$(( (eu_version + 999) / 1000 )) -+eu_version=`expr \( $eu_version + 999 \) / 1000` - - ac_ext=c - ac_cpp='$CPP $CPPFLAGS' -@@ -6729,6 +6881,10 @@ if test -z "${BUILD_STATIC_TRUE}" && tes - as_fn_error $? "conditional \"BUILD_STATIC\" was never defined. - Usually this means the macro was only invoked conditionally." "$LINENO" 5 - fi -+if test -z "${BUILD_WERROR_TRUE}" && test -z "${BUILD_WERROR_FALSE}"; then -+ as_fn_error $? "conditional \"BUILD_WERROR\" was never defined. -+Usually this means the macro was only invoked conditionally." "$LINENO" 5 -+fi - if test -z "${TESTS_RPATH_TRUE}" && test -z "${TESTS_RPATH_FALSE}"; then - as_fn_error $? "conditional \"TESTS_RPATH\" was never defined. - Usually this means the macro was only invoked conditionally." "$LINENO" 5 ---- elfutils/configure.ac -+++ elfutils/configure.ac -@@ -89,6 +89,54 @@ CFLAGS="$old_CFLAGS"]) - AS_IF([test "x$ac_cv_c99" != xyes], - AC_MSG_ERROR([gcc with C99 support required])) - -+AC_CACHE_CHECK([for -Wextra option to $CC], ac_cv_cc_wextra, [dnl -+old_CFLAGS="$CFLAGS" -+CFLAGS="$CFLAGS -Wextra" -+AC_COMPILE_IFELSE([AC_LANG_SOURCE([void foo (void) { }])], -+ ac_cv_cc_wextra=yes, ac_cv_cc_wextra=no) -+CFLAGS="$old_CFLAGS"]) -+AC_SUBST(WEXTRA) -+AS_IF([test "x$ac_cv_cc_wextra" = xyes], [WEXTRA=-Wextra], [WEXTRA=-W]) -+ -+AC_CACHE_CHECK([for -fgnu89-inline option to $CC], ac_cv_cc_gnu89_inline, [dnl -+old_CFLAGS="$CFLAGS" -+CFLAGS="$CFLAGS -fgnu89-inline -Werror" -+AC_COMPILE_IFELSE([AC_LANG_SOURCE([ -+void foo (void) -+{ -+ inline void bar (void) {} -+ bar (); -+} -+extern inline void baz (void) {} -+])], ac_cv_cc_gnu89_inline=yes, ac_cv_cc_gnu89_inline=no) -+CFLAGS="$old_CFLAGS"]) -+AS_IF([test "x$ac_cv_cc_gnu89_inline" = xyes], -+ [WEXTRA="${WEXTRA:+$WEXTRA }-fgnu89-inline"]) -+ -+AC_CACHE_CHECK([for --as-needed linker option], -+ ac_cv_as_needed, [dnl -+cat > conftest.c <&AS_MESSAGE_LOG_FD]) -+then -+ ac_cv_as_needed=yes -+else -+ ac_cv_as_needed=no -+fi -+rm -f conftest*]) -+AS_IF([test "x$ac_cv_as_needed" = xyes], -+ [LD_AS_NEEDED=-Wl,--as-needed], [LD_AS_NEEDED=]) -+AC_SUBST(LD_AS_NEEDED) -+ -+AC_CACHE_CHECK([for __builtin_popcount], ac_cv_popcount, [dnl -+AC_LINK_IFELSE([AC_LANG_PROGRAM([], [[exit (__builtin_popcount (127));]])], -+ ac_cv_popcount=yes, ac_cv_popcount=no)]) -+AS_IF([test "x$ac_cv_popcount" = xyes], -+ [AC_DEFINE([HAVE_BUILTIN_POPCOUNT], [1], [Have __builtin_popcount.])]) -+ - AC_CACHE_CHECK([for __thread support], ac_cv_tls, [dnl - # Use the same flags that we use for our DSOs, so the test is representative. - # Some old compiler/linker/libc combinations fail some ways and not others. -@@ -104,7 +152,10 @@ static __thread int a; int foo (int b) { - CFLAGS="$save_CFLAGS" - LDFLAGS="$save_LDFLAGS"]) - AS_IF([test "x$ac_cv_tls" != xyes], -- AC_MSG_ERROR([__thread support required])) -+ [AS_IF([test "$use_locks" = yes], -+ [AC_MSG_ERROR([--enable-thread-safety requires __thread support])], -+ [AC_DEFINE([__thread], [/* empty: no multi-thread support */], -+ [Stubbed out if missing compiler support.])])]) - - dnl This test must come as early as possible after the compiler configuration - dnl tests, because the choice of the file model can (in principle) affect -@@ -183,6 +234,11 @@ AM_CONDITIONAL(USE_VALGRIND, test "$use_ - AM_CONDITIONAL(BUILD_STATIC, [dnl - test "$use_gprof" = yes -o "$use_gcov" = yes]) - -+AC_ARG_ENABLE([werror], -+AS_HELP_STRING([--disable-werror],[do not build with -Werror]), -+ [enable_werror=$enableval], [enable_werror=yes]) -+AM_CONDITIONAL(BUILD_WERROR, test "$enable_werror" = yes) -+ - AC_ARG_ENABLE([tests-rpath], - AS_HELP_STRING([--enable-tests-rpath],[build $ORIGIN-using rpath into tests]), - [tests_use_rpath=$enableval], [tests_use_rpath=no]) -@@ -302,7 +358,7 @@ case "$eu_version" in - esac - - # Round up to the next release API (x.y) version. --eu_version=$(( (eu_version + 999) / 1000 )) -+eu_version=`expr \( $eu_version + 999 \) / 1000` - - AC_CHECK_SIZEOF(long) - ---- elfutils/lib/ChangeLog -+++ elfutils/lib/ChangeLog -@@ -65,6 +65,9 @@ - - 2009-01-23 Roland McGrath - -+ * eu-config.h [! HAVE_BUILTIN_POPCOUNT] -+ (__builtin_popcount): New inline function. -+ - * eu-config.h: Add multiple inclusion protection. - - 2009-01-17 Ulrich Drepper -@@ -121,6 +124,11 @@ - * Makefile.am (libeu_a_SOURCES): Add it. - * system.h: Declare crc32_file. - -+2005-02-07 Roland McGrath -+ -+ * Makefile.am (WEXTRA): New variable, substituted by configure. -+ (AM_CFLAGS): Use it in place of -Wextra. -+ - 2005-04-30 Ulrich Drepper - - * Makefile.am: Use -ffunction-sections for xmalloc.c. ---- elfutils/lib/eu-config.h -+++ elfutils/lib/eu-config.h -@@ -162,6 +162,17 @@ asm (".section predict_data, \"aw\"; .pr - /* This macro is used by the tests conditionalize for standalone building. */ - #define ELFUTILS_HEADER(name) - -+#ifndef HAVE_BUILTIN_POPCOUNT -+# define __builtin_popcount hakmem_popcount -+static inline unsigned int __attribute__ ((unused)) -+hakmem_popcount (unsigned int x) -+{ -+ /* HAKMEM 169 */ -+ unsigned int n = x - ((x >> 1) & 033333333333) - ((x >> 2) & 011111111111); -+ return ((n + (n >> 3)) & 030707070707) % 63; -+} -+#endif /* HAVE_BUILTIN_POPCOUNT */ -+ - - #ifdef SHARED - # define OLD_VERSION(name, version) \ ---- elfutils/lib/Makefile.in -+++ elfutils/lib/Makefile.in -@@ -82,6 +82,7 @@ host_triplet = @host@ - DIST_COMMON = $(top_srcdir)/config/eu.am $(srcdir)/Makefile.in \ - $(srcdir)/Makefile.am $(top_srcdir)/config/depcomp \ - $(noinst_HEADERS) ChangeLog -+@BUILD_WERROR_TRUE@am__append_1 = $(if $($(*F)_no_Werror),,-Werror) - subdir = lib - ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 - am__aclocal_m4_deps = $(top_srcdir)/m4/biarch.m4 \ -@@ -197,6 +198,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ - INSTALL_SCRIPT = @INSTALL_SCRIPT@ - INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ - LDFLAGS = @LDFLAGS@ -+LD_AS_NEEDED = @LD_AS_NEEDED@ - LEX = @LEX@ - LEXLIB = @LEXLIB@ - LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ -@@ -228,6 +230,7 @@ SHELL = @SHELL@ - STRIP = @STRIP@ - USE_NLS = @USE_NLS@ - VERSION = @VERSION@ -+WEXTRA = @WEXTRA@ - XGETTEXT = @XGETTEXT@ - XGETTEXT_015 = @XGETTEXT_015@ - XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ -@@ -289,9 +292,11 @@ top_srcdir = @top_srcdir@ - zip_LIBS = @zip_LIBS@ - AM_CPPFLAGS = -I. -I$(srcdir) -I$(top_srcdir)/lib -I.. \ - -I$(srcdir)/../libelf --AM_CFLAGS = -std=gnu99 -Wall -Wshadow -Wformat=2 $(if \ -+AM_CFLAGS = -std=gnu99 -Wall -Wshadow $(if \ - $($(*F)_no_Werror),,-Werror) $(if \ -- $($(*F)_no_Wunused),,-Wunused -Wextra) $($(*F)_CFLAGS) -fpic -+ $($(*F)_no_Wunused),,-Wunused $(WEXTRA)) $(if \ -+ $($(*F)_no_Wformat),-Wno-format,-Wformat=2) $($(*F)_CFLAGS) \ -+ $(am__append_1) -fpic - COMPILE.os = $(filter-out -fprofile-arcs -ftest-coverage, $(COMPILE)) - CLEANFILES = *.gcno *.gcda - textrel_msg = echo "WARNING: TEXTREL found in '$@'" ---- elfutils/libasm/ChangeLog -+++ elfutils/libasm/ChangeLog -@@ -87,6 +87,11 @@ - * asm_error.c: Add new error ASM_E_IOERROR. - * libasmP.h: Add ASM_E_IOERROR definition. - -+2005-05-31 Roland McGrath -+ -+ * Makefile.am (WEXTRA): New variable, substituted by configure. -+ (AM_CFLAGS): Use it in place of -Wextra. -+ - 2005-02-15 Ulrich Drepper - - * Makefile.am (AM_CFLAGS): Add -Wunused -Wextra -Wformat=2. ---- elfutils/libasm/Makefile.in -+++ elfutils/libasm/Makefile.in -@@ -83,8 +83,9 @@ host_triplet = @host@ - DIST_COMMON = $(top_srcdir)/config/eu.am $(srcdir)/Makefile.in \ - $(srcdir)/Makefile.am $(top_srcdir)/config/depcomp \ - $(noinst_HEADERS) $(pkginclude_HEADERS) ChangeLog -+@BUILD_WERROR_TRUE@am__append_1 = $(if $($(*F)_no_Werror),,-Werror) - noinst_PROGRAMS = $(am__EXEEXT_1) --@USE_LOCKS_TRUE@am__append_1 = -lpthread -+@USE_LOCKS_TRUE@am__append_2 = -lpthread - subdir = libasm - ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 - am__aclocal_m4_deps = $(top_srcdir)/m4/biarch.m4 \ -@@ -248,6 +249,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ - INSTALL_SCRIPT = @INSTALL_SCRIPT@ - INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ - LDFLAGS = @LDFLAGS@ -+LD_AS_NEEDED = @LD_AS_NEEDED@ - LEX = @LEX@ - LEXLIB = @LEXLIB@ - LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ -@@ -279,6 +281,7 @@ SHELL = @SHELL@ - STRIP = @STRIP@ - USE_NLS = @USE_NLS@ - VERSION = 1 -+WEXTRA = @WEXTRA@ - XGETTEXT = @XGETTEXT@ - XGETTEXT_015 = @XGETTEXT_015@ - XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ -@@ -341,11 +344,11 @@ zip_LIBS = @zip_LIBS@ - AM_CPPFLAGS = -I. -I$(srcdir) -I$(top_srcdir)/lib -I.. \ - -I$(top_srcdir)/libelf -I$(top_srcdir)/libebl \ - -I$(top_srcdir)/libdw --AM_CFLAGS = -std=gnu99 -Wall -Wshadow -Wformat=2 \ -- $(if $($(*F)_no_Werror),,-Werror) \ -- $(if $($(*F)_no_Wunused),,-Wunused -Wextra) \ -- $($(*F)_CFLAGS) -- -+AM_CFLAGS = -std=gnu99 -Wall -Wshadow $(if \ -+ $($(*F)_no_Werror),,-Werror) $(if \ -+ $($(*F)_no_Wunused),,-Wunused $(WEXTRA)) $(if \ -+ $($(*F)_no_Wformat),-Wno-format,-Wformat=2) $($(*F)_CFLAGS) \ -+ $(am__append_1) - COMPILE.os = $(filter-out -fprofile-arcs -ftest-coverage, $(COMPILE)) - CLEANFILES = *.gcno *.gcda $(am_libasm_pic_a_OBJECTS) \ - libasm.so.$(VERSION) -@@ -373,7 +376,7 @@ libasm_a_SOURCES = asm_begin.c asm_abort - - libasm_pic_a_SOURCES = - am_libasm_pic_a_OBJECTS = $(libasm_a_SOURCES:.c=.os) --libasm_so_LDLIBS = $(am__append_1) -+libasm_so_LDLIBS = $(am__append_2) - libasm_so_SOURCES = - noinst_HEADERS = libasmP.h symbolhash.h - EXTRA_DIST = libasm.map ---- elfutils/libcpu/ChangeLog -+++ elfutils/libcpu/ChangeLog -@@ -51,6 +51,9 @@ - - 2009-01-23 Roland McGrath - -+ * i386_disasm.c (i386_disasm): Add abort after assert-constant for old -+ compilers that don't realize it's noreturn. -+ - * Makefile.am (i386_parse_CFLAGS): Use quotes around command - substitution that can produce leading whitespace. - -@@ -380,6 +383,11 @@ - * defs/i386.doc: New file. - * defs/x86_64: New file. - -+2005-04-04 Roland McGrath -+ -+ * Makefile.am (WEXTRA): New variable, substituted by configure. -+ (AM_CFLAGS): Use it instead of -Wextra. -+ - 2005-02-15 Ulrich Drepper - - * Makefile (AM_CFLAGS): Add -Wunused -Wextra -Wformat=2. ---- elfutils/libcpu/i386_disasm.c -+++ elfutils/libcpu/i386_disasm.c -@@ -822,6 +822,7 @@ i386_disasm (const uint8_t **startp, con - - default: - assert (! "INVALID not handled"); -+ abort (); - } - } - else ---- elfutils/libcpu/Makefile.in -+++ elfutils/libcpu/Makefile.in -@@ -84,6 +84,7 @@ DIST_COMMON = $(top_srcdir)/config/eu.am - $(srcdir)/Makefile.am i386_lex.c i386_parse.c \ - $(top_srcdir)/config/depcomp $(top_srcdir)/config/ylwrap \ - $(am__noinst_HEADERS_DIST) ChangeLog -+@BUILD_WERROR_TRUE@am__append_1 = $(if $($(*F)_no_Werror),,-Werror) - @MAINTAINER_MODE_TRUE@noinst_PROGRAMS = i386_gendis$(EXEEXT) - subdir = libcpu - ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -@@ -223,6 +224,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ - INSTALL_SCRIPT = @INSTALL_SCRIPT@ - INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ - LDFLAGS = @LDFLAGS@ -+LD_AS_NEEDED = @LD_AS_NEEDED@ - LEX = @LEX@ - LEXLIB = @LEXLIB@ - LEX_OUTPUT_ROOT = lex.$( -+ -+ * dwarf_begin_elf.c: Add fallback for be64toh if not defined. -+ - 2011-07-14 Mark Wielaard - - * libdw.h (dwarf_offdie): Fix documentation to mention .debug_info. -@@ -1076,6 +1080,10 @@ - - * dwarf_hasattr_integrate.c: Integrate DW_AT_specification too. - -+2009-08-17 Roland McGrath -+ -+ * libdw.h: Disable extern inlines for GCC 4.2. -+ - 2009-08-10 Roland McGrath - - * dwarf_getscopevar.c: Use dwarf_diename. -@@ -1844,6 +1852,11 @@ - - 2005-05-31 Roland McGrath - -+ * Makefile.am (WEXTRA): New variable, substituted by configure. -+ (AM_CFLAGS): Use it in place of -Wextra. -+ -+2005-05-31 Roland McGrath -+ - * dwarf_formref_die.c (dwarf_formref_die): Add CU header offset to - formref offset. - ---- elfutils/libdw/dwarf_begin_elf.c -+++ elfutils/libdw/dwarf_begin_elf.c -@@ -47,6 +47,14 @@ - #if USE_ZLIB - # include - # define crc32 loser_crc32 -+# ifndef be64toh -+# include -+# if __BYTE_ORDER == __LITTLE_ENDIAN -+# define be64toh(x) bswap_64 (x) -+# else -+# define be64toh(x) (x) -+# endif -+# endif - # include - # undef crc32 - #endif ---- elfutils/libdw/libdw.h -+++ elfutils/libdw/libdw.h -@@ -1003,7 +1003,7 @@ extern Dwarf_OOM dwarf_new_oom_handler ( - - - /* Inline optimizations. */ --#ifdef __OPTIMIZE__ -+#if defined __OPTIMIZE__ && !(__GNUC__ == 4 && __GNUC_MINOR__ == 2) - /* Return attribute code of given attribute. */ - __libdw_extern_inline unsigned int - dwarf_whatattr (Dwarf_Attribute *attr) ---- elfutils/libdw/Makefile.in -+++ elfutils/libdw/Makefile.in -@@ -84,7 +84,8 @@ DIST_COMMON = $(top_srcdir)/config/eu.am - $(srcdir)/Makefile.am $(top_srcdir)/config/depcomp \ - $(include_HEADERS) $(noinst_HEADERS) $(pkginclude_HEADERS) \ - ChangeLog --@BUILD_STATIC_TRUE@am__append_1 = -fpic -+@BUILD_WERROR_TRUE@am__append_1 = $(if $($(*F)_no_Werror),,-Werror) -+@BUILD_STATIC_TRUE@am__append_2 = -fpic - noinst_PROGRAMS = $(am__EXEEXT_1) - subdir = libdw - ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -@@ -298,6 +299,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ - INSTALL_SCRIPT = @INSTALL_SCRIPT@ - INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ - LDFLAGS = @LDFLAGS@ -+LD_AS_NEEDED = @LD_AS_NEEDED@ - LEX = @LEX@ - LEXLIB = @LEXLIB@ - LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ -@@ -329,6 +331,7 @@ SHELL = @SHELL@ - STRIP = @STRIP@ - USE_NLS = @USE_NLS@ - VERSION = 1 -+WEXTRA = @WEXTRA@ - XGETTEXT = @XGETTEXT@ - XGETTEXT_015 = @XGETTEXT_015@ - XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ -@@ -390,10 +393,11 @@ top_srcdir = @top_srcdir@ - zip_LIBS = @zip_LIBS@ - AM_CPPFLAGS = -I. -I$(srcdir) -I$(top_srcdir)/lib -I.. \ - -I$(srcdir)/../libelf --AM_CFLAGS = -std=gnu99 -Wall -Wshadow -Wformat=2 $(if \ -+AM_CFLAGS = -std=gnu99 -Wall -Wshadow $(if \ - $($(*F)_no_Werror),,-Werror) $(if \ -- $($(*F)_no_Wunused),,-Wunused -Wextra) $($(*F)_CFLAGS) \ -- $(am__append_1) -+ $($(*F)_no_Wunused),,-Wunused $(WEXTRA)) $(if \ -+ $($(*F)_no_Wformat),-Wno-format,-Wformat=2) $($(*F)_CFLAGS) \ -+ $(am__append_1) $(am__append_2) - COMPILE.os = $(filter-out -fprofile-arcs -ftest-coverage, $(COMPILE)) - CLEANFILES = *.gcno *.gcda - textrel_msg = echo "WARNING: TEXTREL found in '$@'" ---- elfutils/libdwelf/Makefile.in -+++ elfutils/libdwelf/Makefile.in -@@ -82,6 +82,7 @@ host_triplet = @host@ - DIST_COMMON = $(top_srcdir)/config/eu.am $(srcdir)/Makefile.in \ - $(srcdir)/Makefile.am $(top_srcdir)/config/depcomp \ - $(noinst_HEADERS) $(pkginclude_HEADERS) ChangeLog -+@BUILD_WERROR_TRUE@am__append_1 = $(if $($(*F)_no_Werror),,-Werror) - subdir = libdwelf - ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 - am__aclocal_m4_deps = $(top_srcdir)/m4/biarch.m4 \ -@@ -227,6 +228,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ - INSTALL_SCRIPT = @INSTALL_SCRIPT@ - INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ - LDFLAGS = @LDFLAGS@ -+LD_AS_NEEDED = @LD_AS_NEEDED@ - LEX = @LEX@ - LEXLIB = @LEXLIB@ - LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ -@@ -258,6 +260,7 @@ SHELL = @SHELL@ - STRIP = @STRIP@ - USE_NLS = @USE_NLS@ - VERSION = 1 -+WEXTRA = @WEXTRA@ - XGETTEXT = @XGETTEXT@ - XGETTEXT_015 = @XGETTEXT_015@ - XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ -@@ -320,11 +323,11 @@ zip_LIBS = @zip_LIBS@ - AM_CPPFLAGS = -I. -I$(srcdir) -I$(top_srcdir)/lib -I.. \ - -I$(srcdir)/../libelf -I$(srcdir)/../libdw \ - -I$(srcdir)/../libdwfl -I$(srcdir)/../libebl --AM_CFLAGS = -std=gnu99 -Wall -Wshadow -Wformat=2 \ -- $(if $($(*F)_no_Werror),,-Werror) \ -- $(if $($(*F)_no_Wunused),,-Wunused -Wextra) \ -- $($(*F)_CFLAGS) -- -+AM_CFLAGS = -std=gnu99 -Wall -Wshadow $(if \ -+ $($(*F)_no_Werror),,-Werror) $(if \ -+ $($(*F)_no_Wunused),,-Wunused $(WEXTRA)) $(if \ -+ $($(*F)_no_Wformat),-Wno-format,-Wformat=2) $($(*F)_CFLAGS) \ -+ $(am__append_1) - COMPILE.os = $(filter-out -fprofile-arcs -ftest-coverage, $(COMPILE)) - CLEANFILES = *.gcno *.gcda $(am_libdwelf_pic_a_OBJECTS) - textrel_msg = echo "WARNING: TEXTREL found in '$@'" ---- elfutils/libdwfl/ChangeLog -+++ elfutils/libdwfl/ChangeLog -@@ -571,6 +571,21 @@ - (dwfl_module_addrsym) (i_to_symfile): New function. - (dwfl_module_addrsym) (search_table): Use it. - -+2013-11-09 Jan Kratochvil -+ -+ Older OS compatibility bits. -+ * linux-core-attach.c (be64toh, le64toh, be32toh, le32toh): Provide -+ fallbacks if not defined by system. -+ -+2013-11-09 Jan Kratochvil -+ -+ Handle T-stopped detach for old kernels. -+ * linux-pid-attach.c (struct pid_arg): New field stopped. -+ (ptrace_attach): New parameter stoppedp. Set it appropriately. -+ (pid_set_initial_registers): Pass the new field. -+ (pid_thread_detach): Handle the case of STOPPED for old kernels. -+ (__libdwfl_attach_state_for_pid): Initialize STOPPED. -+ - 2013-11-07 Jan Kratochvil - Mark Wielaard - -@@ -2336,6 +2351,11 @@ - - 2005-07-21 Roland McGrath - -+ * Makefile.am (WEXTRA): New variable, substituted by configure. -+ (AM_CFLAGS): Use it in place of -Wextra. -+ -+2005-07-21 Roland McGrath -+ - * Makefile.am (noinst_HEADERS): Add loc2c.c. - - * test2.c (main): Check sscanf result to quiet warning. ---- elfutils/libdwfl/linux-core-attach.c -+++ elfutils/libdwfl/linux-core-attach.c -@@ -29,6 +29,35 @@ - #include "libdwflP.h" - #include - #include "system.h" -+#include -+#include -+#if __BYTE_ORDER == __LITTLE_ENDIAN -+# ifndef be64toh -+# define be64toh(x) bswap_64 (x) -+# endif -+# ifndef le64toh -+# define le64toh(x) (x) -+# endif -+# ifndef be32toh -+# define be32toh(x) bswap_32 (x) -+# endif -+# ifndef le32toh -+# define le32toh(x) (x) -+# endif -+#else -+# ifndef be64toh -+# define be64toh(x) (x) -+# endif -+# ifndef le64toh -+# define le64toh(x) bswap_64 (x) -+# endif -+# ifndef be32toh -+# define be32toh(x) (x) -+# endif -+# ifndef le32toh -+# define le32toh(x) bswap_32 (x) -+# endif -+#endif - - #include "../libdw/memory-access.h" - ---- elfutils/libdwfl/linux-pid-attach.c -+++ elfutils/libdwfl/linux-pid-attach.c -@@ -255,6 +255,11 @@ void - internal_function - __libdwfl_ptrace_detach (pid_t tid, bool tid_was_stopped) - { -+ // Older kernels (tested kernel-2.6.18-348.12.1.el5.x86_64) need special -+ // handling of the detachment to keep the process State: T (stopped). -+ if (tid_was_stopped) -+ syscall (__NR_tkill, tid, SIGSTOP); -+ - /* This handling is needed only on older Linux kernels such as - 2.6.32-358.23.2.el6.ppc64. Later kernels such as - 3.11.7-200.fc19.x86_64 remember the T (stopped) state -@@ -262,6 +267,15 @@ __libdwfl_ptrace_detach (pid_t tid, bool - PTRACE_DETACH. */ - ptrace (PTRACE_DETACH, tid, NULL, - (void *) (intptr_t) (tid_was_stopped ? SIGSTOP : 0)); -+ -+ if (tid_was_stopped) -+ { -+ // Wait till the SIGSTOP settles down. -+ int i; -+ for (i = 0; i < 100000; i++) -+ if (linux_proc_pid_is_stopped (tid)) -+ break; -+ } - } - - static void ---- elfutils/libdwfl/Makefile.in -+++ elfutils/libdwfl/Makefile.in -@@ -82,9 +82,10 @@ host_triplet = @host@ - DIST_COMMON = $(top_srcdir)/config/eu.am $(srcdir)/Makefile.in \ - $(srcdir)/Makefile.am $(top_srcdir)/config/depcomp \ - $(noinst_HEADERS) $(pkginclude_HEADERS) ChangeLog --@ZLIB_TRUE@am__append_1 = gzip.c --@BZLIB_TRUE@am__append_2 = bzip2.c --@LZMA_TRUE@am__append_3 = lzma.c -+@BUILD_WERROR_TRUE@am__append_1 = $(if $($(*F)_no_Werror),,-Werror) -+@ZLIB_TRUE@am__append_2 = gzip.c -+@BZLIB_TRUE@am__append_3 = bzip2.c -+@LZMA_TRUE@am__append_4 = lzma.c - subdir = libdwfl - ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 - am__aclocal_m4_deps = $(top_srcdir)/m4/biarch.m4 \ -@@ -286,6 +287,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ - INSTALL_SCRIPT = @INSTALL_SCRIPT@ - INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ - LDFLAGS = @LDFLAGS@ -+LD_AS_NEEDED = @LD_AS_NEEDED@ - LEX = @LEX@ - LEXLIB = @LEXLIB@ - LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ -@@ -317,6 +319,7 @@ SHELL = @SHELL@ - STRIP = @STRIP@ - USE_NLS = @USE_NLS@ - VERSION = 1 -+WEXTRA = @WEXTRA@ - XGETTEXT = @XGETTEXT@ - XGETTEXT_015 = @XGETTEXT_015@ - XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ -@@ -379,11 +382,11 @@ zip_LIBS = @zip_LIBS@ - AM_CPPFLAGS = -I. -I$(srcdir) -I$(top_srcdir)/lib -I.. -I$(srcdir) \ - -I$(srcdir)/../libelf -I$(srcdir)/../libebl \ - -I$(srcdir)/../libdw -I$(srcdir)/../libdwelf --AM_CFLAGS = -std=gnu99 -Wall -Wshadow -Wformat=2 \ -- $(if $($(*F)_no_Werror),,-Werror) \ -- $(if $($(*F)_no_Wunused),,-Wunused -Wextra) \ -- $($(*F)_CFLAGS) -- -+AM_CFLAGS = -std=gnu99 -Wall -Wshadow $(if \ -+ $($(*F)_no_Werror),,-Werror) $(if \ -+ $($(*F)_no_Wunused),,-Wunused $(WEXTRA)) $(if \ -+ $($(*F)_no_Wformat),-Wno-format,-Wformat=2) $($(*F)_CFLAGS) \ -+ $(am__append_1) - COMPILE.os = $(filter-out -fprofile-arcs -ftest-coverage, $(COMPILE)) - CLEANFILES = *.gcno *.gcda $(am_libdwfl_pic_a_OBJECTS) - textrel_msg = echo "WARNING: TEXTREL found in '$@'" -@@ -413,8 +416,8 @@ libdwfl_a_SOURCES = dwfl_begin.c dwfl_en - dwfl_module_register_names.c dwfl_segment_report_module.c \ - link_map.c core-file.c open.c image-header.c dwfl_frame.c \ - frame_unwind.c dwfl_frame_pc.c linux-pid-attach.c \ -- linux-core-attach.c dwfl_frame_regs.c $(am__append_1) \ -- $(am__append_2) $(am__append_3) -+ linux-core-attach.c dwfl_frame_regs.c $(am__append_2) \ -+ $(am__append_3) $(am__append_4) - libdwfl = $(libdw) - libdw = ../libdw/libdw.so - libelf = ../libelf/libelf.so ---- elfutils/libebl/ChangeLog -+++ elfutils/libebl/ChangeLog -@@ -765,6 +765,11 @@ - * Makefile.am (libebl_*_so_SOURCES): Set to $(*_SRCS) so dependency - tracking works right. - -+2005-05-31 Roland McGrath -+ -+ * Makefile.am (WEXTRA): New variable, substituted by configure. -+ (AM_CFLAGS): Use it in place of -Wextra. -+ - 2005-05-21 Ulrich Drepper - - * libebl_x86_64.map: Add x86_64_core_note. ---- elfutils/libebl/Makefile.in -+++ elfutils/libebl/Makefile.in -@@ -82,6 +82,7 @@ host_triplet = @host@ - DIST_COMMON = $(top_srcdir)/config/eu.am $(srcdir)/Makefile.in \ - $(srcdir)/Makefile.am $(top_srcdir)/config/depcomp \ - $(noinst_HEADERS) $(pkginclude_HEADERS) ChangeLog -+@BUILD_WERROR_TRUE@am__append_1 = $(if $($(*F)_no_Werror),,-Werror) - subdir = libebl - ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 - am__aclocal_m4_deps = $(top_srcdir)/m4/biarch.m4 \ -@@ -249,6 +250,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ - INSTALL_SCRIPT = @INSTALL_SCRIPT@ - INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ - LDFLAGS = @LDFLAGS@ -+LD_AS_NEEDED = @LD_AS_NEEDED@ - LEX = @LEX@ - LEXLIB = @LEXLIB@ - LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ -@@ -280,6 +282,7 @@ SHELL = @SHELL@ - STRIP = @STRIP@ - USE_NLS = @USE_NLS@ - VERSION = 1 -+WEXTRA = @WEXTRA@ - XGETTEXT = @XGETTEXT@ - XGETTEXT_015 = @XGETTEXT_015@ - XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ -@@ -342,9 +345,11 @@ zip_LIBS = @zip_LIBS@ - AM_CPPFLAGS = -I. -I$(srcdir) -I$(top_srcdir)/lib -I.. \ - -I$(srcdir)/../libelf -I$(srcdir)/../libdw \ - -I$(srcdir)/../libasm --AM_CFLAGS = -std=gnu99 -Wall -Wshadow -Wformat=2 $(if \ -+AM_CFLAGS = -std=gnu99 -Wall -Wshadow $(if \ - $($(*F)_no_Werror),,-Werror) $(if \ -- $($(*F)_no_Wunused),,-Wunused -Wextra) $($(*F)_CFLAGS) -fpic -+ $($(*F)_no_Wunused),,-Wunused $(WEXTRA)) $(if \ -+ $($(*F)_no_Wformat),-Wno-format,-Wformat=2) $($(*F)_CFLAGS) \ -+ $(am__append_1) -fpic - COMPILE.os = $(filter-out -fprofile-arcs -ftest-coverage, $(COMPILE)) - CLEANFILES = *.gcno *.gcda $(am_libebl_pic_a_OBJECTS) - textrel_msg = echo "WARNING: TEXTREL found in '$@'" ---- elfutils/libelf/ChangeLog -+++ elfutils/libelf/ChangeLog -@@ -244,6 +244,11 @@ - - * elf-knowledge.h (SECTION_STRIP_P): Remove < SHT_NUM check. - -+2011-03-10 Roland McGrath -+ -+ * gnuhash_xlate.h (elf_cvt_gnuhash): Avoid post-increment in bswap_32 -+ argument, since some implementations are buggy macros. -+ - 2011-02-26 Mark Wielaard - - * elf_end.c (elf_end): Call rwlock_unlock before rwlock_fini. -@@ -921,6 +926,11 @@ - - * elf.h: Update from glibc. - -+2005-05-31 Roland McGrath -+ -+ * Makefile.am (WEXTRA): New variable, substituted by configure. -+ (AM_CFLAGS): Use it in place of -Wextra. -+ - 2005-05-08 Roland McGrath - - * elf_begin.c (read_file) [_MUDFLAP]: Don't use mmap for now. ---- elfutils/libelf/common.h -+++ elfutils/libelf/common.h -@@ -139,7 +139,7 @@ libelf_release_all (Elf *elf) - (Var) = (sizeof (Var) == 1 \ - ? (unsigned char) (Var) \ - : (sizeof (Var) == 2 \ -- ? bswap_16 (Var) \ -+ ? (unsigned short int) bswap_16 (Var) \ - : (sizeof (Var) == 4 \ - ? bswap_32 (Var) \ - : bswap_64 (Var)))) -@@ -148,7 +148,7 @@ libelf_release_all (Elf *elf) - (Dst) = (sizeof (Var) == 1 \ - ? (unsigned char) (Var) \ - : (sizeof (Var) == 2 \ -- ? bswap_16 (Var) \ -+ ? (unsigned short int) bswap_16 (Var) \ - : (sizeof (Var) == 4 \ - ? bswap_32 (Var) \ - : bswap_64 (Var)))) ---- elfutils/libelf/gnuhash_xlate.h -+++ elfutils/libelf/gnuhash_xlate.h -@@ -1,5 +1,5 @@ - /* Conversion functions for versioning information. -- Copyright (C) 2006, 2007 Red Hat, Inc. -+ Copyright (C) 2006-2011 Red Hat, Inc. - This file is part of elfutils. - Written by Ulrich Drepper , 2006. - -@@ -68,7 +68,9 @@ elf_cvt_gnuhash (void *dest, const void - dest32 = (Elf32_Word *) &dest64[bitmask_words]; - while (len >= 4) - { -- *dest32++ = bswap_32 (*src32++); -+ *dest32 = bswap_32 (*src32); -+ ++dest32; -+ ++src32; - len -= 4; - } - } ---- elfutils/libelf/Makefile.in -+++ elfutils/libelf/Makefile.in -@@ -84,9 +84,10 @@ DIST_COMMON = $(top_srcdir)/config/eu.am - $(srcdir)/Makefile.am $(top_srcdir)/config/depcomp \ - $(include_HEADERS) $(noinst_HEADERS) $(pkginclude_HEADERS) \ - ChangeLog --@BUILD_STATIC_TRUE@am__append_1 = -fpic -+@BUILD_WERROR_TRUE@am__append_1 = $(if $($(*F)_no_Werror),,-Werror) -+@BUILD_STATIC_TRUE@am__append_2 = -fpic - noinst_PROGRAMS = $(am__EXEEXT_1) --@USE_LOCKS_TRUE@am__append_2 = -lpthread -+@USE_LOCKS_TRUE@am__append_3 = -lpthread - subdir = libelf - ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 - am__aclocal_m4_deps = $(top_srcdir)/m4/biarch.m4 \ -@@ -291,6 +292,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ - INSTALL_SCRIPT = @INSTALL_SCRIPT@ - INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ - LDFLAGS = @LDFLAGS@ -+LD_AS_NEEDED = @LD_AS_NEEDED@ - LEX = @LEX@ - LEXLIB = @LEXLIB@ - LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ -@@ -322,6 +324,7 @@ SHELL = @SHELL@ - STRIP = @STRIP@ - USE_NLS = @USE_NLS@ - VERSION = 1 -+WEXTRA = @WEXTRA@ - XGETTEXT = @XGETTEXT@ - XGETTEXT_015 = @XGETTEXT_015@ - XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ -@@ -382,10 +385,11 @@ top_builddir = @top_builddir@ - top_srcdir = @top_srcdir@ - zip_LIBS = @zip_LIBS@ - AM_CPPFLAGS = -I. -I$(srcdir) -I$(top_srcdir)/lib -I.. --AM_CFLAGS = -std=gnu99 -Wall -Wshadow -Wformat=2 $(if \ -+AM_CFLAGS = -std=gnu99 -Wall -Wshadow $(if \ - $($(*F)_no_Werror),,-Werror) $(if \ -- $($(*F)_no_Wunused),,-Wunused -Wextra) $($(*F)_CFLAGS) \ -- $(am__append_1) -+ $($(*F)_no_Wunused),,-Wunused $(WEXTRA)) $(if \ -+ $($(*F)_no_Wformat),-Wno-format,-Wformat=2) $($(*F)_CFLAGS) \ -+ $(am__append_1) $(am__append_2) - COMPILE.os = $(filter-out -fprofile-arcs -ftest-coverage, $(COMPILE)) - CLEANFILES = *.gcno *.gcda $(am_libelf_pic_a_OBJECTS) \ - libelf.so.$(VERSION) -@@ -449,7 +453,7 @@ libelf_a_SOURCES = elf_version.c elf_has - - libelf_pic_a_SOURCES = - am_libelf_pic_a_OBJECTS = $(libelf_a_SOURCES:.c=.os) --libelf_so_LDLIBS = $(am__append_2) -+libelf_so_LDLIBS = $(am__append_3) - libelf_so_SOURCES = - noinst_HEADERS = elf.h abstract.h common.h exttypes.h gelf_xlate.h libelfP.h \ - version_xlate.h gnuhash_xlate.h note_xlate.h dl-hash.h ---- elfutils/m4/Makefile.in -+++ elfutils/m4/Makefile.in -@@ -145,6 +145,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ - INSTALL_SCRIPT = @INSTALL_SCRIPT@ - INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ - LDFLAGS = @LDFLAGS@ -+LD_AS_NEEDED = @LD_AS_NEEDED@ - LEX = @LEX@ - LEXLIB = @LEXLIB@ - LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ -@@ -176,6 +177,7 @@ SHELL = @SHELL@ - STRIP = @STRIP@ - USE_NLS = @USE_NLS@ - VERSION = @VERSION@ -+WEXTRA = @WEXTRA@ - XGETTEXT = @XGETTEXT@ - XGETTEXT_015 = @XGETTEXT_015@ - XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ ---- elfutils/Makefile.in -+++ elfutils/Makefile.in -@@ -263,6 +263,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ - INSTALL_SCRIPT = @INSTALL_SCRIPT@ - INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ - LDFLAGS = @LDFLAGS@ -+LD_AS_NEEDED = @LD_AS_NEEDED@ - LEX = @LEX@ - LEXLIB = @LEXLIB@ - LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ -@@ -294,6 +295,7 @@ SHELL = @SHELL@ - STRIP = @STRIP@ - USE_NLS = @USE_NLS@ - VERSION = @VERSION@ -+WEXTRA = @WEXTRA@ - XGETTEXT = @XGETTEXT@ - XGETTEXT_015 = @XGETTEXT_015@ - XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ ---- elfutils/src/addr2line.c -+++ elfutils/src/addr2line.c -@@ -540,10 +540,10 @@ handle_address (const char *string, Dwfl - bool parsed = false; - int i, j; - char *name = NULL; -- if (sscanf (string, "(%m[^)])%" PRIiMAX "%n", &name, &addr, &i) == 2 -+ if (sscanf (string, "(%a[^)])%" PRIiMAX "%n", &name, &addr, &i) == 2 - && string[i] == '\0') - parsed = adjust_to_section (name, &addr, dwfl); -- switch (sscanf (string, "%m[^-+]%n%" PRIiMAX "%n", &name, &i, &addr, &j)) -+ switch (sscanf (string, "%a[^-+]%n%" PRIiMAX "%n", &name, &i, &addr, &j)) - { - default: - break; ---- elfutils/src/ChangeLog -+++ elfutils/src/ChangeLog -@@ -1371,8 +1371,16 @@ - * readelf.c (attr_callback): Use print_block only when we don't use - print_ops. - -+2009-08-17 Roland McGrath -+ -+ * ld.h: Disable extern inlines for GCC 4.2. -+ - 2009-08-14 Roland McGrath - -+ * strings.c (read_block): Conditionalize posix_fadvise use -+ on [POSIX_FADV_SEQUENTIAL]. -+ From Petr Salinger . -+ - * ar.c (do_oper_extract): Use pathconf instead of statfs. - - 2009-08-01 Ulrich Drepper -@@ -1536,6 +1544,8 @@ - * readelf.c (print_debug_frame_section): Use t instead of j formats - for ptrdiff_t OFFSET. - -+ * addr2line.c (handle_address): Use %a instead of %m for compatibility. -+ - 2009-01-21 Ulrich Drepper - - * elflint.c (check_program_header): Fix typo in .eh_frame_hdr section -@@ -1719,6 +1729,11 @@ - that matches its PT_LOAD's p_flags &~ PF_W. On sparc, PF_X really - is valid in RELRO. - -+2008-03-01 Roland McGrath -+ -+ * readelf.c (dump_archive_index): Tweak portability hack -+ to match [__GNUC__ < 4] too. -+ - 2008-02-29 Roland McGrath - - * readelf.c (print_attributes): Add a cast. -@@ -1970,6 +1985,8 @@ - - * readelf.c (hex_dump): Fix rounding error in whitespace calculation. - -+ * Makefile.am (readelf_no_Werror): New variable. -+ - 2007-10-15 Roland McGrath - - * make-debug-archive.in: New file. -@@ -2409,6 +2426,10 @@ - * elflint.c (valid_e_machine): Add EM_ALPHA. - Reported by Christian Aichinger . - -+ * strings.c (map_file): Define POSIX_MADV_SEQUENTIAL to -+ MADV_SEQUENTIAL if undefined. Don't call posix_madvise -+ if neither is defined. -+ - 2006-08-08 Ulrich Drepper - - * elflint.c (check_dynamic): Don't require DT_HASH for DT_SYMTAB. -@@ -2485,6 +2506,10 @@ - * Makefile.am: Add hacks to create dependency files for non-generic - linker. - -+2006-04-05 Roland McGrath -+ -+ * strings.c (MAP_POPULATE): Define to 0 if undefined. -+ - 2006-06-12 Ulrich Drepper - - * ldgeneric.c (ld_generic_generate_sections): Don't create .interp -@@ -2833,6 +2858,11 @@ - * readelf.c (print_debug_loc_section): Fix indentation for larger - address size. - -+2005-05-31 Roland McGrath -+ -+ * Makefile.am (WEXTRA): New variable, substituted by configure. -+ (AM_CFLAGS): Use it in place of -Wextra. -+ - 2005-05-30 Roland McGrath - - * readelf.c (print_debug_line_section): Print section offset of each ---- elfutils/src/findtextrel.c -+++ elfutils/src/findtextrel.c -@@ -502,7 +502,11 @@ ptrcompare (const void *p1, const void * - - - static void --check_rel (size_t nsegments, struct segments segments[nsegments], -+check_rel (size_t nsegments, struct segments segments[ -+#if __GNUC__ >= 4 -+ nsegments -+#endif -+ ], - GElf_Addr addr, Elf *elf, Elf_Scn *symscn, Dwarf *dw, - const char *fname, bool more_than_one, void **knownsrcs) - { ---- elfutils/src/ld.h -+++ elfutils/src/ld.h -@@ -1114,6 +1114,7 @@ extern bool dynamically_linked_p (void); - - /* Checked whether the symbol is undefined and referenced from a DSO. */ - extern bool linked_from_dso_p (struct scninfo *scninfo, size_t symidx); -+#if defined __OPTIMIZE__ && !(__GNUC__ == 4 && __GNUC_MINOR__ == 2) - #ifdef __GNUC_STDC_INLINE__ - __attribute__ ((__gnu_inline__)) - #endif -@@ -1131,5 +1132,6 @@ linked_from_dso_p (struct scninfo *scnin - - return sym->defined && sym->in_dso; - } -+#endif /* Optimizing and not GCC 4.2. */ - - #endif /* ld.h */ ---- elfutils/src/Makefile.am -+++ elfutils/src/Makefile.am -@@ -89,6 +89,11 @@ endif - # XXX While the file is not finished, don't warn about this - ldgeneric_no_Wunused = yes - -+# Buggy old compilers or libc headers. -+readelf_no_Werror = yes -+strings_no_Werror = yes -+addr2line_no_Wformat = yes -+ - readelf_LDADD = $(libdw) $(libebl) $(libelf) $(libeu) -ldl - nm_LDADD = $(libdw) $(libebl) $(libelf) $(libeu) -ldl \ - $(demanglelib) ---- elfutils/src/Makefile.in -+++ elfutils/src/Makefile.in -@@ -85,6 +85,7 @@ DIST_COMMON = $(top_srcdir)/config/eu.am - $(srcdir)/Makefile.am ldlex.c ldscript.c \ - $(top_srcdir)/config/depcomp $(top_srcdir)/config/ylwrap \ - $(noinst_HEADERS) ChangeLog -+@BUILD_WERROR_TRUE@am__append_1 = $(if $($(*F)_no_Werror),,-Werror) - bin_PROGRAMS = readelf$(EXEEXT) nm$(EXEEXT) size$(EXEEXT) \ - strip$(EXEEXT) ld$(EXEEXT) elflint$(EXEEXT) \ - findtextrel$(EXEEXT) addr2line$(EXEEXT) elfcmp$(EXEEXT) \ -@@ -93,9 +94,9 @@ bin_PROGRAMS = readelf$(EXEEXT) nm$(EXEE - @NATIVE_LD_FALSE@noinst_PROGRAMS = $(am__EXEEXT_1) - # We never build this library but we need to get the dependency files - # of all the linker backends that might be used in a non-generic linker. --@NEVER_TRUE@am__append_1 = libdummy.a -+@NEVER_TRUE@am__append_2 = libdummy.a - # -ldl is always needed for libebl. --@NATIVE_LD_TRUE@am__append_2 = libld_elf.a -+@NATIVE_LD_TRUE@am__append_3 = libld_elf.a - @NATIVE_LD_TRUE@am_libld_elf_i386_pic_a_OBJECTS = - subdir = src - ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -@@ -159,7 +160,7 @@ am_ld_OBJECTS = ld.$(OBJEXT) ldgeneric.$ - ldscript.$(OBJEXT) symbolhash.$(OBJEXT) sectionhash.$(OBJEXT) \ - versionhash.$(OBJEXT) - ld_OBJECTS = $(am_ld_OBJECTS) --ld_DEPENDENCIES = $(libebl) $(libelf) $(libeu) $(am__append_2) -+ld_DEPENDENCIES = $(libebl) $(libelf) $(libeu) $(am__append_3) - ld_LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(ld_LDFLAGS) $(LDFLAGS) -o \ - $@ - am_libld_elf_i386_so_OBJECTS = -@@ -340,6 +341,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ - INSTALL_SCRIPT = @INSTALL_SCRIPT@ - INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ - LDFLAGS = @LDFLAGS@ -+LD_AS_NEEDED = @LD_AS_NEEDED@ - LEX = @LEX@ - LEXLIB = @LEXLIB@ - LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ -@@ -371,6 +373,7 @@ SHELL = @SHELL@ - STRIP = @STRIP@ - USE_NLS = @USE_NLS@ - VERSION = @VERSION@ -+WEXTRA = @WEXTRA@ - XGETTEXT = @XGETTEXT@ - XGETTEXT_015 = @XGETTEXT_015@ - XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ -@@ -434,11 +437,11 @@ AM_CPPFLAGS = -I. -I$(srcdir) -I$(top_sr - -I$(srcdir)/../libelf -I$(srcdir)/../libebl \ - -I$(srcdir)/../libdw -I$(srcdir)/../libdwelf \ - -I$(srcdir)/../libdwfl -I$(srcdir)/../libasm --AM_CFLAGS = -std=gnu99 -Wall -Wshadow -Wformat=2 \ -- $(if $($(*F)_no_Werror),,-Werror) \ -- $(if $($(*F)_no_Wunused),,-Wunused -Wextra) \ -- $($(*F)_CFLAGS) -- -+AM_CFLAGS = -std=gnu99 -Wall -Wshadow $(if \ -+ $($(*F)_no_Werror),,-Werror) $(if \ -+ $($(*F)_no_Wunused),,-Wunused $(WEXTRA)) $(if \ -+ $($(*F)_no_Wformat),-Wno-format,-Wformat=2) $($(*F)_CFLAGS) \ -+ $(am__append_1) - COMPILE.os = $(filter-out -fprofile-arcs -ftest-coverage, $(COMPILE)) - CLEANFILES = *.gcno *.gcda make-debug-archive none_ld.os \ - $(ld_modules:.c=.os) *.gconv -@@ -452,8 +455,8 @@ AM_LFLAGS = -Pld -olex.yy.c - native_ld = @native_ld@ - ld_dsos = libld_elf_i386_pic.a - @NATIVE_LD_FALSE@noinst_LIBRARIES = libld_elf.a libar.a $(ld_dsos) \ --@NATIVE_LD_FALSE@ $(am__append_1) --@NATIVE_LD_TRUE@noinst_LIBRARIES = libld_elf.a libar.a $(am__append_1) -+@NATIVE_LD_FALSE@ $(am__append_2) -+@NATIVE_LD_TRUE@noinst_LIBRARIES = libld_elf.a libar.a $(am__append_2) - @NATIVE_LD_TRUE@native_ld_cflags = -DBASE_ELF_NAME=elf_$(base_cpu) - @NEVER_TRUE@libdummy_a_SOURCES = i386_ld.c - ld_SOURCES = ld.c ldgeneric.c ldlex.l ldscript.y symbolhash.c sectionhash.c \ -@@ -479,13 +482,18 @@ libeu = ../lib/libeu.a - - # XXX While the file is not finished, don't warn about this - ldgeneric_no_Wunused = yes -+ -+# Buggy old compilers or libc headers. -+readelf_no_Werror = yes -+strings_no_Werror = yes -+addr2line_no_Wformat = yes - readelf_LDADD = $(libdw) $(libebl) $(libelf) $(libeu) -ldl - nm_LDADD = $(libdw) $(libebl) $(libelf) $(libeu) -ldl \ - $(demanglelib) - - size_LDADD = $(libelf) $(libeu) - strip_LDADD = $(libebl) $(libelf) $(libeu) -ldl --ld_LDADD = $(libebl) $(libelf) $(libeu) -ldl $(am__append_2) -+ld_LDADD = $(libebl) $(libelf) $(libeu) -ldl $(am__append_3) - ld_LDFLAGS = -rdynamic - elflint_LDADD = $(libebl) $(libelf) $(libeu) -ldl - findtextrel_LDADD = $(libdw) $(libelf) ---- elfutils/src/readelf.c -+++ elfutils/src/readelf.c -@@ -4368,10 +4368,12 @@ listptr_base (struct listptr *p) - return base; - } - -+static const char *listptr_name; -+ - static int --compare_listptr (const void *a, const void *b, void *arg) -+compare_listptr (const void *a, const void *b) - { -- const char *name = arg; -+ const char *const name = listptr_name; - struct listptr *p1 = (void *) a; - struct listptr *p2 = (void *) b; - -@@ -4467,8 +4469,11 @@ static void - sort_listptr (struct listptr_table *table, const char *name) - { - if (table->n > 0) -- qsort_r (table->table, table->n, sizeof table->table[0], -- &compare_listptr, (void *) name); -+ { -+ listptr_name = name; -+ qsort (table->table, table->n, sizeof table->table[0], -+ &compare_listptr); -+ } - } - - static bool -@@ -9539,7 +9544,7 @@ dump_archive_index (Elf *elf, const char - if (unlikely (elf_rand (elf, as_off) == 0) - || unlikely ((subelf = elf_begin (-1, ELF_C_READ_MMAP, elf)) - == NULL)) --#if __GLIBC__ < 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ < 7) -+#if __GLIBC__ < 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ < 7) || __GNUC__ < 4 - while (1) - #endif - error (EXIT_FAILURE, 0, ---- elfutils/src/strings.c -+++ elfutils/src/strings.c -@@ -43,6 +43,10 @@ - - #include - -+#ifndef MAP_POPULATE -+# define MAP_POPULATE 0 -+#endif -+ - - /* Prototypes of local functions. */ - static int read_fd (int fd, const char *fname, off64_t fdlen); -@@ -489,8 +493,13 @@ map_file (int fd, off64_t start_off, off - fd, start_off); - if (mem != MAP_FAILED) - { -+#if !defined POSIX_MADV_SEQUENTIAL && defined MADV_SEQUENTIAL -+# define POSIX_MADV_SEQUENTIAL MADV_SEQUENTIAL -+#endif -+#ifdef POSIX_MADV_SEQUENTIAL - /* We will go through the mapping sequentially. */ - (void) posix_madvise (mem, map_size, POSIX_MADV_SEQUENTIAL); -+#endif - break; - } - if (errno != EINVAL && errno != ENOMEM) -@@ -581,9 +590,11 @@ read_block (int fd, const char *fname, o - elfmap_off = from & ~(ps - 1); - elfmap_base = elfmap = map_file (fd, elfmap_off, fdlen, &elfmap_size); - -+#ifdef POSIX_FADV_SEQUENTIAL - if (unlikely (elfmap == MAP_FAILED)) - /* Let the kernel know we are going to read everything in sequence. */ - (void) posix_fadvise (fd, 0, 0, POSIX_FADV_SEQUENTIAL); -+#endif - } - - if (unlikely (elfmap == MAP_FAILED)) ---- elfutils/src/strip.c -+++ elfutils/src/strip.c -@@ -45,6 +45,12 @@ - #include - #include - -+#ifdef HAVE_FUTIMES -+# define FUTIMES(fd, fname, tvp) futimes (fd, tvp) -+#else -+# define FUTIMES(fd, fname, tvp) utimes (fname, tvp) -+#endif -+ - typedef uint8_t GElf_Byte; - - /* Name and version of program. */ -@@ -318,8 +324,18 @@ process_file (const char *fname) - - /* If we have to preserve the timestamp, we need it in the - format utimes() understands. */ -+#ifdef HAVE_STRUCT_STAT_ST_ATIM - TIMESPEC_TO_TIMEVAL (&tv[0], &pre_st.st_atim); -+#else -+ tv[0].tv_sec = pre_st.st_atime; -+ tv[0].tv_usec = 0; -+#endif -+#ifdef HAVE_STRUCT_STAT_ST_MTIM - TIMESPEC_TO_TIMEVAL (&tv[1], &pre_st.st_mtim); -+#else -+ tv[1].tv_sec = pre_st.st_atime; -+ tv[1].tv_usec = 0; -+#endif - } - - /* Open the file. */ -@@ -2091,7 +2107,7 @@ while computing checksum for debug infor - /* If requested, preserve the timestamp. */ - if (tvp != NULL) - { -- if (futimes (fd, tvp) != 0) -+ if (FUTIMES (fd, output_fname, tvp) != 0) - { - error (0, errno, gettext ("\ - cannot set access and modification date of '%s'"), -@@ -2148,7 +2164,7 @@ handle_ar (int fd, Elf *elf, const char - - if (tvp != NULL) - { -- if (unlikely (futimes (fd, tvp) != 0)) -+ if (unlikely (FUTIMES (fd, fname, tvp) != 0)) - { - error (0, errno, gettext ("\ - cannot set access and modification date of '%s'"), fname); ---- elfutils/tests/backtrace.c -+++ elfutils/tests/backtrace.c -@@ -36,6 +36,7 @@ - #include - #include - #include -+#include - #include ELFUTILS_HEADER(dwfl) - - #ifndef __linux__ ---- elfutils/tests/ChangeLog -+++ elfutils/tests/ChangeLog -@@ -421,6 +421,13 @@ - - 2013-12-02 Jan Kratochvil - -+ Handle T-stopped detach for old kernels. -+ * backtrace.c: Include sys/syscall.h. -+ (linux_proc_pid_is_stopped): New function. -+ (ptrace_detach_stopped): Handle old kernels. -+ -+2013-12-02 Jan Kratochvil -+ - * Makefile.am (check_PROGRAMS): Add backtrace, backtrace-child, - backtrace-data and backtrace-dwarf. - (BUILT_SOURCES, clean-local, backtrace-child-biarch): New. -@@ -1285,6 +1292,8 @@ - - 2008-01-21 Roland McGrath - -+ * line2addr.c (main): Revert last change. -+ - * testfile45.S.bz2: Add tests for cltq, cqto. - * testfile45.expect.bz2: Adjust. - -@@ -1993,6 +2002,11 @@ - * Makefile.am (TESTS): Add run-elflint-test.sh. - (EXTRA_DIST): Add run-elflint-test.sh and testfile18.bz2. - -+2005-05-31 Roland McGrath -+ -+ * Makefile.am (WEXTRA): New variable, substituted by configure. -+ (AM_CFLAGS): Use it in place of -Wextra. -+ - 2005-05-24 Ulrich Drepper - - * get-files.c (main): Use correct format specifier. ---- elfutils/tests/line2addr.c -+++ elfutils/tests/line2addr.c -@@ -124,7 +124,7 @@ main (int argc, char *argv[]) - { - struct args a = { .arg = argv[cnt] }; - -- switch (sscanf (a.arg, "%m[^:]:%d", &a.file, &a.line)) -+ switch (sscanf (a.arg, "%a[^:]:%d", &a.file, &a.line)) - { - default: - case 0: ---- elfutils/tests/Makefile.am -+++ elfutils/tests/Makefile.am -@@ -365,6 +365,7 @@ get_lines_LDADD = $(libdw) $(libelf) - get_files_LDADD = $(libdw) $(libelf) - get_aranges_LDADD = $(libdw) $(libelf) - allfcts_LDADD = $(libdw) $(libelf) -+line2addr_no_Wformat = yes - line2addr_LDADD = $(libdw) - addrscopes_LDADD = $(libdw) - funcscopes_LDADD = $(libdw) ---- elfutils/tests/Makefile.in -+++ elfutils/tests/Makefile.in -@@ -80,13 +80,14 @@ host_triplet = @host@ - DIST_COMMON = $(top_srcdir)/config/eu.am $(srcdir)/Makefile.in \ - $(srcdir)/Makefile.am $(top_srcdir)/config/depcomp \ - $(top_srcdir)/config/test-driver ChangeLog --@STANDALONE_FALSE@am__append_1 = -I$(top_srcdir)/libasm -I$(top_srcdir)/libdw \ -+@BUILD_WERROR_TRUE@am__append_1 = $(if $($(*F)_no_Werror),,-Werror) -+@STANDALONE_FALSE@am__append_2 = -I$(top_srcdir)/libasm -I$(top_srcdir)/libdw \ - @STANDALONE_FALSE@ -I$(top_srcdir)/libdwfl -I$(top_srcdir)/libdwelf \ - @STANDALONE_FALSE@ -I$(top_srcdir)/libebl -I$(top_srcdir)/libelf \ - @STANDALONE_FALSE@ -I$(top_srcdir)/lib -I.. - --@STANDALONE_FALSE@am__append_2 = -Wl,-rpath-link,../libasm:../libdw:../libelf --@TESTS_RPATH_TRUE@am__append_3 = -Wl,-rpath,$(BUILD_RPATH) -+@STANDALONE_FALSE@am__append_3 = -Wl,-rpath-link,../libasm:../libdw:../libelf -+@TESTS_RPATH_TRUE@am__append_4 = -Wl,-rpath,$(BUILD_RPATH) - check_PROGRAMS = arextract$(EXEEXT) arsymtest$(EXEEXT) \ - newfile$(EXEEXT) saridx$(EXEEXT) scnnames$(EXEEXT) \ - sectiondump$(EXEEXT) showptable$(EXEEXT) update1$(EXEEXT) \ -@@ -113,7 +114,7 @@ check_PROGRAMS = arextract$(EXEEXT) arsy - deleted$(EXEEXT) deleted-lib.so$(EXEEXT) \ - aggregate_size$(EXEEXT) vdsosyms$(EXEEXT) $(am__EXEEXT_1) \ - $(am__EXEEXT_2) $(am__EXEEXT_4) --@BIARCH_TRUE@am__append_4 = backtrace-child-biarch -+@BIARCH_TRUE@am__append_5 = backtrace-child-biarch - TESTS = run-arextract.sh run-arsymtest.sh newfile$(EXEEXT) \ - test-nlist$(EXEEXT) update1$(EXEEXT) update2$(EXEEXT) \ - update3$(EXEEXT) update4$(EXEEXT) run-show-die-info.sh \ -@@ -159,14 +160,14 @@ TESTS = run-arextract.sh run-arsymtest.s - run-stack-i-test.sh run-readelf-dwz-multi.sh \ - run-allfcts-multi.sh run-deleted.sh run-linkmap-cut.sh \ - run-aggregate-size.sh vdsosyms$(EXEEXT) run-readelf-A.sh \ -- $(am__EXEEXT_2) $(am__append_7) $(am__append_8) \ -+ $(am__EXEEXT_2) $(am__append_8) $(am__append_9) \ - $(am__EXEEXT_4) --@STANDALONE_FALSE@am__append_5 = msg_tst md5-sha1-test - @STANDALONE_FALSE@am__append_6 = msg_tst md5-sha1-test --@LZMA_TRUE@am__append_7 = run-readelf-s.sh run-dwflsyms.sh --@ZLIB_TRUE@am__append_8 = run-readelf-zdebug.sh --@HAVE_LIBASM_TRUE@am__append_9 = $(asm_TESTS) -+@STANDALONE_FALSE@am__append_7 = msg_tst md5-sha1-test -+@LZMA_TRUE@am__append_8 = run-readelf-s.sh run-dwflsyms.sh -+@ZLIB_TRUE@am__append_9 = run-readelf-zdebug.sh - @HAVE_LIBASM_TRUE@am__append_10 = $(asm_TESTS) -+@HAVE_LIBASM_TRUE@am__append_11 = $(asm_TESTS) - subdir = tests - ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 - am__aclocal_m4_deps = $(top_srcdir)/m4/biarch.m4 \ -@@ -787,6 +788,7 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ - INSTALL_SCRIPT = @INSTALL_SCRIPT@ - INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ - LDFLAGS = @LDFLAGS@ -+LD_AS_NEEDED = @LD_AS_NEEDED@ - LEX = @LEX@ - LEXLIB = @LEXLIB@ - LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ -@@ -818,6 +820,7 @@ SHELL = @SHELL@ - STRIP = @STRIP@ - USE_NLS = @USE_NLS@ - VERSION = @VERSION@ -+WEXTRA = @WEXTRA@ - XGETTEXT = @XGETTEXT@ - XGETTEXT_015 = @XGETTEXT_015@ - XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ -@@ -877,12 +880,12 @@ top_build_prefix = @top_build_prefix@ - top_builddir = @top_builddir@ - top_srcdir = @top_srcdir@ - zip_LIBS = @zip_LIBS@ --AM_CPPFLAGS = -I. -I$(srcdir) -I$(top_srcdir)/lib -I.. $(am__append_1) --AM_CFLAGS = -std=gnu99 -Wall -Wshadow -Wformat=2 \ -- $(if $($(*F)_no_Werror),,-Werror) \ -- $(if $($(*F)_no_Wunused),,-Wunused -Wextra) \ -- $($(*F)_CFLAGS) -- -+AM_CPPFLAGS = -I. -I$(srcdir) -I$(top_srcdir)/lib -I.. $(am__append_2) -+AM_CFLAGS = -std=gnu99 -Wall -Wshadow $(if \ -+ $($(*F)_no_Werror),,-Werror) $(if \ -+ $($(*F)_no_Wunused),,-Wunused $(WEXTRA)) $(if \ -+ $($(*F)_no_Wformat),-Wno-format,-Wformat=2) $($(*F)_CFLAGS) \ -+ $(am__append_1) - COMPILE.os = $(filter-out -fprofile-arcs -ftest-coverage, $(COMPILE)) - CLEANFILES = *.gcno *.gcda - textrel_msg = echo "WARNING: TEXTREL found in '$@'" -@@ -890,7 +893,7 @@ textrel_msg = echo "WARNING: TEXTREL fou - @FATAL_TEXTREL_TRUE@textrel_found = $(textrel_msg); exit 1 - textrel_check = if $(READELF) -d $@ | fgrep -q TEXTREL; then $(textrel_found); fi - BUILD_RPATH = \$$ORIGIN/../libasm:\$$ORIGIN/../libdw:\$$ORIGIN/../backends:\$$ORIGIN/../libelf --AM_LDFLAGS = $(am__append_2) $(am__append_3) -+AM_LDFLAGS = $(am__append_3) $(am__append_4) - @TESTS_RPATH_FALSE@tests_rpath = no - @TESTS_RPATH_TRUE@tests_rpath = yes - asm_TESTS = asm-tst1 asm-tst2 asm-tst3 asm-tst4 asm-tst5 \ -@@ -1106,6 +1109,7 @@ get_lines_LDADD = $(libdw) $(libelf) - get_files_LDADD = $(libdw) $(libelf) - get_aranges_LDADD = $(libdw) $(libelf) - allfcts_LDADD = $(libdw) $(libelf) -+line2addr_no_Wformat = yes - line2addr_LDADD = $(libdw) - addrscopes_LDADD = $(libdw) - funcscopes_LDADD = $(libdw) diff --git a/libs/elfutils/patches/002-argp_standalone.patch b/libs/elfutils/patches/002-argp_standalone.patch deleted file mode 100644 index d1511a909..000000000 --- a/libs/elfutils/patches/002-argp_standalone.patch +++ /dev/null @@ -1,14 +0,0 @@ ---- elfutils-0.160/lib/color.c.old 2014-11-06 03:46:43.584116134 -0200 -+++ elfutils-0.160/lib/color.c 2014-11-06 03:47:25.840116128 -0200 -@@ -131,8 +131,10 @@ - - 'never', 'no', 'none'\n\ - - 'auto', 'tty', 'if-tty'\n"), - program_invocation_short_name, arg); -+ char program_invocation_short_name_nonconst[sizeof(program_invocation_short_name)]; -+ strcpy(program_invocation_short_name_nonconst, program_invocation_short_name); - argp_help (&color_argp, stderr, ARGP_HELP_SEE, -- program_invocation_short_name); -+ program_invocation_short_name_nonconst); - exit (EXIT_FAILURE); - } - } diff --git a/libs/elfutils/patches/003-libint-stub.patch b/libs/elfutils/patches/003-libint-stub.patch deleted file mode 100644 index c9ceb37ca..000000000 --- a/libs/elfutils/patches/003-libint-stub.patch +++ /dev/null @@ -1,49 +0,0 @@ ---- elfutils-0.160/libelf/libelfP.h.old 2014-11-06 01:47:55.420116984 -0200 -+++ elfutils-0.160/libelf/libelfP.h 2014-11-06 01:48:33.368116980 -0200 -@@ -43,6 +43,9 @@ - #include - -+#ifdef _ /* fix libintl-stub */ -+#undef _ -+#endif - /* gettext helper macros. */ - #define _(Str) dgettext ("elfutils", Str) - - ---- elfutils-0.160/libdw/libdwP.h.old 2014-11-06 02:27:12.628116703 -0200 -+++ elfutils-0.160/libdw/libdwP.h 2014-11-06 02:27:39.816116700 -0200 -@@ -36,7 +36,9 @@ - #include - #include - -- -+#ifdef _ /* fix libintl-stub */ -+#undef _ -+#endif - /* gettext helper macros. */ - #define _(Str) dgettext ("elfutils", Str) - ---- elfutils-0.160/libdwfl/libdwflP.h.old 2014-11-06 02:31:20.112116673 -0200 -+++ elfutils-0.160/libdwfl/libdwflP.h 2014-11-06 02:33:00.548116661 -0200 -@@ -46,6 +46,9 @@ - - typedef struct Dwfl_Process Dwfl_Process; - -+#ifdef _ /* fix libintl-stub */ -+#undef _ -+#endif - /* gettext helper macros. */ - #define _(Str) dgettext ("elfutils", Str) - ---- elfutils-0.160/libasm/libasmP.h.old 2014-11-06 02:31:32.064116672 -0200 -+++ elfutils-0.160/libasm/libasmP.h 2014-11-06 02:33:08.656116660 -0200 -@@ -33,6 +33,9 @@ - - #include - -+#ifdef _ /* fix libintl-stub */ -+#undef _ -+#endif - /* gettext helper macros. */ - #define _(Str) dgettext ("elfutils", Str) - diff --git a/libs/elfutils/patches/004-maybe-uninitialized.patch b/libs/elfutils/patches/004-maybe-uninitialized.patch deleted file mode 100644 index 7d54d71fc..000000000 --- a/libs/elfutils/patches/004-maybe-uninitialized.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- elfutils-0.160/libelf/elf_getarsym.c.org 2014-11-06 01:56:58.664116919 -0200 -+++ elfutils-0.160/libelf/elf_getarsym.c 2014-11-06 01:57:09.396116918 -0200 -@@ -166,7 +166,7 @@ - - /* We have an archive. The first word in there is the number of - entries in the table. */ -- uint64_t n; -+ uint64_t n = 0; - size_t off = elf->start_offset + SARMAG + sizeof (struct ar_hdr); - if (read_number_entries (&n, elf, &off, index64_p) < 0) - { diff --git a/libs/elfutils/patches/004-memcpy_def.patch b/libs/elfutils/patches/004-memcpy_def.patch deleted file mode 100644 index 62e4d0ca9..000000000 --- a/libs/elfutils/patches/004-memcpy_def.patch +++ /dev/null @@ -1,14 +0,0 @@ ---- a/libelf/libelf.h -+++ b/libelf/libelf.h -@@ -34,6 +34,11 @@ - /* Get the ELF types. */ - #include - -+#ifndef _LIBC -+#ifndef __mempcpy -+#define __mempcpy mempcpy -+#endif -+#endif - - /* Known translation types. */ - typedef enum diff --git a/libs/elfutils/patches/005-build_only_libs.patch b/libs/elfutils/patches/005-build_only_libs.patch deleted file mode 100644 index b8b459459..000000000 --- a/libs/elfutils/patches/005-build_only_libs.patch +++ /dev/null @@ -1,24 +0,0 @@ ---- elfutils-0.160/Makefile.in.old 2014-11-06 03:56:04.828116067 -0200 -+++ elfutils-0.160/Makefile.in 2014-11-06 03:57:03.380116060 -0200 -@@ -359,8 +359,7 @@ - pkginclude_HEADERS = version.h - - # Add doc back when we have some real content. --SUBDIRS = config m4 lib libelf libebl libdwelf libdwfl libdw libcpu libasm \ -- backends src po tests -+SUBDIRS = config m4 lib libelf libebl libdwelf libdwfl libdw libasm - - EXTRA_DIST = elfutils.spec GPG-KEY NOTES CONTRIBUTING \ - COPYING COPYING-GPLV2 COPYING-LGPLV3 ---- elfutils-0.160/Makefile.am.old 2014-11-06 03:58:13.012116051 -0200 -+++ elfutils-0.160/Makefile.am 2014-11-06 03:58:25.948116050 -0200 -@@ -23,8 +23,7 @@ - pkginclude_HEADERS = version.h - - # Add doc back when we have some real content. --SUBDIRS = config m4 lib libelf libebl libdwelf libdwfl libdw libcpu libasm \ -- backends src po tests -+SUBDIRS = config m4 lib libelf libebl libdwelf libdwfl libdw libasm - - EXTRA_DIST = elfutils.spec GPG-KEY NOTES CONTRIBUTING \ - COPYING COPYING-GPLV2 COPYING-LGPLV3 diff --git a/libs/elfutils/patches/006-libdw_LIBS.patch b/libs/elfutils/patches/006-libdw_LIBS.patch deleted file mode 100644 index aaa35f943..000000000 --- a/libs/elfutils/patches/006-libdw_LIBS.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- elfutils-0.161/libdw/Makefile.in.orig 2015-01-16 03:50:15.311237461 -0200 -+++ elfutils-0.161/libdw/Makefile.in 2015-01-16 03:55:35.082090075 -0200 -@@ -969,7 +969,7 @@ - -Wl,--enable-new-dtags,-rpath,$(pkglibdir) \ - -Wl,--version-script,$<,--no-undefined \ - -Wl,--whole-archive $(filter-out $<,$^) -Wl,--no-whole-archive\ -- -ldl $(zip_LIBS) -+ -ldl $(zip_LIBS) $(LIBS) - @$(textrel_check) - ln -fs $@ $@.$(VERSION) - diff --git a/libs/elfutils/patches/100-musl-compat.patch b/libs/elfutils/patches/100-musl-compat.patch deleted file mode 100644 index 076b9cf83..000000000 --- a/libs/elfutils/patches/100-musl-compat.patch +++ /dev/null @@ -1,788 +0,0 @@ ---- a/lib/system.h -+++ b/lib/system.h -@@ -68,6 +68,16 @@ extern int crc32_file (int fd, uint32_t - - #define gettext_noop(Str) Str - -+#ifndef TEMP_FAILURE_RETRY -+#define TEMP_FAILURE_RETRY(expression) \ -+ (__extension__ \ -+ ({ long int __result; \ -+ do __result = (long int) (expression); \ -+ while (__result == -1L && errno == EINTR); \ -+ __result; })) -+#endif -+ -+#define error(status, errno, ...) err(status, __VA_ARGS__) - - static inline ssize_t __attribute__ ((unused)) - pwrite_retry (int fd, const void *buf, size_t len, off_t off) ---- a/lib/color.c -+++ b/lib/color.c -@@ -32,7 +32,7 @@ - #endif - - #include --#include -+#include - #include - #include - #include ---- a/lib/xmalloc.c -+++ b/lib/xmalloc.c -@@ -30,7 +30,7 @@ - # include - #endif - --#include -+#include - #include - #include - #include ---- a/src/addr2line.c -+++ b/src/addr2line.c -@@ -23,7 +23,7 @@ - #include - #include - #include --#include -+#include - #include - #include - #include ---- a/src/ar.c -+++ b/src/ar.c -@@ -22,7 +22,7 @@ - - #include - #include --#include -+#include - #include - #include - #include ---- a/src/arlib2.c -+++ b/src/arlib2.c -@@ -20,7 +20,7 @@ - # include - #endif - --#include -+#include - #include - #include - #include ---- a/src/arlib.c -+++ b/src/arlib.c -@@ -21,7 +21,7 @@ - #endif - - #include --#include -+#include - #include - #include - #include ---- a/src/elfcmp.c -+++ b/src/elfcmp.c -@@ -23,7 +23,7 @@ - #include - #include - #include --#include -+#include - #include - #include - #include ---- a/src/elflint.c -+++ b/src/elflint.c -@@ -24,7 +24,7 @@ - #include - #include - #include --#include -+#include - #include - #include - #include ---- a/src/findtextrel.c -+++ b/src/findtextrel.c -@@ -23,7 +23,7 @@ - #include - #include - #include --#include -+#include - #include - #include - #include ---- a/src/i386_ld.c -+++ b/src/i386_ld.c -@@ -20,7 +20,7 @@ - #endif - - #include --#include -+#include - #include - #include - #include ---- a/src/ld.c -+++ b/src/ld.c -@@ -21,7 +21,7 @@ - - #include - #include --#include -+#include - #include - #include - #include ---- a/src/ldgeneric.c -+++ b/src/ldgeneric.c -@@ -23,7 +23,7 @@ - #include - #include - #include --#include -+#include - #include - #include - #include ---- a/src/ldlex.c -+++ b/src/ldlex.c -@@ -1099,7 +1099,7 @@ char *ldtext; - #include - #include - #include --#include -+#include - #include - #include - #include ---- a/src/ldscript.c -+++ b/src/ldscript.c -@@ -95,7 +95,7 @@ - #endif - - #include --#include -+#include - #include - #include - #include -@@ -106,7 +106,7 @@ - #include - #include - --/* The error handler. */ -+/* The err.handler. */ - static void yyerror (const char *s); - - /* Some helper functions we need to construct the data structures ---- a/src/nm.c -+++ b/src/nm.c -@@ -26,7 +26,7 @@ - #include - #include - #include --#include -+#include - #include - #include - #include ---- a/src/objdump.c -+++ b/src/objdump.c -@@ -21,7 +21,7 @@ - #endif - - #include --#include -+#include - #include - #include - #include ---- a/src/ranlib.c -+++ b/src/ranlib.c -@@ -24,7 +24,7 @@ - #include - #include - #include --#include -+#include - #include - #include - #include ---- a/src/readelf.c -+++ b/src/readelf.c -@@ -25,7 +25,7 @@ - #include - #include - #include --#include -+#include - #include - #include - #include ---- a/src/size.c -+++ b/src/size.c -@@ -21,7 +21,7 @@ - #endif - - #include --#include -+#include - #include - #include - #include ---- a/src/stack.c -+++ b/src/stack.c -@@ -18,7 +18,7 @@ - #include - #include - #include --#include -+#include - #include - #include - #include ---- a/src/strings.c -+++ b/src/strings.c -@@ -25,7 +25,7 @@ - #include - #include - #include --#include -+#include - #include - #include - #include ---- a/src/strip.c -+++ b/src/strip.c -@@ -24,7 +24,7 @@ - #include - #include - #include --#include -+#include - #include - #include - #include ---- a/src/unstrip.c -+++ b/src/unstrip.c -@@ -31,7 +31,7 @@ - #include - #include - #include --#include -+#include - #include - #include - #include ---- a/tests/addrscopes.c -+++ b/tests/addrscopes.c -@@ -25,7 +25,7 @@ - #include - #include - #include --#include -+#include - #include - - ---- a/tests/allregs.c -+++ b/tests/allregs.c -@@ -21,7 +21,7 @@ - #include - #include - #include --#include -+#include - #include - #include - #include ---- a/tests/backtrace.c -+++ b/tests/backtrace.c -@@ -24,7 +24,7 @@ - #include - #include - #include --#include -+#include - #include - #include - #include ---- a/tests/backtrace-data.c -+++ b/tests/backtrace-data.c -@@ -27,7 +27,7 @@ - #include - #include - #include --#include -+#include - #include - #include - #include ---- a/tests/buildid.c -+++ b/tests/buildid.c -@@ -23,7 +23,7 @@ - #include ELFUTILS_HEADER(elf) - #include ELFUTILS_HEADER(dwelf) - #include --#include -+#include - #include - #include - #include ---- a/tests/debugaltlink.c -+++ b/tests/debugaltlink.c -@@ -23,7 +23,7 @@ - #include ELFUTILS_HEADER(dw) - #include ELFUTILS_HEADER(dwelf) - #include --#include -+#include - #include - #include - #include ---- a/tests/debuglink.c -+++ b/tests/debuglink.c -@@ -21,7 +21,7 @@ - #include - #include ELFUTILS_HEADER(dwelf) - #include --#include -+#include - #include - #include - #include ---- a/tests/dwfl-addr-sect.c -+++ b/tests/dwfl-addr-sect.c -@@ -23,7 +23,7 @@ - #include - #include - #include --#include -+#include - #include - #include - #include ELFUTILS_HEADER(dwfl) ---- a/tests/dwfl-bug-addr-overflow.c -+++ b/tests/dwfl-bug-addr-overflow.c -@@ -20,7 +20,7 @@ - #include - #include - #include --#include -+#include - #include - #include ELFUTILS_HEADER(dwfl) - ---- a/tests/dwfl-bug-fd-leak.c -+++ b/tests/dwfl-bug-fd-leak.c -@@ -24,7 +24,7 @@ - #include - #include - #include --#include -+#include - #include - #include - #include ---- a/tests/dwfl-bug-getmodules.c -+++ b/tests/dwfl-bug-getmodules.c -@@ -18,7 +18,7 @@ - #include - #include ELFUTILS_HEADER(dwfl) - --#include -+#include - - static const Dwfl_Callbacks callbacks = - { ---- a/tests/dwfllines.c -+++ b/tests/dwfllines.c -@@ -27,7 +27,7 @@ - #include - #include - #include --#include -+#include - - int - main (int argc, char *argv[]) ---- a/tests/dwflmodtest.c -+++ b/tests/dwflmodtest.c -@@ -23,7 +23,7 @@ - #include - #include - #include --#include -+#include - #include - #include - #include ELFUTILS_HEADER(dwfl) ---- a/tests/dwfl-report-elf-align.c -+++ b/tests/dwfl-report-elf-align.c -@@ -20,7 +20,7 @@ - #include - #include - #include --#include -+#include - #include - #include - #include ---- a/tests/dwflsyms.c -+++ b/tests/dwflsyms.c -@@ -25,7 +25,7 @@ - #include - #include - #include --#include -+#include - #include - - static const char * ---- a/tests/early-offscn.c -+++ b/tests/early-offscn.c -@@ -19,7 +19,7 @@ - #endif - - #include --#include -+#include - #include - #include - #include ---- a/tests/ecp.c -+++ b/tests/ecp.c -@@ -16,7 +16,7 @@ - along with this program. If not, see . */ - - #include --#include -+#include - #include - #include - #include ---- a/tests/find-prologues.c -+++ b/tests/find-prologues.c -@@ -25,7 +25,7 @@ - #include - #include - #include --#include -+#include - #include - #include - ---- a/tests/funcretval.c -+++ b/tests/funcretval.c -@@ -25,7 +25,7 @@ - #include - #include - #include --#include -+#include - #include - #include - ---- a/tests/funcscopes.c -+++ b/tests/funcscopes.c -@@ -25,7 +25,7 @@ - #include - #include - #include --#include -+#include - #include - #include - ---- a/tests/line2addr.c -+++ b/tests/line2addr.c -@@ -26,7 +26,7 @@ - #include - #include - #include --#include -+#include - - - static void ---- a/tests/low_high_pc.c -+++ b/tests/low_high_pc.c -@@ -25,7 +25,7 @@ - #include - #include - #include --#include -+#include - #include - #include - ---- a/tests/md5-sha1-test.c -+++ b/tests/md5-sha1-test.c -@@ -19,7 +19,7 @@ - #endif - - #include --#include -+#include - - #include "md5.h" - #include "sha1.h" ---- a/tests/rdwrmmap.c -+++ b/tests/rdwrmmap.c -@@ -15,7 +15,7 @@ - along with this program. If not, see . */ - - #include --#include -+#include - #include - #include - #include ---- a/tests/saridx.c -+++ b/tests/saridx.c -@@ -17,7 +17,7 @@ - - #include - --#include -+#include - #include - #include - #include ---- a/tests/sectiondump.c -+++ b/tests/sectiondump.c -@@ -18,7 +18,7 @@ - #include - - #include --#include -+#include - #include - #include - #include ---- a/tests/varlocs.c -+++ b/tests/varlocs.c -@@ -25,7 +25,7 @@ - #include - #include - #include --#include -+#include - #include - #include - #include ---- a/libelf/libelf.h -+++ b/libelf/libelf.h -@@ -29,6 +29,7 @@ - #ifndef _LIBELF_H - #define _LIBELF_H 1 - -+#include - #include - - /* Get the ELF types. */ ---- a/libasm/asm_end.c -+++ b/libasm/asm_end.c -@@ -32,7 +32,7 @@ - #endif - - #include --#include -+#include - #include - #include - #include ---- a/libasm/asm_newscn.c -+++ b/libasm/asm_newscn.c -@@ -32,7 +32,7 @@ - #endif - - #include --#include -+#include - #include - #include - #include ---- a/libcpu/i386_gendis.c -+++ b/libcpu/i386_gendis.c -@@ -31,7 +31,7 @@ - # include - #endif - --#include -+#include - #include - #include - #include ---- a/libcpu/i386_lex.c -+++ b/libcpu/i386_lex.c -@@ -571,7 +571,7 @@ char *i386_text; - #endif - - #include --#include -+#include - #include - - #include ---- a/libcpu/i386_lex.l -+++ b/libcpu/i386_lex.l -@@ -31,7 +31,7 @@ - #endif - - #include --#include -+#include - #include - - #include ---- a/libcpu/i386_parse.c -+++ b/libcpu/i386_parse.c -@@ -107,7 +107,7 @@ - #include - #include - #include --#include -+#include - #include - #include - #include ---- a/libdw/libdw_alloc.c -+++ b/libdw/libdw_alloc.c -@@ -31,7 +31,7 @@ - # include - #endif - --#include -+#include - #include - #include - #include -@@ -74,5 +74,5 @@ __attribute ((noreturn, visibility ("hid - __libdw_oom (void) - { - while (1) -- error (EXIT_FAILURE, ENOMEM, "libdw"); -+ err (EXIT_FAILURE, "libdw: out of memory"); - } ---- a/libebl/eblopenbackend.c -+++ b/libebl/eblopenbackend.c -@@ -32,7 +32,7 @@ - - #include - #include --#include -+#include - #include - #include - #include ---- a/src/ldlex.l -+++ b/src/ldlex.l -@@ -23,7 +23,7 @@ - #include - #include - #include --#include -+#include - #include - #include - #include ---- a/libebl/eblwstrtab.c -+++ b/libebl/eblwstrtab.c -@@ -305,7 +305,7 @@ copystrings (struct Ebl_WStrent *nodep, - - /* Process the current node. */ - nodep->offset = *offsetp; -- *freep = wmempcpy (*freep, nodep->string, nodep->len); -+ *freep = wmemcpy (*freep, nodep->string, nodep->len) + nodep->len; - *offsetp += nodep->len * sizeof (wchar_t); - - for (subs = nodep->next; subs != NULL; subs = subs->next) ---- a/libdwfl/dwfl_error.c -+++ b/libdwfl/dwfl_error.c -@@ -128,6 +128,7 @@ const char * - dwfl_errmsg (error) - int error; - { -+ static __thread char s[64] = ""; - if (error == 0 || error == -1) - { - int last_error = global_error; -@@ -142,7 +143,8 @@ dwfl_errmsg (error) - switch (error &~ 0xffff) - { - case OTHER_ERROR (ERRNO): -- return strerror_r (error & 0xffff, "bad", 0); -+ strerror_r (error & 0xffff, s, sizeof(s)); -+ return s; - case OTHER_ERROR (LIBELF): - return elf_errmsg (error & 0xffff); - case OTHER_ERROR (LIBDW): ---- a/libdwfl/libdwfl.h -+++ b/libdwfl/libdwfl.h -@@ -31,6 +31,27 @@ - - #include "libdw.h" - #include -+#include -+#include -+#include -+ -+#ifndef TEMP_FAILURE_RETRY -+#define TEMP_FAILURE_RETRY(expression) \ -+ (__extension__ \ -+ ({ long int __result; \ -+ do __result = (long int) (expression); \ -+ while (__result == -1L && errno == EINTR); \ -+ __result; })) -+#endif -+ -+#ifndef strndupa -+#define strndupa(s, n) \ -+ (__extension__ ({const char *__in = (s); \ -+ size_t __len = strnlen (__in, (n)) + 1; \ -+ char *__out = (char *) alloca (__len); \ -+ __out[__len-1] = '\0'; \ -+ (char *) memcpy (__out, __in, __len-1);})) -+#endif - - /* Handle for a session using the library. */ - typedef struct Dwfl Dwfl; ---- a/libdwfl/find-debuginfo.c -+++ b/libdwfl/find-debuginfo.c -@@ -338,7 +338,7 @@ dwfl_standard_find_debuginfo (Dwfl_Modul - /* If FILE_NAME is a symlink, the debug file might be associated - with the symlink target name instead. */ - -- char *canon = canonicalize_file_name (file_name); -+ char *canon = realpath (file_name, NULL); - if (canon != NULL && strcmp (file_name, canon)) - fd = find_debuginfo_in_path (mod, canon, - debuglink_file, debuglink_crc, ---- a/libdwfl/dwfl_build_id_find_elf.c -+++ b/libdwfl/dwfl_build_id_find_elf.c -@@ -80,7 +80,7 @@ __libdwfl_open_by_build_id (Dwfl_Module - { - if (*file_name != NULL) - free (*file_name); -- *file_name = canonicalize_file_name (name); -+ *file_name = realpath (name, NULL); - if (*file_name == NULL) - { - *file_name = name; ---- a/libelf/elf_getarsym.c -+++ b/libelf/elf_getarsym.c -@@ -284,7 +284,7 @@ elf_getarsym (elf, ptr) - arsym[cnt].as_off = file_data->u32[cnt]; - - arsym[cnt].as_hash = _dl_elf_hash (str_data); -- str_data = rawmemchr (str_data, '\0') + 1; -+ str_data = memchr (str_data, '\0', SIZE_MAX) + 1; - } - - /* At the end a special entry. */ diff --git a/libs/elfutils/patches/101-no-fts.patch b/libs/elfutils/patches/101-no-fts.patch deleted file mode 100644 index 9dd7ee249..000000000 --- a/libs/elfutils/patches/101-no-fts.patch +++ /dev/null @@ -1,109 +0,0 @@ ---- a/libdwfl/argp-std.c -+++ b/libdwfl/argp-std.c -@@ -52,9 +52,6 @@ static const struct argp_option options[ - { "linux-process-map", 'M', "FILE", 0, - N_("Find addresses in files mapped as read from FILE" - " in Linux /proc/PID/maps format"), 0 }, -- { "kernel", 'k', NULL, 0, N_("Find addresses in the running kernel"), 0 }, -- { "offline-kernel", 'K', "RELEASE", OPTION_ARG_OPTIONAL, -- N_("Kernel with all modules"), 0 }, - { "debuginfo-path", OPT_DEBUGINFO, "PATH", 0, - N_("Search path for separate debuginfo files"), 0 }, - { NULL, 0, NULL, 0, NULL, 0 } -@@ -81,15 +78,6 @@ static const Dwfl_Callbacks proc_callbac - .find_elf = INTUSE(dwfl_linux_proc_find_elf), - }; - --static const Dwfl_Callbacks kernel_callbacks = -- { -- .find_debuginfo = INTUSE(dwfl_standard_find_debuginfo), -- .debuginfo_path = &debuginfo_path, -- -- .find_elf = INTUSE(dwfl_linux_kernel_find_elf), -- .section_address = INTUSE(dwfl_linux_kernel_module_section_address), -- }; -- - /* Structure held at state->HOOK. */ - struct parse_opt - { -@@ -219,43 +207,6 @@ parse_opt (int key, char *arg, struct ar - } - break; - -- case 'k': -- { -- struct parse_opt *opt = state->hook; -- if (opt->dwfl == NULL) -- { -- Dwfl *dwfl = INTUSE(dwfl_begin) (&kernel_callbacks); -- int result = INTUSE(dwfl_linux_kernel_report_kernel) (dwfl); -- if (result != 0) -- return fail (dwfl, result, _("cannot load kernel symbols")); -- result = INTUSE(dwfl_linux_kernel_report_modules) (dwfl); -- if (result != 0) -- /* Non-fatal to have no modules since we do have the kernel. */ -- failure (dwfl, result, _("cannot find kernel modules")); -- opt->dwfl = dwfl; -- } -- else -- goto toomany; -- } -- break; -- -- case 'K': -- { -- struct parse_opt *opt = state->hook; -- if (opt->dwfl == NULL) -- { -- Dwfl *dwfl = INTUSE(dwfl_begin) (&offline_callbacks); -- int result = INTUSE(dwfl_linux_kernel_report_offline) (dwfl, arg, -- NULL); -- if (result != 0) -- return fail (dwfl, result, _("cannot find kernel or modules")); -- opt->dwfl = dwfl; -- } -- else -- goto toomany; -- } -- break; -- - case ARGP_KEY_SUCCESS: - { - struct parse_opt *opt = state->hook; ---- a/libdwfl/Makefile.in -+++ b/libdwfl/Makefile.in -@@ -113,7 +113,7 @@ am__libdwfl_a_SOURCES_DIST = dwfl_begin. - dwfl_getmodules.c dwfl_getdwarf.c dwfl_module_getdwarf.c \ - dwfl_module_getelf.c dwfl_validate_address.c argp-std.c \ - find-debuginfo.c dwfl_build_id_find_elf.c \ -- dwfl_build_id_find_debuginfo.c linux-kernel-modules.c \ -+ dwfl_build_id_find_debuginfo.c \ - linux-proc-maps.c dwfl_addrmodule.c dwfl_addrdwarf.c cu.c \ - dwfl_module_nextcu.c dwfl_nextcu.c dwfl_cumodule.c \ - dwfl_module_addrdie.c dwfl_addrdie.c lines.c dwfl_lineinfo.c \ -@@ -142,7 +142,7 @@ am_libdwfl_a_OBJECTS = dwfl_begin.$(OBJE - dwfl_validate_address.$(OBJEXT) argp-std.$(OBJEXT) \ - find-debuginfo.$(OBJEXT) dwfl_build_id_find_elf.$(OBJEXT) \ - dwfl_build_id_find_debuginfo.$(OBJEXT) \ -- linux-kernel-modules.$(OBJEXT) linux-proc-maps.$(OBJEXT) \ -+ linux-proc-maps.$(OBJEXT) \ - dwfl_addrmodule.$(OBJEXT) dwfl_addrdwarf.$(OBJEXT) \ - cu.$(OBJEXT) dwfl_module_nextcu.$(OBJEXT) \ - dwfl_nextcu.$(OBJEXT) dwfl_cumodule.$(OBJEXT) \ -@@ -402,7 +402,7 @@ libdwfl_a_SOURCES = dwfl_begin.c dwfl_en - dwfl_getmodules.c dwfl_getdwarf.c dwfl_module_getdwarf.c \ - dwfl_module_getelf.c dwfl_validate_address.c argp-std.c \ - find-debuginfo.c dwfl_build_id_find_elf.c \ -- dwfl_build_id_find_debuginfo.c linux-kernel-modules.c \ -+ dwfl_build_id_find_debuginfo.c \ - linux-proc-maps.c dwfl_addrmodule.c dwfl_addrdwarf.c cu.c \ - dwfl_module_nextcu.c dwfl_nextcu.c dwfl_cumodule.c \ - dwfl_module_addrdie.c dwfl_addrdie.c lines.c dwfl_lineinfo.c \ -@@ -540,7 +540,6 @@ distclean-compile: - @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lines.Po@am__quote@ - @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/link_map.Po@am__quote@ - @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/linux-core-attach.Po@am__quote@ --@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/linux-kernel-modules.Po@am__quote@ - @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/linux-pid-attach.Po@am__quote@ - @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/linux-proc-maps.Po@am__quote@ - @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lzma.Po@am__quote@ From 605e3ba4414dc7c676906249f3f6a66221e71e51 Mon Sep 17 00:00:00 2001 From: Micke Prag Date: Tue, 16 Jun 2015 09:54:01 +0200 Subject: [PATCH 560/681] python-crcmod: new package Signed-off-by: Micke Prag --- lang/python-crcmod/Makefile | 50 +++++++++++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 lang/python-crcmod/Makefile diff --git a/lang/python-crcmod/Makefile b/lang/python-crcmod/Makefile new file mode 100644 index 000000000..03b9d6af6 --- /dev/null +++ b/lang/python-crcmod/Makefile @@ -0,0 +1,50 @@ +# +# Copyright (C) 2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=python-crcmod +PKG_VERSION:=1.7 +PKG_RELEASE:=1 +PKG_MAINTAINER:=Micke Prag +PKG_LICENSE:=MIT + +PKG_SOURCE:=crcmod-$(PKG_VERSION).tar.gz +PKG_SOURCE_URL:=http://pypi.python.org/packages/source/c/crcmod/ +PKG_MD5SUM:=2d5b92117d958dcead94f9e17f54cd32 + +PKG_BUILD_DIR:=$(BUILD_DIR)/crcmod-$(PKG_VERSION) +PKG_BUILD_DEPENDS:=python + +include $(INCLUDE_DIR)/package.mk +$(call include_mk, python-package.mk) + +define Package/python-crcmod + SUBMENU:=Python + SECTION:=lang + CATEGORY:=Languages + TITLE:=python-crcmod + URL:=http://crcmod.sourceforge.net/ + DEPENDS:=+python-light +endef + +define Package/python-crcmod/description + The software in this package is a Python module for generating objects that compute the Cyclic Redundancy Check (CRC). There is no attempt in this package to explain how the CRC works. There are a number of resources on the web that give a good explanation of the algorithms. Just do a Google search for "crc calculation" and browse till you find what you need. Another resource can be found in chapter 20 of the book "Numerical Recipes in C" by Press et. al. +endef + +define Build/Compile + $(call Build/Compile/PyMod,,install --prefix="$(PKG_INSTALL_DIR)/usr") +endef + +define Package/python-crcmod/install + $(INSTALL_DIR) $(1)$(PYTHON_PKG_DIR) + $(CP) \ + $(PKG_INSTALL_DIR)$(PYTHON_PKG_DIR)/* \ + $(1)$(PYTHON_PKG_DIR) +endef + +$(eval $(call BuildPackage,python-crcmod)) From ccadda422b1bc387b396118c6148fdea75b8a8ac Mon Sep 17 00:00:00 2001 From: Steven Barth Date: Tue, 16 Jun 2015 10:30:20 +0200 Subject: [PATCH 561/681] procps: fix for new musl libc Signed-off-by: Steven Barth --- .../patches/040-musl-compatibility.patch | 29 +++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 utils/procps/patches/040-musl-compatibility.patch diff --git a/utils/procps/patches/040-musl-compatibility.patch b/utils/procps/patches/040-musl-compatibility.patch new file mode 100644 index 000000000..71dc3f07e --- /dev/null +++ b/utils/procps/patches/040-musl-compatibility.patch @@ -0,0 +1,29 @@ +From 6f2fd55ef7621fd7ab7897aee2c2651b6faf9e6a Mon Sep 17 00:00:00 2001 +From: Paul Barker +Date: Wed, 20 Aug 2014 11:56:11 +0200 +Subject: [PATCH] Fix musl build failure + +Include for PATH_MAX. + +Signed-off-by: Paul Barker + +Upstream-status: Pending +--- + proc/readproc.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/proc/readproc.c b/proc/readproc.c +index 4fad11d..c5b1869 100644 +--- a/proc/readproc.c ++++ b/proc/readproc.c +@@ -26,6 +26,7 @@ + #include + #include + #include ++#include + + // sometimes it's easier to do this manually, w/o gcc helping + #ifdef PROF +-- +1.9.1 + From 4116e327afee80aaea33a16358f5f7c0da687bec Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Tue, 16 Jun 2015 13:12:11 +0200 Subject: [PATCH 562/681] gnunet: update source and fix build with musl Signed-off-by: Daniel Golle --- net/gnunet/Makefile | 4 +- .../patches/010-cross-compile-fixes.patch | 6 +- net/gnunet/patches/011-no-fpu-includes.patch | 18 ++--- .../012-work-around-bad-workarounds.patch | 48 ++++-------- net/gnunet/patches/100-musl-malloc.patch | 77 +++++++++++++++++++ net/gnunet/patches/101-include-byteswap.patch | 11 +++ 6 files changed, 114 insertions(+), 50 deletions(-) create mode 100644 net/gnunet/patches/100-musl-malloc.patch create mode 100644 net/gnunet/patches/101-include-byteswap.patch diff --git a/net/gnunet/Makefile b/net/gnunet/Makefile index bd4d9cb00..f5c44c96d 100644 --- a/net/gnunet/Makefile +++ b/net/gnunet/Makefile @@ -8,9 +8,9 @@ include $(TOPDIR)/rules.mk PKG_NAME:=gnunet -PKG_SOURCE_VERSION:=35865 +PKG_SOURCE_VERSION:=35933 PKG_VERSION:=0.10.1-svn$(PKG_SOURCE_VERSION) -PKG_RELEASE:=2 +PKG_RELEASE:=1 # ToDo: # - break-out transports diff --git a/net/gnunet/patches/010-cross-compile-fixes.patch b/net/gnunet/patches/010-cross-compile-fixes.patch index 820692700..515f75c10 100644 --- a/net/gnunet/patches/010-cross-compile-fixes.patch +++ b/net/gnunet/patches/010-cross-compile-fixes.patch @@ -1,7 +1,5 @@ -Index: gnunet-0.10.1/configure.ac -=================================================================== ---- gnunet-0.10.1.orig/configure.ac -+++ gnunet-0.10.1/configure.ac +--- a/configure.ac ++++ b/configure.ac @@ -194,7 +194,7 @@ AM_CONDITIONAL(GNU, test "$build_target" AC_MSG_RESULT([$build_target]) AC_SUBST(build_target) diff --git a/net/gnunet/patches/011-no-fpu-includes.patch b/net/gnunet/patches/011-no-fpu-includes.patch index cb07e3252..60eb0b401 100644 --- a/net/gnunet/patches/011-no-fpu-includes.patch +++ b/net/gnunet/patches/011-no-fpu-includes.patch @@ -1,7 +1,5 @@ -Index: gnunet-0.10.1/src/dht/gnunet-service-dht_neighbours.c -=================================================================== ---- gnunet-0.10.1.orig/src/dht/gnunet-service-dht_neighbours.c -+++ gnunet-0.10.1/src/dht/gnunet-service-dht_neighbours.c +--- a/src/dht/gnunet-service-dht_neighbours.c ++++ b/src/dht/gnunet-service-dht_neighbours.c @@ -45,7 +45,6 @@ #include "gnunet-service-dht_neighbours.h" #include "gnunet-service-dht_nse.h" @@ -10,10 +8,8 @@ Index: gnunet-0.10.1/src/dht/gnunet-service-dht_neighbours.c #include "dht.h" #define LOG_TRAFFIC(kind,...) GNUNET_log_from (kind, "dht-traffic",__VA_ARGS__) -Index: gnunet-0.10.1/src/dht/gnunet-service-wdht_neighbours.c -=================================================================== ---- gnunet-0.10.1.orig/src/dht/gnunet-service-wdht_neighbours.c -+++ gnunet-0.10.1/src/dht/gnunet-service-wdht_neighbours.c +--- a/src/dht/gnunet-service-wdht_neighbours.c ++++ b/src/dht/gnunet-service-wdht_neighbours.c @@ -44,7 +44,6 @@ #include "gnunet-service-wdht_datacache.h" #include "gnunet-service-wdht_neighbours.h" @@ -22,10 +18,8 @@ Index: gnunet-0.10.1/src/dht/gnunet-service-wdht_neighbours.c #include #include #include "dht.h" -Index: gnunet-0.10.1/src/dht/gnunet-service-xdht_neighbours.c -=================================================================== ---- gnunet-0.10.1.orig/src/dht/gnunet-service-xdht_neighbours.c -+++ gnunet-0.10.1/src/dht/gnunet-service-xdht_neighbours.c +--- a/src/dht/gnunet-service-xdht_neighbours.c ++++ b/src/dht/gnunet-service-xdht_neighbours.c @@ -41,7 +41,6 @@ #include "gnunet-service-xdht_datacache.h" #include "gnunet-service-xdht_neighbours.h" diff --git a/net/gnunet/patches/012-work-around-bad-workarounds.patch b/net/gnunet/patches/012-work-around-bad-workarounds.patch index d4875600f..9ae6a6255 100644 --- a/net/gnunet/patches/012-work-around-bad-workarounds.patch +++ b/net/gnunet/patches/012-work-around-bad-workarounds.patch @@ -1,7 +1,5 @@ -Index: gnunet-0.10.1-svn35844/m4/libgnurl.m4 -=================================================================== ---- gnunet-0.10.1-svn35844.orig/m4/libgnurl.m4 -+++ gnunet-0.10.1-svn35844/m4/libgnurl.m4 +--- a/m4/libgnurl.m4 ++++ b/m4/libgnurl.m4 @@ -146,7 +146,7 @@ AC_DEFUN([LIBGNURL_CHECK_CONFIG], _libgnurl_save_libs=$LIBS LIBS="$LIBGNURL $LIBS" @@ -11,10 +9,8 @@ Index: gnunet-0.10.1-svn35844/m4/libgnurl.m4 /* Try and use a few common options to force a failure if we are missing symbols or can't link. */ int x; -Index: gnunet-0.10.1-svn35844/src/gns/gnunet-gns-proxy.c -=================================================================== ---- gnunet-0.10.1-svn35844.orig/src/gns/gnunet-gns-proxy.c -+++ gnunet-0.10.1-svn35844/src/gns/gnunet-gns-proxy.c +--- a/src/gns/gnunet-gns-proxy.c ++++ b/src/gns/gnunet-gns-proxy.c @@ -29,7 +29,7 @@ */ #include "platform.h" @@ -24,10 +20,8 @@ Index: gnunet-0.10.1-svn35844/src/gns/gnunet-gns-proxy.c #include #include #include -Index: gnunet-0.10.1-svn35844/src/gns/test_gns_proxy.c -=================================================================== ---- gnunet-0.10.1-svn35844.orig/src/gns/test_gns_proxy.c -+++ gnunet-0.10.1-svn35844/src/gns/test_gns_proxy.c +--- a/src/gns/test_gns_proxy.c ++++ b/src/gns/test_gns_proxy.c @@ -24,7 +24,7 @@ * @author Martin Schanzenbach */ @@ -37,10 +31,8 @@ Index: gnunet-0.10.1-svn35844/src/gns/test_gns_proxy.c #include #include "gnunet_namestore_service.h" #include "gnunet_gns_service.h" -Index: gnunet-0.10.1-svn35844/src/hostlist/gnunet-daemon-hostlist_client.c -=================================================================== ---- gnunet-0.10.1-svn35844.orig/src/hostlist/gnunet-daemon-hostlist_client.c -+++ gnunet-0.10.1-svn35844/src/hostlist/gnunet-daemon-hostlist_client.c +--- a/src/hostlist/gnunet-daemon-hostlist_client.c ++++ b/src/hostlist/gnunet-daemon-hostlist_client.c @@ -29,7 +29,7 @@ #include "gnunet_statistics_service.h" #include "gnunet_transport_service.h" @@ -50,10 +42,8 @@ Index: gnunet-0.10.1-svn35844/src/hostlist/gnunet-daemon-hostlist_client.c /** -Index: gnunet-0.10.1-svn35844/src/pt/test_gns_vpn.c -=================================================================== ---- gnunet-0.10.1-svn35844.orig/src/pt/test_gns_vpn.c -+++ gnunet-0.10.1-svn35844/src/pt/test_gns_vpn.c +--- a/src/pt/test_gns_vpn.c ++++ b/src/pt/test_gns_vpn.c @@ -24,7 +24,7 @@ * @author Martin Schanzenbach */ @@ -63,10 +53,8 @@ Index: gnunet-0.10.1-svn35844/src/pt/test_gns_vpn.c #include #include "gnunet_identity_service.h" #include "gnunet_namestore_service.h" -Index: gnunet-0.10.1-svn35844/src/pt/test_gnunet_vpn.c -=================================================================== ---- gnunet-0.10.1-svn35844.orig/src/pt/test_gnunet_vpn.c -+++ gnunet-0.10.1-svn35844/src/pt/test_gnunet_vpn.c +--- a/src/pt/test_gnunet_vpn.c ++++ b/src/pt/test_gnunet_vpn.c @@ -24,7 +24,7 @@ * @author Christian Grothoff */ @@ -76,10 +64,8 @@ Index: gnunet-0.10.1-svn35844/src/pt/test_gnunet_vpn.c #include #include "gnunet_vpn_service.h" #include "gnunet_testing_lib.h" -Index: gnunet-0.10.1-svn35844/src/transport/plugin_transport_http.h -=================================================================== ---- gnunet-0.10.1-svn35844.orig/src/transport/plugin_transport_http.h -+++ gnunet-0.10.1-svn35844/src/transport/plugin_transport_http.h +--- a/src/transport/plugin_transport_http.h ++++ b/src/transport/plugin_transport_http.h @@ -41,7 +41,7 @@ #include "gnunet_os_lib.h" #include "gnunet_nat_lib.h" @@ -89,10 +75,8 @@ Index: gnunet-0.10.1-svn35844/src/transport/plugin_transport_http.h #define DEBUG_HTTP GNUNET_EXTRA_LOGGING -Index: gnunet-0.10.1-svn35844/src/transport/plugin_transport_http_client.c -=================================================================== ---- gnunet-0.10.1-svn35844.orig/src/transport/plugin_transport_http_client.c -+++ gnunet-0.10.1-svn35844/src/transport/plugin_transport_http_client.c +--- a/src/transport/plugin_transport_http_client.c ++++ b/src/transport/plugin_transport_http_client.c @@ -49,7 +49,7 @@ #include "gnunet_protocols.h" #include "gnunet_transport_plugin.h" diff --git a/net/gnunet/patches/100-musl-malloc.patch b/net/gnunet/patches/100-musl-malloc.patch new file mode 100644 index 000000000..ef881c83e --- /dev/null +++ b/net/gnunet/patches/100-musl-malloc.patch @@ -0,0 +1,77 @@ +--- a/src/util/gnunet-service-resolver.c ++++ b/src/util/gnunet-service-resolver.c +@@ -603,7 +603,7 @@ main (int argc, char *const *argv) + return ret; + } + +-#ifdef LINUX ++#if defined(LINUX) && defined(__GLIBC__) + #include + + /** +--- a/src/arm/gnunet-service-arm.c ++++ b/src/arm/gnunet-service-arm.c +@@ -1563,7 +1563,7 @@ main (int argc, char *const *argv) + } + + +-#ifdef LINUX ++#if defined(LINUX) && defined(__GLIBC__) + #include + + /** +--- a/src/nse/gnunet-service-nse.c ++++ b/src/nse/gnunet-service-nse.c +@@ -1629,7 +1629,7 @@ main (int argc, + } + + +-#ifdef LINUX ++#if defined(LINUX) && defined(__GLIBC__) + #include + + /** +--- a/src/regex/gnunet-daemon-regexprofiler.c ++++ b/src/regex/gnunet-daemon-regexprofiler.c +@@ -382,7 +382,7 @@ main (int argc, char *const *argv) + } + + +-#ifdef LINUX ++#if defined(LINUX) && defined(__GLIBC__) + #include + + /** +--- a/src/revocation/gnunet-service-revocation.c ++++ b/src/revocation/gnunet-service-revocation.c +@@ -933,7 +933,7 @@ main (int argc, + } + + +-#ifdef LINUX ++#if defined(LINUX) && defined(__GLIBC__) + #include + + +--- a/src/statistics/gnunet-service-statistics.c ++++ b/src/statistics/gnunet-service-statistics.c +@@ -1077,7 +1077,7 @@ main (int argc, char *const *argv) + &run, NULL)) ? 0 : 1; + } + +-#ifdef LINUX ++#if defined(LINUX) && defined(__GLIBC__) + #include + + /** +--- a/src/topology/gnunet-daemon-topology.c ++++ b/src/topology/gnunet-daemon-topology.c +@@ -1327,7 +1327,7 @@ main (int argc, char *const *argv) + } + + +-#ifdef LINUX ++#if defined(LINUX) && defined(__GLIBC__) + #include + + /** diff --git a/net/gnunet/patches/101-include-byteswap.patch b/net/gnunet/patches/101-include-byteswap.patch new file mode 100644 index 000000000..89012635b --- /dev/null +++ b/net/gnunet/patches/101-include-byteswap.patch @@ -0,0 +1,11 @@ +--- a/src/include/gnunet_common.h ++++ b/src/include/gnunet_common.h +@@ -49,6 +49,8 @@ + #include + #endif + ++#include ++ + #ifdef __cplusplus + extern "C" + { From 36e4c90f6ccd01119b13e91ba3ac9a45acc9db2a Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Tue, 16 Jun 2015 14:07:50 +0200 Subject: [PATCH 563/681] f2fs-tools: fix build with musl Signed-off-by: Daniel Golle --- utils/f2fs-tools/patches/010-include-byteswap-h.patch | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 utils/f2fs-tools/patches/010-include-byteswap-h.patch diff --git a/utils/f2fs-tools/patches/010-include-byteswap-h.patch b/utils/f2fs-tools/patches/010-include-byteswap-h.patch new file mode 100644 index 000000000..b8c9ff30e --- /dev/null +++ b/utils/f2fs-tools/patches/010-include-byteswap-h.patch @@ -0,0 +1,10 @@ +--- a/include/f2fs_fs.h ++++ b/include/f2fs_fs.h +@@ -12,6 +12,7 @@ + #include + #include + #include ++#include + + #ifdef HAVE_CONFIG_H + #include From acfce97879614daed03d2c1d6636cb227ab1ea67 Mon Sep 17 00:00:00 2001 From: Jo-Philipp Wich Date: Tue, 16 Jun 2015 14:37:55 +0200 Subject: [PATCH 564/681] picocom: fix compilation with musl (#1383) Only use termio.h with glibc or uclibc, for musl include sys/ioctl.h and termios.h instead. Signed-off-by: Jo-Philipp Wich --- utils/picocom/Makefile | 4 ++-- utils/picocom/patches/100-musl-compat.patch | 17 +++++++++++++++++ 2 files changed, 19 insertions(+), 2 deletions(-) create mode 100644 utils/picocom/patches/100-musl-compat.patch diff --git a/utils/picocom/Makefile b/utils/picocom/Makefile index b5251b412..31a1ad644 100644 --- a/utils/picocom/Makefile +++ b/utils/picocom/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2006-2014 OpenWrt.org +# Copyright (C) 2006-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=picocom PKG_VERSION:=1.7 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://picocom.googlecode.com/files diff --git a/utils/picocom/patches/100-musl-compat.patch b/utils/picocom/patches/100-musl-compat.patch new file mode 100644 index 000000000..5f7d75034 --- /dev/null +++ b/utils/picocom/patches/100-musl-compat.patch @@ -0,0 +1,17 @@ +Index: picocom-1.7/term.c +=================================================================== +--- picocom-1.7.orig/term.c ++++ picocom-1.7/term.c +@@ -33,10 +33,11 @@ + #include + #include + #include +-#ifdef __linux__ ++#if defined(__linux__) && (defined(__GLIBC__) || defined(__UCLIBC__)) + #include + #else + #include ++#include + #endif /* of __linux__ */ + + #include "term.h" From a0968faedbfe58e3d76fe78dadb099f060e4acfd Mon Sep 17 00:00:00 2001 From: Jo-Philipp Wich Date: Tue, 16 Jun 2015 14:55:56 +0200 Subject: [PATCH 565/681] socat: fix musl compatibility Do not include netinet/if_ether.h for musl to prevent struct ethhdr redeclarations. Also define NETDB_INTERNAL if needed to fix compilation of the network backends. Signed-off-by: Jo-Philipp Wich --- net/socat/Makefile | 4 ++-- net/socat/patches/100-musl-compat.patch | 23 +++++++++++++++++++++++ 2 files changed, 25 insertions(+), 2 deletions(-) create mode 100644 net/socat/patches/100-musl-compat.patch diff --git a/net/socat/Makefile b/net/socat/Makefile index 361a4d5cf..b89ffcad2 100644 --- a/net/socat/Makefile +++ b/net/socat/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2006-2014 OpenWrt.org +# Copyright (C) 2006-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=socat PKG_VERSION:=1.7.3.0 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 PKG_SOURCE_URL:=http://www.dest-unreach.org/socat/download diff --git a/net/socat/patches/100-musl-compat.patch b/net/socat/patches/100-musl-compat.patch new file mode 100644 index 000000000..ae5c8d0d7 --- /dev/null +++ b/net/socat/patches/100-musl-compat.patch @@ -0,0 +1,23 @@ +--- a/sysincludes.h ++++ b/sysincludes.h +@@ -79,6 +79,9 @@ + #endif + #if HAVE_NETDB_H && (_WITH_IP4 || _WITH_IP6) + #include /* struct hostent, gethostbyname() */ ++#if !(__UCLIBC__ || __GLIBC__) ++#define NETDB_INTERNAL -1 ++#endif + #endif + #if HAVE_SYS_UN_H && WITH_UNIX + #include /* struct sockaddr_un, unix domain sockets */ +@@ -139,8 +142,10 @@ + #include + #endif + #if HAVE_NETINET_IF_ETHER_H ++#if defined(__UCLIBC__) || defined(__GLIBC__) + #include + #endif ++#endif + #if HAVE_LINUX_IF_TUN_H + #include + #endif From e76f394fdc34ecd734f976dd7b6660f6ae32d53e Mon Sep 17 00:00:00 2001 From: Jo-Philipp Wich Date: Tue, 16 Jun 2015 15:04:39 +0200 Subject: [PATCH 566/681] etherwake: fix musl compatibility Always include net/ethernet.h instead linux specific headers, fixes compilation with musl libc. Signed-off-by: Jo-Philipp Wich --- net/etherwake/Makefile | 4 ++-- net/etherwake/patches/120-musl-compat.patch | 17 +++++++++++++++++ 2 files changed, 19 insertions(+), 2 deletions(-) create mode 100644 net/etherwake/patches/120-musl-compat.patch diff --git a/net/etherwake/Makefile b/net/etherwake/Makefile index 7343adc0d..4d05e3dab 100644 --- a/net/etherwake/Makefile +++ b/net/etherwake/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2007-2011 OpenWrt.org +# Copyright (C) 2007-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=etherwake PKG_VERSION:=1.09 -PKG_RELEASE:=3 +PKG_RELEASE:=4 PKG_SOURCE:=$(PKG_NAME)_$(PKG_VERSION).orig.tar.gz PKG_SOURCE_URL:=http://ftp.debian.org/debian/pool/main/e/etherwake diff --git a/net/etherwake/patches/120-musl-compat.patch b/net/etherwake/patches/120-musl-compat.patch new file mode 100644 index 000000000..a2cdfba9d --- /dev/null +++ b/net/etherwake/patches/120-musl-compat.patch @@ -0,0 +1,17 @@ +--- a/ether-wake.c ++++ b/ether-wake.c +@@ -82,14 +82,8 @@ static char usage_msg[] = + #include + + #include +-#if __GLIBC__ >= 2 && __GLIBC_MINOR >= 1 + #include + #include +-#else +-#include +-#include +-#include +-#endif + #include + #include + From 3083b9ccb32c1259d686a031bbd0d22082756792 Mon Sep 17 00:00:00 2001 From: Yousong Zhou Date: Tue, 16 Jun 2015 21:24:11 +0800 Subject: [PATCH 567/681] libpam: fix compilation with musl. Signed-off-by: Yousong Zhou --- libs/libpam/Makefile | 2 +- libs/libpam/patches/008-LIBCRYPT-fix.patch | 11 +++++ libs/libpam/patches/009-pam_rhosts-fix.patch | 51 ++++++++++++++++++++ 3 files changed, 63 insertions(+), 1 deletion(-) create mode 100644 libs/libpam/patches/008-LIBCRYPT-fix.patch create mode 100644 libs/libpam/patches/009-pam_rhosts-fix.patch diff --git a/libs/libpam/Makefile b/libs/libpam/Makefile index e9c4a3c70..c04b24789 100644 --- a/libs/libpam/Makefile +++ b/libs/libpam/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=libpam PKG_VERSION:=1.1.8 -PKG_RELEASE:=4 +PKG_RELEASE:=5 PKG_SOURCE:=Linux-PAM-$(PKG_VERSION).tar.bz2 PKG_SOURCE_URL:=http://www.linux-pam.org/library/ diff --git a/libs/libpam/patches/008-LIBCRYPT-fix.patch b/libs/libpam/patches/008-LIBCRYPT-fix.patch new file mode 100644 index 000000000..85c03fd84 --- /dev/null +++ b/libs/libpam/patches/008-LIBCRYPT-fix.patch @@ -0,0 +1,11 @@ +--- a/configure.in.orig 2015-06-16 20:40:02.938216001 +0800 ++++ b/configure.in 2015-06-16 20:40:16.198216001 +0800 +@@ -399,7 +399,7 @@ AS_IF([test "x$ac_cv_header_xcrypt_h" = + [crypt_libs="crypt"]) + + BACKUP_LIBS=$LIBS +-AC_SEARCH_LIBS([crypt],[$crypt_libs], LIBCRYPT="-l$ac_lib", LIBCRYPT="") ++AC_SEARCH_LIBS([crypt],[$crypt_libs], LIBCRYPT="${ac_lib:+-l$ac_lib}", LIBCRYPT="") + AC_CHECK_FUNCS(crypt_r crypt_gensalt_r) + LIBS=$BACKUP_LIBS + AC_SUBST(LIBCRYPT) diff --git a/libs/libpam/patches/009-pam_rhosts-fix.patch b/libs/libpam/patches/009-pam_rhosts-fix.patch new file mode 100644 index 000000000..1d7d7f362 --- /dev/null +++ b/libs/libpam/patches/009-pam_rhosts-fix.patch @@ -0,0 +1,51 @@ +--- a/configure.in.orig 2015-06-16 21:05:09.938216001 +0800 ++++ b/configure.in 2015-06-16 21:05:29.374216001 +0800 +@@ -525,7 +525,8 @@ AC_CHECK_FUNCS(fseeko getdomainname geth + AC_CHECK_FUNCS(strcspn strdup strspn strstr strtol uname) + AC_CHECK_FUNCS(getutent_r getpwnam_r getpwuid_r getgrnam_r getgrgid_r getspnam_r) + AC_CHECK_FUNCS(getgrouplist getline getdelim) +-AC_CHECK_FUNCS(inet_ntop inet_pton innetgr ruserok_af) ++AC_CHECK_FUNCS(inet_ntop inet_pton innetgr) ++AC_CHECK_FUNCS(ruserok ruserok_af) + + AC_CHECK_FUNCS(unshare, [UNSHARE=yes], [UNSHARE=no]) + AM_CONDITIONAL([HAVE_UNSHARE], [test "$UNSHARE" = yes]) +--- a/modules/pam_rhosts/pam_rhosts.c.orig 2015-06-16 20:58:20.002216001 +0800 ++++ b/modules/pam_rhosts/pam_rhosts.c 2015-06-16 21:10:10.026216001 +0800 +@@ -35,6 +35,7 @@ + #include + #include + #include ++#include + #include + + #define PAM_SM_AUTH /* only defines this management group */ +@@ -43,7 +43,7 @@ + #include + #include + +-#ifdef __UCLIBC__ ++#if defined(__UCLIBC__) || (!defined(HAVE_RUSEROK) && !defined(HAVE_RUSEROK_AF)) + + #include + #include +@@ -293,8 +294,10 @@ iruserok2 (u_int32_t raddr, int superuse + FILE *hostf = NULL; + int isbad = -1; + ++#ifdef _PATH_HEQUIV + if (!superuser) + hostf = iruserfopen (_PATH_HEQUIV, 0); ++#endif + + if (hostf) { + isbad = __ivaliduser2 (hostf, raddr, luser, ruser, rhost); +@@ -396,7 +396,7 @@ int ruserok(const char *rhost, int super + return -1; + } + +-#endif /* __UCLIBC__ */ ++#endif /* __UCLIBC__ || (!defined(HAVE_RUSEROK) && !defined(HAVE_RUSEROK_AF)) */ + + PAM_EXTERN + int pam_sm_authenticate (pam_handle_t *pamh, int flags, int argc, From e39e96d08992c62b64d98c980798da507d54e387 Mon Sep 17 00:00:00 2001 From: Jo-Philipp Wich Date: Tue, 16 Jun 2015 16:32:21 +0200 Subject: [PATCH 568/681] aiccu: fix musl compatibility - Fix redefinition of struct ethhdr - Restrict the use of res_ninit() and res_nquery() to glibc - Fix a warning in dn_skipname.c by declaring ns_name_skip() static - Refresh patches Signed-off-by: Jo-Philipp Wich --- ipv6/aiccu/Makefile | 4 +-- ipv6/aiccu/patches/100-cross_compile.patch | 20 +++++++------- ipv6/aiccu/patches/200-add_dn_skipname.patch | 12 ++++---- ipv6/aiccu/patches/300-resolver-uclibc.patch | 25 ++++++++++++----- ipv6/aiccu/patches/400-musl-compat.patch | 29 ++++++++++++++++++++ 5 files changed, 64 insertions(+), 26 deletions(-) create mode 100644 ipv6/aiccu/patches/400-musl-compat.patch diff --git a/ipv6/aiccu/Makefile b/ipv6/aiccu/Makefile index 50839f359..0034c0b70 100644 --- a/ipv6/aiccu/Makefile +++ b/ipv6/aiccu/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2006-2012 OpenWrt.org +# Copyright (C) 2006-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=aiccu PKG_VERSION:=20070115 -PKG_RELEASE:=12 +PKG_RELEASE:=13 PKG_SOURCE:=$(PKG_NAME)_$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://www.sixxs.net/archive/sixxs/aiccu/unix diff --git a/ipv6/aiccu/patches/100-cross_compile.patch b/ipv6/aiccu/patches/100-cross_compile.patch index dbdc50aaa..6ef8ad5d6 100644 --- a/ipv6/aiccu/patches/100-cross_compile.patch +++ b/ipv6/aiccu/patches/100-cross_compile.patch @@ -1,6 +1,6 @@ ---- aiccu/unix-console/Makefile.orig 2007-09-02 23:19:39.000000000 +0200 -+++ aiccu/unix-console/Makefile 2007-09-02 23:20:11.000000000 +0200 -@@ -25,7 +25,8 @@ +--- a/unix-console/Makefile ++++ b/unix-console/Makefile +@@ -25,7 +25,8 @@ CWARNS += -W -Wall -Wshadow -Wpointer-ar # CWARNS += -Wpacked #CFLAGS += $(CWARNS) -D_GNU_SOURCE -D_DEBUG -g3 -O0 @@ -10,7 +10,7 @@ CC = @gcc RM = rm -@@ -40,25 +41,25 @@ +@@ -40,25 +41,25 @@ CFLAGS += -D AICCU_CONSOLE # GnuTLS Support ? # Used by TIC to secure that communication # Currently defaultly builds only on Linux, but other platforms might easily also support it @@ -41,7 +41,7 @@ CFLAGS += -D AICCU_TYPE="\"freebsd4\"" SRCS += ../common/aiccu_freebsd4.c OBJS += ../common/aiccu_freebsd4.o -@@ -71,7 +72,7 @@ +@@ -71,7 +72,7 @@ endif endif # DragonFlyBSD @@ -50,7 +50,7 @@ CFLAGS += -D_DFBSD -D NEED_IFHEAD -D AICCU_TYPE="\"dragonfly\"" SRCS += ../common/aiccu_freebsd4.c OBJS += ../common/aiccu_freebsd4.o -@@ -79,7 +80,7 @@ +@@ -79,7 +80,7 @@ CFLAGS += -pthread endif # NetBSD @@ -59,7 +59,7 @@ CFLAGS += -D_NETBSD -D AICCU_TYPE="\"kame\"" # Check if net/if_tun.h has TUNSIFHEAD and enable support for it -@@ -97,10 +98,10 @@ +@@ -97,10 +98,10 @@ CFLAGS += -pthread -D_NETBSD_SOURCE endif # OpenBSD @@ -72,7 +72,7 @@ CFLAGS += -D AICCU_TYPE="\"openbsd2\"" SRCS += ../common/aiccu_openbsd2.c OBJS += ../common/aiccu_openbsd2.o -@@ -114,7 +115,7 @@ +@@ -114,7 +115,7 @@ CFLAGS += -pthread endif # Darwin @@ -81,7 +81,7 @@ CFLAGS += -D_DARWIN -D NEED_IFHEAD -D AICCU_TYPE="\"darwin\"" SRCS += ../common/aiccu_darwin.c OBJS += ../common/aiccu_darwin.o -@@ -122,7 +123,7 @@ +@@ -122,7 +123,7 @@ LDFLAGS += -lresolv endif # SunOS / Solaris @@ -90,7 +90,7 @@ CFLAGS += -D_SUNOS -D AICCU_TYPE="\"sunos\"" SRCS += ../common/aiccu_sunos.c OBJS += ../common/aiccu_sunos.o -@@ -130,7 +131,7 @@ +@@ -130,7 +131,7 @@ LDFLAGS += -lsocket -lnsl -lresolv endif # AIX diff --git a/ipv6/aiccu/patches/200-add_dn_skipname.patch b/ipv6/aiccu/patches/200-add_dn_skipname.patch index ca6afcea1..3ce1e9234 100644 --- a/ipv6/aiccu/patches/200-add_dn_skipname.patch +++ b/ipv6/aiccu/patches/200-add_dn_skipname.patch @@ -1,6 +1,5 @@ -diff -Nru aiccu.old/common/dn_skipname.c aiccu/common/dn_skipname.c ---- aiccu.old/common/dn_skipname.c 1970-01-01 02:00:00.000000000 +0200 -+++ aiccu/common/dn_skipname.c 2006-11-04 00:50:23.000000000 +0200 +--- /dev/null ++++ b/common/dn_skipname.c @@ -0,0 +1,51 @@ +#include +#include @@ -53,11 +52,10 @@ diff -Nru aiccu.old/common/dn_skipname.c aiccu/common/dn_skipname.c + return (ptr - saveptr); +} + -diff -Nru aiccu.old/unix-console/Makefile aiccu/unix-console/Makefile ---- aiccu.old/unix-console/Makefile 2006-11-04 00:51:20.000000000 +0200 -+++ aiccu/unix-console/Makefile 2006-11-04 00:48:51.000000000 +0200 +--- a/unix-console/Makefile ++++ b/unix-console/Makefile @@ -10,9 +10,9 @@ - # $Date: 2006-07-25 09:20:48 $ + # $Date: 2007-01-15 11:04:27 $ # **********************************************************/ -SRCS = main.c ../common/tun.c ../common/aiccu.c ../common/hash_md5.c ../common/hash_sha1.c ../common/common.c ../common/heartbeat.c ../common/tic.c ../common/ayiya.c ../common/aiccu_test.c ../common/resolver.c diff --git a/ipv6/aiccu/patches/300-resolver-uclibc.patch b/ipv6/aiccu/patches/300-resolver-uclibc.patch index fbd6a5093..1a5f11626 100644 --- a/ipv6/aiccu/patches/300-resolver-uclibc.patch +++ b/ipv6/aiccu/patches/300-resolver-uclibc.patch @@ -1,29 +1,40 @@ ---- aiccu/common/resolver.c.orig 2007-09-02 23:10:58.000000000 +0200 -+++ aiccu/common/resolver.c 2007-09-02 23:11:01.000000000 +0200 +--- a/common/resolver.c ++++ b/common/resolver.c @@ -26,7 +26,7 @@ int getrrs(const char *label, int rrtype, void gotrec(unsigned int num, int type, const char *record)) { -#ifdef _LINUX -+#if defined(_LINUX) && !defined(__UCLIBC__) ++#if defined(_LINUX) && defined(__GLIBC__) struct __res_state res; #endif unsigned char answer[8192]; -@@ -38,7 +38,7 @@ +@@ -38,7 +38,7 @@ int getrrs(const char *label, int rrtype uint16_t type = 0, class = 0; uint32_t ttl = 0; -#ifdef _LINUX -+#if defined(_LINUX) && !defined(__UCLIBC__) ++#if defined(_LINUX) && defined(__GLIBC__) memset(&res, 0, sizeof(res)); res.options = RES_DEBUG; res_ninit(&res); -@@ -47,7 +47,7 @@ +@@ -47,7 +47,7 @@ int getrrs(const char *label, int rrtype #endif memset(answer, 0, sizeof(answer)); -#ifdef _LINUX -+#if defined(_LINUX) && !defined(__UCLIBC__) ++#if defined(_LINUX) && defined(__GLIBC__) ret = res_nquery(&res, label, C_IN, rrtype, answer, sizeof(answer)); #else ret = res_query(label, C_IN, rrtype, answer, sizeof(answer)); +--- a/common/dn_skipname.c ++++ b/common/dn_skipname.c +@@ -9,7 +9,7 @@ + * return: + * 0 on success, -1 (with errno set) on failure. + */ +-int ns_name_skip(const u_char **ptrptr, const u_char *eom) ++static int ns_name_skip(const u_char **ptrptr, const u_char *eom) + { + const u_char *cp; + u_int n; diff --git a/ipv6/aiccu/patches/400-musl-compat.patch b/ipv6/aiccu/patches/400-musl-compat.patch new file mode 100644 index 000000000..2e732d8a2 --- /dev/null +++ b/ipv6/aiccu/patches/400-musl-compat.patch @@ -0,0 +1,29 @@ +--- a/common/common.h ++++ b/common/common.h +@@ -50,6 +50,7 @@ + #include + #include + #include ++#include + #include + + #if defined(_SUNOS) || defined(_AIX) || defined(_DARWIN) +@@ -91,7 +92,9 @@ + #include + + #include ++#if defined(__GLIBC__) || defined(__UCLIBC__) + #include ++#endif + #ifdef linux + #include + #include +--- a/common/dn_skipname.c ++++ b/common/dn_skipname.c +@@ -1,5 +1,6 @@ + #include + #include ++#include + + /* Ripped from glibc 2.4 sources. */ + From b6e1de2bdc7ab29015b11aa2de7edadd77cc2780 Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Tue, 16 Jun 2015 16:22:20 +0200 Subject: [PATCH 569/681] gnunet: update source Most of the local patches have been integrated upstream. Signed-off-by: Daniel Golle --- net/gnunet/Makefile | 2 +- .../patches/010-cross-compile-fixes.patch | 2 +- net/gnunet/patches/011-no-fpu-includes.patch | 30 -------- net/gnunet/patches/100-musl-malloc.patch | 77 ------------------- net/gnunet/patches/101-include-byteswap.patch | 11 --- 5 files changed, 2 insertions(+), 120 deletions(-) delete mode 100644 net/gnunet/patches/011-no-fpu-includes.patch delete mode 100644 net/gnunet/patches/100-musl-malloc.patch delete mode 100644 net/gnunet/patches/101-include-byteswap.patch diff --git a/net/gnunet/Makefile b/net/gnunet/Makefile index f5c44c96d..9a9b65c60 100644 --- a/net/gnunet/Makefile +++ b/net/gnunet/Makefile @@ -8,7 +8,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=gnunet -PKG_SOURCE_VERSION:=35933 +PKG_SOURCE_VERSION:=35937 PKG_VERSION:=0.10.1-svn$(PKG_SOURCE_VERSION) PKG_RELEASE:=1 diff --git a/net/gnunet/patches/010-cross-compile-fixes.patch b/net/gnunet/patches/010-cross-compile-fixes.patch index 515f75c10..177bbfebb 100644 --- a/net/gnunet/patches/010-cross-compile-fixes.patch +++ b/net/gnunet/patches/010-cross-compile-fixes.patch @@ -1,6 +1,6 @@ --- a/configure.ac +++ b/configure.ac -@@ -194,7 +194,7 @@ AM_CONDITIONAL(GNU, test "$build_target" +@@ -189,7 +189,7 @@ AM_CONDITIONAL(GNU, test "$build_target" AC_MSG_RESULT([$build_target]) AC_SUBST(build_target) AM_CONDITIONAL([am__fastdepOBJC], false) diff --git a/net/gnunet/patches/011-no-fpu-includes.patch b/net/gnunet/patches/011-no-fpu-includes.patch deleted file mode 100644 index 60eb0b401..000000000 --- a/net/gnunet/patches/011-no-fpu-includes.patch +++ /dev/null @@ -1,30 +0,0 @@ ---- a/src/dht/gnunet-service-dht_neighbours.c -+++ b/src/dht/gnunet-service-dht_neighbours.c -@@ -45,7 +45,6 @@ - #include "gnunet-service-dht_neighbours.h" - #include "gnunet-service-dht_nse.h" - #include "gnunet-service-dht_routing.h" --#include - #include "dht.h" - - #define LOG_TRAFFIC(kind,...) GNUNET_log_from (kind, "dht-traffic",__VA_ARGS__) ---- a/src/dht/gnunet-service-wdht_neighbours.c -+++ b/src/dht/gnunet-service-wdht_neighbours.c -@@ -44,7 +44,6 @@ - #include "gnunet-service-wdht_datacache.h" - #include "gnunet-service-wdht_neighbours.h" - #include "gnunet-service-wdht_nse.h" --#include - #include - #include - #include "dht.h" ---- a/src/dht/gnunet-service-xdht_neighbours.c -+++ b/src/dht/gnunet-service-xdht_neighbours.c -@@ -41,7 +41,6 @@ - #include "gnunet-service-xdht_datacache.h" - #include "gnunet-service-xdht_neighbours.h" - #include "gnunet-service-xdht_routing.h" --#include - #include "dht.h" - - /** diff --git a/net/gnunet/patches/100-musl-malloc.patch b/net/gnunet/patches/100-musl-malloc.patch deleted file mode 100644 index ef881c83e..000000000 --- a/net/gnunet/patches/100-musl-malloc.patch +++ /dev/null @@ -1,77 +0,0 @@ ---- a/src/util/gnunet-service-resolver.c -+++ b/src/util/gnunet-service-resolver.c -@@ -603,7 +603,7 @@ main (int argc, char *const *argv) - return ret; - } - --#ifdef LINUX -+#if defined(LINUX) && defined(__GLIBC__) - #include - - /** ---- a/src/arm/gnunet-service-arm.c -+++ b/src/arm/gnunet-service-arm.c -@@ -1563,7 +1563,7 @@ main (int argc, char *const *argv) - } - - --#ifdef LINUX -+#if defined(LINUX) && defined(__GLIBC__) - #include - - /** ---- a/src/nse/gnunet-service-nse.c -+++ b/src/nse/gnunet-service-nse.c -@@ -1629,7 +1629,7 @@ main (int argc, - } - - --#ifdef LINUX -+#if defined(LINUX) && defined(__GLIBC__) - #include - - /** ---- a/src/regex/gnunet-daemon-regexprofiler.c -+++ b/src/regex/gnunet-daemon-regexprofiler.c -@@ -382,7 +382,7 @@ main (int argc, char *const *argv) - } - - --#ifdef LINUX -+#if defined(LINUX) && defined(__GLIBC__) - #include - - /** ---- a/src/revocation/gnunet-service-revocation.c -+++ b/src/revocation/gnunet-service-revocation.c -@@ -933,7 +933,7 @@ main (int argc, - } - - --#ifdef LINUX -+#if defined(LINUX) && defined(__GLIBC__) - #include - - ---- a/src/statistics/gnunet-service-statistics.c -+++ b/src/statistics/gnunet-service-statistics.c -@@ -1077,7 +1077,7 @@ main (int argc, char *const *argv) - &run, NULL)) ? 0 : 1; - } - --#ifdef LINUX -+#if defined(LINUX) && defined(__GLIBC__) - #include - - /** ---- a/src/topology/gnunet-daemon-topology.c -+++ b/src/topology/gnunet-daemon-topology.c -@@ -1327,7 +1327,7 @@ main (int argc, char *const *argv) - } - - --#ifdef LINUX -+#if defined(LINUX) && defined(__GLIBC__) - #include - - /** diff --git a/net/gnunet/patches/101-include-byteswap.patch b/net/gnunet/patches/101-include-byteswap.patch deleted file mode 100644 index 89012635b..000000000 --- a/net/gnunet/patches/101-include-byteswap.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- a/src/include/gnunet_common.h -+++ b/src/include/gnunet_common.h -@@ -49,6 +49,8 @@ - #include - #endif - -+#include -+ - #ifdef __cplusplus - extern "C" - { From 791e9128714dcb39b77a9f3ac4ff6df8155306e9 Mon Sep 17 00:00:00 2001 From: Richard Kunze Date: Mon, 15 Jun 2015 21:52:08 +0200 Subject: [PATCH 570/681] hdparm: Updated to latest version 9.47, removed obsolete patch. Signed-off-by: Richard Kunze --- utils/hdparm/Makefile | 4 ++-- utils/hdparm/patches/001-fix-includes.patch | 20 -------------------- 2 files changed, 2 insertions(+), 22 deletions(-) delete mode 100644 utils/hdparm/patches/001-fix-includes.patch diff --git a/utils/hdparm/Makefile b/utils/hdparm/Makefile index 8841213e3..3fb70c7eb 100644 --- a/utils/hdparm/Makefile +++ b/utils/hdparm/Makefile @@ -8,13 +8,13 @@ include $(TOPDIR)/rules.mk PKG_NAME:=hdparm -PKG_VERSION:=9.45 +PKG_VERSION:=9.47 PKG_RELEASE:=1 PKG_USE_MIPS16:=0 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=@SF/$(PKG_NAME) -PKG_MD5SUM:=1c75d0751a44928b6c4bc81fb16d7fe8 +PKG_MD5SUM:=560c1d8af7f696239cbbca7cd146304a PKG_MAINTAINER:=Richard Kunze PKG_LICENSE:=BSD-Style Open Source License diff --git a/utils/hdparm/patches/001-fix-includes.patch b/utils/hdparm/patches/001-fix-includes.patch deleted file mode 100644 index 44343fb39..000000000 --- a/utils/hdparm/patches/001-fix-includes.patch +++ /dev/null @@ -1,20 +0,0 @@ ---- a/hdparm.h -+++ b/hdparm.h -@@ -2,6 +2,7 @@ - - //#undef __KERNEL_STRICT_NAMES - #include -+#include - - #if !defined(__GNUC__) && !defined(__attribute__) - #define __attribute__(x) ---- a/sysfs.c -+++ b/sysfs.c -@@ -12,6 +12,7 @@ - #include - #include - #include -+#include - #include - #include - #include From d028771f282c556d3e93219e41dcdcb50588df5d Mon Sep 17 00:00:00 2001 From: Jo-Philipp Wich Date: Tue, 16 Jun 2015 19:25:02 +0200 Subject: [PATCH 571/681] avrdude: fix musl compatibility - Build with -D_GNU_SOURCE to expose "loff_t" required for libelf.h - Include sys/types.h before usb.h to provide missing u_int*_t types Signed-off-by: Jo-Philipp Wich --- utils/avrdude/Makefile | 5 +- utils/avrdude/patches/100-musl-compat.patch | 60 +++++++++++++++++++++ 2 files changed, 64 insertions(+), 1 deletion(-) create mode 100644 utils/avrdude/patches/100-musl-compat.patch diff --git a/utils/avrdude/Makefile b/utils/avrdude/Makefile index 79a5f0934..c3750c061 100644 --- a/utils/avrdude/Makefile +++ b/utils/avrdude/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=avrdude PKG_VERSION:=6.1 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://download.savannah.gnu.org/releases/avrdude @@ -40,6 +40,9 @@ CONFIGURE_ARGS+= \ --disable-doc \ --disable-parport \ +TARGET_CFLAGS+= \ + -D_GNU_SOURCE \ + define Package/avrdude/conffiles /etc/avrdude.conf endef diff --git a/utils/avrdude/patches/100-musl-compat.patch b/utils/avrdude/patches/100-musl-compat.patch new file mode 100644 index 000000000..6baedc09e --- /dev/null +++ b/utils/avrdude/patches/100-musl-compat.patch @@ -0,0 +1,60 @@ +--- a/dfu.h ++++ b/dfu.h +@@ -25,6 +25,7 @@ + + #ifdef HAVE_LIBUSB + #if defined(HAVE_USB_H) ++# include + # include + #elif defined(HAVE_LUSB0_USB_H) + # include +--- a/pickit2.c ++++ b/pickit2.c +@@ -50,6 +50,7 @@ + #include + #include + #include ++#include + + #include "avrdude.h" + #include "avr.h" +--- a/ser_avrdoper.c ++++ b/ser_avrdoper.c +@@ -248,6 +248,7 @@ static int usbGetReport(union filedescri + /* ------------------------------------------------------------------------ */ + + #if defined(HAVE_USB_H) ++# include + # include + #elif defined(HAVE_LUSB0_USB_H) + # include +--- a/usbtiny.c ++++ b/usbtiny.c +@@ -41,6 +41,7 @@ + + #if defined(HAVE_LIBUSB) // we use LIBUSB to talk to the board + #if defined(HAVE_USB_H) ++# include + # include + #elif defined(HAVE_LUSB0_USB_H) + # include +--- a/usbasp.c ++++ b/usbasp.c +@@ -54,6 +54,7 @@ + # endif + #else + # if defined(HAVE_USB_H) ++# include + # include + # elif defined(HAVE_LUSB0_USB_H) + # include +--- a/usb_libusb.c ++++ b/usb_libusb.c +@@ -36,6 +36,7 @@ + #include + + #if defined(HAVE_USB_H) ++# include + # include + #elif defined(HAVE_LUSB0_USB_H) + # include From c10f93b9139a3c99046318446340bfd94107ca34 Mon Sep 17 00:00:00 2001 From: Jo-Philipp Wich Date: Tue, 16 Jun 2015 19:38:19 +0200 Subject: [PATCH 572/681] bridge-utils: fix musl compatibility Add missing includes to libbridge.h to define struct timeval and the required u_int*_t types under musl. Signed-off-by: Jo-Philipp Wich --- net/bridge-utils/Makefile | 2 +- net/bridge-utils/patches/100-musl-compat.patch | 11 +++++++++++ 2 files changed, 12 insertions(+), 1 deletion(-) create mode 100644 net/bridge-utils/patches/100-musl-compat.patch diff --git a/net/bridge-utils/Makefile b/net/bridge-utils/Makefile index 7b9691cc9..0075c0edb 100644 --- a/net/bridge-utils/Makefile +++ b/net/bridge-utils/Makefile @@ -10,7 +10,7 @@ include $(INCLUDE_DIR)/kernel.mk PKG_NAME:=bridge-utils PKG_VERSION:=1.5 -PKG_RELEASE:=4 +PKG_RELEASE:=5 PKG_SOURCE_PROTO:=git PKG_SOURCE_URL:=https://git.kernel.org/pub/scm/linux/kernel/git/shemminger/bridge-utils.git diff --git a/net/bridge-utils/patches/100-musl-compat.patch b/net/bridge-utils/patches/100-musl-compat.patch new file mode 100644 index 000000000..5655643d8 --- /dev/null +++ b/net/bridge-utils/patches/100-musl-compat.patch @@ -0,0 +1,11 @@ +--- a/libbridge/libbridge.h ++++ b/libbridge/libbridge.h +@@ -19,6 +19,8 @@ + #ifndef _LIBBRIDGE_H + #define _LIBBRIDGE_H + ++#include ++#include + #include + #include + #include From bc7c3799d4a406ece96e74418b2df2734f571bfc Mon Sep 17 00:00:00 2001 From: Hannu Nyman Date: Tue, 16 Jun 2015 21:50:04 +0300 Subject: [PATCH 573/681] vsftpd: fix musl compatibility Make vsftpd to compile with musl, while preserving uclibc compatibility. When using musl: * disable UTMPX functionality * disable -lnsl option in upstream Makefile Signed-off-by: Hannu Nyman --- net/vsftpd/Makefile | 12 ++++++++++-- net/vsftpd/patches/006-musl-compatibility.patch | 13 +++++++++++++ 2 files changed, 23 insertions(+), 2 deletions(-) create mode 100644 net/vsftpd/patches/006-musl-compatibility.patch diff --git a/net/vsftpd/Makefile b/net/vsftpd/Makefile index a5c55ad06..f24a79b8b 100644 --- a/net/vsftpd/Makefile +++ b/net/vsftpd/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2006-2014 OpenWrt.org +# Copyright (C) 2006-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=vsftpd PKG_VERSION:=3.0.2 -PKG_RELEASE:=4 +PKG_RELEASE:=5 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=https://security.appspot.com/downloads/ @@ -49,8 +49,15 @@ endef Package/vsftpd-tls/conffiles=$(Package/vsftpd/conffiles) +ifneq ($(CONFIG_USE_MUSL),) + NLSSTRING:=-lcrypt +else + NLSSTRING:=-lcrypt -lnsl +endif + ifeq ($(BUILD_VARIANT),notls) define Build/Compile + $(SED) 's/-lcrypt -lnsl/$(NLSSTRING)/' $(PKG_BUILD_DIR)/Makefile $(MAKE) -C $(PKG_BUILD_DIR) \ CC="$(TARGET_CC)" \ CFLAGS="$(TARGET_CFLAGS)" \ @@ -63,6 +70,7 @@ ifeq ($(BUILD_VARIANT),tls) define Build/Compile $(SED) 's/#undef VSF_BUILD_SSL/#define VSF_BUILD_SSL/' $(PKG_BUILD_DIR)/builddefs.h $(SED) 's/-lcrypt -lnsl/-lcrypt -lnsl -lssl -lcrypto/' $(PKG_BUILD_DIR)/Makefile + $(SED) 's/-lcrypt -lnsl/$(NLSSTRING)/' $(PKG_BUILD_DIR)/Makefile $(MAKE) -C $(PKG_BUILD_DIR) \ CC="$(TARGET_CC)" \ CFLAGS="$(TARGET_CFLAGS)" \ diff --git a/net/vsftpd/patches/006-musl-compatibility.patch b/net/vsftpd/patches/006-musl-compatibility.patch new file mode 100644 index 000000000..9eefec79d --- /dev/null +++ b/net/vsftpd/patches/006-musl-compatibility.patch @@ -0,0 +1,13 @@ +--- a/sysdeputil.c ++++ b/sysdeputil.c +@@ -58,7 +58,9 @@ + #define VSF_SYSDEP_HAVE_SHADOW + #define VSF_SYSDEP_HAVE_USERSHELL + #define VSF_SYSDEP_HAVE_LIBCAP +-#define VSF_SYSDEP_HAVE_UTMPX ++#if defined(__GLIBC__) || defined(__UCLIBC__) ++ #define VSF_SYSDEP_HAVE_UTMPX ++#endif + + #define __USE_GNU + #include From ba31ff7d5e8c8f51b5c467bc1b046e77afd1673c Mon Sep 17 00:00:00 2001 From: Jo-Philipp Wich Date: Wed, 17 Jun 2015 00:10:05 +0200 Subject: [PATCH 574/681] pptpd: fix musl compatibility - Ship a net/ppp_defs.h replacement header since musl does not provide one but pppd/pppd.h provided by pppd is needing it. - Replace deprecated MSG_TRYHARD flag with the proper MSG_DONTROUTE one - Unconditionally include string.h in bcrelay to avoid undeclared memset() and strcpy() warnings. Signed-off-by: Jo-Philipp Wich --- net/pptpd/Makefile | 2 +- net/pptpd/patches/100-musl-compat.patch | 38 +++++++++++++++++++++++++ 2 files changed, 39 insertions(+), 1 deletion(-) create mode 100644 net/pptpd/patches/100-musl-compat.patch diff --git a/net/pptpd/Makefile b/net/pptpd/Makefile index a2fb91fa9..d17d1962e 100644 --- a/net/pptpd/Makefile +++ b/net/pptpd/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=pptpd PKG_VERSION:=1.4.0 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=@SF/poptop diff --git a/net/pptpd/patches/100-musl-compat.patch b/net/pptpd/patches/100-musl-compat.patch new file mode 100644 index 000000000..6ce625a41 --- /dev/null +++ b/net/pptpd/patches/100-musl-compat.patch @@ -0,0 +1,38 @@ +--- a/bcrelay.c ++++ b/bcrelay.c +@@ -667,7 +667,7 @@ static void mainloop(int argc, char **ar + * there is no need to concern about the physical/link layer header because it is + * filled in automatically (based on the contents of sa). + */ +- if ((nrsent = sendto(cur_ifsnr[j].sock_nr, ipp_p, rlen, MSG_DONTWAIT|MSG_TRYHARD, (struct sockaddr *)&sa, salen)) < 0) ++ if ((nrsent = sendto(cur_ifsnr[j].sock_nr, ipp_p, rlen, MSG_DONTWAIT|MSG_DONTROUTE, (struct sockaddr *)&sa, salen)) < 0) + { + if (errno == ENETDOWN) { + syslog(LOG_NOTICE, "ignored ENETDOWN from sendto(), a network interface was going down?"); +--- a/compat.c ++++ b/compat.c +@@ -11,10 +11,10 @@ + #include "compat.h" + #include "our_syslog.h" + +-#ifndef HAVE_STRLCPY + #include + #include + ++#ifndef HAVE_STRLCPY + void strlcpy(char *dst, const char *src, size_t size) + { + strncpy(dst, src, size - 1); +--- /dev/null ++++ b/net/ppp_defs.h +@@ -0,0 +1,10 @@ ++#ifndef _NET_PPP_DEFS_H ++#define _NET_PPP_DEFS_H 1 ++ ++#define __need_time_t ++#include ++ ++#include ++#include ++ ++#endif /* net/ppp_defs.h */ From 23334b9816114da0f34da260ae4699b0f4159f46 Mon Sep 17 00:00:00 2001 From: Hannu Nyman Date: Wed, 17 Jun 2015 11:33:38 +0300 Subject: [PATCH 575/681] rng-tools: musl compatibility Make rng-tools to compile with musl by adding similar argp dependencies as with uclibc. Signed-off-by: Hannu Nyman --- utils/rng-tools/Makefile | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/utils/rng-tools/Makefile b/utils/rng-tools/Makefile index d45a197c4..8ec18c2ce 100644 --- a/utils/rng-tools/Makefile +++ b/utils/rng-tools/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2011-2014 OpenWrt.org +# Copyright (C) 2011-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=rng-tools PKG_VERSION:=5 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=@SF/gkernel/rng-tools/$(PKG_VERSION)/ @@ -19,7 +19,7 @@ PKG_MAINTAINER:=Hannu Nyman PKG_FIXUP:=autoreconf -PKG_BUILD_DEPENDS:=USE_UCLIBC:argp-standalone +PKG_BUILD_DEPENDS:=USE_UCLIBC:argp-standalone USE_MUSL:argp-standalone include $(INCLUDE_DIR)/package.mk @@ -35,6 +35,11 @@ CONFIGURE_VARS += \ LIBS="-largp" endif +ifdef CONFIG_USE_MUSL +CONFIGURE_VARS += \ + LIBS="-largp" +endif + CONFIGURE_ARGS += \ --without-libgcrypt From 771ce26a71de9cf69795f4921b27c56a4b2f14ba Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Toke=20H=C3=B8iland-J=C3=B8rgensen?= Date: Wed, 17 Jun 2015 13:03:03 +0200 Subject: [PATCH 576/681] [sqm-scripts/luci-app-sqm] Document how to disable shaping on a per direction basis sqm-scripts for a long time interprets a "Down- or Upload speed" of zero as an indication that the shaper should be disabled. Note that really shaping an individual direction down o zero will make the link effectively dead for tcp (think reverse ACK traffic). Son instead of allowing the user to configure something broken, 0 was "over-loaded" to denote no shaping since several years, but that information has not been documented visibly to the users. This commit aims at fixing that oversight. Signed-off-by: Sebastian Moeller --- net/luci-app-sqm/Makefile | 2 +- net/luci-app-sqm/files/sqm-cbi.lua | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/net/luci-app-sqm/Makefile b/net/luci-app-sqm/Makefile index f0bb2a0ac..c4fbc1283 100644 --- a/net/luci-app-sqm/Makefile +++ b/net/luci-app-sqm/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=luci-app-sqm PKG_VERSION:=3 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_LICENSE:=GPLv2 LUCI_DIR:=/usr/lib/lua/luci diff --git a/net/luci-app-sqm/files/sqm-cbi.lua b/net/luci-app-sqm/files/sqm-cbi.lua index 837902597..49ab13057 100644 --- a/net/luci-app-sqm/files/sqm-cbi.lua +++ b/net/luci-app-sqm/files/sqm-cbi.lua @@ -52,11 +52,11 @@ end n.rmempty = false -dl = s:taboption("tab_basic", Value, "download", translate("Download speed (kbit/s) (ingress):")) +dl = s:taboption("tab_basic", Value, "download", translate("Download speed (kbit/s) (ingress) set to 0 to selectively disable ingress shaping:")) dl.datatype = "and(uinteger,min(0))" dl.rmempty = false -ul = s:taboption("tab_basic", Value, "upload", translate("Upload speed (kbit/s) (egress):")) +ul = s:taboption("tab_basic", Value, "upload", translate("Upload speed (kbit/s) (egress) set to 0 to selectively disable egress shaping:")) ul.datatype = "and(uinteger,min(0))" ul.rmempty = false From 9f35f2a9e583fcd291d8f746fbea571388a71dbc Mon Sep 17 00:00:00 2001 From: Yousong Zhou Date: Wed, 17 Jun 2015 21:37:24 +0800 Subject: [PATCH 577/681] libpam: bump to 1.2.0 - Add configure options --disable-nis, --disable-regenerate-docu - 000-OE-libpam-xtests.patch is not relevant in OpenWrt - 001-no_nis.patch was dropped because we now --disable-nis - 002-no_yywrap.patch was dropped be cause it was fixed in 1.2.0 - 003-no_doc was dropped because we ignore doc/ with --disable-regenreate-docu - 004-fix_lib64 was replaced by new 0001-build-use-host_cpu... - pam_rhosts will not be built with musl because ruserok{,_af{ are not available - pam_lastlog will not be built with musl because logwtmp is missing Signed-off-by: Yousong Zhou --- libs/libpam/Makefile | 6 +- .../libpam/patches/000-OE-libpam-xtests.patch | 35 -- ...ost_cpu-for-lib64-directory-handling.patch | 28 ++ ..._rhosts-if-neither-ruserok-nor-ruser.patch | 77 ++++ ..._lastlog-when-logwtmp-is-not-availab.patch | 60 +++ ...when-crypt-is-not-part-of-crypt_libs.patch | 28 ++ .../patches/0005-build-fix-doc-build.patch | 133 +++++++ ...pilation-in-case-rpc-rpc.h-is-missin.patch | 29 ++ ...nnetgr-is-available-at-compile-time.patch} | 67 ++-- libs/libpam/patches/001-no_nis.patch | 68 ---- libs/libpam/patches/002-no_yywrap.patch | 26 -- libs/libpam/patches/003-no_doc.patch | 22 -- libs/libpam/patches/004-fix_lib64.patch | 16 - libs/libpam/patches/005-fix_ruserok.patch | 364 ------------------ libs/libpam/patches/006-fix_xdr.patch | 271 ------------- libs/libpam/patches/007-cve-2014-2583.patch | 52 --- libs/libpam/patches/008-LIBCRYPT-fix.patch | 11 - libs/libpam/patches/009-pam_rhosts-fix.patch | 51 --- 18 files changed, 403 insertions(+), 941 deletions(-) delete mode 100644 libs/libpam/patches/000-OE-libpam-xtests.patch create mode 100644 libs/libpam/patches/0001-build-use-host_cpu-for-lib64-directory-handling.patch create mode 100644 libs/libpam/patches/0002-build-ignore-pam_rhosts-if-neither-ruserok-nor-ruser.patch create mode 100644 libs/libpam/patches/0003-build-ignore-pam_lastlog-when-logwtmp-is-not-availab.patch create mode 100644 libs/libpam/patches/0004-build-fix-build-when-crypt-is-not-part-of-crypt_libs.patch create mode 100644 libs/libpam/patches/0005-build-fix-doc-build.patch create mode 100644 libs/libpam/patches/0006-pam_unix-fix-compilation-in-case-rpc-rpc.h-is-missin.patch rename libs/libpam/patches/{000-OE-pam-no-innetgr.patch => 0007-Check-if-innetgr-is-available-at-compile-time.patch} (59%) delete mode 100644 libs/libpam/patches/001-no_nis.patch delete mode 100644 libs/libpam/patches/002-no_yywrap.patch delete mode 100644 libs/libpam/patches/003-no_doc.patch delete mode 100644 libs/libpam/patches/004-fix_lib64.patch delete mode 100644 libs/libpam/patches/005-fix_ruserok.patch delete mode 100644 libs/libpam/patches/006-fix_xdr.patch delete mode 100644 libs/libpam/patches/007-cve-2014-2583.patch delete mode 100644 libs/libpam/patches/008-LIBCRYPT-fix.patch delete mode 100644 libs/libpam/patches/009-pam_rhosts-fix.patch diff --git a/libs/libpam/Makefile b/libs/libpam/Makefile index c04b24789..10e74589a 100644 --- a/libs/libpam/Makefile +++ b/libs/libpam/Makefile @@ -8,8 +8,8 @@ include $(TOPDIR)/rules.mk PKG_NAME:=libpam -PKG_VERSION:=1.1.8 -PKG_RELEASE:=5 +PKG_VERSION:=1.2.0 +PKG_RELEASE:=1 PKG_SOURCE:=Linux-PAM-$(PKG_VERSION).tar.bz2 PKG_SOURCE_URL:=http://www.linux-pam.org/library/ @@ -45,6 +45,8 @@ define Build/Configure --disable-selinux \ --disable-nls \ --disable-rpath \ + --disable-nis \ + --disable-regenerate-docu \ --enable-db=no \ ) endef diff --git a/libs/libpam/patches/000-OE-libpam-xtests.patch b/libs/libpam/patches/000-OE-libpam-xtests.patch deleted file mode 100644 index 19fbaa29b..000000000 --- a/libs/libpam/patches/000-OE-libpam-xtests.patch +++ /dev/null @@ -1,35 +0,0 @@ -This patch is used to create a new sub package libpam-xtests to do more checks. - -Upstream-Status: Pending - -Signed-off-by: Kang Kai ---- a/xtests/Makefile.am -+++ b/xtests/Makefile.am -@@ -7,7 +7,7 @@ AM_CFLAGS = -DLIBPAM_COMPILE -I$(top_src - LDADD = $(top_builddir)/libpam/libpam.la \ - $(top_builddir)/libpam_misc/libpam_misc.la - --CLEANFILES = *~ $(XTESTS) -+CLEANFILES = *~ - - EXTRA_DIST = run-xtests.sh tst-pam_dispatch1.pamd tst-pam_dispatch2.pamd \ - tst-pam_dispatch3.pamd tst-pam_dispatch4.pamd \ -@@ -51,3 +51,18 @@ EXTRA_PROGRAMS = $(XTESTS) - - xtests: $(XTESTS) run-xtests.sh - "$(srcdir)"/run-xtests.sh "$(srcdir)" ${XTESTS} ${NOSRCTESTS} -+ -+all: $(XTESTS) -+ -+install: install_xtests -+ -+install_xtests: -+ $(INSTALL) -d $(DESTDIR)$(pkgdatadir)/xtests -+ for file in $(EXTRA_DIST) ; do \ -+ $(INSTALL) $$file $(DESTDIR)$(pkgdatadir)/xtests ; \ -+ done -+ for file in $(XTESTS); do \ -+ $(INSTALL) .libs/$$file $(DESTDIR)$(pkgdatadir)/xtests ; \ -+ done -+ -+.PHONY: all install_xtests diff --git a/libs/libpam/patches/0001-build-use-host_cpu-for-lib64-directory-handling.patch b/libs/libpam/patches/0001-build-use-host_cpu-for-lib64-directory-handling.patch new file mode 100644 index 000000000..038b21422 --- /dev/null +++ b/libs/libpam/patches/0001-build-use-host_cpu-for-lib64-directory-handling.patch @@ -0,0 +1,28 @@ +From ee916fd0ec70eb37a97da29f6ec0c26bef7cf6f2 Mon Sep 17 00:00:00 2001 +From: Yousong Zhou +Date: Wed, 17 Jun 2015 16:11:31 +0800 +Subject: [PATCH 1/7] build: use $host_cpu for lib64 directory handling. + +* configure.ac: use $host_cpu for lib64 directory handling. + +Signed-off-by: Yousong Zhou +--- + configure.ac | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/configure.ac b/configure.ac +index fd0e310..1bc2591 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -27,7 +27,7 @@ dnl If we use /usr as prefix, use /etc for config files + fi + if test ${libdir} = '${exec_prefix}/lib' + then +- case "`uname -m`" in ++ case "$host_cpu" in + x86_64|ppc64|s390x|sparc64) + libdir="/lib64" ;; + *) +-- +1.7.10.4 + diff --git a/libs/libpam/patches/0002-build-ignore-pam_rhosts-if-neither-ruserok-nor-ruser.patch b/libs/libpam/patches/0002-build-ignore-pam_rhosts-if-neither-ruserok-nor-ruser.patch new file mode 100644 index 000000000..c3eda4155 --- /dev/null +++ b/libs/libpam/patches/0002-build-ignore-pam_rhosts-if-neither-ruserok-nor-ruser.patch @@ -0,0 +1,77 @@ +From e985c1ef2c739a597b2d7a2efc3c310c02e40c1f Mon Sep 17 00:00:00 2001 +From: Yousong Zhou +Date: Wed, 17 Jun 2015 18:19:23 +0800 +Subject: [PATCH 2/7] build: ignore pam_rhosts if neither ruserok nor + ruserok_af is available. + +* configure.ac: check for ruserok and ruserok_af +* modules/Makefile.am: ignore pam_rhosts/ if it's disabled +* modules/pam_rhosts/pam_rhosts.c: include stdlib.h for malloc and free + +Signed-off-by: Yousong Zhou +--- + configure.ac | 5 ++++- + modules/Makefile.am | 11 ++++++++--- + modules/pam_rhosts/pam_rhosts.c | 1 + + 3 files changed, 13 insertions(+), 4 deletions(-) + +diff --git a/configure.ac b/configure.ac +index 1bc2591..3c4d8bb 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -542,7 +542,10 @@ AC_CHECK_FUNCS(fseeko getdomainname gethostname gettimeofday lckpwdf mkdir selec + AC_CHECK_FUNCS(strcspn strdup strspn strstr strtol uname) + AC_CHECK_FUNCS(getutent_r getpwnam_r getpwuid_r getgrnam_r getgrgid_r getspnam_r) + AC_CHECK_FUNCS(getgrouplist getline getdelim) +-AC_CHECK_FUNCS(inet_ntop inet_pton innetgr ruserok_af) ++AC_CHECK_FUNCS(inet_ntop inet_pton innetgr) ++AC_CHECK_FUNCS([ruserok_af ruserok], [break]) ++ ++AM_CONDITIONAL([COND_BUILD_PAM_RHOSTS], [test "$ac_cv_func_ruserok_af" = yes -o "$ac_cv_func_ruserok" = yes]) + + AC_CHECK_FUNCS(unshare, [UNSHARE=yes], [UNSHARE=no]) + AM_CONDITIONAL([HAVE_UNSHARE], [test "$UNSHARE" = yes]) +diff --git a/modules/Makefile.am b/modules/Makefile.am +index 0c80cea..9ad26a9 100644 +--- a/modules/Makefile.am ++++ b/modules/Makefile.am +@@ -2,16 +2,21 @@ + # Copyright (c) 2005, 2006, 2008 Thorsten Kukuk + # + +-SUBDIRS = pam_access pam_cracklib pam_debug pam_deny pam_echo \ ++if COND_BUILD_PAM_RHOSTS ++ MAYBE_PAM_RHOSTS = pam_rhosts ++endif ++ ++SUBDIRS := pam_access pam_cracklib pam_debug pam_deny pam_echo \ + pam_env pam_exec pam_faildelay pam_filter pam_ftp \ + pam_group pam_issue pam_keyinit pam_lastlog pam_limits \ + pam_listfile pam_localuser pam_loginuid pam_mail \ + pam_mkhomedir pam_motd pam_namespace pam_nologin \ +- pam_permit pam_pwhistory pam_rhosts pam_rootok pam_securetty \ ++ pam_permit pam_pwhistory pam_rootok pam_securetty \ + pam_selinux pam_sepermit pam_shells pam_stress \ + pam_succeed_if pam_tally pam_tally2 pam_time pam_timestamp \ + pam_tty_audit pam_umask \ +- pam_unix pam_userdb pam_warn pam_wheel pam_xauth ++ pam_unix pam_userdb pam_warn pam_wheel pam_xauth \ ++ $(MAYBE_PAM_RHOSTS) + + CLEANFILES = *~ + +diff --git a/modules/pam_rhosts/pam_rhosts.c b/modules/pam_rhosts/pam_rhosts.c +index bc9e76f..51ef13e 100644 +--- a/modules/pam_rhosts/pam_rhosts.c ++++ b/modules/pam_rhosts/pam_rhosts.c +@@ -35,6 +35,7 @@ + #include + #include + #include ++#include + #include + + #define PAM_SM_AUTH /* only defines this management group */ +-- +1.7.10.4 + diff --git a/libs/libpam/patches/0003-build-ignore-pam_lastlog-when-logwtmp-is-not-availab.patch b/libs/libpam/patches/0003-build-ignore-pam_lastlog-when-logwtmp-is-not-availab.patch new file mode 100644 index 000000000..ddcb66228 --- /dev/null +++ b/libs/libpam/patches/0003-build-ignore-pam_lastlog-when-logwtmp-is-not-availab.patch @@ -0,0 +1,60 @@ +From 173164996ca7daf3fa705f2a0bb2991b0d5d2083 Mon Sep 17 00:00:00 2001 +From: Yousong Zhou +Date: Wed, 17 Jun 2015 21:18:05 +0800 +Subject: [PATCH 3/7] build: ignore pam_lastlog when logwtmp is not available. + +* configure.ac: check logwtmp and set COND_BUILD_PAM_LASTLOG +* modules/pam_lastlog/Makefile.am: check COND_BUILD_PAM_LASTLOG + +Signed-off-by: Yousong Zhou +--- + configure.ac | 2 ++ + modules/Makefile.am | 8 ++++++-- + 2 files changed, 8 insertions(+), 2 deletions(-) + +diff --git a/configure.ac b/configure.ac +index 3c4d8bb..8de6edf 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -544,8 +544,10 @@ AC_CHECK_FUNCS(getutent_r getpwnam_r getpwuid_r getgrnam_r getgrgid_r getspnam_r + AC_CHECK_FUNCS(getgrouplist getline getdelim) + AC_CHECK_FUNCS(inet_ntop inet_pton innetgr) + AC_CHECK_FUNCS([ruserok_af ruserok], [break]) ++AC_CHECK_FUNCS([logwtmp]) + + AM_CONDITIONAL([COND_BUILD_PAM_RHOSTS], [test "$ac_cv_func_ruserok_af" = yes -o "$ac_cv_func_ruserok" = yes]) ++AM_CONDITIONAL([COND_BUILD_PAM_LASTLOG], [test "$ac_cv_func_logwtmp" = yes]) + + AC_CHECK_FUNCS(unshare, [UNSHARE=yes], [UNSHARE=no]) + AM_CONDITIONAL([HAVE_UNSHARE], [test "$UNSHARE" = yes]) +diff --git a/modules/Makefile.am b/modules/Makefile.am +index 9ad26a9..b98dc5c 100644 +--- a/modules/Makefile.am ++++ b/modules/Makefile.am +@@ -6,9 +6,13 @@ if COND_BUILD_PAM_RHOSTS + MAYBE_PAM_RHOSTS = pam_rhosts + endif + ++if COND_BUILD_PAM_LASTLOG ++ MAYBE_PAM_LASTLOG = pam_lastlog ++endif ++ + SUBDIRS := pam_access pam_cracklib pam_debug pam_deny pam_echo \ + pam_env pam_exec pam_faildelay pam_filter pam_ftp \ +- pam_group pam_issue pam_keyinit pam_lastlog pam_limits \ ++ pam_group pam_issue pam_keyinit pam_limits \ + pam_listfile pam_localuser pam_loginuid pam_mail \ + pam_mkhomedir pam_motd pam_namespace pam_nologin \ + pam_permit pam_pwhistory pam_rootok pam_securetty \ +@@ -16,7 +20,7 @@ SUBDIRS := pam_access pam_cracklib pam_debug pam_deny pam_echo \ + pam_succeed_if pam_tally pam_tally2 pam_time pam_timestamp \ + pam_tty_audit pam_umask \ + pam_unix pam_userdb pam_warn pam_wheel pam_xauth \ +- $(MAYBE_PAM_RHOSTS) ++ $(MAYBE_PAM_RHOSTS) $(MAYBE_PAM_LASTLOG) + + CLEANFILES = *~ + +-- +1.7.10.4 + diff --git a/libs/libpam/patches/0004-build-fix-build-when-crypt-is-not-part-of-crypt_libs.patch b/libs/libpam/patches/0004-build-fix-build-when-crypt-is-not-part-of-crypt_libs.patch new file mode 100644 index 000000000..ee319d11b --- /dev/null +++ b/libs/libpam/patches/0004-build-fix-build-when-crypt-is-not-part-of-crypt_libs.patch @@ -0,0 +1,28 @@ +From 20e5efe4b2a8471bc52e480e53cff68a4de19c56 Mon Sep 17 00:00:00 2001 +From: Yousong Zhou +Date: Wed, 17 Jun 2015 18:22:31 +0800 +Subject: [PATCH 4/7] build: fix build when crypt() is not part of crypt_libs. + +* configure.ac: ditto. + +Signed-off-by: Yousong Zhou +--- + configure.ac | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/configure.ac b/configure.ac +index 8de6edf..c15441b 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -416,7 +416,7 @@ AS_IF([test "x$ac_cv_header_xcrypt_h" = "xyes"], + [crypt_libs="crypt"]) + + BACKUP_LIBS=$LIBS +-AC_SEARCH_LIBS([crypt],[$crypt_libs], LIBCRYPT="-l$ac_lib", LIBCRYPT="") ++AC_SEARCH_LIBS([crypt],[$crypt_libs], LIBCRYPT="${ac_lib:+-l$ac_lib}", LIBCRYPT="") + AC_CHECK_FUNCS(crypt_r crypt_gensalt_r) + LIBS=$BACKUP_LIBS + AC_SUBST(LIBCRYPT) +-- +1.7.10.4 + diff --git a/libs/libpam/patches/0005-build-fix-doc-build.patch b/libs/libpam/patches/0005-build-fix-doc-build.patch new file mode 100644 index 000000000..132012439 --- /dev/null +++ b/libs/libpam/patches/0005-build-fix-doc-build.patch @@ -0,0 +1,133 @@ +From df7abf333d19aefd166f613b696345732ae4c9c8 Mon Sep 17 00:00:00 2001 +From: Yousong Zhou +Date: Wed, 17 Jun 2015 20:38:41 +0800 +Subject: [PATCH 5/7] build: fix doc build. + +* Makefile.am: ignore doc/ directory if not ENABLE_REGENERATE_MAN +* doc/adg/Makefile.am: remove check on ENABLE_REGENERATE_MAN +* doc/man/Makefile.am: ditto +* doc/mwg/Makefile.am: ditto +* doc/sag/Makefile.am: ditto +* doc/specs/Makefile.am: ignore CC from command line + +Signed-off-by: Yousong Zhou +--- + Makefile.am | 5 ++++- + doc/adg/Makefile.am | 3 --- + doc/man/Makefile.am | 2 -- + doc/mwg/Makefile.am | 3 --- + doc/sag/Makefile.am | 2 -- + doc/specs/Makefile.am | 2 +- + 6 files changed, 5 insertions(+), 12 deletions(-) + +diff --git a/Makefile.am b/Makefile.am +index 3db4e37..5e6592a 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -4,7 +4,10 @@ + + AUTOMAKE_OPTIONS = 1.9 gnu dist-bzip2 check-news + +-SUBDIRS = libpam tests libpamc libpam_misc modules po conf doc examples xtests ++if ENABLE_REGENERATE_MAN ++ MAYBE_DOC = doc ++endif ++SUBDIRS = libpam tests libpamc libpam_misc modules po conf examples xtests $(MAYBE_DOC) + + CLEANFILES = *~ + +diff --git a/doc/adg/Makefile.am b/doc/adg/Makefile.am +index 77bd7a9..bec5edc 100644 +--- a/doc/adg/Makefile.am ++++ b/doc/adg/Makefile.am +@@ -9,7 +9,6 @@ EXTRA_DIST = $(XMLS) + XMLS = Linux-PAM_ADG.xml $(shell ls $(srcdir)/pam_*.xml) + DEP_XMLS = $(shell ls $(top_srcdir)/doc/man/pam_*.xml) + +-if ENABLE_REGENERATE_MAN + MAINTAINERCLEANFILES = Linux-PAM_ADG.txt Linux-PAM_ADG.pdf html/*.html + + all: Linux-PAM_ADG.txt html/Linux-PAM_ADG.html Linux-PAM_ADG.pdf +@@ -51,8 +50,6 @@ html/Linux-PAM_ADG.html: $(XMLS) $(DEP_XMLS) + distclean-local: + -rm -rf html Linux-PAM_ADG.txt Linux-PAM_ADG.pdf + +-endif +- + install-data-local: + $(mkinstalldirs) $(DESTDIR)$(docdir) + $(mkinstalldirs) $(DESTDIR)$(pdfdir) +diff --git a/doc/man/Makefile.am b/doc/man/Makefile.am +index 78c891d..b1dc421 100644 +--- a/doc/man/Makefile.am ++++ b/doc/man/Makefile.am +@@ -45,7 +45,6 @@ XMLS = pam.3.xml pam.8.xml \ + misc_conv.3.xml pam_misc_paste_env.3.xml pam_misc_drop_env.3.xml \ + pam_misc_setenv.3.xml + +-if ENABLE_REGENERATE_MAN + PAM.8: pam.8 + pam_get_authtok_noverify.3: pam_get_authtok.3 + pam_get_authtok_verify.3: pam_get_authtok.3 +@@ -60,4 +59,3 @@ pam_get_item.3: pam_item_types_std.inc.xml pam_item_types_ext.inc.xml + pam_set_data.3: pam_item_types_std.inc.xml pam_item_types_ext.inc.xml + pam.conf.5: pam.conf-desc.xml pam.conf-dir.xml pam.conf-syntax.xml + -include $(top_srcdir)/Make.xml.rules +-endif +diff --git a/doc/mwg/Makefile.am b/doc/mwg/Makefile.am +index 2bbb2d0..f57e297 100644 +--- a/doc/mwg/Makefile.am ++++ b/doc/mwg/Makefile.am +@@ -9,7 +9,6 @@ EXTRA_DIST = $(XMLS) + XMLS = Linux-PAM_MWG.xml $(shell ls $(srcdir)/pam_*.xml) + DEP_XMLS = $(shell ls $(top_srcdir)/doc/man/pam_*.xml) + +-if ENABLE_REGENERATE_MAN + MAINTAINERCLEANFILES = Linux-PAM_MWG.txt Linux-PAM_MWG.pdf html/*.html + + all: Linux-PAM_MWG.txt html/Linux-PAM_MWG.html Linux-PAM_MWG.pdf +@@ -51,8 +50,6 @@ html/Linux-PAM_MWG.html: $(XMLS) $(DEP_XMLS) + distclean-local: + -rm -rf html Linux-PAM_MWG.txt Linux-PAM_MWG.pdf + +-endif +- + install-data-local: + $(mkinstalldirs) $(DESTDIR)$(docdir) + $(mkinstalldirs) $(DESTDIR)$(pdfdir) +diff --git a/doc/sag/Makefile.am b/doc/sag/Makefile.am +index 31816aa..a8b655f 100644 +--- a/doc/sag/Makefile.am ++++ b/doc/sag/Makefile.am +@@ -10,7 +10,6 @@ XMLS = Linux-PAM_SAG.xml $(shell ls $(srcdir)/pam_*.xml) + + DEP_XMLS = $(shell ls $(top_srcdir)/modules/pam_*/pam_*.xml) + +-if ENABLE_REGENERATE_MAN + MAINTAINERCLEANFILES = Linux-PAM_SAG.txt Linux-PAM_SAG.pdf html/*.html + + all: Linux-PAM_SAG.txt html/Linux-PAM_SAG.html Linux-PAM_SAG.pdf +@@ -51,7 +50,6 @@ html/Linux-PAM_SAG.html: $(XMLS) $(DEP_XMLS) + + distclean-local: + -rm -rf html Linux-PAM_SAG.txt Linux-PAM_SAG.pdf +-endif + + install-data-local: + $(mkinstalldirs) $(DESTDIR)$(docdir) +diff --git a/doc/specs/Makefile.am b/doc/specs/Makefile.am +index 99ecc70..39c850f 100644 +--- a/doc/specs/Makefile.am ++++ b/doc/specs/Makefile.am +@@ -11,7 +11,7 @@ draft-morgan-pam-current.txt: padout draft-morgan-pam.raw + + AM_YFLAGS = -d + +-CC = @CC_FOR_BUILD@ ++override CC = @CC_FOR_BUILD@ + CPPFLAGS = @BUILD_CPPFLAGS@ + CFLAGS = @BUILD_CFLAGS@ + LDFLAGS = @BUILD_LDFLAGS@ +-- +1.7.10.4 + diff --git a/libs/libpam/patches/0006-pam_unix-fix-compilation-in-case-rpc-rpc.h-is-missin.patch b/libs/libpam/patches/0006-pam_unix-fix-compilation-in-case-rpc-rpc.h-is-missin.patch new file mode 100644 index 000000000..bfdfd8b4c --- /dev/null +++ b/libs/libpam/patches/0006-pam_unix-fix-compilation-in-case-rpc-rpc.h-is-missin.patch @@ -0,0 +1,29 @@ +From 596797ab7f46fb4d0338e75db7c0d1019cd4df87 Mon Sep 17 00:00:00 2001 +From: Yousong Zhou +Date: Wed, 17 Jun 2015 18:16:18 +0800 +Subject: [PATCH 6/7] pam_unix: fix compilation in case rpc/rpc.h is missing. + +* modules/pam_unix/pam_unix_passwd.c: conditional compile on the + availability of rpc/rpc.h + +Signed-off-by: Yousong Zhou +--- + modules/pam_unix/pam_unix_passwd.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/modules/pam_unix/pam_unix_passwd.c b/modules/pam_unix/pam_unix_passwd.c +index 2d330e5..970724a 100644 +--- a/modules/pam_unix/pam_unix_passwd.c ++++ b/modules/pam_unix/pam_unix_passwd.c +@@ -336,7 +336,7 @@ static int _do_setpass(pam_handle_t* pamh, const char *forwho, + } + + if (on(UNIX_NIS, ctrl) && _unix_comesfromsource(pamh, forwho, 0, 1)) { +-#ifdef HAVE_NIS ++#if defined(HAVE_NIS) && defined(HAVE_RPC_RPC_H) + if ((master=getNISserver(pamh, ctrl)) != NULL) { + struct timeval timeout; + struct yppasswd yppwd; +-- +1.7.10.4 + diff --git a/libs/libpam/patches/000-OE-pam-no-innetgr.patch b/libs/libpam/patches/0007-Check-if-innetgr-is-available-at-compile-time.patch similarity index 59% rename from libs/libpam/patches/000-OE-pam-no-innetgr.patch rename to libs/libpam/patches/0007-Check-if-innetgr-is-available-at-compile-time.patch index f7f5b4897..7108b6bed 100644 --- a/libs/libpam/patches/000-OE-pam-no-innetgr.patch +++ b/libs/libpam/patches/0007-Check-if-innetgr-is-available-at-compile-time.patch @@ -1,42 +1,44 @@ +From 9e2fa22891a87592c1a04801623fea5be40cb581 Mon Sep 17 00:00:00 2001 +From: Yousong Zhou +Date: Wed, 17 Jun 2015 15:33:43 +0800 +Subject: [PATCH 7/7] Check if innetgr is available at compile time. + innetgr may not be there so make sure that when innetgr is not present then we inform about it and not use it. --Khem +* modules/pam_group/pam_group.c: ditto +* modules/pam_succeed_if/pam_succeed_if.c: ditto +* modules/pam_time/pam_time.c: ditto + +Signed-off-by: Khem Raj +Signed-off-by: Yousong Zhou +--- + modules/pam_group/pam_group.c | 4 ++++ + modules/pam_succeed_if/pam_succeed_if.c | 17 +++++++++++++---- + modules/pam_time/pam_time.c | 4 ++++ + 3 files changed, 21 insertions(+), 4 deletions(-) + +diff --git a/modules/pam_group/pam_group.c b/modules/pam_group/pam_group.c +index be5f20f..6a065ca 100644 --- a/modules/pam_group/pam_group.c +++ b/modules/pam_group/pam_group.c -@@ -656,7 +656,11 @@ static int check_account(pam_handle_t *p +@@ -656,7 +656,11 @@ static int check_account(pam_handle_t *pamh, const char *service, } /* If buffer starts with @, we are using netgroups */ if (buffer[0] == '@') +#ifdef HAVE_INNETGR good &= innetgr (&buffer[1], NULL, user, NULL); +#else -+ pam_syslog (pamh, LOG_ERR, "pam_group does not have netgroup support"); ++ pam_syslog (pamh, LOG_ERR, "pam_group does not have netgroup support"); +#endif /* otherwise, if the buffer starts with %, it's a UNIX group */ else if (buffer[0] == '%') good &= pam_modutil_user_in_group_nam_nam(pamh, user, &buffer[1]); ---- a/modules/pam_time/pam_time.c -+++ b/modules/pam_time/pam_time.c -@@ -555,9 +555,13 @@ check_account(pam_handle_t *pamh, const - } - /* If buffer starts with @, we are using netgroups */ - if (buffer[0] == '@') -- good &= innetgr (&buffer[1], NULL, user, NULL); -+#ifdef HAVE_INNETGR -+ good &= innetgr (&buffer[1], NULL, user, NULL); -+#else -+ pam_syslog (pamh, LOG_ERR, "pam_time does not have netgroup support"); -+#endif - else -- good &= logic_field(pamh, user, buffer, count, is_same); -+ good &= logic_field(pamh, user, buffer, count, is_same); - D(("with user: %s", good ? "passes":"fails" )); - - /* here we get the time field */ +diff --git a/modules/pam_succeed_if/pam_succeed_if.c b/modules/pam_succeed_if/pam_succeed_if.c +index aa828fc..c0c68a0 100644 --- a/modules/pam_succeed_if/pam_succeed_if.c +++ b/modules/pam_succeed_if/pam_succeed_if.c -@@ -231,18 +231,27 @@ evaluate_notingroup(pam_handle_t *pamh, +@@ -231,18 +231,27 @@ evaluate_notingroup(pam_handle_t *pamh, const char *user, const char *group) } /* Return PAM_SUCCESS if the (host,user) is in the netgroup. */ static int @@ -47,7 +49,7 @@ then we inform about it and not use it. if (innetgr(group, host, user, NULL) == 1) return PAM_SUCCESS; +#else -+ pam_syslog (pamh, LOG_ERR, "pam_succeed_if does not have netgroup support"); ++ pam_syslog (pamh, LOG_ERR, "pam_succeed_if does not have netgroup support"); +#endif + return PAM_AUTH_ERR; @@ -83,3 +85,22 @@ then we inform about it and not use it. } /* Fail closed. */ return PAM_SERVICE_ERR; +diff --git a/modules/pam_time/pam_time.c b/modules/pam_time/pam_time.c +index c94737c..0b34a14 100644 +--- a/modules/pam_time/pam_time.c ++++ b/modules/pam_time/pam_time.c +@@ -555,7 +555,11 @@ check_account(pam_handle_t *pamh, const char *service, + } + /* If buffer starts with @, we are using netgroups */ + if (buffer[0] == '@') ++#ifdef HAVE_INNETGR + good &= innetgr (&buffer[1], NULL, user, NULL); ++#else ++ pam_syslog (pamh, LOG_ERR, "pam_time does not have netgroup support"); ++#endif + else + good &= logic_field(pamh, user, buffer, count, is_same); + D(("with user: %s", good ? "passes":"fails" )); +-- +1.7.10.4 + diff --git a/libs/libpam/patches/001-no_nis.patch b/libs/libpam/patches/001-no_nis.patch deleted file mode 100644 index c9988c7fb..000000000 --- a/libs/libpam/patches/001-no_nis.patch +++ /dev/null @@ -1,68 +0,0 @@ ---- a/modules/pam_access/pam_access.c -+++ b/modules/pam_access/pam_access.c -@@ -44,7 +44,7 @@ - #include - #include - #include --#ifdef HAVE_RPCSVC_YPCLNT_H -+#ifdef HAVE_RPCSVC_YPCLNT_H && USE_NIS - #include - #endif - #ifdef HAVE_LIBAUDIT ---- a/modules/pam_unix/pam_unix_passwd.c -+++ b/modules/pam_unix/pam_unix_passwd.c -@@ -79,18 +79,18 @@ - #include "passverify.h" - #include "bigcrypt.h" - --#if (HAVE_YP_GET_DEFAULT_DOMAIN || HAVE_GETDOMAINNAME) && HAVE_YP_MASTER -+#if (HAVE_YP_GET_DEFAULT_DOMAIN || HAVE_GETDOMAINNAME) && HAVE_YP_MASTER && USE_NIS - # define HAVE_NIS - #endif - - #ifdef HAVE_NIS - # include - --# if HAVE_RPCSVC_YP_PROT_H -+# if HAVE_RPCSVC_YP_PROT_H && USE_NIS - # include - # endif - --# if HAVE_RPCSVC_YPCLNT_H -+# if HAVE_RPCSVC_YPCLNT_H && USE_NIS - # include - # endif - ---- a/modules/pam_unix/support.c -+++ b/modules/pam_unix/support.c -@@ -19,7 +19,7 @@ - #include - #include - #include --#ifdef HAVE_RPCSVC_YPCLNT_H -+#ifdef HAVE_RPCSVC_YPCLNT_H && USE_NIS - #include - #endif - -@@ -402,7 +402,7 @@ int _unix_getpwnam(pam_handle_t *pamh, c - } - } - --#if defined(HAVE_YP_GET_DEFAULT_DOMAIN) && defined (HAVE_YP_BIND) && defined (HAVE_YP_MATCH) && defined (HAVE_YP_UNBIND) -+#if defined(HAVE_YP_GET_DEFAULT_DOMAIN) && defined (HAVE_YP_BIND) && defined (HAVE_YP_MATCH) && defined (HAVE_YP_UNBIND) && (USE_NIS) - if (!matched && nis) { - char *userinfo = NULL, *domain = NULL; - int len = 0, i; ---- a/modules/pam_unix/yppasswd_xdr.c -+++ b/modules/pam_unix/yppasswd_xdr.c -@@ -15,6 +15,10 @@ - #ifdef HAVE_RPC_RPC_H - - #include -+#ifdef USE_NIS -+#include -+#include -+#endif - #include "yppasswd.h" - - bool_t diff --git a/libs/libpam/patches/002-no_yywrap.patch b/libs/libpam/patches/002-no_yywrap.patch deleted file mode 100644 index 0d73e4be0..000000000 --- a/libs/libpam/patches/002-no_yywrap.patch +++ /dev/null @@ -1,26 +0,0 @@ ---- a/conf/pam_conv1/pam_conv_l.c -+++ b/conf/pam_conv1/pam_conv_l.c -@@ -534,7 +534,9 @@ void yyset_lineno (int line_number ); - #ifdef __cplusplus - extern "C" int yywrap (void ); - #else --extern int yywrap (void ); -+int yywrap (void ) { -+ return 1; -+} - #endif - #endif - ---- a/doc/specs/parse_l.c -+++ b/doc/specs/parse_l.c -@@ -520,7 +520,9 @@ void yyset_lineno (int line_number ); - #ifdef __cplusplus - extern "C" int yywrap (void ); - #else --extern int yywrap (void ); -+int yywrap (void ) { -+ return 1; -+} - #endif - #endif - diff --git a/libs/libpam/patches/003-no_doc.patch b/libs/libpam/patches/003-no_doc.patch deleted file mode 100644 index d36621514..000000000 --- a/libs/libpam/patches/003-no_doc.patch +++ /dev/null @@ -1,22 +0,0 @@ ---- a/Makefile.am -+++ b/Makefile.am -@@ -4,7 +4,7 @@ - - AUTOMAKE_OPTIONS = 1.9 gnu dist-bzip2 check-news - --SUBDIRS = libpam tests libpamc libpam_misc modules po conf doc examples xtests -+SUBDIRS = libpam tests libpamc libpam_misc modules po conf examples xtests - - CLEANFILES = *~ - ---- a/Makefile.in -+++ b/Makefile.in -@@ -288,7 +288,7 @@ top_build_prefix = @top_build_prefix@ - top_builddir = @top_builddir@ - top_srcdir = @top_srcdir@ - AUTOMAKE_OPTIONS = 1.9 gnu dist-bzip2 check-news --SUBDIRS = libpam tests libpamc libpam_misc modules po conf doc examples xtests -+SUBDIRS = libpam tests libpamc libpam_misc modules po conf examples xtests - CLEANFILES = *~ - EXTRA_DIST = pgp.keys.asc CHANGELOG ChangeLog-CVS Copyright Make.xml.rules - ACLOCAL_AMFLAGS = -I m4 diff --git a/libs/libpam/patches/004-fix_lib64.patch b/libs/libpam/patches/004-fix_lib64.patch deleted file mode 100644 index 5605d8298..000000000 --- a/libs/libpam/patches/004-fix_lib64.patch +++ /dev/null @@ -1,16 +0,0 @@ ---- a/configure.in -+++ b/configure.in -@@ -28,12 +28,7 @@ dnl If we use /usr as prefix, use /etc f - fi - if test ${libdir} = '${exec_prefix}/lib' - then -- case "`uname -m`" in -- x86_64|ppc64|s390x|sparc64) -- libdir="/lib64" ;; -- *) -- libdir="/lib" ;; -- esac -+ libdir="/lib" - fi - if test ${sbindir} = '${exec_prefix}/sbin' - then diff --git a/libs/libpam/patches/005-fix_ruserok.patch b/libs/libpam/patches/005-fix_ruserok.patch deleted file mode 100644 index 1f0f46337..000000000 --- a/libs/libpam/patches/005-fix_ruserok.patch +++ /dev/null @@ -1,364 +0,0 @@ ---- a/modules/pam_rhosts/pam_rhosts.c -+++ b/modules/pam_rhosts/pam_rhosts.c -@@ -43,6 +43,361 @@ - #include - #include - -+#ifdef __UCLIBC__ -+ -+#include -+#include -+ -+ -+int __check_rhosts_file = 1; -+ -+/* Extremely paranoid file open function. */ -+static FILE * -+iruserfopen (const char *file, uid_t okuser) -+{ -+ struct stat st; -+ char *cp = NULL; -+ FILE *res = NULL; -+ -+ /* If not a regular file, if owned by someone other than user or -+ root, if writeable by anyone but the owner, or if hardlinked -+ anywhere, quit. */ -+ if (lstat (file, &st)) -+ cp = "lstat failed"; -+ else if (!S_ISREG (st.st_mode)) -+ cp = "not regular file"; -+ else -+ { -+ res = fopen (file, "r"); -+ if (!res) -+ cp = "cannot open"; -+ else if (fstat (fileno (res), &st) < 0) -+ cp = "fstat failed"; -+ else if (st.st_uid && st.st_uid != okuser) -+ cp = "bad owner"; -+ else if (st.st_mode & (S_IWGRP|S_IWOTH)) -+ cp = "writeable by other than owner"; -+ else if (st.st_nlink > 1) -+ cp = "hard linked somewhere"; -+ } -+ -+ /* If there were any problems, quit. */ -+ if (cp != NULL) -+ { -+ if (res) -+ fclose (res); -+ return NULL; -+ } -+ -+ return res; -+} -+ -+/* -+ * Returns 1 for blank lines (or only comment lines) and 0 otherwise -+ */ -+static int -+__isempty(char *p) -+{ -+ while (*p && isspace (*p)) { -+ ++p; -+ } -+ -+ return (*p == '\0' || *p == '#') ? 1 : 0 ; -+} -+ -+/* Returns 1 on positive match, 0 on no match, -1 on negative match. */ -+static int -+__icheckhost (u_int32_t raddr, char *lhost, const char *rhost) -+{ -+ struct hostent *hp; -+ u_int32_t laddr; -+ int negate=1; /* Multiply return with this to get -1 instead of 1 */ -+ char **pp; -+ -+#ifdef __UCLIBC_HAS_REENTRANT_RPC__ -+ int save_errno; -+ size_t buflen; -+ char *buffer; -+ struct hostent hostbuf; -+ int herr; -+#endif -+ -+#ifdef HAVE_NETGROUP -+ /* Check nis netgroup. */ -+ if (strncmp ("+@", lhost, 2) == 0) -+ return innetgr (&lhost[2], rhost, NULL, NULL); -+ -+ if (strncmp ("-@", lhost, 2) == 0) -+ return -innetgr (&lhost[2], rhost, NULL, NULL); -+#endif /* HAVE_NETGROUP */ -+ -+ /* -host */ -+ if (strncmp ("-", lhost,1) == 0) { -+ negate = -1; -+ lhost++; -+ } else if (strcmp ("+",lhost) == 0) { -+ return 1; /* asking for trouble, but ok.. */ -+ } -+ -+ /* Try for raw ip address first. */ -+ if (isdigit (*lhost) && (laddr = inet_addr (lhost)) != INADDR_NONE) -+ return negate * (! (raddr ^ laddr)); -+ -+ /* Better be a hostname. */ -+#ifdef __UCLIBC_HAS_REENTRANT_RPC__ -+ buflen = 1024; -+ buffer = malloc(buflen); -+ save_errno = errno; -+ -+ while (gethostbyname_r (lhost, &hostbuf, buffer, buflen, &hp, &herr) -+ != 0) { -+ free(buffer); -+ return (0); -+ } -+ free(buffer); -+ __set_errno (save_errno); -+#else -+ hp = gethostbyname(lhost); -+#endif /* __UCLIBC_HAS_REENTRANT_RPC__ */ -+ -+ if (hp == NULL) -+ return 0; -+ -+ /* Spin through ip addresses. */ -+ for (pp = hp->h_addr_list; *pp; ++pp) -+ if (!memcmp (&raddr, *pp, sizeof (u_int32_t))) -+ return negate; -+ -+ /* No match. */ -+ return (0); -+} -+ -+/* Returns 1 on positive match, 0 on no match, -1 on negative match. */ -+static int -+__icheckuser (const char *luser, const char *ruser) -+{ -+ -+ /* -+ luser is user entry from .rhosts/hosts.equiv file -+ ruser is user id on remote host -+ */ -+ -+#ifdef HAVE_NETGROUP -+ /* [-+]@netgroup */ -+ if (strncmp ("+@", luser, 2) == 0) -+ return innetgr (&luser[2], NULL, ruser, NULL); -+ -+ if (strncmp ("-@", luser,2) == 0) -+ return -innetgr (&luser[2], NULL, ruser, NULL); -+#endif /* HAVE_NETGROUP */ -+ -+ /* -user */ -+ if (strncmp ("-", luser, 1) == 0) -+ return -(strcmp (&luser[1], ruser) == 0); -+ -+ /* + */ -+ if (strcmp ("+", luser) == 0) -+ return 1; -+ -+ /* simple string match */ -+ return strcmp (ruser, luser) == 0; -+} -+ -+/* -+ * Returns 0 if positive match, -1 if _not_ ok. -+ */ -+static int -+__ivaliduser2(FILE *hostf, u_int32_t raddr, const char *luser, -+ const char *ruser, const char *rhost) -+{ -+ register const char *user; -+ register char *p; -+ int hcheck, ucheck; -+ char *buf = NULL; -+ size_t bufsize = 0; -+ int retval = -1; -+ -+ while (getline (&buf, &bufsize, hostf) > 0) { -+ buf[bufsize - 1] = '\0'; /* Make sure it's terminated. */ -+ p = buf; -+ -+ /* Skip empty or comment lines */ -+ if (__isempty (p)) { -+ continue; -+ } -+ -+ /* Skip lines that are too long. */ -+ if (strchr (p, '\n') == NULL) { -+ int ch = getc_unlocked (hostf); -+ -+ while (ch != '\n' && ch != EOF) -+ ch = getc_unlocked (hostf); -+ continue; -+ } -+ -+ for (;*p && !isspace(*p); ++p) { -+ *p = tolower (*p); -+ } -+ -+ /* Next we want to find the permitted name for the remote user. */ -+ if (*p == ' ' || *p == '\t') { -+ /* terminate hostname and skip spaces */ -+ for (*p++='\0'; *p && isspace (*p); ++p); -+ -+ user = p; /* this is the user's name */ -+ while (*p && !isspace (*p)) -+ ++p; /* find end of user's name */ -+ } else -+ user = p; -+ -+ *p = '\0'; /* terminate username (+host?) */ -+ -+ /* buf -> host(?) ; user -> username(?) */ -+ -+ /* First check host part */ -+ hcheck = __icheckhost (raddr, buf, rhost); -+ -+ if (hcheck < 0) -+ break; -+ -+ if (hcheck) { -+ /* Then check user part */ -+ if (! (*user)) -+ user = luser; -+ -+ ucheck = __icheckuser (user, ruser); -+ -+ /* Positive 'host user' match? */ -+ if (ucheck > 0) { -+ retval = 0; -+ break; -+ } -+ -+ /* Negative 'host -user' match? */ -+ if (ucheck < 0) -+ break; -+ -+ /* Neither, go on looking for match */ -+ } -+ } -+ -+ free (buf); -+ -+ return retval; -+} -+ -+static int -+iruserok2 (u_int32_t raddr, int superuser, const char *ruser, const char *luser, -+ const char *rhost) -+{ -+ FILE *hostf = NULL; -+ int isbad = -1; -+ -+ if (!superuser) -+ hostf = iruserfopen (_PATH_HEQUIV, 0); -+ -+ if (hostf) { -+ isbad = __ivaliduser2 (hostf, raddr, luser, ruser, rhost); -+ fclose (hostf); -+ -+ if (!isbad) -+ return 0; -+ } -+ -+ if (__check_rhosts_file || superuser) { -+ char *pbuf; -+ struct passwd *pwd; -+ size_t dirlen; -+ uid_t uid; -+ -+#ifdef __UCLIBC_HAS_REENTRANT_RPC__ -+ size_t buflen = sysconf (_SC_GETPW_R_SIZE_MAX); -+ struct passwd pwdbuf; -+ char *buffer = stack_heap_alloc(buflen); -+ -+ if (getpwnam_r (luser, &pwdbuf, buffer, -+ buflen, &pwd) != 0 || pwd == NULL) -+ { -+ stack_heap_free(buffer); -+ return -1; -+ } -+ stack_heap_free(buffer); -+#else -+ if ((pwd = getpwnam(luser)) == NULL) -+ return -1; -+#endif -+ -+ dirlen = strlen (pwd->pw_dir); -+ pbuf = malloc (dirlen + sizeof "/.rhosts"); -+ strcpy (pbuf, pwd->pw_dir); -+ strcat (pbuf, "/.rhosts"); -+ -+ /* Change effective uid while reading .rhosts. If root and -+ reading an NFS mounted file system, can't read files that -+ are protected read/write owner only. */ -+ uid = geteuid (); -+ seteuid (pwd->pw_uid); -+ hostf = iruserfopen (pbuf, pwd->pw_uid); -+ free(pbuf); -+ -+ if (hostf != NULL) { -+ isbad = __ivaliduser2 (hostf, raddr, luser, ruser, rhost); -+ fclose (hostf); -+ } -+ -+ seteuid (uid); -+ return isbad; -+ } -+ return -1; -+} -+ -+int ruserok(const char *rhost, int superuser, const char *ruser, -+ const char *luser) -+{ -+ struct hostent *hp; -+ u_int32_t addr; -+ char **ap; -+#ifdef __UCLIBC_HAS_REENTRANT_RPC__ -+ size_t buflen; -+ char *buffer; -+ int herr; -+ struct hostent hostbuf; -+#endif -+ -+#ifdef __UCLIBC_HAS_REENTRANT_RPC__ -+ buflen = 1024; -+ buffer = stack_heap_alloc(buflen); -+ -+ while (gethostbyname_r (rhost, &hostbuf, buffer, -+ buflen, &hp, &herr) != 0 || hp == NULL) -+ { -+ if (herr != NETDB_INTERNAL || errno != ERANGE) { -+ stack_heap_free(buffer); -+ return -1; -+ } else -+ { -+ /* Enlarge the buffer. */ -+ buflen *= 2; -+ stack_heap_free(buffer); -+ buffer = stack_heap_alloc(buflen); -+ } -+ } -+ stack_heap_free(buffer); -+#else -+ if ((hp = gethostbyname(rhost)) == NULL) { -+ return -1; -+ } -+#endif -+ for (ap = hp->h_addr_list; *ap; ++ap) { -+ memmove(&addr, *ap, sizeof(addr)); -+ if (iruserok2(addr, superuser, ruser, luser, rhost) == 0) -+ return 0; -+ } -+ return -1; -+} -+ -+#endif /* __UCLIBC__ */ -+ - PAM_EXTERN - int pam_sm_authenticate (pam_handle_t *pamh, int flags, int argc, - const char **argv) diff --git a/libs/libpam/patches/006-fix_xdr.patch b/libs/libpam/patches/006-fix_xdr.patch deleted file mode 100644 index 976950608..000000000 --- a/libs/libpam/patches/006-fix_xdr.patch +++ /dev/null @@ -1,271 +0,0 @@ ---- a/modules/pam_unix/yppasswd_xdr.c -+++ b/modules/pam_unix/yppasswd_xdr.c -@@ -21,6 +21,268 @@ - #endif - #include "yppasswd.h" - -+#ifdef __UCLIBC__ -+ -+static const char xdr_zero[BYTES_PER_XDR_UNIT] = {0, 0, 0, 0}; -+ -+/* -+ * XDR integers -+ */ -+bool_t -+xdr_int (XDR *xdrs, int *ip) -+{ -+ -+#if INT_MAX < LONG_MAX -+ long l; -+ -+ switch (xdrs->x_op) -+ { -+ case XDR_ENCODE: -+ l = (long) *ip; -+ return XDR_PUTLONG (xdrs, &l); -+ -+ case XDR_DECODE: -+ if (!XDR_GETLONG (xdrs, &l)) -+ { -+ return FALSE; -+ } -+ *ip = (int) l; -+ case XDR_FREE: -+ return TRUE; -+ } -+ return FALSE; -+#elif INT_MAX == LONG_MAX -+ return xdr_long (xdrs, (long *) ip); -+#elif INT_MAX == SHRT_MAX -+ return xdr_short (xdrs, (short *) ip); -+#else -+#error unexpected integer sizes in xdr_int() -+#endif -+} -+ -+/* -+ * XDR null terminated ASCII strings -+ * xdr_string deals with "C strings" - arrays of bytes that are -+ * terminated by a NULL character. The parameter cpp references a -+ * pointer to storage; If the pointer is null, then the necessary -+ * storage is allocated. The last parameter is the max allowed length -+ * of the string as specified by a protocol. -+ */ -+bool_t -+xdr_string (XDR *xdrs, char **cpp, u_int maxsize) -+{ -+ char *sp = *cpp; /* sp is the actual string pointer */ -+ u_int size; -+ u_int nodesize; -+ -+ /* -+ * first deal with the length since xdr strings are counted-strings -+ */ -+ switch (xdrs->x_op) -+ { -+ case XDR_FREE: -+ if (sp == NULL) -+ { -+ return TRUE; /* already free */ -+ } -+ /* fall through... */ -+ case XDR_ENCODE: -+ if (sp == NULL) -+ return FALSE; -+ size = strlen (sp); -+ break; -+ case XDR_DECODE: -+ break; -+ } -+ if (!xdr_u_int (xdrs, &size)) -+ { -+ return FALSE; -+ } -+ if (size > maxsize) -+ { -+ return FALSE; -+ } -+ nodesize = size + 1; -+ -+ /* -+ * now deal with the actual bytes -+ */ -+ switch (xdrs->x_op) -+ { -+ case XDR_DECODE: -+ if (nodesize == 0) -+ { -+ return TRUE; -+ } -+ if (sp == NULL) -+ *cpp = sp = (char *) mem_alloc (nodesize); -+ if (sp == NULL) -+ { -+#ifdef USE_IN_LIBIO -+ if (_IO_fwide (stderr, 0) > 0) -+ (void) fwprintf (stderr, L"%s", -+ _("xdr_string: out of memory\n")); -+ else -+#endif -+ (void) fputs (_("xdr_string: out of memory\n"), stderr); -+ return FALSE; -+ } -+ sp[size] = 0; -+ /* fall into ... */ -+ -+ case XDR_ENCODE: -+ return xdr_opaque (xdrs, sp, size); -+ -+ case XDR_FREE: -+ mem_free (sp, nodesize); -+ *cpp = NULL; -+ return TRUE; -+ } -+ return FALSE; -+} -+ -+/* -+ * XDR long integers -+ * The definition of xdr_long() is kept for backward -+ * compatibility. Instead xdr_int() should be used. -+ */ -+bool_t -+xdr_long (XDR *xdrs, long *lp) -+{ -+ if (xdrs->x_op == XDR_ENCODE -+ && (sizeof (int32_t) == sizeof (long) -+ || (int32_t) *lp == *lp)) -+ return XDR_PUTLONG (xdrs, lp); -+ -+ if (xdrs->x_op == XDR_DECODE) -+ return XDR_GETLONG (xdrs, lp); -+ -+ if (xdrs->x_op == XDR_FREE) -+ return TRUE; -+ -+ return FALSE; -+} -+ -+/* -+ * XDR unsigned integers -+ */ -+bool_t -+xdr_u_int (XDR *xdrs, u_int *up) -+{ -+#if UINT_MAX < ULONG_MAX -+ u_long l; -+ -+ switch (xdrs->x_op) -+ { -+ case XDR_ENCODE: -+ l = (u_long) * up; -+ return XDR_PUTLONG (xdrs, (long *) &l); -+ -+ case XDR_DECODE: -+ if (!XDR_GETLONG (xdrs, (long *) &l)) -+ { -+ return FALSE; -+ } -+ *up = (u_int) l; -+ case XDR_FREE: -+ return TRUE; -+ } -+ return FALSE; -+#elif UINT_MAX == ULONG_MAX -+ return xdr_u_long (xdrs, (u_long *) up); -+#elif UINT_MAX == USHRT_MAX -+ return xdr_short (xdrs, (short *) up); -+#else -+#error unexpected integer sizes in xdr_u_int() -+#endif -+} -+ -+/* -+ * XDR opaque data -+ * Allows the specification of a fixed size sequence of opaque bytes. -+ * cp points to the opaque object and cnt gives the byte length. -+ */ -+bool_t -+xdr_opaque (XDR *xdrs, caddr_t cp, u_int cnt) -+{ -+ u_int rndup; -+ static char crud[BYTES_PER_XDR_UNIT]; -+ -+ /* -+ * if no data we are done -+ */ -+ if (cnt == 0) -+ return TRUE; -+ -+ /* -+ * round byte count to full xdr units -+ */ -+ rndup = cnt % BYTES_PER_XDR_UNIT; -+ if (rndup > 0) -+ rndup = BYTES_PER_XDR_UNIT - rndup; -+ -+ switch (xdrs->x_op) -+ { -+ case XDR_DECODE: -+ if (!XDR_GETBYTES (xdrs, cp, cnt)) -+ { -+ return FALSE; -+ } -+ if (rndup == 0) -+ return TRUE; -+ return XDR_GETBYTES (xdrs, (caddr_t)crud, rndup); -+ -+ case XDR_ENCODE: -+ if (!XDR_PUTBYTES (xdrs, cp, cnt)) -+ { -+ return FALSE; -+ } -+ if (rndup == 0) -+ return TRUE; -+ return XDR_PUTBYTES (xdrs, xdr_zero, rndup); -+ -+ case XDR_FREE: -+ return TRUE; -+ } -+ return FALSE; -+} -+ -+/* -+ * XDR unsigned long integers -+ * The definition of xdr_u_long() is kept for backward -+ * compatibility. Instead xdr_u_int() should be used. -+ */ -+bool_t -+xdr_u_long (XDR *xdrs, u_long *ulp) -+{ -+ switch (xdrs->x_op) -+ { -+ case XDR_DECODE: -+ { -+ long int tmp; -+ -+ if (XDR_GETLONG (xdrs, &tmp) == FALSE) -+ return FALSE; -+ -+ *ulp = (uint32_t) tmp; -+ return TRUE; -+ } -+ -+ case XDR_ENCODE: -+ if (sizeof (uint32_t) != sizeof (u_long) -+ && (uint32_t) *ulp != *ulp) -+ return FALSE; -+ -+ return XDR_PUTLONG (xdrs, (long *) ulp); -+ -+ case XDR_FREE: -+ return TRUE; -+ } -+ return FALSE; -+} -+ -+#endif /* UCLIBC */ -+ - bool_t - xdr_xpasswd(XDR * xdrs, xpasswd * objp) - { diff --git a/libs/libpam/patches/007-cve-2014-2583.patch b/libs/libpam/patches/007-cve-2014-2583.patch deleted file mode 100644 index 8d24bead6..000000000 --- a/libs/libpam/patches/007-cve-2014-2583.patch +++ /dev/null @@ -1,52 +0,0 @@ -From 9dcead87e6d7f66d34e7a56d11a30daca367dffb Mon Sep 17 00:00:00 2001 -From: "Dmitry V. Levin" -Date: Wed, 26 Mar 2014 22:17:23 +0000 -Subject: pam_timestamp: fix potential directory traversal issue (ticket #27) - -pam_timestamp uses values of PAM_RUSER and PAM_TTY as components of -the timestamp pathname it creates, so extra care should be taken to -avoid potential directory traversal issues. - -* modules/pam_timestamp/pam_timestamp.c (check_tty): Treat -"." and ".." tty values as invalid. -(get_ruser): Treat "." and ".." ruser values, as well as any ruser -value containing '/', as invalid. - -Fixes CVE-2014-2583. - -Reported-by: Sebastian Krahmer - -diff --git a/modules/pam_timestamp/pam_timestamp.c b/modules/pam_timestamp/pam_timestamp.c -index 5193733..b3f08b1 100644 ---- a/modules/pam_timestamp/pam_timestamp.c -+++ b/modules/pam_timestamp/pam_timestamp.c -@@ -158,7 +158,7 @@ check_tty(const char *tty) - tty = strrchr(tty, '/') + 1; - } - /* Make sure the tty wasn't actually a directory (no basename). */ -- if (strlen(tty) == 0) { -+ if (!strlen(tty) || !strcmp(tty, ".") || !strcmp(tty, "..")) { - return NULL; - } - return tty; -@@ -243,6 +243,17 @@ get_ruser(pam_handle_t *pamh, char *ruserbuf, size_t ruserbuflen) - if (pwd != NULL) { - ruser = pwd->pw_name; - } -+ } else { -+ /* -+ * This ruser is used by format_timestamp_name as a component -+ * of constructed timestamp pathname, so ".", "..", and '/' -+ * are disallowed to avoid potential path traversal issues. -+ */ -+ if (!strcmp(ruser, ".") || -+ !strcmp(ruser, "..") || -+ strchr(ruser, '/')) { -+ ruser = NULL; -+ } - } - if (ruser == NULL || strlen(ruser) >= ruserbuflen) { - *ruserbuf = '\0'; --- -cgit v0.10.2 - diff --git a/libs/libpam/patches/008-LIBCRYPT-fix.patch b/libs/libpam/patches/008-LIBCRYPT-fix.patch deleted file mode 100644 index 85c03fd84..000000000 --- a/libs/libpam/patches/008-LIBCRYPT-fix.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- a/configure.in.orig 2015-06-16 20:40:02.938216001 +0800 -+++ b/configure.in 2015-06-16 20:40:16.198216001 +0800 -@@ -399,7 +399,7 @@ AS_IF([test "x$ac_cv_header_xcrypt_h" = - [crypt_libs="crypt"]) - - BACKUP_LIBS=$LIBS --AC_SEARCH_LIBS([crypt],[$crypt_libs], LIBCRYPT="-l$ac_lib", LIBCRYPT="") -+AC_SEARCH_LIBS([crypt],[$crypt_libs], LIBCRYPT="${ac_lib:+-l$ac_lib}", LIBCRYPT="") - AC_CHECK_FUNCS(crypt_r crypt_gensalt_r) - LIBS=$BACKUP_LIBS - AC_SUBST(LIBCRYPT) diff --git a/libs/libpam/patches/009-pam_rhosts-fix.patch b/libs/libpam/patches/009-pam_rhosts-fix.patch deleted file mode 100644 index 1d7d7f362..000000000 --- a/libs/libpam/patches/009-pam_rhosts-fix.patch +++ /dev/null @@ -1,51 +0,0 @@ ---- a/configure.in.orig 2015-06-16 21:05:09.938216001 +0800 -+++ b/configure.in 2015-06-16 21:05:29.374216001 +0800 -@@ -525,7 +525,8 @@ AC_CHECK_FUNCS(fseeko getdomainname geth - AC_CHECK_FUNCS(strcspn strdup strspn strstr strtol uname) - AC_CHECK_FUNCS(getutent_r getpwnam_r getpwuid_r getgrnam_r getgrgid_r getspnam_r) - AC_CHECK_FUNCS(getgrouplist getline getdelim) --AC_CHECK_FUNCS(inet_ntop inet_pton innetgr ruserok_af) -+AC_CHECK_FUNCS(inet_ntop inet_pton innetgr) -+AC_CHECK_FUNCS(ruserok ruserok_af) - - AC_CHECK_FUNCS(unshare, [UNSHARE=yes], [UNSHARE=no]) - AM_CONDITIONAL([HAVE_UNSHARE], [test "$UNSHARE" = yes]) ---- a/modules/pam_rhosts/pam_rhosts.c.orig 2015-06-16 20:58:20.002216001 +0800 -+++ b/modules/pam_rhosts/pam_rhosts.c 2015-06-16 21:10:10.026216001 +0800 -@@ -35,6 +35,7 @@ - #include - #include - #include -+#include - #include - - #define PAM_SM_AUTH /* only defines this management group */ -@@ -43,7 +43,7 @@ - #include - #include - --#ifdef __UCLIBC__ -+#if defined(__UCLIBC__) || (!defined(HAVE_RUSEROK) && !defined(HAVE_RUSEROK_AF)) - - #include - #include -@@ -293,8 +294,10 @@ iruserok2 (u_int32_t raddr, int superuse - FILE *hostf = NULL; - int isbad = -1; - -+#ifdef _PATH_HEQUIV - if (!superuser) - hostf = iruserfopen (_PATH_HEQUIV, 0); -+#endif - - if (hostf) { - isbad = __ivaliduser2 (hostf, raddr, luser, ruser, rhost); -@@ -396,7 +396,7 @@ int ruserok(const char *rhost, int super - return -1; - } - --#endif /* __UCLIBC__ */ -+#endif /* __UCLIBC__ || (!defined(HAVE_RUSEROK) && !defined(HAVE_RUSEROK_AF)) */ - - PAM_EXTERN - int pam_sm_authenticate (pam_handle_t *pamh, int flags, int argc, From 3ff4d6dda5072985817fc3df8c689a4cf6e53cfd Mon Sep 17 00:00:00 2001 From: Dirk Chang Date: Wed, 17 Jun 2015 22:56:26 +0800 Subject: [PATCH 578/681] libzmq upgrade to 4.1.1 lzmq upgrade to 0.4.3 Signed-off-by: Dirk Chang --- lang/lzmq/Makefile | 8 ++-- libs/zmq/Makefile | 10 ++++- ...sable_pedantic_on_linux_with_ulibc++.patch | 4 +- .../map_with_const_string_with_ublic++.patch | 41 +++++++++++++++++++ .../streamoff_missing_with_ulibc++.patch | 4 +- libs/zmq/patches/tools_gcc_fix.patch | 10 ----- 6 files changed, 57 insertions(+), 20 deletions(-) create mode 100644 libs/zmq/patches/map_with_const_string_with_ublic++.patch delete mode 100644 libs/zmq/patches/tools_gcc_fix.patch diff --git a/lang/lzmq/Makefile b/lang/lzmq/Makefile index a62d7e075..b17b945d3 100644 --- a/lang/lzmq/Makefile +++ b/lang/lzmq/Makefile @@ -8,14 +8,14 @@ include $(TOPDIR)/rules.mk PKG_NAME:=lzmq -PKG_VERSION:=0.4.2 -PKG_RELEASE:=2 +PKG_VERSION:=0.4.3 +PKG_RELEASE:=1 PKG_MAINTAINER:=Dirk Chang PKG_LICENSE:=MIT PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=https://codeload.github.com/zeromq/lzmq/tar.gz/v0.4.2? -PKG_MD5SUM:=ec9e15bd1495f4c87959fe22a368523d +PKG_SOURCE_URL:=https://codeload.github.com/zeromq/lzmq/tar.gz/v$(PKG_VERSION)? +PKG_MD5SUM:=c4e51a60a5a26987bdce59e45d674a9e include $(INCLUDE_DIR)/package.mk include $(INCLUDE_DIR)/cmake.mk diff --git a/libs/zmq/Makefile b/libs/zmq/Makefile index 515d6face..dd845815a 100644 --- a/libs/zmq/Makefile +++ b/libs/zmq/Makefile @@ -10,8 +10,8 @@ include $(TOPDIR)/rules.mk PKG_NAME:=zeromq -PKG_VERSION:=4.0.5 -PKG_RELEASE:=2 +PKG_VERSION:=4.1.1 +PKG_RELEASE:=1 PKG_MAINTAINER:=Dirk Chang PKG_LICENSE:=GPL-3.0+ PKG_LICENSE_FILES:=LICENCE.txt @@ -58,6 +58,12 @@ CONFIGURE_ARGS += \ --enable-static \ --enable-shared +ifneq ($(CONFIG_PACKAGE_libsodium),) + CONFIGURE_ARGS+= --with-libsodium +else + CONFIGURE_ARGS+= --without-libsodium +endif + # add make variable overrides here MAKE_FLAGS += diff --git a/libs/zmq/patches/disable_pedantic_on_linux_with_ulibc++.patch b/libs/zmq/patches/disable_pedantic_on_linux_with_ulibc++.patch index 9d1f06eb0..74e0091e9 100644 --- a/libs/zmq/patches/disable_pedantic_on_linux_with_ulibc++.patch +++ b/libs/zmq/patches/disable_pedantic_on_linux_with_ulibc++.patch @@ -1,5 +1,5 @@ ---- zeromq-4.0.4_org/configure.ac 2014-06-04 10:19:35.140061796 +0800 -+++ zeromq-4.0.4/configure.ac 2014-06-04 11:08:17.231997926 +0800 +--- a/configure.ac 2014-06-04 10:19:35.140061796 +0800 ++++ b/configure.ac 2014-06-04 11:08:17.231997926 +0800 @@ -127,8 +127,10 @@ *linux*) # Define on Linux to enable all library features. Define if using a gnu compiler diff --git a/libs/zmq/patches/map_with_const_string_with_ublic++.patch b/libs/zmq/patches/map_with_const_string_with_ublic++.patch new file mode 100644 index 000000000..c1a14fcb7 --- /dev/null +++ b/libs/zmq/patches/map_with_const_string_with_ublic++.patch @@ -0,0 +1,41 @@ +--- a/src/metadata.hpp 2015-06-17 21:39:33.629934688 +0800 ++++ b/src/metadata.hpp 2014-10-14 22:07:36.000000000 +0800 +@@ -31,7 +31,7 @@ + { + public: + +- typedef std::map dict_t; ++ typedef std::map dict_t; + + metadata_t (const dict_t &dict); + virtual ~metadata_t (); +--- a/src/socket_base.cpp 2015-06-17 21:42:26.289413233 +0800 ++++ b/src/socket_base.cpp 2015-06-02 18:31:00.000000000 +0800 +@@ -20,6 +20,7 @@ + #include + #include + #include ++#include + + #include "platform.hpp" + +--- a/src/stream_engine.cpp 2015-06-17 21:57:29.599443517 +0800 ++++ b/src/stream_engine.cpp 2015-06-02 18:31:00.000000000 +0800 +@@ -198,7 +198,7 @@ + // Compile metadata. + typedef metadata_t::dict_t properties_t; + properties_t properties; +- properties.insert(std::make_pair("Peer-Address", peer_address)); ++ properties.insert(std::make_pair("Peer-Address", peer_address)); + zmq_assert (metadata == NULL); + metadata = new (std::nothrow) metadata_t (properties); + } +@@ -805,7 +805,7 @@ + + // If we have a peer_address, add it to metadata + if (!peer_address.empty()) { +- properties.insert(std::make_pair("Peer-Address", peer_address)); ++ properties.insert(std::make_pair("Peer-Address", peer_address)); + } + + // Add ZAP properties. diff --git a/libs/zmq/patches/streamoff_missing_with_ulibc++.patch b/libs/zmq/patches/streamoff_missing_with_ulibc++.patch index 543d6ecf3..0d1127bdb 100644 --- a/libs/zmq/patches/streamoff_missing_with_ulibc++.patch +++ b/libs/zmq/patches/streamoff_missing_with_ulibc++.patch @@ -1,5 +1,5 @@ ---- zeromq-4.0.4_org/src/blob.hpp 2014-06-04 10:19:12.680062287 +0800 -+++ zeromq-4.0.4/src/blob.hpp 2014-06-04 10:30:31.168047457 +0800 +--- a/src/blob.hpp 2014-06-04 10:19:12.680062287 +0800 ++++ b/src/blob.hpp 2014-06-04 10:30:31.168047457 +0800 @@ -21,6 +21,7 @@ #define __ZMQ_BLOB_HPP_INCLUDED__ diff --git a/libs/zmq/patches/tools_gcc_fix.patch b/libs/zmq/patches/tools_gcc_fix.patch deleted file mode 100644 index a91e84607..000000000 --- a/libs/zmq/patches/tools_gcc_fix.patch +++ /dev/null @@ -1,10 +0,0 @@ -diff -ruNa zeromq-4.0.4_org/tools/Makefile.am zeromq-4.0.4/tools/Makefile.am ---- zeromq-4.0.4_org/tools/Makefile.am 2014-06-03 20:01:12.392379933 +0800 -+++ zeromq-4.0.4/tools/Makefile.am 2014-06-03 19:59:18.616382420 +0800 -@@ -1,5 +1,5 @@ - EXTRA_DIST = curve_keygen.c -+CFLAGS += -std=c99 -- - INCLUDES = -I$(top_srcdir)/include - - bin_PROGRAMS = curve_keygen From 3661e01a0d68998484c49dbdbe2c40a7fdc20042 Mon Sep 17 00:00:00 2001 From: heil Date: Wed, 17 Jun 2015 17:11:48 +0200 Subject: [PATCH 579/681] acpid: Import from oldpackages, update to latest version, add myself as maintainer, ensure musl compatibility - with acpid kvm based setups can react on acpi shutdown and reboot actions Signed-off-by: heil --- utils/acpid/Makefile | 68 +++++++++ utils/acpid/files/acpid.hotplug | 7 + utils/acpid/files/acpid.init | 25 ++++ utils/acpid/files/default | 5 + utils/acpid/patches/001-musl-compat.patch | 129 ++++++++++++++++++ .../acpid/patches/002-dont-use-isfdtype.patch | 21 +++ 6 files changed, 255 insertions(+) create mode 100644 utils/acpid/Makefile create mode 100644 utils/acpid/files/acpid.hotplug create mode 100644 utils/acpid/files/acpid.init create mode 100644 utils/acpid/files/default create mode 100644 utils/acpid/patches/001-musl-compat.patch create mode 100644 utils/acpid/patches/002-dont-use-isfdtype.patch diff --git a/utils/acpid/Makefile b/utils/acpid/Makefile new file mode 100644 index 000000000..657ff70be --- /dev/null +++ b/utils/acpid/Makefile @@ -0,0 +1,68 @@ +# +# Copyright (C) 2012-2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=acpid +PKG_VERSION:=2.0.23 +PKG_RELEASE:=1 + +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz +PKG_SOURCE_URL:=@SF/acpid2 +PKG_MD5SUM:=d7bcdcdefcd53b03730e50ba842554ea +PKG_MAINTAINER:=Thomas Heil +PKG_LICENSE:=GPL-2.0 +PKG_LICENSE_FILES:=COPYING + +include $(INCLUDE_DIR)/package.mk + +define Package/acpid + SECTION:=utils + CATEGORY:=Utilities + TITLE:=The ACPI Daemon (acpid) With Netlink Support + URL:=http://tedfelix.com/linux/acpid-netlink.html + DEPENDS:=@(TARGET_x86||TARGET_x86_64) +kmod-input-evdev +endef + +define Package/acpid/description + The ACPI Daemon (acpid) With Netlink Support +endef + +define Build/Compile + $(MAKE) -C $(PKG_BUILD_DIR) \ + CC="$(TARGET_CC)" \ + LD="$(TARGET_CC)" \ + LDFLAGS="$(TARGET_LDFLAGS)" \ + all +endef + +define Package/acpid/install + $(INSTALL_DIR) $(1)/usr/sbin + $(INSTALL_BIN) $(PKG_BUILD_DIR)/acpid $(1)/usr/sbin/ + $(INSTALL_BIN) $(PKG_BUILD_DIR)/acpi_listen $(1)/usr/sbin/ + $(INSTALL_DIR) $(1)/etc/acpi/events + $(INSTALL_CONF) ./files/default $(1)/etc/acpi/events/default + $(INSTALL_DIR) $(1)/etc/init.d + $(INSTALL_CONF) ./files/acpid.init $(1)/etc/init.d/acpid + chmod 0750 $(1)/etc/init.d/acpid + $(INSTALL_DIR) $(1)/etc/hotplug.d/input/ + $(INSTALL_CONF) ./files/acpid.hotplug $(1)/etc/hotplug.d/input/ +endef + +define Package/acpid/postinst +#!/bin/sh +[ -n "$${IPKG_INSTROOT}" ] || { + echo "waiting for input devices to come up" + /etc/init.d/acpid enable + sleep 5 + /etc/init.d/acpid start + echo "please try the power button" + exit 0 +} +endef + +$(eval $(call BuildPackage,acpid)) diff --git a/utils/acpid/files/acpid.hotplug b/utils/acpid/files/acpid.hotplug new file mode 100644 index 000000000..6e08d01a2 --- /dev/null +++ b/utils/acpid/files/acpid.hotplug @@ -0,0 +1,7 @@ +#!/bin/sh + +. /lib/functions.sh + +if [ "$ACTION" = add ] && [ "$DEVICENAME" = event0 ]; then + ( /etc/init.d/acpid/stop; sleep 3; /usr/sbin/acpid )& +fi diff --git a/utils/acpid/files/acpid.init b/utils/acpid/files/acpid.init new file mode 100644 index 000000000..3365aa022 --- /dev/null +++ b/utils/acpid/files/acpid.init @@ -0,0 +1,25 @@ +#!/bin/ash /etc/rc.common +# Copyright (C) 2009-2010 OpenWrt.org + +START=99 +STOP=80 + +ACPID_BIN="/usr/sbin/acpid" +ACPID_PID="/var/run/acpid.pid" + +start() { + [ -x "$ACPID_BIN" ] || return 1 + start-stop-daemon -S -x $ACPID_BIN -p $ACPID_PID +} + +boot() { + # Do nothing on boot + [ -x "$ACPID_BIN" ] || return 1 + start-stop-daemon -S -x $ACPID_BIN -p $ACPID_PID + exit 0 +} + +stop() { + service_kill ${ACPID_BIN##*/} $ACPID_PID + rm -f $ACPID_PID +} diff --git a/utils/acpid/files/default b/utils/acpid/files/default new file mode 100644 index 000000000..cf8d9a3f2 --- /dev/null +++ b/utils/acpid/files/default @@ -0,0 +1,5 @@ +# This is a sample ACPID configuration + +event=button/power.* +action=/sbin/poweroff + diff --git a/utils/acpid/patches/001-musl-compat.patch b/utils/acpid/patches/001-musl-compat.patch new file mode 100644 index 000000000..086361fea --- /dev/null +++ b/utils/acpid/patches/001-musl-compat.patch @@ -0,0 +1,129 @@ +Index: acpid-2.0.23/tempfailure.h +=================================================================== +--- /dev/null ++++ acpid-2.0.23/tempfailure.h +@@ -0,0 +1,8 @@ ++#ifndef TEMP_FAILURE_RETRY ++#define TEMP_FAILURE_RETRY(expression) \ ++ (__extension__ \ ++ ({ long int __result; \ ++ do __result = (long int) (expression); \ ++ while (__result == -1L && errno == EINTR); \ ++ __result; })) ++#endif +Index: acpid-2.0.23/acpi_listen.c +=================================================================== +--- acpid-2.0.23.orig/acpi_listen.c ++++ acpid-2.0.23/acpi_listen.c +@@ -39,6 +39,8 @@ + #include "acpid.h" + #include "ud_socket.h" + ++#include "tempfailure.h" ++ + static int handle_cmdline(int *argc, char ***argv); + static char *read_line(int fd); + +Index: acpid-2.0.23/acpid.c +=================================================================== +--- acpid-2.0.23.orig/acpid.c ++++ acpid-2.0.23/acpid.c +@@ -41,6 +41,7 @@ + #include "input_layer.h" + #include "inotify_handler.h" + #include "netlink.h" ++#include "tempfailure.h" + + static int handle_cmdline(int *argc, char ***argv); + static void close_fds(void); +Index: acpid-2.0.23/event.c +=================================================================== +--- acpid-2.0.23.orig/event.c ++++ acpid-2.0.23/event.c +@@ -40,6 +40,9 @@ + #include "sock.h" + #include "ud_socket.h" + #include "event.h" ++ ++#include "tempfailure.h" ++ + /* + * What is a rule? It's polymorphic, pretty much. + */ +Index: acpid-2.0.23/input_layer.c +=================================================================== +--- acpid-2.0.23.orig/input_layer.c ++++ acpid-2.0.23/input_layer.c +@@ -47,6 +47,8 @@ + + #define DIM(a) (sizeof(a) / sizeof(a[0])) + ++#include "tempfailure.h" ++ + struct evtab_entry { + struct input_event event; + const char *str; +Index: acpid-2.0.23/kacpimon/libnetlink.c +=================================================================== +--- acpid-2.0.23.orig/kacpimon/libnetlink.c ++++ acpid-2.0.23/kacpimon/libnetlink.c +@@ -26,6 +26,8 @@ + + #include "libnetlink.h" + ++#include "../tempfailure.h" ++ + void rtnl_close(struct rtnl_handle *rth) + { + if (rth->fd >= 0) { +Index: acpid-2.0.23/netlink.c +=================================================================== +--- acpid-2.0.23.orig/netlink.c ++++ acpid-2.0.23/netlink.c +@@ -46,6 +46,7 @@ + #include "connection_list.h" + + #include "netlink.h" ++#include "tempfailure.h" + + static void + format_netlink(struct nlmsghdr *msg) +Index: acpid-2.0.23/proc.c +=================================================================== +--- acpid-2.0.23.orig/proc.c ++++ acpid-2.0.23/proc.c +@@ -34,6 +34,8 @@ + + #include "proc.h" + ++#include "tempfailure.h" ++ + const char *eventfile = ACPID_EVENTFILE; + + static char *read_line(int fd); +Index: acpid-2.0.23/ud_socket.c +=================================================================== +--- acpid-2.0.23.orig/ud_socket.c ++++ acpid-2.0.23/ud_socket.c +@@ -22,6 +22,8 @@ + #include "log.h" + #include "ud_socket.h" + ++#include "tempfailure.h" ++ + int + ud_create_socket(const char *name, mode_t socketmode) + { +Index: acpid-2.0.23/libnetlink.c +=================================================================== +--- acpid-2.0.23.orig/libnetlink.c ++++ acpid-2.0.23/libnetlink.c +@@ -26,6 +26,8 @@ + + #include "libnetlink.h" + ++#include "tempfailure.h" ++ + void rtnl_close(struct rtnl_handle *rth) + { + if (rth->fd >= 0) { diff --git a/utils/acpid/patches/002-dont-use-isfdtype.patch b/utils/acpid/patches/002-dont-use-isfdtype.patch new file mode 100644 index 000000000..cd4e062c8 --- /dev/null +++ b/utils/acpid/patches/002-dont-use-isfdtype.patch @@ -0,0 +1,21 @@ +Partially roll back upstream commit 4711119089e1ad08dad206f4fded68f1972fdeed +since released versions of uClibc don't support isfdtype(). + +Signed-off-by: Gustavo Zaarias + +Index: acpid-2.0.23/sock.c +=================================================================== +--- acpid-2.0.23.orig/sock.c ++++ acpid-2.0.23/sock.c +@@ -53,7 +53,10 @@ int non_root_clients; + int + is_socket(int fd) + { +- return (isfdtype(fd, S_IFSOCK) == 1); ++ int v; ++ socklen_t l = sizeof(int); ++ ++ return (getsockopt(fd, SOL_SOCKET, SO_TYPE, (char *)&v, &l) == 0); + } + + /* accept a new client connection */ From f9ac3e632bf2ac5d2c7c7ed9951c0694e09773ef Mon Sep 17 00:00:00 2001 From: Jo-Philipp Wich Date: Wed, 17 Jun 2015 17:36:03 +0200 Subject: [PATCH 580/681] perl: fix musl compatibility - Add patch to inhibit the libm IEEE math switch on musl - Add postprocessing for config.sh to the Makefile to fixup defines for musl, idea taken from http://patchwork.openembedded.org/patch/91707/ This is the least invasive approach I could come up to fix the build failure asap. Another possibility is maintaining yet another set of musl specific architecture config files, but I think that this introduces a lot of maintenance overhead. Signed-off-by: Jo-Philipp Wich --- lang/perl/Makefile | 22 +++++++++++++++++++++- lang/perl/patches/100-musl-compat.patch | 11 +++++++++++ 2 files changed, 32 insertions(+), 1 deletion(-) create mode 100644 lang/perl/patches/100-musl-compat.patch diff --git a/lang/perl/Makefile b/lang/perl/Makefile index c915bbf66..5780a6240 100644 --- a/lang/perl/Makefile +++ b/lang/perl/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=perl PKG_VERSION:=5.20.2 -PKG_RELEASE:=2 +PKG_RELEASE:=3 PKG_SOURCE_URL:=ftp://ftp.cpan.org/pub/CPAN/src/5.0 \ http://www.cpan.org/src/5.0/perl-5.20.0.tar.gz \ @@ -128,6 +128,26 @@ define Build/Configure -e 's!%%HOSTGENERATE%%!$(HOST_PERL_PREFIX)/bin/generate_uudmap!g' \ files/config.sh-$(patsubst i386,i486,$(ARCH))$(PERL_CONFIG_SUFFIX).in \ > $(PKG_BUILD_DIR)/config.sh + ifeq ($(CONFIG_USE_MUSL),y) + sed -i \ + -e "s,\(d_stdio_ptr_lval=\)'define',\1'undef',g" \ + -e "s,\(d_stdio_ptr_lval_sets_cnt=\)'define',\1'undef',g" \ + -e "s,\(d_stdiobase=\)'define',\1'undef',g" \ + -e "s,\(d_stdstdio=\)'define',\1'undef',g" \ + -e "s,\(d_getnetbyname_r=\)'define',\1'undef',g" \ + -e "s,\(getprotobyname_r=\)'define',\1'undef',g" \ + -e "s,\(getpwent_r=\)'define',\1'undef',g" \ + -e "s,\(getservent_r=\)'define',\1'undef',g" \ + -e "s,\(gethostent_r=\)'define',\1'undef',g" \ + -e "s,\(getnetent_r=\)'define',\1'undef',g" \ + -e "s,\(getnetbyaddr_r=\)'define',\1'undef',g" \ + -e "s,\(getprotoent_r=\)'define',\1'undef',g" \ + -e "s,\(getprotobynumber_r=\)'define',\1'undef',g" \ + -e "s,\(getgrent_r=\)'define',\1'undef',g" \ + -e "s,\(i_fcntl=\)'undef',\1'define',g" \ + -e "s,\(h_fcntl=\)'false',\1'true',g" \ + $(PKG_BUILD_DIR)/config.sh + endif (cd $(PKG_BUILD_DIR) && ./Configure -S) install -m 0644 $(PKG_BUILD_DIR)/config.h $(PKG_BUILD_DIR)/xconfig.h endef diff --git a/lang/perl/patches/100-musl-compat.patch b/lang/perl/patches/100-musl-compat.patch new file mode 100644 index 000000000..8dbad78f4 --- /dev/null +++ b/lang/perl/patches/100-musl-compat.patch @@ -0,0 +1,11 @@ +--- a/pp.c ++++ b/pp.c +@@ -43,7 +43,7 @@ extern Pid_t getpid (void); + * Some BSDs and Cygwin default to POSIX math instead of IEEE. + * This switches them over to IEEE. + */ +-#if defined(LIBM_LIB_VERSION) ++#if defined(LIBM_LIB_VERSION) && (defined(__GLIBC__) || defined(__UCLIBC__)) + _LIB_VERSION_TYPE _LIB_VERSION = _IEEE_; + #endif + From 508e19a19055faa5f8187203fa309f49708afb58 Mon Sep 17 00:00:00 2001 From: Jo-Philipp Wich Date: Wed, 17 Jun 2015 18:27:00 +0200 Subject: [PATCH 581/681] keepalived: fix musl compatibility - Add missing sys/types.h include to provide u_short type under musl Signed-off-by: Jo-Philipp Wich --- net/keepalived/Makefile | 2 +- net/keepalived/patches/100-musl-compat.patch | 10 ++++++++++ 2 files changed, 11 insertions(+), 1 deletion(-) create mode 100644 net/keepalived/patches/100-musl-compat.patch diff --git a/net/keepalived/Makefile b/net/keepalived/Makefile index 04a041fa0..b68c726bc 100644 --- a/net/keepalived/Makefile +++ b/net/keepalived/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=keepalived PKG_VERSION:=1.2.16 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:= http://www.keepalived.org/software diff --git a/net/keepalived/patches/100-musl-compat.patch b/net/keepalived/patches/100-musl-compat.patch new file mode 100644 index 000000000..9668c2bb2 --- /dev/null +++ b/net/keepalived/patches/100-musl-compat.patch @@ -0,0 +1,10 @@ +--- a/lib/utils.h ++++ b/lib/utils.h +@@ -31,6 +31,7 @@ + #include + #include + #include ++#include + #include + #include + From c3f0347649f81553dc420ab56e3bfc06d45a92af Mon Sep 17 00:00:00 2001 From: Jo-Philipp Wich Date: Wed, 17 Jun 2015 19:09:55 +0200 Subject: [PATCH 582/681] zabbix: fix musl compatibility Under musl a compilation unit cannot include both linux/kernel.h and sys/sysinfo.h at the same time since that leads to a redefinition of `struct sysinfo`. Change the autoconf template to include linux/kernel.h while testing for sys/sysinfo.h to test for that conflict. Signed-off-by: Jo-Philipp Wich --- admin/zabbix/Makefile | 4 ++-- admin/zabbix/patches/100-musl-compat.patch | 23 ++++++++++++++++++++++ 2 files changed, 25 insertions(+), 2 deletions(-) create mode 100644 admin/zabbix/patches/100-musl-compat.patch diff --git a/admin/zabbix/Makefile b/admin/zabbix/Makefile index 9f2c86e36..e764b7701 100644 --- a/admin/zabbix/Makefile +++ b/admin/zabbix/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2006-2014 OpenWrt.org +# Copyright (C) 2006-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=zabbix PKG_VERSION:=2.4.5 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=@SF/zabbix diff --git a/admin/zabbix/patches/100-musl-compat.patch b/admin/zabbix/patches/100-musl-compat.patch new file mode 100644 index 000000000..2b6fee6ce --- /dev/null +++ b/admin/zabbix/patches/100-musl-compat.patch @@ -0,0 +1,23 @@ +--- a/configure.ac ++++ b/configure.ac +@@ -51,7 +51,7 @@ AC_CHECK_HEADERS(stdio.h stdlib.h string + syslog.h time.h errno.h sys/types.h sys/stat.h netinet/in.h \ + math.h sys/socket.h dirent.h ctype.h \ + mtent.h fcntl.h sys/param.h arpa/inet.h \ +- sys/vfs.h sys/pstat.h sys/sysinfo.h sys/statvfs.h sys/statfs.h \ ++ sys/vfs.h sys/pstat.h sys/statvfs.h sys/statfs.h \ + sys/socket.h sys/loadavg.h arpa/inet.h \ + sys/vmmeter.h strings.h vm/vm_param.h \ + sys/time.h kstat.h sys/syscall.h sys/sysmacros.h \ +@@ -63,6 +63,11 @@ AC_CHECK_HEADERS(stdio.h stdlib.h string + sys/timeb.h Winber.h lber.h ws2tcpip.h inttypes.h sys/file.h grp.h \ + execinfo.h libperfstat.h sys/systemcfg.h sys/mnttab.h mntent.h sys/times.h \ + dlfcn.h sys/utsname.h) ++AC_CHECK_HEADERS(sys/sysinfo.h, [], [], [ ++#ifdef HAVE_LINUX_KERNEL_H ++# include ++#endif ++]) + AC_CHECK_HEADERS(resolv.h, [], [], [ + #ifdef HAVE_SYS_TYPES_H + # include From 780cf06d28f74d08240ec2af090eaeab517acac7 Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Wed, 17 Jun 2015 19:22:56 +0200 Subject: [PATCH 583/681] gnunet: update source get rid of another cross-compile patch now fixed upstream Signed-off-by: Daniel Golle --- net/gnunet/Makefile | 2 +- net/gnunet/patches/010-cross-compile-fixes.patch | 11 ----------- 2 files changed, 1 insertion(+), 12 deletions(-) delete mode 100644 net/gnunet/patches/010-cross-compile-fixes.patch diff --git a/net/gnunet/Makefile b/net/gnunet/Makefile index 9a9b65c60..ad2c37044 100644 --- a/net/gnunet/Makefile +++ b/net/gnunet/Makefile @@ -8,7 +8,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=gnunet -PKG_SOURCE_VERSION:=35937 +PKG_SOURCE_VERSION:=35949 PKG_VERSION:=0.10.1-svn$(PKG_SOURCE_VERSION) PKG_RELEASE:=1 diff --git a/net/gnunet/patches/010-cross-compile-fixes.patch b/net/gnunet/patches/010-cross-compile-fixes.patch deleted file mode 100644 index 177bbfebb..000000000 --- a/net/gnunet/patches/010-cross-compile-fixes.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- a/configure.ac -+++ b/configure.ac -@@ -189,7 +189,7 @@ AM_CONDITIONAL(GNU, test "$build_target" - AC_MSG_RESULT([$build_target]) - AC_SUBST(build_target) - AM_CONDITIONAL([am__fastdepOBJC], false) --AC_UNALIGNED_64_ACCESS -+# AC_UNALIGNED_64_ACCESS - - # some other checks for standard libs - AC_SEARCH_LIBS([gethostbyname], [nsl ws2_32]) From 644ae71ebc61c0341d8d24f2b2b797e1fa936da3 Mon Sep 17 00:00:00 2001 From: Jo-Philipp Wich Date: Wed, 17 Jun 2015 19:27:37 +0200 Subject: [PATCH 584/681] xinetd: fix musl compatibility Pass HAVE_RLIM_T via TARGET_CPPFLAGS since configure uses that define but never actually declares it. Without doing that, `config.h` tries to declare `rlim_t` itself which leads to `config.h:126:16: error: 'long long long' is too long for GCC` with musl on at least x86_64. Also refresh patches while we're at it. Signed-off-by: Jo-Philipp Wich --- net/xinetd/Makefile | 5 +++-- net/xinetd/patches/004-ident-bind.patch | 4 ++-- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/net/xinetd/Makefile b/net/xinetd/Makefile index 65c5368c9..c1586b725 100644 --- a/net/xinetd/Makefile +++ b/net/xinetd/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2006-2014 OpenWrt.org +# Copyright (C) 2006-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=xinetd PKG_VERSION:=2.3.15 -PKG_RELEASE:=3 +PKG_RELEASE:=4 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://www.xinetd.org @@ -42,6 +42,7 @@ define Package/xinetd/conffiles endef TARGET_CFLAGS += -DNO_RPC +TARGET_CPPFLAGS += -DHAVE_RLIM_T CONFIGURE_ARGS += \ --without-libwrap \ diff --git a/net/xinetd/patches/004-ident-bind.patch b/net/xinetd/patches/004-ident-bind.patch index ddabab8a1..0da01484d 100644 --- a/net/xinetd/patches/004-ident-bind.patch +++ b/net/xinetd/patches/004-ident-bind.patch @@ -10,7 +10,7 @@ Reviewed-By: Adam Tkac #diff -up xinetd-2.3.14/xinetd/ident.c.orig xinetd-2.3.14/xinetd/ident.c --- a/xinetd/ident.c +++ b/xinetd/ident.c -@@ -97,7 +98,13 @@ idresult_e log_remote_user( const struct +@@ -97,7 +97,13 @@ idresult_e log_remote_user( const struct } CLEAR( sin_contact ); @@ -25,7 +25,7 @@ Reviewed-By: Adam Tkac sin_contact = sin_remote; memcpy( &sin_bind, &sin_local, sizeof(sin_bind) ) ; local_port = 0; -@@ -121,7 +128,13 @@ idresult_e log_remote_user( const struct +@@ -127,7 +133,13 @@ idresult_e log_remote_user( const struct msg( LOG_ERR, func, "socket creation: %m" ) ; return( IDR_ERROR ) ; } From 2b5856ae7224d6640056ba91f5ec2475d47b46a8 Mon Sep 17 00:00:00 2001 From: Jo-Philipp Wich Date: Wed, 17 Jun 2015 19:38:55 +0200 Subject: [PATCH 585/681] wifidog: fix musl compatibility - Fix missing `fcntl.h` in `protocol.c` - Replace nonstandard `sys/unistd.h` includes with `unistd.h` ones Signed-off-by: Jo-Philipp Wich --- net/wifidog/Makefile | 2 +- net/wifidog/patches/100-musl-compat.patch | 47 +++++++++++++++++++++++ 2 files changed, 48 insertions(+), 1 deletion(-) create mode 100644 net/wifidog/patches/100-musl-compat.patch diff --git a/net/wifidog/Makefile b/net/wifidog/Makefile index ade7606c3..ddc2bb1fa 100644 --- a/net/wifidog/Makefile +++ b/net/wifidog/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=wifidog PKG_VERSION:=1.2.1 -PKG_RELEASE=1 +PKG_RELEASE=2 PKG_LICENSE:=GPL-2.0 diff --git a/net/wifidog/patches/100-musl-compat.patch b/net/wifidog/patches/100-musl-compat.patch new file mode 100644 index 000000000..599c1fefd --- /dev/null +++ b/net/wifidog/patches/100-musl-compat.patch @@ -0,0 +1,47 @@ +--- a/libhttpd/protocol.c ++++ b/libhttpd/protocol.c +@@ -28,6 +28,7 @@ + + #if defined(_WIN32) + #else ++#include + #include + #include + #endif +--- a/src/firewall.c ++++ b/src/firewall.c +@@ -35,7 +35,6 @@ + #include + #include + #include +-#include + + #include + +--- a/src/client_list.c ++++ b/src/client_list.c +@@ -31,9 +31,9 @@ + #include + #include + #include ++#include + #include + #include +-#include + + #include + +--- a/src/util.c ++++ b/src/util.c +@@ -33,10 +33,10 @@ + #include + #include + #include ++#include + #include + #include + #include +-#include + #include + #include + #include From e838c7f73670c54ca7b73efbbc6b0865da149f95 Mon Sep 17 00:00:00 2001 From: Jo-Philipp Wich Date: Wed, 17 Jun 2015 20:00:08 +0200 Subject: [PATCH 586/681] screen: fix musl compatibility Add missing `os.h` include to `utmp.c` to pull in the required `utmp.h` header. Signed-off-by: Jo-Philipp Wich --- utils/screen/Makefile | 4 ++-- utils/screen/patches/200-musl-compat.patch | 10 ++++++++++ 2 files changed, 12 insertions(+), 2 deletions(-) create mode 100644 utils/screen/patches/200-musl-compat.patch diff --git a/utils/screen/Makefile b/utils/screen/Makefile index 3adfb0ab3..634121424 100644 --- a/utils/screen/Makefile +++ b/utils/screen/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2006-2014 OpenWrt.org +# Copyright (C) 2006-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=screen PKG_VERSION:=4.2.1 -PKG_RELEASE:=2 +PKG_RELEASE:=3 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=@GNU/screen diff --git a/utils/screen/patches/200-musl-compat.patch b/utils/screen/patches/200-musl-compat.patch new file mode 100644 index 000000000..2586bb984 --- /dev/null +++ b/utils/screen/patches/200-musl-compat.patch @@ -0,0 +1,10 @@ +--- a/utmp.c ++++ b/utmp.c +@@ -33,6 +33,7 @@ + #include "config.h" + #include "screen.h" + #include "extern.h" ++#include "os.h" + + #ifdef HAVE_UTEMPTER + #include From b3d2d64928f2940257f8e9ae740df5809e24aa09 Mon Sep 17 00:00:00 2001 From: Nikos Mavrogiannopoulos Date: Wed, 17 Jun 2015 20:47:11 +0200 Subject: [PATCH 587/681] gnutls: updated to 3.4.2 Signed-off-by: Nikos Mavrogiannopoulos --- libs/gnutls/Makefile | 6 ++--- ...camellia256-gcm-corrected-regression.patch | 26 ------------------- 2 files changed, 3 insertions(+), 29 deletions(-) delete mode 100644 libs/gnutls/patches/001-camellia256-gcm-corrected-regression.patch diff --git a/libs/gnutls/Makefile b/libs/gnutls/Makefile index 61e188ae9..8d716af9f 100644 --- a/libs/gnutls/Makefile +++ b/libs/gnutls/Makefile @@ -8,13 +8,13 @@ include $(TOPDIR)/rules.mk PKG_NAME:=gnutls -PKG_VERSION:=3.4.1 -PKG_RELEASE:=2 +PKG_VERSION:=3.4.2 +PKG_RELEASE:=1 PKG_USE_MIPS16:=0 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=ftp://ftp.gnutls.org/gcrypt/gnutls/v3.4 -PKG_MD5SUM:=2d04f34fa25b45f9dcb9104c0394e12e +PKG_MD5SUM:=4fb4a6253e09aa070e6c467cbb51ba33 #PKG_FIXUP:=autoreconf gettext-version PKG_MAINTAINER:=Nikos Mavrogiannopoulos PKG_LICENSE:=LGPLv2.1+ diff --git a/libs/gnutls/patches/001-camellia256-gcm-corrected-regression.patch b/libs/gnutls/patches/001-camellia256-gcm-corrected-regression.patch deleted file mode 100644 index e29e38eb3..000000000 --- a/libs/gnutls/patches/001-camellia256-gcm-corrected-regression.patch +++ /dev/null @@ -1,26 +0,0 @@ -From 6adde30fcea02d3cb541b5a5bfb3b12074f1f3e9 Mon Sep 17 00:00:00 2001 -From: Nikos Mavrogiannopoulos -Date: Thu, 14 May 2015 14:00:11 +0200 -Subject: [PATCH] camellia256-gcm: corrected regression - -Reported by Manuel Pegourie-Gonnard. ---- - lib/nettle/cipher.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/lib/nettle/cipher.c b/lib/nettle/cipher.c -index 59e70dd..74e4203 100644 ---- a/lib/nettle/cipher.c -+++ b/lib/nettle/cipher.c -@@ -302,7 +302,7 @@ static const struct nettle_cipher_st builtin_ciphers[] = { - .ctx_size = sizeof(struct gcm_camellia256_ctx), - .encrypt = _gcm_encrypt, - .decrypt = _gcm_decrypt, -- .set_encrypt_key = (nettle_set_key_func*)gcm_camellia128_set_key, -+ .set_encrypt_key = (nettle_set_key_func*)gcm_camellia256_set_key, - .set_decrypt_key = (nettle_set_key_func*)gcm_camellia256_set_key, - - .tag = (nettle_hash_digest_func*)gcm_camellia256_digest, --- -2.1.4 - From fc959cf5b8ccee6431faef618afe85ccdd304333 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=81lvaro=20Fern=C3=A1ndez=20Rojas?= Date: Wed, 17 Jun 2015 21:30:38 +0200 Subject: [PATCH 588/681] flashrom: fix build with musl MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Álvaro Fernández Rojas --- utils/flashrom/Makefile | 2 +- .../patches/0002-fix-musl-compatibility.patch | 12 ++++++++++++ 2 files changed, 13 insertions(+), 1 deletion(-) create mode 100644 utils/flashrom/patches/0002-fix-musl-compatibility.patch diff --git a/utils/flashrom/Makefile b/utils/flashrom/Makefile index 702e63bed..af7b5e1dd 100644 --- a/utils/flashrom/Makefile +++ b/utils/flashrom/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=flashrom PKG_VERSION:=0.9.8 -PKG_RELEASE:=2 +PKG_RELEASE:=3 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 PKG_SOURCE_URL:=http://download.flashrom.org/releases diff --git a/utils/flashrom/patches/0002-fix-musl-compatibility.patch b/utils/flashrom/patches/0002-fix-musl-compatibility.patch new file mode 100644 index 000000000..b52f8b2f9 --- /dev/null +++ b/utils/flashrom/patches/0002-fix-musl-compatibility.patch @@ -0,0 +1,12 @@ +diff -uprN a/linux_spi.c b/linux_spi.c +--- a/linux_spi.c 2015-06-17 20:50:36.492963100 +0200 ++++ b/linux_spi.c 2015-06-17 20:50:00.444860800 +0200 +@@ -22,7 +22,7 @@ + #include + #include + #include +-#include ++#include + #include + #include + #include From 49bfb73dfd5d51641f2414d861e551ea68e587c4 Mon Sep 17 00:00:00 2001 From: Nikos Mavrogiannopoulos Date: Wed, 17 Jun 2015 22:02:46 +0200 Subject: [PATCH 589/681] transmission: increase the number of retries for respawn The default 5 per hour is too small for transmission which may crash quite some times. Signed-off-by: Nikos Mavrogiannopoulos --- net/transmission/files/transmission.init | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/net/transmission/files/transmission.init b/net/transmission/files/transmission.init index 463e8ddb9..535ace8bb 100644 --- a/net/transmission/files/transmission.init +++ b/net/transmission/files/transmission.init @@ -99,7 +99,7 @@ transmission() { procd_open_instance procd_set_param command /usr/bin/transmission-daemon -g $config_dir -f - procd_set_param respawn + procd_set_param respawn retry=60 procd_set_param user "$user" if test -z "$USE";then procd_set_param limits core="0 0" From 00671e854de8f036d474e71396d1cd31a550d30b Mon Sep 17 00:00:00 2001 From: Nikos Mavrogiannopoulos Date: Wed, 17 Jun 2015 22:06:52 +0200 Subject: [PATCH 590/681] openconnect: updated to 7.06 and disabled MIPS16 Signed-off-by: Nikos Mavrogiannopoulos --- net/openconnect/Makefile | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/net/openconnect/Makefile b/net/openconnect/Makefile index 605d65380..38ac391c1 100644 --- a/net/openconnect/Makefile +++ b/net/openconnect/Makefile @@ -8,12 +8,13 @@ include $(TOPDIR)/rules.mk PKG_NAME:=openconnect -PKG_VERSION:=7.05 +PKG_VERSION:=7.06 PKG_RELEASE:=1 +PKG_USE_MIPS16:=0 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=ftp://ftp.infradead.org/pub/openconnect/ -PKG_MD5SUM:=10cd4f61e8a11cdf793da2b0fd7a6003 +PKG_MD5SUM:=80f397911e1fed43d897d99be3d5f1a1 PKG_CONFIG_DEPENDS:= \ CONFIG_OPENCONNECT_GNUTLS \ From 16ce68e2285a76fab3454696a74b2091e48b0229 Mon Sep 17 00:00:00 2001 From: Nikos Mavrogiannopoulos Date: Wed, 17 Jun 2015 22:07:42 +0200 Subject: [PATCH 591/681] ocserv: disabled MIPS16 Signed-off-by: Nikos Mavrogiannopoulos --- net/ocserv/Makefile | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/net/ocserv/Makefile b/net/ocserv/Makefile index c88e78c5f..a72e34fd7 100644 --- a/net/ocserv/Makefile +++ b/net/ocserv/Makefile @@ -9,7 +9,8 @@ include $(TOPDIR)/rules.mk PKG_NAME:=ocserv PKG_VERSION:=0.10.5 -PKG_RELEASE:=1 +PKG_RELEASE:=2 +PKG_USE_MIPS16:=0 PKG_BUILD_DIR :=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION) PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz From 0bfd280c2d0fab63e868fabd4c7b570b035e7341 Mon Sep 17 00:00:00 2001 From: Nikos Mavrogiannopoulos Date: Wed, 17 Jun 2015 22:43:43 +0200 Subject: [PATCH 592/681] ocserv: use procd for init file Signed-off-by: Nikos Mavrogiannopoulos --- net/ocserv/files/ocserv.init | 28 ++++++---------------------- 1 file changed, 6 insertions(+), 22 deletions(-) diff --git a/net/ocserv/files/ocserv.init b/net/ocserv/files/ocserv.init index d4d014dd8..c4597a40f 100644 --- a/net/ocserv/files/ocserv.init +++ b/net/ocserv/files/ocserv.init @@ -1,8 +1,7 @@ #!/bin/sh /etc/rc.common -SERVICE_USE_PID=1 - START=50 +USE_PROCD=1 setup_config() { config_get port $1 port "4443" @@ -96,7 +95,7 @@ setup_dns() { echo "dns = $ip" >> /var/etc/ocserv.conf } -start() { +start_service() { local hostname iface hostname=`uci show ddns 2>/dev/null|grep domain|head -1|cut -d '=' -f 2` @@ -162,23 +161,8 @@ start() { chmod 600 /var/etc/ocpasswd config_foreach setup_users ocservusers - service_start /usr/sbin/ocserv -c /var/etc/ocserv.conf -} - -stop() { - service_stop /usr/sbin/ocserv -} - -reload() { - rm -f /var/etc/ocpasswd - touch /var/etc/ocpasswd - chmod 600 /var/etc/ocpasswd - config_foreach setup_users ocservusers - - /usr/bin/occtl show status >/dev/null 2>&1 - if test $? != 0;then - start - else - /usr/bin/occtl reload - fi + procd_open_instance + procd_set_param command /usr/sbin/ocserv -f -c /var/etc/ocserv.conf + procd_set_param respawn + procd_close_instance } From 7a3493a9eb72328a058701d99dc3c1167e924e4a Mon Sep 17 00:00:00 2001 From: Nikos Mavrogiannopoulos Date: Wed, 17 Jun 2015 22:54:50 +0200 Subject: [PATCH 593/681] ocserv: don't use isolate workers as seccomp is not enabled Signed-off-by: Nikos Mavrogiannopoulos --- net/ocserv/files/ocserv.conf.template | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/net/ocserv/files/ocserv.conf.template b/net/ocserv/files/ocserv.conf.template index b5bbec31e..dce96d832 100644 --- a/net/ocserv/files/ocserv.conf.template +++ b/net/ocserv/files/ocserv.conf.template @@ -18,7 +18,7 @@ auth = "|AUTH|" # A banner to be displayed on clients banner = "Welcome to OpenWRT" -isolate-workers = true +#isolate-workers = true # When the server has a dynamic DNS address (that may change), # should set that to true to ask the client to resolve again on From e4925c1efdd4b8caf8f19c8c3b2aba544459863b Mon Sep 17 00:00:00 2001 From: Jo-Philipp Wich Date: Wed, 17 Jun 2015 23:31:40 +0200 Subject: [PATCH 594/681] libnet-1.2.x: fix musl compatiblity The correct includes for musl are protected by an __GLIBC__ check in the upstream sources. Since musl does not provide own defines to identify itself, simply invert the condition to !__UCLIBC__ in order to fix the build on all libc flavors supported by OpenWrt. Signed-off-by: Jo-Philipp Wich --- libs/libnet-1.2.x/Makefile | 2 +- libs/libnet-1.2.x/patches/100-musl-compat.patch | 11 +++++++++++ 2 files changed, 12 insertions(+), 1 deletion(-) create mode 100644 libs/libnet-1.2.x/patches/100-musl-compat.patch diff --git a/libs/libnet-1.2.x/Makefile b/libs/libnet-1.2.x/Makefile index f3b5dcdc7..a9d7e7508 100644 --- a/libs/libnet-1.2.x/Makefile +++ b/libs/libnet-1.2.x/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=libnet PKG_VERSION:=1.2-rc3 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://sourceforge.net/projects/libnet-dev/files/ diff --git a/libs/libnet-1.2.x/patches/100-musl-compat.patch b/libs/libnet-1.2.x/patches/100-musl-compat.patch new file mode 100644 index 000000000..fcb4188a0 --- /dev/null +++ b/libs/libnet-1.2.x/patches/100-musl-compat.patch @@ -0,0 +1,11 @@ +--- a/src/libnet_link_linux.c ++++ b/src/libnet_link_linux.c +@@ -30,7 +30,7 @@ + #include + + #include +-#if (__GLIBC__) ++#if (!__UCLIBC__) + #include + #include + #else From c83350fd915d801cea4b5476d7a054974bea5255 Mon Sep 17 00:00:00 2001 From: Jo-Philipp Wich Date: Wed, 17 Jun 2015 23:46:09 +0200 Subject: [PATCH 595/681] libdaq: fix musl compatibility Change occurences of `sys/unistd.h` to the standard `unistd.h` include. Fixes build against musl. Also refresh existing patch since it applied with fuzz. Signed-off-by: Jo-Philipp Wich --- libs/libdaq/Makefile | 2 +- libs/libdaq/patches/001-compile.patch | 10 +++--- libs/libdaq/patches/100-musl-compat.patch | 42 +++++++++++++++++++++++ 3 files changed, 48 insertions(+), 6 deletions(-) create mode 100644 libs/libdaq/patches/100-musl-compat.patch diff --git a/libs/libdaq/Makefile b/libs/libdaq/Makefile index 9c634df7b..3b269f137 100644 --- a/libs/libdaq/Makefile +++ b/libs/libdaq/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=libdaq PKG_VERSION:=2.0.4 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE_URL:=https://www.snort.org/downloads/snort/ \ @SF/snort diff --git a/libs/libdaq/patches/001-compile.patch b/libs/libdaq/patches/001-compile.patch index 6eadb9ee6..b8dd94241 100644 --- a/libs/libdaq/patches/001-compile.patch +++ b/libs/libdaq/patches/001-compile.patch @@ -1,8 +1,8 @@ ---- daq-1.1.1/configure 2012-07-10 21:32:51.000000000 +0200 -+++ daq-new/configure 2012-08-03 15:47:07.654945651 +0200 -@@ -12717,10 +12717,11 @@ - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for libpcap version >= \"1.0.0\"" >&5 - $as_echo_n "checking for libpcap version >= \"1.0.0\"... " >&6; } +--- a/configure ++++ b/configure +@@ -12967,10 +12967,11 @@ if ${daq_cv_libpcap_version_1x+:} false; + else + if test "$cross_compiling" = yes; then : - { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} diff --git a/libs/libdaq/patches/100-musl-compat.patch b/libs/libdaq/patches/100-musl-compat.patch new file mode 100644 index 000000000..c510564c4 --- /dev/null +++ b/libs/libdaq/patches/100-musl-compat.patch @@ -0,0 +1,42 @@ +--- a/os-daq-modules/daq_ipfw.c ++++ b/os-daq-modules/daq_ipfw.c +@@ -23,10 +23,10 @@ + #include + #include + #include ++#include + + #include + #include +-#include + + #include + #include +--- a/os-daq-modules/daq_ipq.c ++++ b/os-daq-modules/daq_ipq.c +@@ -24,10 +24,10 @@ + #include + #include + #include ++#include + + #include + #include +-#include + + #include + +--- a/os-daq-modules/daq_nfq.c ++++ b/os-daq-modules/daq_nfq.c +@@ -24,10 +24,10 @@ + #include + #include + #include ++#include + + #include + #include +-#include + + #include + From 6104632bc2ca68753290e9f4b766772085900dfc Mon Sep 17 00:00:00 2001 From: Ted Hess Date: Wed, 17 Jun 2015 17:32:06 -0400 Subject: [PATCH 596/681] libv4l: Fix musl compatibility, update to 1.6.3 Signed-off-by: Ted Hess --- libs/libv4l/Makefile | 5 +- .../patches/005-test_for_posix_ioctl.patch | 23 +++++ .../patches/020-add-missing-includes.patch | 18 ++++ .../patches/030-musl_compatibility.patch | 92 +++++++++++++++++++ 4 files changed, 136 insertions(+), 2 deletions(-) create mode 100644 libs/libv4l/patches/005-test_for_posix_ioctl.patch create mode 100644 libs/libv4l/patches/030-musl_compatibility.patch diff --git a/libs/libv4l/Makefile b/libs/libv4l/Makefile index baf3c7d75..841ffa50e 100644 --- a/libs/libv4l/Makefile +++ b/libs/libv4l/Makefile @@ -9,12 +9,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=v4l-utils -PKG_VERSION:=1.6.2 +PKG_VERSION:=1.6.3 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 PKG_SOURCE_URL:=http://www.linuxtv.org/downloads/v4l-utils -PKG_MD5SUM:=9cb3c178f937954e65bf30920af433ef +PKG_MD5SUM:=307858616be6374f63bf946307f15a7f PKG_MAINTAINER:=Ted Hess @@ -22,6 +22,7 @@ PKG_LICENSE:=GPL-2.0 LGPL-2.1 PKG_LICENSE_FILES:=COPYING COPYING.libv4l PKG_USE_MIPS16:=0 +PKG_FIXUP:=autoreconf PKG_INSTALL:=1 PKG_BUILD_DEPENDS:=argp-standalone diff --git a/libs/libv4l/patches/005-test_for_posix_ioctl.patch b/libs/libv4l/patches/005-test_for_posix_ioctl.patch new file mode 100644 index 000000000..e945bbf87 --- /dev/null +++ b/libs/libv4l/patches/005-test_for_posix_ioctl.patch @@ -0,0 +1,23 @@ +--- a/configure.ac ++++ b/configure.ac +@@ -80,6 +80,20 @@ gl_VISIBILITY + AC_CHECK_HEADERS([sys/klog.h]) + AC_CHECK_FUNCS([klogctl]) + ++AC_CACHE_CHECK([for ioctl with POSIX signature], ++ [gl_cv_func_ioctl_posix_signature], ++ [AC_COMPILE_IFELSE( ++ [AC_LANG_PROGRAM( ++ [[#include ]], ++ [[int ioctl (int, int, ...);]]) ++ ], ++ [gl_cv_func_ioctl_posix_signature=yes], ++ [gl_cv_func_ioctl_posix_signature=no]) ++ ]) ++if test "x$gl_cv_func_ioctl_posix_signature" = xyes; then ++ AC_DEFINE([HAVE_POSIX_IOCTL], [1], [Have ioctl with POSIX signature]) ++fi ++ + # Check host os + case "$host_os" in + linux*) diff --git a/libs/libv4l/patches/020-add-missing-includes.patch b/libs/libv4l/patches/020-add-missing-includes.patch index 70107d397..34e0511ab 100644 --- a/libs/libv4l/patches/020-add-missing-includes.patch +++ b/libs/libv4l/patches/020-add-missing-includes.patch @@ -8,3 +8,21 @@ #include #include #include +@@ -36,6 +37,7 @@ + #include + #include + #include ++#include + + #include + #include +--- a/utils/v4l2-ctl/v4l2-ctl-streaming.cpp ++++ b/utils/v4l2-ctl/v4l2-ctl-streaming.cpp +@@ -14,6 +14,7 @@ + #include + #include + #include ++#include + + #include "v4l2-ctl.h" + diff --git a/libs/libv4l/patches/030-musl_compatibility.patch b/libs/libv4l/patches/030-musl_compatibility.patch new file mode 100644 index 000000000..bd3f0d7f4 --- /dev/null +++ b/libs/libv4l/patches/030-musl_compatibility.patch @@ -0,0 +1,92 @@ +--- a/lib/libv4lconvert/libv4lsyscall-priv.h ++++ b/lib/libv4lconvert/libv4lsyscall-priv.h +@@ -35,14 +35,19 @@ + which is broken on some systems and doesn't include them itself :( */ + + #ifdef linux ++#define __NEED_off_t + #include + #include + #include + #include + /* On 32 bits archs we always use mmap2, on 64 bits archs there is no mmap2 */ + #ifdef __NR_mmap2 ++#undef SYS_mmap2 + #define SYS_mmap2 __NR_mmap2 + #define MMAP2_PAGE_SHIFT 12 ++#if !(defined(__UCLIBC__) || defined(__GLIBC__)) ++typedef off_t __off_t; ++#endif + #else + #define SYS_mmap2 SYS_mmap + #define MMAP2_PAGE_SHIFT 0 +--- a/lib/libv4l1/v4l1compat.c ++++ b/lib/libv4l1/v4l1compat.c +@@ -62,7 +62,7 @@ LIBV4L_PUBLIC int open(const char *file, + return fd; + } + +-#ifdef linux ++#if defined(linux) && (defined(__GLIBC__) || defined(__UCLIBC__)) + LIBV4L_PUBLIC int open64(const char *file, int oflag, ...) + { + int fd; +@@ -94,7 +94,11 @@ LIBV4L_PUBLIC int dup(int fd) + return v4l1_dup(fd); + } + ++#ifdef HAVE_POSIX_IOCTL ++LIBV4L_PUBLIC int ioctl(int fd, int request, ...) ++#else + LIBV4L_PUBLIC int ioctl(int fd, unsigned long int request, ...) ++#endif + { + void *arg; + va_list ap; +@@ -112,12 +116,12 @@ LIBV4L_PUBLIC ssize_t read(int fd, void + } + + LIBV4L_PUBLIC void *mmap(void *start, size_t length, int prot, int flags, int fd, +- __off_t offset) ++ off_t offset) + { + return v4l1_mmap(start, length, prot, flags, fd, offset); + } + +-#ifdef linux ++#if defined(linux) && (defined(__GLIBC__) || defined(__UCLIBC__)) + LIBV4L_PUBLIC void *mmap64(void *start, size_t length, int prot, int flags, int fd, + __off64_t offset) + { +--- a/lib/libv4l2/v4l2convert.c ++++ b/lib/libv4l2/v4l2convert.c +@@ -86,7 +86,7 @@ LIBV4L_PUBLIC int open(const char *file, + return fd; + } + +-#ifdef linux ++#if defined(linux) && (defined(__GLIBC__) || defined(__UCLIBC__)) + LIBV4L_PUBLIC int open64(const char *file, int oflag, ...) + { + int fd; +@@ -121,7 +121,11 @@ LIBV4L_PUBLIC int dup(int fd) + return v4l2_dup(fd); + } + ++#ifdef HAVE_POSIX_IOCTL ++LIBV4L_PUBLIC int ioctl(int fd, int request, ...) ++#else + LIBV4L_PUBLIC int ioctl(int fd, unsigned long int request, ...) ++#endif + { + void *arg; + va_list ap; +@@ -144,7 +148,7 @@ LIBV4L_PUBLIC void *mmap(void *start, si + return v4l2_mmap(start, length, prot, flags, fd, offset); + } + +-#ifdef linux ++#if defined(linux) && (defined(__GLIBC__) || defined(__UCLIBC__)) + LIBV4L_PUBLIC void *mmap64(void *start, size_t length, int prot, int flags, int fd, + __off64_t offset) + { From 192884514f184793fd9cf2778a3118fca997babd Mon Sep 17 00:00:00 2001 From: Peter Ivanov Date: Thu, 18 Jun 2015 01:26:46 +0300 Subject: [PATCH 597/681] vnstat: fix musl compatibility Signed-off-by: Peter Ivanov --- net/vnstat/patches/100-musl-compat.patch | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 net/vnstat/patches/100-musl-compat.patch diff --git a/net/vnstat/patches/100-musl-compat.patch b/net/vnstat/patches/100-musl-compat.patch new file mode 100644 index 000000000..05123899b --- /dev/null +++ b/net/vnstat/patches/100-musl-compat.patch @@ -0,0 +1,10 @@ +--- a/src/common.h ++++ b/src/common.h +@@ -22,6 +22,7 @@ + #include + #include + #include ++#include + + #if defined(__FreeBSD__) || defined(__NetBSD__) || defined(__OpenBSD__) || defined(__APPLE__) || defined(__FreeBSD_kernel__) + #include From b3c3ccc10ad4db5ac704161a00cf36ee682c8ee0 Mon Sep 17 00:00:00 2001 From: Jo-Philipp Wich Date: Thu, 18 Jun 2015 00:28:37 +0200 Subject: [PATCH 598/681] vpnc: fix musl compatibility - Add missing `sys/ttydefaults.h` include to `config.c` - Restrict usage of `error.h` to glibc and uclibc only - Avoid including `linux/if_tun.h` on non-glibc/uclibc to prevent musl kernel/libc header conflicts Signed-off-by: Jo-Philipp Wich --- net/vpnc/Makefile | 2 +- net/vpnc/patches/001-cross.patch | 6 ++-- net/vpnc/patches/100-musl-compat.patch | 42 ++++++++++++++++++++++++++ 3 files changed, 46 insertions(+), 4 deletions(-) create mode 100644 net/vpnc/patches/100-musl-compat.patch diff --git a/net/vpnc/Makefile b/net/vpnc/Makefile index 16a45a4b4..95995e10c 100644 --- a/net/vpnc/Makefile +++ b/net/vpnc/Makefile @@ -10,7 +10,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=vpnc PKG_REV:=550 PKG_VERSION:=0.5.3.r$(PKG_REV) -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://svn.unix-ag.uni-kl.de/vpnc/trunk/ diff --git a/net/vpnc/patches/001-cross.patch b/net/vpnc/patches/001-cross.patch index 94b382c3d..33bcfee3b 100644 --- a/net/vpnc/patches/001-cross.patch +++ b/net/vpnc/patches/001-cross.patch @@ -1,7 +1,7 @@ --- a/Makefile +++ b/Makefile @@ -20,7 +20,7 @@ - # $Id$ + # $Id: Makefile 539 2013-12-04 13:41:04Z Antonio Borneo $ DESTDIR= -PREFIX=/usr/local @@ -9,7 +9,7 @@ ETCDIR=/etc/vpnc BINDIR=$(PREFIX)/bin SBINDIR=$(PREFIX)/sbin -@@ -57,18 +57,15 @@ +@@ -57,18 +57,15 @@ OBJS = $(addsuffix .o,$(basename $(SRCS) CRYPTO_OBJS = $(addsuffix .o,$(basename $(CRYPTO_SRCS))) BINOBJS = $(addsuffix .o,$(BINS)) BINSRCS = $(addsuffix .c,$(BINS)) @@ -31,7 +31,7 @@ LIBS += -lnsl -lresolv -lsocket endif ifneq (,$(findstring Apple,$(shell $(CC) --version))) -@@ -82,7 +79,7 @@ +@@ -82,7 +79,7 @@ vpnc : $(OBJS) vpnc.o $(CC) $(LDFLAGS) -o $@ $^ $(LIBS) vpnc.8 : vpnc.8.template makeman.pl vpnc diff --git a/net/vpnc/patches/100-musl-compat.patch b/net/vpnc/patches/100-musl-compat.patch new file mode 100644 index 000000000..1186428af --- /dev/null +++ b/net/vpnc/patches/100-musl-compat.patch @@ -0,0 +1,42 @@ +--- a/sysdep.h ++++ b/sysdep.h +@@ -37,12 +37,14 @@ int tun_read(int fd, unsigned char *buf, + int tun_get_hwaddr(int fd, char *dev, uint8_t *hwaddr); + + /***************************************************************************/ +-#if defined(__linux__) || defined(__GLIBC__) ++#if defined(__GLIBC__) || defined(__UCLIBC__) + #include ++#define HAVE_ERROR 1 ++#endif + ++#if defined(__linux__) || defined(__GLIBC__) + #define HAVE_VASPRINTF 1 + #define HAVE_ASPRINTF 1 +-#define HAVE_ERROR 1 + #define HAVE_UNSETENV 1 + #define HAVE_SETENV 1 + #endif +--- a/sysdep.c ++++ b/sysdep.c +@@ -59,7 +59,9 @@ + #if defined(__DragonFly__) + #include + #elif defined(__linux__) +-#include ++# if defined(__GLIBC__) || defined(__UCLIBC__) ++# include ++# endif + #elif defined(__APPLE__) + /* no header for tun */ + #elif defined(__CYGWIN__) +--- a/config.c ++++ b/config.c +@@ -28,6 +28,7 @@ + #include + #include + #include ++#include + #include + #include + #include From d5697f6a9589912c5caa1c432fd4b37ae63c1639 Mon Sep 17 00:00:00 2001 From: Yousong Zhou Date: Thu, 18 Jun 2015 17:57:03 +0800 Subject: [PATCH 599/681] libpam: fix build. - Update PKG_MD5SUM. - Update PKG_RELEASE. - Update patch 0001- to always use /lib directory. - Refresh other patches. Signed-off-by: Yousong Zhou --- libs/libpam/Makefile | 4 +-- ...uild-always-use-lib-instead-of-lib64.patch | 36 +++++++++++++++++++ ...ost_cpu-for-lib64-directory-handling.patch | 28 --------------- ..._rhosts-if-neither-ruserok-nor-ruser.patch | 6 ++-- ..._lastlog-when-logwtmp-is-not-availab.patch | 6 ++-- ...when-crypt-is-not-part-of-crypt_libs.patch | 6 ++-- .../patches/0005-build-fix-doc-build.patch | 2 +- ...pilation-in-case-rpc-rpc.h-is-missin.patch | 2 +- ...innetgr-is-available-at-compile-time.patch | 2 +- 9 files changed, 50 insertions(+), 42 deletions(-) create mode 100644 libs/libpam/patches/0001-build-always-use-lib-instead-of-lib64.patch delete mode 100644 libs/libpam/patches/0001-build-use-host_cpu-for-lib64-directory-handling.patch diff --git a/libs/libpam/Makefile b/libs/libpam/Makefile index 10e74589a..ee9ecc659 100644 --- a/libs/libpam/Makefile +++ b/libs/libpam/Makefile @@ -9,11 +9,11 @@ include $(TOPDIR)/rules.mk PKG_NAME:=libpam PKG_VERSION:=1.2.0 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE:=Linux-PAM-$(PKG_VERSION).tar.bz2 PKG_SOURCE_URL:=http://www.linux-pam.org/library/ -PKG_MD5SUM:=35b6091af95981b1b2cd60d813b5e4ee +PKG_MD5SUM:=ee4a480d77b341c99e8b1375f8f180c0 PKG_INSTALL:=1 PKG_FIXUP:=autoreconf PKG_MAINTAINER:=Nikos Mavrogiannopoulos diff --git a/libs/libpam/patches/0001-build-always-use-lib-instead-of-lib64.patch b/libs/libpam/patches/0001-build-always-use-lib-instead-of-lib64.patch new file mode 100644 index 000000000..25d9a4ab7 --- /dev/null +++ b/libs/libpam/patches/0001-build-always-use-lib-instead-of-lib64.patch @@ -0,0 +1,36 @@ +From 1948dd03d69c1a50e92d7e8868b7d6eabd4873c1 Mon Sep 17 00:00:00 2001 +From: Yousong Zhou +Date: Wed, 17 Jun 2015 16:11:31 +0800 +Subject: [PATCH 1/7] build: always use /lib instead of /lib64. + +* configure.ac: OpenWrt does not use /lib64. + +Signed-off-by: Yousong Zhou +--- + configure.ac | 10 +--------- + 1 file changed, 1 insertion(+), 9 deletions(-) + +diff --git a/configure.ac b/configure.ac +index fd0e310..306b6e2 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -25,15 +25,7 @@ dnl If we use /usr as prefix, use /etc for config files + then + sysconfdir="/etc" + fi +- if test ${libdir} = '${exec_prefix}/lib' +- then +- case "`uname -m`" in +- x86_64|ppc64|s390x|sparc64) +- libdir="/lib64" ;; +- *) +- libdir="/lib" ;; +- esac +- fi ++ libdir="/lib" + if test ${sbindir} = '${exec_prefix}/sbin' + then + sbindir="/sbin" +-- +1.7.10.4 + diff --git a/libs/libpam/patches/0001-build-use-host_cpu-for-lib64-directory-handling.patch b/libs/libpam/patches/0001-build-use-host_cpu-for-lib64-directory-handling.patch deleted file mode 100644 index 038b21422..000000000 --- a/libs/libpam/patches/0001-build-use-host_cpu-for-lib64-directory-handling.patch +++ /dev/null @@ -1,28 +0,0 @@ -From ee916fd0ec70eb37a97da29f6ec0c26bef7cf6f2 Mon Sep 17 00:00:00 2001 -From: Yousong Zhou -Date: Wed, 17 Jun 2015 16:11:31 +0800 -Subject: [PATCH 1/7] build: use $host_cpu for lib64 directory handling. - -* configure.ac: use $host_cpu for lib64 directory handling. - -Signed-off-by: Yousong Zhou ---- - configure.ac | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/configure.ac b/configure.ac -index fd0e310..1bc2591 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -27,7 +27,7 @@ dnl If we use /usr as prefix, use /etc for config files - fi - if test ${libdir} = '${exec_prefix}/lib' - then -- case "`uname -m`" in -+ case "$host_cpu" in - x86_64|ppc64|s390x|sparc64) - libdir="/lib64" ;; - *) --- -1.7.10.4 - diff --git a/libs/libpam/patches/0002-build-ignore-pam_rhosts-if-neither-ruserok-nor-ruser.patch b/libs/libpam/patches/0002-build-ignore-pam_rhosts-if-neither-ruserok-nor-ruser.patch index c3eda4155..abafcbb24 100644 --- a/libs/libpam/patches/0002-build-ignore-pam_rhosts-if-neither-ruserok-nor-ruser.patch +++ b/libs/libpam/patches/0002-build-ignore-pam_rhosts-if-neither-ruserok-nor-ruser.patch @@ -1,4 +1,4 @@ -From e985c1ef2c739a597b2d7a2efc3c310c02e40c1f Mon Sep 17 00:00:00 2001 +From 1a2e6c979118dce5e79604e88c008c7879d1e4e6 Mon Sep 17 00:00:00 2001 From: Yousong Zhou Date: Wed, 17 Jun 2015 18:19:23 +0800 Subject: [PATCH 2/7] build: ignore pam_rhosts if neither ruserok nor @@ -16,10 +16,10 @@ Signed-off-by: Yousong Zhou 3 files changed, 13 insertions(+), 4 deletions(-) diff --git a/configure.ac b/configure.ac -index 1bc2591..3c4d8bb 100644 +index 306b6e2..084071a 100644 --- a/configure.ac +++ b/configure.ac -@@ -542,7 +542,10 @@ AC_CHECK_FUNCS(fseeko getdomainname gethostname gettimeofday lckpwdf mkdir selec +@@ -534,7 +534,10 @@ AC_CHECK_FUNCS(fseeko getdomainname gethostname gettimeofday lckpwdf mkdir selec AC_CHECK_FUNCS(strcspn strdup strspn strstr strtol uname) AC_CHECK_FUNCS(getutent_r getpwnam_r getpwuid_r getgrnam_r getgrgid_r getspnam_r) AC_CHECK_FUNCS(getgrouplist getline getdelim) diff --git a/libs/libpam/patches/0003-build-ignore-pam_lastlog-when-logwtmp-is-not-availab.patch b/libs/libpam/patches/0003-build-ignore-pam_lastlog-when-logwtmp-is-not-availab.patch index ddcb66228..2f3f19cb3 100644 --- a/libs/libpam/patches/0003-build-ignore-pam_lastlog-when-logwtmp-is-not-availab.patch +++ b/libs/libpam/patches/0003-build-ignore-pam_lastlog-when-logwtmp-is-not-availab.patch @@ -1,4 +1,4 @@ -From 173164996ca7daf3fa705f2a0bb2991b0d5d2083 Mon Sep 17 00:00:00 2001 +From bac1ee3033cf22e31730fe3e77ca82bd5ebba692 Mon Sep 17 00:00:00 2001 From: Yousong Zhou Date: Wed, 17 Jun 2015 21:18:05 +0800 Subject: [PATCH 3/7] build: ignore pam_lastlog when logwtmp is not available. @@ -13,10 +13,10 @@ Signed-off-by: Yousong Zhou 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/configure.ac b/configure.ac -index 3c4d8bb..8de6edf 100644 +index 084071a..ca4bf5b 100644 --- a/configure.ac +++ b/configure.ac -@@ -544,8 +544,10 @@ AC_CHECK_FUNCS(getutent_r getpwnam_r getpwuid_r getgrnam_r getgrgid_r getspnam_r +@@ -536,8 +536,10 @@ AC_CHECK_FUNCS(getutent_r getpwnam_r getpwuid_r getgrnam_r getgrgid_r getspnam_r AC_CHECK_FUNCS(getgrouplist getline getdelim) AC_CHECK_FUNCS(inet_ntop inet_pton innetgr) AC_CHECK_FUNCS([ruserok_af ruserok], [break]) diff --git a/libs/libpam/patches/0004-build-fix-build-when-crypt-is-not-part-of-crypt_libs.patch b/libs/libpam/patches/0004-build-fix-build-when-crypt-is-not-part-of-crypt_libs.patch index ee319d11b..04e617326 100644 --- a/libs/libpam/patches/0004-build-fix-build-when-crypt-is-not-part-of-crypt_libs.patch +++ b/libs/libpam/patches/0004-build-fix-build-when-crypt-is-not-part-of-crypt_libs.patch @@ -1,4 +1,4 @@ -From 20e5efe4b2a8471bc52e480e53cff68a4de19c56 Mon Sep 17 00:00:00 2001 +From a35daea1b8be768d1b0be6eae157fbf3e5380f92 Mon Sep 17 00:00:00 2001 From: Yousong Zhou Date: Wed, 17 Jun 2015 18:22:31 +0800 Subject: [PATCH 4/7] build: fix build when crypt() is not part of crypt_libs. @@ -11,10 +11,10 @@ Signed-off-by: Yousong Zhou 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/configure.ac b/configure.ac -index 8de6edf..c15441b 100644 +index ca4bf5b..6553c78 100644 --- a/configure.ac +++ b/configure.ac -@@ -416,7 +416,7 @@ AS_IF([test "x$ac_cv_header_xcrypt_h" = "xyes"], +@@ -408,7 +408,7 @@ AS_IF([test "x$ac_cv_header_xcrypt_h" = "xyes"], [crypt_libs="crypt"]) BACKUP_LIBS=$LIBS diff --git a/libs/libpam/patches/0005-build-fix-doc-build.patch b/libs/libpam/patches/0005-build-fix-doc-build.patch index 132012439..cd9b0a802 100644 --- a/libs/libpam/patches/0005-build-fix-doc-build.patch +++ b/libs/libpam/patches/0005-build-fix-doc-build.patch @@ -1,4 +1,4 @@ -From df7abf333d19aefd166f613b696345732ae4c9c8 Mon Sep 17 00:00:00 2001 +From 1563e57ea8ab9d123f765129a6840929ef58ff7a Mon Sep 17 00:00:00 2001 From: Yousong Zhou Date: Wed, 17 Jun 2015 20:38:41 +0800 Subject: [PATCH 5/7] build: fix doc build. diff --git a/libs/libpam/patches/0006-pam_unix-fix-compilation-in-case-rpc-rpc.h-is-missin.patch b/libs/libpam/patches/0006-pam_unix-fix-compilation-in-case-rpc-rpc.h-is-missin.patch index bfdfd8b4c..014684f29 100644 --- a/libs/libpam/patches/0006-pam_unix-fix-compilation-in-case-rpc-rpc.h-is-missin.patch +++ b/libs/libpam/patches/0006-pam_unix-fix-compilation-in-case-rpc-rpc.h-is-missin.patch @@ -1,4 +1,4 @@ -From 596797ab7f46fb4d0338e75db7c0d1019cd4df87 Mon Sep 17 00:00:00 2001 +From 2e3ed4c6fb09f84fede589047d37d11783202d34 Mon Sep 17 00:00:00 2001 From: Yousong Zhou Date: Wed, 17 Jun 2015 18:16:18 +0800 Subject: [PATCH 6/7] pam_unix: fix compilation in case rpc/rpc.h is missing. diff --git a/libs/libpam/patches/0007-Check-if-innetgr-is-available-at-compile-time.patch b/libs/libpam/patches/0007-Check-if-innetgr-is-available-at-compile-time.patch index 7108b6bed..f79b01aeb 100644 --- a/libs/libpam/patches/0007-Check-if-innetgr-is-available-at-compile-time.patch +++ b/libs/libpam/patches/0007-Check-if-innetgr-is-available-at-compile-time.patch @@ -1,4 +1,4 @@ -From 9e2fa22891a87592c1a04801623fea5be40cb581 Mon Sep 17 00:00:00 2001 +From c681bd104627139eac2f40fe303e1f67676233e8 Mon Sep 17 00:00:00 2001 From: Yousong Zhou Date: Wed, 17 Jun 2015 15:33:43 +0800 Subject: [PATCH 7/7] Check if innetgr is available at compile time. From db2eba4dc4f6958889f8664837c8c477f9808c6a Mon Sep 17 00:00:00 2001 From: Ted Hess Date: Thu, 18 Jun 2015 08:35:17 -0400 Subject: [PATCH 600/681] mjpg-streamer: Fix musl compatibility Signed-off-by: Ted Hess --- .../patches/005-musl_compatibility.patch | 13 +++++++++++++ 1 file changed, 13 insertions(+) create mode 100644 multimedia/mjpg-streamer/patches/005-musl_compatibility.patch diff --git a/multimedia/mjpg-streamer/patches/005-musl_compatibility.patch b/multimedia/mjpg-streamer/patches/005-musl_compatibility.patch new file mode 100644 index 000000000..c758eb953 --- /dev/null +++ b/multimedia/mjpg-streamer/patches/005-musl_compatibility.patch @@ -0,0 +1,13 @@ +--- a/mjpg_streamer.h ++++ b/mjpg_streamer.h +@@ -29,6 +29,10 @@ + #define MAX_OUTPUT_PLUGINS 10 + #define MAX_PLUGIN_ARGUMENTS 32 + ++#define __NEED_pthread_t ++#define __NEED_pthread_mutex_t ++#define __NEED_pthread_cond_t ++ + #include /* for videodev2.h */ + #include + From d5c31e1bf3fb798b11fd8275743d053f0c763e33 Mon Sep 17 00:00:00 2001 From: Jo-Philipp Wich Date: Thu, 18 Jun 2015 17:28:57 +0200 Subject: [PATCH 601/681] ulogd: fix musl compatibility - Avoid non-pointer use of `FILE` type since its just a forward declaration - Build with -D_GNU_SOURCE to expose required `struct tcphdr` members Signed-off-by: Jo-Philipp Wich --- net/ulogd/Makefile | 7 ++- net/ulogd/patches/100-musl-compat.patch | 57 +++++++++++++++++++++++++ 2 files changed, 62 insertions(+), 2 deletions(-) create mode 100644 net/ulogd/patches/100-musl-compat.patch diff --git a/net/ulogd/Makefile b/net/ulogd/Makefile index 4dfdb2868..fdf3ad9ec 100644 --- a/net/ulogd/Makefile +++ b/net/ulogd/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2006-2014 OpenWrt.org +# Copyright (C) 2006-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=ulogd PKG_VERSION:=2.0.4 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 PKG_SOURCE_URL:=ftp://ftp.netfilter.org/pub/ulogd/ \ @@ -124,6 +124,9 @@ PKG_CONFIG_DEPENDS:= \ CONFIG_PACKAGE_ulogd-mod-pgsql \ CONFIG_PACKAGE_ulogd-mod-sqlite \ +TARGET_CFLAGS += \ + -D_GNU_SOURCE \ + CONFIGURE_ARGS += \ --enable-nfacct \ --enable-nfct \ diff --git a/net/ulogd/patches/100-musl-compat.patch b/net/ulogd/patches/100-musl-compat.patch new file mode 100644 index 000000000..2f1c29302 --- /dev/null +++ b/net/ulogd/patches/100-musl-compat.patch @@ -0,0 +1,57 @@ +--- a/src/ulogd.c ++++ b/src/ulogd.c +@@ -83,7 +83,7 @@ static char *ulogd_logfile = NULL; + static const char *ulogd_configfile = ULOGD_CONFIGFILE; + static const char *ulogd_pidfile = NULL; + static int ulogd_pidfile_fd = -1; +-static FILE syslog_dummy; ++static int ulogd_use_syslog = 0; + + static int info_mode = 0; + +@@ -427,7 +427,7 @@ void __ulogd_log(int level, char *file, + if (level < loglevel_ce.u.value) + return; + +- if (logfile == &syslog_dummy) { ++ if (ulogd_use_syslog) { + /* FIXME: this omits the 'file' string */ + va_start(ap, format); + vsyslog(ulogd2syslog_level(level), format, ap); +@@ -950,7 +950,7 @@ static int logfile_open(const char *name + logfile = stdout; + } else if (!strcmp(name, "syslog")) { + openlog("ulogd", LOG_PID, LOG_DAEMON); +- logfile = &syslog_dummy; ++ ulogd_use_syslog = 1; + } else { + logfile = fopen(ulogd_logfile, "a"); + if (!logfile) { +@@ -1240,7 +1240,7 @@ static void sigterm_handler(int signal) + unload_plugins(); + #endif + +- if (logfile != NULL && logfile != stdout && logfile != &syslog_dummy) { ++ if (logfile != NULL && logfile != stdout) { + fclose(logfile); + logfile = NULL; + } +@@ -1262,7 +1262,7 @@ static void signal_handler(int signal) + switch (signal) { + case SIGHUP: + /* reopen logfile */ +- if (logfile != stdout && logfile != &syslog_dummy) { ++ if (logfile != NULL && logfile != stdout) { + fclose(logfile); + logfile = fopen(ulogd_logfile, "a"); + if (!logfile) { +--- a/filter/raw2packet/ulogd_raw2packet_BASE.c ++++ b/filter/raw2packet/ulogd_raw2packet_BASE.c +@@ -42,6 +42,7 @@ + #include + #include + #include ++#include + #include + + enum input_keys { From 54e6887881080011febf19ae3677cd0fbec18eb8 Mon Sep 17 00:00:00 2001 From: Jo-Philipp Wich Date: Thu, 18 Jun 2015 17:32:51 +0200 Subject: [PATCH 602/681] mtr: switch to upstream "newdns" branch Switch the mtr package to the upstream `newdns` git branch. This will fix compilation on Glibc, uClibc and musl without requiring further patches. Note that the base version of this branch is 0.85, not 0.86 so the lower version number is intentional. Signed-off-by: Jo-Philipp Wich --- net/mtr/Makefile | 16 +- net/mtr/patches/501-dns.patch | 510 ------------------------ net/mtr/patches/502-fix-res_ninit.patch | 31 -- 3 files changed, 10 insertions(+), 547 deletions(-) delete mode 100644 net/mtr/patches/501-dns.patch delete mode 100644 net/mtr/patches/502-fix-res_ninit.patch diff --git a/net/mtr/Makefile b/net/mtr/Makefile index 9498baf0e..1a4660111 100644 --- a/net/mtr/Makefile +++ b/net/mtr/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2006-2014 OpenWrt.org +# Copyright (C) 2006-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -8,12 +8,16 @@ include $(TOPDIR)/rules.mk PKG_NAME:=mtr -PKG_VERSION:=0.86 -PKG_RELEASE:=2 +PKG_REV:=dd2b750 +PKG_VERSION:=0.85+newdns-$(PKG_REV) +PKG_RELEASE:=1 + +PKG_SOURCE_PROTO:=git +PKG_SOURCE_URL:=https://github.com/traviscross/mtr.git +PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) +PKG_SOURCE_VERSION:=$(PKG_REV) +PKG_SOURCE:=$(PKG_NAME)-$(PKG_SOURCE_VERSION).tar.gz -PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=ftp://ftp.bitwizard.nl/mtr -PKG_MD5SUM:=8d63592c9d4579ef20cf491b41843eb2 PKG_LICENSE:=GPL-2.0+ PKG_LICENSE_FILES:=COPYING diff --git a/net/mtr/patches/501-dns.patch b/net/mtr/patches/501-dns.patch deleted file mode 100644 index e50b7fbff..000000000 --- a/net/mtr/patches/501-dns.patch +++ /dev/null @@ -1,510 +0,0 @@ ---- a/dns.c -+++ b/dns.c -@@ -921,6 +921,507 @@ void restell(char *s) - fputs("\r",stderr); - } - -+#ifdef __UCLIBC__ -+ -+static const char digits[] = "0123456789"; -+#define __set_errno(e) (errno = (e)) -+ -+#define NS_PUT16(s, cp) do { \ -+ register u_int16_t t_s = (u_int16_t)(s); \ -+ register u_char *t_cp = (u_char *)(cp); \ -+ *t_cp++ = t_s >> 8; \ -+ *t_cp = t_s; \ -+ (cp) += NS_INT16SZ; \ -+} while (0) -+ -+ -+ -+#define NS_PUT32(l, cp) do { \ -+ register u_int32_t t_l = (u_int32_t)(l); \ -+ register u_char *t_cp = (u_char *)(cp); \ -+ *t_cp++ = t_l >> 24; \ -+ *t_cp++ = t_l >> 16; \ -+ *t_cp++ = t_l >> 8; \ -+ *t_cp = t_l; \ -+ (cp) += NS_INT32SZ; \ -+} while (0) -+ -+ -+void -+ns_put16(u_int src, u_char *dst) { -+ NS_PUT16(src, dst); -+} -+ -+void -+ns_put32(u_long src, u_char *dst) { -+ NS_PUT32(src, dst); -+} -+ -+void __putshort(u_int16_t src, u_char *dst) { ns_put16(src, dst); } -+void __putlong(u_int32_t src, u_char *dst) { ns_put32(src, dst); } -+ -+int -+mklower(int ch) { -+ if (ch >= 0x41 && ch <= 0x5A) -+ return (ch + 0x20); -+ return (ch); -+} -+ -+ -+static int -+dn_find(const u_char *domain, const u_char *msg, -+ const u_char * const *dnptrs, -+ const u_char * const *lastdnptr) -+{ -+ const u_char *dn, *cp, *sp; -+ const u_char * const *cpp; -+ u_int n; -+ -+ for (cpp = dnptrs; cpp < lastdnptr; cpp++) { -+ sp = *cpp; -+ /* -+ * terminate search on: -+ * root label -+ * compression pointer -+ * unusable offset -+ */ -+ while (*sp != 0 && (*sp & NS_CMPRSFLGS) == 0 && -+ (sp - msg) < 0x4000) { -+ dn = domain; -+ cp = sp; -+ while ((n = *cp++) != 0) { -+ /* -+ * check for indirection -+ */ -+ switch (n & NS_CMPRSFLGS) { -+ case 0: /* normal case, n == len */ -+ if (n != *dn++) -+ goto next; -+ for ((void)NULL; n > 0; n--) -+ if (mklower(*dn++) != -+ mklower(*cp++)) -+ goto next; -+ /* Is next root for both ? */ -+ if (*dn == '\0' && *cp == '\0') -+ return (sp - msg); -+ if (*dn) -+ continue; -+ goto next; -+ -+ case NS_CMPRSFLGS: /* indirection */ -+ cp = msg + (((n & 0x3f) << 8) | *cp); -+ break; -+ -+ default: /* illegal type */ -+ __set_errno (EMSGSIZE); -+ return (-1); -+ } -+ } -+ next: -+ sp += *sp + 1; -+ } -+ } -+ __set_errno (ENOENT); -+ return (-1); -+} -+ -+ -+int -+ns_name_pack(const u_char *src, u_char *dst, int dstsiz, -+ const u_char **dnptrs, const u_char **lastdnptr) -+{ -+ u_char *dstp; -+ const u_char **cpp, **lpp, *eob, *msg; -+ const u_char *srcp; -+ int n, l, first = 1; -+ -+ srcp = src; -+ dstp = dst; -+ eob = dstp + dstsiz; -+ lpp = cpp = NULL; -+ if (dnptrs != NULL) { -+ if ((msg = *dnptrs++) != NULL) { -+ for (cpp = dnptrs; *cpp != NULL; cpp++) -+ (void)NULL; -+ lpp = cpp; /* end of list to search */ -+ } -+ } else -+ msg = NULL; -+ -+ /* make sure the domain we are about to add is legal */ -+ l = 0; -+ do { -+ n = *srcp; -+ if ((n & NS_CMPRSFLGS) != 0 && n != 0x41) { -+ __set_errno (EMSGSIZE); -+ return (-1); -+ } -+ if (n == 0x41) -+ n = *++srcp / 8; -+ l += n + 1; -+ if (l > MAXCDNAME) { -+ __set_errno (EMSGSIZE); -+ return (-1); -+ } -+ srcp += n + 1; -+ } while (n != 0); -+ -+ /* from here on we need to reset compression pointer array on error */ -+ srcp = src; -+ do { -+ /* Look to see if we can use pointers. */ -+ n = *srcp; -+ if (n != 0 && n != 0x41 && msg != NULL) { -+ l = dn_find(srcp, msg, (const u_char * const *)dnptrs, -+ (const u_char * const *)lpp); -+ if (l >= 0) { -+ if (dstp + 1 >= eob) { -+ goto cleanup; -+ } -+ *dstp++ = (l >> 8) | NS_CMPRSFLGS; -+ *dstp++ = l % 256; -+ return (dstp - dst); -+ } -+ /* Not found, save it. */ -+ if (lastdnptr != NULL && cpp < lastdnptr - 1 && -+ (dstp - msg) < 0x4000 && first) { -+ *cpp++ = dstp; -+ *cpp = NULL; -+ first = 0; -+ } -+ } -+ /* copy label to buffer */ -+ if ((n & NS_CMPRSFLGS) != 0 && n != 0x41) { /* Should not happen. */ -+ goto cleanup; -+ } -+ if (n == 0x41) { -+ n = *++srcp / 8; -+ if (dstp + 1 >= eob) -+ goto cleanup; -+ *dstp++ = 0x41; -+ } -+ if (dstp + 1 + n >= eob) { -+ goto cleanup; -+ } -+ memcpy(dstp, srcp, n + 1); -+ srcp += n + 1; -+ dstp += n + 1; -+ } while (n != 0); -+ -+ if (dstp > eob) { -+cleanup: -+ if (msg != NULL) -+ *lpp = NULL; -+ __set_errno (EMSGSIZE); -+ return (-1); -+ } -+ return (dstp - dst); -+} -+ -+ -+int -+ns_name_pton(const char *src, u_char *dst, size_t dstsiz) { -+ u_char *label, *bp, *eom; -+ int c, n, escaped; -+ char *cp; -+ -+ escaped = 0; -+ bp = dst; -+ eom = dst + dstsiz; -+ label = bp++; -+ -+ while ((c = *src++) != 0) { -+ if (escaped) { -+ if ((cp = strchr(digits, c)) != NULL) { -+ n = (cp - digits) * 100; -+ if ((c = *src++) == 0 || -+ (cp = strchr(digits, c)) == NULL) { -+ __set_errno (EMSGSIZE); -+ return (-1); -+ } -+ n += (cp - digits) * 10; -+ if ((c = *src++) == 0 || -+ (cp = strchr(digits, c)) == NULL) { -+ __set_errno (EMSGSIZE); -+ return (-1); -+ } -+ n += (cp - digits); -+ if (n > 255) { -+ __set_errno (EMSGSIZE); -+ return (-1); -+ } -+ c = n; -+ } else if (c == '[' && label == bp - 1 && *src == 'x') { -+ /* Theoretically we would have to handle \[o -+ as well but we do not since we do not need -+ it internally. */ -+ *label = 0x41; -+ label = bp++; -+ ++src; -+ while (isxdigit (*src)) { -+ n = *src > '9' ? *src - 'a' + 10 : *src - '0'; -+ ++src; -+ if (! isxdigit(*src)) { -+ __set_errno (EMSGSIZE); -+ return (-1); -+ } -+ n <<= 4; -+ n += *src > '9' ? *src - 'a' + 10 : *src - '0'; -+ if (bp + 1 >= eom) { -+ __set_errno (EMSGSIZE); -+ return (-1); -+ } -+ *bp++ = n; -+ ++src; -+ } -+ *label = (bp - label - 1) * 8; -+ if (*src++ != ']' || *src++ != '.') { -+ __set_errno (EMSGSIZE); -+ return (-1); -+ } -+ escaped = 0; -+ label = bp++; -+ if (bp >= eom) { -+ __set_errno (EMSGSIZE); -+ return (-1); -+ } -+ continue; -+ } -+ escaped = 0; -+ } else if (c == '\\') { -+ escaped = 1; -+ continue; -+ } else if (c == '.') { -+ c = (bp - label - 1); -+ if ((c & NS_CMPRSFLGS) != 0) { /* Label too big. */ -+ __set_errno (EMSGSIZE); -+ return (-1); -+ } -+ if (label >= eom) { -+ __set_errno (EMSGSIZE); -+ return (-1); -+ } -+ *label = c; -+ /* Fully qualified ? */ -+ if (*src == '\0') { -+ if (c != 0) { -+ if (bp >= eom) { -+ __set_errno (EMSGSIZE); -+ return (-1); -+ } -+ *bp++ = '\0'; -+ } -+ if ((bp - dst) > MAXCDNAME) { -+ __set_errno (EMSGSIZE); -+ return (-1); -+ } -+ return (1); -+ } -+ if (c == 0 || *src == '.') { -+ __set_errno (EMSGSIZE); -+ return (-1); -+ } -+ label = bp++; -+ continue; -+ } -+ if (bp >= eom) { -+ __set_errno (EMSGSIZE); -+ return (-1); -+ } -+ *bp++ = (u_char)c; -+ } -+ c = (bp - label - 1); -+ if ((c & NS_CMPRSFLGS) != 0) { /* Label too big. */ -+ __set_errno (EMSGSIZE); -+ return (-1); -+ } -+ if (label >= eom) { -+ __set_errno (EMSGSIZE); -+ return (-1); -+ } -+ *label = c; -+ if (c != 0) { -+ if (bp >= eom) { -+ __set_errno (EMSGSIZE); -+ return (-1); -+ } -+ *bp++ = 0; -+ } -+ if ((bp - dst) > MAXCDNAME) { /* src too big */ -+ __set_errno (EMSGSIZE); -+ return (-1); -+ } -+ return (0); -+} -+ -+ -+ -+int -+ns_name_compress(const char *src, u_char *dst, size_t dstsiz, -+ const u_char **dnptrs, const u_char **lastdnptr) -+{ -+ u_char tmp[NS_MAXCDNAME]; -+ -+ if (ns_name_pton(src, tmp, sizeof tmp) == -1) -+ return (-1); -+ return (ns_name_pack(tmp, dst, dstsiz, dnptrs, lastdnptr)); -+} -+ -+ -+int -+dn_comp(const char *src, u_char *dst, int dstsiz, -+ u_char **dnptrs, u_char **lastdnptr) -+{ -+ return (ns_name_compress(src, dst, (size_t)dstsiz, -+ (const u_char **)dnptrs, -+ (const u_char **)lastdnptr)); -+} -+ -+ -+ -+ -+int -+res_nmkquery(res_state statp, -+ int op, /* opcode of query */ -+ const char *dname, /* domain name */ -+ int class, int type, /* class and type of query */ -+ const u_char *data, /* resource record data */ -+ int datalen, /* length of data */ -+ const u_char *newrr_in, /* new rr for modify or append */ -+ u_char *buf, /* buffer to put query */ -+ int buflen) /* size of buffer */ -+{ -+ register HEADER *hp; -+ register u_char *cp; -+ register int n; -+ u_char *dnptrs[20], **dpp, **lastdnptr; -+ -+#ifdef DEBUG -+ if (statp->options & RES_DEBUG) -+ printf(";; res_nmkquery(%s, %s, %s, %s)\n", -+ _res_opcodes[op], dname, p_class(class), p_type(type)); -+#endif -+ /* -+ * Initialize header fields. -+ */ -+ if ((buf == NULL) || (buflen < HFIXEDSZ)) -+ return (-1); -+ memset(buf, 0, HFIXEDSZ); -+ hp = (HEADER *) buf; -+ /* We randomize the IDs every time. The old code just -+ incremented by one after the initial randomization which -+ still predictable if the application does multiple -+ requests. */ -+#if 0 -+ hp->id = htons(++statp->id); -+#else -+ hp->id = htons(statp->id); -+ int randombits; -+ do -+ { -+#ifdef RANDOM_BITS -+ RANDOM_BITS (randombits); -+#else -+ struct timeval tv; -+ gettimeofday (&tv, NULL); -+ randombits = (tv.tv_sec << 8) ^ tv.tv_usec; -+#endif -+ } -+ while ((randombits & 0xffff) == 0); -+ statp->id = (statp->id + randombits) & 0xffff; -+#endif -+ hp->opcode = op; -+ hp->rd = (statp->options & RES_RECURSE) != 0; -+ hp->rcode = NOERROR; -+ cp = buf + HFIXEDSZ; -+ buflen -= HFIXEDSZ; -+ dpp = dnptrs; -+ *dpp++ = buf; -+ *dpp++ = NULL; -+ lastdnptr = dnptrs + sizeof dnptrs / sizeof dnptrs[0]; -+ /* -+ * perform opcode specific processing -+ */ -+ switch (op) { -+ case QUERY: /*FALLTHROUGH*/ -+ case NS_NOTIFY_OP: -+ if ((buflen -= QFIXEDSZ) < 0) -+ return (-1); -+ if ((n = dn_comp(dname, cp, buflen, dnptrs, lastdnptr)) < 0) -+ return (-1); -+ cp += n; -+ buflen -= n; -+ __putshort(type, cp); -+ cp += INT16SZ; -+ __putshort(class, cp); -+ cp += INT16SZ; -+ hp->qdcount = htons(1); -+ if (op == QUERY || data == NULL) -+ break; -+ /* -+ * Make an additional record for completion domain. -+ */ -+ buflen -= RRFIXEDSZ; -+ n = dn_comp((char *)data, cp, buflen, dnptrs, lastdnptr); -+ if (n < 0) -+ return (-1); -+ cp += n; -+ buflen -= n; -+ __putshort(T_NULL, cp); -+ cp += INT16SZ; -+ __putshort(class, cp); -+ cp += INT16SZ; -+ __putlong(0, cp); -+ cp += INT32SZ; -+ __putshort(0, cp); -+ cp += INT16SZ; -+ hp->arcount = htons(1); -+ break; -+ -+ case IQUERY: -+ /* -+ * Initialize answer section -+ */ -+ if (buflen < 1 + RRFIXEDSZ + datalen) -+ return (-1); -+ *cp++ = '\0'; /* no domain name */ -+ __putshort(type, cp); -+ cp += INT16SZ; -+ __putshort(class, cp); -+ cp += INT16SZ; -+ __putlong(0, cp); -+ cp += INT32SZ; -+ __putshort(datalen, cp); -+ cp += INT16SZ; -+ if (datalen) { -+ memcpy(cp, data, datalen); -+ cp += datalen; -+ } -+ hp->ancount = htons(1); -+ break; -+ -+ default: -+ return (-1); -+ } -+ return (cp - buf); -+} -+ -+int -+res_mkquery(int op, /* opcode of query */ -+ const char *dname, /* domain name */ -+ int class, int type, /* class and type of query */ -+ const u_char *data, /* resource record data */ -+ int datalen, /* length of data */ -+ const u_char *newrr_in, /* new rr for modify or append */ -+ u_char *buf, /* buffer to put query */ -+ int buflen) /* size of buffer */ -+{ -+ return (res_nmkquery(&_res, op, dname, class, type, -+ data, datalen, -+ newrr_in, buf, buflen)); -+} -+ -+#endif - - void dorequest(char *s,int type,word id) - { diff --git a/net/mtr/patches/502-fix-res_ninit.patch b/net/mtr/patches/502-fix-res_ninit.patch deleted file mode 100644 index 2d9883b4a..000000000 --- a/net/mtr/patches/502-fix-res_ninit.patch +++ /dev/null @@ -1,31 +0,0 @@ ---- a/dns.c -+++ b/dns.c -@@ -1308,28 +1308,6 @@ res_nmkquery(res_state statp, - return (-1); - memset(buf, 0, HFIXEDSZ); - hp = (HEADER *) buf; -- /* We randomize the IDs every time. The old code just -- incremented by one after the initial randomization which -- still predictable if the application does multiple -- requests. */ --#if 0 -- hp->id = htons(++statp->id); --#else -- hp->id = htons(statp->id); -- int randombits; -- do -- { --#ifdef RANDOM_BITS -- RANDOM_BITS (randombits); --#else -- struct timeval tv; -- gettimeofday (&tv, NULL); -- randombits = (tv.tv_sec << 8) ^ tv.tv_usec; --#endif -- } -- while ((randombits & 0xffff) == 0); -- statp->id = (statp->id + randombits) & 0xffff; --#endif - hp->opcode = op; - hp->rd = (statp->options & RES_RECURSE) != 0; - hp->rcode = NOERROR; From 5aae478e24547d79cfefac0fe3562dc0b93b7f21 Mon Sep 17 00:00:00 2001 From: Julen Landa Alustiza Date: Thu, 18 Jun 2015 18:45:04 +0200 Subject: [PATCH 603/681] bwm-ng: fix building with gcc-security enabled Signed-off-by: Julen Landa Alustiza --- net/bwm-ng/Makefile | 4 ++-- net/bwm-ng/patches/0001-fix-gcc-security-build.patch | 11 +++++++++++ 2 files changed, 13 insertions(+), 2 deletions(-) create mode 100644 net/bwm-ng/patches/0001-fix-gcc-security-build.patch diff --git a/net/bwm-ng/Makefile b/net/bwm-ng/Makefile index be017cc05..f2084bec9 100644 --- a/net/bwm-ng/Makefile +++ b/net/bwm-ng/Makefile @@ -1,12 +1,12 @@ # -# Copyright (C) 2014 OpenWrt.org +# Copyright (C) 2014-2015 OpenWrt.org # include $(TOPDIR)/rules.mk PKG_NAME:=bwm-ng PKG_VERSION:=0.6 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://www.gropp.org/bwm-ng diff --git a/net/bwm-ng/patches/0001-fix-gcc-security-build.patch b/net/bwm-ng/patches/0001-fix-gcc-security-build.patch new file mode 100644 index 000000000..742e45d73 --- /dev/null +++ b/net/bwm-ng/patches/0001-fix-gcc-security-build.patch @@ -0,0 +1,11 @@ +--- a/src/output.c ++++ b/src/output.c +@@ -234,7 +234,7 @@ int print_header(int option) { + if (output_method==PLAIN_OUT && ansi_output) printf("\033[1;2H"); + printf("bwm-ng v" VERSION " (delay %2.3fs); ",(float)delay/1000); + if (output_method==PLAIN_OUT) printf("press 'ctrl-c' to end this%s",(ansi_output ? "\033[2;2H" : "")); else printf("input: "); +- printf(input2str()); ++ printf("%s\n",input2str()); + printf("%s\n",show_all_if2str()); + if (output_method==PLAIN_OUT) { + if (ansi_output) From 4004ec2c758dc1a34adf79c6759b6d5060bda037 Mon Sep 17 00:00:00 2001 From: Jo-Philipp Wich Date: Thu, 18 Jun 2015 19:48:17 +0200 Subject: [PATCH 604/681] tinc: fix musl compatibility Let configure include `sys/if_tun.h` when testing for `netinet/if_ether.h` to detect the Kernel/libc header conflict on musl. After this patch, configure will correctly detect `netinet/if_ether.h` as unusable and the subsequent compilation will not attempt to use it. Fixes the following compatibility error: In file included from .../staging_dir/toolchain-mips_mips32_gcc-4.8-linaro_musl-1.1.9/include/linux/if_tun.h:20:0, from linux/device.c:24: .../staging_dir/toolchain-mips_mips32_gcc-4.8-linaro_musl-1.1.9/include/linux/if_ether.h:137:8: error: redefinition of 'struct ethhdr' struct ethhdr { ^ In file included from .../staging_dir/toolchain-mips_mips32_gcc-4.8-linaro_musl-1.1.9/include/net/ethernet.h:10:0, from linux/../have.h:180, from linux/../system.h:26, from linux/device.c:21: .../staging_dir/toolchain-mips_mips32_gcc-4.8-linaro_musl-1.1.9/include/netinet/if_ether.h:96:8: note: originally defined here struct ethhdr { ^ make[5]: *** [linux/device.o] Error 1 Signed-off-by: Jo-Philipp Wich --- net/tinc/Makefile | 4 ++-- net/tinc/patches/100-musl-compat.patch | 11 +++++++++++ 2 files changed, 13 insertions(+), 2 deletions(-) create mode 100644 net/tinc/patches/100-musl-compat.patch diff --git a/net/tinc/Makefile b/net/tinc/Makefile index 0656ec983..1facb1e13 100644 --- a/net/tinc/Makefile +++ b/net/tinc/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2007-2014 OpenWrt.org +# Copyright (C) 2007-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=tinc PKG_VERSION:=1.0.25 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://www.tinc-vpn.org/packages diff --git a/net/tinc/patches/100-musl-compat.patch b/net/tinc/patches/100-musl-compat.patch new file mode 100644 index 000000000..e0910b150 --- /dev/null +++ b/net/tinc/patches/100-musl-compat.patch @@ -0,0 +1,11 @@ +--- a/src/have.h ++++ b/src/have.h +@@ -196,4 +196,8 @@ + #include + #endif + ++#ifdef HAVE_LINUX_IF_TUN_H ++#include ++#endif ++ + #endif /* __TINC_SYSTEM_H__ */ From e55822ec2b5f6b94c85113de1608fd75830b849c Mon Sep 17 00:00:00 2001 From: Jo-Philipp Wich Date: Thu, 18 Jun 2015 20:16:34 +0200 Subject: [PATCH 605/681] tgt: fix musl compatibility - Include `sys/user.h` if `__WORDSIZE` is undefined - Add `fcntl.h` to `libscc.c` in order to declare `loff_t` Signed-off-by: Jo-Philipp Wich --- net/tgt/Makefile | 4 +-- net/tgt/patches/100-musl-compat.patch | 36 +++++++++++++++++++++++++++ 2 files changed, 38 insertions(+), 2 deletions(-) create mode 100644 net/tgt/patches/100-musl-compat.patch diff --git a/net/tgt/Makefile b/net/tgt/Makefile index 874a9309c..77e518005 100644 --- a/net/tgt/Makefile +++ b/net/tgt/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2012-2014 OpenWrt.org +# Copyright (C) 2012-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=tgt PKG_VERSION:=1.0.53 PKG_REV:=9764e0afd9a7115e356fc85569a780f9003c4eac -PKG_RELEASE:=3 +PKG_RELEASE:=4 PKG_USE_MIPS16:=0 PKG_SOURCE_PROTO:=git diff --git a/net/tgt/patches/100-musl-compat.patch b/net/tgt/patches/100-musl-compat.patch new file mode 100644 index 000000000..4d84955b4 --- /dev/null +++ b/net/tgt/patches/100-musl-compat.patch @@ -0,0 +1,36 @@ +--- a/usr/tgtd.h ++++ b/usr/tgtd.h +@@ -9,6 +9,10 @@ + #include + #endif + ++#ifndef __WORDSIZE ++#include ++#endif ++ + struct concat_buf; + + #define NR_SCSI_OPCODES 256 +--- a/usr/util.h ++++ b/usr/util.h +@@ -16,6 +16,10 @@ + #include + #include + ++#ifndef __WORDSIZE ++#include ++#endif ++ + #include "be_byteshift.h" + + #define roundup(x, y) ((((x) + ((y) - 1)) / (y)) * (y)) +--- a/usr/libssc.c ++++ b/usr/libssc.c +@@ -23,6 +23,7 @@ + #include + #include + #include ++#include + #include "bs_ssc.h" + #include "ssc.h" + #include "be_byteshift.h" From b2aba4640687831eca12aed3af530d1c6710bc11 Mon Sep 17 00:00:00 2001 From: Jo-Philipp Wich Date: Thu, 18 Jun 2015 20:32:50 +0200 Subject: [PATCH 606/681] tcsh: fix musl compatibility Avoid using `union wait` under musl as it does not provide this definition. Implement solution suggested by http://www.openwall.com/lists/musl/2013/06/21/4 Signed-off-by: Jo-Philipp Wich --- utils/tcsh/Makefile | 4 ++-- utils/tcsh/patches/100-musl-compat.patch | 11 +++++++++++ 2 files changed, 13 insertions(+), 2 deletions(-) create mode 100644 utils/tcsh/patches/100-musl-compat.patch diff --git a/utils/tcsh/Makefile b/utils/tcsh/Makefile index e2b6b4fdc..2c68a4a0d 100644 --- a/utils/tcsh/Makefile +++ b/utils/tcsh/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2011-2014 OpenWrt.org +# Copyright (C) 2011-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -8,7 +8,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=tcsh PKG_VERSION:=6.19.00 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://ftp.funet.fi/pub/mirrors/ftp.astron.com/pub/tcsh/ diff --git a/utils/tcsh/patches/100-musl-compat.patch b/utils/tcsh/patches/100-musl-compat.patch new file mode 100644 index 000000000..29ebcfc0e --- /dev/null +++ b/utils/tcsh/patches/100-musl-compat.patch @@ -0,0 +1,11 @@ +--- a/sh.proc.c ++++ b/sh.proc.c +@@ -48,7 +48,7 @@ RCSID("$tcsh: sh.proc.c,v 3.127 2015/02/ + #endif /* aiws */ + + #if defined(_BSD) || (defined(IRIS4D) && __STDC__) || defined(__lucid) || defined(__linux__) || defined(__GNU__) || defined(__GLIBC__) +-# if !defined(__ANDROID__) ++# if !(defined(__ANDROID__) || (defined(__linux__) && !defined(__GLIBC__))) + # define BSDWAIT + # endif + #endif /* _BSD || (IRIS4D && __STDC__) || __lucid || glibc */ From 431ad5f6828bda7bc10ae03dc5354da6eea0e6f6 Mon Sep 17 00:00:00 2001 From: Jo-Philipp Wich Date: Thu, 18 Jun 2015 20:42:00 +0200 Subject: [PATCH 607/681] sysstat: fix musl compatibility Add missing `limits.h` and `sys/types.h` includes to the appropriate source files. Signed-off-by: Jo-Philipp Wich --- utils/sysstat/Makefile | 2 +- utils/sysstat/patches/100-musl-compat.patch | 30 +++++++++++++++++++++ 2 files changed, 31 insertions(+), 1 deletion(-) create mode 100644 utils/sysstat/patches/100-musl-compat.patch diff --git a/utils/sysstat/Makefile b/utils/sysstat/Makefile index 0c463815d..3e9457b25 100644 --- a/utils/sysstat/Makefile +++ b/utils/sysstat/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=sysstat PKG_VERSION:=11.0.4 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_LICENSE:=GPL-2.0 PKG_MAINTAINER:=Marko Ratkaj diff --git a/utils/sysstat/patches/100-musl-compat.patch b/utils/sysstat/patches/100-musl-compat.patch new file mode 100644 index 000000000..06c781327 --- /dev/null +++ b/utils/sysstat/patches/100-musl-compat.patch @@ -0,0 +1,30 @@ +--- a/sa_common.c ++++ b/sa_common.c +@@ -28,6 +28,7 @@ + #include + #include + #include ++#include + #include + #include + +--- a/common.c ++++ b/common.c +@@ -30,6 +30,7 @@ + #include + #include + #include ++#include + + #include "version.h" + #include "common.h" +--- a/ioconf.c ++++ b/ioconf.c +@@ -27,6 +27,7 @@ + #include + #include + #include ++#include + + #include "ioconf.h" + #include "common.h" From 63fa44476d4510d9686d331fab8d8132f1d06ae4 Mon Sep 17 00:00:00 2001 From: Ted Hess Date: Thu, 18 Jun 2015 15:06:29 -0400 Subject: [PATCH 608/681] mocp: Fix musl compatibility Signed-off-by: Ted Hess --- sound/mocp/Makefile | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/sound/mocp/Makefile b/sound/mocp/Makefile index 5552ec962..d1917bfbe 100644 --- a/sound/mocp/Makefile +++ b/sound/mocp/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=moc PKG_VERSION:=2.5.0 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 PKG_SOURCE_URL:=http://ftp.daper.net/pub/soft/moc/stable/ @@ -38,6 +38,8 @@ define Package/moc/description MOC (music on console) is a console audio player for LINUX/UNIX designed to be powerful and easy to use. endef +TARGET_CFLAGS+=-D_GNU_SOURCE + define Build/Configure $(call Build/Configure/Default, \ $(if $(CONFIG_BUILD_PATENTED),,--without-mp3) \ From 4bd4272fff4c426758d4153ef99f07c2b8d2cbdb Mon Sep 17 00:00:00 2001 From: Ted Hess Date: Thu, 18 Jun 2015 16:27:18 -0400 Subject: [PATCH 609/681] gst1-libav: Fix musl compatibility Signed-off-by: Ted Hess --- multimedia/gst1-libav/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/multimedia/gst1-libav/Makefile b/multimedia/gst1-libav/Makefile index 3137e000e..36a25293a 100644 --- a/multimedia/gst1-libav/Makefile +++ b/multimedia/gst1-libav/Makefile @@ -185,7 +185,7 @@ CONFIGURE_ARGS += \ --disable-yasm" # XXX: trick to force use of embedded Libav headers -TARGET_CFLAGS += $(TARGET_CPPFLAGS) +TARGET_CFLAGS += $(TARGET_CPPFLAGS) -D_GNU_SOURCE TARGET_CPPFLAGS := TARGET_LDFLAGS += $(FPIC) From 273d4bd6a79038d2b2fb89409db4d4faead62749 Mon Sep 17 00:00:00 2001 From: Marcel Denia Date: Tue, 9 Jun 2015 21:31:26 +0200 Subject: [PATCH 610/681] perl: Have perl's major version number in one central place This will simplify updating the package in the future. Signed-off-by: Marcel Denia --- lang/perl/Makefile | 29 ++++++++++++++++------------- lang/perl/files/perl-run_tests.sh | 2 +- lang/perl/perlmod.mk | 8 +++++--- 3 files changed, 22 insertions(+), 17 deletions(-) diff --git a/lang/perl/Makefile b/lang/perl/Makefile index 5780a6240..99bc83d57 100644 --- a/lang/perl/Makefile +++ b/lang/perl/Makefile @@ -12,7 +12,7 @@ PKG_VERSION:=5.20.2 PKG_RELEASE:=3 PKG_SOURCE_URL:=ftp://ftp.cpan.org/pub/CPAN/src/5.0 \ - http://www.cpan.org/src/5.0/perl-5.20.0.tar.gz \ + http://www.cpan.org/src/5.0 \ ftp://ftp.mpi-sb.mpg.de/pub/perl/CPAN/src/5.0 \ http://ftp.mpi-sb.mpg.de/pub/perl/CPAN/src/5.0 \ ftp://ftp.gmd.de/mirrors/CPAN/src/5.0 \ @@ -157,8 +157,8 @@ define Build/Compile endef define Build/InstallDev - $(INSTALL_DIR) $(1)/usr/lib/perl5/5.20 - $(CP) $(PKG_INSTALL_DIR)/usr/lib/perl5/5.20 $(1)/usr/lib/perl5/ + $(INSTALL_DIR) $(1)/usr/lib/perl5/$(PERL_VERSION) + $(CP) $(PKG_INSTALL_DIR)/usr/lib/perl5/$(PERL_VERSION) $(1)/usr/lib/perl5/ endef define Package/perl/install @@ -166,8 +166,8 @@ define Package/perl/install $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/perl$(PKG_VERSION) $(1)/usr/bin ln -nsf perl$(PKG_VERSION) $(1)/usr/bin/perl - $(INSTALL_DIR) $(1)/usr/lib/perl5/5.20/CORE - $(CP) $(PKG_INSTALL_DIR)/usr/lib/perl5/5.20/CORE/libperl.so $(1)/usr/lib/perl5/5.20/CORE/ + $(INSTALL_DIR) $(1)/usr/lib/perl5/$(PERL_VERSION)/CORE + $(CP) $(PKG_INSTALL_DIR)/usr/lib/perl5/$(PERL_VERSION)/CORE/libperl.so $(1)/usr/lib/perl5/$(PERL_VERSION)/CORE/ endef @@ -191,9 +191,9 @@ define Package/perl-tests-common/install $(INSTALL_DIR) $(1)/$(PERL_TESTSDIR) $(INSTALL_DIR) $(1)/$(PERL_TESTSDIR)/Porting $(INSTALL_DIR) $(1)/$(PERL_TESTSDIR)/regen - $(INSTALL_DIR) $(1)/usr/lib/perl5/5.20/XS - $(INSTALL_DIR) $(1)/usr/lib/perl5/5.20/auto/XS - $(INSTALL_DIR) $(1)/usr/lib/perl5/5.20/unicore + $(INSTALL_DIR) $(1)/usr/lib/perl5/$(PERL_VERSION)/XS + $(INSTALL_DIR) $(1)/usr/lib/perl5/$(PERL_VERSION)/auto/XS + $(INSTALL_DIR) $(1)/usr/lib/perl5/$(PERL_VERSION)/unicore $(CP) $(PKG_BUILD_DIR)/t $(1)/$(PERL_TESTSDIR) $(CP) $(PKG_BUILD_DIR)/Porting $(1)/$(PERL_TESTSDIR) @@ -202,12 +202,15 @@ define Package/perl-tests-common/install $(CP) $(PKG_BUILD_DIR)/TestInit.pm $(1)/$(PERL_TESTSDIR) $(CP) $(PKG_BUILD_DIR)/vutil.c $(1)/$(PERL_TESTSDIR) $(CP) $(PKG_BUILD_DIR)/vxs.inc $(1)/$(PERL_TESTSDIR) - $(CP) $(PKG_BUILD_DIR)/lib/XS $(1)/usr/lib/perl5/5.20/ - $(CP) $(PKG_BUILD_DIR)/lib/auto/XS $(1)/usr/lib/perl5/5.20/auto - $(CP) $(PKG_BUILD_DIR)/lib/vmsish.pm $(1)/usr/lib/perl5/5.20/ - $(CP) $(PKG_BUILD_DIR)/lib/unicore/TestProp.pl $(1)/usr/lib/perl5/5.20/unicore + $(CP) $(PKG_BUILD_DIR)/lib/XS $(1)/usr/lib/perl5/$(PERL_VERSION)/ + $(CP) $(PKG_BUILD_DIR)/lib/auto/XS $(1)/usr/lib/perl5/$(PERL_VERSION)/auto + $(CP) $(PKG_BUILD_DIR)/lib/vmsish.pm $(1)/usr/lib/perl5/$(PERL_VERSION)/ + $(CP) $(PKG_BUILD_DIR)/lib/unicore/TestProp.pl $(1)/usr/lib/perl5/$(PERL_VERSION)/unicore $(CP) files/perl-run_tests.sh $(1)/$(PERL_TESTSDIR)/run_tests.sh - sed -e 's!%%PERL_DISABLEDTESTS%%!$(PERL_DISABLEDTESTS)!' -i $(1)/$(PERL_TESTSDIR)/run_tests.sh + sed \ + -e 's!%%PERL_DISABLEDTESTS%%!$(PERL_DISABLEDTESTS)!' \ + -e 's!%%PERL_VERSION%%!$(PERL_VERSION)!' \ + -i $(1)/$(PERL_TESTSDIR)/run_tests.sh $(CP) $(PKG_BUILD_DIR)/config_h.SH $(1)/$(PERL_TESTSDIR) $(CP) $(PKG_BUILD_DIR)/perl.h $(1)/$(PERL_TESTSDIR) endef diff --git a/lang/perl/files/perl-run_tests.sh b/lang/perl/files/perl-run_tests.sh index af6a39c94..288191b43 100755 --- a/lang/perl/files/perl-run_tests.sh +++ b/lang/perl/files/perl-run_tests.sh @@ -1,7 +1,7 @@ #!/bin/sh PERL_TESTSDIR="/usr/share/perl/perl-tests" -PERL_LIBDIR="/usr/lib/perl5/5.20/" +PERL_LIBDIR="/usr/lib/perl5/%%PERL_VERSION%%/" PERL_DISABLEDTESTS="%%PERL_DISABLEDTESTS%%" if [ ! -f "$PERL_TESTSDIR/__prepared" ]; then diff --git a/lang/perl/perlmod.mk b/lang/perl/perlmod.mk index 146a34858..16fc4798d 100644 --- a/lang/perl/perlmod.mk +++ b/lang/perl/perlmod.mk @@ -1,13 +1,15 @@ # This makefile simplifies perl module builds. # +PERL_VERSION:=5.20 + # Build environment HOST_PERL_PREFIX:=$(STAGING_DIR_HOST)/usr ifneq ($(CONFIG_USE_GLIBC),) EXTRA_LIBS:=bsd EXTRA_LIBDIRS:=$(STAGING_DIR)/lib endif -PERL_CMD:=$(STAGING_DIR_HOST)/usr/bin/perl5.20.0 +PERL_CMD:=$(STAGING_DIR_HOST)/usr/bin/perl$(PERL_VERSION).0 MOD_CFLAGS_PERL:=-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 $(TARGET_CFLAGS) $(TARGET_CPPFLAGS) ifdef CONFIG_PERL_THREADS @@ -15,7 +17,7 @@ ifdef CONFIG_PERL_THREADS endif # Module install prefix -PERL_SITELIB:=/usr/lib/perl5/5.20 +PERL_SITELIB:=/usr/lib/perl5/$(PERL_VERSION) PERL_TESTSDIR:=/usr/share/perl/perl-tests PERLBASE_TESTSDIR:=/usr/share/perl/perlbase-tests PERLMOD_TESTSDIR:=/usr/share/perl/perlmod-tests @@ -102,7 +104,7 @@ define perlmod/Configure LINKTYPE=dynamic \ DESTDIR=$(PKG_INSTALL_DIR) \ ); - sed 's!^PERL_INC = .*!PERL_INC = $(STAGING_DIR)/usr/lib/perl5/5.20/CORE/!' -i $(PKG_BUILD_DIR)/Makefile + sed 's!^PERL_INC = .*!PERL_INC = $(STAGING_DIR)/usr/lib/perl5/$(PERL_VERSION)/CORE/!' -i $(PKG_BUILD_DIR)/Makefile endef define perlmod/Compile From 5cdd6755f3ad003f117489f022d7c6d423c886d4 Mon Sep 17 00:00:00 2001 From: Marcel Denia Date: Thu, 11 Jun 2015 18:11:14 +0200 Subject: [PATCH 611/681] perl: Upgrade configuration files to perl 5.22.0 Signed-off-by: Marcel Denia --- lang/perl/files/config.sh-arm-mt.in | 134 +++++++++++++++++------- lang/perl/files/config.sh-arm.in | 134 +++++++++++++++++------- lang/perl/files/config.sh-armeb-mt.in | 134 +++++++++++++++++------- lang/perl/files/config.sh-armeb.in | 134 +++++++++++++++++------- lang/perl/files/config.sh-avr32-mt.in | 134 +++++++++++++++++------- lang/perl/files/config.sh-avr32.in | 134 +++++++++++++++++------- lang/perl/files/config.sh-i486-mt.in | 134 +++++++++++++++++------- lang/perl/files/config.sh-i486.in | 134 +++++++++++++++++------- lang/perl/files/config.sh-mips-mt.in | 134 +++++++++++++++++------- lang/perl/files/config.sh-mips.in | 134 +++++++++++++++++------- lang/perl/files/config.sh-mips64-mt.in | 134 +++++++++++++++++------- lang/perl/files/config.sh-mips64.in | 134 +++++++++++++++++------- lang/perl/files/config.sh-mipsel-mt.in | 134 +++++++++++++++++------- lang/perl/files/config.sh-mipsel.in | 134 +++++++++++++++++------- lang/perl/files/config.sh-powerpc-mt.in | 134 +++++++++++++++++------- lang/perl/files/config.sh-powerpc.in | 134 +++++++++++++++++------- lang/perl/files/config.sh-x86_64-mt.in | 134 +++++++++++++++++------- lang/perl/files/config.sh-x86_64.in | 134 +++++++++++++++++------- 18 files changed, 1782 insertions(+), 630 deletions(-) diff --git a/lang/perl/files/config.sh-arm-mt.in b/lang/perl/files/config.sh-arm-mt.in index c05d4733c..2a7a3db3d 100644 --- a/lang/perl/files/config.sh-arm-mt.in +++ b/lang/perl/files/config.sh-arm-mt.in @@ -13,14 +13,13 @@ # Target system : linux maia 2.6.22 #1 wed jul 11 12:24:09 cest 2007 armv5tel unknown unknown gnulinux Author='' -Date='$Date' +Date='' Header='' -Id='$Id' +Id='' Locker='' -Log='$Log' -Mcc='Mcc' -RCSfile='$RCSfile' -Revision='$Revision' +Log='' +RCSfile='' +Revision='' Source='' State='' _a='.a' @@ -101,10 +100,13 @@ d_SCNfldbl='define' d__fwalk='undef' d_access='define' d_accessx='undef' +d_acosh='define' d_aintl='undef' d_alarm='define' d_archlib='undef' d_asctime_r='define' +d_asinh='define' +d_atanh='define' d_atolf='undef' d_atoll='define' d_attribute_format='define' @@ -114,6 +116,7 @@ d_attribute_noreturn='define' d_attribute_pure='define' d_attribute_unused='define' d_attribute_warn_unused_result='define' +d_backtrace='define' d_bcmp='define' d_bcopy='define' d_bsd='undef' @@ -125,6 +128,7 @@ d_bzero='define' d_c99_variadic_macros='define' d_casti32='define' d_castneg='define' +d_cbrt='define' d_charvspr='undef' d_chown='define' d_chroot='define' @@ -134,6 +138,7 @@ d_clearenv='define' d_closedir='define' d_cmsghdr_s='define' d_const='define' +d_copysign='define' d_copysignl='undef' d_cplusplus='undef' d_crypt='%%CRYPT%%' @@ -149,6 +154,7 @@ d_difftime='define' d_dir_dd_fd='undef' d_dirfd='define' d_dirnamlen='undef' +d_dladdr='define' d_dlerror='define' d_dlopen='define' d_dlsymun='undef' @@ -170,7 +176,11 @@ d_endpwent_r='undef' d_endsent='define' d_endservent_r='undef' d_eofnblk='define' +d_erf='define' +d_erfc='define' d_eunice='undef' +d_exp2='define' +d_expm1='define' d_faststdio='undef' d_fchdir='define' d_fchmod='define' @@ -179,19 +189,27 @@ d_fcntl='define' d_fcntl_can_lock='define' d_fd_macros='define' d_fd_set='define' +d_fdim='define' d_fds_bits='define' +d_fegetround='undef' d_fgetpos='define' d_finite='define' d_finitel='undef' d_flexfnam='define' d_flock='define' d_flockproto='define' +d_fma='define' +d_fmax='define' +d_fmin='define' d_fork='define' d_fp_class='undef' +d_fp_classify='undef' +d_fp_classl='undef' d_fpathconf='define' d_fpclass='undef' -d_fpclassify='undef' +d_fpclassify='define' d_fpclassl='undef' +d_fpgetround='undef' d_fpos64_t='undef' d_frexpl='undef' d_fs_data_s='undef' @@ -264,27 +282,50 @@ d_gnulibc='undef' d_grpasswd='define' d_hasmntopt='define' d_htonl='define' +d_hypot='define' +d_ilogb='define' d_ilogbl='undef' d_inc_version_list='undef' d_index='undef' d_inetaton='define' d_int64_t='define' d_isascii='define' -d_isfinite='undef' +d_isfinite='define' +d_isfinitel='undef' d_isinf='define' +d_isinfl='define' +d_isless='undef' d_isnan='define' d_isnanl='undef' +d_isnormal='define' +d_j0='undef' +d_j0l='undef' d_killpg='define' +d_lc_monetary_2008='define' d_lchown='define' d_ldbl_dig='define' +d_ldexpl='define' +d_lgamma='define' +d_lgamma_r='define' d_libm_lib_version='define' d_link='define' +d_llrint='define' +d_llrintl='define' +d_llround='define' +d_llroundl='define' d_localtime_r='define' d_localtime_r_needs_tzset='define' d_locconv='define' d_lockf='define' +d_log1p='define' +d_log2='define' +d_logb='define' d_longdbl='define' d_longlong='define' +d_lrint='define' +d_lrintl='define' +d_lround='define' +d_lroundl='define' d_lseekproto='define' d_lstat='define' d_madvise='define' @@ -323,6 +364,10 @@ d_msgsnd='define' d_msync='define' d_munmap='define' d_mymalloc='undef' +d_nan='define' +d_nearbyint='define' +d_nextafter='define' +d_nexttoward='undef' d_nice='define' d_nl_langinfo='define' d_nv_preserves_uv='define' @@ -345,6 +390,7 @@ d_pseudofork='undef' d_pthread_atfork='define' d_pthread_attr_setscope='define' d_pthread_yield='define' +d_ptrdiff_t='define' d_pwage='undef' d_pwchange='undef' d_pwclass='undef' @@ -356,19 +402,27 @@ d_pwquota='undef' d_qgcvt='undef' d_quad='define' d_random_r='define' +d_re_comp='undef' d_readdir64_r='define' d_readdir='define' d_readdir_r='define' d_readlink='define' d_readv='define' d_recvmsg='define' +d_regcmp='undef' +d_regcomp='define' +d_remainder='define' +d_remquo='define' d_rename='define' d_rewinddir='define' +d_rint='define' d_rmdir='define' +d_round='define' d_safebcpy='undef' d_safemcpy='undef' d_sanemcmp='define' d_sbrkproto='define' +d_scalbn='define' d_scalbnl='undef' d_sched_yield='define' d_scm_rights='define' @@ -438,6 +492,7 @@ d_srand48_r='define' d_srandom_r='define' d_sresgproto='define' d_sresuproto='define' +d_stat='define' d_statblks='define' d_statfs_f_flags='undef' d_statfs_s='define' @@ -479,12 +534,15 @@ d_tcgetpgrp='define' d_tcsetpgrp='define' d_telldir='define' d_telldirproto='define' +d_tgamma='define' d_time='define' d_times='define' d_tm_tm_gmtoff='define' d_tm_tm_zone='define' d_tmpnam_r='define' +d_trunc='define' d_truncate='define' +d_truncl='define' d_ttyname_r='define' d_tzname='define' d_u32align='undef' @@ -510,7 +568,9 @@ d_vprintf='define' d_vsnprintf='define' d_wait4='define' d_waitpid='define' +d_wcscmp='define' d_wcstombs='define' +d_wcsxfrm='define' d_wctomb='define' d_writev='define' d_xenix='undef' @@ -524,6 +584,7 @@ defvoidused='15' direntrytype='struct dirent' dlext='so' dlsrc='dl_dlopen.xs' +doublekind='3' doublesize='8' drand01='drand48()' drand48_r_proto='REENTRANT_PROTO_I_ST' @@ -542,7 +603,6 @@ endservent_r_proto='0' eunicefix=':' exe_ext='' expr='expr' -extensions='B Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex Time/HiRes Time/Piece Unicode/Normalize XS/APItest XS/Typemap attrs re threads threads/shared Hash/Util/FieldHash Compress/Zlib Errno IO_Compress_Base IO_Compress_Zlib' extras='' fflushNULL='define' fflushall='undef' @@ -615,7 +675,9 @@ i_dbm='undef' i_dirent='define' i_dld='undef' i_dlfcn='define' +i_execinfo='define' i_fcntl='undef' +i_fenv='undef' i_float='define' i_fp='undef' i_fp_class='undef' @@ -641,6 +703,7 @@ i_poll='define' i_prot='undef' i_pthread='define' i_pwd='define' +i_quadmath='define' i_rpcsvcdbm='undef' i_sfio='undef' i_sgtty='undef' @@ -648,6 +711,7 @@ i_shadow='define' i_socks='undef' i_stdarg='define' i_stddef='define' +i_stdint='define' i_stdlib='define' i_string='define' i_sunmath='undef' @@ -728,7 +792,6 @@ issymlink='test -h' ivdformat='"ld"' ivsize='4' ivtype='long' -known_extensions='B Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc NDBM_File ODBM_File Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex Time/HiRes Time/Piece Unicode/Normalize Win32 Win32API/File Win32CORE XS/APItest XS/Typemap attrs re threads threads/shared Hash/Util/FieldHash' ksh='' ld='%%LD%%' lddlflags='-shared %%LDFLAGS%%' @@ -755,6 +818,7 @@ lns='/bin/ln -s' localtime_r_proto='REENTRANT_PROTO_S_TS' locincpth=' ' loclibpth=' ' +longdblkind='0' longdblsize='8' longlongsize='8' longsize='4' @@ -763,10 +827,6 @@ lpr='' ls='ls' lseeksize='8' lseektype='off_t' -mad='undef' -madlyh='' -madlyobj='' -madlysrc='' mail='' mailx='' make='make' @@ -983,6 +1043,7 @@ uquadtype='unsigned long long' use5005threads='undef' use64bitall='undef' use64bitint='undef' +usecbacktrace='undef' usecrosscompile='define' usedl='define' usefaststdio='undef' @@ -997,6 +1058,7 @@ usenm='true' useopcode='true' useperlio='define' useposix='true' +usequadmath='undef' usereentrant='undef' userelocatableinc='undef' usesfio='false' @@ -1064,7 +1126,6 @@ d_clock='define' # New symbols for perl 5.20.0 bin_ELF='define' -bootstrap_charset='undef' charbits='8' charsize='1' d_asctime64='undef' @@ -1099,6 +1160,7 @@ dtrace='' extern_C='extern' hostosname='' i_assert='define' +i_bfd='undef' i_gdbm_ndbm='undef' i_gdbmndbm='undef' i_mallocmalloc='undef' @@ -1136,27 +1198,29 @@ libdb_needs_pthread='N' # These symbols changed from perl 5.10.0 to 5.20.0 and probably will # change again for new versions, so they're included here for # future reference -api_version='20' +api_version='22' # Always set this to the base version, not the patched one! -api_versionstring='5.20.0' -dynamic_ext='B Compress/Raw/Bzip2 Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/DosGlob File/Glob Filter/Util/Call GDBM_File Hash/Util Hash/Util/FieldHash I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc Opcode POSIX PerlIO/encoding PerlIO/mmap PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Tie/Hash/NamedCapture Time/HiRes Time/Piece Unicode/Collate Unicode/Normalize XS/APItest XS/Typemap arybase attributes mro re threads threads/shared' -installarchlib='/usr/lib/perl5/5.20' -installprivlib='/usr/lib/perl5/5.20' -installsitearch='/usr/lib/perl5/5.20' -installsitelib='/usr/lib/perl5/5.20' -nonxs_ext='Archive/Tar Attribute/Handlers AutoLoader B/Debug CGI CPAN CPAN/Meta CPAN/Meta/Requirements CPAN/Meta/YAML Carp Config/Perl/V Devel/SelfStubber Digest Dumpvalue Env Errno Exporter ExtUtils/CBuilder ExtUtils/Command ExtUtils/Constant ExtUtils/Install ExtUtils/MakeMaker ExtUtils/Manifest ExtUtils/Miniperl ExtUtils/ParseXS File/Fetch File/Find File/Path File/Temp FileCache Filter/Simple Getopt/Long HTTP/Tiny I18N/Collate I18N/LangTags IO/Compress IO/Socket/IP IO/Zlib IPC/Cmd IPC/Open3 JSON/PP Locale/Codes Locale/Maketext Locale/Maketext/Simple Math/BigInt Math/BigRat Math/Complex Memoize Module/Build Module/CoreList Module/Load Module/Load/Conditional Module/Loaded Module/Metadata NEXT Net/Ping Package/Constants Params/Check Parse/CPAN/Meta Perl/OSType PerlIO/via/QuotedPrint Pod/Checker Pod/Escapes Pod/Functions Pod/Html Pod/Parser Pod/Perldoc Pod/Simple Pod/Usage Safe Search/Dict SelfLoader Term/ANSIColor Term/Cap Term/Complete Term/ReadLine Test Test/Harness Test/Simple Text/Abbrev Text/Balanced Text/ParseWords Text/Tabs Thread/Queue Thread/Semaphore Tie/File Tie/Memoize Tie/RefHash Time/Local XSLoader autodie autouse base bignum constant encoding/warnings experimental if lib libnet parent perlfaq podlators version' -privlib='/usr/lib/perl5/5.20' -privlibexp='/usr/lib/perl5/5.20' -archlib='/usr/lib/perl5/5.20' -archlibexp='/usr/lib/perl5/5.20' -version='5.20.2' -version_patchlevel_string='version 20 subversion 2' -PERL_VERSION=20 -PERL_API_VERSION=20 -PERL_SUBVERSION=2 -patchlevel='20' -ccdlflags='-fPIC -Wl,-rpath,/usr/lib/perl5/5.20/CORE' -subversion='2' +api_versionstring='5.22.0' +dynamic_ext='B Compress/Raw/Bzip2 Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/DosGlob File/Glob Filter/Util/Call GDBM_File Hash/Util Hash/Util/FieldHash I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc Opcode POSIX PerlIO/encoding PerlIO/mmap PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Tie/Hash/NamedCapture Time/HiRes Time/Piece Unicode/Collate XS/APItest XS/Typemap arybase attributes mro re threads threads/shared' +installarchlib='/usr/lib/perl5/5.22' +installprivlib='/usr/lib/perl5/5.22' +installsitearch='/usr/lib/perl5/5.22' +installsitelib='/usr/lib/perl5/5.22' +nonxs_ext='Archive/Tar Attribute/Handlers AutoLoader B/Debug CPAN CPAN/Meta CPAN/Meta/Requirements CPAN/Meta/YAML Carp Config/Perl/V Devel/SelfStubber Digest Dumpvalue Env Errno Exporter ExtUtils/CBuilder ExtUtils/Command ExtUtils/Constant ExtUtils/Install ExtUtils/MakeMaker ExtUtils/Manifest ExtUtils/Miniperl ExtUtils/ParseXS File/Fetch File/Find File/Path File/Temp FileCache Filter/Simple Getopt/Long HTTP/Tiny I18N/Collate I18N/LangTags IO/Compress IO/Socket/IP IO/Zlib IPC/Cmd IPC/Open3 JSON/PP Locale/Codes Locale/Maketext Locale/Maketext/Simple Math/BigInt Math/BigRat Math/Complex Memoize Module/CoreList Module/Load Module/Load/Conditional Module/Loaded Module/Metadata NEXT Net/Ping Params/Check Parse/CPAN/Meta Perl/OSType PerlIO/via/QuotedPrint Pod/Checker Pod/Escapes Pod/Functions Pod/Html Pod/Parser Pod/Perldoc Pod/Simple Pod/Usage Safe Search/Dict SelfLoader Term/ANSIColor Term/Cap Term/Complete Term/ReadLine Test Test/Harness Test/Simple Text/Abbrev Text/Balanced Text/ParseWords Text/Tabs Thread/Queue Thread/Semaphore Tie/File Tie/Memoize Tie/RefHash Time/Local XSLoader autodie autouse base bignum constant encoding/warnings experimental if lib libnet parent perlfaq podlators Unicode/Normalize version' +privlib='/usr/lib/perl5/5.22' +privlibexp='/usr/lib/perl5/5.22' +archlib='/usr/lib/perl5/5.22' +archlibexp='/usr/lib/perl5/5.22' +version='5.22.0' +version_patchlevel_string='version 22 subversion 0' +PERL_VERSION=22 +PERL_API_VERSION=22 +PERL_SUBVERSION=0 +patchlevel='22' +ccdlflags='-fPIC -Wl,-rpath,/usr/lib/perl5/5.22/CORE' +subversion='0' +extensions='B Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex Time/HiRes Time/Piece XS/APItest XS/Typemap attrs re threads threads/shared Hash/Util/FieldHash Compress/Zlib Errno IO_Compress_Base IO_Compress_Zlib Unicode/Normalize' +known_extensions='B Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc NDBM_File ODBM_File Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex Time/HiRes Time/Piece Unicode/Normalize Win32 Win32API/File Win32CORE XS/APItest XS/Typemap attrs re threads threads/shared Hash/Util/FieldHash' # Make perl use these tools instead of the target binaries during build hostgenerate='%%HOSTGENERATE%%' diff --git a/lang/perl/files/config.sh-arm.in b/lang/perl/files/config.sh-arm.in index d6c4177c5..0403c7cb3 100644 --- a/lang/perl/files/config.sh-arm.in +++ b/lang/perl/files/config.sh-arm.in @@ -13,14 +13,13 @@ # Target system : linux maia 2.6.22 #1 wed jul 11 12:24:09 cest 2007 armv5tel unknown unknown gnulinux Author='' -Date='$Date' +Date='' Header='' -Id='$Id' +Id='' Locker='' -Log='$Log' -Mcc='Mcc' -RCSfile='$RCSfile' -Revision='$Revision' +Log='' +RCSfile='' +Revision='' Source='' State='' _a='.a' @@ -101,10 +100,13 @@ d_SCNfldbl='define' d__fwalk='undef' d_access='define' d_accessx='undef' +d_acosh='define' d_aintl='undef' d_alarm='define' d_archlib='undef' d_asctime_r='undef' +d_asinh='define' +d_atanh='define' d_atolf='undef' d_atoll='define' d_attribute_format='define' @@ -114,6 +116,7 @@ d_attribute_noreturn='define' d_attribute_pure='define' d_attribute_unused='define' d_attribute_warn_unused_result='define' +d_backtrace='define' d_bcmp='define' d_bcopy='define' d_bsd='undef' @@ -125,6 +128,7 @@ d_bzero='define' d_c99_variadic_macros='define' d_casti32='define' d_castneg='define' +d_cbrt='define' d_charvspr='undef' d_chown='define' d_chroot='define' @@ -134,6 +138,7 @@ d_clearenv='define' d_closedir='define' d_cmsghdr_s='define' d_const='define' +d_copysign='define' d_copysignl='undef' d_cplusplus='undef' d_crypt='define' @@ -149,6 +154,7 @@ d_difftime='define' d_dir_dd_fd='undef' d_dirfd='define' d_dirnamlen='undef' +d_dladdr='define' d_dlerror='define' d_dlopen='define' d_dlsymun='undef' @@ -170,7 +176,11 @@ d_endpwent_r='undef' d_endsent='define' d_endservent_r='undef' d_eofnblk='define' +d_erf='define' +d_erfc='define' d_eunice='undef' +d_exp2='define' +d_expm1='define' d_faststdio='undef' d_fchdir='define' d_fchmod='define' @@ -179,19 +189,27 @@ d_fcntl='define' d_fcntl_can_lock='define' d_fd_macros='define' d_fd_set='define' +d_fdim='define' d_fds_bits='undef' +d_fegetround='undef' d_fgetpos='define' d_finite='define' d_finitel='undef' d_flexfnam='define' d_flock='define' d_flockproto='define' +d_fma='define' +d_fmax='define' +d_fmin='define' d_fork='define' d_fp_class='undef' +d_fp_classify='undef' +d_fp_classl='undef' d_fpathconf='define' d_fpclass='undef' -d_fpclassify='undef' +d_fpclassify='define' d_fpclassl='undef' +d_fpgetround='undef' d_fpos64_t='undef' d_frexpl='undef' d_fs_data_s='undef' @@ -264,27 +282,50 @@ d_gnulibc='undef' d_grpasswd='define' d_hasmntopt='define' d_htonl='define' +d_hypot='define' +d_ilogb='define' d_ilogbl='undef' d_inc_version_list='undef' d_index='undef' d_inetaton='define' d_int64_t='define' d_isascii='define' -d_isfinite='undef' +d_isfinite='define' +d_isfinitel='undef' d_isinf='define' +d_isinfl='define' +d_isless='undef' d_isnan='define' d_isnanl='undef' +d_isnormal='define' +d_j0='undef' +d_j0l='undef' d_killpg='define' +d_lc_monetary_2008='define' d_lchown='define' d_ldbl_dig='define' +d_ldexpl='define' +d_lgamma='define' +d_lgamma_r='define' d_libm_lib_version='define' d_link='define' +d_llrint='define' +d_llrintl='define' +d_llround='define' +d_llroundl='define' d_localtime_r='undef' d_localtime_r_needs_tzset='undef' d_locconv='define' d_lockf='define' +d_log1p='define' +d_log2='define' +d_logb='define' d_longdbl='define' d_longlong='define' +d_lrint='define' +d_lrintl='define' +d_lround='define' +d_lroundl='define' d_lseekproto='define' d_lstat='define' d_madvise='define' @@ -323,6 +364,10 @@ d_msgsnd='define' d_msync='define' d_munmap='define' d_mymalloc='undef' +d_nan='define' +d_nearbyint='define' +d_nextafter='define' +d_nexttoward='undef' d_nice='define' d_nl_langinfo='define' d_nv_preserves_uv='define' @@ -345,6 +390,7 @@ d_pseudofork='undef' d_pthread_atfork='undef' d_pthread_attr_setscope='define' d_pthread_yield='undef' +d_ptrdiff_t='define' d_pwage='undef' d_pwchange='undef' d_pwclass='undef' @@ -356,19 +402,27 @@ d_pwquota='undef' d_qgcvt='undef' d_quad='define' d_random_r='undef' +d_re_comp='undef' d_readdir64_r='undef' d_readdir='define' d_readdir_r='undef' d_readlink='define' d_readv='define' d_recvmsg='define' +d_regcmp='undef' +d_regcomp='define' +d_remainder='define' +d_remquo='define' d_rename='define' d_rewinddir='define' +d_rint='define' d_rmdir='define' +d_round='define' d_safebcpy='undef' d_safemcpy='undef' d_sanemcmp='define' d_sbrkproto='define' +d_scalbn='define' d_scalbnl='undef' d_sched_yield='define' d_scm_rights='define' @@ -438,6 +492,7 @@ d_srand48_r='undef' d_srandom_r='undef' d_sresgproto='undef' d_sresuproto='undef' +d_stat='define' d_statblks='define' d_statfs_f_flags='undef' d_statfs_s='define' @@ -479,12 +534,15 @@ d_tcgetpgrp='define' d_tcsetpgrp='define' d_telldir='define' d_telldirproto='define' +d_tgamma='define' d_time='define' d_times='define' d_tm_tm_gmtoff='define' d_tm_tm_zone='define' d_tmpnam_r='undef' +d_trunc='define' d_truncate='define' +d_truncl='define' d_ttyname_r='undef' d_tzname='define' d_u32align='undef' @@ -510,7 +568,9 @@ d_vprintf='define' d_vsnprintf='define' d_wait4='define' d_waitpid='define' +d_wcscmp='define' d_wcstombs='define' +d_wcsxfrm='define' d_wctomb='define' d_writev='define' d_xenix='undef' @@ -524,6 +584,7 @@ defvoidused='15' direntrytype='struct dirent' dlext='so' dlsrc='dl_dlopen.xs' +doublekind='3' doublesize='8' drand01='drand48()' drand48_r_proto='0' @@ -542,7 +603,6 @@ endservent_r_proto='0' eunicefix=':' exe_ext='' expr='expr' -extensions='B Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex Time/HiRes Time/Piece Unicode/Normalize XS/APItest XS/Typemap attrs re threads threads/shared Hash/Util/FieldHash Compress/Zlib Errno IO_Compress_Base IO_Compress_Zlib' extras='' fflushNULL='define' fflushall='undef' @@ -615,7 +675,9 @@ i_dbm='undef' i_dirent='define' i_dld='undef' i_dlfcn='define' +i_execinfo='define' i_fcntl='undef' +i_fenv='undef' i_float='define' i_fp='undef' i_fp_class='undef' @@ -641,6 +703,7 @@ i_poll='define' i_prot='undef' i_pthread='define' i_pwd='define' +i_quadmath='define' i_rpcsvcdbm='undef' i_sfio='undef' i_sgtty='undef' @@ -648,6 +711,7 @@ i_shadow='define' i_socks='undef' i_stdarg='define' i_stddef='define' +i_stdint='define' i_stdlib='define' i_string='define' i_sunmath='undef' @@ -728,7 +792,6 @@ issymlink='test -h' ivdformat='"ld"' ivsize='4' ivtype='long' -known_extensions='B Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc NDBM_File ODBM_File Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex Time/HiRes Time/Piece Unicode/Normalize Win32 Win32API/File Win32CORE XS/APItest XS/Typemap attrs re threads threads/shared Hash/Util/FieldHash' ksh='' ld='%%LD%%' lddlflags='-shared %%LDFLAGS%%' @@ -755,6 +818,7 @@ lns='/bin/ln -s' localtime_r_proto='0' locincpth=' ' loclibpth=' ' +longdblkind='0' longdblsize='8' longlongsize='8' longsize='4' @@ -763,10 +827,6 @@ lpr='' ls='ls' lseeksize='8' lseektype='off_t' -mad='undef' -madlyh='' -madlyobj='' -madlysrc='' mail='' mailx='' make='make' @@ -983,6 +1043,7 @@ uquadtype='unsigned long long' use5005threads='undef' use64bitall='undef' use64bitint='undef' +usecbacktrace='undef' usecrosscompile='define' usedl='define' usefaststdio='undef' @@ -997,6 +1058,7 @@ usenm='true' useopcode='true' useperlio='define' useposix='true' +usequadmath='undef' usereentrant='undef' userelocatableinc='undef' usesfio='false' @@ -1063,7 +1125,6 @@ d_clock='define' # New symbols for perl 5.20.0 bin_ELF='define' -bootstrap_charset='undef' charbits='8' charsize='1' d_asctime64='undef' @@ -1098,6 +1159,7 @@ dtrace='' extern_C='extern' hostosname='' i_assert='define' +i_bfd='undef' i_gdbm_ndbm='undef' i_gdbmndbm='undef' i_mallocmalloc='undef' @@ -1135,27 +1197,29 @@ libdb_needs_pthread='N' # These symbols changed from perl 5.10.0 to 5.20.0 and probably will # change again for new versions, so they're included here for # future reference -api_version='20' +api_version='22' # Always set this to the base version, not the patched one! -api_versionstring='5.20.0' -dynamic_ext='B Compress/Raw/Bzip2 Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/DosGlob File/Glob Filter/Util/Call GDBM_File Hash/Util Hash/Util/FieldHash I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc Opcode POSIX PerlIO/encoding PerlIO/mmap PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Tie/Hash/NamedCapture Time/HiRes Time/Piece Unicode/Collate Unicode/Normalize XS/APItest XS/Typemap arybase attributes mro re threads threads/shared' -installarchlib='/usr/lib/perl5/5.20' -installprivlib='/usr/lib/perl5/5.20' -installsitearch='/usr/lib/perl5/5.20' -installsitelib='/usr/lib/perl5/5.20' -nonxs_ext='Archive/Tar Attribute/Handlers AutoLoader B/Debug CGI CPAN CPAN/Meta CPAN/Meta/Requirements CPAN/Meta/YAML Carp Config/Perl/V Devel/SelfStubber Digest Dumpvalue Env Errno Exporter ExtUtils/CBuilder ExtUtils/Command ExtUtils/Constant ExtUtils/Install ExtUtils/MakeMaker ExtUtils/Manifest ExtUtils/Miniperl ExtUtils/ParseXS File/Fetch File/Find File/Path File/Temp FileCache Filter/Simple Getopt/Long HTTP/Tiny I18N/Collate I18N/LangTags IO/Compress IO/Socket/IP IO/Zlib IPC/Cmd IPC/Open3 JSON/PP Locale/Codes Locale/Maketext Locale/Maketext/Simple Math/BigInt Math/BigRat Math/Complex Memoize Module/Build Module/CoreList Module/Load Module/Load/Conditional Module/Loaded Module/Metadata NEXT Net/Ping Package/Constants Params/Check Parse/CPAN/Meta Perl/OSType PerlIO/via/QuotedPrint Pod/Checker Pod/Escapes Pod/Functions Pod/Html Pod/Parser Pod/Perldoc Pod/Simple Pod/Usage Safe Search/Dict SelfLoader Term/ANSIColor Term/Cap Term/Complete Term/ReadLine Test Test/Harness Test/Simple Text/Abbrev Text/Balanced Text/ParseWords Text/Tabs Thread/Queue Thread/Semaphore Tie/File Tie/Memoize Tie/RefHash Time/Local XSLoader autodie autouse base bignum constant encoding/warnings experimental if lib libnet parent perlfaq podlators version' -privlib='/usr/lib/perl5/5.20' -privlibexp='/usr/lib/perl5/5.20' -archlib='/usr/lib/perl5/5.20' -archlibexp='/usr/lib/perl5/5.20' -version='5.20.2' -version_patchlevel_string='version 20 subversion 2' -PERL_VERSION=20 -PERL_API_VERSION=20 -PERL_SUBVERSION=2 -patchlevel='20' -ccdlflags='-fPIC -Wl,-rpath,/usr/lib/perl5/5.20/CORE' -subversion='2' +api_versionstring='5.22.0' +dynamic_ext='B Compress/Raw/Bzip2 Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/DosGlob File/Glob Filter/Util/Call GDBM_File Hash/Util Hash/Util/FieldHash I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc Opcode POSIX PerlIO/encoding PerlIO/mmap PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Tie/Hash/NamedCapture Time/HiRes Time/Piece Unicode/Collate XS/APItest XS/Typemap arybase attributes mro re threads threads/shared' +installarchlib='/usr/lib/perl5/5.22' +installprivlib='/usr/lib/perl5/5.22' +installsitearch='/usr/lib/perl5/5.22' +installsitelib='/usr/lib/perl5/5.22' +nonxs_ext='Archive/Tar Attribute/Handlers AutoLoader B/Debug CPAN CPAN/Meta CPAN/Meta/Requirements CPAN/Meta/YAML Carp Config/Perl/V Devel/SelfStubber Digest Dumpvalue Env Errno Exporter ExtUtils/CBuilder ExtUtils/Command ExtUtils/Constant ExtUtils/Install ExtUtils/MakeMaker ExtUtils/Manifest ExtUtils/Miniperl ExtUtils/ParseXS File/Fetch File/Find File/Path File/Temp FileCache Filter/Simple Getopt/Long HTTP/Tiny I18N/Collate I18N/LangTags IO/Compress IO/Socket/IP IO/Zlib IPC/Cmd IPC/Open3 JSON/PP Locale/Codes Locale/Maketext Locale/Maketext/Simple Math/BigInt Math/BigRat Math/Complex Memoize Module/CoreList Module/Load Module/Load/Conditional Module/Loaded Module/Metadata NEXT Net/Ping Params/Check Parse/CPAN/Meta Perl/OSType PerlIO/via/QuotedPrint Pod/Checker Pod/Escapes Pod/Functions Pod/Html Pod/Parser Pod/Perldoc Pod/Simple Pod/Usage Safe Search/Dict SelfLoader Term/ANSIColor Term/Cap Term/Complete Term/ReadLine Test Test/Harness Test/Simple Text/Abbrev Text/Balanced Text/ParseWords Text/Tabs Thread/Queue Thread/Semaphore Tie/File Tie/Memoize Tie/RefHash Time/Local XSLoader autodie autouse base bignum constant encoding/warnings experimental if lib libnet parent perlfaq podlators Unicode/Normalize version' +privlib='/usr/lib/perl5/5.22' +privlibexp='/usr/lib/perl5/5.22' +archlib='/usr/lib/perl5/5.22' +archlibexp='/usr/lib/perl5/5.22' +version='5.22.0' +version_patchlevel_string='version 22 subversion 0' +PERL_VERSION=22 +PERL_API_VERSION=22 +PERL_SUBVERSION=0 +patchlevel='22' +ccdlflags='-fPIC -Wl,-rpath,/usr/lib/perl5/5.22/CORE' +subversion='0' +extensions='B Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex Time/HiRes Time/Piece XS/APItest XS/Typemap attrs re threads threads/shared Hash/Util/FieldHash Compress/Zlib Errno IO_Compress_Base IO_Compress_Zlib Unicode/Normalize' +known_extensions='B Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc NDBM_File ODBM_File Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex Time/HiRes Time/Piece Unicode/Normalize Win32 Win32API/File Win32CORE XS/APItest XS/Typemap attrs re threads threads/shared Hash/Util/FieldHash' # Make perl use these tools instead of the target binaries during build hostgenerate='%%HOSTGENERATE%%' diff --git a/lang/perl/files/config.sh-armeb-mt.in b/lang/perl/files/config.sh-armeb-mt.in index f20166e0a..33b3c0907 100644 --- a/lang/perl/files/config.sh-armeb-mt.in +++ b/lang/perl/files/config.sh-armeb-mt.in @@ -13,14 +13,13 @@ # Target system : linux maia 2.6.22 #1 wed jul 11 12:24:09 cest 2007 armv5teb unknown unknown gnulinux Author='' -Date='$Date' +Date='' Header='' -Id='$Id' +Id='' Locker='' -Log='$Log' -Mcc='Mcc' -RCSfile='$RCSfile' -Revision='$Revision' +Log='' +RCSfile='' +Revision='' Source='' State='' _a='.a' @@ -100,10 +99,13 @@ d_SCNfldbl='define' d__fwalk='undef' d_access='define' d_accessx='undef' +d_acosh='define' d_aintl='undef' d_alarm='define' d_archlib='undef' d_asctime_r='define' +d_asinh='define' +d_atanh='define' d_atolf='undef' d_atoll='define' d_attribute_format='define' @@ -113,6 +115,7 @@ d_attribute_noreturn='define' d_attribute_pure='define' d_attribute_unused='define' d_attribute_warn_unused_result='define' +d_backtrace='define' d_bcmp='define' d_bcopy='define' d_bsd='undef' @@ -124,6 +127,7 @@ d_bzero='define' d_c99_variadic_macros='define' d_casti32='define' d_castneg='define' +d_cbrt='define' d_charvspr='undef' d_chown='define' d_chroot='define' @@ -133,6 +137,7 @@ d_clearenv='define' d_closedir='define' d_cmsghdr_s='define' d_const='define' +d_copysign='define' d_copysignl='undef' d_cplusplus='undef' d_crypt='%%CRYPT%%' @@ -148,6 +153,7 @@ d_difftime='define' d_dir_dd_fd='undef' d_dirfd='define' d_dirnamlen='undef' +d_dladdr='define' d_dlerror='define' d_dlopen='define' d_dlsymun='undef' @@ -169,7 +175,11 @@ d_endpwent_r='undef' d_endsent='define' d_endservent_r='undef' d_eofnblk='define' +d_erf='define' +d_erfc='define' d_eunice='undef' +d_exp2='define' +d_expm1='define' d_faststdio='undef' d_fchdir='define' d_fchmod='define' @@ -178,19 +188,27 @@ d_fcntl='define' d_fcntl_can_lock='define' d_fd_macros='define' d_fd_set='define' +d_fdim='define' d_fds_bits='define' +d_fegetround='undef' d_fgetpos='define' d_finite='define' d_finitel='undef' d_flexfnam='define' d_flock='define' d_flockproto='define' +d_fma='define' +d_fmax='define' +d_fmin='define' d_fork='define' d_fp_class='undef' +d_fp_classify='undef' +d_fp_classl='undef' d_fpathconf='define' d_fpclass='undef' -d_fpclassify='undef' +d_fpclassify='define' d_fpclassl='undef' +d_fpgetround='undef' d_fpos64_t='undef' d_frexpl='undef' d_fs_data_s='undef' @@ -263,27 +281,50 @@ d_gnulibc='undef' d_grpasswd='define' d_hasmntopt='define' d_htonl='define' +d_hypot='define' +d_ilogb='define' d_ilogbl='undef' d_inc_version_list='undef' d_index='undef' d_inetaton='define' d_int64_t='define' d_isascii='define' -d_isfinite='undef' +d_isfinite='define' +d_isfinitel='undef' d_isinf='define' +d_isinfl='define' +d_isless='undef' d_isnan='define' d_isnanl='undef' +d_isnormal='define' +d_j0='undef' +d_j0l='undef' d_killpg='define' +d_lc_monetary_2008='define' d_lchown='define' d_ldbl_dig='define' +d_ldexpl='define' +d_lgamma='define' +d_lgamma_r='define' d_libm_lib_version='define' d_link='define' +d_llrint='define' +d_llrintl='define' +d_llround='define' +d_llroundl='define' d_localtime_r='define' d_localtime_r_needs_tzset='define' d_locconv='define' d_lockf='define' +d_log1p='define' +d_log2='define' +d_logb='define' d_longdbl='define' d_longlong='define' +d_lrint='define' +d_lrintl='define' +d_lround='define' +d_lroundl='define' d_lseekproto='define' d_lstat='define' d_madvise='define' @@ -322,6 +363,10 @@ d_msgsnd='define' d_msync='define' d_munmap='define' d_mymalloc='undef' +d_nan='define' +d_nearbyint='define' +d_nextafter='define' +d_nexttoward='undef' d_nice='define' d_nl_langinfo='define' d_nv_preserves_uv='define' @@ -344,6 +389,7 @@ d_pseudofork='undef' d_pthread_atfork='define' d_pthread_attr_setscope='define' d_pthread_yield='define' +d_ptrdiff_t='define' d_pwage='undef' d_pwchange='undef' d_pwclass='undef' @@ -355,19 +401,27 @@ d_pwquota='undef' d_qgcvt='undef' d_quad='define' d_random_r='define' +d_re_comp='undef' d_readdir64_r='define' d_readdir='define' d_readdir_r='define' d_readlink='define' d_readv='define' d_recvmsg='define' +d_regcmp='undef' +d_regcomp='define' +d_remainder='define' +d_remquo='define' d_rename='define' d_rewinddir='define' +d_rint='define' d_rmdir='define' +d_round='define' d_safebcpy='undef' d_safemcpy='undef' d_sanemcmp='define' d_sbrkproto='define' +d_scalbn='define' d_scalbnl='undef' d_sched_yield='define' d_scm_rights='define' @@ -437,6 +491,7 @@ d_srand48_r='define' d_srandom_r='define' d_sresgproto='define' d_sresuproto='define' +d_stat='define' d_statblks='define' d_statfs_f_flags='undef' d_statfs_s='define' @@ -478,12 +533,15 @@ d_tcgetpgrp='define' d_tcsetpgrp='define' d_telldir='define' d_telldirproto='define' +d_tgamma='define' d_time='define' d_times='define' d_tm_tm_gmtoff='define' d_tm_tm_zone='define' d_tmpnam_r='define' +d_trunc='define' d_truncate='define' +d_truncl='define' d_ttyname_r='define' d_tzname='define' d_u32align='undef' @@ -509,7 +567,9 @@ d_vprintf='define' d_vsnprintf='define' d_wait4='define' d_waitpid='define' +d_wcscmp='define' d_wcstombs='define' +d_wcsxfrm='define' d_wctomb='define' d_writev='define' d_xenix='undef' @@ -523,6 +583,7 @@ defvoidused='15' direntrytype='struct dirent' dlext='so' dlsrc='dl_dlopen.xs' +doublekind='4' doublesize='8' drand01='drand48()' drand48_r_proto='REENTRANT_PROTO_I_ST' @@ -541,7 +602,6 @@ endservent_r_proto='0' eunicefix=':' exe_ext='' expr='expr' -extensions='B Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex Time/HiRes Time/Piece Unicode/Normalize XS/APItest XS/Typemap attrs re threads threads/shared Hash/Util/FieldHash Compress/Zlib Errno IO_Compress_Base IO_Compress_Zlib' extras='' fflushNULL='define' fflushall='undef' @@ -614,7 +674,9 @@ i_dbm='undef' i_dirent='define' i_dld='undef' i_dlfcn='define' +i_execinfo='define' i_fcntl='undef' +i_fenv='undef' i_float='define' i_fp='undef' i_fp_class='undef' @@ -640,6 +702,7 @@ i_poll='define' i_prot='undef' i_pthread='define' i_pwd='define' +i_quadmath='define' i_rpcsvcdbm='undef' i_sfio='undef' i_sgtty='undef' @@ -647,6 +710,7 @@ i_shadow='define' i_socks='undef' i_stdarg='define' i_stddef='define' +i_stdint='define' i_stdlib='define' i_string='define' i_sunmath='undef' @@ -727,7 +791,6 @@ issymlink='test -h' ivdformat='"ld"' ivsize='4' ivtype='long' -known_extensions='B Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc NDBM_File ODBM_File Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex Time/HiRes Time/Piece Unicode/Normalize Win32 Win32API/File Win32CORE XS/APItest XS/Typemap attrs re threads threads/shared Hash/Util/FieldHash' ksh='' ld='%%LD%%' lddlflags='-shared %%LDFLAGS%%' @@ -754,6 +817,7 @@ lns='/bin/ln -s' localtime_r_proto='REENTRANT_PROTO_S_TS' locincpth=' ' loclibpth=' ' +longdblkind='0' longdblsize='8' longlongsize='8' longsize='4' @@ -762,10 +826,6 @@ lpr='' ls='ls' lseeksize='8' lseektype='off_t' -mad='undef' -madlyh='' -madlyobj='' -madlysrc='' mail='' mailx='' make='make' @@ -982,6 +1042,7 @@ uquadtype='unsigned long long' use5005threads='undef' use64bitall='undef' use64bitint='undef' +usecbacktrace='undef' usecrosscompile='define' usedl='define' usefaststdio='undef' @@ -996,6 +1057,7 @@ usenm='true' useopcode='true' useperlio='define' useposix='true' +usequadmath='undef' usereentrant='undef' userelocatableinc='undef' usesfio='false' @@ -1063,7 +1125,6 @@ d_clock='define' # New symbols for perl 5.20.0 bin_ELF='define' -bootstrap_charset='undef' charbits='8' charsize='1' d_asctime64='undef' @@ -1098,6 +1159,7 @@ dtrace='' extern_C='extern' hostosname='' i_assert='define' +i_bfd='undef' i_gdbm_ndbm='undef' i_gdbmndbm='undef' i_mallocmalloc='undef' @@ -1135,27 +1197,29 @@ libdb_needs_pthread='N' # These symbols changed from perl 5.10.0 to 5.20.0 and probably will # change again for new versions, so they're included here for # future reference -api_version='20' +api_version='22' # Always set this to the base version, not the patched one! -api_versionstring='5.20.0' -dynamic_ext='B Compress/Raw/Bzip2 Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/DosGlob File/Glob Filter/Util/Call GDBM_File Hash/Util Hash/Util/FieldHash I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc Opcode POSIX PerlIO/encoding PerlIO/mmap PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Tie/Hash/NamedCapture Time/HiRes Time/Piece Unicode/Collate Unicode/Normalize XS/APItest XS/Typemap arybase attributes mro re threads threads/shared' -installarchlib='/usr/lib/perl5/5.20' -installprivlib='/usr/lib/perl5/5.20' -installsitearch='/usr/lib/perl5/5.20' -installsitelib='/usr/lib/perl5/5.20' -nonxs_ext='Archive/Tar Attribute/Handlers AutoLoader B/Debug CGI CPAN CPAN/Meta CPAN/Meta/Requirements CPAN/Meta/YAML Carp Config/Perl/V Devel/SelfStubber Digest Dumpvalue Env Errno Exporter ExtUtils/CBuilder ExtUtils/Command ExtUtils/Constant ExtUtils/Install ExtUtils/MakeMaker ExtUtils/Manifest ExtUtils/Miniperl ExtUtils/ParseXS File/Fetch File/Find File/Path File/Temp FileCache Filter/Simple Getopt/Long HTTP/Tiny I18N/Collate I18N/LangTags IO/Compress IO/Socket/IP IO/Zlib IPC/Cmd IPC/Open3 JSON/PP Locale/Codes Locale/Maketext Locale/Maketext/Simple Math/BigInt Math/BigRat Math/Complex Memoize Module/Build Module/CoreList Module/Load Module/Load/Conditional Module/Loaded Module/Metadata NEXT Net/Ping Package/Constants Params/Check Parse/CPAN/Meta Perl/OSType PerlIO/via/QuotedPrint Pod/Checker Pod/Escapes Pod/Functions Pod/Html Pod/Parser Pod/Perldoc Pod/Simple Pod/Usage Safe Search/Dict SelfLoader Term/ANSIColor Term/Cap Term/Complete Term/ReadLine Test Test/Harness Test/Simple Text/Abbrev Text/Balanced Text/ParseWords Text/Tabs Thread/Queue Thread/Semaphore Tie/File Tie/Memoize Tie/RefHash Time/Local XSLoader autodie autouse base bignum constant encoding/warnings experimental if lib libnet parent perlfaq podlators version' -privlib='/usr/lib/perl5/5.20' -privlibexp='/usr/lib/perl5/5.20' -archlib='/usr/lib/perl5/5.20' -archlibexp='/usr/lib/perl5/5.20' -version='5.20.2' -version_patchlevel_string='version 20 subversion 2' -PERL_VERSION=20 -PERL_API_VERSION=20 -PERL_SUBVERSION=2 -patchlevel='20' -ccdlflags='-fPIC -Wl,-rpath,/usr/lib/perl5/5.20/CORE' -subversion='2' +api_versionstring='5.22.0' +dynamic_ext='B Compress/Raw/Bzip2 Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/DosGlob File/Glob Filter/Util/Call GDBM_File Hash/Util Hash/Util/FieldHash I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc Opcode POSIX PerlIO/encoding PerlIO/mmap PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Tie/Hash/NamedCapture Time/HiRes Time/Piece Unicode/Collate XS/APItest XS/Typemap arybase attributes mro re threads threads/shared' +installarchlib='/usr/lib/perl5/5.22' +installprivlib='/usr/lib/perl5/5.22' +installsitearch='/usr/lib/perl5/5.22' +installsitelib='/usr/lib/perl5/5.22' +nonxs_ext='Archive/Tar Attribute/Handlers AutoLoader B/Debug CPAN CPAN/Meta CPAN/Meta/Requirements CPAN/Meta/YAML Carp Config/Perl/V Devel/SelfStubber Digest Dumpvalue Env Errno Exporter ExtUtils/CBuilder ExtUtils/Command ExtUtils/Constant ExtUtils/Install ExtUtils/MakeMaker ExtUtils/Manifest ExtUtils/Miniperl ExtUtils/ParseXS File/Fetch File/Find File/Path File/Temp FileCache Filter/Simple Getopt/Long HTTP/Tiny I18N/Collate I18N/LangTags IO/Compress IO/Socket/IP IO/Zlib IPC/Cmd IPC/Open3 JSON/PP Locale/Codes Locale/Maketext Locale/Maketext/Simple Math/BigInt Math/BigRat Math/Complex Memoize Module/CoreList Module/Load Module/Load/Conditional Module/Loaded Module/Metadata NEXT Net/Ping Params/Check Parse/CPAN/Meta Perl/OSType PerlIO/via/QuotedPrint Pod/Checker Pod/Escapes Pod/Functions Pod/Html Pod/Parser Pod/Perldoc Pod/Simple Pod/Usage Safe Search/Dict SelfLoader Term/ANSIColor Term/Cap Term/Complete Term/ReadLine Test Test/Harness Test/Simple Text/Abbrev Text/Balanced Text/ParseWords Text/Tabs Thread/Queue Thread/Semaphore Tie/File Tie/Memoize Tie/RefHash Time/Local XSLoader autodie autouse base bignum constant encoding/warnings experimental if lib libnet parent perlfaq podlators Unicode/Normalize version' +privlib='/usr/lib/perl5/5.22' +privlibexp='/usr/lib/perl5/5.22' +archlib='/usr/lib/perl5/5.22' +archlibexp='/usr/lib/perl5/5.22' +version='5.22.0' +version_patchlevel_string='version 22 subversion 0' +PERL_VERSION=22 +PERL_API_VERSION=22 +PERL_SUBVERSION=0 +patchlevel='22' +ccdlflags='-fPIC -Wl,-rpath,/usr/lib/perl5/5.22/CORE' +subversion='0' +extensions='B Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex Time/HiRes Time/Piece XS/APItest XS/Typemap attrs re threads threads/shared Hash/Util/FieldHash Compress/Zlib Errno IO_Compress_Base IO_Compress_Zlib Unicode/Normalize' +known_extensions='B Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc NDBM_File ODBM_File Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex Time/HiRes Time/Piece Unicode/Normalize Win32 Win32API/File Win32CORE XS/APItest XS/Typemap attrs re threads threads/shared Hash/Util/FieldHash' # Make perl use these tools instead of the target binaries during build hostgenerate='%%HOSTGENERATE%%' diff --git a/lang/perl/files/config.sh-armeb.in b/lang/perl/files/config.sh-armeb.in index 32bac39e6..4b3b3418b 100644 --- a/lang/perl/files/config.sh-armeb.in +++ b/lang/perl/files/config.sh-armeb.in @@ -13,14 +13,13 @@ # Target system : linux maia 2.6.22 #1 wed jul 11 12:24:09 cest 2007 armv5teb unknown unknown gnulinux Author='' -Date='$Date' +Date='' Header='' -Id='$Id' +Id='' Locker='' -Log='$Log' -Mcc='Mcc' -RCSfile='$RCSfile' -Revision='$Revision' +Log='' +RCSfile='' +Revision='' Source='' State='' _a='.a' @@ -100,10 +99,13 @@ d_SCNfldbl='define' d__fwalk='undef' d_access='define' d_accessx='undef' +d_acosh='define' d_aintl='undef' d_alarm='define' d_archlib='undef' d_asctime_r='undef' +d_asinh='define' +d_atanh='define' d_atolf='undef' d_atoll='define' d_attribute_format='define' @@ -113,6 +115,7 @@ d_attribute_noreturn='define' d_attribute_pure='define' d_attribute_unused='define' d_attribute_warn_unused_result='define' +d_backtrace='define' d_bcmp='define' d_bcopy='define' d_bsd='undef' @@ -124,6 +127,7 @@ d_bzero='define' d_c99_variadic_macros='define' d_casti32='define' d_castneg='define' +d_cbrt='define' d_charvspr='undef' d_chown='define' d_chroot='define' @@ -133,6 +137,7 @@ d_clearenv='define' d_closedir='define' d_cmsghdr_s='define' d_const='define' +d_copysign='define' d_copysignl='undef' d_cplusplus='undef' d_crypt='define' @@ -148,6 +153,7 @@ d_difftime='define' d_dir_dd_fd='undef' d_dirfd='define' d_dirnamlen='undef' +d_dladdr='define' d_dlerror='define' d_dlopen='define' d_dlsymun='undef' @@ -169,7 +175,11 @@ d_endpwent_r='undef' d_endsent='define' d_endservent_r='undef' d_eofnblk='define' +d_erf='define' +d_erfc='define' d_eunice='undef' +d_exp2='define' +d_expm1='define' d_faststdio='undef' d_fchdir='define' d_fchmod='define' @@ -178,19 +188,27 @@ d_fcntl='define' d_fcntl_can_lock='define' d_fd_macros='define' d_fd_set='define' +d_fdim='define' d_fds_bits='undef' +d_fegetround='undef' d_fgetpos='define' d_finite='define' d_finitel='undef' d_flexfnam='define' d_flock='define' d_flockproto='define' +d_fma='define' +d_fmax='define' +d_fmin='define' d_fork='define' d_fp_class='undef' +d_fp_classify='undef' +d_fp_classl='undef' d_fpathconf='define' d_fpclass='undef' -d_fpclassify='undef' +d_fpclassify='define' d_fpclassl='undef' +d_fpgetround='undef' d_fpos64_t='undef' d_frexpl='undef' d_fs_data_s='undef' @@ -263,27 +281,50 @@ d_gnulibc='undef' d_grpasswd='define' d_hasmntopt='define' d_htonl='define' +d_hypot='define' +d_ilogb='define' d_ilogbl='undef' d_inc_version_list='undef' d_index='undef' d_inetaton='define' d_int64_t='define' d_isascii='define' -d_isfinite='undef' +d_isfinite='define' +d_isfinitel='undef' d_isinf='define' +d_isinfl='define' +d_isless='undef' d_isnan='define' d_isnanl='undef' +d_isnormal='define' +d_j0='undef' +d_j0l='undef' d_killpg='define' +d_lc_monetary_2008='define' d_lchown='define' d_ldbl_dig='define' +d_ldexpl='define' +d_lgamma='define' +d_lgamma_r='define' d_libm_lib_version='define' d_link='define' +d_llrint='define' +d_llrintl='define' +d_llround='define' +d_llroundl='define' d_localtime_r='undef' d_localtime_r_needs_tzset='undef' d_locconv='define' d_lockf='define' +d_log1p='define' +d_log2='define' +d_logb='define' d_longdbl='define' d_longlong='define' +d_lrint='define' +d_lrintl='define' +d_lround='define' +d_lroundl='define' d_lseekproto='define' d_lstat='define' d_madvise='define' @@ -322,6 +363,10 @@ d_msgsnd='define' d_msync='define' d_munmap='define' d_mymalloc='undef' +d_nan='define' +d_nearbyint='define' +d_nextafter='define' +d_nexttoward='undef' d_nice='define' d_nl_langinfo='define' d_nv_preserves_uv='define' @@ -344,6 +389,7 @@ d_pseudofork='undef' d_pthread_atfork='undef' d_pthread_attr_setscope='define' d_pthread_yield='undef' +d_ptrdiff_t='define' d_pwage='undef' d_pwchange='undef' d_pwclass='undef' @@ -355,19 +401,27 @@ d_pwquota='undef' d_qgcvt='undef' d_quad='define' d_random_r='undef' +d_re_comp='undef' d_readdir64_r='undef' d_readdir='define' d_readdir_r='undef' d_readlink='define' d_readv='define' d_recvmsg='define' +d_regcmp='undef' +d_regcomp='define' +d_remainder='define' +d_remquo='define' d_rename='define' d_rewinddir='define' +d_rint='define' d_rmdir='define' +d_round='define' d_safebcpy='undef' d_safemcpy='undef' d_sanemcmp='define' d_sbrkproto='define' +d_scalbn='define' d_scalbnl='undef' d_sched_yield='define' d_scm_rights='define' @@ -437,6 +491,7 @@ d_srand48_r='undef' d_srandom_r='undef' d_sresgproto='undef' d_sresuproto='undef' +d_stat='define' d_statblks='define' d_statfs_f_flags='undef' d_statfs_s='define' @@ -478,12 +533,15 @@ d_tcgetpgrp='define' d_tcsetpgrp='define' d_telldir='define' d_telldirproto='define' +d_tgamma='define' d_time='define' d_times='define' d_tm_tm_gmtoff='define' d_tm_tm_zone='define' d_tmpnam_r='undef' +d_trunc='define' d_truncate='define' +d_truncl='define' d_ttyname_r='undef' d_tzname='define' d_u32align='undef' @@ -509,7 +567,9 @@ d_vprintf='define' d_vsnprintf='define' d_wait4='define' d_waitpid='define' +d_wcscmp='define' d_wcstombs='define' +d_wcsxfrm='define' d_wctomb='define' d_writev='define' d_xenix='undef' @@ -523,6 +583,7 @@ defvoidused='15' direntrytype='struct dirent' dlext='so' dlsrc='dl_dlopen.xs' +doublekind='4' doublesize='8' drand01='drand48()' drand48_r_proto='0' @@ -541,7 +602,6 @@ endservent_r_proto='0' eunicefix=':' exe_ext='' expr='expr' -extensions='B Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex Time/HiRes Time/Piece Unicode/Normalize XS/APItest XS/Typemap attrs re threads threads/shared Hash/Util/FieldHash Compress/Zlib Errno IO_Compress_Base IO_Compress_Zlib' extras='' fflushNULL='define' fflushall='undef' @@ -614,7 +674,9 @@ i_dbm='undef' i_dirent='define' i_dld='undef' i_dlfcn='define' +i_execinfo='define' i_fcntl='undef' +i_fenv='undef' i_float='define' i_fp='undef' i_fp_class='undef' @@ -640,6 +702,7 @@ i_poll='define' i_prot='undef' i_pthread='define' i_pwd='define' +i_quadmath='define' i_rpcsvcdbm='undef' i_sfio='undef' i_sgtty='undef' @@ -647,6 +710,7 @@ i_shadow='define' i_socks='undef' i_stdarg='define' i_stddef='define' +i_stdint='define' i_stdlib='define' i_string='define' i_sunmath='undef' @@ -727,7 +791,6 @@ issymlink='test -h' ivdformat='"ld"' ivsize='4' ivtype='long' -known_extensions='B Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc NDBM_File ODBM_File Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex Time/HiRes Time/Piece Unicode/Normalize Win32 Win32API/File Win32CORE XS/APItest XS/Typemap attrs re threads threads/shared Hash/Util/FieldHash' ksh='' ld='%%LD%%' lddlflags='-shared %%LDFLAGS%%' @@ -754,6 +817,7 @@ lns='/bin/ln -s' localtime_r_proto='0' locincpth=' ' loclibpth=' ' +longdblkind='0' longdblsize='8' longlongsize='8' longsize='4' @@ -762,10 +826,6 @@ lpr='' ls='ls' lseeksize='8' lseektype='off_t' -mad='undef' -madlyh='' -madlyobj='' -madlysrc='' mail='' mailx='' make='make' @@ -982,6 +1042,7 @@ uquadtype='unsigned long long' use5005threads='undef' use64bitall='undef' use64bitint='undef' +usecbacktrace='undef' usecrosscompile='define' usedl='define' usefaststdio='undef' @@ -996,6 +1057,7 @@ usenm='true' useopcode='true' useperlio='define' useposix='true' +usequadmath='undef' usereentrant='undef' userelocatableinc='undef' usesfio='false' @@ -1062,7 +1124,6 @@ d_clock='define' # New symbols for perl 5.20.0 bin_ELF='define' -bootstrap_charset='undef' charbits='8' charsize='1' d_asctime64='undef' @@ -1097,6 +1158,7 @@ dtrace='' extern_C='extern' hostosname='' i_assert='define' +i_bfd='undef' i_gdbm_ndbm='undef' i_gdbmndbm='undef' i_mallocmalloc='undef' @@ -1134,27 +1196,29 @@ libdb_needs_pthread='N' # These symbols changed from perl 5.10.0 to 5.20.0 and probably will # change again for new versions, so they're included here for # future reference -api_version='20' +api_version='22' # Always set this to the base version, not the patched one! -api_versionstring='5.20.0' -dynamic_ext='B Compress/Raw/Bzip2 Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/DosGlob File/Glob Filter/Util/Call GDBM_File Hash/Util Hash/Util/FieldHash I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc Opcode POSIX PerlIO/encoding PerlIO/mmap PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Tie/Hash/NamedCapture Time/HiRes Time/Piece Unicode/Collate Unicode/Normalize XS/APItest XS/Typemap arybase attributes mro re threads threads/shared' -installarchlib='/usr/lib/perl5/5.20' -installprivlib='/usr/lib/perl5/5.20' -installsitearch='/usr/lib/perl5/5.20' -installsitelib='/usr/lib/perl5/5.20' -nonxs_ext='Archive/Tar Attribute/Handlers AutoLoader B/Debug CGI CPAN CPAN/Meta CPAN/Meta/Requirements CPAN/Meta/YAML Carp Config/Perl/V Devel/SelfStubber Digest Dumpvalue Env Errno Exporter ExtUtils/CBuilder ExtUtils/Command ExtUtils/Constant ExtUtils/Install ExtUtils/MakeMaker ExtUtils/Manifest ExtUtils/Miniperl ExtUtils/ParseXS File/Fetch File/Find File/Path File/Temp FileCache Filter/Simple Getopt/Long HTTP/Tiny I18N/Collate I18N/LangTags IO/Compress IO/Socket/IP IO/Zlib IPC/Cmd IPC/Open3 JSON/PP Locale/Codes Locale/Maketext Locale/Maketext/Simple Math/BigInt Math/BigRat Math/Complex Memoize Module/Build Module/CoreList Module/Load Module/Load/Conditional Module/Loaded Module/Metadata NEXT Net/Ping Package/Constants Params/Check Parse/CPAN/Meta Perl/OSType PerlIO/via/QuotedPrint Pod/Checker Pod/Escapes Pod/Functions Pod/Html Pod/Parser Pod/Perldoc Pod/Simple Pod/Usage Safe Search/Dict SelfLoader Term/ANSIColor Term/Cap Term/Complete Term/ReadLine Test Test/Harness Test/Simple Text/Abbrev Text/Balanced Text/ParseWords Text/Tabs Thread/Queue Thread/Semaphore Tie/File Tie/Memoize Tie/RefHash Time/Local XSLoader autodie autouse base bignum constant encoding/warnings experimental if lib libnet parent perlfaq podlators version' -privlib='/usr/lib/perl5/5.20' -privlibexp='/usr/lib/perl5/5.20' -archlib='/usr/lib/perl5/5.20' -archlibexp='/usr/lib/perl5/5.20' -version='5.20.2' -version_patchlevel_string='version 20 subversion 2' -PERL_VERSION=20 -PERL_API_VERSION=20 -PERL_SUBVERSION=2 -patchlevel='20' -ccdlflags='-fPIC -Wl,-rpath,/usr/lib/perl5/5.20/CORE' -subversion='2' +api_versionstring='5.22.0' +dynamic_ext='B Compress/Raw/Bzip2 Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/DosGlob File/Glob Filter/Util/Call GDBM_File Hash/Util Hash/Util/FieldHash I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc Opcode POSIX PerlIO/encoding PerlIO/mmap PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Tie/Hash/NamedCapture Time/HiRes Time/Piece Unicode/Collate XS/APItest XS/Typemap arybase attributes mro re threads threads/shared' +installarchlib='/usr/lib/perl5/5.22' +installprivlib='/usr/lib/perl5/5.22' +installsitearch='/usr/lib/perl5/5.22' +installsitelib='/usr/lib/perl5/5.22' +nonxs_ext='Archive/Tar Attribute/Handlers AutoLoader B/Debug CPAN CPAN/Meta CPAN/Meta/Requirements CPAN/Meta/YAML Carp Config/Perl/V Devel/SelfStubber Digest Dumpvalue Env Errno Exporter ExtUtils/CBuilder ExtUtils/Command ExtUtils/Constant ExtUtils/Install ExtUtils/MakeMaker ExtUtils/Manifest ExtUtils/Miniperl ExtUtils/ParseXS File/Fetch File/Find File/Path File/Temp FileCache Filter/Simple Getopt/Long HTTP/Tiny I18N/Collate I18N/LangTags IO/Compress IO/Socket/IP IO/Zlib IPC/Cmd IPC/Open3 JSON/PP Locale/Codes Locale/Maketext Locale/Maketext/Simple Math/BigInt Math/BigRat Math/Complex Memoize Module/CoreList Module/Load Module/Load/Conditional Module/Loaded Module/Metadata NEXT Net/Ping Params/Check Parse/CPAN/Meta Perl/OSType PerlIO/via/QuotedPrint Pod/Checker Pod/Escapes Pod/Functions Pod/Html Pod/Parser Pod/Perldoc Pod/Simple Pod/Usage Safe Search/Dict SelfLoader Term/ANSIColor Term/Cap Term/Complete Term/ReadLine Test Test/Harness Test/Simple Text/Abbrev Text/Balanced Text/ParseWords Text/Tabs Thread/Queue Thread/Semaphore Tie/File Tie/Memoize Tie/RefHash Time/Local XSLoader autodie autouse base bignum constant encoding/warnings experimental if lib libnet parent perlfaq podlators Unicode/Normalize version' +privlib='/usr/lib/perl5/5.22' +privlibexp='/usr/lib/perl5/5.22' +archlib='/usr/lib/perl5/5.22' +archlibexp='/usr/lib/perl5/5.22' +version='5.22.0' +version_patchlevel_string='version 22 subversion 0' +PERL_VERSION=22 +PERL_API_VERSION=22 +PERL_SUBVERSION=0 +patchlevel='22' +ccdlflags='-fPIC -Wl,-rpath,/usr/lib/perl5/5.22/CORE' +subversion='0' +extensions='B Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex Time/HiRes Time/Piece XS/APItest XS/Typemap attrs re threads threads/shared Hash/Util/FieldHash Compress/Zlib Errno IO_Compress_Base IO_Compress_Zlib Unicode/Normalize' +known_extensions='B Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc NDBM_File ODBM_File Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex Time/HiRes Time/Piece Unicode/Normalize Win32 Win32API/File Win32CORE XS/APItest XS/Typemap attrs re threads threads/shared Hash/Util/FieldHash' # Make perl use these tools instead of the target binaries during build hostgenerate='%%HOSTGENERATE%%' diff --git a/lang/perl/files/config.sh-avr32-mt.in b/lang/perl/files/config.sh-avr32-mt.in index 4576e0d5d..fd420a2c9 100644 --- a/lang/perl/files/config.sh-avr32-mt.in +++ b/lang/perl/files/config.sh-avr32-mt.in @@ -13,14 +13,13 @@ # Target system : linux maia 2.6.22 #1 wed jul 11 12:24:09 cest 2007 armv5teb unknown unknown gnulinux Author='' -Date='$Date' +Date='' Header='' -Id='$Id' +Id='' Locker='' -Log='$Log' -Mcc='Mcc' -RCSfile='$RCSfile' -Revision='$Revision' +Log='' +RCSfile='' +Revision='' Source='' State='' _a='.a' @@ -103,10 +102,13 @@ d_SCNfldbl='define' d__fwalk='undef' d_access='define' d_accessx='undef' +d_acosh='define' d_aintl='undef' d_alarm='define' d_archlib='undef' d_asctime_r='define' +d_asinh='define' +d_atanh='define' d_atolf='undef' d_atoll='define' d_attribute_format='define' @@ -116,6 +118,7 @@ d_attribute_noreturn='define' d_attribute_pure='define' d_attribute_unused='define' d_attribute_warn_unused_result='define' +d_backtrace='define' d_bcmp='define' d_bcopy='define' d_bsd='undef' @@ -127,6 +130,7 @@ d_bzero='define' d_c99_variadic_macros='define' d_casti32='define' d_castneg='define' +d_cbrt='define' d_charvspr='undef' d_chown='define' d_chroot='define' @@ -136,6 +140,7 @@ d_clearenv='define' d_closedir='define' d_cmsghdr_s='define' d_const='define' +d_copysign='define' d_copysignl='undef' d_cplusplus='undef' d_crypt='%%CRYPT%%' @@ -151,6 +156,7 @@ d_difftime='define' d_dir_dd_fd='undef' d_dirfd='define' d_dirnamlen='undef' +d_dladdr='define' d_dlerror='define' d_dlopen='define' d_dlsymun='undef' @@ -172,7 +178,11 @@ d_endpwent_r='undef' d_endsent='define' d_endservent_r='undef' d_eofnblk='define' +d_erf='define' +d_erfc='define' d_eunice='undef' +d_exp2='define' +d_expm1='define' d_faststdio='undef' d_fchdir='define' d_fchmod='define' @@ -181,19 +191,27 @@ d_fcntl='define' d_fcntl_can_lock='define' d_fd_macros='define' d_fd_set='define' +d_fdim='define' d_fds_bits='define' +d_fegetround='undef' d_fgetpos='define' d_finite='define' d_finitel='undef' d_flexfnam='define' d_flock='define' d_flockproto='define' +d_fma='define' +d_fmax='define' +d_fmin='define' d_fork='define' d_fp_class='undef' +d_fp_classify='undef' +d_fp_classl='undef' d_fpathconf='define' d_fpclass='undef' -d_fpclassify='undef' +d_fpclassify='define' d_fpclassl='undef' +d_fpgetround='undef' d_fpos64_t='undef' d_frexpl='undef' d_fs_data_s='undef' @@ -266,27 +284,50 @@ d_gnulibc='undef' d_grpasswd='define' d_hasmntopt='define' d_htonl='define' +d_hypot='define' +d_ilogb='define' d_ilogbl='undef' d_inc_version_list='undef' d_index='undef' d_inetaton='define' d_int64_t='define' d_isascii='define' -d_isfinite='undef' +d_isfinite='define' +d_isfinitel='undef' d_isinf='define' +d_isinfl='define' +d_isless='undef' d_isnan='define' d_isnanl='undef' +d_isnormal='define' +d_j0='undef' +d_j0l='undef' d_killpg='define' +d_lc_monetary_2008='define' d_lchown='define' d_ldbl_dig='define' +d_ldexpl='define' +d_lgamma='define' +d_lgamma_r='define' d_libm_lib_version='define' d_link='define' +d_llrint='define' +d_llrintl='define' +d_llround='define' +d_llroundl='define' d_localtime_r='define' d_localtime_r_needs_tzset='define' d_locconv='define' d_lockf='define' +d_log1p='define' +d_log2='define' +d_logb='define' d_longdbl='define' d_longlong='define' +d_lrint='define' +d_lrintl='define' +d_lround='define' +d_lroundl='define' d_lseekproto='define' d_lstat='define' d_madvise='define' @@ -325,6 +366,10 @@ d_msgsnd='define' d_msync='define' d_munmap='define' d_mymalloc='undef' +d_nan='define' +d_nearbyint='define' +d_nextafter='define' +d_nexttoward='undef' d_nice='define' d_nl_langinfo='define' d_nv_preserves_uv='define' @@ -347,6 +392,7 @@ d_pseudofork='undef' d_pthread_atfork='define' d_pthread_attr_setscope='define' d_pthread_yield='define' +d_ptrdiff_t='define' d_pwage='undef' d_pwchange='undef' d_pwclass='undef' @@ -358,19 +404,27 @@ d_pwquota='undef' d_qgcvt='undef' d_quad='define' d_random_r='define' +d_re_comp='undef' d_readdir64_r='define' d_readdir='define' d_readdir_r='define' d_readlink='define' d_readv='define' d_recvmsg='define' +d_regcmp='undef' +d_regcomp='define' +d_remainder='define' +d_remquo='define' d_rename='define' d_rewinddir='define' +d_rint='define' d_rmdir='define' +d_round='define' d_safebcpy='undef' d_safemcpy='undef' d_sanemcmp='define' d_sbrkproto='define' +d_scalbn='define' d_scalbnl='undef' d_sched_yield='define' d_scm_rights='define' @@ -440,6 +494,7 @@ d_srand48_r='define' d_srandom_r='define' d_sresgproto='define' d_sresuproto='define' +d_stat='define' d_statblks='define' d_statfs_f_flags='undef' d_statfs_s='define' @@ -481,12 +536,15 @@ d_tcgetpgrp='define' d_tcsetpgrp='define' d_telldir='define' d_telldirproto='define' +d_tgamma='define' d_time='define' d_times='define' d_tm_tm_gmtoff='define' d_tm_tm_zone='define' d_tmpnam_r='define' +d_trunc='define' d_truncate='define' +d_truncl='define' d_ttyname_r='define' d_tzname='define' d_u32align='undef' @@ -512,7 +570,9 @@ d_vprintf='define' d_vsnprintf='define' d_wait4='define' d_waitpid='define' +d_wcscmp='define' d_wcstombs='define' +d_wcsxfrm='define' d_wctomb='define' d_writev='define' d_xenix='undef' @@ -526,6 +586,7 @@ defvoidused='15' direntrytype='struct dirent' dlext='so' dlsrc='dl_dlopen.xs' +doublekind='4' doublesize='8' drand01='drand48()' drand48_r_proto='REENTRANT_PROTO_I_ST' @@ -544,7 +605,6 @@ endservent_r_proto='0' eunicefix=':' exe_ext='' expr='expr' -extensions='B Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex Time/HiRes Time/Piece Unicode/Normalize XS/APItest XS/Typemap attrs re threads threads/shared Hash/Util/FieldHash Compress/Zlib Errno IO_Compress_Base IO_Compress_Zlib' extras='' fflushNULL='define' fflushall='undef' @@ -617,7 +677,9 @@ i_dbm='undef' i_dirent='define' i_dld='undef' i_dlfcn='define' +i_execinfo='define' i_fcntl='undef' +i_fenv='undef' i_float='define' i_fp='undef' i_fp_class='undef' @@ -643,6 +705,7 @@ i_poll='define' i_prot='undef' i_pthread='define' i_pwd='define' +i_quadmath='define' i_rpcsvcdbm='undef' i_sfio='undef' i_sgtty='undef' @@ -650,6 +713,7 @@ i_shadow='define' i_socks='undef' i_stdarg='define' i_stddef='define' +i_stdint='define' i_stdlib='define' i_string='define' i_sunmath='undef' @@ -730,7 +794,6 @@ issymlink='test -h' ivdformat='"ld"' ivsize='4' ivtype='long' -known_extensions='B Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc NDBM_File ODBM_File Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex Time/HiRes Time/Piece Unicode/Normalize Win32 Win32API/File Win32CORE XS/APItest XS/Typemap attrs re threads threads/shared Hash/Util/FieldHash' ksh='' ld='%%LD%%' lddlflags='-shared %%LDFLAGS%%' @@ -757,6 +820,7 @@ lns='/bin/ln -s' localtime_r_proto='REENTRANT_PROTO_S_TS' locincpth=' ' loclibpth=' ' +longdblkind='0' longdblsize='8' longlongsize='8' longsize='4' @@ -765,10 +829,6 @@ lpr='' ls='ls' lseeksize='8' lseektype='off_t' -mad='undef' -madlyh='' -madlyobj='' -madlysrc='' mail='' mailx='' make='make' @@ -985,6 +1045,7 @@ uquadtype='unsigned long long' use5005threads='undef' use64bitall='undef' use64bitint='undef' +usecbacktrace='undef' usecrosscompile='undef' usedl='define' usefaststdio='undef' @@ -999,6 +1060,7 @@ usenm='true' useopcode='true' useperlio='define' useposix='true' +usequadmath='undef' usereentrant='undef' userelocatableinc='undef' usesfio='false' @@ -1066,7 +1128,6 @@ d_clock='define' # New symbols for perl 5.20.0 bin_ELF='define' -bootstrap_charset='undef' charbits='8' charsize='1' d_asctime64='undef' @@ -1101,6 +1162,7 @@ dtrace='' extern_C='extern' hostosname='' i_assert='define' +i_bfd='undef' i_gdbm_ndbm='undef' i_gdbmndbm='undef' i_mallocmalloc='undef' @@ -1138,27 +1200,29 @@ libdb_needs_pthread='N' # These symbols changed from perl 5.10.0 to 5.20.0 and probably will # change again for new versions, so they're included here for # future reference -api_version='20' +api_version='22' # Always set this to the base version, not the patched one! -api_versionstring='5.20.0' -dynamic_ext='B Compress/Raw/Bzip2 Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/DosGlob File/Glob Filter/Util/Call GDBM_File Hash/Util Hash/Util/FieldHash I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc Opcode POSIX PerlIO/encoding PerlIO/mmap PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Tie/Hash/NamedCapture Time/HiRes Time/Piece Unicode/Collate Unicode/Normalize XS/APItest XS/Typemap arybase attributes mro re threads threads/shared' -installarchlib='/usr/lib/perl5/5.20' -installprivlib='/usr/lib/perl5/5.20' -installsitearch='/usr/lib/perl5/5.20' -installsitelib='/usr/lib/perl5/5.20' -nonxs_ext='Archive/Tar Attribute/Handlers AutoLoader B/Debug CGI CPAN CPAN/Meta CPAN/Meta/Requirements CPAN/Meta/YAML Carp Config/Perl/V Devel/SelfStubber Digest Dumpvalue Env Errno Exporter ExtUtils/CBuilder ExtUtils/Command ExtUtils/Constant ExtUtils/Install ExtUtils/MakeMaker ExtUtils/Manifest ExtUtils/Miniperl ExtUtils/ParseXS File/Fetch File/Find File/Path File/Temp FileCache Filter/Simple Getopt/Long HTTP/Tiny I18N/Collate I18N/LangTags IO/Compress IO/Socket/IP IO/Zlib IPC/Cmd IPC/Open3 JSON/PP Locale/Codes Locale/Maketext Locale/Maketext/Simple Math/BigInt Math/BigRat Math/Complex Memoize Module/Build Module/CoreList Module/Load Module/Load/Conditional Module/Loaded Module/Metadata NEXT Net/Ping Package/Constants Params/Check Parse/CPAN/Meta Perl/OSType PerlIO/via/QuotedPrint Pod/Checker Pod/Escapes Pod/Functions Pod/Html Pod/Parser Pod/Perldoc Pod/Simple Pod/Usage Safe Search/Dict SelfLoader Term/ANSIColor Term/Cap Term/Complete Term/ReadLine Test Test/Harness Test/Simple Text/Abbrev Text/Balanced Text/ParseWords Text/Tabs Thread/Queue Thread/Semaphore Tie/File Tie/Memoize Tie/RefHash Time/Local XSLoader autodie autouse base bignum constant encoding/warnings experimental if lib libnet parent perlfaq podlators version' -privlib='/usr/lib/perl5/5.20' -privlibexp='/usr/lib/perl5/5.20' -archlib='/usr/lib/perl5/5.20' -archlibexp='/usr/lib/perl5/5.20' -version='5.20.2' -version_patchlevel_string='version 20 subversion 2' -PERL_VERSION=20 -PERL_API_VERSION=20 -PERL_SUBVERSION=2 -patchlevel='20' -ccdlflags='-fPIC -Wl,-rpath,/usr/lib/perl5/5.20/CORE' -subversion='2' +api_versionstring='5.22.0' +dynamic_ext='B Compress/Raw/Bzip2 Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/DosGlob File/Glob Filter/Util/Call GDBM_File Hash/Util Hash/Util/FieldHash I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc Opcode POSIX PerlIO/encoding PerlIO/mmap PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Tie/Hash/NamedCapture Time/HiRes Time/Piece Unicode/Collate XS/APItest XS/Typemap arybase attributes mro re threads threads/shared' +installarchlib='/usr/lib/perl5/5.22' +installprivlib='/usr/lib/perl5/5.22' +installsitearch='/usr/lib/perl5/5.22' +installsitelib='/usr/lib/perl5/5.22' +nonxs_ext='Archive/Tar Attribute/Handlers AutoLoader B/Debug CPAN CPAN/Meta CPAN/Meta/Requirements CPAN/Meta/YAML Carp Config/Perl/V Devel/SelfStubber Digest Dumpvalue Env Errno Exporter ExtUtils/CBuilder ExtUtils/Command ExtUtils/Constant ExtUtils/Install ExtUtils/MakeMaker ExtUtils/Manifest ExtUtils/Miniperl ExtUtils/ParseXS File/Fetch File/Find File/Path File/Temp FileCache Filter/Simple Getopt/Long HTTP/Tiny I18N/Collate I18N/LangTags IO/Compress IO/Socket/IP IO/Zlib IPC/Cmd IPC/Open3 JSON/PP Locale/Codes Locale/Maketext Locale/Maketext/Simple Math/BigInt Math/BigRat Math/Complex Memoize Module/CoreList Module/Load Module/Load/Conditional Module/Loaded Module/Metadata NEXT Net/Ping Params/Check Parse/CPAN/Meta Perl/OSType PerlIO/via/QuotedPrint Pod/Checker Pod/Escapes Pod/Functions Pod/Html Pod/Parser Pod/Perldoc Pod/Simple Pod/Usage Safe Search/Dict SelfLoader Term/ANSIColor Term/Cap Term/Complete Term/ReadLine Test Test/Harness Test/Simple Text/Abbrev Text/Balanced Text/ParseWords Text/Tabs Thread/Queue Thread/Semaphore Tie/File Tie/Memoize Tie/RefHash Time/Local XSLoader autodie autouse base bignum constant encoding/warnings experimental if lib libnet parent perlfaq podlators Unicode/Normalize version' +privlib='/usr/lib/perl5/5.22' +privlibexp='/usr/lib/perl5/5.22' +archlib='/usr/lib/perl5/5.22' +archlibexp='/usr/lib/perl5/5.22' +version='5.22.0' +version_patchlevel_string='version 22 subversion 0' +PERL_VERSION=22 +PERL_API_VERSION=22 +PERL_SUBVERSION=0 +patchlevel='22' +ccdlflags='-fPIC -Wl,-rpath,/usr/lib/perl5/5.22/CORE' +subversion='0' +extensions='B Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex Time/HiRes Time/Piece XS/APItest XS/Typemap attrs re threads threads/shared Hash/Util/FieldHash Compress/Zlib Errno IO_Compress_Base IO_Compress_Zlib Unicode/Normalize' +known_extensions='B Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc NDBM_File ODBM_File Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex Time/HiRes Time/Piece Unicode/Normalize Win32 Win32API/File Win32CORE XS/APItest XS/Typemap attrs re threads threads/shared Hash/Util/FieldHash' # Make perl use these tools instead of the target binaries during build hostgenerate='%%HOSTGENERATE%%' diff --git a/lang/perl/files/config.sh-avr32.in b/lang/perl/files/config.sh-avr32.in index 16c9f1a70..ee4e5ce67 100644 --- a/lang/perl/files/config.sh-avr32.in +++ b/lang/perl/files/config.sh-avr32.in @@ -13,14 +13,13 @@ # Target system : linux maia 2.6.22 #1 wed jul 11 12:24:09 cest 2007 armv5teb unknown unknown gnulinux Author='' -Date='$Date' +Date='' Header='' -Id='$Id' +Id='' Locker='' -Log='$Log' -Mcc='Mcc' -RCSfile='$RCSfile' -Revision='$Revision' +Log='' +RCSfile='' +Revision='' Source='' State='' _a='.a' @@ -103,10 +102,13 @@ d_SCNfldbl='define' d__fwalk='undef' d_access='define' d_accessx='undef' +d_acosh='define' d_aintl='undef' d_alarm='define' d_archlib='undef' d_asctime_r='undef' +d_asinh='define' +d_atanh='define' d_atolf='undef' d_atoll='define' d_attribute_format='define' @@ -116,6 +118,7 @@ d_attribute_noreturn='define' d_attribute_pure='define' d_attribute_unused='define' d_attribute_warn_unused_result='define' +d_backtrace='define' d_bcmp='define' d_bcopy='define' d_bsd='undef' @@ -127,6 +130,7 @@ d_bzero='define' d_c99_variadic_macros='define' d_casti32='define' d_castneg='define' +d_cbrt='define' d_charvspr='undef' d_chown='define' d_chroot='define' @@ -136,6 +140,7 @@ d_clearenv='define' d_closedir='define' d_cmsghdr_s='define' d_const='define' +d_copysign='define' d_copysignl='undef' d_cplusplus='undef' d_crypt='define' @@ -151,6 +156,7 @@ d_difftime='define' d_dir_dd_fd='undef' d_dirfd='define' d_dirnamlen='undef' +d_dladdr='define' d_dlerror='define' d_dlopen='define' d_dlsymun='undef' @@ -172,7 +178,11 @@ d_endpwent_r='undef' d_endsent='define' d_endservent_r='undef' d_eofnblk='define' +d_erf='define' +d_erfc='define' d_eunice='undef' +d_exp2='define' +d_expm1='define' d_faststdio='undef' d_fchdir='define' d_fchmod='define' @@ -181,19 +191,27 @@ d_fcntl='define' d_fcntl_can_lock='define' d_fd_macros='define' d_fd_set='define' +d_fdim='define' d_fds_bits='undef' +d_fegetround='undef' d_fgetpos='define' d_finite='define' d_finitel='undef' d_flexfnam='define' d_flock='define' d_flockproto='define' +d_fma='define' +d_fmax='define' +d_fmin='define' d_fork='define' d_fp_class='undef' +d_fp_classify='undef' +d_fp_classl='undef' d_fpathconf='define' d_fpclass='undef' -d_fpclassify='undef' +d_fpclassify='define' d_fpclassl='undef' +d_fpgetround='undef' d_fpos64_t='undef' d_frexpl='undef' d_fs_data_s='undef' @@ -266,27 +284,50 @@ d_gnulibc='undef' d_grpasswd='define' d_hasmntopt='define' d_htonl='define' +d_hypot='define' +d_ilogb='define' d_ilogbl='undef' d_inc_version_list='undef' d_index='undef' d_inetaton='define' d_int64_t='define' d_isascii='define' -d_isfinite='undef' +d_isfinite='define' +d_isfinitel='undef' d_isinf='define' +d_isinfl='define' +d_isless='undef' d_isnan='define' d_isnanl='undef' +d_isnormal='define' +d_j0='undef' +d_j0l='undef' d_killpg='define' +d_lc_monetary_2008='define' d_lchown='define' d_ldbl_dig='define' +d_ldexpl='define' +d_lgamma='define' +d_lgamma_r='define' d_libm_lib_version='define' d_link='define' +d_llrint='define' +d_llrintl='define' +d_llround='define' +d_llroundl='define' d_localtime_r='undef' d_localtime_r_needs_tzset='undef' d_locconv='define' d_lockf='define' +d_log1p='define' +d_log2='define' +d_logb='define' d_longdbl='define' d_longlong='define' +d_lrint='define' +d_lrintl='define' +d_lround='define' +d_lroundl='define' d_lseekproto='define' d_lstat='define' d_madvise='define' @@ -325,6 +366,10 @@ d_msgsnd='define' d_msync='define' d_munmap='define' d_mymalloc='undef' +d_nan='define' +d_nearbyint='define' +d_nextafter='define' +d_nexttoward='undef' d_nice='define' d_nl_langinfo='define' d_nv_preserves_uv='define' @@ -347,6 +392,7 @@ d_pseudofork='undef' d_pthread_atfork='undef' d_pthread_attr_setscope='define' d_pthread_yield='undef' +d_ptrdiff_t='define' d_pwage='undef' d_pwchange='undef' d_pwclass='undef' @@ -358,19 +404,27 @@ d_pwquota='undef' d_qgcvt='undef' d_quad='define' d_random_r='undef' +d_re_comp='undef' d_readdir64_r='undef' d_readdir='define' d_readdir_r='undef' d_readlink='define' d_readv='define' d_recvmsg='define' +d_regcmp='undef' +d_regcomp='define' +d_remainder='define' +d_remquo='define' d_rename='define' d_rewinddir='define' +d_rint='define' d_rmdir='define' +d_round='define' d_safebcpy='undef' d_safemcpy='undef' d_sanemcmp='define' d_sbrkproto='define' +d_scalbn='define' d_scalbnl='undef' d_sched_yield='define' d_scm_rights='define' @@ -440,6 +494,7 @@ d_srand48_r='undef' d_srandom_r='undef' d_sresgproto='undef' d_sresuproto='undef' +d_stat='define' d_statblks='define' d_statfs_f_flags='undef' d_statfs_s='define' @@ -481,12 +536,15 @@ d_tcgetpgrp='define' d_tcsetpgrp='define' d_telldir='define' d_telldirproto='define' +d_tgamma='define' d_time='define' d_times='define' d_tm_tm_gmtoff='define' d_tm_tm_zone='define' d_tmpnam_r='undef' +d_trunc='define' d_truncate='define' +d_truncl='define' d_ttyname_r='undef' d_tzname='define' d_u32align='undef' @@ -512,7 +570,9 @@ d_vprintf='define' d_vsnprintf='define' d_wait4='define' d_waitpid='define' +d_wcscmp='define' d_wcstombs='define' +d_wcsxfrm='define' d_wctomb='define' d_writev='define' d_xenix='undef' @@ -526,6 +586,7 @@ defvoidused='15' direntrytype='struct dirent' dlext='so' dlsrc='dl_dlopen.xs' +doublekind='4' doublesize='8' drand01='drand48()' drand48_r_proto='0' @@ -544,7 +605,6 @@ endservent_r_proto='0' eunicefix=':' exe_ext='' expr='expr' -extensions='B Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex Time/HiRes Time/Piece Unicode/Normalize XS/APItest XS/Typemap attrs re threads threads/shared Hash/Util/FieldHash Compress/Zlib Errno IO_Compress_Base IO_Compress_Zlib' extras='' fflushNULL='define' fflushall='undef' @@ -617,7 +677,9 @@ i_dbm='undef' i_dirent='define' i_dld='undef' i_dlfcn='define' +i_execinfo='define' i_fcntl='undef' +i_fenv='undef' i_float='define' i_fp='undef' i_fp_class='undef' @@ -643,6 +705,7 @@ i_poll='define' i_prot='undef' i_pthread='define' i_pwd='define' +i_quadmath='define' i_rpcsvcdbm='undef' i_sfio='undef' i_sgtty='undef' @@ -650,6 +713,7 @@ i_shadow='define' i_socks='undef' i_stdarg='define' i_stddef='define' +i_stdint='define' i_stdlib='define' i_string='define' i_sunmath='undef' @@ -730,7 +794,6 @@ issymlink='test -h' ivdformat='"ld"' ivsize='4' ivtype='long' -known_extensions='B Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc NDBM_File ODBM_File Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex Time/HiRes Time/Piece Unicode/Normalize Win32 Win32API/File Win32CORE XS/APItest XS/Typemap attrs re threads threads/shared Hash/Util/FieldHash' ksh='' ld='%%LD%%' lddlflags='-shared %%LDFLAGS%%' @@ -757,6 +820,7 @@ lns='/bin/ln -s' localtime_r_proto='0' locincpth=' ' loclibpth=' ' +longdblkind='0' longdblsize='8' longlongsize='8' longsize='4' @@ -765,10 +829,6 @@ lpr='' ls='ls' lseeksize='8' lseektype='off_t' -mad='undef' -madlyh='' -madlyobj='' -madlysrc='' mail='' mailx='' make='make' @@ -985,6 +1045,7 @@ uquadtype='unsigned long long' use5005threads='undef' use64bitall='undef' use64bitint='undef' +usecbacktrace='undef' usecrosscompile='undef' usedl='define' usefaststdio='undef' @@ -999,6 +1060,7 @@ usenm='true' useopcode='true' useperlio='define' useposix='true' +usequadmath='undef' usereentrant='undef' userelocatableinc='undef' usesfio='false' @@ -1065,7 +1127,6 @@ d_clock='define' # New symbols for perl 5.20.0 bin_ELF='define' -bootstrap_charset='undef' charbits='8' charsize='1' d_asctime64='undef' @@ -1100,6 +1161,7 @@ dtrace='' extern_C='extern' hostosname='' i_assert='define' +i_bfd='undef' i_gdbm_ndbm='undef' i_gdbmndbm='undef' i_mallocmalloc='undef' @@ -1137,27 +1199,29 @@ libdb_needs_pthread='N' # These symbols changed from perl 5.10.0 to 5.20.0 and probably will # change again for new versions, so they're included here for # future reference -api_version='20' +api_version='22' # Always set this to the base version, not the patched one! -api_versionstring='5.20.0' -dynamic_ext='B Compress/Raw/Bzip2 Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/DosGlob File/Glob Filter/Util/Call GDBM_File Hash/Util Hash/Util/FieldHash I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc Opcode POSIX PerlIO/encoding PerlIO/mmap PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Tie/Hash/NamedCapture Time/HiRes Time/Piece Unicode/Collate Unicode/Normalize XS/APItest XS/Typemap arybase attributes mro re threads threads/shared' -installarchlib='/usr/lib/perl5/5.20' -installprivlib='/usr/lib/perl5/5.20' -installsitearch='/usr/lib/perl5/5.20' -installsitelib='/usr/lib/perl5/5.20' -nonxs_ext='Archive/Tar Attribute/Handlers AutoLoader B/Debug CGI CPAN CPAN/Meta CPAN/Meta/Requirements CPAN/Meta/YAML Carp Config/Perl/V Devel/SelfStubber Digest Dumpvalue Env Errno Exporter ExtUtils/CBuilder ExtUtils/Command ExtUtils/Constant ExtUtils/Install ExtUtils/MakeMaker ExtUtils/Manifest ExtUtils/Miniperl ExtUtils/ParseXS File/Fetch File/Find File/Path File/Temp FileCache Filter/Simple Getopt/Long HTTP/Tiny I18N/Collate I18N/LangTags IO/Compress IO/Socket/IP IO/Zlib IPC/Cmd IPC/Open3 JSON/PP Locale/Codes Locale/Maketext Locale/Maketext/Simple Math/BigInt Math/BigRat Math/Complex Memoize Module/Build Module/CoreList Module/Load Module/Load/Conditional Module/Loaded Module/Metadata NEXT Net/Ping Package/Constants Params/Check Parse/CPAN/Meta Perl/OSType PerlIO/via/QuotedPrint Pod/Checker Pod/Escapes Pod/Functions Pod/Html Pod/Parser Pod/Perldoc Pod/Simple Pod/Usage Safe Search/Dict SelfLoader Term/ANSIColor Term/Cap Term/Complete Term/ReadLine Test Test/Harness Test/Simple Text/Abbrev Text/Balanced Text/ParseWords Text/Tabs Thread/Queue Thread/Semaphore Tie/File Tie/Memoize Tie/RefHash Time/Local XSLoader autodie autouse base bignum constant encoding/warnings experimental if lib libnet parent perlfaq podlators version' -privlib='/usr/lib/perl5/5.20' -privlibexp='/usr/lib/perl5/5.20' -archlib='/usr/lib/perl5/5.20' -archlibexp='/usr/lib/perl5/5.20' -version='5.20.2' -version_patchlevel_string='version 20 subversion 2' -PERL_VERSION=20 -PERL_API_VERSION=20 -PERL_SUBVERSION=2 -patchlevel='20' -ccdlflags='-fPIC -Wl,-rpath,/usr/lib/perl5/5.20/CORE' -subversion='2' +api_versionstring='5.22.0' +dynamic_ext='B Compress/Raw/Bzip2 Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/DosGlob File/Glob Filter/Util/Call GDBM_File Hash/Util Hash/Util/FieldHash I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc Opcode POSIX PerlIO/encoding PerlIO/mmap PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Tie/Hash/NamedCapture Time/HiRes Time/Piece Unicode/Collate XS/APItest XS/Typemap arybase attributes mro re threads threads/shared' +installarchlib='/usr/lib/perl5/5.22' +installprivlib='/usr/lib/perl5/5.22' +installsitearch='/usr/lib/perl5/5.22' +installsitelib='/usr/lib/perl5/5.22' +nonxs_ext='Archive/Tar Attribute/Handlers AutoLoader B/Debug CPAN CPAN/Meta CPAN/Meta/Requirements CPAN/Meta/YAML Carp Config/Perl/V Devel/SelfStubber Digest Dumpvalue Env Errno Exporter ExtUtils/CBuilder ExtUtils/Command ExtUtils/Constant ExtUtils/Install ExtUtils/MakeMaker ExtUtils/Manifest ExtUtils/Miniperl ExtUtils/ParseXS File/Fetch File/Find File/Path File/Temp FileCache Filter/Simple Getopt/Long HTTP/Tiny I18N/Collate I18N/LangTags IO/Compress IO/Socket/IP IO/Zlib IPC/Cmd IPC/Open3 JSON/PP Locale/Codes Locale/Maketext Locale/Maketext/Simple Math/BigInt Math/BigRat Math/Complex Memoize Module/CoreList Module/Load Module/Load/Conditional Module/Loaded Module/Metadata NEXT Net/Ping Params/Check Parse/CPAN/Meta Perl/OSType PerlIO/via/QuotedPrint Pod/Checker Pod/Escapes Pod/Functions Pod/Html Pod/Parser Pod/Perldoc Pod/Simple Pod/Usage Safe Search/Dict SelfLoader Term/ANSIColor Term/Cap Term/Complete Term/ReadLine Test Test/Harness Test/Simple Text/Abbrev Text/Balanced Text/ParseWords Text/Tabs Thread/Queue Thread/Semaphore Tie/File Tie/Memoize Tie/RefHash Time/Local XSLoader autodie autouse base bignum constant encoding/warnings experimental if lib libnet parent perlfaq podlators Unicode/Normalize version' +privlib='/usr/lib/perl5/5.22' +privlibexp='/usr/lib/perl5/5.22' +archlib='/usr/lib/perl5/5.22' +archlibexp='/usr/lib/perl5/5.22' +version='5.22.0' +version_patchlevel_string='version 22 subversion 0' +PERL_VERSION=22 +PERL_API_VERSION=22 +PERL_SUBVERSION=0 +patchlevel='22' +ccdlflags='-fPIC -Wl,-rpath,/usr/lib/perl5/5.22/CORE' +subversion='0' +extensions='B Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex Time/HiRes Time/Piece XS/APItest XS/Typemap attrs re threads threads/shared Hash/Util/FieldHash Compress/Zlib Errno IO_Compress_Base IO_Compress_Zlib Unicode/Normalize' +known_extensions='B Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc NDBM_File ODBM_File Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex Time/HiRes Time/Piece Unicode/Normalize Win32 Win32API/File Win32CORE XS/APItest XS/Typemap attrs re threads threads/shared Hash/Util/FieldHash' # Make perl use these tools instead of the target binaries during build hostgenerate='%%HOSTGENERATE%%' diff --git a/lang/perl/files/config.sh-i486-mt.in b/lang/perl/files/config.sh-i486-mt.in index bb8e06fcb..06c8c5e12 100644 --- a/lang/perl/files/config.sh-i486-mt.in +++ b/lang/perl/files/config.sh-i486-mt.in @@ -13,14 +13,13 @@ # Target system : linux maia 2.6.25 #2 sat apr 19 09:46:49 cest 2008 i686 unknown unknown gnulinux Author='' -Date='$Date' +Date='' Header='' -Id='$Id' +Id='' Locker='' -Log='$Log' -Mcc='Mcc' -RCSfile='$RCSfile' -Revision='$Revision' +Log='' +RCSfile='' +Revision='' Source='' State='' _a='.a' @@ -99,10 +98,13 @@ d_SCNfldbl='define' d__fwalk='undef' d_access='define' d_accessx='undef' +d_acosh='define' d_aintl='undef' d_alarm='define' d_archlib='undef' d_asctime_r='define' +d_asinh='define' +d_atanh='define' d_atolf='undef' d_atoll='define' d_attribute_format='define' @@ -112,6 +114,7 @@ d_attribute_noreturn='define' d_attribute_pure='define' d_attribute_unused='define' d_attribute_warn_unused_result='define' +d_backtrace='define' d_bcmp='define' d_bcopy='define' d_bsd='undef' @@ -123,6 +126,7 @@ d_bzero='define' d_c99_variadic_macros='define' d_casti32='undef' d_castneg='define' +d_cbrt='define' d_charvspr='undef' d_chown='define' d_chroot='define' @@ -132,6 +136,7 @@ d_clearenv='define' d_closedir='define' d_cmsghdr_s='define' d_const='define' +d_copysign='define' d_copysignl='undef' d_cplusplus='undef' d_crypt='%%CRYPT%%' @@ -147,6 +152,7 @@ d_difftime='define' d_dir_dd_fd='undef' d_dirfd='define' d_dirnamlen='undef' +d_dladdr='define' d_dlerror='define' d_dlopen='define' d_dlsymun='undef' @@ -168,7 +174,11 @@ d_endpwent_r='undef' d_endsent='define' d_endservent_r='undef' d_eofnblk='define' +d_erf='define' +d_erfc='define' d_eunice='undef' +d_exp2='define' +d_expm1='define' d_faststdio='undef' d_fchdir='define' d_fchmod='define' @@ -177,19 +187,27 @@ d_fcntl='define' d_fcntl_can_lock='define' d_fd_macros='define' d_fd_set='define' +d_fdim='define' d_fds_bits='define' +d_fegetround='undef' d_fgetpos='define' d_finite='define' d_finitel='undef' d_flexfnam='define' d_flock='define' d_flockproto='define' +d_fma='define' +d_fmax='define' +d_fmin='define' d_fork='define' d_fp_class='undef' +d_fp_classify='undef' +d_fp_classl='undef' d_fpathconf='define' d_fpclass='undef' -d_fpclassify='undef' +d_fpclassify='define' d_fpclassl='undef' +d_fpgetround='undef' d_fpos64_t='undef' d_frexpl='undef' d_fs_data_s='undef' @@ -262,27 +280,50 @@ d_gnulibc='undef' d_grpasswd='define' d_hasmntopt='define' d_htonl='define' +d_hypot='define' +d_ilogb='define' d_ilogbl='undef' d_inc_version_list='undef' d_index='undef' d_inetaton='define' d_int64_t='define' d_isascii='define' -d_isfinite='undef' +d_isfinite='define' +d_isfinitel='undef' d_isinf='define' +d_isinfl='define' +d_isless='undef' d_isnan='define' d_isnanl='undef' +d_isnormal='define' +d_j0='undef' +d_j0l='undef' d_killpg='define' +d_lc_monetary_2008='define' d_lchown='define' d_ldbl_dig='define' +d_ldexpl='define' +d_lgamma='define' +d_lgamma_r='define' d_libm_lib_version='define' d_link='define' +d_llrint='define' +d_llrintl='define' +d_llround='define' +d_llroundl='define' d_localtime_r='define' d_localtime_r_needs_tzset='define' d_locconv='define' d_lockf='define' +d_log1p='define' +d_log2='define' +d_logb='define' d_longdbl='define' d_longlong='define' +d_lrint='define' +d_lrintl='define' +d_lround='define' +d_lroundl='define' d_lseekproto='define' d_lstat='define' d_madvise='define' @@ -321,6 +362,10 @@ d_msgsnd='define' d_msync='define' d_munmap='define' d_mymalloc='undef' +d_nan='define' +d_nearbyint='define' +d_nextafter='define' +d_nexttoward='undef' d_nice='define' d_nl_langinfo='define' d_nv_preserves_uv='define' @@ -343,6 +388,7 @@ d_pseudofork='undef' d_pthread_atfork='define' d_pthread_attr_setscope='define' d_pthread_yield='define' +d_ptrdiff_t='define' d_pwage='undef' d_pwchange='undef' d_pwclass='undef' @@ -354,19 +400,27 @@ d_pwquota='undef' d_qgcvt='undef' d_quad='define' d_random_r='define' +d_re_comp='undef' d_readdir64_r='define' d_readdir='define' d_readdir_r='define' d_readlink='define' d_readv='define' d_recvmsg='define' +d_regcmp='undef' +d_regcomp='define' +d_remainder='define' +d_remquo='define' d_rename='define' d_rewinddir='define' +d_rint='define' d_rmdir='define' +d_round='define' d_safebcpy='undef' d_safemcpy='undef' d_sanemcmp='define' d_sbrkproto='define' +d_scalbn='define' d_scalbnl='undef' d_sched_yield='define' d_scm_rights='define' @@ -436,6 +490,7 @@ d_srand48_r='define' d_srandom_r='define' d_sresgproto='define' d_sresuproto='define' +d_stat='define' d_statblks='define' d_statfs_f_flags='undef' d_statfs_s='define' @@ -477,12 +532,15 @@ d_tcgetpgrp='define' d_tcsetpgrp='define' d_telldir='define' d_telldirproto='define' +d_tgamma='define' d_time='define' d_times='define' d_tm_tm_gmtoff='define' d_tm_tm_zone='define' d_tmpnam_r='define' +d_trunc='define' d_truncate='define' +d_truncl='define' d_ttyname_r='define' d_tzname='define' d_u32align='undef' @@ -508,7 +566,9 @@ d_vprintf='define' d_vsnprintf='define' d_wait4='define' d_waitpid='define' +d_wcscmp='define' d_wcstombs='define' +d_wcsxfrm='define' d_wctomb='define' d_writev='define' d_xenix='undef' @@ -522,6 +582,7 @@ defvoidused='15' direntrytype='struct dirent' dlext='so' dlsrc='dl_dlopen.xs' +doublekind='3' doublesize='8' drand01='drand48()' drand48_r_proto='REENTRANT_PROTO_I_ST' @@ -539,7 +600,6 @@ endservent_r_proto='0' eunicefix=':' exe_ext='' expr='expr' -extensions='B Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex Time/HiRes Time/Piece Unicode/Normalize XS/APItest XS/Typemap attrs re threads threads/shared Hash/Util/FieldHash Compress/Zlib Errno IO_Compress_Base IO_Compress_Zlib' extras='' fflushNULL='define' fflushall='undef' @@ -612,7 +672,9 @@ i_dbm='undef' i_dirent='define' i_dld='undef' i_dlfcn='define' +i_execinfo='define' i_fcntl='undef' +i_fenv='undef' i_float='define' i_fp='undef' i_fp_class='undef' @@ -638,6 +700,7 @@ i_poll='define' i_prot='undef' i_pthread='define' i_pwd='define' +i_quadmath='define' i_rpcsvcdbm='undef' i_sfio='undef' i_sgtty='undef' @@ -645,6 +708,7 @@ i_shadow='define' i_socks='undef' i_stdarg='define' i_stddef='define' +i_stdint='define' i_stdlib='define' i_string='define' i_sunmath='undef' @@ -721,7 +785,6 @@ issymlink='test -h' ivdformat='"ld"' ivsize='4' ivtype='long' -known_extensions='B Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc NDBM_File ODBM_File Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex Time/HiRes Time/Piece Unicode/Normalize Win32 Win32API/File Win32CORE XS/APItest XS/Typemap attrs re threads threads/shared Hash/Util/FieldHash' ksh='' ld='%%LD%%' lddlflags='-shared %%LDFLAGS%%' @@ -748,6 +811,7 @@ lns='/bin/ln -s' localtime_r_proto='REENTRANT_PROTO_S_TS' locincpth=' ' loclibpth=' ' +longdblkind='3' longdblsize='12' longlongsize='8' longsize='4' @@ -756,10 +820,6 @@ lpr='' ls='ls' lseeksize='8' lseektype='off_t' -mad='undef' -madlyh='' -madlyobj='' -madlysrc='' mail='' mailx='' make='make' @@ -972,6 +1032,7 @@ uquadtype='unsigned long long' use5005threads='undef' use64bitall='undef' use64bitint='undef' +usecbacktrace='undef' usecrosscompile='define' usedl='define' usefaststdio='undef' @@ -986,6 +1047,7 @@ usenm='true' useopcode='true' useperlio='define' useposix='true' +usequadmath='undef' usereentrant='undef' userelocatableinc='undef' usesfio='false' @@ -1050,7 +1112,6 @@ d_clock='define' # New symbols for perl 5.20.0 bin_ELF='define' -bootstrap_charset='undef' charbits='8' charsize='1' d_asctime64='undef' @@ -1085,6 +1146,7 @@ dtrace='' extern_C='extern' hostosname='' i_assert='define' +i_bfd='undef' i_gdbm_ndbm='undef' i_gdbmndbm='undef' i_mallocmalloc='undef' @@ -1122,27 +1184,29 @@ libdb_needs_pthread='N' # These symbols changed from perl 5.10.0 to 5.20.0 and probably will # change again for new versions, so they're included here for # future reference -api_version='20' +api_version='22' # Always set this to the base version, not the patched one! -api_versionstring='5.20.0' -dynamic_ext='B Compress/Raw/Bzip2 Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/DosGlob File/Glob Filter/Util/Call GDBM_File Hash/Util Hash/Util/FieldHash I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc Opcode POSIX PerlIO/encoding PerlIO/mmap PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Tie/Hash/NamedCapture Time/HiRes Time/Piece Unicode/Collate Unicode/Normalize XS/APItest XS/Typemap arybase attributes mro re threads threads/shared' -installarchlib='/usr/lib/perl5/5.20' -installprivlib='/usr/lib/perl5/5.20' -installsitearch='/usr/lib/perl5/5.20' -installsitelib='/usr/lib/perl5/5.20' -nonxs_ext='Archive/Tar Attribute/Handlers AutoLoader B/Debug CGI CPAN CPAN/Meta CPAN/Meta/Requirements CPAN/Meta/YAML Carp Config/Perl/V Devel/SelfStubber Digest Dumpvalue Env Errno Exporter ExtUtils/CBuilder ExtUtils/Command ExtUtils/Constant ExtUtils/Install ExtUtils/MakeMaker ExtUtils/Manifest ExtUtils/Miniperl ExtUtils/ParseXS File/Fetch File/Find File/Path File/Temp FileCache Filter/Simple Getopt/Long HTTP/Tiny I18N/Collate I18N/LangTags IO/Compress IO/Socket/IP IO/Zlib IPC/Cmd IPC/Open3 JSON/PP Locale/Codes Locale/Maketext Locale/Maketext/Simple Math/BigInt Math/BigRat Math/Complex Memoize Module/Build Module/CoreList Module/Load Module/Load/Conditional Module/Loaded Module/Metadata NEXT Net/Ping Package/Constants Params/Check Parse/CPAN/Meta Perl/OSType PerlIO/via/QuotedPrint Pod/Checker Pod/Escapes Pod/Functions Pod/Html Pod/Parser Pod/Perldoc Pod/Simple Pod/Usage Safe Search/Dict SelfLoader Term/ANSIColor Term/Cap Term/Complete Term/ReadLine Test Test/Harness Test/Simple Text/Abbrev Text/Balanced Text/ParseWords Text/Tabs Thread/Queue Thread/Semaphore Tie/File Tie/Memoize Tie/RefHash Time/Local XSLoader autodie autouse base bignum constant encoding/warnings experimental if lib libnet parent perlfaq podlators version' -privlib='/usr/lib/perl5/5.20' -privlibexp='/usr/lib/perl5/5.20' -archlib='/usr/lib/perl5/5.20' -archlibexp='/usr/lib/perl5/5.20' -version='5.20.2' -version_patchlevel_string='version 20 subversion 2' -PERL_VERSION=20 -PERL_API_VERSION=20 -PERL_SUBVERSION=2 -patchlevel='20' -ccdlflags='-fPIC -Wl,-rpath,/usr/lib/perl5/5.20/CORE' -subversion='2' +api_versionstring='5.22.0' +dynamic_ext='B Compress/Raw/Bzip2 Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/DosGlob File/Glob Filter/Util/Call GDBM_File Hash/Util Hash/Util/FieldHash I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc Opcode POSIX PerlIO/encoding PerlIO/mmap PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Tie/Hash/NamedCapture Time/HiRes Time/Piece Unicode/Collate XS/APItest XS/Typemap arybase attributes mro re threads threads/shared' +installarchlib='/usr/lib/perl5/5.22' +installprivlib='/usr/lib/perl5/5.22' +installsitearch='/usr/lib/perl5/5.22' +installsitelib='/usr/lib/perl5/5.22' +nonxs_ext='Archive/Tar Attribute/Handlers AutoLoader B/Debug CPAN CPAN/Meta CPAN/Meta/Requirements CPAN/Meta/YAML Carp Config/Perl/V Devel/SelfStubber Digest Dumpvalue Env Errno Exporter ExtUtils/CBuilder ExtUtils/Command ExtUtils/Constant ExtUtils/Install ExtUtils/MakeMaker ExtUtils/Manifest ExtUtils/Miniperl ExtUtils/ParseXS File/Fetch File/Find File/Path File/Temp FileCache Filter/Simple Getopt/Long HTTP/Tiny I18N/Collate I18N/LangTags IO/Compress IO/Socket/IP IO/Zlib IPC/Cmd IPC/Open3 JSON/PP Locale/Codes Locale/Maketext Locale/Maketext/Simple Math/BigInt Math/BigRat Math/Complex Memoize Module/CoreList Module/Load Module/Load/Conditional Module/Loaded Module/Metadata NEXT Net/Ping Params/Check Parse/CPAN/Meta Perl/OSType PerlIO/via/QuotedPrint Pod/Checker Pod/Escapes Pod/Functions Pod/Html Pod/Parser Pod/Perldoc Pod/Simple Pod/Usage Safe Search/Dict SelfLoader Term/ANSIColor Term/Cap Term/Complete Term/ReadLine Test Test/Harness Test/Simple Text/Abbrev Text/Balanced Text/ParseWords Text/Tabs Thread/Queue Thread/Semaphore Tie/File Tie/Memoize Tie/RefHash Time/Local XSLoader autodie autouse base bignum constant encoding/warnings experimental if lib libnet parent perlfaq podlators Unicode/Normalize version' +privlib='/usr/lib/perl5/5.22' +privlibexp='/usr/lib/perl5/5.22' +archlib='/usr/lib/perl5/5.22' +archlibexp='/usr/lib/perl5/5.22' +version='5.22.0' +version_patchlevel_string='version 22 subversion 0' +PERL_VERSION=22 +PERL_API_VERSION=22 +PERL_SUBVERSION=0 +patchlevel='22' +ccdlflags='-fPIC -Wl,-rpath,/usr/lib/perl5/5.22/CORE' +subversion='0' +extensions='B Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex Time/HiRes Time/Piece XS/APItest XS/Typemap attrs re threads threads/shared Hash/Util/FieldHash Compress/Zlib Errno IO_Compress_Base IO_Compress_Zlib Unicode/Normalize' +known_extensions='B Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc NDBM_File ODBM_File Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex Time/HiRes Time/Piece Unicode/Normalize Win32 Win32API/File Win32CORE XS/APItest XS/Typemap attrs re threads threads/shared Hash/Util/FieldHash' # Make perl use these tools instead of the target binaries during build hostgenerate='%%HOSTGENERATE%%' diff --git a/lang/perl/files/config.sh-i486.in b/lang/perl/files/config.sh-i486.in index b28b020fd..a4230378e 100644 --- a/lang/perl/files/config.sh-i486.in +++ b/lang/perl/files/config.sh-i486.in @@ -13,14 +13,13 @@ # Target system : linux maia 2.6.25 #2 sat apr 19 09:46:49 cest 2008 i686 unknown unknown gnulinux Author='' -Date='$Date' +Date='' Header='' -Id='$Id' +Id='' Locker='' -Log='$Log' -Mcc='Mcc' -RCSfile='$RCSfile' -Revision='$Revision' +Log='' +RCSfile='' +Revision='' Source='' State='' _a='.a' @@ -99,10 +98,13 @@ d_SCNfldbl='define' d__fwalk='undef' d_access='define' d_accessx='undef' +d_acosh='define' d_aintl='undef' d_alarm='define' d_archlib='undef' d_asctime_r='undef' +d_asinh='define' +d_atanh='define' d_atolf='undef' d_atoll='define' d_attribute_format='define' @@ -112,6 +114,7 @@ d_attribute_noreturn='define' d_attribute_pure='define' d_attribute_unused='define' d_attribute_warn_unused_result='define' +d_backtrace='define' d_bcmp='define' d_bcopy='define' d_bsd='undef' @@ -123,6 +126,7 @@ d_bzero='define' d_c99_variadic_macros='define' d_casti32='undef' d_castneg='define' +d_cbrt='define' d_charvspr='undef' d_chown='define' d_chroot='define' @@ -132,6 +136,7 @@ d_clearenv='define' d_closedir='define' d_cmsghdr_s='define' d_const='define' +d_copysign='define' d_copysignl='undef' d_cplusplus='undef' d_crypt='define' @@ -147,6 +152,7 @@ d_difftime='define' d_dir_dd_fd='undef' d_dirfd='define' d_dirnamlen='undef' +d_dladdr='define' d_dlerror='define' d_dlopen='define' d_dlsymun='undef' @@ -168,7 +174,11 @@ d_endpwent_r='undef' d_endsent='define' d_endservent_r='undef' d_eofnblk='define' +d_erf='define' +d_erfc='define' d_eunice='undef' +d_exp2='define' +d_expm1='define' d_faststdio='undef' d_fchdir='define' d_fchmod='define' @@ -177,19 +187,27 @@ d_fcntl='define' d_fcntl_can_lock='define' d_fd_macros='define' d_fd_set='define' +d_fdim='define' d_fds_bits='undef' +d_fegetround='undef' d_fgetpos='define' d_finite='define' d_finitel='undef' d_flexfnam='define' d_flock='define' d_flockproto='define' +d_fma='define' +d_fmax='define' +d_fmin='define' d_fork='define' d_fp_class='undef' +d_fp_classify='undef' +d_fp_classl='undef' d_fpathconf='define' d_fpclass='undef' -d_fpclassify='undef' +d_fpclassify='define' d_fpclassl='undef' +d_fpgetround='undef' d_fpos64_t='undef' d_frexpl='undef' d_fs_data_s='undef' @@ -262,27 +280,50 @@ d_gnulibc='undef' d_grpasswd='define' d_hasmntopt='define' d_htonl='define' +d_hypot='define' +d_ilogb='define' d_ilogbl='undef' d_inc_version_list='undef' d_index='undef' d_inetaton='define' d_int64_t='define' d_isascii='define' -d_isfinite='undef' +d_isfinite='define' +d_isfinitel='undef' d_isinf='define' +d_isinfl='define' +d_isless='undef' d_isnan='define' d_isnanl='undef' +d_isnormal='define' +d_j0='undef' +d_j0l='undef' d_killpg='define' +d_lc_monetary_2008='define' d_lchown='define' d_ldbl_dig='define' +d_ldexpl='define' +d_lgamma='define' +d_lgamma_r='define' d_libm_lib_version='define' d_link='define' +d_llrint='define' +d_llrintl='define' +d_llround='define' +d_llroundl='define' d_localtime_r='undef' d_localtime_r_needs_tzset='undef' d_locconv='define' d_lockf='define' +d_log1p='define' +d_log2='define' +d_logb='define' d_longdbl='define' d_longlong='define' +d_lrint='define' +d_lrintl='define' +d_lround='define' +d_lroundl='define' d_lseekproto='define' d_lstat='define' d_madvise='define' @@ -321,6 +362,10 @@ d_msgsnd='define' d_msync='define' d_munmap='define' d_mymalloc='undef' +d_nan='define' +d_nearbyint='define' +d_nextafter='define' +d_nexttoward='undef' d_nice='define' d_nl_langinfo='define' d_nv_preserves_uv='define' @@ -343,6 +388,7 @@ d_pseudofork='undef' d_pthread_atfork='undef' d_pthread_attr_setscope='define' d_pthread_yield='undef' +d_ptrdiff_t='define' d_pwage='undef' d_pwchange='undef' d_pwclass='undef' @@ -354,19 +400,27 @@ d_pwquota='undef' d_qgcvt='undef' d_quad='define' d_random_r='undef' +d_re_comp='undef' d_readdir64_r='undef' d_readdir='define' d_readdir_r='undef' d_readlink='define' d_readv='define' d_recvmsg='define' +d_regcmp='undef' +d_regcomp='define' +d_remainder='define' +d_remquo='define' d_rename='define' d_rewinddir='define' +d_rint='define' d_rmdir='define' +d_round='define' d_safebcpy='undef' d_safemcpy='undef' d_sanemcmp='define' d_sbrkproto='define' +d_scalbn='define' d_scalbnl='undef' d_sched_yield='define' d_scm_rights='define' @@ -436,6 +490,7 @@ d_srand48_r='undef' d_srandom_r='undef' d_sresgproto='undef' d_sresuproto='undef' +d_stat='define' d_statblks='define' d_statfs_f_flags='undef' d_statfs_s='define' @@ -477,12 +532,15 @@ d_tcgetpgrp='define' d_tcsetpgrp='define' d_telldir='define' d_telldirproto='define' +d_tgamma='define' d_time='define' d_times='define' d_tm_tm_gmtoff='define' d_tm_tm_zone='define' d_tmpnam_r='undef' +d_trunc='define' d_truncate='define' +d_truncl='define' d_ttyname_r='undef' d_tzname='define' d_u32align='undef' @@ -508,7 +566,9 @@ d_vprintf='define' d_vsnprintf='define' d_wait4='define' d_waitpid='define' +d_wcscmp='define' d_wcstombs='define' +d_wcsxfrm='define' d_wctomb='define' d_writev='define' d_xenix='undef' @@ -522,6 +582,7 @@ defvoidused='15' direntrytype='struct dirent' dlext='so' dlsrc='dl_dlopen.xs' +doublekind='3' doublesize='8' drand01='drand48()' drand48_r_proto='0' @@ -539,7 +600,6 @@ endservent_r_proto='0' eunicefix=':' exe_ext='' expr='expr' -extensions='B Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex Time/HiRes Time/Piece Unicode/Normalize XS/APItest XS/Typemap attrs re threads threads/shared Hash/Util/FieldHash Compress/Zlib Errno IO_Compress_Base IO_Compress_Zlib' extras='' fflushNULL='define' fflushall='undef' @@ -612,7 +672,9 @@ i_dbm='undef' i_dirent='define' i_dld='undef' i_dlfcn='define' +i_execinfo='define' i_fcntl='undef' +i_fenv='undef' i_float='define' i_fp='undef' i_fp_class='undef' @@ -638,6 +700,7 @@ i_poll='define' i_prot='undef' i_pthread='define' i_pwd='define' +i_quadmath='define' i_rpcsvcdbm='undef' i_sfio='undef' i_sgtty='undef' @@ -645,6 +708,7 @@ i_shadow='define' i_socks='undef' i_stdarg='define' i_stddef='define' +i_stdint='define' i_stdlib='define' i_string='define' i_sunmath='undef' @@ -721,7 +785,6 @@ issymlink='test -h' ivdformat='"ld"' ivsize='4' ivtype='long' -known_extensions='B Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc NDBM_File ODBM_File Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex Time/HiRes Time/Piece Unicode/Normalize Win32 Win32API/File Win32CORE XS/APItest XS/Typemap attrs re threads threads/shared Hash/Util/FieldHash' ksh='' ld='%%LD%%' lddlflags='-shared %%LDFLAGS%%' @@ -748,6 +811,7 @@ lns='/bin/ln -s' localtime_r_proto='0' locincpth=' ' loclibpth=' ' +longdblkind='3' longdblsize='12' longlongsize='8' longsize='4' @@ -756,10 +820,6 @@ lpr='' ls='ls' lseeksize='8' lseektype='off_t' -mad='undef' -madlyh='' -madlyobj='' -madlysrc='' mail='' mailx='' make='make' @@ -972,6 +1032,7 @@ uquadtype='unsigned long long' use5005threads='undef' use64bitall='undef' use64bitint='undef' +usecbacktrace='undef' usecrosscompile='define' usedl='define' usefaststdio='undef' @@ -986,6 +1047,7 @@ usenm='true' useopcode='true' useperlio='define' useposix='true' +usequadmath='undef' usereentrant='undef' userelocatableinc='undef' usesfio='false' @@ -1049,7 +1111,6 @@ d_clock='define' # New symbols for perl 5.20.0 bin_ELF='define' -bootstrap_charset='undef' charbits='8' charsize='1' d_asctime64='undef' @@ -1084,6 +1145,7 @@ dtrace='' extern_C='extern' hostosname='' i_assert='define' +i_bfd='undef' i_gdbm_ndbm='undef' i_gdbmndbm='undef' i_mallocmalloc='undef' @@ -1121,27 +1183,29 @@ libdb_needs_pthread='N' # These symbols changed from perl 5.10.0 to 5.20.0 and probably will # change again for new versions, so they're included here for # future reference -api_version='20' +api_version='22' # Always set this to the base version, not the patched one! -api_versionstring='5.20.0' -dynamic_ext='B Compress/Raw/Bzip2 Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/DosGlob File/Glob Filter/Util/Call GDBM_File Hash/Util Hash/Util/FieldHash I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc Opcode POSIX PerlIO/encoding PerlIO/mmap PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Tie/Hash/NamedCapture Time/HiRes Time/Piece Unicode/Collate Unicode/Normalize XS/APItest XS/Typemap arybase attributes mro re threads threads/shared' -installarchlib='/usr/lib/perl5/5.20' -installprivlib='/usr/lib/perl5/5.20' -installsitearch='/usr/lib/perl5/5.20' -installsitelib='/usr/lib/perl5/5.20' -nonxs_ext='Archive/Tar Attribute/Handlers AutoLoader B/Debug CGI CPAN CPAN/Meta CPAN/Meta/Requirements CPAN/Meta/YAML Carp Config/Perl/V Devel/SelfStubber Digest Dumpvalue Env Errno Exporter ExtUtils/CBuilder ExtUtils/Command ExtUtils/Constant ExtUtils/Install ExtUtils/MakeMaker ExtUtils/Manifest ExtUtils/Miniperl ExtUtils/ParseXS File/Fetch File/Find File/Path File/Temp FileCache Filter/Simple Getopt/Long HTTP/Tiny I18N/Collate I18N/LangTags IO/Compress IO/Socket/IP IO/Zlib IPC/Cmd IPC/Open3 JSON/PP Locale/Codes Locale/Maketext Locale/Maketext/Simple Math/BigInt Math/BigRat Math/Complex Memoize Module/Build Module/CoreList Module/Load Module/Load/Conditional Module/Loaded Module/Metadata NEXT Net/Ping Package/Constants Params/Check Parse/CPAN/Meta Perl/OSType PerlIO/via/QuotedPrint Pod/Checker Pod/Escapes Pod/Functions Pod/Html Pod/Parser Pod/Perldoc Pod/Simple Pod/Usage Safe Search/Dict SelfLoader Term/ANSIColor Term/Cap Term/Complete Term/ReadLine Test Test/Harness Test/Simple Text/Abbrev Text/Balanced Text/ParseWords Text/Tabs Thread/Queue Thread/Semaphore Tie/File Tie/Memoize Tie/RefHash Time/Local XSLoader autodie autouse base bignum constant encoding/warnings experimental if lib libnet parent perlfaq podlators version' -privlib='/usr/lib/perl5/5.20' -privlibexp='/usr/lib/perl5/5.20' -archlib='/usr/lib/perl5/5.20' -archlibexp='/usr/lib/perl5/5.20' -version='5.20.2' -version_patchlevel_string='version 20 subversion 2' -PERL_VERSION=20 -PERL_API_VERSION=20 -PERL_SUBVERSION=2 -patchlevel='20' -ccdlflags='-fPIC -Wl,-rpath,/usr/lib/perl5/5.20/CORE' -subversion='2' +api_versionstring='5.22.0' +dynamic_ext='B Compress/Raw/Bzip2 Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/DosGlob File/Glob Filter/Util/Call GDBM_File Hash/Util Hash/Util/FieldHash I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc Opcode POSIX PerlIO/encoding PerlIO/mmap PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Tie/Hash/NamedCapture Time/HiRes Time/Piece Unicode/Collate XS/APItest XS/Typemap arybase attributes mro re threads threads/shared' +installarchlib='/usr/lib/perl5/5.22' +installprivlib='/usr/lib/perl5/5.22' +installsitearch='/usr/lib/perl5/5.22' +installsitelib='/usr/lib/perl5/5.22' +nonxs_ext='Archive/Tar Attribute/Handlers AutoLoader B/Debug CPAN CPAN/Meta CPAN/Meta/Requirements CPAN/Meta/YAML Carp Config/Perl/V Devel/SelfStubber Digest Dumpvalue Env Errno Exporter ExtUtils/CBuilder ExtUtils/Command ExtUtils/Constant ExtUtils/Install ExtUtils/MakeMaker ExtUtils/Manifest ExtUtils/Miniperl ExtUtils/ParseXS File/Fetch File/Find File/Path File/Temp FileCache Filter/Simple Getopt/Long HTTP/Tiny I18N/Collate I18N/LangTags IO/Compress IO/Socket/IP IO/Zlib IPC/Cmd IPC/Open3 JSON/PP Locale/Codes Locale/Maketext Locale/Maketext/Simple Math/BigInt Math/BigRat Math/Complex Memoize Module/CoreList Module/Load Module/Load/Conditional Module/Loaded Module/Metadata NEXT Net/Ping Params/Check Parse/CPAN/Meta Perl/OSType PerlIO/via/QuotedPrint Pod/Checker Pod/Escapes Pod/Functions Pod/Html Pod/Parser Pod/Perldoc Pod/Simple Pod/Usage Safe Search/Dict SelfLoader Term/ANSIColor Term/Cap Term/Complete Term/ReadLine Test Test/Harness Test/Simple Text/Abbrev Text/Balanced Text/ParseWords Text/Tabs Thread/Queue Thread/Semaphore Tie/File Tie/Memoize Tie/RefHash Time/Local XSLoader autodie autouse base bignum constant encoding/warnings experimental if lib libnet parent perlfaq podlators Unicode/Normalize version' +privlib='/usr/lib/perl5/5.22' +privlibexp='/usr/lib/perl5/5.22' +archlib='/usr/lib/perl5/5.22' +archlibexp='/usr/lib/perl5/5.22' +version='5.22.0' +version_patchlevel_string='version 22 subversion 0' +PERL_VERSION=22 +PERL_API_VERSION=22 +PERL_SUBVERSION=0 +patchlevel='22' +ccdlflags='-fPIC -Wl,-rpath,/usr/lib/perl5/5.22/CORE' +subversion='0' +extensions='B Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex Time/HiRes Time/Piece XS/APItest XS/Typemap attrs re threads threads/shared Hash/Util/FieldHash Compress/Zlib Errno IO_Compress_Base IO_Compress_Zlib Unicode/Normalize' +known_extensions='B Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc NDBM_File ODBM_File Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex Time/HiRes Time/Piece Unicode/Normalize Win32 Win32API/File Win32CORE XS/APItest XS/Typemap attrs re threads threads/shared Hash/Util/FieldHash' # Make perl use these tools instead of the target binaries during build hostgenerate='%%HOSTGENERATE%%' diff --git a/lang/perl/files/config.sh-mips-mt.in b/lang/perl/files/config.sh-mips-mt.in index 434d99f87..c7774016a 100644 --- a/lang/perl/files/config.sh-mips-mt.in +++ b/lang/perl/files/config.sh-mips-mt.in @@ -13,14 +13,13 @@ # Target system : linux merope 2.4.30 #1 di 23. jan 15:23:42 cet 2007 mips unknown unknown gnulinux Author='' -Date='$Date' +Date='' Header='' -Id='$Id' +Id='' Locker='' -Log='$Log' -Mcc='Mcc' -RCSfile='$RCSfile' -Revision='$Revision' +Log='' +RCSfile='' +Revision='' Source='' State='' _a='.a' @@ -101,10 +100,13 @@ d_SCNfldbl='define' d__fwalk='undef' d_access='define' d_accessx='undef' +d_acosh='define' d_aintl='undef' d_alarm='define' d_archlib='undef' d_asctime_r='define' +d_asinh='define' +d_atanh='define' d_atolf='undef' d_atoll='define' d_attribute_format='define' @@ -114,6 +116,7 @@ d_attribute_noreturn='define' d_attribute_pure='define' d_attribute_unused='define' d_attribute_warn_unused_result='define' +d_backtrace='define' d_bcmp='define' d_bcopy='define' d_bsd='undef' @@ -125,6 +128,7 @@ d_bzero='define' d_c99_variadic_macros='define' d_casti32='define' d_castneg='define' +d_cbrt='define' d_charvspr='undef' d_chown='define' d_chroot='define' @@ -134,6 +138,7 @@ d_clearenv='define' d_closedir='define' d_cmsghdr_s='define' d_const='define' +d_copysign='define' d_copysignl='undef' d_cplusplus='undef' d_crypt='%%CRYPT%%' @@ -149,6 +154,7 @@ d_difftime='define' d_dir_dd_fd='undef' d_dirfd='define' d_dirnamlen='undef' +d_dladdr='define' d_dlerror='define' d_dlopen='define' d_dlsymun='undef' @@ -170,7 +176,11 @@ d_endpwent_r='undef' d_endsent='define' d_endservent_r='undef' d_eofnblk='define' +d_erf='define' +d_erfc='define' d_eunice='undef' +d_exp2='define' +d_expm1='define' d_faststdio='undef' d_fchdir='define' d_fchmod='define' @@ -179,19 +189,27 @@ d_fcntl='define' d_fcntl_can_lock='define' d_fd_macros='define' d_fd_set='define' +d_fdim='define' d_fds_bits='define' +d_fegetround='undef' d_fgetpos='define' d_finite='define' d_finitel='undef' d_flexfnam='define' d_flock='define' d_flockproto='define' +d_fma='define' +d_fmax='define' +d_fmin='define' d_fork='define' d_fp_class='undef' +d_fp_classify='undef' +d_fp_classl='undef' d_fpathconf='define' d_fpclass='undef' -d_fpclassify='undef' +d_fpclassify='define' d_fpclassl='undef' +d_fpgetround='undef' d_fpos64_t='undef' d_frexpl='undef' d_fs_data_s='undef' @@ -264,27 +282,50 @@ d_gnulibc='undef' d_grpasswd='define' d_hasmntopt='define' d_htonl='define' +d_hypot='define' +d_ilogb='define' d_ilogbl='undef' d_inc_version_list='undef' d_index='undef' d_inetaton='define' d_int64_t='define' d_isascii='define' -d_isfinite='undef' +d_isfinite='define' +d_isfinitel='undef' d_isinf='define' +d_isinfl='define' +d_isless='undef' d_isnan='define' d_isnanl='undef' +d_isnormal='define' +d_j0='undef' +d_j0l='undef' d_killpg='define' +d_lc_monetary_2008='define' d_lchown='define' d_ldbl_dig='define' +d_ldexpl='define' +d_lgamma='define' +d_lgamma_r='define' d_libm_lib_version='define' d_link='define' +d_llrint='define' +d_llrintl='define' +d_llround='define' +d_llroundl='define' d_localtime_r='define' d_localtime_r_needs_tzset='define' d_locconv='define' d_lockf='define' +d_log1p='define' +d_log2='define' +d_logb='define' d_longdbl='define' d_longlong='define' +d_lrint='define' +d_lrintl='define' +d_lround='define' +d_lroundl='define' d_lseekproto='define' d_lstat='define' d_madvise='define' @@ -323,6 +364,10 @@ d_msgsnd='define' d_msync='define' d_munmap='define' d_mymalloc='undef' +d_nan='define' +d_nearbyint='define' +d_nextafter='define' +d_nexttoward='undef' d_nice='define' d_nl_langinfo='define' d_nv_preserves_uv='define' @@ -345,6 +390,7 @@ d_pseudofork='undef' d_pthread_atfork='define' d_pthread_attr_setscope='define' d_pthread_yield='define' +d_ptrdiff_t='define' d_pwage='undef' d_pwchange='undef' d_pwclass='undef' @@ -356,19 +402,27 @@ d_pwquota='undef' d_qgcvt='undef' d_quad='define' d_random_r='define' +d_re_comp='undef' d_readdir64_r='define' d_readdir='define' d_readdir_r='define' d_readlink='define' d_readv='define' d_recvmsg='define' +d_regcmp='undef' +d_regcomp='define' +d_remainder='define' +d_remquo='define' d_rename='define' d_rewinddir='define' +d_rint='define' d_rmdir='define' +d_round='define' d_safebcpy='undef' d_safemcpy='undef' d_sanemcmp='define' d_sbrkproto='define' +d_scalbn='define' d_scalbnl='undef' d_sched_yield='define' d_scm_rights='define' @@ -438,6 +492,7 @@ d_srand48_r='define' d_srandom_r='define' d_sresgproto='define' d_sresuproto='define' +d_stat='define' d_statblks='define' d_statfs_f_flags='undef' d_statfs_s='define' @@ -479,12 +534,15 @@ d_tcgetpgrp='define' d_tcsetpgrp='define' d_telldir='define' d_telldirproto='define' +d_tgamma='define' d_time='define' d_times='define' d_tm_tm_gmtoff='define' d_tm_tm_zone='define' d_tmpnam_r='define' +d_trunc='define' d_truncate='define' +d_truncl='define' d_ttyname_r='define' d_tzname='define' d_u32align='undef' @@ -510,7 +568,9 @@ d_vprintf='define' d_vsnprintf='define' d_wait4='define' d_waitpid='define' +d_wcscmp='define' d_wcstombs='define' +d_wcsxfrm='define' d_wctomb='define' d_writev='define' d_xenix='undef' @@ -524,6 +584,7 @@ defvoidused='15' direntrytype='struct dirent' dlext='so' dlsrc='dl_dlopen.xs' +doublekind='4' doublesize='8' drand01='drand48()' drand48_r_proto='REENTRANT_PROTO_I_ST' @@ -542,7 +603,6 @@ endservent_r_proto='0' eunicefix=':' exe_ext='' expr='expr' -extensions='B Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex Time/HiRes Time/Piece Unicode/Normalize XS/APItest XS/Typemap attrs re threads threads/shared Hash/Util/FieldHash Compress/Zlib Errno IO_Compress_Base IO_Compress_Zlib' extras='' fflushNULL='define' fflushall='undef' @@ -615,7 +675,9 @@ i_dbm='undef' i_dirent='define' i_dld='undef' i_dlfcn='define' +i_execinfo='define' i_fcntl='undef' +i_fenv='undef' i_float='define' i_fp='undef' i_fp_class='undef' @@ -641,6 +703,7 @@ i_poll='define' i_prot='undef' i_pthread='define' i_pwd='define' +i_quadmath='define' i_rpcsvcdbm='undef' i_sfio='undef' i_sgtty='undef' @@ -648,6 +711,7 @@ i_shadow='define' i_socks='undef' i_stdarg='define' i_stddef='define' +i_stdint='define' i_stdlib='define' i_string='define' i_sunmath='undef' @@ -728,7 +792,6 @@ issymlink='test -h' ivdformat='"ld"' ivsize='4' ivtype='long' -known_extensions='B Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc NDBM_File ODBM_File Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex Time/HiRes Time/Piece Unicode/Normalize Win32 Win32API/File Win32CORE XS/APItest XS/Typemap attrs re threads threads/shared Hash/Util/FieldHash' ksh='' ld='%%LD%%' lddlflags='-shared %%LDFLAGS%%' @@ -755,6 +818,7 @@ lns='/bin/ln -s' localtime_r_proto='REENTRANT_PROTO_S_TS' locincpth=' ' loclibpth=' ' +longdblkind='0' longdblsize='8' longlongsize='8' longsize='4' @@ -763,10 +827,6 @@ lpr='' ls='ls' lseeksize='8' lseektype='off_t' -mad='undef' -madlyh='' -madlyobj='' -madlysrc='' mail='' mailx='' make='make' @@ -983,6 +1043,7 @@ uquadtype='unsigned long long' use5005threads='undef' use64bitall='undef' use64bitint='undef' +usecbacktrace='undef' usecrosscompile='define' usedl='define' usefaststdio='undef' @@ -997,6 +1058,7 @@ usenm='true' useopcode='true' useperlio='define' useposix='true' +usequadmath='undef' usereentrant='undef' userelocatableinc='undef' usesfio='false' @@ -1064,7 +1126,6 @@ d_clock='define' # New symbols for perl 5.20.0 bin_ELF='define' -bootstrap_charset='undef' charbits='8' charsize='1' d_asctime64='undef' @@ -1099,6 +1160,7 @@ dtrace='' extern_C='extern' hostosname='' i_assert='define' +i_bfd='undef' i_gdbm_ndbm='undef' i_gdbmndbm='undef' i_mallocmalloc='undef' @@ -1136,27 +1198,29 @@ libdb_needs_pthread='N' # These symbols changed from perl 5.10.0 to 5.20.0 and probably will # change again for new versions, so they're included here for # future reference -api_version='20' +api_version='22' # Always set this to the base version, not the patched one! -api_versionstring='5.20.0' -dynamic_ext='B Compress/Raw/Bzip2 Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/DosGlob File/Glob Filter/Util/Call GDBM_File Hash/Util Hash/Util/FieldHash I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc Opcode POSIX PerlIO/encoding PerlIO/mmap PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Tie/Hash/NamedCapture Time/HiRes Time/Piece Unicode/Collate Unicode/Normalize XS/APItest XS/Typemap arybase attributes mro re threads threads/shared' -installarchlib='/usr/lib/perl5/5.20' -installprivlib='/usr/lib/perl5/5.20' -installsitearch='/usr/lib/perl5/5.20' -installsitelib='/usr/lib/perl5/5.20' -nonxs_ext='Archive/Tar Attribute/Handlers AutoLoader B/Debug CGI CPAN CPAN/Meta CPAN/Meta/Requirements CPAN/Meta/YAML Carp Config/Perl/V Devel/SelfStubber Digest Dumpvalue Env Errno Exporter ExtUtils/CBuilder ExtUtils/Command ExtUtils/Constant ExtUtils/Install ExtUtils/MakeMaker ExtUtils/Manifest ExtUtils/Miniperl ExtUtils/ParseXS File/Fetch File/Find File/Path File/Temp FileCache Filter/Simple Getopt/Long HTTP/Tiny I18N/Collate I18N/LangTags IO/Compress IO/Socket/IP IO/Zlib IPC/Cmd IPC/Open3 JSON/PP Locale/Codes Locale/Maketext Locale/Maketext/Simple Math/BigInt Math/BigRat Math/Complex Memoize Module/Build Module/CoreList Module/Load Module/Load/Conditional Module/Loaded Module/Metadata NEXT Net/Ping Package/Constants Params/Check Parse/CPAN/Meta Perl/OSType PerlIO/via/QuotedPrint Pod/Checker Pod/Escapes Pod/Functions Pod/Html Pod/Parser Pod/Perldoc Pod/Simple Pod/Usage Safe Search/Dict SelfLoader Term/ANSIColor Term/Cap Term/Complete Term/ReadLine Test Test/Harness Test/Simple Text/Abbrev Text/Balanced Text/ParseWords Text/Tabs Thread/Queue Thread/Semaphore Tie/File Tie/Memoize Tie/RefHash Time/Local XSLoader autodie autouse base bignum constant encoding/warnings experimental if lib libnet parent perlfaq podlators version' -privlib='/usr/lib/perl5/5.20' -privlibexp='/usr/lib/perl5/5.20' -archlib='/usr/lib/perl5/5.20' -archlibexp='/usr/lib/perl5/5.20' -version='5.20.2' -version_patchlevel_string='version 20 subversion 2' -PERL_VERSION=20 -PERL_API_VERSION=20 -PERL_SUBVERSION=2 -patchlevel='20' -ccdlflags='-fPIC -Wl,-rpath,/usr/lib/perl5/5.20/CORE' -subversion='2' +api_versionstring='5.22.0' +dynamic_ext='B Compress/Raw/Bzip2 Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/DosGlob File/Glob Filter/Util/Call GDBM_File Hash/Util Hash/Util/FieldHash I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc Opcode POSIX PerlIO/encoding PerlIO/mmap PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Tie/Hash/NamedCapture Time/HiRes Time/Piece Unicode/Collate XS/APItest XS/Typemap arybase attributes mro re threads threads/shared' +installarchlib='/usr/lib/perl5/5.22' +installprivlib='/usr/lib/perl5/5.22' +installsitearch='/usr/lib/perl5/5.22' +installsitelib='/usr/lib/perl5/5.22' +nonxs_ext='Archive/Tar Attribute/Handlers AutoLoader B/Debug CPAN CPAN/Meta CPAN/Meta/Requirements CPAN/Meta/YAML Carp Config/Perl/V Devel/SelfStubber Digest Dumpvalue Env Errno Exporter ExtUtils/CBuilder ExtUtils/Command ExtUtils/Constant ExtUtils/Install ExtUtils/MakeMaker ExtUtils/Manifest ExtUtils/Miniperl ExtUtils/ParseXS File/Fetch File/Find File/Path File/Temp FileCache Filter/Simple Getopt/Long HTTP/Tiny I18N/Collate I18N/LangTags IO/Compress IO/Socket/IP IO/Zlib IPC/Cmd IPC/Open3 JSON/PP Locale/Codes Locale/Maketext Locale/Maketext/Simple Math/BigInt Math/BigRat Math/Complex Memoize Module/CoreList Module/Load Module/Load/Conditional Module/Loaded Module/Metadata NEXT Net/Ping Params/Check Parse/CPAN/Meta Perl/OSType PerlIO/via/QuotedPrint Pod/Checker Pod/Escapes Pod/Functions Pod/Html Pod/Parser Pod/Perldoc Pod/Simple Pod/Usage Safe Search/Dict SelfLoader Term/ANSIColor Term/Cap Term/Complete Term/ReadLine Test Test/Harness Test/Simple Text/Abbrev Text/Balanced Text/ParseWords Text/Tabs Thread/Queue Thread/Semaphore Tie/File Tie/Memoize Tie/RefHash Time/Local XSLoader autodie autouse base bignum constant encoding/warnings experimental if lib libnet parent perlfaq podlators Unicode/Normalize version' +privlib='/usr/lib/perl5/5.22' +privlibexp='/usr/lib/perl5/5.22' +archlib='/usr/lib/perl5/5.22' +archlibexp='/usr/lib/perl5/5.22' +version='5.22.0' +version_patchlevel_string='version 22 subversion 0' +PERL_VERSION=22 +PERL_API_VERSION=22 +PERL_SUBVERSION=0 +patchlevel='22' +ccdlflags='-fPIC -Wl,-rpath,/usr/lib/perl5/5.22/CORE' +subversion='0' +extensions='B Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex Time/HiRes Time/Piece XS/APItest XS/Typemap attrs re threads threads/shared Hash/Util/FieldHash Compress/Zlib Errno IO_Compress_Base IO_Compress_Zlib Unicode/Normalize' +known_extensions='B Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc NDBM_File ODBM_File Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex Time/HiRes Time/Piece Unicode/Normalize Win32 Win32API/File Win32CORE XS/APItest XS/Typemap attrs re threads threads/shared Hash/Util/FieldHash' # Make perl use these tools instead of the target binaries during build hostgenerate='%%HOSTGENERATE%%' diff --git a/lang/perl/files/config.sh-mips.in b/lang/perl/files/config.sh-mips.in index 808387543..585cf62d8 100644 --- a/lang/perl/files/config.sh-mips.in +++ b/lang/perl/files/config.sh-mips.in @@ -13,14 +13,13 @@ # Target system : linux merope 2.4.30 #1 di 23. jan 15:23:42 cet 2007 mips unknown unknown gnulinux Author='' -Date='$Date' +Date='' Header='' -Id='$Id' +Id='' Locker='' -Log='$Log' -Mcc='Mcc' -RCSfile='$RCSfile' -Revision='$Revision' +Log='' +RCSfile='' +Revision='' Source='' State='' _a='.a' @@ -101,10 +100,13 @@ d_SCNfldbl='define' d__fwalk='undef' d_access='define' d_accessx='undef' +d_acosh='define' d_aintl='undef' d_alarm='define' d_archlib='undef' d_asctime_r='undef' +d_asinh='define' +d_atanh='define' d_atolf='undef' d_atoll='define' d_attribute_format='define' @@ -114,6 +116,7 @@ d_attribute_noreturn='define' d_attribute_pure='define' d_attribute_unused='define' d_attribute_warn_unused_result='define' +d_backtrace='define' d_bcmp='define' d_bcopy='define' d_bsd='undef' @@ -125,6 +128,7 @@ d_bzero='define' d_c99_variadic_macros='define' d_casti32='define' d_castneg='define' +d_cbrt='define' d_charvspr='undef' d_chown='define' d_chroot='define' @@ -134,6 +138,7 @@ d_clearenv='define' d_closedir='define' d_cmsghdr_s='define' d_const='define' +d_copysign='define' d_copysignl='undef' d_cplusplus='undef' d_crypt='define' @@ -149,6 +154,7 @@ d_difftime='define' d_dir_dd_fd='undef' d_dirfd='define' d_dirnamlen='undef' +d_dladdr='define' d_dlerror='define' d_dlopen='define' d_dlsymun='undef' @@ -170,7 +176,11 @@ d_endpwent_r='undef' d_endsent='define' d_endservent_r='undef' d_eofnblk='define' +d_erf='define' +d_erfc='define' d_eunice='undef' +d_exp2='define' +d_expm1='define' d_faststdio='undef' d_fchdir='define' d_fchmod='define' @@ -179,19 +189,27 @@ d_fcntl='define' d_fcntl_can_lock='define' d_fd_macros='define' d_fd_set='define' +d_fdim='define' d_fds_bits='undef' +d_fegetround='undef' d_fgetpos='define' d_finite='define' d_finitel='undef' d_flexfnam='define' d_flock='define' d_flockproto='define' +d_fma='define' +d_fmax='define' +d_fmin='define' d_fork='define' d_fp_class='undef' +d_fp_classify='undef' +d_fp_classl='undef' d_fpathconf='define' d_fpclass='undef' -d_fpclassify='undef' +d_fpclassify='define' d_fpclassl='undef' +d_fpgetround='undef' d_fpos64_t='undef' d_frexpl='undef' d_fs_data_s='undef' @@ -264,27 +282,50 @@ d_gnulibc='undef' d_grpasswd='define' d_hasmntopt='define' d_htonl='define' +d_hypot='define' +d_ilogb='define' d_ilogbl='undef' d_inc_version_list='undef' d_index='undef' d_inetaton='define' d_int64_t='define' d_isascii='define' -d_isfinite='undef' +d_isfinite='define' +d_isfinitel='undef' d_isinf='define' +d_isinfl='define' +d_isless='undef' d_isnan='define' d_isnanl='undef' +d_isnormal='define' +d_j0='undef' +d_j0l='undef' d_killpg='define' +d_lc_monetary_2008='define' d_lchown='define' d_ldbl_dig='define' +d_ldexpl='define' +d_lgamma='define' +d_lgamma_r='define' d_libm_lib_version='define' d_link='define' +d_llrint='define' +d_llrintl='define' +d_llround='define' +d_llroundl='define' d_localtime_r='undef' d_localtime_r_needs_tzset='undef' d_locconv='define' d_lockf='define' +d_log1p='define' +d_log2='define' +d_logb='define' d_longdbl='define' d_longlong='define' +d_lrint='define' +d_lrintl='define' +d_lround='define' +d_lroundl='define' d_lseekproto='define' d_lstat='define' d_madvise='define' @@ -323,6 +364,10 @@ d_msgsnd='define' d_msync='define' d_munmap='define' d_mymalloc='undef' +d_nan='define' +d_nearbyint='define' +d_nextafter='define' +d_nexttoward='undef' d_nice='define' d_nl_langinfo='define' d_nv_preserves_uv='define' @@ -345,6 +390,7 @@ d_pseudofork='undef' d_pthread_atfork='undef' d_pthread_attr_setscope='define' d_pthread_yield='undef' +d_ptrdiff_t='define' d_pwage='undef' d_pwchange='undef' d_pwclass='undef' @@ -356,19 +402,27 @@ d_pwquota='undef' d_qgcvt='undef' d_quad='define' d_random_r='undef' +d_re_comp='undef' d_readdir64_r='undef' d_readdir='define' d_readdir_r='undef' d_readlink='define' d_readv='define' d_recvmsg='define' +d_regcmp='undef' +d_regcomp='define' +d_remainder='define' +d_remquo='define' d_rename='define' d_rewinddir='define' +d_rint='define' d_rmdir='define' +d_round='define' d_safebcpy='undef' d_safemcpy='undef' d_sanemcmp='define' d_sbrkproto='define' +d_scalbn='define' d_scalbnl='undef' d_sched_yield='define' d_scm_rights='define' @@ -438,6 +492,7 @@ d_srand48_r='undef' d_srandom_r='undef' d_sresgproto='undef' d_sresuproto='undef' +d_stat='define' d_statblks='define' d_statfs_f_flags='undef' d_statfs_s='define' @@ -479,12 +534,15 @@ d_tcgetpgrp='define' d_tcsetpgrp='define' d_telldir='define' d_telldirproto='define' +d_tgamma='define' d_time='define' d_times='define' d_tm_tm_gmtoff='define' d_tm_tm_zone='define' d_tmpnam_r='undef' +d_trunc='define' d_truncate='define' +d_truncl='define' d_ttyname_r='undef' d_tzname='define' d_u32align='undef' @@ -510,7 +568,9 @@ d_vprintf='define' d_vsnprintf='define' d_wait4='define' d_waitpid='define' +d_wcscmp='define' d_wcstombs='define' +d_wcsxfrm='define' d_wctomb='define' d_writev='define' d_xenix='undef' @@ -524,6 +584,7 @@ defvoidused='15' direntrytype='struct dirent' dlext='so' dlsrc='dl_dlopen.xs' +doublekind='4' doublesize='8' drand01='drand48()' drand48_r_proto='0' @@ -542,7 +603,6 @@ endservent_r_proto='0' eunicefix=':' exe_ext='' expr='expr' -extensions='B Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex Time/HiRes Time/Piece Unicode/Normalize XS/APItest XS/Typemap attrs re threads threads/shared Hash/Util/FieldHash Compress/Zlib Errno IO_Compress_Base IO_Compress_Zlib' extras='' fflushNULL='define' fflushall='undef' @@ -615,7 +675,9 @@ i_dbm='undef' i_dirent='define' i_dld='undef' i_dlfcn='define' +i_execinfo='define' i_fcntl='undef' +i_fenv='undef' i_float='define' i_fp='undef' i_fp_class='undef' @@ -641,6 +703,7 @@ i_poll='define' i_prot='undef' i_pthread='define' i_pwd='define' +i_quadmath='define' i_rpcsvcdbm='undef' i_sfio='undef' i_sgtty='undef' @@ -648,6 +711,7 @@ i_shadow='define' i_socks='undef' i_stdarg='define' i_stddef='define' +i_stdint='define' i_stdlib='define' i_string='define' i_sunmath='undef' @@ -728,7 +792,6 @@ issymlink='test -h' ivdformat='"ld"' ivsize='4' ivtype='long' -known_extensions='B Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc NDBM_File ODBM_File Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex Time/HiRes Time/Piece Unicode/Normalize Win32 Win32API/File Win32CORE XS/APItest XS/Typemap attrs re threads threads/shared Hash/Util/FieldHash' ksh='' ld='%%LD%%' lddlflags='-shared %%LDFLAGS%%' @@ -755,6 +818,7 @@ lns='/bin/ln -s' localtime_r_proto='0' locincpth=' ' loclibpth=' ' +longdblkind='0' longdblsize='8' longlongsize='8' longsize='4' @@ -763,10 +827,6 @@ lpr='' ls='ls' lseeksize='8' lseektype='off_t' -mad='undef' -madlyh='' -madlyobj='' -madlysrc='' mail='' mailx='' make='make' @@ -983,6 +1043,7 @@ uquadtype='unsigned long long' use5005threads='undef' use64bitall='undef' use64bitint='undef' +usecbacktrace='undef' usecrosscompile='define' usedl='define' usefaststdio='undef' @@ -997,6 +1058,7 @@ usenm='true' useopcode='true' useperlio='define' useposix='true' +usequadmath='undef' usereentrant='undef' userelocatableinc='undef' usesfio='false' @@ -1063,7 +1125,6 @@ d_clock='define' # New symbols for perl 5.20.0 bin_ELF='define' -bootstrap_charset='undef' charbits='8' charsize='1' d_asctime64='undef' @@ -1098,6 +1159,7 @@ dtrace='' extern_C='extern' hostosname='' i_assert='define' +i_bfd='undef' i_gdbm_ndbm='undef' i_gdbmndbm='undef' i_mallocmalloc='undef' @@ -1135,27 +1197,29 @@ libdb_needs_pthread='N' # These symbols changed from perl 5.10.0 to 5.20.0 and probably will # change again for new versions, so they're included here for # future reference -api_version='20' +api_version='22' # Always set this to the base version, not the patched one! -api_versionstring='5.20.0' -dynamic_ext='B Compress/Raw/Bzip2 Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/DosGlob File/Glob Filter/Util/Call GDBM_File Hash/Util Hash/Util/FieldHash I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc Opcode POSIX PerlIO/encoding PerlIO/mmap PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Tie/Hash/NamedCapture Time/HiRes Time/Piece Unicode/Collate Unicode/Normalize XS/APItest XS/Typemap arybase attributes mro re threads threads/shared' -installarchlib='/usr/lib/perl5/5.20' -installprivlib='/usr/lib/perl5/5.20' -installsitearch='/usr/lib/perl5/5.20' -installsitelib='/usr/lib/perl5/5.20' -nonxs_ext='Archive/Tar Attribute/Handlers AutoLoader B/Debug CGI CPAN CPAN/Meta CPAN/Meta/Requirements CPAN/Meta/YAML Carp Config/Perl/V Devel/SelfStubber Digest Dumpvalue Env Errno Exporter ExtUtils/CBuilder ExtUtils/Command ExtUtils/Constant ExtUtils/Install ExtUtils/MakeMaker ExtUtils/Manifest ExtUtils/Miniperl ExtUtils/ParseXS File/Fetch File/Find File/Path File/Temp FileCache Filter/Simple Getopt/Long HTTP/Tiny I18N/Collate I18N/LangTags IO/Compress IO/Socket/IP IO/Zlib IPC/Cmd IPC/Open3 JSON/PP Locale/Codes Locale/Maketext Locale/Maketext/Simple Math/BigInt Math/BigRat Math/Complex Memoize Module/Build Module/CoreList Module/Load Module/Load/Conditional Module/Loaded Module/Metadata NEXT Net/Ping Package/Constants Params/Check Parse/CPAN/Meta Perl/OSType PerlIO/via/QuotedPrint Pod/Checker Pod/Escapes Pod/Functions Pod/Html Pod/Parser Pod/Perldoc Pod/Simple Pod/Usage Safe Search/Dict SelfLoader Term/ANSIColor Term/Cap Term/Complete Term/ReadLine Test Test/Harness Test/Simple Text/Abbrev Text/Balanced Text/ParseWords Text/Tabs Thread/Queue Thread/Semaphore Tie/File Tie/Memoize Tie/RefHash Time/Local XSLoader autodie autouse base bignum constant encoding/warnings experimental if lib libnet parent perlfaq podlators version' -privlib='/usr/lib/perl5/5.20' -privlibexp='/usr/lib/perl5/5.20' -archlib='/usr/lib/perl5/5.20' -archlibexp='/usr/lib/perl5/5.20' -version='5.20.2' -version_patchlevel_string='version 20 subversion 2' -PERL_VERSION=20 -PERL_API_VERSION=20 -PERL_SUBVERSION=2 -patchlevel='20' -ccdlflags='-fPIC -Wl,-rpath,/usr/lib/perl5/5.20/CORE' -subversion='2' +api_versionstring='5.22.0' +dynamic_ext='B Compress/Raw/Bzip2 Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/DosGlob File/Glob Filter/Util/Call GDBM_File Hash/Util Hash/Util/FieldHash I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc Opcode POSIX PerlIO/encoding PerlIO/mmap PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Tie/Hash/NamedCapture Time/HiRes Time/Piece Unicode/Collate XS/APItest XS/Typemap arybase attributes mro re threads threads/shared' +installarchlib='/usr/lib/perl5/5.22' +installprivlib='/usr/lib/perl5/5.22' +installsitearch='/usr/lib/perl5/5.22' +installsitelib='/usr/lib/perl5/5.22' +nonxs_ext='Archive/Tar Attribute/Handlers AutoLoader B/Debug CPAN CPAN/Meta CPAN/Meta/Requirements CPAN/Meta/YAML Carp Config/Perl/V Devel/SelfStubber Digest Dumpvalue Env Errno Exporter ExtUtils/CBuilder ExtUtils/Command ExtUtils/Constant ExtUtils/Install ExtUtils/MakeMaker ExtUtils/Manifest ExtUtils/Miniperl ExtUtils/ParseXS File/Fetch File/Find File/Path File/Temp FileCache Filter/Simple Getopt/Long HTTP/Tiny I18N/Collate I18N/LangTags IO/Compress IO/Socket/IP IO/Zlib IPC/Cmd IPC/Open3 JSON/PP Locale/Codes Locale/Maketext Locale/Maketext/Simple Math/BigInt Math/BigRat Math/Complex Memoize Module/CoreList Module/Load Module/Load/Conditional Module/Loaded Module/Metadata NEXT Net/Ping Params/Check Parse/CPAN/Meta Perl/OSType PerlIO/via/QuotedPrint Pod/Checker Pod/Escapes Pod/Functions Pod/Html Pod/Parser Pod/Perldoc Pod/Simple Pod/Usage Safe Search/Dict SelfLoader Term/ANSIColor Term/Cap Term/Complete Term/ReadLine Test Test/Harness Test/Simple Text/Abbrev Text/Balanced Text/ParseWords Text/Tabs Thread/Queue Thread/Semaphore Tie/File Tie/Memoize Tie/RefHash Time/Local XSLoader autodie autouse base bignum constant encoding/warnings experimental if lib libnet parent perlfaq podlators Unicode/Normalize version' +privlib='/usr/lib/perl5/5.22' +privlibexp='/usr/lib/perl5/5.22' +archlib='/usr/lib/perl5/5.22' +archlibexp='/usr/lib/perl5/5.22' +version='5.22.0' +version_patchlevel_string='version 22 subversion 0' +PERL_VERSION=22 +PERL_API_VERSION=22 +PERL_SUBVERSION=0 +patchlevel='22' +ccdlflags='-fPIC -Wl,-rpath,/usr/lib/perl5/5.22/CORE' +subversion='0' +extensions='B Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex Time/HiRes Time/Piece XS/APItest XS/Typemap attrs re threads threads/shared Hash/Util/FieldHash Compress/Zlib Errno IO_Compress_Base IO_Compress_Zlib Unicode/Normalize' +known_extensions='B Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc NDBM_File ODBM_File Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex Time/HiRes Time/Piece Unicode/Normalize Win32 Win32API/File Win32CORE XS/APItest XS/Typemap attrs re threads threads/shared Hash/Util/FieldHash' # Make perl use these tools instead of the target binaries during build hostgenerate='%%HOSTGENERATE%%' diff --git a/lang/perl/files/config.sh-mips64-mt.in b/lang/perl/files/config.sh-mips64-mt.in index daada6fe4..884260a8d 100644 --- a/lang/perl/files/config.sh-mips64-mt.in +++ b/lang/perl/files/config.sh-mips64-mt.in @@ -13,14 +13,13 @@ # Target system : linux merope 2.4.30 #1 di 23. jan 15:23:42 cet 2007 mips unknown unknown gnulinux Author='' -Date='$Date' +Date='' Header='' -Id='$Id' +Id='' Locker='' -Log='$Log' -Mcc='Mcc' -RCSfile='$RCSfile' -Revision='$Revision' +Log='' +RCSfile='' +Revision='' Source='' State='' _a='.a' @@ -101,10 +100,13 @@ d_SCNfldbl='define' d__fwalk='undef' d_access='define' d_accessx='undef' +d_acosh='define' d_aintl='undef' d_alarm='define' d_archlib='undef' d_asctime_r='define' +d_asinh='define' +d_atanh='define' d_atolf='undef' d_atoll='define' d_attribute_format='define' @@ -114,6 +116,7 @@ d_attribute_noreturn='define' d_attribute_pure='define' d_attribute_unused='define' d_attribute_warn_unused_result='define' +d_backtrace='define' d_bcmp='define' d_bcopy='define' d_bsd='undef' @@ -125,6 +128,7 @@ d_bzero='define' d_c99_variadic_macros='define' d_casti32='define' d_castneg='define' +d_cbrt='define' d_charvspr='undef' d_chown='define' d_chroot='define' @@ -134,6 +138,7 @@ d_clearenv='define' d_closedir='define' d_cmsghdr_s='define' d_const='define' +d_copysign='define' d_copysignl='undef' d_cplusplus='undef' d_crypt='%%CRYPT%%' @@ -149,6 +154,7 @@ d_difftime='define' d_dir_dd_fd='undef' d_dirfd='define' d_dirnamlen='undef' +d_dladdr='define' d_dlerror='define' d_dlopen='define' d_dlsymun='undef' @@ -170,7 +176,11 @@ d_endpwent_r='undef' d_endsent='define' d_endservent_r='undef' d_eofnblk='define' +d_erf='define' +d_erfc='define' d_eunice='undef' +d_exp2='define' +d_expm1='define' d_faststdio='undef' d_fchdir='define' d_fchmod='define' @@ -179,19 +189,27 @@ d_fcntl='define' d_fcntl_can_lock='define' d_fd_macros='define' d_fd_set='define' +d_fdim='define' d_fds_bits='define' +d_fegetround='undef' d_fgetpos='define' d_finite='define' d_finitel='undef' d_flexfnam='define' d_flock='define' d_flockproto='define' +d_fma='define' +d_fmax='define' +d_fmin='define' d_fork='define' d_fp_class='undef' +d_fp_classify='undef' +d_fp_classl='undef' d_fpathconf='define' d_fpclass='undef' -d_fpclassify='undef' +d_fpclassify='define' d_fpclassl='undef' +d_fpgetround='undef' d_fpos64_t='undef' d_frexpl='undef' d_fs_data_s='undef' @@ -264,27 +282,50 @@ d_gnulibc='undef' d_grpasswd='define' d_hasmntopt='define' d_htonl='define' +d_hypot='define' +d_ilogb='define' d_ilogbl='undef' d_inc_version_list='undef' d_index='undef' d_inetaton='define' d_int64_t='define' d_isascii='define' -d_isfinite='undef' +d_isfinite='define' +d_isfinitel='undef' d_isinf='define' +d_isinfl='define' +d_isless='undef' d_isnan='define' d_isnanl='undef' +d_isnormal='define' +d_j0='undef' +d_j0l='undef' d_killpg='define' +d_lc_monetary_2008='define' d_lchown='define' d_ldbl_dig='define' +d_ldexpl='define' +d_lgamma='define' +d_lgamma_r='define' d_libm_lib_version='define' d_link='define' +d_llrint='define' +d_llrintl='define' +d_llround='define' +d_llroundl='define' d_localtime_r='define' d_localtime_r_needs_tzset='define' d_locconv='define' d_lockf='define' +d_log1p='define' +d_log2='define' +d_logb='define' d_longdbl='define' d_longlong='define' +d_lrint='define' +d_lrintl='define' +d_lround='define' +d_lroundl='define' d_lseekproto='define' d_lstat='define' d_madvise='define' @@ -323,6 +364,10 @@ d_msgsnd='define' d_msync='define' d_munmap='define' d_mymalloc='undef' +d_nan='define' +d_nearbyint='define' +d_nextafter='define' +d_nexttoward='undef' d_nice='define' d_nl_langinfo='define' d_nv_preserves_uv='undef' @@ -345,6 +390,7 @@ d_pseudofork='undef' d_pthread_atfork='define' d_pthread_attr_setscope='define' d_pthread_yield='define' +d_ptrdiff_t='define' d_pwage='undef' d_pwchange='undef' d_pwclass='undef' @@ -356,19 +402,27 @@ d_pwquota='undef' d_qgcvt='undef' d_quad='define' d_random_r='define' +d_re_comp='undef' d_readdir64_r='define' d_readdir='define' d_readdir_r='define' d_readlink='define' d_readv='define' d_recvmsg='define' +d_regcmp='undef' +d_regcomp='define' +d_remainder='define' +d_remquo='define' d_rename='define' d_rewinddir='define' +d_rint='define' d_rmdir='define' +d_round='define' d_safebcpy='undef' d_safemcpy='undef' d_sanemcmp='define' d_sbrkproto='define' +d_scalbn='define' d_scalbnl='undef' d_sched_yield='define' d_scm_rights='define' @@ -438,6 +492,7 @@ d_srand48_r='define' d_srandom_r='define' d_sresgproto='define' d_sresuproto='define' +d_stat='define' d_statblks='define' d_statfs_f_flags='undef' d_statfs_s='define' @@ -479,12 +534,15 @@ d_tcgetpgrp='define' d_tcsetpgrp='define' d_telldir='define' d_telldirproto='define' +d_tgamma='define' d_time='define' d_times='define' d_tm_tm_gmtoff='define' d_tm_tm_zone='define' d_tmpnam_r='define' +d_trunc='define' d_truncate='define' +d_truncl='define' d_ttyname_r='define' d_tzname='define' d_u32align='define' @@ -510,7 +568,9 @@ d_vprintf='define' d_vsnprintf='define' d_wait4='define' d_waitpid='define' +d_wcscmp='define' d_wcstombs='define' +d_wcsxfrm='define' d_wctomb='define' d_writev='define' d_xenix='undef' @@ -524,6 +584,7 @@ defvoidused='15' direntrytype='struct dirent' dlext='so' dlsrc='dl_dlopen.xs' +doublekind='4' doublesize='8' drand01='drand48()' drand48_r_proto='REENTRANT_PROTO_I_ST' @@ -542,7 +603,6 @@ endservent_r_proto='0' eunicefix=':' exe_ext='' expr='expr' -extensions='B Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex Time/HiRes Time/Piece Unicode/Normalize XS/APItest XS/Typemap attrs re threads threads/shared Hash/Util/FieldHash Compress/Zlib Errno IO_Compress_Base IO_Compress_Zlib' extras='' fflushNULL='define' fflushall='undef' @@ -615,7 +675,9 @@ i_dbm='undef' i_dirent='define' i_dld='undef' i_dlfcn='define' +i_execinfo='define' i_fcntl='undef' +i_fenv='undef' i_float='define' i_fp='undef' i_fp_class='undef' @@ -641,6 +703,7 @@ i_poll='define' i_prot='undef' i_pthread='define' i_pwd='define' +i_quadmath='define' i_rpcsvcdbm='undef' i_sfio='undef' i_sgtty='undef' @@ -648,6 +711,7 @@ i_shadow='define' i_socks='undef' i_stdarg='define' i_stddef='define' +i_stdint='define' i_stdlib='define' i_string='define' i_sunmath='undef' @@ -728,7 +792,6 @@ issymlink='test -h' ivdformat='"ld"' ivsize='8' ivtype='long' -known_extensions='B Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc NDBM_File ODBM_File Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex Time/HiRes Time/Piece Unicode/Normalize Win32 Win32API/File Win32CORE XS/APItest XS/Typemap attrs re threads threads/shared Hash/Util/FieldHash' ksh='' ld='%%LD%%' lddlflags='-shared %%LDFLAGS%%' @@ -755,6 +818,7 @@ lns='/bin/ln -s' localtime_r_proto='REENTRANT_PROTO_S_TS' locincpth=' ' loclibpth=' ' +longdblkind='6' longdblsize='16' longlongsize='8' longsize='8' @@ -763,10 +827,6 @@ lpr='' ls='ls' lseeksize='8' lseektype='off_t' -mad='undef' -madlyh='' -madlyobj='' -madlysrc='' mail='' mailx='' make='make' @@ -983,6 +1043,7 @@ uquadtype='unsigned long' use5005threads='undef' use64bitall='define' use64bitint='undef' +usecbacktrace='undef' usecrosscompile='define' usedl='define' usefaststdio='undef' @@ -997,6 +1058,7 @@ usenm='true' useopcode='true' useperlio='define' useposix='true' +usequadmath='undef' usereentrant='undef' userelocatableinc='undef' usesfio='false' @@ -1064,7 +1126,6 @@ d_clock='define' # New symbols for perl 5.20.0 bin_ELF='define' -bootstrap_charset='undef' charbits='8' charsize='1' d_asctime64='undef' @@ -1099,6 +1160,7 @@ dtrace='' extern_C='extern' hostosname='' i_assert='define' +i_bfd='undef' i_gdbm_ndbm='undef' i_gdbmndbm='undef' i_mallocmalloc='undef' @@ -1136,27 +1198,29 @@ libdb_needs_pthread='N' # These symbols changed from perl 5.10.0 to 5.20.0 and probably will # change again for new versions, so they're included here for # future reference -api_version='20' +api_version='22' # Always set this to the base version, not the patched one! -api_versionstring='5.20.0' -dynamic_ext='B Compress/Raw/Bzip2 Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/DosGlob File/Glob Filter/Util/Call GDBM_File Hash/Util Hash/Util/FieldHash I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc Opcode POSIX PerlIO/encoding PerlIO/mmap PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Tie/Hash/NamedCapture Time/HiRes Time/Piece Unicode/Collate Unicode/Normalize XS/APItest XS/Typemap arybase attributes mro re threads threads/shared' -installarchlib='/usr/lib/perl5/5.20' -installprivlib='/usr/lib/perl5/5.20' -installsitearch='/usr/lib/perl5/5.20' -installsitelib='/usr/lib/perl5/5.20' -nonxs_ext='Archive/Tar Attribute/Handlers AutoLoader B/Debug CGI CPAN CPAN/Meta CPAN/Meta/Requirements CPAN/Meta/YAML Carp Config/Perl/V Devel/SelfStubber Digest Dumpvalue Env Errno Exporter ExtUtils/CBuilder ExtUtils/Command ExtUtils/Constant ExtUtils/Install ExtUtils/MakeMaker ExtUtils/Manifest ExtUtils/Miniperl ExtUtils/ParseXS File/Fetch File/Find File/Path File/Temp FileCache Filter/Simple Getopt/Long HTTP/Tiny I18N/Collate I18N/LangTags IO/Compress IO/Socket/IP IO/Zlib IPC/Cmd IPC/Open3 JSON/PP Locale/Codes Locale/Maketext Locale/Maketext/Simple Math/BigInt Math/BigRat Math/Complex Memoize Module/Build Module/CoreList Module/Load Module/Load/Conditional Module/Loaded Module/Metadata NEXT Net/Ping Package/Constants Params/Check Parse/CPAN/Meta Perl/OSType PerlIO/via/QuotedPrint Pod/Checker Pod/Escapes Pod/Functions Pod/Html Pod/Parser Pod/Perldoc Pod/Simple Pod/Usage Safe Search/Dict SelfLoader Term/ANSIColor Term/Cap Term/Complete Term/ReadLine Test Test/Harness Test/Simple Text/Abbrev Text/Balanced Text/ParseWords Text/Tabs Thread/Queue Thread/Semaphore Tie/File Tie/Memoize Tie/RefHash Time/Local XSLoader autodie autouse base bignum constant encoding/warnings experimental if lib libnet parent perlfaq podlators version' -privlib='/usr/lib/perl5/5.20' -privlibexp='/usr/lib/perl5/5.20' -archlib='/usr/lib/perl5/5.20' -archlibexp='/usr/lib/perl5/5.20' -version='5.20.2' -version_patchlevel_string='version 20 subversion 2' -PERL_VERSION=20 -PERL_API_VERSION=20 -PERL_SUBVERSION=2 -patchlevel='20' -ccdlflags='-fPIC -Wl,-rpath,/usr/lib/perl5/5.20/CORE' -subversion='2' +api_versionstring='5.22.0' +dynamic_ext='B Compress/Raw/Bzip2 Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/DosGlob File/Glob Filter/Util/Call GDBM_File Hash/Util Hash/Util/FieldHash I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc Opcode POSIX PerlIO/encoding PerlIO/mmap PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Tie/Hash/NamedCapture Time/HiRes Time/Piece Unicode/Collate XS/APItest XS/Typemap arybase attributes mro re threads threads/shared' +installarchlib='/usr/lib/perl5/5.22' +installprivlib='/usr/lib/perl5/5.22' +installsitearch='/usr/lib/perl5/5.22' +installsitelib='/usr/lib/perl5/5.22' +nonxs_ext='Archive/Tar Attribute/Handlers AutoLoader B/Debug CPAN CPAN/Meta CPAN/Meta/Requirements CPAN/Meta/YAML Carp Config/Perl/V Devel/SelfStubber Digest Dumpvalue Env Errno Exporter ExtUtils/CBuilder ExtUtils/Command ExtUtils/Constant ExtUtils/Install ExtUtils/MakeMaker ExtUtils/Manifest ExtUtils/Miniperl ExtUtils/ParseXS File/Fetch File/Find File/Path File/Temp FileCache Filter/Simple Getopt/Long HTTP/Tiny I18N/Collate I18N/LangTags IO/Compress IO/Socket/IP IO/Zlib IPC/Cmd IPC/Open3 JSON/PP Locale/Codes Locale/Maketext Locale/Maketext/Simple Math/BigInt Math/BigRat Math/Complex Memoize Module/CoreList Module/Load Module/Load/Conditional Module/Loaded Module/Metadata NEXT Net/Ping Params/Check Parse/CPAN/Meta Perl/OSType PerlIO/via/QuotedPrint Pod/Checker Pod/Escapes Pod/Functions Pod/Html Pod/Parser Pod/Perldoc Pod/Simple Pod/Usage Safe Search/Dict SelfLoader Term/ANSIColor Term/Cap Term/Complete Term/ReadLine Test Test/Harness Test/Simple Text/Abbrev Text/Balanced Text/ParseWords Text/Tabs Thread/Queue Thread/Semaphore Tie/File Tie/Memoize Tie/RefHash Time/Local XSLoader autodie autouse base bignum constant encoding/warnings experimental if lib libnet parent perlfaq podlators Unicode/Normalize version' +privlib='/usr/lib/perl5/5.22' +privlibexp='/usr/lib/perl5/5.22' +archlib='/usr/lib/perl5/5.22' +archlibexp='/usr/lib/perl5/5.22' +version='5.22.0' +version_patchlevel_string='version 22 subversion 0' +PERL_VERSION=22 +PERL_API_VERSION=22 +PERL_SUBVERSION=0 +patchlevel='22' +ccdlflags='-fPIC -Wl,-rpath,/usr/lib/perl5/5.22/CORE' +subversion='0' +extensions='B Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex Time/HiRes Time/Piece XS/APItest XS/Typemap attrs re threads threads/shared Hash/Util/FieldHash Compress/Zlib Errno IO_Compress_Base IO_Compress_Zlib Unicode/Normalize' +known_extensions='B Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc NDBM_File ODBM_File Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex Time/HiRes Time/Piece Unicode/Normalize Win32 Win32API/File Win32CORE XS/APItest XS/Typemap attrs re threads threads/shared Hash/Util/FieldHash' # Make perl use these tools instead of the target binaries during build hostgenerate='%%HOSTGENERATE%%' diff --git a/lang/perl/files/config.sh-mips64.in b/lang/perl/files/config.sh-mips64.in index c8ccb108e..be3b334ee 100644 --- a/lang/perl/files/config.sh-mips64.in +++ b/lang/perl/files/config.sh-mips64.in @@ -13,14 +13,13 @@ # Target system : linux merope 2.4.30 #1 di 23. jan 15:23:42 cet 2007 mips unknown unknown gnulinux Author='' -Date='$Date' +Date='' Header='' -Id='$Id' +Id='' Locker='' -Log='$Log' -Mcc='Mcc' -RCSfile='$RCSfile' -Revision='$Revision' +Log='' +RCSfile='' +Revision='' Source='' State='' _a='.a' @@ -101,10 +100,13 @@ d_SCNfldbl='define' d__fwalk='undef' d_access='define' d_accessx='undef' +d_acosh='define' d_aintl='undef' d_alarm='define' d_archlib='undef' d_asctime_r='undef' +d_asinh='define' +d_atanh='define' d_atolf='undef' d_atoll='define' d_attribute_format='define' @@ -114,6 +116,7 @@ d_attribute_noreturn='define' d_attribute_pure='define' d_attribute_unused='define' d_attribute_warn_unused_result='define' +d_backtrace='define' d_bcmp='define' d_bcopy='define' d_bsd='undef' @@ -125,6 +128,7 @@ d_bzero='define' d_c99_variadic_macros='define' d_casti32='define' d_castneg='define' +d_cbrt='define' d_charvspr='undef' d_chown='define' d_chroot='define' @@ -134,6 +138,7 @@ d_clearenv='define' d_closedir='define' d_cmsghdr_s='define' d_const='define' +d_copysign='define' d_copysignl='undef' d_cplusplus='undef' d_crypt='define' @@ -149,6 +154,7 @@ d_difftime='define' d_dir_dd_fd='undef' d_dirfd='define' d_dirnamlen='undef' +d_dladdr='define' d_dlerror='define' d_dlopen='define' d_dlsymun='undef' @@ -170,7 +176,11 @@ d_endpwent_r='undef' d_endsent='define' d_endservent_r='undef' d_eofnblk='define' +d_erf='define' +d_erfc='define' d_eunice='undef' +d_exp2='define' +d_expm1='define' d_faststdio='undef' d_fchdir='define' d_fchmod='define' @@ -179,19 +189,27 @@ d_fcntl='define' d_fcntl_can_lock='define' d_fd_macros='define' d_fd_set='define' +d_fdim='define' d_fds_bits='undef' +d_fegetround='undef' d_fgetpos='define' d_finite='define' d_finitel='undef' d_flexfnam='define' d_flock='define' d_flockproto='define' +d_fma='define' +d_fmax='define' +d_fmin='define' d_fork='define' d_fp_class='undef' +d_fp_classify='undef' +d_fp_classl='undef' d_fpathconf='define' d_fpclass='undef' -d_fpclassify='undef' +d_fpclassify='define' d_fpclassl='undef' +d_fpgetround='undef' d_fpos64_t='undef' d_frexpl='undef' d_fs_data_s='undef' @@ -264,27 +282,50 @@ d_gnulibc='undef' d_grpasswd='define' d_hasmntopt='define' d_htonl='define' +d_hypot='define' +d_ilogb='define' d_ilogbl='undef' d_inc_version_list='undef' d_index='undef' d_inetaton='define' d_int64_t='define' d_isascii='define' -d_isfinite='undef' +d_isfinite='define' +d_isfinitel='undef' d_isinf='define' +d_isinfl='define' +d_isless='undef' d_isnan='define' d_isnanl='undef' +d_isnormal='define' +d_j0='undef' +d_j0l='undef' d_killpg='define' +d_lc_monetary_2008='define' d_lchown='define' d_ldbl_dig='define' +d_ldexpl='define' +d_lgamma='define' +d_lgamma_r='define' d_libm_lib_version='define' d_link='define' +d_llrint='define' +d_llrintl='define' +d_llround='define' +d_llroundl='define' d_localtime_r='undef' d_localtime_r_needs_tzset='undef' d_locconv='define' d_lockf='define' +d_log1p='define' +d_log2='define' +d_logb='define' d_longdbl='define' d_longlong='define' +d_lrint='define' +d_lrintl='define' +d_lround='define' +d_lroundl='define' d_lseekproto='define' d_lstat='define' d_madvise='define' @@ -323,6 +364,10 @@ d_msgsnd='define' d_msync='define' d_munmap='define' d_mymalloc='undef' +d_nan='define' +d_nearbyint='define' +d_nextafter='define' +d_nexttoward='undef' d_nice='define' d_nl_langinfo='define' d_nv_preserves_uv='undef' @@ -345,6 +390,7 @@ d_pseudofork='undef' d_pthread_atfork='undef' d_pthread_attr_setscope='define' d_pthread_yield='undef' +d_ptrdiff_t='define' d_pwage='undef' d_pwchange='undef' d_pwclass='undef' @@ -356,19 +402,27 @@ d_pwquota='undef' d_qgcvt='undef' d_quad='define' d_random_r='undef' +d_re_comp='undef' d_readdir64_r='undef' d_readdir='define' d_readdir_r='undef' d_readlink='define' d_readv='define' d_recvmsg='define' +d_regcmp='undef' +d_regcomp='define' +d_remainder='define' +d_remquo='define' d_rename='define' d_rewinddir='define' +d_rint='define' d_rmdir='define' +d_round='define' d_safebcpy='undef' d_safemcpy='undef' d_sanemcmp='define' d_sbrkproto='define' +d_scalbn='define' d_scalbnl='undef' d_sched_yield='define' d_scm_rights='define' @@ -438,6 +492,7 @@ d_srand48_r='undef' d_srandom_r='undef' d_sresgproto='undef' d_sresuproto='undef' +d_stat='define' d_statblks='define' d_statfs_f_flags='undef' d_statfs_s='define' @@ -479,12 +534,15 @@ d_tcgetpgrp='define' d_tcsetpgrp='define' d_telldir='define' d_telldirproto='define' +d_tgamma='define' d_time='define' d_times='define' d_tm_tm_gmtoff='define' d_tm_tm_zone='define' d_tmpnam_r='undef' +d_trunc='define' d_truncate='define' +d_truncl='define' d_ttyname_r='undef' d_tzname='define' d_u32align='define' @@ -510,7 +568,9 @@ d_vprintf='define' d_vsnprintf='define' d_wait4='define' d_waitpid='define' +d_wcscmp='define' d_wcstombs='define' +d_wcsxfrm='define' d_wctomb='define' d_writev='define' d_xenix='undef' @@ -524,6 +584,7 @@ defvoidused='15' direntrytype='struct dirent' dlext='so' dlsrc='dl_dlopen.xs' +doublekind='4' doublesize='8' drand01='drand48()' drand48_r_proto='0' @@ -542,7 +603,6 @@ endservent_r_proto='0' eunicefix=':' exe_ext='' expr='expr' -extensions='B Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex Time/HiRes Time/Piece Unicode/Normalize XS/APItest XS/Typemap attrs re threads threads/shared Hash/Util/FieldHash Compress/Zlib Errno IO_Compress_Base IO_Compress_Zlib' extras='' fflushNULL='define' fflushall='undef' @@ -615,7 +675,9 @@ i_dbm='undef' i_dirent='define' i_dld='undef' i_dlfcn='define' +i_execinfo='define' i_fcntl='undef' +i_fenv='undef' i_float='define' i_fp='undef' i_fp_class='undef' @@ -641,6 +703,7 @@ i_poll='define' i_prot='undef' i_pthread='define' i_pwd='define' +i_quadmath='define' i_rpcsvcdbm='undef' i_sfio='undef' i_sgtty='undef' @@ -648,6 +711,7 @@ i_shadow='define' i_socks='undef' i_stdarg='define' i_stddef='define' +i_stdint='define' i_stdlib='define' i_string='define' i_sunmath='undef' @@ -728,7 +792,6 @@ issymlink='test -h' ivdformat='"ld"' ivsize='8' ivtype='long' -known_extensions='B Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc NDBM_File ODBM_File Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex Time/HiRes Time/Piece Unicode/Normalize Win32 Win32API/File Win32CORE XS/APItest XS/Typemap attrs re threads threads/shared Hash/Util/FieldHash' ksh='' ld='%%LD%%' lddlflags='-shared %%LDFLAGS%%' @@ -755,6 +818,7 @@ lns='/bin/ln -s' localtime_r_proto='0' locincpth=' ' loclibpth=' ' +longdblkind='6' longdblsize='16' longlongsize='8' longsize='8' @@ -763,10 +827,6 @@ lpr='' ls='ls' lseeksize='8' lseektype='off_t' -mad='undef' -madlyh='' -madlyobj='' -madlysrc='' mail='' mailx='' make='make' @@ -983,6 +1043,7 @@ uquadtype='unsigned long' use5005threads='undef' use64bitall='define' use64bitint='undef' +usecbacktrace='undef' usecrosscompile='define' usedl='define' usefaststdio='undef' @@ -997,6 +1058,7 @@ usenm='true' useopcode='true' useperlio='define' useposix='true' +usequadmath='undef' usereentrant='undef' userelocatableinc='undef' usesfio='false' @@ -1063,7 +1125,6 @@ d_clock='define' # New symbols for perl 5.20.0 bin_ELF='define' -bootstrap_charset='undef' charbits='8' charsize='1' d_asctime64='undef' @@ -1098,6 +1159,7 @@ dtrace='' extern_C='extern' hostosname='' i_assert='define' +i_bfd='undef' i_gdbm_ndbm='undef' i_gdbmndbm='undef' i_mallocmalloc='undef' @@ -1135,27 +1197,29 @@ libdb_needs_pthread='N' # These symbols changed from perl 5.10.0 to 5.20.0 and probably will # change again for new versions, so they're included here for # future reference -api_version='20' +api_version='22' # Always set this to the base version, not the patched one! -api_versionstring='5.20.0' -dynamic_ext='B Compress/Raw/Bzip2 Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/DosGlob File/Glob Filter/Util/Call GDBM_File Hash/Util Hash/Util/FieldHash I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc Opcode POSIX PerlIO/encoding PerlIO/mmap PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Tie/Hash/NamedCapture Time/HiRes Time/Piece Unicode/Collate Unicode/Normalize XS/APItest XS/Typemap arybase attributes mro re threads threads/shared' -installarchlib='/usr/lib/perl5/5.20' -installprivlib='/usr/lib/perl5/5.20' -installsitearch='/usr/lib/perl5/5.20' -installsitelib='/usr/lib/perl5/5.20' -nonxs_ext='Archive/Tar Attribute/Handlers AutoLoader B/Debug CGI CPAN CPAN/Meta CPAN/Meta/Requirements CPAN/Meta/YAML Carp Config/Perl/V Devel/SelfStubber Digest Dumpvalue Env Errno Exporter ExtUtils/CBuilder ExtUtils/Command ExtUtils/Constant ExtUtils/Install ExtUtils/MakeMaker ExtUtils/Manifest ExtUtils/Miniperl ExtUtils/ParseXS File/Fetch File/Find File/Path File/Temp FileCache Filter/Simple Getopt/Long HTTP/Tiny I18N/Collate I18N/LangTags IO/Compress IO/Socket/IP IO/Zlib IPC/Cmd IPC/Open3 JSON/PP Locale/Codes Locale/Maketext Locale/Maketext/Simple Math/BigInt Math/BigRat Math/Complex Memoize Module/Build Module/CoreList Module/Load Module/Load/Conditional Module/Loaded Module/Metadata NEXT Net/Ping Package/Constants Params/Check Parse/CPAN/Meta Perl/OSType PerlIO/via/QuotedPrint Pod/Checker Pod/Escapes Pod/Functions Pod/Html Pod/Parser Pod/Perldoc Pod/Simple Pod/Usage Safe Search/Dict SelfLoader Term/ANSIColor Term/Cap Term/Complete Term/ReadLine Test Test/Harness Test/Simple Text/Abbrev Text/Balanced Text/ParseWords Text/Tabs Thread/Queue Thread/Semaphore Tie/File Tie/Memoize Tie/RefHash Time/Local XSLoader autodie autouse base bignum constant encoding/warnings experimental if lib libnet parent perlfaq podlators version' -privlib='/usr/lib/perl5/5.20' -privlibexp='/usr/lib/perl5/5.20' -archlib='/usr/lib/perl5/5.20' -archlibexp='/usr/lib/perl5/5.20' -version='5.20.2' -version_patchlevel_string='version 20 subversion 2' -PERL_VERSION=20 -PERL_API_VERSION=20 -PERL_SUBVERSION=2 -patchlevel='20' -ccdlflags='-fPIC -Wl,-rpath,/usr/lib/perl5/5.20/CORE' -subversion='2' +api_versionstring='5.22.0' +dynamic_ext='B Compress/Raw/Bzip2 Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/DosGlob File/Glob Filter/Util/Call GDBM_File Hash/Util Hash/Util/FieldHash I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc Opcode POSIX PerlIO/encoding PerlIO/mmap PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Tie/Hash/NamedCapture Time/HiRes Time/Piece Unicode/Collate XS/APItest XS/Typemap arybase attributes mro re threads threads/shared' +installarchlib='/usr/lib/perl5/5.22' +installprivlib='/usr/lib/perl5/5.22' +installsitearch='/usr/lib/perl5/5.22' +installsitelib='/usr/lib/perl5/5.22' +nonxs_ext='Archive/Tar Attribute/Handlers AutoLoader B/Debug CPAN CPAN/Meta CPAN/Meta/Requirements CPAN/Meta/YAML Carp Config/Perl/V Devel/SelfStubber Digest Dumpvalue Env Errno Exporter ExtUtils/CBuilder ExtUtils/Command ExtUtils/Constant ExtUtils/Install ExtUtils/MakeMaker ExtUtils/Manifest ExtUtils/Miniperl ExtUtils/ParseXS File/Fetch File/Find File/Path File/Temp FileCache Filter/Simple Getopt/Long HTTP/Tiny I18N/Collate I18N/LangTags IO/Compress IO/Socket/IP IO/Zlib IPC/Cmd IPC/Open3 JSON/PP Locale/Codes Locale/Maketext Locale/Maketext/Simple Math/BigInt Math/BigRat Math/Complex Memoize Module/CoreList Module/Load Module/Load/Conditional Module/Loaded Module/Metadata NEXT Net/Ping Params/Check Parse/CPAN/Meta Perl/OSType PerlIO/via/QuotedPrint Pod/Checker Pod/Escapes Pod/Functions Pod/Html Pod/Parser Pod/Perldoc Pod/Simple Pod/Usage Safe Search/Dict SelfLoader Term/ANSIColor Term/Cap Term/Complete Term/ReadLine Test Test/Harness Test/Simple Text/Abbrev Text/Balanced Text/ParseWords Text/Tabs Thread/Queue Thread/Semaphore Tie/File Tie/Memoize Tie/RefHash Time/Local XSLoader autodie autouse base bignum constant encoding/warnings experimental if lib libnet parent perlfaq podlators Unicode/Normalize version' +privlib='/usr/lib/perl5/5.22' +privlibexp='/usr/lib/perl5/5.22' +archlib='/usr/lib/perl5/5.22' +archlibexp='/usr/lib/perl5/5.22' +version='5.22.0' +version_patchlevel_string='version 22 subversion 0' +PERL_VERSION=22 +PERL_API_VERSION=22 +PERL_SUBVERSION=0 +patchlevel='22' +ccdlflags='-fPIC -Wl,-rpath,/usr/lib/perl5/5.22/CORE' +subversion='0' +extensions='B Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex Time/HiRes Time/Piece XS/APItest XS/Typemap attrs re threads threads/shared Hash/Util/FieldHash Compress/Zlib Errno IO_Compress_Base IO_Compress_Zlib Unicode/Normalize' +known_extensions='B Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc NDBM_File ODBM_File Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex Time/HiRes Time/Piece Unicode/Normalize Win32 Win32API/File Win32CORE XS/APItest XS/Typemap attrs re threads threads/shared Hash/Util/FieldHash' # Make perl use these tools instead of the target binaries during build hostgenerate='%%HOSTGENERATE%%' diff --git a/lang/perl/files/config.sh-mipsel-mt.in b/lang/perl/files/config.sh-mipsel-mt.in index e822f1ffd..26c6d4ed9 100644 --- a/lang/perl/files/config.sh-mipsel-mt.in +++ b/lang/perl/files/config.sh-mipsel-mt.in @@ -13,14 +13,13 @@ # Target system : linux merope 2.4.30 #1 di 23. jan 15:23:42 cet 2007 mips unknown unknown gnulinux Author='' -Date='$Date' +Date='' Header='' -Id='$Id' +Id='' Locker='' -Log='$Log' -Mcc='Mcc' -RCSfile='$RCSfile' -Revision='$Revision' +Log='' +RCSfile='' +Revision='' Source='' State='' _a='.a' @@ -99,10 +98,13 @@ d_SCNfldbl='define' d__fwalk='undef' d_access='define' d_accessx='undef' +d_acosh='define' d_aintl='undef' d_alarm='define' d_archlib='undef' d_asctime_r='define' +d_asinh='define' +d_atanh='define' d_atolf='undef' d_atoll='define' d_attribute_format='define' @@ -112,6 +114,7 @@ d_attribute_noreturn='define' d_attribute_pure='define' d_attribute_unused='define' d_attribute_warn_unused_result='define' +d_backtrace='define' d_bcmp='define' d_bcopy='define' d_bsd='undef' @@ -123,6 +126,7 @@ d_bzero='define' d_c99_variadic_macros='define' d_casti32='define' d_castneg='define' +d_cbrt='define' d_charvspr='undef' d_chown='define' d_chroot='define' @@ -132,6 +136,7 @@ d_clearenv='define' d_closedir='define' d_cmsghdr_s='define' d_const='define' +d_copysign='define' d_copysignl='undef' d_cplusplus='undef' d_crypt='%%CRYPT%%' @@ -147,6 +152,7 @@ d_difftime='define' d_dir_dd_fd='undef' d_dirfd='define' d_dirnamlen='undef' +d_dladdr='define' d_dlerror='define' d_dlopen='define' d_dlsymun='undef' @@ -168,7 +174,11 @@ d_endpwent_r='undef' d_endsent='define' d_endservent_r='undef' d_eofnblk='define' +d_erf='define' +d_erfc='define' d_eunice='undef' +d_exp2='define' +d_expm1='define' d_faststdio='undef' d_fchdir='define' d_fchmod='define' @@ -177,19 +187,27 @@ d_fcntl='define' d_fcntl_can_lock='define' d_fd_macros='define' d_fd_set='define' +d_fdim='define' d_fds_bits='define' +d_fegetround='undef' d_fgetpos='define' d_finite='define' d_finitel='undef' d_flexfnam='define' d_flock='define' d_flockproto='define' +d_fma='define' +d_fmax='define' +d_fmin='define' d_fork='define' d_fp_class='undef' +d_fp_classify='undef' +d_fp_classl='undef' d_fpathconf='define' d_fpclass='undef' -d_fpclassify='undef' +d_fpclassify='define' d_fpclassl='undef' +d_fpgetround='undef' d_fpos64_t='undef' d_frexpl='undef' d_fs_data_s='undef' @@ -262,27 +280,50 @@ d_gnulibc='undef' d_grpasswd='define' d_hasmntopt='define' d_htonl='define' +d_hypot='define' +d_ilogb='define' d_ilogbl='undef' d_inc_version_list='undef' d_index='undef' d_inetaton='define' d_int64_t='define' d_isascii='define' -d_isfinite='undef' +d_isfinite='define' +d_isfinitel='undef' d_isinf='define' +d_isinfl='define' +d_isless='undef' d_isnan='define' d_isnanl='undef' +d_isnormal='define' +d_j0='undef' +d_j0l='undef' d_killpg='define' +d_lc_monetary_2008='define' d_lchown='define' d_ldbl_dig='define' +d_ldexpl='define' +d_lgamma='define' +d_lgamma_r='define' d_libm_lib_version='define' d_link='define' +d_llrint='define' +d_llrintl='define' +d_llround='define' +d_llroundl='define' d_localtime_r='define' d_localtime_r_needs_tzset='define' d_locconv='define' d_lockf='define' +d_log1p='define' +d_log2='define' +d_logb='define' d_longdbl='define' d_longlong='define' +d_lrint='define' +d_lrintl='define' +d_lround='define' +d_lroundl='define' d_lseekproto='define' d_lstat='define' d_madvise='define' @@ -321,6 +362,10 @@ d_msgsnd='define' d_msync='define' d_munmap='define' d_mymalloc='undef' +d_nan='define' +d_nearbyint='define' +d_nextafter='define' +d_nexttoward='undef' d_nice='define' d_nl_langinfo='define' d_nv_preserves_uv='define' @@ -343,6 +388,7 @@ d_pseudofork='undef' d_pthread_atfork='define' d_pthread_attr_setscope='define' d_pthread_yield='define' +d_ptrdiff_t='define' d_pwage='undef' d_pwchange='undef' d_pwclass='undef' @@ -354,19 +400,27 @@ d_pwquota='undef' d_qgcvt='undef' d_quad='define' d_random_r='define' +d_re_comp='undef' d_readdir64_r='define' d_readdir='define' d_readdir_r='define' d_readlink='define' d_readv='define' d_recvmsg='define' +d_regcmp='undef' +d_regcomp='define' +d_remainder='define' +d_remquo='define' d_rename='define' d_rewinddir='define' +d_rint='define' d_rmdir='define' +d_round='define' d_safebcpy='undef' d_safemcpy='undef' d_sanemcmp='define' d_sbrkproto='define' +d_scalbn='define' d_scalbnl='undef' d_sched_yield='define' d_scm_rights='define' @@ -436,6 +490,7 @@ d_srand48_r='define' d_srandom_r='define' d_sresgproto='define' d_sresuproto='define' +d_stat='define' d_statblks='define' d_statfs_f_flags='undef' d_statfs_s='define' @@ -477,12 +532,15 @@ d_tcgetpgrp='define' d_tcsetpgrp='define' d_telldir='define' d_telldirproto='define' +d_tgamma='define' d_time='define' d_times='define' d_tm_tm_gmtoff='define' d_tm_tm_zone='define' d_tmpnam_r='define' +d_trunc='define' d_truncate='define' +d_truncl='define' d_ttyname_r='define' d_tzname='define' d_u32align='undef' @@ -508,7 +566,9 @@ d_vprintf='define' d_vsnprintf='define' d_wait4='define' d_waitpid='define' +d_wcscmp='define' d_wcstombs='define' +d_wcsxfrm='define' d_wctomb='define' d_writev='define' d_xenix='undef' @@ -522,6 +582,7 @@ defvoidused='15' direntrytype='struct dirent' dlext='so' dlsrc='dl_dlopen.xs' +doublekind='3' doublesize='8' drand01='drand48()' drand48_r_proto='REENTRANT_PROTO_I_ST' @@ -539,7 +600,6 @@ endservent_r_proto='0' eunicefix=':' exe_ext='' expr='expr' -extensions='B Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex Time/HiRes Time/Piece Unicode/Normalize XS/APItest XS/Typemap attrs re threads threads/shared Hash/Util/FieldHash Compress/Zlib Errno IO_Compress_Base IO_Compress_Zlib' extras='' fflushNULL='define' fflushall='undef' @@ -612,7 +672,9 @@ i_dbm='undef' i_dirent='define' i_dld='undef' i_dlfcn='define' +i_execinfo='define' i_fcntl='undef' +i_fenv='undef' i_float='define' i_fp='undef' i_fp_class='undef' @@ -638,6 +700,7 @@ i_poll='define' i_prot='undef' i_pthread='define' i_pwd='define' +i_quadmath='define' i_rpcsvcdbm='undef' i_sfio='undef' i_sgtty='undef' @@ -645,6 +708,7 @@ i_shadow='define' i_socks='undef' i_stdarg='define' i_stddef='define' +i_stdint='define' i_stdlib='define' i_string='define' i_sunmath='undef' @@ -721,7 +785,6 @@ issymlink='test -h' ivdformat='"ld"' ivsize='4' ivtype='long' -known_extensions='B Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc NDBM_File ODBM_File Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex Time/HiRes Time/Piece Unicode/Normalize Win32 Win32API/File Win32CORE XS/APItest XS/Typemap attrs re threads threads/shared Hash/Util/FieldHash' ksh='' ld='%%LD%%' lddlflags='-shared %%LDFLAGS%%' @@ -748,6 +811,7 @@ lns='/bin/ln -s' localtime_r_proto='REENTRANT_PROTO_S_TS' locincpth=' ' loclibpth=' ' +longdblkind='0' longdblsize='8' longlongsize='8' longsize='4' @@ -756,10 +820,6 @@ lpr='' ls='ls' lseeksize='8' lseektype='off_t' -mad='undef' -madlyh='' -madlyobj='' -madlysrc='' mail='' mailx='' make='make' @@ -972,6 +1032,7 @@ uquadtype='unsigned long long' use5005threads='undef' use64bitall='undef' use64bitint='undef' +usecbacktrace='undef' usecrosscompile='define' usedl='define' usefaststdio='undef' @@ -986,6 +1047,7 @@ usenm='true' useopcode='true' useperlio='define' useposix='true' +usequadmath='undef' usereentrant='undef' userelocatableinc='undef' usesfio='false' @@ -1050,7 +1112,6 @@ d_clock='define' # New symbols for perl 5.20.0 bin_ELF='define' -bootstrap_charset='undef' charbits='8' charsize='1' d_asctime64='undef' @@ -1085,6 +1146,7 @@ dtrace='' extern_C='extern' hostosname='' i_assert='define' +i_bfd='undef' i_gdbm_ndbm='undef' i_gdbmndbm='undef' i_mallocmalloc='undef' @@ -1122,27 +1184,29 @@ libdb_needs_pthread='N' # These symbols changed from perl 5.10.0 to 5.20.0 and probably will # change again for new versions, so they're included here for # future reference -api_version='20' +api_version='22' # Always set this to the base version, not the patched one! -api_versionstring='5.20.0' -dynamic_ext='B Compress/Raw/Bzip2 Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/DosGlob File/Glob Filter/Util/Call GDBM_File Hash/Util Hash/Util/FieldHash I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc Opcode POSIX PerlIO/encoding PerlIO/mmap PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Tie/Hash/NamedCapture Time/HiRes Time/Piece Unicode/Collate Unicode/Normalize XS/APItest XS/Typemap arybase attributes mro re threads threads/shared' -installarchlib='/usr/lib/perl5/5.20' -installprivlib='/usr/lib/perl5/5.20' -installsitearch='/usr/lib/perl5/5.20' -installsitelib='/usr/lib/perl5/5.20' -nonxs_ext='Archive/Tar Attribute/Handlers AutoLoader B/Debug CGI CPAN CPAN/Meta CPAN/Meta/Requirements CPAN/Meta/YAML Carp Config/Perl/V Devel/SelfStubber Digest Dumpvalue Env Errno Exporter ExtUtils/CBuilder ExtUtils/Command ExtUtils/Constant ExtUtils/Install ExtUtils/MakeMaker ExtUtils/Manifest ExtUtils/Miniperl ExtUtils/ParseXS File/Fetch File/Find File/Path File/Temp FileCache Filter/Simple Getopt/Long HTTP/Tiny I18N/Collate I18N/LangTags IO/Compress IO/Socket/IP IO/Zlib IPC/Cmd IPC/Open3 JSON/PP Locale/Codes Locale/Maketext Locale/Maketext/Simple Math/BigInt Math/BigRat Math/Complex Memoize Module/Build Module/CoreList Module/Load Module/Load/Conditional Module/Loaded Module/Metadata NEXT Net/Ping Package/Constants Params/Check Parse/CPAN/Meta Perl/OSType PerlIO/via/QuotedPrint Pod/Checker Pod/Escapes Pod/Functions Pod/Html Pod/Parser Pod/Perldoc Pod/Simple Pod/Usage Safe Search/Dict SelfLoader Term/ANSIColor Term/Cap Term/Complete Term/ReadLine Test Test/Harness Test/Simple Text/Abbrev Text/Balanced Text/ParseWords Text/Tabs Thread/Queue Thread/Semaphore Tie/File Tie/Memoize Tie/RefHash Time/Local XSLoader autodie autouse base bignum constant encoding/warnings experimental if lib libnet parent perlfaq podlators version' -privlib='/usr/lib/perl5/5.20' -privlibexp='/usr/lib/perl5/5.20' -archlib='/usr/lib/perl5/5.20' -archlibexp='/usr/lib/perl5/5.20' -version='5.20.2' -version_patchlevel_string='version 20 subversion 2' -PERL_VERSION=20 -PERL_API_VERSION=20 -PERL_SUBVERSION=2 -patchlevel='20' -ccdlflags='-fPIC -Wl,-rpath,/usr/lib/perl5/5.20/CORE' -subversion='2' +api_versionstring='5.22.0' +dynamic_ext='B Compress/Raw/Bzip2 Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/DosGlob File/Glob Filter/Util/Call GDBM_File Hash/Util Hash/Util/FieldHash I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc Opcode POSIX PerlIO/encoding PerlIO/mmap PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Tie/Hash/NamedCapture Time/HiRes Time/Piece Unicode/Collate XS/APItest XS/Typemap arybase attributes mro re threads threads/shared' +installarchlib='/usr/lib/perl5/5.22' +installprivlib='/usr/lib/perl5/5.22' +installsitearch='/usr/lib/perl5/5.22' +installsitelib='/usr/lib/perl5/5.22' +nonxs_ext='Archive/Tar Attribute/Handlers AutoLoader B/Debug CPAN CPAN/Meta CPAN/Meta/Requirements CPAN/Meta/YAML Carp Config/Perl/V Devel/SelfStubber Digest Dumpvalue Env Errno Exporter ExtUtils/CBuilder ExtUtils/Command ExtUtils/Constant ExtUtils/Install ExtUtils/MakeMaker ExtUtils/Manifest ExtUtils/Miniperl ExtUtils/ParseXS File/Fetch File/Find File/Path File/Temp FileCache Filter/Simple Getopt/Long HTTP/Tiny I18N/Collate I18N/LangTags IO/Compress IO/Socket/IP IO/Zlib IPC/Cmd IPC/Open3 JSON/PP Locale/Codes Locale/Maketext Locale/Maketext/Simple Math/BigInt Math/BigRat Math/Complex Memoize Module/CoreList Module/Load Module/Load/Conditional Module/Loaded Module/Metadata NEXT Net/Ping Params/Check Parse/CPAN/Meta Perl/OSType PerlIO/via/QuotedPrint Pod/Checker Pod/Escapes Pod/Functions Pod/Html Pod/Parser Pod/Perldoc Pod/Simple Pod/Usage Safe Search/Dict SelfLoader Term/ANSIColor Term/Cap Term/Complete Term/ReadLine Test Test/Harness Test/Simple Text/Abbrev Text/Balanced Text/ParseWords Text/Tabs Thread/Queue Thread/Semaphore Tie/File Tie/Memoize Tie/RefHash Time/Local XSLoader autodie autouse base bignum constant encoding/warnings experimental if lib libnet parent perlfaq podlators Unicode/Normalize version' +privlib='/usr/lib/perl5/5.22' +privlibexp='/usr/lib/perl5/5.22' +archlib='/usr/lib/perl5/5.22' +archlibexp='/usr/lib/perl5/5.22' +version='5.22.0' +version_patchlevel_string='version 22 subversion 0' +PERL_VERSION=22 +PERL_API_VERSION=22 +PERL_SUBVERSION=0 +patchlevel='22' +ccdlflags='-fPIC -Wl,-rpath,/usr/lib/perl5/5.22/CORE' +subversion='0' +extensions='B Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex Time/HiRes Time/Piece XS/APItest XS/Typemap attrs re threads threads/shared Hash/Util/FieldHash Compress/Zlib Errno IO_Compress_Base IO_Compress_Zlib Unicode/Normalize' +known_extensions='B Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc NDBM_File ODBM_File Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex Time/HiRes Time/Piece Unicode/Normalize Win32 Win32API/File Win32CORE XS/APItest XS/Typemap attrs re threads threads/shared Hash/Util/FieldHash' # Make perl use these tools instead of the target binaries during build hostgenerate='%%HOSTGENERATE%%' diff --git a/lang/perl/files/config.sh-mipsel.in b/lang/perl/files/config.sh-mipsel.in index 880d7dba7..0c424f1cf 100644 --- a/lang/perl/files/config.sh-mipsel.in +++ b/lang/perl/files/config.sh-mipsel.in @@ -13,14 +13,13 @@ # Target system : linux merope 2.4.30 #1 di 23. jan 15:23:42 cet 2007 mips unknown unknown gnulinux Author='' -Date='$Date' +Date='' Header='' -Id='$Id' +Id='' Locker='' -Log='$Log' -Mcc='Mcc' -RCSfile='$RCSfile' -Revision='$Revision' +Log='' +RCSfile='' +Revision='' Source='' State='' _a='.a' @@ -99,10 +98,13 @@ d_SCNfldbl='define' d__fwalk='undef' d_access='define' d_accessx='undef' +d_acosh='define' d_aintl='undef' d_alarm='define' d_archlib='undef' d_asctime_r='undef' +d_asinh='define' +d_atanh='define' d_atolf='undef' d_atoll='define' d_attribute_format='define' @@ -112,6 +114,7 @@ d_attribute_noreturn='define' d_attribute_pure='define' d_attribute_unused='define' d_attribute_warn_unused_result='define' +d_backtrace='define' d_bcmp='define' d_bcopy='define' d_bsd='undef' @@ -123,6 +126,7 @@ d_bzero='define' d_c99_variadic_macros='define' d_casti32='define' d_castneg='define' +d_cbrt='define' d_charvspr='undef' d_chown='define' d_chroot='define' @@ -132,6 +136,7 @@ d_clearenv='define' d_closedir='define' d_cmsghdr_s='define' d_const='define' +d_copysign='define' d_copysignl='undef' d_cplusplus='undef' d_crypt='define' @@ -147,6 +152,7 @@ d_difftime='define' d_dir_dd_fd='undef' d_dirfd='define' d_dirnamlen='undef' +d_dladdr='define' d_dlerror='define' d_dlopen='define' d_dlsymun='undef' @@ -168,7 +174,11 @@ d_endpwent_r='undef' d_endsent='define' d_endservent_r='undef' d_eofnblk='define' +d_erf='define' +d_erfc='define' d_eunice='undef' +d_exp2='define' +d_expm1='define' d_faststdio='undef' d_fchdir='define' d_fchmod='define' @@ -177,19 +187,27 @@ d_fcntl='define' d_fcntl_can_lock='define' d_fd_macros='define' d_fd_set='define' +d_fdim='define' d_fds_bits='undef' +d_fegetround='define' d_fgetpos='define' d_finite='define' d_finitel='undef' d_flexfnam='define' d_flock='define' d_flockproto='define' +d_fma='define' +d_fmax='define' +d_fmin='define' d_fork='define' d_fp_class='undef' +d_fp_classify='undef' +d_fp_classl='undef' d_fpathconf='define' d_fpclass='undef' -d_fpclassify='undef' +d_fpclassify='define' d_fpclassl='undef' +d_fpgetround='undef' d_fpos64_t='undef' d_frexpl='undef' d_fs_data_s='undef' @@ -262,27 +280,50 @@ d_gnulibc='undef' d_grpasswd='define' d_hasmntopt='define' d_htonl='define' +d_hypot='define' +d_ilogb='define' d_ilogbl='undef' d_inc_version_list='undef' d_index='undef' d_inetaton='define' d_int64_t='define' d_isascii='define' -d_isfinite='undef' +d_isfinite='define' +d_isfinitel='undef' d_isinf='define' +d_isinfl='define' +d_isless='undef' d_isnan='define' d_isnanl='undef' +d_isnormal='define' +d_j0='define' +d_j0l='define' d_killpg='define' +d_lc_monetary_2008='define' d_lchown='define' d_ldbl_dig='define' +d_ldexpl='define' +d_lgamma='define' +d_lgamma_r='define' d_libm_lib_version='define' d_link='define' +d_llrint='define' +d_llrintl='define' +d_llround='define' +d_llroundl='define' d_localtime_r='undef' d_localtime_r_needs_tzset='undef' d_locconv='define' d_lockf='define' +d_log1p='define' +d_log2='define' +d_logb='define' d_longdbl='define' d_longlong='define' +d_lrint='define' +d_lrintl='define' +d_lround='define' +d_lroundl='define' d_lseekproto='define' d_lstat='define' d_madvise='define' @@ -321,6 +362,10 @@ d_msgsnd='define' d_msync='define' d_munmap='define' d_mymalloc='undef' +d_nan='define' +d_nearbyint='define' +d_nextafter='define' +d_nexttoward='define' d_nice='define' d_nl_langinfo='define' d_nv_preserves_uv='define' @@ -343,6 +388,7 @@ d_pseudofork='undef' d_pthread_atfork='undef' d_pthread_attr_setscope='define' d_pthread_yield='undef' +d_ptrdiff_t='define' d_pwage='undef' d_pwchange='undef' d_pwclass='undef' @@ -354,19 +400,27 @@ d_pwquota='undef' d_qgcvt='undef' d_quad='define' d_random_r='undef' +d_re_comp='undef' d_readdir64_r='undef' d_readdir='define' d_readdir_r='undef' d_readlink='define' d_readv='define' d_recvmsg='define' +d_regcmp='undef' +d_regcomp='define' +d_remainder='define' +d_remquo='define' d_rename='define' d_rewinddir='define' +d_rint='define' d_rmdir='define' +d_round='define' d_safebcpy='undef' d_safemcpy='undef' d_sanemcmp='define' d_sbrkproto='define' +d_scalbn='define' d_scalbnl='undef' d_sched_yield='define' d_scm_rights='define' @@ -436,6 +490,7 @@ d_srand48_r='undef' d_srandom_r='undef' d_sresgproto='undef' d_sresuproto='undef' +d_stat='define' d_statblks='define' d_statfs_f_flags='undef' d_statfs_s='define' @@ -477,12 +532,15 @@ d_tcgetpgrp='define' d_tcsetpgrp='define' d_telldir='define' d_telldirproto='define' +d_tgamma='define' d_time='define' d_times='define' d_tm_tm_gmtoff='define' d_tm_tm_zone='define' d_tmpnam_r='undef' +d_trunc='define' d_truncate='define' +d_truncl='define' d_ttyname_r='undef' d_tzname='define' d_u32align='undef' @@ -508,7 +566,9 @@ d_vprintf='define' d_vsnprintf='define' d_wait4='define' d_waitpid='define' +d_wcscmp='define' d_wcstombs='define' +d_wcsxfrm='define' d_wctomb='define' d_writev='define' d_xenix='undef' @@ -522,6 +582,7 @@ defvoidused='15' direntrytype='struct dirent' dlext='so' dlsrc='dl_dlopen.xs' +doublekind='3' doublesize='8' drand01='drand48()' drand48_r_proto='0' @@ -539,7 +600,6 @@ endservent_r_proto='0' eunicefix=':' exe_ext='' expr='expr' -extensions='B Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex Time/HiRes Time/Piece Unicode/Normalize XS/APItest XS/Typemap attrs re threads threads/shared Hash/Util/FieldHash Compress/Zlib Errno IO_Compress_Base IO_Compress_Zlib' extras='' fflushNULL='define' fflushall='undef' @@ -612,7 +672,9 @@ i_dbm='undef' i_dirent='define' i_dld='undef' i_dlfcn='define' +i_execinfo='define' i_fcntl='undef' +i_fenv='undef' i_float='define' i_fp='undef' i_fp_class='undef' @@ -638,6 +700,7 @@ i_poll='define' i_prot='undef' i_pthread='define' i_pwd='define' +i_quadmath='define' i_rpcsvcdbm='undef' i_sfio='undef' i_sgtty='undef' @@ -645,6 +708,7 @@ i_shadow='define' i_socks='undef' i_stdarg='define' i_stddef='define' +i_stdint='define' i_stdlib='define' i_string='define' i_sunmath='undef' @@ -721,7 +785,6 @@ issymlink='test -h' ivdformat='"ld"' ivsize='4' ivtype='long' -known_extensions='B Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc NDBM_File ODBM_File Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex Time/HiRes Time/Piece Unicode/Normalize Win32 Win32API/File Win32CORE XS/APItest XS/Typemap attrs re threads threads/shared Hash/Util/FieldHash' ksh='' ld='%%LD%%' lddlflags='-shared %%LDFLAGS%%' @@ -748,6 +811,7 @@ lns='/bin/ln -s' localtime_r_proto='0' locincpth=' ' loclibpth=' ' +longdblkind='0' longdblsize='8' longlongsize='8' longsize='4' @@ -756,10 +820,6 @@ lpr='' ls='ls' lseeksize='8' lseektype='off_t' -mad='undef' -madlyh='' -madlyobj='' -madlysrc='' mail='' mailx='' make='make' @@ -972,6 +1032,7 @@ uquadtype='unsigned long long' use5005threads='undef' use64bitall='undef' use64bitint='undef' +usecbacktrace='undef' usecrosscompile='define' usedl='define' usefaststdio='undef' @@ -986,6 +1047,7 @@ usenm='true' useopcode='true' useperlio='define' useposix='true' +usequadmath='undef' usereentrant='undef' userelocatableinc='undef' usesfio='false' @@ -1049,7 +1111,6 @@ d_clock='define' # New symbols for perl 5.20.0 bin_ELF='define' -bootstrap_charset='undef' charbits='8' charsize='1' d_asctime64='undef' @@ -1084,6 +1145,7 @@ dtrace='' extern_C='extern' hostosname='' i_assert='define' +i_bfd='undef' i_gdbm_ndbm='undef' i_gdbmndbm='undef' i_mallocmalloc='undef' @@ -1121,27 +1183,29 @@ libdb_needs_pthread='N' # These symbols changed from perl 5.10.0 to 5.20.0 and probably will # change again for new versions, so they're included here for # future reference -api_version='20' +api_version='22' # Always set this to the base version, not the patched one! -api_versionstring='5.20.0' -dynamic_ext='B Compress/Raw/Bzip2 Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/DosGlob File/Glob Filter/Util/Call GDBM_File Hash/Util Hash/Util/FieldHash I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc Opcode POSIX PerlIO/encoding PerlIO/mmap PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Tie/Hash/NamedCapture Time/HiRes Time/Piece Unicode/Collate Unicode/Normalize XS/APItest XS/Typemap arybase attributes mro re threads threads/shared' -installarchlib='/usr/lib/perl5/5.20' -installprivlib='/usr/lib/perl5/5.20' -installsitearch='/usr/lib/perl5/5.20' -installsitelib='/usr/lib/perl5/5.20' -nonxs_ext='Archive/Tar Attribute/Handlers AutoLoader B/Debug CGI CPAN CPAN/Meta CPAN/Meta/Requirements CPAN/Meta/YAML Carp Config/Perl/V Devel/SelfStubber Digest Dumpvalue Env Errno Exporter ExtUtils/CBuilder ExtUtils/Command ExtUtils/Constant ExtUtils/Install ExtUtils/MakeMaker ExtUtils/Manifest ExtUtils/Miniperl ExtUtils/ParseXS File/Fetch File/Find File/Path File/Temp FileCache Filter/Simple Getopt/Long HTTP/Tiny I18N/Collate I18N/LangTags IO/Compress IO/Socket/IP IO/Zlib IPC/Cmd IPC/Open3 JSON/PP Locale/Codes Locale/Maketext Locale/Maketext/Simple Math/BigInt Math/BigRat Math/Complex Memoize Module/Build Module/CoreList Module/Load Module/Load/Conditional Module/Loaded Module/Metadata NEXT Net/Ping Package/Constants Params/Check Parse/CPAN/Meta Perl/OSType PerlIO/via/QuotedPrint Pod/Checker Pod/Escapes Pod/Functions Pod/Html Pod/Parser Pod/Perldoc Pod/Simple Pod/Usage Safe Search/Dict SelfLoader Term/ANSIColor Term/Cap Term/Complete Term/ReadLine Test Test/Harness Test/Simple Text/Abbrev Text/Balanced Text/ParseWords Text/Tabs Thread/Queue Thread/Semaphore Tie/File Tie/Memoize Tie/RefHash Time/Local XSLoader autodie autouse base bignum constant encoding/warnings experimental if lib libnet parent perlfaq podlators version' -privlib='/usr/lib/perl5/5.20' -privlibexp='/usr/lib/perl5/5.20' -archlib='/usr/lib/perl5/5.20' -archlibexp='/usr/lib/perl5/5.20' -version='5.20.2' -version_patchlevel_string='version 20 subversion 2' -PERL_VERSION=20 -PERL_API_VERSION=20 -PERL_SUBVERSION=2 -patchlevel='20' -ccdlflags='-fPIC -Wl,-rpath,/usr/lib/perl5/5.20/CORE' -subversion='2' +api_versionstring='5.22.0' +dynamic_ext='B Compress/Raw/Bzip2 Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/DosGlob File/Glob Filter/Util/Call GDBM_File Hash/Util Hash/Util/FieldHash I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc Opcode POSIX PerlIO/encoding PerlIO/mmap PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Tie/Hash/NamedCapture Time/HiRes Time/Piece Unicode/Collate XS/APItest XS/Typemap arybase attributes mro re threads threads/shared' +installarchlib='/usr/lib/perl5/5.22' +installprivlib='/usr/lib/perl5/5.22' +installsitearch='/usr/lib/perl5/5.22' +installsitelib='/usr/lib/perl5/5.22' +nonxs_ext='Archive/Tar Attribute/Handlers AutoLoader B/Debug CPAN CPAN/Meta CPAN/Meta/Requirements CPAN/Meta/YAML Carp Config/Perl/V Devel/SelfStubber Digest Dumpvalue Env Errno Exporter ExtUtils/CBuilder ExtUtils/Command ExtUtils/Constant ExtUtils/Install ExtUtils/MakeMaker ExtUtils/Manifest ExtUtils/Miniperl ExtUtils/ParseXS File/Fetch File/Find File/Path File/Temp FileCache Filter/Simple Getopt/Long HTTP/Tiny I18N/Collate I18N/LangTags IO/Compress IO/Socket/IP IO/Zlib IPC/Cmd IPC/Open3 JSON/PP Locale/Codes Locale/Maketext Locale/Maketext/Simple Math/BigInt Math/BigRat Math/Complex Memoize Module/CoreList Module/Load Module/Load/Conditional Module/Loaded Module/Metadata NEXT Net/Ping Params/Check Parse/CPAN/Meta Perl/OSType PerlIO/via/QuotedPrint Pod/Checker Pod/Escapes Pod/Functions Pod/Html Pod/Parser Pod/Perldoc Pod/Simple Pod/Usage Safe Search/Dict SelfLoader Term/ANSIColor Term/Cap Term/Complete Term/ReadLine Test Test/Harness Test/Simple Text/Abbrev Text/Balanced Text/ParseWords Text/Tabs Thread/Queue Thread/Semaphore Tie/File Tie/Memoize Tie/RefHash Time/Local XSLoader autodie autouse base bignum constant encoding/warnings experimental if lib libnet parent perlfaq podlators Unicode/Normalize version' +privlib='/usr/lib/perl5/5.22' +privlibexp='/usr/lib/perl5/5.22' +archlib='/usr/lib/perl5/5.22' +archlibexp='/usr/lib/perl5/5.22' +version='5.22.0' +version_patchlevel_string='version 22 subversion 0' +PERL_VERSION=22 +PERL_API_VERSION=22 +PERL_SUBVERSION=0 +patchlevel='22' +ccdlflags='-fPIC -Wl,-rpath,/usr/lib/perl5/5.22/CORE' +subversion='0' +extensions='B Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex Time/HiRes Time/Piece XS/APItest XS/Typemap attrs re threads threads/shared Hash/Util/FieldHash Compress/Zlib Errno IO_Compress_Base IO_Compress_Zlib Unicode/Normalize' +known_extensions='B Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc NDBM_File ODBM_File Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex Time/HiRes Time/Piece Unicode/Normalize Win32 Win32API/File Win32CORE XS/APItest XS/Typemap attrs re threads threads/shared Hash/Util/FieldHash' # Make perl use these tools instead of the target binaries during build hostgenerate='%%HOSTGENERATE%%' diff --git a/lang/perl/files/config.sh-powerpc-mt.in b/lang/perl/files/config.sh-powerpc-mt.in index 677ed1bde..c24eb9b40 100644 --- a/lang/perl/files/config.sh-powerpc-mt.in +++ b/lang/perl/files/config.sh-powerpc-mt.in @@ -13,14 +13,13 @@ # Target system : linux maia 2.6.22 #1 wed jul 11 12:24:09 cest 2007 ppc unknown unknown gnulinux Author='' -Date='$Date' +Date='' Header='' -Id='$Id' +Id='' Locker='' -Log='$Log' -Mcc='Mcc' -RCSfile='$RCSfile' -Revision='$Revision' +Log='' +RCSfile='' +Revision='' Source='' State='' _a='.a' @@ -101,10 +100,13 @@ d_SCNfldbl='define' d__fwalk='undef' d_access='define' d_accessx='undef' +d_acosh='define' d_aintl='undef' d_alarm='define' d_archlib='undef' d_asctime_r='define' +d_asinh='define' +d_atanh='define' d_atolf='undef' d_atoll='define' d_attribute_format='define' @@ -114,6 +116,7 @@ d_attribute_noreturn='define' d_attribute_pure='define' d_attribute_unused='define' d_attribute_warn_unused_result='define' +d_backtrace='define' d_bcmp='define' d_bcopy='define' d_bsd='undef' @@ -125,6 +128,7 @@ d_bzero='define' d_c99_variadic_macros='define' d_casti32='undef' d_castneg='define' +d_cbrt='define' d_charvspr='undef' d_chown='define' d_chroot='define' @@ -134,6 +138,7 @@ d_clearenv='define' d_closedir='define' d_cmsghdr_s='define' d_const='define' +d_copysign='define' d_copysignl='undef' d_cplusplus='undef' d_crypt='%%CRYPT%%' @@ -149,6 +154,7 @@ d_difftime='define' d_dir_dd_fd='undef' d_dirfd='define' d_dirnamlen='undef' +d_dladdr='define' d_dlerror='define' d_dlopen='define' d_dlsymun='undef' @@ -170,7 +176,11 @@ d_endpwent_r='undef' d_endsent='define' d_endservent_r='undef' d_eofnblk='define' +d_erf='define' +d_erfc='define' d_eunice='undef' +d_exp2='define' +d_expm1='define' d_faststdio='undef' d_fchdir='define' d_fchmod='define' @@ -179,19 +189,27 @@ d_fcntl='define' d_fcntl_can_lock='define' d_fd_macros='define' d_fd_set='define' +d_fdim='define' d_fds_bits='define' +d_fegetround='undef' d_fgetpos='define' d_finite='define' d_finitel='undef' d_flexfnam='define' d_flock='define' d_flockproto='define' +d_fma='define' +d_fmax='define' +d_fmin='define' d_fork='define' d_fp_class='undef' +d_fp_classify='undef' +d_fp_classl='undef' d_fpathconf='define' d_fpclass='undef' -d_fpclassify='undef' +d_fpclassify='define' d_fpclassl='undef' +d_fpgetround='undef' d_fpos64_t='undef' d_frexpl='undef' d_fs_data_s='undef' @@ -264,27 +282,50 @@ d_gnulibc='undef' d_grpasswd='define' d_hasmntopt='define' d_htonl='define' +d_hypot='define' +d_ilogb='define' d_ilogbl='undef' d_inc_version_list='undef' d_index='undef' d_inetaton='define' d_int64_t='define' d_isascii='define' -d_isfinite='undef' +d_isfinite='define' +d_isfinitel='undef' d_isinf='define' +d_isinfl='define' +d_isless='undef' d_isnan='define' d_isnanl='undef' +d_isnormal='define' +d_j0='undef' +d_j0l='undef' d_killpg='define' +d_lc_monetary_2008='define' d_lchown='define' d_ldbl_dig='define' +d_ldexpl='define' +d_lgamma='define' +d_lgamma_r='define' d_libm_lib_version='define' d_link='define' +d_llrint='define' +d_llrintl='define' +d_llround='define' +d_llroundl='define' d_localtime_r='define' d_localtime_r_needs_tzset='define' d_locconv='define' d_lockf='define' +d_log1p='define' +d_log2='define' +d_logb='define' d_longdbl='define' d_longlong='define' +d_lrint='define' +d_lrintl='define' +d_lround='define' +d_lroundl='define' d_lseekproto='define' d_lstat='define' d_madvise='define' @@ -323,6 +364,10 @@ d_msgsnd='define' d_msync='define' d_munmap='define' d_mymalloc='undef' +d_nan='define' +d_nearbyint='define' +d_nextafter='define' +d_nexttoward='undef' d_nice='define' d_nl_langinfo='define' d_nv_preserves_uv='define' @@ -345,6 +390,7 @@ d_pseudofork='undef' d_pthread_atfork='define' d_pthread_attr_setscope='define' d_pthread_yield='define' +d_ptrdiff_t='define' d_pwage='undef' d_pwchange='undef' d_pwclass='undef' @@ -356,19 +402,27 @@ d_pwquota='undef' d_qgcvt='undef' d_quad='define' d_random_r='define' +d_re_comp='undef' d_readdir64_r='define' d_readdir='define' d_readdir_r='define' d_readlink='define' d_readv='define' d_recvmsg='define' +d_regcmp='undef' +d_regcomp='define' +d_remainder='define' +d_remquo='define' d_rename='define' d_rewinddir='define' +d_rint='define' d_rmdir='define' +d_round='define' d_safebcpy='undef' d_safemcpy='undef' d_sanemcmp='define' d_sbrkproto='define' +d_scalbn='define' d_scalbnl='undef' d_sched_yield='define' d_scm_rights='define' @@ -438,6 +492,7 @@ d_srand48_r='define' d_srandom_r='define' d_sresgproto='define' d_sresuproto='define' +d_stat='define' d_statblks='define' d_statfs_f_flags='undef' d_statfs_s='define' @@ -479,12 +534,15 @@ d_tcgetpgrp='define' d_tcsetpgrp='define' d_telldir='define' d_telldirproto='define' +d_tgamma='define' d_time='define' d_times='define' d_tm_tm_gmtoff='define' d_tm_tm_zone='define' d_tmpnam_r='define' +d_trunc='define' d_truncate='define' +d_truncl='define' d_ttyname_r='define' d_tzname='define' d_u32align='undef' @@ -510,7 +568,9 @@ d_vprintf='define' d_vsnprintf='define' d_wait4='define' d_waitpid='define' +d_wcscmp='define' d_wcstombs='define' +d_wcsxfrm='define' d_wctomb='define' d_writev='define' d_xenix='undef' @@ -524,6 +584,7 @@ defvoidused='15' direntrytype='struct dirent' dlext='so' dlsrc='dl_dlopen.xs' +doublekind='4' doublesize='8' drand01='drand48()' drand48_r_proto='REENTRANT_PROTO_I_ST' @@ -542,7 +603,6 @@ endservent_r_proto='0' eunicefix=':' exe_ext='' expr='expr' -extensions='B Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex Time/HiRes Time/Piece Unicode/Normalize XS/APItest XS/Typemap attrs re threads threads/shared Hash/Util/FieldHash Compress/Zlib Errno IO_Compress_Base IO_Compress_Zlib' extras='' fflushNULL='define' fflushall='undef' @@ -615,7 +675,9 @@ i_dbm='undef' i_dirent='define' i_dld='undef' i_dlfcn='define' +i_execinfo='define' i_fcntl='undef' +i_fenv='undef' i_float='define' i_fp='undef' i_fp_class='undef' @@ -641,6 +703,7 @@ i_poll='define' i_prot='undef' i_pthread='define' i_pwd='define' +i_quadmath='define' i_rpcsvcdbm='undef' i_sfio='undef' i_sgtty='undef' @@ -648,6 +711,7 @@ i_shadow='define' i_socks='undef' i_stdarg='define' i_stddef='define' +i_stdint='define' i_stdlib='define' i_string='define' i_sunmath='undef' @@ -728,7 +792,6 @@ issymlink='test -h' ivdformat='"ld"' ivsize='4' ivtype='long' -known_extensions='B Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc NDBM_File ODBM_File Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex Time/HiRes Time/Piece Unicode/Normalize Win32 Win32API/File Win32CORE XS/APItest XS/Typemap attrs re threads threads/shared Hash/Util/FieldHash' ksh='' ld='%%LD%%' lddlflags='-shared %%LDFLAGS%%' @@ -755,6 +818,7 @@ lns='/bin/ln -s' localtime_r_proto='REENTRANT_PROTO_S_TS' locincpth=' ' loclibpth=' ' +longdblkind='0' longdblsize='8' longlongsize='8' longsize='4' @@ -763,10 +827,6 @@ lpr='' ls='ls' lseeksize='8' lseektype='off_t' -mad='undef' -madlyh='' -madlyobj='' -madlysrc='' mail='' mailx='' make='make' @@ -983,6 +1043,7 @@ uquadtype='unsigned long long' use5005threads='undef' use64bitall='undef' use64bitint='undef' +usecbacktrace='undef' usecrosscompile='define' usedl='define' usefaststdio='undef' @@ -997,6 +1058,7 @@ usenm='true' useopcode='true' useperlio='define' useposix='true' +usequadmath='undef' usereentrant='undef' userelocatableinc='undef' usesfio='false' @@ -1064,7 +1126,6 @@ d_clock='define' # New symbols for perl 5.20.0 bin_ELF='define' -bootstrap_charset='undef' charbits='8' charsize='1' d_asctime64='undef' @@ -1099,6 +1160,7 @@ dtrace='' extern_C='extern' hostosname='' i_assert='define' +i_bfd='undef' i_gdbm_ndbm='undef' i_gdbmndbm='undef' i_mallocmalloc='undef' @@ -1136,27 +1198,29 @@ libdb_needs_pthread='N' # These symbols changed from perl 5.10.0 to 5.20.0 and probably will # change again for new versions, so they're included here for # future reference -api_version='20' +api_version='22' # Always set this to the base version, not the patched one! -api_versionstring='5.20.0' -dynamic_ext='B Compress/Raw/Bzip2 Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/DosGlob File/Glob Filter/Util/Call GDBM_File Hash/Util Hash/Util/FieldHash I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc Opcode POSIX PerlIO/encoding PerlIO/mmap PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Tie/Hash/NamedCapture Time/HiRes Time/Piece Unicode/Collate Unicode/Normalize XS/APItest XS/Typemap arybase attributes mro re threads threads/shared' -installarchlib='/usr/lib/perl5/5.20' -installprivlib='/usr/lib/perl5/5.20' -installsitearch='/usr/lib/perl5/5.20' -installsitelib='/usr/lib/perl5/5.20' -nonxs_ext='Archive/Tar Attribute/Handlers AutoLoader B/Debug CGI CPAN CPAN/Meta CPAN/Meta/Requirements CPAN/Meta/YAML Carp Config/Perl/V Devel/SelfStubber Digest Dumpvalue Env Errno Exporter ExtUtils/CBuilder ExtUtils/Command ExtUtils/Constant ExtUtils/Install ExtUtils/MakeMaker ExtUtils/Manifest ExtUtils/Miniperl ExtUtils/ParseXS File/Fetch File/Find File/Path File/Temp FileCache Filter/Simple Getopt/Long HTTP/Tiny I18N/Collate I18N/LangTags IO/Compress IO/Socket/IP IO/Zlib IPC/Cmd IPC/Open3 JSON/PP Locale/Codes Locale/Maketext Locale/Maketext/Simple Math/BigInt Math/BigRat Math/Complex Memoize Module/Build Module/CoreList Module/Load Module/Load/Conditional Module/Loaded Module/Metadata NEXT Net/Ping Package/Constants Params/Check Parse/CPAN/Meta Perl/OSType PerlIO/via/QuotedPrint Pod/Checker Pod/Escapes Pod/Functions Pod/Html Pod/Parser Pod/Perldoc Pod/Simple Pod/Usage Safe Search/Dict SelfLoader Term/ANSIColor Term/Cap Term/Complete Term/ReadLine Test Test/Harness Test/Simple Text/Abbrev Text/Balanced Text/ParseWords Text/Tabs Thread/Queue Thread/Semaphore Tie/File Tie/Memoize Tie/RefHash Time/Local XSLoader autodie autouse base bignum constant encoding/warnings experimental if lib libnet parent perlfaq podlators version' -privlib='/usr/lib/perl5/5.20' -privlibexp='/usr/lib/perl5/5.20' -archlib='/usr/lib/perl5/5.20' -archlibexp='/usr/lib/perl5/5.20' -version='5.20.2' -version_patchlevel_string='version 20 subversion 2' -PERL_VERSION=20 -PERL_API_VERSION=20 -PERL_SUBVERSION=2 -patchlevel='20' -ccdlflags='-fPIC -Wl,-rpath,/usr/lib/perl5/5.20/CORE' -subversion='2' +api_versionstring='5.22.0' +dynamic_ext='B Compress/Raw/Bzip2 Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/DosGlob File/Glob Filter/Util/Call GDBM_File Hash/Util Hash/Util/FieldHash I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc Opcode POSIX PerlIO/encoding PerlIO/mmap PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Tie/Hash/NamedCapture Time/HiRes Time/Piece Unicode/Collate XS/APItest XS/Typemap arybase attributes mro re threads threads/shared' +installarchlib='/usr/lib/perl5/5.22' +installprivlib='/usr/lib/perl5/5.22' +installsitearch='/usr/lib/perl5/5.22' +installsitelib='/usr/lib/perl5/5.22' +nonxs_ext='Archive/Tar Attribute/Handlers AutoLoader B/Debug CPAN CPAN/Meta CPAN/Meta/Requirements CPAN/Meta/YAML Carp Config/Perl/V Devel/SelfStubber Digest Dumpvalue Env Errno Exporter ExtUtils/CBuilder ExtUtils/Command ExtUtils/Constant ExtUtils/Install ExtUtils/MakeMaker ExtUtils/Manifest ExtUtils/Miniperl ExtUtils/ParseXS File/Fetch File/Find File/Path File/Temp FileCache Filter/Simple Getopt/Long HTTP/Tiny I18N/Collate I18N/LangTags IO/Compress IO/Socket/IP IO/Zlib IPC/Cmd IPC/Open3 JSON/PP Locale/Codes Locale/Maketext Locale/Maketext/Simple Math/BigInt Math/BigRat Math/Complex Memoize Module/CoreList Module/Load Module/Load/Conditional Module/Loaded Module/Metadata NEXT Net/Ping Params/Check Parse/CPAN/Meta Perl/OSType PerlIO/via/QuotedPrint Pod/Checker Pod/Escapes Pod/Functions Pod/Html Pod/Parser Pod/Perldoc Pod/Simple Pod/Usage Safe Search/Dict SelfLoader Term/ANSIColor Term/Cap Term/Complete Term/ReadLine Test Test/Harness Test/Simple Text/Abbrev Text/Balanced Text/ParseWords Text/Tabs Thread/Queue Thread/Semaphore Tie/File Tie/Memoize Tie/RefHash Time/Local XSLoader autodie autouse base bignum constant encoding/warnings experimental if lib libnet parent perlfaq podlators Unicode/Normalize version' +privlib='/usr/lib/perl5/5.22' +privlibexp='/usr/lib/perl5/5.22' +archlib='/usr/lib/perl5/5.22' +archlibexp='/usr/lib/perl5/5.22' +version='5.22.0' +version_patchlevel_string='version 22 subversion 0' +PERL_VERSION=22 +PERL_API_VERSION=22 +PERL_SUBVERSION=0 +patchlevel='22' +ccdlflags='-fPIC -Wl,-rpath,/usr/lib/perl5/5.22/CORE' +subversion='0' +extensions='B Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex Time/HiRes Time/Piece XS/APItest XS/Typemap attrs re threads threads/shared Hash/Util/FieldHash Compress/Zlib Errno IO_Compress_Base IO_Compress_Zlib Unicode/Normalize' +known_extensions='B Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc NDBM_File ODBM_File Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex Time/HiRes Time/Piece Unicode/Normalize Win32 Win32API/File Win32CORE XS/APItest XS/Typemap attrs re threads threads/shared Hash/Util/FieldHash' # Make perl use these tools instead of the target binaries during build hostgenerate='%%HOSTGENERATE%%' diff --git a/lang/perl/files/config.sh-powerpc.in b/lang/perl/files/config.sh-powerpc.in index c2060476b..cbeb2185a 100644 --- a/lang/perl/files/config.sh-powerpc.in +++ b/lang/perl/files/config.sh-powerpc.in @@ -13,14 +13,13 @@ # Target system : linux maia 2.6.22 #1 wed jul 11 12:24:09 cest 2007 ppc unknown unknown gnulinux Author='' -Date='$Date' +Date='' Header='' -Id='$Id' +Id='' Locker='' -Log='$Log' -Mcc='Mcc' -RCSfile='$RCSfile' -Revision='$Revision' +Log='' +RCSfile='' +Revision='' Source='' State='' _a='.a' @@ -101,10 +100,13 @@ d_SCNfldbl='define' d__fwalk='undef' d_access='define' d_accessx='undef' +d_acosh='define' d_aintl='undef' d_alarm='define' d_archlib='undef' d_asctime_r='undef' +d_asinh='define' +d_atanh='define' d_atolf='undef' d_atoll='define' d_attribute_format='define' @@ -114,6 +116,7 @@ d_attribute_noreturn='define' d_attribute_pure='define' d_attribute_unused='define' d_attribute_warn_unused_result='define' +d_backtrace='define' d_bcmp='define' d_bcopy='define' d_bsd='undef' @@ -125,6 +128,7 @@ d_bzero='define' d_c99_variadic_macros='define' d_casti32='undef' d_castneg='define' +d_cbrt='define' d_charvspr='undef' d_chown='define' d_chroot='define' @@ -134,6 +138,7 @@ d_clearenv='define' d_closedir='define' d_cmsghdr_s='define' d_const='define' +d_copysign='define' d_copysignl='undef' d_cplusplus='undef' d_crypt='define' @@ -149,6 +154,7 @@ d_difftime='define' d_dir_dd_fd='undef' d_dirfd='define' d_dirnamlen='undef' +d_dladdr='define' d_dlerror='define' d_dlopen='define' d_dlsymun='undef' @@ -170,7 +176,11 @@ d_endpwent_r='undef' d_endsent='define' d_endservent_r='undef' d_eofnblk='define' +d_erf='define' +d_erfc='define' d_eunice='undef' +d_exp2='define' +d_expm1='define' d_faststdio='undef' d_fchdir='define' d_fchmod='define' @@ -179,19 +189,27 @@ d_fcntl='define' d_fcntl_can_lock='define' d_fd_macros='define' d_fd_set='define' +d_fdim='define' d_fds_bits='undef' +d_fegetround='undef' d_fgetpos='define' d_finite='define' d_finitel='undef' d_flexfnam='define' d_flock='define' d_flockproto='define' +d_fma='define' +d_fmax='define' +d_fmin='define' d_fork='define' d_fp_class='undef' +d_fp_classify='undef' +d_fp_classl='undef' d_fpathconf='define' d_fpclass='undef' -d_fpclassify='undef' +d_fpclassify='define' d_fpclassl='undef' +d_fpgetround='undef' d_fpos64_t='undef' d_frexpl='undef' d_fs_data_s='undef' @@ -264,27 +282,50 @@ d_gnulibc='undef' d_grpasswd='define' d_hasmntopt='define' d_htonl='define' +d_hypot='define' +d_ilogb='define' d_ilogbl='undef' d_inc_version_list='undef' d_index='undef' d_inetaton='define' d_int64_t='define' d_isascii='define' -d_isfinite='undef' +d_isfinite='define' +d_isfinitel='undef' d_isinf='define' +d_isinfl='define' +d_isless='undef' d_isnan='define' d_isnanl='undef' +d_isnormal='define' +d_j0='undef' +d_j0l='undef' d_killpg='define' +d_lc_monetary_2008='define' d_lchown='define' d_ldbl_dig='define' +d_ldexpl='define' +d_lgamma='define' +d_lgamma_r='define' d_libm_lib_version='define' d_link='define' +d_llrint='define' +d_llrintl='define' +d_llround='define' +d_llroundl='define' d_localtime_r='undef' d_localtime_r_needs_tzset='undef' d_locconv='define' d_lockf='define' +d_log1p='define' +d_log2='define' +d_logb='define' d_longdbl='define' d_longlong='define' +d_lrint='define' +d_lrintl='define' +d_lround='define' +d_lroundl='define' d_lseekproto='define' d_lstat='define' d_madvise='define' @@ -323,6 +364,10 @@ d_msgsnd='define' d_msync='define' d_munmap='define' d_mymalloc='undef' +d_nan='define' +d_nearbyint='define' +d_nextafter='define' +d_nexttoward='undef' d_nice='define' d_nl_langinfo='define' d_nv_preserves_uv='define' @@ -345,6 +390,7 @@ d_pseudofork='undef' d_pthread_atfork='undef' d_pthread_attr_setscope='define' d_pthread_yield='undef' +d_ptrdiff_t='define' d_pwage='undef' d_pwchange='undef' d_pwclass='undef' @@ -356,19 +402,27 @@ d_pwquota='undef' d_qgcvt='undef' d_quad='define' d_random_r='undef' +d_re_comp='undef' d_readdir64_r='undef' d_readdir='define' d_readdir_r='undef' d_readlink='define' d_readv='define' d_recvmsg='define' +d_regcmp='undef' +d_regcomp='define' +d_remainder='define' +d_remquo='define' d_rename='define' d_rewinddir='define' +d_rint='define' d_rmdir='define' +d_round='define' d_safebcpy='undef' d_safemcpy='undef' d_sanemcmp='define' d_sbrkproto='define' +d_scalbn='define' d_scalbnl='undef' d_sched_yield='define' d_scm_rights='define' @@ -438,6 +492,7 @@ d_srand48_r='undef' d_srandom_r='undef' d_sresgproto='undef' d_sresuproto='undef' +d_stat='define' d_statblks='define' d_statfs_f_flags='undef' d_statfs_s='define' @@ -479,12 +534,15 @@ d_tcgetpgrp='define' d_tcsetpgrp='define' d_telldir='define' d_telldirproto='define' +d_tgamma='define' d_time='define' d_times='define' d_tm_tm_gmtoff='define' d_tm_tm_zone='define' d_tmpnam_r='undef' +d_trunc='define' d_truncate='define' +d_truncl='define' d_ttyname_r='undef' d_tzname='define' d_u32align='undef' @@ -510,7 +568,9 @@ d_vprintf='define' d_vsnprintf='define' d_wait4='define' d_waitpid='define' +d_wcscmp='define' d_wcstombs='define' +d_wcsxfrm='define' d_wctomb='define' d_writev='define' d_xenix='undef' @@ -524,6 +584,7 @@ defvoidused='15' direntrytype='struct dirent' dlext='so' dlsrc='dl_dlopen.xs' +doublekind='4' doublesize='8' drand01='drand48()' drand48_r_proto='0' @@ -542,7 +603,6 @@ endservent_r_proto='0' eunicefix=':' exe_ext='' expr='expr' -extensions='B Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex Time/HiRes Time/Piece Unicode/Normalize XS/APItest XS/Typemap attrs re threads threads/shared Hash/Util/FieldHash Compress/Zlib Errno IO_Compress_Base IO_Compress_Zlib' extras='' fflushNULL='define' fflushall='undef' @@ -615,7 +675,9 @@ i_dbm='undef' i_dirent='define' i_dld='undef' i_dlfcn='define' +i_execinfo='define' i_fcntl='undef' +i_fenv='undef' i_float='define' i_fp='undef' i_fp_class='undef' @@ -641,6 +703,7 @@ i_poll='define' i_prot='undef' i_pthread='define' i_pwd='define' +i_quadmath='define' i_rpcsvcdbm='undef' i_sfio='undef' i_sgtty='undef' @@ -648,6 +711,7 @@ i_shadow='define' i_socks='undef' i_stdarg='define' i_stddef='define' +i_stdint='define' i_stdlib='define' i_string='define' i_sunmath='undef' @@ -728,7 +792,6 @@ issymlink='test -h' ivdformat='"ld"' ivsize='4' ivtype='long' -known_extensions='B Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc NDBM_File ODBM_File Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex Time/HiRes Time/Piece Unicode/Normalize Win32 Win32API/File Win32CORE XS/APItest XS/Typemap attrs re threads threads/shared Hash/Util/FieldHash' ksh='' ld='%%LD%%' lddlflags='-shared %%LDFLAGS%%' @@ -755,6 +818,7 @@ lns='/bin/ln -s' localtime_r_proto='0' locincpth=' ' loclibpth=' ' +longdblkind='0' longdblsize='8' longlongsize='8' longsize='4' @@ -763,10 +827,6 @@ lpr='' ls='ls' lseeksize='8' lseektype='off_t' -mad='undef' -madlyh='' -madlyobj='' -madlysrc='' mail='' mailx='' make='make' @@ -983,6 +1043,7 @@ uquadtype='unsigned long long' use5005threads='undef' use64bitall='undef' use64bitint='undef' +usecbacktrace='undef' usecrosscompile='define' usedl='define' usefaststdio='undef' @@ -997,6 +1058,7 @@ usenm='true' useopcode='true' useperlio='define' useposix='true' +usequadmath='undef' usereentrant='undef' userelocatableinc='undef' usesfio='false' @@ -1063,7 +1125,6 @@ d_clock='define' # New symbols for perl 5.20.0 bin_ELF='define' -bootstrap_charset='undef' charbits='8' charsize='1' d_asctime64='undef' @@ -1098,6 +1159,7 @@ dtrace='' extern_C='extern' hostosname='' i_assert='define' +i_bfd='undef' i_gdbm_ndbm='undef' i_gdbmndbm='undef' i_mallocmalloc='undef' @@ -1135,27 +1197,29 @@ libdb_needs_pthread='N' # These symbols changed from perl 5.10.0 to 5.20.0 and probably will # change again for new versions, so they're included here for # future reference -api_version='20' +api_version='22' # Always set this to the base version, not the patched one! -api_versionstring='5.20.0' -dynamic_ext='B Compress/Raw/Bzip2 Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/DosGlob File/Glob Filter/Util/Call GDBM_File Hash/Util Hash/Util/FieldHash I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc Opcode POSIX PerlIO/encoding PerlIO/mmap PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Tie/Hash/NamedCapture Time/HiRes Time/Piece Unicode/Collate Unicode/Normalize XS/APItest XS/Typemap arybase attributes mro re threads threads/shared' -installarchlib='/usr/lib/perl5/5.20' -installprivlib='/usr/lib/perl5/5.20' -installsitearch='/usr/lib/perl5/5.20' -installsitelib='/usr/lib/perl5/5.20' -nonxs_ext='Archive/Tar Attribute/Handlers AutoLoader B/Debug CGI CPAN CPAN/Meta CPAN/Meta/Requirements CPAN/Meta/YAML Carp Config/Perl/V Devel/SelfStubber Digest Dumpvalue Env Errno Exporter ExtUtils/CBuilder ExtUtils/Command ExtUtils/Constant ExtUtils/Install ExtUtils/MakeMaker ExtUtils/Manifest ExtUtils/Miniperl ExtUtils/ParseXS File/Fetch File/Find File/Path File/Temp FileCache Filter/Simple Getopt/Long HTTP/Tiny I18N/Collate I18N/LangTags IO/Compress IO/Socket/IP IO/Zlib IPC/Cmd IPC/Open3 JSON/PP Locale/Codes Locale/Maketext Locale/Maketext/Simple Math/BigInt Math/BigRat Math/Complex Memoize Module/Build Module/CoreList Module/Load Module/Load/Conditional Module/Loaded Module/Metadata NEXT Net/Ping Package/Constants Params/Check Parse/CPAN/Meta Perl/OSType PerlIO/via/QuotedPrint Pod/Checker Pod/Escapes Pod/Functions Pod/Html Pod/Parser Pod/Perldoc Pod/Simple Pod/Usage Safe Search/Dict SelfLoader Term/ANSIColor Term/Cap Term/Complete Term/ReadLine Test Test/Harness Test/Simple Text/Abbrev Text/Balanced Text/ParseWords Text/Tabs Thread/Queue Thread/Semaphore Tie/File Tie/Memoize Tie/RefHash Time/Local XSLoader autodie autouse base bignum constant encoding/warnings experimental if lib libnet parent perlfaq podlators version' -privlib='/usr/lib/perl5/5.20' -privlibexp='/usr/lib/perl5/5.20' -archlib='/usr/lib/perl5/5.20' -archlibexp='/usr/lib/perl5/5.20' -version='5.20.2' -version_patchlevel_string='version 20 subversion 2' -PERL_VERSION=20 -PERL_API_VERSION=20 -PERL_SUBVERSION=2 -patchlevel='20' -ccdlflags='-fPIC -Wl,-rpath,/usr/lib/perl5/5.20/CORE' -subversion='2' +api_versionstring='5.22.0' +dynamic_ext='B Compress/Raw/Bzip2 Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/DosGlob File/Glob Filter/Util/Call GDBM_File Hash/Util Hash/Util/FieldHash I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc Opcode POSIX PerlIO/encoding PerlIO/mmap PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Tie/Hash/NamedCapture Time/HiRes Time/Piece Unicode/Collate XS/APItest XS/Typemap arybase attributes mro re threads threads/shared' +installarchlib='/usr/lib/perl5/5.22' +installprivlib='/usr/lib/perl5/5.22' +installsitearch='/usr/lib/perl5/5.22' +installsitelib='/usr/lib/perl5/5.22' +nonxs_ext='Archive/Tar Attribute/Handlers AutoLoader B/Debug CPAN CPAN/Meta CPAN/Meta/Requirements CPAN/Meta/YAML Carp Config/Perl/V Devel/SelfStubber Digest Dumpvalue Env Errno Exporter ExtUtils/CBuilder ExtUtils/Command ExtUtils/Constant ExtUtils/Install ExtUtils/MakeMaker ExtUtils/Manifest ExtUtils/Miniperl ExtUtils/ParseXS File/Fetch File/Find File/Path File/Temp FileCache Filter/Simple Getopt/Long HTTP/Tiny I18N/Collate I18N/LangTags IO/Compress IO/Socket/IP IO/Zlib IPC/Cmd IPC/Open3 JSON/PP Locale/Codes Locale/Maketext Locale/Maketext/Simple Math/BigInt Math/BigRat Math/Complex Memoize Module/CoreList Module/Load Module/Load/Conditional Module/Loaded Module/Metadata NEXT Net/Ping Params/Check Parse/CPAN/Meta Perl/OSType PerlIO/via/QuotedPrint Pod/Checker Pod/Escapes Pod/Functions Pod/Html Pod/Parser Pod/Perldoc Pod/Simple Pod/Usage Safe Search/Dict SelfLoader Term/ANSIColor Term/Cap Term/Complete Term/ReadLine Test Test/Harness Test/Simple Text/Abbrev Text/Balanced Text/ParseWords Text/Tabs Thread/Queue Thread/Semaphore Tie/File Tie/Memoize Tie/RefHash Time/Local XSLoader autodie autouse base bignum constant encoding/warnings experimental if lib libnet parent perlfaq podlators Unicode/Normalize version' +privlib='/usr/lib/perl5/5.22' +privlibexp='/usr/lib/perl5/5.22' +archlib='/usr/lib/perl5/5.22' +archlibexp='/usr/lib/perl5/5.22' +version='5.22.0' +version_patchlevel_string='version 22 subversion 0' +PERL_VERSION=22 +PERL_API_VERSION=22 +PERL_SUBVERSION=0 +patchlevel='22' +ccdlflags='-fPIC -Wl,-rpath,/usr/lib/perl5/5.22/CORE' +subversion='0' +extensions='B Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex Time/HiRes Time/Piece XS/APItest XS/Typemap attrs re threads threads/shared Hash/Util/FieldHash Compress/Zlib Errno IO_Compress_Base IO_Compress_Zlib Unicode/Normalize' +known_extensions='B Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc NDBM_File ODBM_File Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex Time/HiRes Time/Piece Unicode/Normalize Win32 Win32API/File Win32CORE XS/APItest XS/Typemap attrs re threads threads/shared Hash/Util/FieldHash' # Make perl use these tools instead of the target binaries during build hostgenerate='%%HOSTGENERATE%%' diff --git a/lang/perl/files/config.sh-x86_64-mt.in b/lang/perl/files/config.sh-x86_64-mt.in index 894f1309e..9ea9b0efe 100644 --- a/lang/perl/files/config.sh-x86_64-mt.in +++ b/lang/perl/files/config.sh-x86_64-mt.in @@ -13,14 +13,13 @@ # Target system : linux maia 2.6.25 #2 sat apr 19 09:46:49 cest 2008 i686 unknown unknown gnulinux Author='' -Date='$Date' +Date='' Header='' -Id='$Id' +Id='' Locker='' -Log='$Log' -Mcc='Mcc' -RCSfile='$RCSfile' -Revision='$Revision' +Log='' +RCSfile='' +Revision='' Source='' State='' _a='.a' @@ -99,10 +98,13 @@ d_SCNfldbl='define' d__fwalk='undef' d_access='define' d_accessx='undef' +d_acosh='define' d_aintl='undef' d_alarm='define' d_archlib='undef' d_asctime_r='define' +d_asinh='define' +d_atanh='define' d_atolf='undef' d_atoll='define' d_attribute_format='define' @@ -112,6 +114,7 @@ d_attribute_noreturn='define' d_attribute_pure='define' d_attribute_unused='define' d_attribute_warn_unused_result='define' +d_backtrace='define' d_bcmp='define' d_bcopy='define' d_bsd='undef' @@ -123,6 +126,7 @@ d_bzero='define' d_c99_variadic_macros='define' d_casti32='undef' d_castneg='define' +d_cbrt='define' d_charvspr='undef' d_chown='define' d_chroot='define' @@ -132,6 +136,7 @@ d_clearenv='define' d_closedir='define' d_cmsghdr_s='define' d_const='define' +d_copysign='define' d_copysignl='undef' d_cplusplus='undef' d_crypt='%%CRYPT%%' @@ -147,6 +152,7 @@ d_difftime='define' d_dir_dd_fd='undef' d_dirfd='define' d_dirnamlen='undef' +d_dladdr='define' d_dlerror='define' d_dlopen='define' d_dlsymun='undef' @@ -168,7 +174,11 @@ d_endpwent_r='undef' d_endsent='define' d_endservent_r='undef' d_eofnblk='define' +d_erf='define' +d_erfc='define' d_eunice='undef' +d_exp2='define' +d_expm1='define' d_faststdio='undef' d_fchdir='define' d_fchmod='define' @@ -177,19 +187,27 @@ d_fcntl='define' d_fcntl_can_lock='define' d_fd_macros='define' d_fd_set='define' +d_fdim='define' d_fds_bits='define' +d_fegetround='undef' d_fgetpos='define' d_finite='define' d_finitel='undef' d_flexfnam='define' d_flock='define' d_flockproto='define' +d_fma='define' +d_fmax='define' +d_fmin='define' d_fork='define' d_fp_class='undef' +d_fp_classify='undef' +d_fp_classl='undef' d_fpathconf='define' d_fpclass='undef' -d_fpclassify='undef' +d_fpclassify='define' d_fpclassl='undef' +d_fpgetround='undef' d_fpos64_t='undef' d_frexpl='undef' d_fs_data_s='undef' @@ -262,27 +280,50 @@ d_gnulibc='undef' d_grpasswd='define' d_hasmntopt='define' d_htonl='define' +d_hypot='define' +d_ilogb='define' d_ilogbl='undef' d_inc_version_list='undef' d_index='undef' d_inetaton='define' d_int64_t='define' d_isascii='define' -d_isfinite='undef' +d_isfinite='define' +d_isfinitel='undef' d_isinf='define' +d_isinfl='define' +d_isless='undef' d_isnan='define' d_isnanl='undef' +d_isnormal='define' +d_j0='undef' +d_j0l='undef' d_killpg='define' +d_lc_monetary_2008='define' d_lchown='define' d_ldbl_dig='define' +d_ldexpl='define' +d_lgamma='define' +d_lgamma_r='define' d_libm_lib_version='define' d_link='define' +d_llrint='define' +d_llrintl='define' +d_llround='define' +d_llroundl='define' d_localtime_r='define' d_localtime_r_needs_tzset='define' d_locconv='define' d_lockf='define' +d_log1p='define' +d_log2='define' +d_logb='define' d_longdbl='define' d_longlong='define' +d_lrint='define' +d_lrintl='define' +d_lround='define' +d_lroundl='define' d_lseekproto='define' d_lstat='define' d_madvise='define' @@ -321,6 +362,10 @@ d_msgsnd='define' d_msync='define' d_munmap='define' d_mymalloc='undef' +d_nan='define' +d_nearbyint='define' +d_nextafter='define' +d_nexttoward='undef' d_nice='define' d_nl_langinfo='define' d_nv_preserves_uv='undef' @@ -343,6 +388,7 @@ d_pseudofork='undef' d_pthread_atfork='define' d_pthread_attr_setscope='define' d_pthread_yield='define' +d_ptrdiff_t='define' d_pwage='undef' d_pwchange='undef' d_pwclass='undef' @@ -354,19 +400,27 @@ d_pwquota='undef' d_qgcvt='undef' d_quad='define' d_random_r='define' +d_re_comp='undef' d_readdir64_r='define' d_readdir='define' d_readdir_r='define' d_readlink='define' d_readv='define' d_recvmsg='define' +d_regcmp='undef' +d_regcomp='define' +d_remainder='define' +d_remquo='define' d_rename='define' d_rewinddir='define' +d_rint='define' d_rmdir='define' +d_round='define' d_safebcpy='undef' d_safemcpy='undef' d_sanemcmp='define' d_sbrkproto='define' +d_scalbn='define' d_scalbnl='undef' d_sched_yield='define' d_scm_rights='define' @@ -436,6 +490,7 @@ d_srand48_r='define' d_srandom_r='define' d_sresgproto='define' d_sresuproto='define' +d_stat='define' d_statblks='define' d_statfs_f_flags='undef' d_statfs_s='define' @@ -477,12 +532,15 @@ d_tcgetpgrp='define' d_tcsetpgrp='define' d_telldir='define' d_telldirproto='define' +d_tgamma='define' d_time='define' d_times='define' d_tm_tm_gmtoff='define' d_tm_tm_zone='define' d_tmpnam_r='define' +d_trunc='define' d_truncate='define' +d_truncl='define' d_ttyname_r='define' d_tzname='define' d_u32align='define' @@ -508,7 +566,9 @@ d_vprintf='define' d_vsnprintf='define' d_wait4='define' d_waitpid='define' +d_wcscmp='define' d_wcstombs='define' +d_wcsxfrm='define' d_wctomb='define' d_writev='define' d_xenix='undef' @@ -522,6 +582,7 @@ defvoidused='15' direntrytype='struct dirent' dlext='so' dlsrc='dl_dlopen.xs' +doublekind='3' doublesize='8' drand01='drand48()' drand48_r_proto='REENTRANT_PROTO_I_ST' @@ -539,7 +600,6 @@ endservent_r_proto='0' eunicefix=':' exe_ext='' expr='expr' -extensions='B Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex Time/HiRes Time/Piece Unicode/Normalize XS/APItest XS/Typemap attrs re threads threads/shared Hash/Util/FieldHash Compress/Zlib Errno IO_Compress_Base IO_Compress_Zlib' extras='' fflushNULL='define' fflushall='undef' @@ -612,7 +672,9 @@ i_dbm='undef' i_dirent='define' i_dld='undef' i_dlfcn='define' +i_execinfo='define' i_fcntl='undef' +i_fenv='undef' i_float='define' i_fp='undef' i_fp_class='undef' @@ -638,6 +700,7 @@ i_poll='define' i_prot='undef' i_pthread='define' i_pwd='define' +i_quadmath='define' i_rpcsvcdbm='undef' i_sfio='undef' i_sgtty='undef' @@ -645,6 +708,7 @@ i_shadow='define' i_socks='undef' i_stdarg='define' i_stddef='define' +i_stdint='define' i_stdlib='define' i_string='define' i_sunmath='undef' @@ -721,7 +785,6 @@ issymlink='test -h' ivdformat='"ld"' ivsize='8' ivtype='long' -known_extensions='B Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc NDBM_File ODBM_File Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex Time/HiRes Time/Piece Unicode/Normalize Win32 Win32API/File Win32CORE XS/APItest XS/Typemap attrs re threads threads/shared Hash/Util/FieldHash' ksh='' ld='%%LD%%' lddlflags='-shared %%LDFLAGS%%' @@ -748,6 +811,7 @@ lns='/bin/ln -s' localtime_r_proto='REENTRANT_PROTO_S_TS' locincpth=' ' loclibpth=' ' +longdblkind='3' longdblsize='16' longlongsize='8' longsize='8' @@ -756,10 +820,6 @@ lpr='' ls='ls' lseeksize='8' lseektype='off_t' -mad='undef' -madlyh='' -madlyobj='' -madlysrc='' mail='' mailx='' make='make' @@ -972,6 +1032,7 @@ uquadtype='unsigned long' use5005threads='undef' use64bitall='define' use64bitint='define' +usecbacktrace='undef' usecrosscompile='define' usedl='define' usefaststdio='undef' @@ -986,6 +1047,7 @@ usenm='true' useopcode='true' useperlio='define' useposix='true' +usequadmath='undef' usereentrant='undef' userelocatableinc='undef' usesfio='false' @@ -1050,7 +1112,6 @@ d_clock='define' # New symbols for perl 5.20.0 bin_ELF='define' -bootstrap_charset='undef' charbits='8' charsize='1' d_asctime64='undef' @@ -1085,6 +1146,7 @@ dtrace='' extern_C='extern' hostosname='' i_assert='define' +i_bfd='undef' i_gdbm_ndbm='undef' i_gdbmndbm='undef' i_mallocmalloc='undef' @@ -1122,27 +1184,29 @@ libdb_needs_pthread='N' # These symbols changed from perl 5.10.0 to 5.20.0 and probably will # change again for new versions, so they're included here for # future reference -api_version='20' +api_version='22' # Always set this to the base version, not the patched one! -api_versionstring='5.20.0' -dynamic_ext='B Compress/Raw/Bzip2 Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/DosGlob File/Glob Filter/Util/Call GDBM_File Hash/Util Hash/Util/FieldHash I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc Opcode POSIX PerlIO/encoding PerlIO/mmap PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Tie/Hash/NamedCapture Time/HiRes Time/Piece Unicode/Collate Unicode/Normalize XS/APItest XS/Typemap arybase attributes mro re threads threads/shared' -installarchlib='/usr/lib/perl5/5.20' -installprivlib='/usr/lib/perl5/5.20' -installsitearch='/usr/lib/perl5/5.20' -installsitelib='/usr/lib/perl5/5.20' -nonxs_ext='Archive/Tar Attribute/Handlers AutoLoader B/Debug CGI CPAN CPAN/Meta CPAN/Meta/Requirements CPAN/Meta/YAML Carp Config/Perl/V Devel/SelfStubber Digest Dumpvalue Env Errno Exporter ExtUtils/CBuilder ExtUtils/Command ExtUtils/Constant ExtUtils/Install ExtUtils/MakeMaker ExtUtils/Manifest ExtUtils/Miniperl ExtUtils/ParseXS File/Fetch File/Find File/Path File/Temp FileCache Filter/Simple Getopt/Long HTTP/Tiny I18N/Collate I18N/LangTags IO/Compress IO/Socket/IP IO/Zlib IPC/Cmd IPC/Open3 JSON/PP Locale/Codes Locale/Maketext Locale/Maketext/Simple Math/BigInt Math/BigRat Math/Complex Memoize Module/Build Module/CoreList Module/Load Module/Load/Conditional Module/Loaded Module/Metadata NEXT Net/Ping Package/Constants Params/Check Parse/CPAN/Meta Perl/OSType PerlIO/via/QuotedPrint Pod/Checker Pod/Escapes Pod/Functions Pod/Html Pod/Parser Pod/Perldoc Pod/Simple Pod/Usage Safe Search/Dict SelfLoader Term/ANSIColor Term/Cap Term/Complete Term/ReadLine Test Test/Harness Test/Simple Text/Abbrev Text/Balanced Text/ParseWords Text/Tabs Thread/Queue Thread/Semaphore Tie/File Tie/Memoize Tie/RefHash Time/Local XSLoader autodie autouse base bignum constant encoding/warnings experimental if lib libnet parent perlfaq podlators version' -privlib='/usr/lib/perl5/5.20' -privlibexp='/usr/lib/perl5/5.20' -archlib='/usr/lib/perl5/5.20' -archlibexp='/usr/lib/perl5/5.20' -version='5.20.2' -version_patchlevel_string='version 20 subversion 2' -PERL_VERSION=20 -PERL_API_VERSION=20 -PERL_SUBVERSION=2 -patchlevel='20' -ccdlflags='-fPIC -Wl,-rpath,/usr/lib/perl5/5.20/CORE' -subversion='2' +api_versionstring='5.22.0' +dynamic_ext='B Compress/Raw/Bzip2 Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/DosGlob File/Glob Filter/Util/Call GDBM_File Hash/Util Hash/Util/FieldHash I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc Opcode POSIX PerlIO/encoding PerlIO/mmap PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Tie/Hash/NamedCapture Time/HiRes Time/Piece Unicode/Collate XS/APItest XS/Typemap arybase attributes mro re threads threads/shared' +installarchlib='/usr/lib/perl5/5.22' +installprivlib='/usr/lib/perl5/5.22' +installsitearch='/usr/lib/perl5/5.22' +installsitelib='/usr/lib/perl5/5.22' +nonxs_ext='Archive/Tar Attribute/Handlers AutoLoader B/Debug CPAN CPAN/Meta CPAN/Meta/Requirements CPAN/Meta/YAML Carp Config/Perl/V Devel/SelfStubber Digest Dumpvalue Env Errno Exporter ExtUtils/CBuilder ExtUtils/Command ExtUtils/Constant ExtUtils/Install ExtUtils/MakeMaker ExtUtils/Manifest ExtUtils/Miniperl ExtUtils/ParseXS File/Fetch File/Find File/Path File/Temp FileCache Filter/Simple Getopt/Long HTTP/Tiny I18N/Collate I18N/LangTags IO/Compress IO/Socket/IP IO/Zlib IPC/Cmd IPC/Open3 JSON/PP Locale/Codes Locale/Maketext Locale/Maketext/Simple Math/BigInt Math/BigRat Math/Complex Memoize Module/CoreList Module/Load Module/Load/Conditional Module/Loaded Module/Metadata NEXT Net/Ping Params/Check Parse/CPAN/Meta Perl/OSType PerlIO/via/QuotedPrint Pod/Checker Pod/Escapes Pod/Functions Pod/Html Pod/Parser Pod/Perldoc Pod/Simple Pod/Usage Safe Search/Dict SelfLoader Term/ANSIColor Term/Cap Term/Complete Term/ReadLine Test Test/Harness Test/Simple Text/Abbrev Text/Balanced Text/ParseWords Text/Tabs Thread/Queue Thread/Semaphore Tie/File Tie/Memoize Tie/RefHash Time/Local XSLoader autodie autouse base bignum constant encoding/warnings experimental if lib libnet parent perlfaq podlators Unicode/Normalize version' +privlib='/usr/lib/perl5/5.22' +privlibexp='/usr/lib/perl5/5.22' +archlib='/usr/lib/perl5/5.22' +archlibexp='/usr/lib/perl5/5.22' +version='5.22.0' +version_patchlevel_string='version 22 subversion 0' +PERL_VERSION=22 +PERL_API_VERSION=22 +PERL_SUBVERSION=0 +patchlevel='22' +ccdlflags='-fPIC -Wl,-rpath,/usr/lib/perl5/5.22/CORE' +subversion='0' +extensions='B Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex Time/HiRes Time/Piece XS/APItest XS/Typemap attrs re threads threads/shared Hash/Util/FieldHash Compress/Zlib Errno IO_Compress_Base IO_Compress_Zlib Unicode/Normalize' +known_extensions='B Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc NDBM_File ODBM_File Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex Time/HiRes Time/Piece Unicode/Normalize Win32 Win32API/File Win32CORE XS/APItest XS/Typemap attrs re threads threads/shared Hash/Util/FieldHash' # Make perl use these tools instead of the target binaries during build hostgenerate='%%HOSTGENERATE%%' diff --git a/lang/perl/files/config.sh-x86_64.in b/lang/perl/files/config.sh-x86_64.in index ad89224e9..7d12b27a0 100644 --- a/lang/perl/files/config.sh-x86_64.in +++ b/lang/perl/files/config.sh-x86_64.in @@ -13,14 +13,13 @@ # Target system : linux maia 2.6.25 #2 sat apr 19 09:46:49 cest 2008 i686 unknown unknown gnulinux Author='' -Date='$Date' +Date='' Header='' -Id='$Id' +Id='' Locker='' -Log='$Log' -Mcc='Mcc' -RCSfile='$RCSfile' -Revision='$Revision' +Log='' +RCSfile='' +Revision='' Source='' State='' _a='.a' @@ -99,10 +98,13 @@ d_SCNfldbl='define' d__fwalk='undef' d_access='define' d_accessx='undef' +d_acosh='define' d_aintl='undef' d_alarm='define' d_archlib='undef' d_asctime_r='undef' +d_asinh='define' +d_atanh='define' d_atolf='undef' d_atoll='define' d_attribute_format='define' @@ -112,6 +114,7 @@ d_attribute_noreturn='define' d_attribute_pure='define' d_attribute_unused='define' d_attribute_warn_unused_result='define' +d_backtrace='define' d_bcmp='define' d_bcopy='define' d_bsd='undef' @@ -123,6 +126,7 @@ d_bzero='define' d_c99_variadic_macros='define' d_casti32='undef' d_castneg='define' +d_cbrt='define' d_charvspr='undef' d_chown='define' d_chroot='define' @@ -132,6 +136,7 @@ d_clearenv='define' d_closedir='define' d_cmsghdr_s='define' d_const='define' +d_copysign='define' d_copysignl='undef' d_cplusplus='undef' d_crypt='define' @@ -147,6 +152,7 @@ d_difftime='define' d_dir_dd_fd='undef' d_dirfd='define' d_dirnamlen='undef' +d_dladdr='define' d_dlerror='define' d_dlopen='define' d_dlsymun='undef' @@ -168,7 +174,11 @@ d_endpwent_r='undef' d_endsent='define' d_endservent_r='undef' d_eofnblk='define' +d_erf='define' +d_erfc='define' d_eunice='undef' +d_exp2='define' +d_expm1='define' d_faststdio='undef' d_fchdir='define' d_fchmod='define' @@ -177,19 +187,27 @@ d_fcntl='define' d_fcntl_can_lock='define' d_fd_macros='define' d_fd_set='define' +d_fdim='define' d_fds_bits='undef' +d_fegetround='undef' d_fgetpos='define' d_finite='define' d_finitel='undef' d_flexfnam='define' d_flock='define' d_flockproto='define' +d_fma='define' +d_fmax='define' +d_fmin='define' d_fork='define' d_fp_class='undef' +d_fp_classify='undef' +d_fp_classl='undef' d_fpathconf='define' d_fpclass='undef' -d_fpclassify='undef' +d_fpclassify='define' d_fpclassl='undef' +d_fpgetround='undef' d_fpos64_t='undef' d_frexpl='undef' d_fs_data_s='undef' @@ -262,27 +280,50 @@ d_gnulibc='undef' d_grpasswd='define' d_hasmntopt='define' d_htonl='define' +d_hypot='define' +d_ilogb='define' d_ilogbl='undef' d_inc_version_list='undef' d_index='undef' d_inetaton='define' d_int64_t='define' d_isascii='define' -d_isfinite='undef' +d_isfinite='define' +d_isfinitel='undef' d_isinf='define' +d_isinfl='define' +d_isless='undef' d_isnan='define' d_isnanl='undef' +d_isnormal='define' +d_j0='undef' +d_j0l='undef' d_killpg='define' +d_lc_monetary_2008='define' d_lchown='define' d_ldbl_dig='define' +d_ldexpl='define' +d_lgamma='define' +d_lgamma_r='define' d_libm_lib_version='define' d_link='define' +d_llrint='define' +d_llrintl='define' +d_llround='define' +d_llroundl='define' d_localtime_r='undef' d_localtime_r_needs_tzset='undef' d_locconv='define' d_lockf='define' +d_log1p='define' +d_log2='define' +d_logb='define' d_longdbl='define' d_longlong='define' +d_lrint='define' +d_lrintl='define' +d_lround='define' +d_lroundl='define' d_lseekproto='define' d_lstat='define' d_madvise='define' @@ -321,6 +362,10 @@ d_msgsnd='define' d_msync='define' d_munmap='define' d_mymalloc='undef' +d_nan='define' +d_nearbyint='define' +d_nextafter='define' +d_nexttoward='undef' d_nice='define' d_nl_langinfo='define' d_nv_preserves_uv='undef' @@ -343,6 +388,7 @@ d_pseudofork='undef' d_pthread_atfork='undef' d_pthread_attr_setscope='define' d_pthread_yield='undef' +d_ptrdiff_t='define' d_pwage='undef' d_pwchange='undef' d_pwclass='undef' @@ -354,19 +400,27 @@ d_pwquota='undef' d_qgcvt='undef' d_quad='define' d_random_r='undef' +d_re_comp='undef' d_readdir64_r='undef' d_readdir='define' d_readdir_r='undef' d_readlink='define' d_readv='define' d_recvmsg='define' +d_regcmp='undef' +d_regcomp='define' +d_remainder='define' +d_remquo='define' d_rename='define' d_rewinddir='define' +d_rint='define' d_rmdir='define' +d_round='define' d_safebcpy='undef' d_safemcpy='undef' d_sanemcmp='define' d_sbrkproto='define' +d_scalbn='define' d_scalbnl='undef' d_sched_yield='define' d_scm_rights='define' @@ -436,6 +490,7 @@ d_srand48_r='undef' d_srandom_r='undef' d_sresgproto='undef' d_sresuproto='undef' +d_stat='define' d_statblks='define' d_statfs_f_flags='undef' d_statfs_s='define' @@ -477,12 +532,15 @@ d_tcgetpgrp='define' d_tcsetpgrp='define' d_telldir='define' d_telldirproto='define' +d_tgamma='define' d_time='define' d_times='define' d_tm_tm_gmtoff='define' d_tm_tm_zone='define' d_tmpnam_r='undef' +d_trunc='define' d_truncate='define' +d_truncl='define' d_ttyname_r='undef' d_tzname='define' d_u32align='define' @@ -508,7 +566,9 @@ d_vprintf='define' d_vsnprintf='define' d_wait4='define' d_waitpid='define' +d_wcscmp='define' d_wcstombs='define' +d_wcsxfrm='define' d_wctomb='define' d_writev='define' d_xenix='undef' @@ -522,6 +582,7 @@ defvoidused='15' direntrytype='struct dirent' dlext='so' dlsrc='dl_dlopen.xs' +doublekind='3' doublesize='8' drand01='drand48()' drand48_r_proto='0' @@ -539,7 +600,6 @@ endservent_r_proto='0' eunicefix=':' exe_ext='' expr='expr' -extensions='B Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex Time/HiRes Time/Piece Unicode/Normalize XS/APItest XS/Typemap attrs re threads threads/shared Hash/Util/FieldHash Compress/Zlib Errno IO_Compress_Base IO_Compress_Zlib' extras='' fflushNULL='define' fflushall='undef' @@ -612,7 +672,9 @@ i_dbm='undef' i_dirent='define' i_dld='undef' i_dlfcn='define' +i_execinfo='define' i_fcntl='undef' +i_fenv='undef' i_float='define' i_fp='undef' i_fp_class='undef' @@ -638,6 +700,7 @@ i_poll='define' i_prot='undef' i_pthread='define' i_pwd='define' +i_quadmath='define' i_rpcsvcdbm='undef' i_sfio='undef' i_sgtty='undef' @@ -645,6 +708,7 @@ i_shadow='define' i_socks='undef' i_stdarg='define' i_stddef='define' +i_stdint='define' i_stdlib='define' i_string='define' i_sunmath='undef' @@ -721,7 +785,6 @@ issymlink='test -h' ivdformat='"ld"' ivsize='8' ivtype='long' -known_extensions='B Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc NDBM_File ODBM_File Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex Time/HiRes Time/Piece Unicode/Normalize Win32 Win32API/File Win32CORE XS/APItest XS/Typemap attrs re threads threads/shared Hash/Util/FieldHash' ksh='' ld='%%LD%%' lddlflags='-shared %%LDFLAGS%%' @@ -748,6 +811,7 @@ lns='/bin/ln -s' localtime_r_proto='0' locincpth=' ' loclibpth=' ' +longdblkind='3' longdblsize='16' longlongsize='8' longsize='8' @@ -756,10 +820,6 @@ lpr='' ls='ls' lseeksize='8' lseektype='off_t' -mad='undef' -madlyh='' -madlyobj='' -madlysrc='' mail='' mailx='' make='make' @@ -972,6 +1032,7 @@ uquadtype='unsigned long' use5005threads='undef' use64bitall='define' use64bitint='define' +usecbacktrace='undef' usecrosscompile='define' usedl='define' usefaststdio='undef' @@ -986,6 +1047,7 @@ usenm='true' useopcode='true' useperlio='define' useposix='true' +usequadmath='undef' usereentrant='undef' userelocatableinc='undef' usesfio='false' @@ -1049,7 +1111,6 @@ d_clock='define' # New symbols for perl 5.20.0 bin_ELF='define' -bootstrap_charset='undef' charbits='8' charsize='1' d_asctime64='undef' @@ -1084,6 +1145,7 @@ dtrace='' extern_C='extern' hostosname='' i_assert='define' +i_bfd='undef' i_gdbm_ndbm='undef' i_gdbmndbm='undef' i_mallocmalloc='undef' @@ -1121,27 +1183,29 @@ libdb_needs_pthread='N' # These symbols changed from perl 5.10.0 to 5.20.0 and probably will # change again for new versions, so they're included here for # future reference -api_version='20' +api_version='22' # Always set this to the base version, not the patched one! -api_versionstring='5.20.0' -dynamic_ext='B Compress/Raw/Bzip2 Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/DosGlob File/Glob Filter/Util/Call GDBM_File Hash/Util Hash/Util/FieldHash I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc Opcode POSIX PerlIO/encoding PerlIO/mmap PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Tie/Hash/NamedCapture Time/HiRes Time/Piece Unicode/Collate Unicode/Normalize XS/APItest XS/Typemap arybase attributes mro re threads threads/shared' -installarchlib='/usr/lib/perl5/5.20' -installprivlib='/usr/lib/perl5/5.20' -installsitearch='/usr/lib/perl5/5.20' -installsitelib='/usr/lib/perl5/5.20' -nonxs_ext='Archive/Tar Attribute/Handlers AutoLoader B/Debug CGI CPAN CPAN/Meta CPAN/Meta/Requirements CPAN/Meta/YAML Carp Config/Perl/V Devel/SelfStubber Digest Dumpvalue Env Errno Exporter ExtUtils/CBuilder ExtUtils/Command ExtUtils/Constant ExtUtils/Install ExtUtils/MakeMaker ExtUtils/Manifest ExtUtils/Miniperl ExtUtils/ParseXS File/Fetch File/Find File/Path File/Temp FileCache Filter/Simple Getopt/Long HTTP/Tiny I18N/Collate I18N/LangTags IO/Compress IO/Socket/IP IO/Zlib IPC/Cmd IPC/Open3 JSON/PP Locale/Codes Locale/Maketext Locale/Maketext/Simple Math/BigInt Math/BigRat Math/Complex Memoize Module/Build Module/CoreList Module/Load Module/Load/Conditional Module/Loaded Module/Metadata NEXT Net/Ping Package/Constants Params/Check Parse/CPAN/Meta Perl/OSType PerlIO/via/QuotedPrint Pod/Checker Pod/Escapes Pod/Functions Pod/Html Pod/Parser Pod/Perldoc Pod/Simple Pod/Usage Safe Search/Dict SelfLoader Term/ANSIColor Term/Cap Term/Complete Term/ReadLine Test Test/Harness Test/Simple Text/Abbrev Text/Balanced Text/ParseWords Text/Tabs Thread/Queue Thread/Semaphore Tie/File Tie/Memoize Tie/RefHash Time/Local XSLoader autodie autouse base bignum constant encoding/warnings experimental if lib libnet parent perlfaq podlators version' -privlib='/usr/lib/perl5/5.20' -privlibexp='/usr/lib/perl5/5.20' -archlib='/usr/lib/perl5/5.20' -archlibexp='/usr/lib/perl5/5.20' -version='5.20.2' -version_patchlevel_string='version 20 subversion 2' -PERL_VERSION=20 -PERL_API_VERSION=20 -PERL_SUBVERSION=2 -patchlevel='20' -ccdlflags='-fPIC -Wl,-rpath,/usr/lib/perl5/5.20/CORE' -subversion='2' +api_versionstring='5.22.0' +dynamic_ext='B Compress/Raw/Bzip2 Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/DosGlob File/Glob Filter/Util/Call GDBM_File Hash/Util Hash/Util/FieldHash I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc Opcode POSIX PerlIO/encoding PerlIO/mmap PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Tie/Hash/NamedCapture Time/HiRes Time/Piece Unicode/Collate XS/APItest XS/Typemap arybase attributes mro re threads threads/shared' +installarchlib='/usr/lib/perl5/5.22' +installprivlib='/usr/lib/perl5/5.22' +installsitearch='/usr/lib/perl5/5.22' +installsitelib='/usr/lib/perl5/5.22' +nonxs_ext='Archive/Tar Attribute/Handlers AutoLoader B/Debug CPAN CPAN/Meta CPAN/Meta/Requirements CPAN/Meta/YAML Carp Config/Perl/V Devel/SelfStubber Digest Dumpvalue Env Errno Exporter ExtUtils/CBuilder ExtUtils/Command ExtUtils/Constant ExtUtils/Install ExtUtils/MakeMaker ExtUtils/Manifest ExtUtils/Miniperl ExtUtils/ParseXS File/Fetch File/Find File/Path File/Temp FileCache Filter/Simple Getopt/Long HTTP/Tiny I18N/Collate I18N/LangTags IO/Compress IO/Socket/IP IO/Zlib IPC/Cmd IPC/Open3 JSON/PP Locale/Codes Locale/Maketext Locale/Maketext/Simple Math/BigInt Math/BigRat Math/Complex Memoize Module/CoreList Module/Load Module/Load/Conditional Module/Loaded Module/Metadata NEXT Net/Ping Params/Check Parse/CPAN/Meta Perl/OSType PerlIO/via/QuotedPrint Pod/Checker Pod/Escapes Pod/Functions Pod/Html Pod/Parser Pod/Perldoc Pod/Simple Pod/Usage Safe Search/Dict SelfLoader Term/ANSIColor Term/Cap Term/Complete Term/ReadLine Test Test/Harness Test/Simple Text/Abbrev Text/Balanced Text/ParseWords Text/Tabs Thread/Queue Thread/Semaphore Tie/File Tie/Memoize Tie/RefHash Time/Local XSLoader autodie autouse base bignum constant encoding/warnings experimental if lib libnet parent perlfaq podlators Unicode/Normalize version' +privlib='/usr/lib/perl5/5.22' +privlibexp='/usr/lib/perl5/5.22' +archlib='/usr/lib/perl5/5.22' +archlibexp='/usr/lib/perl5/5.22' +version='5.22.0' +version_patchlevel_string='version 22 subversion 0' +PERL_VERSION=22 +PERL_API_VERSION=22 +PERL_SUBVERSION=0 +patchlevel='22' +ccdlflags='-fPIC -Wl,-rpath,/usr/lib/perl5/5.22/CORE' +subversion='0' +extensions='B Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex Time/HiRes Time/Piece XS/APItest XS/Typemap attrs re threads threads/shared Hash/Util/FieldHash Compress/Zlib Errno IO_Compress_Base IO_Compress_Zlib Unicode/Normalize' +known_extensions='B Compress/Raw/Zlib Cwd DB_File Data/Dumper Devel/DProf Devel/PPPort Devel/Peek Digest/MD5 Digest/SHA Encode Fcntl File/Glob Filter/Util/Call GDBM_File Hash/Util I18N/Langinfo IO IPC/SysV List/Util MIME/Base64 Math/BigInt/FastCalc NDBM_File ODBM_File Opcode POSIX PerlIO/encoding PerlIO/scalar PerlIO/via SDBM_File Socket Storable Sys/Hostname Sys/Syslog Text/Soundex Time/HiRes Time/Piece Unicode/Normalize Win32 Win32API/File Win32CORE XS/APItest XS/Typemap attrs re threads threads/shared Hash/Util/FieldHash' # Make perl use these tools instead of the target binaries during build hostgenerate='%%HOSTGENERATE%%' From 34d6d0a1a1cd837d0bfbf4b42672a8865c45d374 Mon Sep 17 00:00:00 2001 From: Marcel Denia Date: Tue, 9 Jun 2015 19:49:36 +0200 Subject: [PATCH 612/681] perl: Upgrade base package definitions - Remove perlbase-cgi - Remove Module::Build from perlbase-module - Remove perlbase-package Signed-off-by: Marcel Denia --- lang/perl/perlbase.mk | 35 +++-------------------------------- 1 file changed, 3 insertions(+), 32 deletions(-) diff --git a/lang/perl/perlbase.mk b/lang/perl/perlbase.mk index e5dd88a84..c10ca40d3 100644 --- a/lang/perl/perlbase.mk +++ b/lang/perl/perlbase.mk @@ -233,20 +233,6 @@ endef $(eval $(call BuildPackage,perlbase-bytes)) -define Package/perlbase-cgi -$(call Package/perlbase-template) -TITLE:=CGI perl module -DEPENDS+=+perlbase-base +perlbase-essential +perlbase-file +perlbase-if -endef - -define Package/perlbase-cgi/install -$(call perlmod/Install,$(1),CGI CGI.pm,) -$(call perlmod/InstallBaseTests,$(1),cpan/CGI/t) -endef - -$(eval $(call BuildPackage,perlbase-cgi)) - - define Package/perlbase-charnames $(call Package/perlbase-template) TITLE:=charnames perl module @@ -583,7 +569,7 @@ endef define Package/perlbase-extutils/install $(call perlmod/Install,$(1),ExtUtils,ExtUtils/MakeMaker/FAQ.pod ExtUtils/MakeMaker/Tutorial.pod ExtUtils/ParseXS.pm ExtUtils/ParseXS/Utilities.pm) $(call perlmod/Install/NoStrip,$(1),ExtUtils/ParseXS.pm ExtUtils/ParseXS/Utilities.pm,) -$(call perlmod/InstallBaseTests,$(1),cpan/ExtUtils-Constant/t cpan/ExtUtils-MakeMaker/t dist/ExtUtils-CBuilder/t dist/ExtUtils-Command/t dist/ExtUtils-Install/t dist/ExtUtils-Manifest/t dist/ExtUtils-ParseXS/t) +$(call perlmod/InstallBaseTests,$(1),cpan/ExtUtils-Constant/t cpan/ExtUtils-MakeMaker/t dist/ExtUtils-CBuilder/t dist/ExtUtils-ParseXS/t) endef $(eval $(call BuildPackage,perlbase-extutils)) @@ -949,9 +935,8 @@ DEPENDS+=+perlbase-config +perlbase-cwd +perlbase-data +perlbase-essential +perl endef define Package/perlbase-module/install -$(call perlmod/Install,$(1),Module,Module/Build Module/Build.pm Module/Build/API.pod Module/Build/Authoring.pod) -$(call perlmod/Install/NoStrip,$(1),Module/Build Module/Build.pm,Module/Build/API.pod Module/Build/Authoring.pod) -$(call perlmod/InstallBaseTests,$(1),cpan/Module-Build/lib cpan/Module-Build/t cpan/Module-Load-Conditional/t cpan/Module-Load/t cpan/Module-Loaded/t cpan/Module-Metadata/lib cpan/Module-Metadata/t dist/Module-CoreList/t) +$(call perlmod/Install,$(1),Module,) +$(call perlmod/InstallBaseTests,$(1),cpan/Module-Load-Conditional/t cpan/Module-Load/t cpan/Module-Loaded/t cpan/Module-Metadata/lib cpan/Module-Metadata/t dist/Module-CoreList/t) endef $(eval $(call BuildPackage,perlbase-module)) @@ -1066,20 +1051,6 @@ endef $(eval $(call BuildPackage,perlbase-ostype)) -define Package/perlbase-package -$(call Package/perlbase-template) -TITLE:=Package perl module -DEPENDS+=+perlbase-essential +perlbase-if -endef - -define Package/perlbase-package/install -$(call perlmod/Install,$(1),Package,) -$(call perlmod/InstallBaseTests,$(1),cpan/Package-Constants/t) -endef - -$(eval $(call BuildPackage,perlbase-package)) - - define Package/perlbase-params $(call Package/perlbase-template) TITLE:=Params perl module From 392e1475c83f13b86cafb9188639916b516b6756 Mon Sep 17 00:00:00 2001 From: Marcel Denia Date: Sun, 14 Jun 2015 17:50:17 +0200 Subject: [PATCH 613/681] perl: Upgrade base package dependencies Signed-off-by: Marcel Denia --- lang/perl/perlbase.mk | 77 ++++++++++++++++++++++--------------------- 1 file changed, 40 insertions(+), 37 deletions(-) diff --git a/lang/perl/perlbase.mk b/lang/perl/perlbase.mk index c10ca40d3..68cd7bb7b 100644 --- a/lang/perl/perlbase.mk +++ b/lang/perl/perlbase.mk @@ -49,6 +49,7 @@ $(eval $(call BuildPackage,perlbase-archive)) define Package/perlbase-arybase $(call Package/perlbase-template) TITLE:=arybase perl module +DEPENDS+=+perlbase-xsloader endef define Package/perlbase-arybase/install @@ -76,7 +77,7 @@ $(eval $(call BuildPackage,perlbase-attribute)) define Package/perlbase-attributes $(call Package/perlbase-template) TITLE:=attributes perl module -DEPENDS+=+perlbase-essential +DEPENDS+=+perlbase-essential +perlbase-xsloader endef define Package/perlbase-attributes/install @@ -89,7 +90,7 @@ $(eval $(call BuildPackage,perlbase-attributes)) define Package/perlbase-autodie $(call Package/perlbase-template) TITLE:=autodie perl module -DEPENDS+=+perlbase-base +perlbase-essential +perlbase-fatal +perlbase-if +DEPENDS+=+perlbase-essential endef define Package/perlbase-autodie/install @@ -143,7 +144,7 @@ $(eval $(call BuildPackage,perlbase-autouse)) define Package/perlbase-b $(call Package/perlbase-template) TITLE:=B perl module -DEPENDS+=+perlbase-config +perlbase-essential +DEPENDS+=+perlbase-config +perlbase-essential +perlbase-feature endef define Package/perlbase-b/install @@ -236,7 +237,7 @@ $(eval $(call BuildPackage,perlbase-bytes)) define Package/perlbase-charnames $(call Package/perlbase-template) TITLE:=charnames perl module -DEPENDS+=+perlbase-bytes +perlbase-essential +perlbase-file +perlbase-re +perlbase-unicore +DEPENDS+=+perlbase-bytes +perlbase-essential +perlbase-re +perlbase-unicore endef define Package/perlbase-charnames/install @@ -290,7 +291,7 @@ $(eval $(call BuildPackage,perlbase-config)) define Package/perlbase-cpan $(call Package/perlbase-template) TITLE:=CPAN perl module -DEPENDS+=+perlbase-b +perlbase-config +perlbase-cwd +perlbase-dirhandle +perlbase-essential +perlbase-extutils +perlbase-fcntl +perlbase-file +perlbase-filehandle +perlbase-http-tiny +perlbase-list +perlbase-net +perlbase-safe +perlbase-scalar +perlbase-sys +perlbase-text +perlbase-version +DEPENDS+=+perlbase-b +perlbase-config +perlbase-cwd +perlbase-dirhandle +perlbase-essential +perlbase-extutils +perlbase-fcntl +perlbase-file +perlbase-filehandle +perlbase-http-tiny +perlbase-net +perlbase-safe +perlbase-scalar +perlbase-sys +perlbase-text endef define Package/perlbase-cpan/install @@ -345,7 +346,7 @@ $(eval $(call BuildPackage,perlbase-db)) define Package/perlbase-db-file $(call Package/perlbase-template) TITLE:=DB_File perl module -DEPENDS+=+libdb47 +perlbase-essential +DEPENDS+=+libdb47 +perlbase-essential +perlbase-tie endef define Package/perlbase-db-file/install @@ -372,7 +373,7 @@ $(eval $(call BuildPackage,perlbase-dbm-filter)) define Package/perlbase-devel $(call Package/perlbase-template) TITLE:=Devel perl module -DEPENDS+=+perlbase-essential +perlbase-file +DEPENDS+=+perlbase-essential +perlbase-file +perlbase-selfloader +perlbase-xsloader endef define Package/perlbase-devel/install @@ -400,7 +401,7 @@ $(eval $(call BuildPackage,perlbase-diagnostics)) define Package/perlbase-digest $(call Package/perlbase-template) TITLE:=Digest perl module -DEPENDS+=+perlbase-essential +perlbase-fcntl +perlbase-integer +DEPENDS+=+perlbase-dynaloader +perlbase-essential +perlbase-fcntl +perlbase-integer endef define Package/perlbase-digest/install @@ -496,6 +497,7 @@ $(eval $(call BuildPackage,perlbase-encoding)) define Package/perlbase-english $(call Package/perlbase-template) TITLE:=English perl module +DEPENDS+=+perlbase-essential endef define Package/perlbase-english/install @@ -549,7 +551,7 @@ $(eval $(call BuildPackage,perlbase-essential)) define Package/perlbase-experimental $(call Package/perlbase-template) TITLE:=experimental perl module -DEPENDS+=+perlbase-essential +perlbase-feature +DEPENDS+=+perlbase-essential +perlbase-feature +perlbase-version endef define Package/perlbase-experimental/install @@ -563,13 +565,13 @@ $(eval $(call BuildPackage,perlbase-experimental)) define Package/perlbase-extutils $(call Package/perlbase-template) TITLE:=ExtUtils perl module -DEPENDS+=+perlbase-autosplit +perlbase-config +perlbase-cwd +perlbase-dirhandle +perlbase-essential +perlbase-file +perlbase-io +perlbase-ipc +perlbase-ostype +perlbase-symbol +perlbase-text +DEPENDS+=+perlbase-autosplit +perlbase-base +perlbase-config +perlbase-cwd +perlbase-dirhandle +perlbase-encode +perlbase-essential +perlbase-file +perlbase-io +perlbase-ipc +perlbase-ostype +perlbase-symbol +perlbase-text endef define Package/perlbase-extutils/install $(call perlmod/Install,$(1),ExtUtils,ExtUtils/MakeMaker/FAQ.pod ExtUtils/MakeMaker/Tutorial.pod ExtUtils/ParseXS.pm ExtUtils/ParseXS/Utilities.pm) $(call perlmod/Install/NoStrip,$(1),ExtUtils/ParseXS.pm ExtUtils/ParseXS/Utilities.pm,) -$(call perlmod/InstallBaseTests,$(1),cpan/ExtUtils-Constant/t cpan/ExtUtils-MakeMaker/t dist/ExtUtils-CBuilder/t dist/ExtUtils-ParseXS/t) +$(call perlmod/InstallBaseTests,$(1),cpan/ExtUtils-Command/t cpan/ExtUtils-Constant/t cpan/ExtUtils-Install/t cpan/ExtUtils-MakeMaker/t cpan/ExtUtils-Manifest/t dist/ExtUtils-CBuilder/t dist/ExtUtils-ParseXS/t) endef $(eval $(call BuildPackage,perlbase-extutils)) @@ -578,7 +580,7 @@ $(eval $(call BuildPackage,perlbase-extutils)) define Package/perlbase-fatal $(call Package/perlbase-template) TITLE:=Fatal perl module -DEPENDS+=+perlbase-config +perlbase-essential +perlbase-scalar +perlbase-tie +DEPENDS+=+perlbase-autodie +perlbase-config +perlbase-essential +perlbase-scalar +perlbase-tie endef define Package/perlbase-fatal/install @@ -591,7 +593,7 @@ $(eval $(call BuildPackage,perlbase-fatal)) define Package/perlbase-fcntl $(call Package/perlbase-template) TITLE:=Fcntl perl module -DEPENDS+=+perlbase-essential +DEPENDS+=+perlbase-essential +perlbase-xsloader endef define Package/perlbase-fcntl/install @@ -630,7 +632,7 @@ $(eval $(call BuildPackage,perlbase-fields)) define Package/perlbase-file $(call Package/perlbase-template) TITLE:=File perl module -DEPENDS+=+perlbase-class +perlbase-config +perlbase-cwd +perlbase-errno +perlbase-essential +perlbase-fcntl +perlbase-filehandle +perlbase-io +perlbase-locale +perlbase-params +perlbase-scalar +DEPENDS+=+perlbase-class +perlbase-config +perlbase-cwd +perlbase-errno +perlbase-essential +perlbase-fcntl +perlbase-filehandle +perlbase-io +perlbase-locale +perlbase-params +perlbase-scalar +perlbase-symbol +perlbase-xsloader endef define Package/perlbase-file/install @@ -659,7 +661,7 @@ $(eval $(call BuildPackage,perlbase-filecache)) define Package/perlbase-filehandle $(call Package/perlbase-template) TITLE:=FileHandle perl module -DEPENDS+=+perlbase-essential +DEPENDS+=+perlbase-essential +perlbase-io endef define Package/perlbase-filehandle/install @@ -684,7 +686,7 @@ $(eval $(call BuildPackage,perlbase-filetest)) define Package/perlbase-filter $(call Package/perlbase-template) TITLE:=Filter perl module -DEPENDS+=+perlbase-essential +perlbase-text +DEPENDS+=+perlbase-dynaloader +perlbase-essential +perlbase-text endef define Package/perlbase-filter/install @@ -711,7 +713,7 @@ $(eval $(call BuildPackage,perlbase-findbin)) define Package/perlbase-gdbm-file $(call Package/perlbase-template) TITLE:=GDBM_File perl module -DEPENDS+=+libgdbm +perlbase-essential +DEPENDS+=+libgdbm +perlbase-essential +perlbase-tie +perlbase-xsloader endef define Package/perlbase-gdbm-file/install @@ -739,7 +741,7 @@ $(eval $(call BuildPackage,perlbase-getopt)) define Package/perlbase-hash $(call Package/perlbase-template) TITLE:=Hash perl module -DEPENDS+=+perlbase-essential +perlbase-scalar +DEPENDS+=+perlbase-essential +perlbase-scalar +perlbase-xsloader endef define Package/perlbase-hash/install @@ -767,7 +769,7 @@ $(eval $(call BuildPackage,perlbase-http-tiny)) define Package/perlbase-i18n $(call Package/perlbase-template) TITLE:=I18N perl module -DEPENDS+=+perlbase-essential +perlbase-posix +DEPENDS+=+perlbase-essential +perlbase-posix +perlbase-xsloader endef define Package/perlbase-i18n/install @@ -862,7 +864,7 @@ $(eval $(call BuildPackage,perlbase-less)) define Package/perlbase-list $(call Package/perlbase-template) TITLE:=List perl module -DEPENDS+=+perlbase-essential +DEPENDS+=+perlbase-essential +perlbase-xsloader endef define Package/perlbase-list/install @@ -889,7 +891,7 @@ $(eval $(call BuildPackage,perlbase-locale)) define Package/perlbase-math $(call Package/perlbase-template) TITLE:=Math perl module -DEPENDS+=+perlbase-config +perlbase-essential +perlbase-scalar +DEPENDS+=+perlbase-config +perlbase-essential +perlbase-scalar +perlbase-xsloader endef define Package/perlbase-math/install @@ -917,7 +919,7 @@ $(eval $(call BuildPackage,perlbase-memoize)) define Package/perlbase-mime $(call Package/perlbase-template) TITLE:=MIME perl module -DEPENDS+=+perlbase-essential +DEPENDS+=+perlbase-essential +perlbase-xsloader endef define Package/perlbase-mime/install @@ -931,7 +933,7 @@ $(eval $(call BuildPackage,perlbase-mime)) define Package/perlbase-module $(call Package/perlbase-template) TITLE:=Module perl module -DEPENDS+=+perlbase-config +perlbase-cwd +perlbase-data +perlbase-essential +perlbase-extutils +perlbase-file +perlbase-filehandle +perlbase-if +perlbase-io +perlbase-locale +perlbase-ostype +perlbase-params +perlbase-text +perlbase-version +DEPENDS+=+perlbase-essential +perlbase-file +perlbase-filehandle +perlbase-locale +perlbase-params +perlbase-version endef define Package/perlbase-module/install @@ -945,7 +947,7 @@ $(eval $(call BuildPackage,perlbase-module)) define Package/perlbase-mro $(call Package/perlbase-template) TITLE:=mro perl module -DEPENDS+=+perlbase-essential +DEPENDS+=+perlbase-essential +perlbase-xsloader endef define Package/perlbase-mro/install @@ -1068,7 +1070,7 @@ $(eval $(call BuildPackage,perlbase-params)) define Package/perlbase-perl5db $(call Package/perlbase-template) TITLE:=perl5db perl module -DEPENDS+=+perlbase-essential +DEPENDS+=+perlbase-cwd +perlbase-essential endef define Package/perlbase-perl5db/install @@ -1113,7 +1115,7 @@ $(eval $(call BuildPackage,perlbase-pod)) define Package/perlbase-posix $(call Package/perlbase-template) TITLE:=POSIX perl module -DEPENDS+=+perlbase-essential +perlbase-fcntl +DEPENDS+=+perlbase-essential +perlbase-fcntl +perlbase-tie +perlbase-xsloader endef define Package/perlbase-posix/install @@ -1141,7 +1143,7 @@ $(eval $(call BuildPackage,perlbase-re)) define Package/perlbase-safe $(call Package/perlbase-template) TITLE:=Safe perl module -DEPENDS+=+perlbase-b +perlbase-essential +perlbase-opcode +perlbase-scalar +DEPENDS+=+perlbase-b +perlbase-essential +perlbase-opcode +perlbase-scalar +perlbase-utf8 endef define Package/perlbase-safe/install @@ -1155,7 +1157,7 @@ $(eval $(call BuildPackage,perlbase-safe)) define Package/perlbase-scalar $(call Package/perlbase-template) TITLE:=Scalar perl module -DEPENDS+=+perlbase-essential +DEPENDS+=+perlbase-essential +perlbase-list endef define Package/perlbase-scalar/install @@ -1170,7 +1172,7 @@ $(eval $(call BuildPackage,perlbase-scalar)) define Package/perlbase-sdbm-file $(call Package/perlbase-template) TITLE:=SDBM_File perl module -DEPENDS+=+perlbase-essential +DEPENDS+=+perlbase-essential +perlbase-tie +perlbase-xsloader endef define Package/perlbase-sdbm-file/install @@ -1238,7 +1240,7 @@ $(eval $(call BuildPackage,perlbase-sigtrap)) define Package/perlbase-socket $(call Package/perlbase-template) TITLE:=Socket perl module -DEPENDS+=+perlbase-essential +DEPENDS+=+perlbase-essential +perlbase-xsloader endef define Package/perlbase-socket/install @@ -1265,7 +1267,7 @@ $(eval $(call BuildPackage,perlbase-sort)) define Package/perlbase-storable $(call Package/perlbase-template) TITLE:=Storable perl module -DEPENDS+=+perlbase-essential +DEPENDS+=+perlbase-essential +perlbase-xsloader endef define Package/perlbase-storable/install @@ -1279,6 +1281,7 @@ $(eval $(call BuildPackage,perlbase-storable)) define Package/perlbase-symbol $(call Package/perlbase-template) TITLE:=Symbol perl module +DEPENDS+=+perlbase-essential endef define Package/perlbase-symbol/install @@ -1332,7 +1335,7 @@ $(eval $(call BuildPackage,perlbase-term)) define Package/perlbase-test $(call Package/perlbase-template) TITLE:=Test perl module -DEPENDS+=+perlbase-base +perlbase-config +perlbase-essential +perlbase-symbol +perlbase-tap +perlbase-text +DEPENDS+=+perlbase-base +perlbase-config +perlbase-essential +perlbase-io +perlbase-symbol +perlbase-tap +perlbase-text endef define Package/perlbase-test/install @@ -1377,7 +1380,7 @@ $(eval $(call BuildPackage,perlbase-thread)) define Package/perlbase-threads $(call Package/perlbase-template) TITLE:=threads perl module -DEPENDS+=+perlbase-essential +perlbase-scalar +DEPENDS+=+perlbase-config +perlbase-essential +perlbase-scalar +perlbase-xsloader endef define Package/perlbase-threads/install @@ -1391,7 +1394,7 @@ $(eval $(call BuildPackage,perlbase-threads)) define Package/perlbase-tie $(call Package/perlbase-template) TITLE:=Tie perl module -DEPENDS+=+perlbase-essential +perlbase-fcntl +perlbase-posix +DEPENDS+=+perlbase-essential +perlbase-fcntl +perlbase-xsloader endef define Package/perlbase-tie/install @@ -1405,7 +1408,7 @@ $(eval $(call BuildPackage,perlbase-tie)) define Package/perlbase-time $(call Package/perlbase-template) TITLE:=Time perl module -DEPENDS+=+perlbase-class +perlbase-config +perlbase-essential +DEPENDS+=+perlbase-class +perlbase-config +perlbase-dynaloader +perlbase-essential endef define Package/perlbase-time/install @@ -1419,7 +1422,7 @@ $(eval $(call BuildPackage,perlbase-time)) define Package/perlbase-unicode $(call Package/perlbase-template) TITLE:=Unicode perl module -DEPENDS+=+perlbase-base +perlbase-charnames +perlbase-essential +perlbase-file +DEPENDS+=+perlbase-base +perlbase-charnames +perlbase-dynaloader +perlbase-essential +perlbase-file endef define Package/perlbase-unicode/install @@ -1507,4 +1510,4 @@ endef $(eval $(call BuildPackage,perlbase-xsloader)) -# Generated Mon Oct 13 10:06:15 2014 +# Generated Mon Jun 15 15:00:59 2015 From dc475f78866cef3aef17e285bfc6296a84ce4dee Mon Sep 17 00:00:00 2001 From: Marcel Denia Date: Wed, 17 Jun 2015 18:38:06 +0200 Subject: [PATCH 614/681] perl: Enable threading support by default for all libc implementations Signed-off-by: Marcel Denia --- lang/perl/Config.in | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lang/perl/Config.in b/lang/perl/Config.in index f4c4f8870..14aedc285 100644 --- a/lang/perl/Config.in +++ b/lang/perl/Config.in @@ -3,7 +3,7 @@ menu "Configuration" config PERL_THREADS bool "Enable threading support" - default y if (mips || mipsel || i386 || i686 || x86_64 || armeb || arm) && (USE_UCLIBC || USE_GLIBC) + default y if (mips || mipsel || i386 || i686 || x86_64 || armeb || arm) default n config PERL_TESTS From 38be10c1bcc7f9732c432322eed3a0dbe5077fba Mon Sep 17 00:00:00 2001 From: Marcel Denia Date: Thu, 18 Jun 2015 20:18:08 +0200 Subject: [PATCH 615/681] perl: Disable strerror_r usage with musl Signed-off-by: Marcel Denia --- lang/perl/Makefile | 1 + 1 file changed, 1 insertion(+) diff --git a/lang/perl/Makefile b/lang/perl/Makefile index 99bc83d57..32053a3aa 100644 --- a/lang/perl/Makefile +++ b/lang/perl/Makefile @@ -146,6 +146,7 @@ define Build/Configure -e "s,\(getgrent_r=\)'define',\1'undef',g" \ -e "s,\(i_fcntl=\)'undef',\1'define',g" \ -e "s,\(h_fcntl=\)'false',\1'true',g" \ + -e "s,\(d_strerror_r=\)'define',\1'undef',g" \ $(PKG_BUILD_DIR)/config.sh endif (cd $(PKG_BUILD_DIR) && ./Configure -S) From 7a545cc9b3917a118067634d8a7336ed45af353a Mon Sep 17 00:00:00 2001 From: Marcel Denia Date: Tue, 9 Jun 2015 19:43:35 +0200 Subject: [PATCH 616/681] perl: Update to 5.22.0 Signed-off-by: Marcel Denia --- lang/perl/Makefile | 6 +++--- lang/perl/perlmod.mk | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/lang/perl/Makefile b/lang/perl/Makefile index 32053a3aa..3259861b4 100644 --- a/lang/perl/Makefile +++ b/lang/perl/Makefile @@ -8,8 +8,8 @@ include $(TOPDIR)/rules.mk PKG_NAME:=perl -PKG_VERSION:=5.20.2 -PKG_RELEASE:=3 +PKG_VERSION:=5.22.0 +PKG_RELEASE:=0 PKG_SOURCE_URL:=ftp://ftp.cpan.org/pub/CPAN/src/5.0 \ http://www.cpan.org/src/5.0 \ @@ -20,7 +20,7 @@ PKG_SOURCE_URL:=ftp://ftp.cpan.org/pub/CPAN/src/5.0 \ ftp://ftp.funet.fi/pub/languages/perl/CPAN/src/5.0 \ http://ftp.funet.fi/pub/languages/perl/CPAN/src/5.0 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz -PKG_MD5SUM:=81b17b9a4e5ee18e54efe906c9bf544d +PKG_MD5SUM:=e32cb6a8dda0084f2a43dac76318d68d PKG_LICENSE:=GPL-1.0+ Artistic-1.0-Perl PKG_LICENSE_FILES:=Copying Artistic README diff --git a/lang/perl/perlmod.mk b/lang/perl/perlmod.mk index 16fc4798d..df5de2a72 100644 --- a/lang/perl/perlmod.mk +++ b/lang/perl/perlmod.mk @@ -1,7 +1,7 @@ # This makefile simplifies perl module builds. # -PERL_VERSION:=5.20 +PERL_VERSION:=5.22 # Build environment HOST_PERL_PREFIX:=$(STAGING_DIR_HOST)/usr From b051ddec8d7a6b3a5d0a070028bde476178409bb Mon Sep 17 00:00:00 2001 From: Marcel Denia Date: Fri, 12 Jun 2015 15:23:30 +0200 Subject: [PATCH 617/681] perl-*: Bump PKG_RELEASE Trigger a rebuild to make everything adapt to perl 5.22.0. Signed-off-by: Marcel Denia --- lang/perl-compress-bzip2/Makefile | 2 +- lang/perl-dbi/Makefile | 2 +- lang/perl-device-serialport/Makefile | 2 +- lang/perl-html-parser/Makefile | 2 +- lang/perl-html-tagset/Makefile | 2 +- lang/perl-html-tree/Makefile | 2 +- lang/perl-lockfile-simple/Makefile | 2 +- lang/perl-net-telnet/Makefile | 2 +- lang/perl-test-harness/Makefile | 2 +- lang/perl-uri/Makefile | 2 +- lang/perl-www-curl/Makefile | 2 +- lang/perl-www-mechanize/Makefile | 2 +- lang/perl-www/Makefile | 2 +- 13 files changed, 13 insertions(+), 13 deletions(-) diff --git a/lang/perl-compress-bzip2/Makefile b/lang/perl-compress-bzip2/Makefile index fd53c1bd6..fbb388f18 100644 --- a/lang/perl-compress-bzip2/Makefile +++ b/lang/perl-compress-bzip2/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=perl-compress-bzip2 PKG_VERSION:=2.22 -PKG_RELEASE:=2 +PKG_RELEASE:=3 PKG_SOURCE_URL:=http://www.cpan.org/authors/id/R/RU/RURBAN/ PKG_SOURCE:=Compress-Bzip2-$(PKG_VERSION).tar.gz diff --git a/lang/perl-dbi/Makefile b/lang/perl-dbi/Makefile index d22ccd84c..c752e9602 100644 --- a/lang/perl-dbi/Makefile +++ b/lang/perl-dbi/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=perl-dbi PKG_VERSION:=1.633 -PKG_RELEASE:=2 +PKG_RELEASE:=3 PKG_SOURCE_URL:=http://www.cpan.org/authors/id/T/TI/TIMB/ PKG_SOURCE:=DBI-$(PKG_VERSION).tar.gz diff --git a/lang/perl-device-serialport/Makefile b/lang/perl-device-serialport/Makefile index 3abf5b346..22297ae9b 100644 --- a/lang/perl-device-serialport/Makefile +++ b/lang/perl-device-serialport/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=perl-device-serialport PKG_VERSION:=1.04 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE_URL:=http://www.cpan.org/authors/id/C/CO/COOK/ PKG_SOURCE:=Device-SerialPort-$(PKG_VERSION).tar.gz diff --git a/lang/perl-html-parser/Makefile b/lang/perl-html-parser/Makefile index 9d9c31c5f..d1c86af61 100644 --- a/lang/perl-html-parser/Makefile +++ b/lang/perl-html-parser/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=perl-html-parser PKG_VERSION:=3.71 -PKG_RELEASE:=2 +PKG_RELEASE:=3 PKG_SOURCE_URL:=http://www.cpan.org/authors/id/G/GA/GAAS/ PKG_SOURCE:=HTML-Parser-$(PKG_VERSION).tar.gz diff --git a/lang/perl-html-tagset/Makefile b/lang/perl-html-tagset/Makefile index fbec409cf..d7b0b0c83 100644 --- a/lang/perl-html-tagset/Makefile +++ b/lang/perl-html-tagset/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=perl-html-tagset PKG_VERSION:=3.20 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE_URL:=http://www.cpan.org/authors/id/P/PE/PETDANCE/ PKG_SOURCE:=HTML-Tagset-$(PKG_VERSION).tar.gz diff --git a/lang/perl-html-tree/Makefile b/lang/perl-html-tree/Makefile index 614aff7fb..942e3bf22 100644 --- a/lang/perl-html-tree/Makefile +++ b/lang/perl-html-tree/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=perl-html-tree PKG_VERSION:=3.23 -PKG_RELEASE:=2 +PKG_RELEASE:=3 PKG_MD5SUM:=6352f50be402301f79b580dd235d7762 PKG_SOURCE_URL:=http://www.cpan.org/authors/id/P/PE/PETEK/ diff --git a/lang/perl-lockfile-simple/Makefile b/lang/perl-lockfile-simple/Makefile index e65d4a570..97e3c568a 100644 --- a/lang/perl-lockfile-simple/Makefile +++ b/lang/perl-lockfile-simple/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=perl-lockfile-simple PKG_VERSION:=0.208 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE_URL:=http://www.cpan.org/authors/id/S/SC/SCHWIGON/lockfile-simple/ PKG_SOURCE:=LockFile-Simple-$(PKG_VERSION).tar.gz diff --git a/lang/perl-net-telnet/Makefile b/lang/perl-net-telnet/Makefile index d229cd814..f1823fc92 100644 --- a/lang/perl-net-telnet/Makefile +++ b/lang/perl-net-telnet/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=perl-net-telnet PKG_VERSION:=3.04 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE_URL:=http://www.cpan.org/authors/id/J/JR/JROGERS/ PKG_SOURCE:=Net-Telnet-$(PKG_VERSION).tar.gz diff --git a/lang/perl-test-harness/Makefile b/lang/perl-test-harness/Makefile index 9a0f0a532..aa08dec94 100644 --- a/lang/perl-test-harness/Makefile +++ b/lang/perl-test-harness/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=perl-test-harness PKG_VERSION:=3.35 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE_URL:=http://www.cpan.org/authors/id/L/LE/LEONT/ PKG_SOURCE:=Test-Harness-$(PKG_VERSION).tar.gz diff --git a/lang/perl-uri/Makefile b/lang/perl-uri/Makefile index 28164fd71..df46d5292 100644 --- a/lang/perl-uri/Makefile +++ b/lang/perl-uri/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=perl-uri PKG_VERSION:=1.67 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE_URL:=http://www.cpan.org/authors/id/E/ET/ETHER/ PKG_SOURCE:=URI-$(PKG_VERSION).tar.gz diff --git a/lang/perl-www-curl/Makefile b/lang/perl-www-curl/Makefile index 912681da7..3eaa3d01c 100644 --- a/lang/perl-www-curl/Makefile +++ b/lang/perl-www-curl/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=perl-www-curl PKG_VERSION:=4.17 -PKG_RELEASE:=2 +PKG_RELEASE:=3 PKG_SOURCE_URL:=http://www.cpan.org/authors/id/S/SZ/SZBALINT/ PKG_SOURCE:=WWW-Curl-$(PKG_VERSION).tar.gz diff --git a/lang/perl-www-mechanize/Makefile b/lang/perl-www-mechanize/Makefile index 576424cd2..9fb1fcb22 100644 --- a/lang/perl-www-mechanize/Makefile +++ b/lang/perl-www-mechanize/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=perl-www-mechanize PKG_VERSION:=1.74 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE:=WWW-Mechanize-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://www.cpan.org/authors/id/E/ET/ETHER/ diff --git a/lang/perl-www/Makefile b/lang/perl-www/Makefile index 7657aa27f..acd9e9b9f 100644 --- a/lang/perl-www/Makefile +++ b/lang/perl-www/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=perl-www PKG_VERSION:=5.837 -PKG_RELEASE:=2 +PKG_RELEASE:=3 PKG_SOURCE_URL:=http://www.cpan.org/authors/id/G/GA/GAAS/ PKG_SOURCE:=libwww-perl-$(PKG_VERSION).tar.gz From c38ba76698a092eab0459952b7e598872830d3a6 Mon Sep 17 00:00:00 2001 From: Matthias Schiffer Date: Fri, 19 Jun 2015 04:16:09 +0200 Subject: [PATCH 618/681] fastd: fix musl compatibility Prefer linux/if_ether.h over netinet/if_ether.h if available since the musl libc if_ether.h header does not allow mixing with kernel headers, it will result in a struct ethhdr redefinition error. Signed-off-by: Jo-Philipp Wich Signed-off-by: Matthias Schiffer --- net/fastd/Makefile | 2 +- net/fastd/patches/100-musl-compat.patch | 67 +++++++++++++++++++++++++ 2 files changed, 68 insertions(+), 1 deletion(-) create mode 100644 net/fastd/patches/100-musl-compat.patch diff --git a/net/fastd/Makefile b/net/fastd/Makefile index 027f5491d..0574b399e 100644 --- a/net/fastd/Makefile +++ b/net/fastd/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=fastd PKG_VERSION:=17 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_MAINTAINER:=Matthias Schiffer PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz diff --git a/net/fastd/patches/100-musl-compat.patch b/net/fastd/patches/100-musl-compat.patch new file mode 100644 index 000000000..984aace11 --- /dev/null +++ b/net/fastd/patches/100-musl-compat.patch @@ -0,0 +1,67 @@ +--- a/cmake/checks.cmake ++++ b/cmake/checks.cmake +@@ -54,9 +54,13 @@ if(NOT DARWIN) + endif(NOT DARWIN) + + ++set(CMAKE_EXTRA_INCLUDE_FILES "linux/if_ether.h") ++check_type_size("struct ethhdr" SIZEOF_ETHHDR) ++string(COMPARE NOTEQUAL "${SIZEOF_ETHHDR}" "" HAVE_LINUX_ETHHDR) ++ + set(CMAKE_EXTRA_INCLUDE_FILES "netinet/if_ether.h") + check_type_size("struct ethhdr" SIZEOF_ETHHDR) +-string(COMPARE NOTEQUAL "${SIZEOF_ETHHDR}" "" HAVE_ETHHDR) ++string(COMPARE NOTEQUAL "${SIZEOF_ETHHDR}" "" HAVE_NETINET_ETHHDR) + + + set(CMAKE_REQUIRED_INCLUDES "sys/types.h") +--- a/src/compat.h ++++ b/src/compat.h +@@ -45,7 +45,12 @@ + #include + #include + #include ++ ++#if defined(HAVE_LINUX_ETHHDR) ++#include ++#elif defined(HAVE_NETINET_ETHHDR) + #include ++#endif + + #ifndef ETH_ALEN + /** The length of a MAC address */ +@@ -55,9 +60,8 @@ + #ifndef ETH_HLEN + /** The length of the standard ethernet header */ + #define ETH_HLEN 14 +-#endif + +-#ifndef HAVE_ETHHDR ++#if !defined(HAVE_LINUX_ETHHDR) && !defined(HAVE_NETINET_ETHHDR) + /** An ethernet header */ + struct ethhdr { + uint8_t h_dest[ETH_ALEN]; /**< The destination MAC address field */ +@@ -65,6 +69,7 @@ struct ethhdr { + uint16_t h_proto; /**< The EtherType/length field */ + } __attribute__((packed)); + #endif ++#endif + + #if defined(USE_FREEBIND) && !defined(IP_FREEBIND) + /** Compatiblity define for systems supporting, but not defining IP_FREEBIND */ +--- a/src/fastd_config.h.in ++++ b/src/fastd_config.h.in +@@ -35,8 +35,11 @@ + /** Defined if the platform supports the AI_ADDRCONFIG flag to getaddrinfo() */ + #cmakedefine HAVE_AI_ADDRCONFIG + +-/** Defined if the platform defines the \e ethhdr struct */ +-#cmakedefine HAVE_ETHHDR ++/** Defined if the platform defines the \e ethhdr struct through linux/if_ether.h */ ++#cmakedefine HAVE_LINUX_ETHHDR ++ ++/** Defined if the platform defines the \e ethhdr struct through netinet/if_ether.h */ ++#cmakedefine HAVE_NETINET_ETHHDR + + /** Defined if the platform defines get_current_dir_name() */ + #cmakedefine HAVE_GET_CURRENT_DIR_NAME From e49e86e036923e05822edca86fcf21f7581631ce Mon Sep 17 00:00:00 2001 From: Jonas Gorski Date: Fri, 19 Jun 2015 13:07:17 +0200 Subject: [PATCH 619/681] znc: update to 1.6.0 Fixes compilation with musl. Requires GCC 4.7 or newer, so broken for octeon. Signed-off-by: Jonas Gorski --- net/znc/Makefile | 14 +- ...01-fix-savebuff-timer-initialization.patch | 28 ++++ ...-CThreadPool-Handle-spurious-wakeups.patch | 33 ++++ ...FindChans-and-FindQueries-to-be-case.patch | 149 ++++++++++++++++++ .../patches/004-Fix-chansaver-loading.patch | 38 +++++ ...flict-of-HTTP-Basic-auth-and-cookies.patch | 36 +++++ ...failure-when-simple_away-is-loaded-a.patch | 24 +++ ... => 100-move_rootcheck_after_config.patch} | 16 +- ...me.patch => 101-Reduce_rebuild_time.patch} | 19 +-- ...proot.patch => 102-restore_droproot.patch} | 0 10 files changed, 336 insertions(+), 21 deletions(-) create mode 100644 net/znc/patches/001-fix-savebuff-timer-initialization.patch create mode 100644 net/znc/patches/002-CThreadPool-Handle-spurious-wakeups.patch create mode 100644 net/znc/patches/003-Fix-CIRCNetwork-FindChans-and-FindQueries-to-be-case.patch create mode 100644 net/znc/patches/004-Fix-chansaver-loading.patch create mode 100644 net/znc/patches/005-Fix-rare-conflict-of-HTTP-Basic-auth-and-cookies.patch create mode 100644 net/znc/patches/006-Fix-954-Startup-failure-when-simple_away-is-loaded-a.patch rename net/znc/patches/{001-move_rootcheck_after_config.patch => 100-move_rootcheck_after_config.patch} (78%) rename net/znc/patches/{003-Reduce_rebuild_time.patch => 101-Reduce_rebuild_time.patch} (70%) rename net/znc/patches/{004-restore_droproot.patch => 102-restore_droproot.patch} (100%) diff --git a/net/znc/Makefile b/net/znc/Makefile index 8e39a380a..f0cba304f 100644 --- a/net/znc/Makefile +++ b/net/znc/Makefile @@ -8,13 +8,13 @@ include $(TOPDIR)/rules.mk PKG_NAME:=znc -PKG_VERSION:=1.4 -PKG_RELEASE:=3 +PKG_VERSION:=1.6.0 +PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://znc.in/releases \ http://znc.in/releases/archive -PKG_MD5SUM:=630cb74db34d2d5451ba30b47869f6bb +PKG_MD5SUM:=674d8c1277752dcc627b96e33a63376e PKG_MAINTAINER:=Jonas Gorski PKG_LICENSE:=Apache-2.0 @@ -34,7 +34,7 @@ endef define Package/znc $(Package/znc/default) - DEPENDS:=+libopenssl +libpthread +libstdcpp + DEPENDS:=+libopenssl +libpthread +libstdcpp @GCC_VERSION_4_8||GCC_VERSION_4_9 MENU:=1 endef @@ -136,6 +136,8 @@ endef $(eval $(call module,adminlog,Log user connects and disconnects and failed \ logins to file or syslog.)) +$(eval $(call module,alias,Provides bouncer-side command alias support.)) + $(eval $(call module,autoattach,Reattaches you to channels on activity.)) $(eval $(call module,autocycle,Cycles a channel when you are the only one in \ @@ -198,6 +200,8 @@ $(eval $(call module,flooddetach,This module detaches you from channels which \ $(eval $(call module,identfile,Places the ident of a user to a file when they \ are trying to connect.)) +$(eval $(call module,imapauth,Allow users to authenticate via IMAP.)) + $(eval $(call module,keepnick,Tries to get you your primary nick.)) $(eval $(call module,kickrejoin,Implements auto-rejoin-on-kick.)) @@ -209,6 +213,8 @@ $(eval $(call module,listsockets,This module displays a list of all open \ $(eval $(call module,log,Log conversations to file.)) +$(eval $(call module,missingmotd,Sends 422 to clients when they login.)) + $(eval $(call module,modules_online,This module fakes the online status of \ ZNC-*users.)) diff --git a/net/znc/patches/001-fix-savebuff-timer-initialization.patch b/net/znc/patches/001-fix-savebuff-timer-initialization.patch new file mode 100644 index 000000000..5299ca859 --- /dev/null +++ b/net/znc/patches/001-fix-savebuff-timer-initialization.patch @@ -0,0 +1,28 @@ +From d6feb6f574933753371687ee42fa19d0b0d8d777 Mon Sep 17 00:00:00 2001 +From: Thomas Kriechbaumer +Date: Tue, 17 Feb 2015 10:08:30 +0000 +Subject: [PATCH] fix savebuff timer initialization + +closes #868 +--- + modules/savebuff.cpp | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +--- a/modules/savebuff.cpp ++++ b/modules/savebuff.cpp +@@ -93,13 +93,13 @@ public: + else + m_sPassword = CBlowfish::MD5(sArgs); + ++ AddTimer(new CSaveBuffJob(this, 60, 0, "SaveBuff", "Saves the current buffer to disk every 1 minute")); ++ + return( !m_bBootError ); + } + + virtual bool OnBoot() override + { +- AddTimer(new CSaveBuffJob(this, 60, 0, "SaveBuff", "Saves the current buffer to disk every 1 minute")); +- + CDir saveDir(GetSavePath()); + for (CFile* pFile : saveDir) { + CString sName; diff --git a/net/znc/patches/002-CThreadPool-Handle-spurious-wakeups.patch b/net/znc/patches/002-CThreadPool-Handle-spurious-wakeups.patch new file mode 100644 index 000000000..1377307a1 --- /dev/null +++ b/net/znc/patches/002-CThreadPool-Handle-spurious-wakeups.patch @@ -0,0 +1,33 @@ +From 2f4488c2a4f2d6b130ded560efa06680bfd8a185 Mon Sep 17 00:00:00 2001 +From: Uli Schlachter +Date: Sat, 14 Feb 2015 19:41:26 +0100 +Subject: [PATCH] ~CThreadPool(): Handle spurious wakeups + +From pthread_cond_wait()'s man page: + + When using condition variables there is always a boolean predicate involving + shared variables associated with each condition wait that is true if the + thread should proceed. Spurious wakeups from the pthread_cond_wait() or + pthread_cond_timedwait() functions may occur. Since the return from + pthread_cond_wait() or pthread_cond_timedwait() does not imply anything about + the value of this predicate, the predicate should be re-evaluated upon such + return. + +Fix ~CThreadPool() to account for this possibility. + +Signed-off-by: Uli Schlachter +--- + src/Threads.cpp | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +--- a/src/Threads.cpp ++++ b/src/Threads.cpp +@@ -87,7 +87,7 @@ CThreadPool::~CThreadPool() { + CMutexLocker guard(m_mutex); + m_done = true; + +- if (m_num_threads > 0) { ++ while (m_num_threads > 0) { + m_cond.broadcast(); + m_exit_cond.wait(m_mutex); + } diff --git a/net/znc/patches/003-Fix-CIRCNetwork-FindChans-and-FindQueries-to-be-case.patch b/net/znc/patches/003-Fix-CIRCNetwork-FindChans-and-FindQueries-to-be-case.patch new file mode 100644 index 000000000..d5ad3df75 --- /dev/null +++ b/net/znc/patches/003-Fix-CIRCNetwork-FindChans-and-FindQueries-to-be-case.patch @@ -0,0 +1,149 @@ +From e10b53b87bb7ce87d1a31473e03a02ccafa78787 Mon Sep 17 00:00:00 2001 +From: J-P Nurmi +Date: Tue, 3 Feb 2015 10:11:47 +0100 +Subject: [PATCH] Fix CIRCNetwork::FindChans() and FindQueries() to be + case-insensitive + +The playback module failed to clear a buffer, because it tried to +clear "NickServ" whereas ZNC had internally stored it has "nickserv". +--- + Makefile.in | 2 +- + src/IRCNetwork.cpp | 6 ++-- + test/NetworkTest.cpp | 96 ++++++++++++++++++++++++++++++++++++++++++++++++++++ + 3 files changed, 101 insertions(+), 3 deletions(-) + create mode 100644 test/NetworkTest.cpp + +--- a/Makefile.in ++++ b/Makefile.in +@@ -48,7 +48,7 @@ LIB_SRCS := $(addprefix src/,$(LIB_SRCS + BIN_SRCS := src/main.cpp + LIB_OBJS := $(patsubst %cpp,%o,$(LIB_SRCS)) + BIN_OBJS := $(patsubst %cpp,%o,$(BIN_SRCS)) +-TESTS := StringTest ConfigTest UtilsTest ThreadTest NickTest ClientTest ++TESTS := StringTest ConfigTest UtilsTest ThreadTest NickTest ClientTest NetworkTest + TESTS := $(addprefix test/,$(addsuffix .o,$(TESTS))) + CLEAN := znc src/*.o test/*.o core core.* .version_extra .depend modules/.depend unittest + DISTCLEAN := Makefile config.log config.status znc-buildmod \ +--- a/src/IRCNetwork.cpp ++++ b/src/IRCNetwork.cpp +@@ -787,8 +787,9 @@ CChan* CIRCNetwork::FindChan(CString sNa + std::vector CIRCNetwork::FindChans(const CString& sWild) const { + std::vector vChans; + vChans.reserve(m_vChans.size()); ++ const CString sLower = sWild.AsLower(); + for (std::vector::const_iterator it = m_vChans.begin(); it != m_vChans.end(); ++it) { +- if ((*it)->GetName().WildCmp(sWild)) ++ if ((*it)->GetName().AsLower().WildCmp(sLower)) + vChans.push_back(*it); + } + return vChans; +@@ -946,8 +947,9 @@ CQuery* CIRCNetwork::FindQuery(const CSt + std::vector CIRCNetwork::FindQueries(const CString& sWild) const { + std::vector vQueries; + vQueries.reserve(m_vQueries.size()); ++ const CString sLower = sWild.AsLower(); + for (std::vector::const_iterator it = m_vQueries.begin(); it != m_vQueries.end(); ++it) { +- if ((*it)->GetName().WildCmp(sWild)) ++ if ((*it)->GetName().AsLower().WildCmp(sLower)) + vQueries.push_back(*it); + } + return vQueries; +--- /dev/null ++++ b/test/NetworkTest.cpp +@@ -0,0 +1,96 @@ ++/* ++ * Copyright (C) 2004-2015 ZNC, see the NOTICE file for details. ++ * ++ * Licensed under the Apache License, Version 2.0 (the "License"); ++ * you may not use this file except in compliance with the License. ++ * You may obtain a copy of the License at ++ * ++ * http://www.apache.org/licenses/LICENSE-2.0 ++ * ++ * Unless required by applicable law or agreed to in writing, software ++ * distributed under the License is distributed on an "AS IS" BASIS, ++ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. ++ * See the License for the specific language governing permissions and ++ * limitations under the License. ++ */ ++ ++#include ++#include ++#include ++#include ++ ++class NetworkTest : public ::testing::Test { ++protected: ++ void SetUp() { CZNC::CreateInstance(); } ++ void TearDown() { CZNC::DestroyInstance(); } ++}; ++ ++TEST_F(NetworkTest, FindChan) { ++ CUser user("user"); ++ CIRCNetwork network(&user, "network"); ++ ++ EXPECT_TRUE(network.AddChan("#foo", false)); ++ EXPECT_TRUE(network.AddChan("#Bar", false)); ++ EXPECT_TRUE(network.AddChan("#BAZ", false)); ++ ++ EXPECT_TRUE(network.FindChan("#foo")); ++ EXPECT_TRUE(network.FindChan("#Bar")); ++ EXPECT_TRUE(network.FindChan("#BAZ")); ++ ++ EXPECT_TRUE(network.FindChan("#Foo")); ++ EXPECT_TRUE(network.FindChan("#BAR")); ++ EXPECT_TRUE(network.FindChan("#baz")); ++ ++ EXPECT_FALSE(network.FindChan("#f")); ++ EXPECT_FALSE(network.FindChan("&foo")); ++ EXPECT_FALSE(network.FindChan("##foo")); ++} ++ ++TEST_F(NetworkTest, FindChans) { ++ CUser user("user"); ++ CIRCNetwork network(&user, "network"); ++ ++ EXPECT_TRUE(network.AddChan("#foo", false)); ++ EXPECT_TRUE(network.AddChan("#Bar", false)); ++ EXPECT_TRUE(network.AddChan("#BAZ", false)); ++ ++ EXPECT_EQ(network.FindChans("#f*").size(), 1); ++ EXPECT_EQ(network.FindChans("#b*").size(), 2); ++ EXPECT_EQ(network.FindChans("#?A*").size(), 2); ++ EXPECT_EQ(network.FindChans("*z").size(), 1); ++} ++ ++TEST_F(NetworkTest, FindQuery) { ++ CUser user("user"); ++ CIRCNetwork network(&user, "network"); ++ ++ EXPECT_TRUE(network.AddQuery("foo")); ++ EXPECT_TRUE(network.AddQuery("Bar")); ++ EXPECT_TRUE(network.AddQuery("BAZ")); ++ ++ EXPECT_TRUE(network.FindQuery("foo")); ++ EXPECT_TRUE(network.FindQuery("Bar")); ++ EXPECT_TRUE(network.FindQuery("BAZ")); ++ ++ EXPECT_TRUE(network.FindQuery("Foo")); ++ EXPECT_TRUE(network.FindQuery("BAR")); ++ EXPECT_TRUE(network.FindQuery("baz")); ++ ++ EXPECT_FALSE(network.FindQuery("f")); ++ EXPECT_FALSE(network.FindQuery("fo")); ++ EXPECT_FALSE(network.FindQuery("FF")); ++} ++ ++TEST_F(NetworkTest, FindQueries) { ++ CUser user("user"); ++ CIRCNetwork network(&user, "network"); ++ ++ EXPECT_TRUE(network.AddQuery("foo")); ++ EXPECT_TRUE(network.AddQuery("Bar")); ++ EXPECT_TRUE(network.AddQuery("BAZ")); ++ ++ EXPECT_EQ(network.FindQueries("f*").size(), 1); ++ EXPECT_EQ(network.FindQueries("b*").size(), 2); ++ EXPECT_EQ(network.FindQueries("?A*").size(), 2); ++ EXPECT_EQ(network.FindQueries("*z").size(), 1); ++} diff --git a/net/znc/patches/004-Fix-chansaver-loading.patch b/net/znc/patches/004-Fix-chansaver-loading.patch new file mode 100644 index 000000000..b0f2690af --- /dev/null +++ b/net/znc/patches/004-Fix-chansaver-loading.patch @@ -0,0 +1,38 @@ +From 7e75018ba60a9f50ea9e936eb1b6eb6b44dbc668 Mon Sep 17 00:00:00 2001 +From: J-P Nurmi +Date: Sat, 28 Feb 2015 21:15:23 +0100 +Subject: [PATCH] Fix chansaver loading + +CModules::LoadModule() sets the module type _after_ construction. +The constructor cannot therefore do actions based on the module +type. Move loading to OnLoad(). +--- + modules/chansaver.cpp | 10 +++++++--- + 1 file changed, 7 insertions(+), 3 deletions(-) + +--- a/modules/chansaver.cpp ++++ b/modules/chansaver.cpp +@@ -21,6 +21,12 @@ + class CChanSaverMod : public CModule { + public: + MODCONSTRUCTOR(CChanSaverMod) { ++ } ++ ++ virtual ~CChanSaverMod() { ++ } ++ ++ bool OnLoad(const CString& sArgsi, CString& sMessage) override { + switch (GetType()) { + case CModInfo::GlobalModule: + LoadUsers(); +@@ -32,9 +38,7 @@ public: + LoadNetwork(GetNetwork()); + break; + } +- } +- +- virtual ~CChanSaverMod() { ++ return true; + } + + void LoadUsers() { diff --git a/net/znc/patches/005-Fix-rare-conflict-of-HTTP-Basic-auth-and-cookies.patch b/net/znc/patches/005-Fix-rare-conflict-of-HTTP-Basic-auth-and-cookies.patch new file mode 100644 index 000000000..d635e78bb --- /dev/null +++ b/net/znc/patches/005-Fix-rare-conflict-of-HTTP-Basic-auth-and-cookies.patch @@ -0,0 +1,36 @@ +From 13c2dc126d8bb4c57273178fc455dab6f02e1efc Mon Sep 17 00:00:00 2001 +From: Alexey Sokolov +Date: Thu, 16 Apr 2015 01:21:57 +0100 +Subject: [PATCH] Fix rare conflict of HTTP-Basic auth and cookies. + +Fix #946 +--- + src/HTTPSock.cpp | 10 +++++++++- + 1 file changed, 9 insertions(+), 1 deletion(-) + +--- a/src/HTTPSock.cpp ++++ b/src/HTTPSock.cpp +@@ -122,7 +122,7 @@ void CHTTPSock::ReadLine(const CString& + sLine.Token(2).Base64Decode(sUnhashed); + m_sUser = sUnhashed.Token(0, false, ":"); + m_sPass = sUnhashed.Token(1, true, ":"); +- m_bLoggedIn = OnLogin(m_sUser, m_sPass, true); ++ // Postpone authorization attempt until end of headers, because cookies should be read before that, otherwise session id will be overwritten in GetSession() + } else if (sName.Equals("Content-Length:")) { + m_uPostLen = sLine.Token(1).ToULong(); + if (m_uPostLen > MAX_POST_SIZE) +@@ -170,6 +170,14 @@ void CHTTPSock::ReadLine(const CString& + } else if (sLine.empty()) { + m_bGotHeader = true; + ++ if (!m_sUser.empty()) { ++ m_bLoggedIn = OnLogin(m_sUser, m_sPass, true); ++ if (!m_bLoggedIn) { ++ // Error message already was sent ++ return; ++ } ++ } ++ + if (m_bPost) { + m_sPostData = GetInternalReadBuffer(); + CheckPost(); diff --git a/net/znc/patches/006-Fix-954-Startup-failure-when-simple_away-is-loaded-a.patch b/net/znc/patches/006-Fix-954-Startup-failure-when-simple_away-is-loaded-a.patch new file mode 100644 index 000000000..ab0429357 --- /dev/null +++ b/net/znc/patches/006-Fix-954-Startup-failure-when-simple_away-is-loaded-a.patch @@ -0,0 +1,24 @@ +From 703a244b9b8c1b4af02a6132c5c70a748d98e3f8 Mon Sep 17 00:00:00 2001 +From: J-P Nurmi +Date: Tue, 28 Apr 2015 10:00:55 +0200 +Subject: [PATCH] Fix #954: Startup failure when simple_away is loaded + after awaynick + +--- + src/User.cpp | 5 +++++ + 1 file changed, 5 insertions(+) + +--- a/src/User.cpp ++++ b/src/User.cpp +@@ -1101,6 +1101,11 @@ bool CUser::LoadModule(const CString& sM + CFile fNVFile = CFile(GetUserPath() + "/moddata/" + sModName + "/.registry"); + + for (vector::iterator it = m_vIRCNetworks.begin(); it != m_vIRCNetworks.end(); ++it) { ++ // Check whether the network already has this module loaded (#954) ++ if ((*it)->GetModules().FindModule(sModName)) { ++ continue; ++ } ++ + if (fNVFile.Exists()) { + CString sNetworkModPath = (*it)->GetNetworkPath() + "/moddata/" + sModName; + if (!CFile::Exists(sNetworkModPath)) { diff --git a/net/znc/patches/001-move_rootcheck_after_config.patch b/net/znc/patches/100-move_rootcheck_after_config.patch similarity index 78% rename from net/znc/patches/001-move_rootcheck_after_config.patch rename to net/znc/patches/100-move_rootcheck_after_config.patch index 8b3e3e703..84ee6aa6f 100644 --- a/net/znc/patches/001-move_rootcheck_after_config.patch +++ b/net/znc/patches/100-move_rootcheck_after_config.patch @@ -1,15 +1,15 @@ -From 5f655f9a25a377c01cb15517859eb514628a43d4 Mon Sep 17 00:00:00 2001 +From adf42357c9043c38d9a9b47544a1b46445bdae19 Mon Sep 17 00:00:00 2001 From: Jonas Gorski Date: Wed, 6 Apr 2011 04:10:23 +0200 Subject: [PATCH] Move the root check to after config parsing --- - src/main.cpp | 27 ++++++++++++++------------- - 1 files changed, 14 insertions(+), 13 deletions(-) + src/main.cpp | 27 ++++++++++++++------------- + 1 file changed, 14 insertions(+), 13 deletions(-) --- a/src/main.cpp +++ b/src/main.cpp -@@ -243,19 +243,6 @@ int main(int argc, char** argv) { +@@ -303,19 +303,6 @@ int main(int argc, char** argv) { CUtils::PrintStatus(true, ""); } @@ -17,7 +17,7 @@ Subject: [PATCH] Move the root check to after config parsing - CUtils::PrintError("You are running ZNC as root! Don't do that! There are not many valid"); - CUtils::PrintError("reasons for this and it can, in theory, cause great damage!"); - if (!bAllowRoot) { -- delete pZNC; +- CZNC::DestroyInstance(); - return 1; - } - CUtils::PrintError("You have been warned."); @@ -28,8 +28,8 @@ Subject: [PATCH] Move the root check to after config parsing - if (bMakeConf) { if (!pZNC->WriteNewConfig(sConfig)) { - delete pZNC; -@@ -276,6 +263,20 @@ int main(int argc, char** argv) { + CZNC::DestroyInstance(); +@@ -337,6 +324,20 @@ int main(int argc, char** argv) { return 1; } @@ -37,7 +37,7 @@ Subject: [PATCH] Move the root check to after config parsing + CUtils::PrintError("You are running ZNC as root! Don't do that! There are not many valid"); + CUtils::PrintError("reasons for this and it can, in theory, cause great damage!"); + if (!bAllowRoot) { -+ delete pZNC; ++ CZNC::DestroyInstance(); + return 1; + } + CUtils::PrintError("You have been warned."); diff --git a/net/znc/patches/003-Reduce_rebuild_time.patch b/net/znc/patches/101-Reduce_rebuild_time.patch similarity index 70% rename from net/znc/patches/003-Reduce_rebuild_time.patch rename to net/znc/patches/101-Reduce_rebuild_time.patch index 25c08e5b3..60d335c74 100644 --- a/net/znc/patches/003-Reduce_rebuild_time.patch +++ b/net/znc/patches/101-Reduce_rebuild_time.patch @@ -1,27 +1,28 @@ -From 94aff4c3389111fc85054eb06b40bea26a216d0c Mon Sep 17 00:00:00 2001 +From 0527869a72c27bfb25b5f92fdd77a04c39d939db Mon Sep 17 00:00:00 2001 From: Jonas Gorski Date: Sat, 16 Apr 2011 05:51:04 +0200 -Subject: [PATCH] Don't rebuild everything when the Makefile's timestamp changed +Subject: [PATCH] Don't rebuild everything when the Makefile's timestamp + changed --- - Makefile.in | 2 +- - modules/Makefile.in | 2 +- - 2 files changed, 2 insertions(+), 2 deletions(-) + Makefile.in | 2 +- + modules/Makefile.in | 4 ++-- + 2 files changed, 3 insertions(+), 3 deletions(-) --- a/Makefile.in +++ b/Makefile.in -@@ -104,7 +104,7 @@ clean: +@@ -112,7 +112,7 @@ clean: distclean: clean rm -rf $(DISTCLEAN) --src/%.o: src/%.cpp Makefile -+src/%.o: src/%.cpp +-src/%.o: src/%.cpp Makefile include/znc/Csocket.h ++src/%.o: src/%.cpp include/znc/Csocket.h @mkdir -p .depend src $(E) Building core object $*... $(Q)$(CXX) $(CXXFLAGS) -c -o $@ $< -MD -MF .depend/$*.dep -MT $@ --- a/modules/Makefile.in +++ b/modules/Makefile.in -@@ -117,12 +117,12 @@ install_datadir: +@@ -112,12 +112,12 @@ install_datadir: clean: rm -rf $(CLEAN) diff --git a/net/znc/patches/004-restore_droproot.patch b/net/znc/patches/102-restore_droproot.patch similarity index 100% rename from net/znc/patches/004-restore_droproot.patch rename to net/znc/patches/102-restore_droproot.patch From e1e671139ca98c39fd6dffe3e7aaf2359cce4533 Mon Sep 17 00:00:00 2001 From: Steven Barth Date: Fri, 19 Jun 2015 16:52:13 +0200 Subject: [PATCH 620/681] mysql: disable SSP for ppc (toolchain issue?) Signed-off-by: Steven Barth --- libs/libgcrypt/Makefile | 2 +- utils/mysql/Makefile | 5 +++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/libs/libgcrypt/Makefile b/libs/libgcrypt/Makefile index afa4096c2..8be982ec4 100644 --- a/libs/libgcrypt/Makefile +++ b/libs/libgcrypt/Makefile @@ -15,7 +15,7 @@ PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 PKG_SOURCE_URL:=ftp://ftp.gnupg.org/gcrypt/libgcrypt PKG_MD5SUM:=a5a5060dc2f80bcac700ab0236ea47dc -PKG_FIXUP:=patch-libtool +PKG_FIXUP:=autoreconf PKG_INSTALL:=1 PKG_BUILD_PARALLEL:=1 diff --git a/utils/mysql/Makefile b/utils/mysql/Makefile index f0553a9d7..a1d94bf21 100644 --- a/utils/mysql/Makefile +++ b/utils/mysql/Makefile @@ -62,6 +62,11 @@ ifneq ($(CONFIG_USE_UCLIBCXX),) TARGET_CXX=g++-uc endif +ifeq ($(ARCH),powerpc) + TARGET_CFLAGS += -fno-stack-protector +endif + + TARGET_CFLAGS += $(FPIC) CONFIGURE_ARGS += \ From 2865b5aa09873cc68c1050bb6a4ad1e0b58f1d39 Mon Sep 17 00:00:00 2001 From: Steven Barth Date: Fri, 19 Jun 2015 18:38:44 +0200 Subject: [PATCH 621/681] strongswan: fix musl builds, reenable lost modules Signed-off-by: Steven Barth --- net/strongswan/Makefile | 7 +- net/strongswan/patches/101-musl-fixes.patch | 73 +++++++++++++++++++++ 2 files changed, 78 insertions(+), 2 deletions(-) create mode 100644 net/strongswan/patches/101-musl-fixes.patch diff --git a/net/strongswan/Makefile b/net/strongswan/Makefile index b1ba0f284..840b02e11 100644 --- a/net/strongswan/Makefile +++ b/net/strongswan/Makefile @@ -70,6 +70,7 @@ PKG_MOD_AVAILABLE:= \ smp \ socket-default \ socket-dynamic \ + sql \ sqlite \ stroke \ test-vectors \ @@ -177,6 +178,7 @@ $(call Package/strongswan/Default) +strongswan-mod-sha2 \ +strongswan-mod-smp \ +strongswan-mod-socket-default \ + +strongswan-mod-sql \ +strongswan-mod-sqlite \ +strongswan-mod-stroke \ +strongswan-mod-test-vectors \ @@ -462,7 +464,7 @@ $(eval $(call BuildPlugin,load-tester,load testing,)) $(eval $(call BuildPlugin,nonce,nonce genereation,)) $(eval $(call BuildPlugin,md4,MD4 crypto,)) $(eval $(call BuildPlugin,md5,MD5 crypto,)) -$(eval $(call BuildPlugin,mysql,MySQL database interface,+PACKAGE_strongswan-mod-mysql:libmysqlclient-r)) +$(eval $(call BuildPlugin,mysql,MySQL database interface,+strongswan-mod-sql +PACKAGE_strongswan-mod-mysql:libmysqlclient-r)) $(eval $(call BuildPlugin,openssl,OpenSSL crypto,+PACKAGE_strongswan-mod-openssl:libopenssl)) $(eval $(call BuildPlugin,pem,PEM decoding,)) $(eval $(call BuildPlugin,pgp,PGP key decoding,)) @@ -478,7 +480,8 @@ $(eval $(call BuildPlugin,sha2,SHA2 crypto,)) $(eval $(call BuildPlugin,smp,SMP configuration and control interface,+PACKAGE_strongswan-mod-smp:libxml2)) $(eval $(call BuildPlugin,socket-default,default socket implementation for charon,)) $(eval $(call BuildPlugin,socket-dynamic,dynamic socket implementation for charon,)) -$(eval $(call BuildPlugin,sqlite,SQLite database interface,+PACKAGE_strongswan-mod-sqlite:libsqlite3)) +$(eval $(call BuildPlugin,sql,SQL database interface,)) +$(eval $(call BuildPlugin,sqlite,SQLite database interface,+strongswan-mod-sql +PACKAGE_strongswan-mod-sqlite:libsqlite3)) $(eval $(call BuildPlugin,stroke,Stroke,+strongswan-utils)) $(eval $(call BuildPlugin,test-vectors,crypto test vectors,)) $(eval $(call BuildPlugin,uci,UCI config interface,+PACKAGE_strongswan-mod-uci:libuci)) diff --git a/net/strongswan/patches/101-musl-fixes.patch b/net/strongswan/patches/101-musl-fixes.patch new file mode 100644 index 000000000..3604219a5 --- /dev/null +++ b/net/strongswan/patches/101-musl-fixes.patch @@ -0,0 +1,73 @@ +--- a/src/libstrongswan/library.h ++++ b/src/libstrongswan/library.h +@@ -118,6 +118,7 @@ + #include "utils/leak_detective.h" + #include "plugins/plugin_loader.h" + #include "settings/settings.h" ++#include "musl.h" + + typedef struct library_t library_t; + +--- /dev/null ++++ b/src/libstrongswan/musl.h +@@ -0,0 +1,27 @@ ++#include ++ ++#define crypt x_crypt ++#define encrypt x_encrypt ++#include ++ ++#define fd_set x_fd_set ++#define ino_t x_ino_t ++#define off_t x_off_t ++#define loff_t x_loff_t ++#define dev_t x_dev_t ++#define nlink_t x_nlink_t ++#define timer_t x_timer_t ++#define blkcnt_t x_blkcnt_t ++#define __kernel_nlink_t void ++ ++#include ++ ++#undef fd_set ++#undef ino_t ++#undef off_t ++#undef dev_t ++#undef nlink_t ++#undef timer_t ++#undef blkcnt_t ++#undef crypt ++#undef encrypt +--- a/src/libhydra/plugins/kernel_netlink/kernel_netlink_ipsec.c ++++ b/src/libhydra/plugins/kernel_netlink/kernel_netlink_ipsec.c +@@ -18,6 +18,8 @@ + * for more details. + */ + ++#include ++ + #include + #include + #include +--- a/src/libhydra/plugins/kernel_netlink/kernel_netlink_net.c ++++ b/src/libhydra/plugins/kernel_netlink/kernel_netlink_net.c +@@ -37,6 +37,8 @@ + * THE SOFTWARE. + */ + ++#include "musl.h" ++ + #include + #include + #include +--- a/src/libhydra/plugins/kernel_netlink/kernel_netlink_shared.c ++++ b/src/libhydra/plugins/kernel_netlink/kernel_netlink_shared.c +@@ -15,6 +15,8 @@ + * for more details. + */ + ++#include "musl.h" ++ + #include + #include + #include From f2cc485dfe0719183e4a286f518b7a1c99e93902 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=81lvaro=20Fern=C3=A1ndez=20Rojas?= Date: Fri, 19 Jun 2015 21:06:51 +0200 Subject: [PATCH 622/681] minicom: fix iconv dependencies, music includes and musl compatibility MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Álvaro Fernández Rojas --- utils/minicom/Makefile | 7 ++++--- utils/minicom/patches/101-fix_music_includes.patch | 14 ++++++++++++++ .../patches/102-fix_musl_compatibility.patch | 13 +++++++++++++ 3 files changed, 31 insertions(+), 3 deletions(-) create mode 100644 utils/minicom/patches/101-fix_music_includes.patch create mode 100644 utils/minicom/patches/102-fix_musl_compatibility.patch diff --git a/utils/minicom/Makefile b/utils/minicom/Makefile index cf60e53ec..ba5677ed3 100644 --- a/utils/minicom/Makefile +++ b/utils/minicom/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2006-2014 OpenWrt.org +# Copyright (C) 2006-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=minicom PKG_VERSION:=2.7 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=https://alioth.debian.org/frs/download.php/file/3977/ @@ -21,12 +21,13 @@ PKG_LICENSE_FILES:=COPYING PKG_FIXUP:=autoreconf +include $(INCLUDE_DIR)/nls.mk include $(INCLUDE_DIR)/package.mk define Package/minicom SECTION:=utils CATEGORY:=Utilities - DEPENDS:=+libncurses + DEPENDS:=$(ICONV_DEPENDS) +libncurses TITLE:=Terminal emulation program URL:=http://alioth.debian.org/projects/minicom/ SUBMENU:=Terminal diff --git a/utils/minicom/patches/101-fix_music_includes.patch b/utils/minicom/patches/101-fix_music_includes.patch new file mode 100644 index 000000000..a74d1233d --- /dev/null +++ b/utils/minicom/patches/101-fix_music_includes.patch @@ -0,0 +1,14 @@ +--- a/src/dial.c ++++ b/src/dial.c +@@ -39,11 +39,9 @@ + #include "intl.h" + + #ifdef VC_MUSIC +-# if defined(__GLIBC__) + # include + # include + # include +-# endif + #endif + + enum { CURRENT_VERSION = 6 }; diff --git a/utils/minicom/patches/102-fix_musl_compatibility.patch b/utils/minicom/patches/102-fix_musl_compatibility.patch new file mode 100644 index 000000000..4524b22d8 --- /dev/null +++ b/utils/minicom/patches/102-fix_musl_compatibility.patch @@ -0,0 +1,13 @@ +--- a/src/getsdir.h ++++ b/src/getsdir.h +@@ -24,6 +24,10 @@ + + #include + ++#ifndef MAXNAMLEN ++#define MAXNAMLEN 255 ++#endif ++ + typedef struct dirEntry { /* structure of data item */ + char fname[MAXNAMLEN + 1]; /* filename + terminating null */ + time_t time; /* last modification date */ From b65d05a5ab9f726d9769e85b27183779075e4ad9 Mon Sep 17 00:00:00 2001 From: Alexandru Ardelean Date: Sat, 20 Jun 2015 09:31:34 +0300 Subject: [PATCH 623/681] openvswitch: cleanup makefile (remove explicit build rules) Signed-off-by: Alexandru Ardelean --- net/openvswitch/Makefile | 36 +++++------------------------------- 1 file changed, 5 insertions(+), 31 deletions(-) diff --git a/net/openvswitch/Makefile b/net/openvswitch/Makefile index 08c65be1c..010f0fa60 100644 --- a/net/openvswitch/Makefile +++ b/net/openvswitch/Makefile @@ -24,14 +24,16 @@ PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) PKG_SOURCE_VERSION:=58be9c9fd732b5bdd3d4c2e9b8cc2313f570094d PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.gz +PKG_BUILD_PARALLEL:=1 +PKG_FIXUP:=autoreconf +PKG_INSTALL:=1 + SUPPORTED_KERNELS:=LINUX_3_8||LINUX_3_10||LINUX_3_13||LINUX_3_14||LINUX_3_18||LINUX_4_0 include $(INCLUDE_DIR)/package.mk include $(INCLUDE_DIR)/kernel.mk $(call include_mk, python-package.mk) -PKG_FIXUP=libtool - define Package/openvswitch/Default SECTION:=net CATEGORY:=Network @@ -112,35 +114,7 @@ CONFIGURE_ARGS += --enable-ndebug CONFIGURE_ARGS += --disable-ssl CONFIGURE_ARGS += --enable-shared -TARGET_CFLAGS += -flto - -define Build/Configure - (cd $(PKG_BUILD_DIR); \ - autoreconf -v --install --force || exit 1 \ - ); - $(call Build/Configure/Default,$(CONFIGURE_ARGS)) -endef - -KCFLAGS= -ifeq ($(CONFIG_GCC_VERSION_4_9),y) -KCFLAGS:=-Wno-error=date-time -endif - -define Build/Compile - $(MAKE) -C $(PKG_BUILD_DIR) \ - $(TARGET_CONFIGURE_OPTS) \ - CFLAGS="-I$(PKG_BUILD_DIR)/lib $(TARGET_CFLAGS) -std=gnu99" \ - LDFLAGS="-L$(PKG_BUILD_DIR)/lib $(TARGET_LDFLAGS)" \ - LDFLAGS_MODULES="$(TARGET_LDFLAGS) -L$(PKG_BUILD_DIR)/lib" \ - STAGING_DIR="$(STAGING_DIR)" \ - DESTDIR="$(PKG_INSTALL_DIR)/usr" \ - CROSS_COMPILE="$(TARGET_CROSS)" \ - ARCH="$(LINUX_KARCH)" \ - SUBDIRS="$(PKG_BUILD_DIR)/datapath/linux" \ - PATH="$(TARGET_PATH)" \ - EXTRA_CFLAGS="$(KCFLAGS)" \ - KCC="$(KERNEL_CC)" -endef +TARGET_CFLAGS += -flto -std=gnu99 define Package/openvswitch/install $(INSTALL_DIR) $(1)/etc/openvswitch From 3c78eb04b8808e869313be3daafc5537e7e7ae43 Mon Sep 17 00:00:00 2001 From: Alexandru Ardelean Date: Sat, 20 Jun 2015 09:32:29 +0300 Subject: [PATCH 624/681] openvswitch: fix musl compatibility Remove libatomic support from OVS: musl's libatomic seems incomplete. Conditionally compile . Signed-off-by: Alexandru Ardelean --- net/openvswitch/Makefile | 4 +- .../patches/0004-musl-compatibility.patch | 39 +++++++++++++++++++ 2 files changed, 41 insertions(+), 2 deletions(-) create mode 100644 net/openvswitch/patches/0004-musl-compatibility.patch diff --git a/net/openvswitch/Makefile b/net/openvswitch/Makefile index 010f0fa60..d51d78a76 100644 --- a/net/openvswitch/Makefile +++ b/net/openvswitch/Makefile @@ -11,7 +11,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=openvswitch -PKG_RELEASE:=2 +PKG_RELEASE:=3 PKG_VERSION:=2.3.90 PKG_RELEASE=$(PKG_SOURCE_VERSION) PKG_LICENSE:=Apache-2.0 @@ -54,7 +54,7 @@ endef define Package/openvswitch $(call Package/openvswitch/Default) TITLE:=Open vSwitch Userspace Package - DEPENDS:=+libpcap +libopenssl +librt +libatomic +kmod-openvswitch @($(SUPPORTED_KERNELS)) + DEPENDS:=+libpcap +libopenssl +librt +kmod-openvswitch @($(SUPPORTED_KERNELS)) endef define Package/openvswitch/description diff --git a/net/openvswitch/patches/0004-musl-compatibility.patch b/net/openvswitch/patches/0004-musl-compatibility.patch new file mode 100644 index 000000000..25aa45d8a --- /dev/null +++ b/net/openvswitch/patches/0004-musl-compatibility.patch @@ -0,0 +1,39 @@ +diff --git a/configure.ac b/configure.ac +index 8d47eb9..69eeed8 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -117,7 +117,6 @@ OVS_CHECK_XENSERVER_VERSION + OVS_CHECK_GROFF + OVS_CHECK_GNU_MAKE + OVS_CHECK_TLS +-OVS_CHECK_ATOMIC_LIBS + OVS_CHECK_GCC4_ATOMICS + OVS_CHECK_ATOMIC_ALWAYS_LOCK_FREE(1) + OVS_CHECK_ATOMIC_ALWAYS_LOCK_FREE(2) +diff --git a/lib/netdev-linux.c b/lib/netdev-linux.c +index 9b2e74f..70126bb 100644 +--- a/lib/netdev-linux.c ++++ b/lib/netdev-linux.c +@@ -40,7 +40,9 @@ + #include + #include + #include ++#if defined(__UCLIBC__) || defined(__GLIBC__) + #include ++#endif + #include + #include + #include +diff --git a/lib/ovs-atomic.h b/lib/ovs-atomic.h +index 9ead907..86d3341 100644 +--- a/lib/ovs-atomic.h ++++ b/lib/ovs-atomic.h +@@ -325,8 +325,6 @@ + #include "ovs-atomic-clang.h" + #elif HAVE_STDATOMIC_H + #include "ovs-atomic-c11.h" +- #elif __GNUC__ >= 4 && __GNUC_MINOR__ >= 7 +- #include "ovs-atomic-gcc4.7+.h" + #elif __GNUC__ && defined(__x86_64__) + #include "ovs-atomic-x86_64.h" + #elif __GNUC__ && defined(__i386__) From 749abcacc8ca8f6078a7ae56bcf6433cd6611fa6 Mon Sep 17 00:00:00 2001 From: Nikos Mavrogiannopoulos Date: Thu, 18 Jun 2015 22:40:25 +0200 Subject: [PATCH 625/681] openconnect: allow processing multiple passwords from stdin Resolves #1419 Signed-off-by: Nikos Mavrogiannopoulos --- net/openconnect/files/openconnect.sh | 4 +- ...-two-passwords-from-stdin-in-non-int.patch | 125 ++++++++++++++++++ 2 files changed, 128 insertions(+), 1 deletion(-) create mode 100644 net/openconnect/patches/001-Allow-processing-two-passwords-from-stdin-in-non-int.patch diff --git a/net/openconnect/files/openconnect.sh b/net/openconnect/files/openconnect.sh index 0e22e1b60..9b1e652bd 100755 --- a/net/openconnect/files/openconnect.sh +++ b/net/openconnect/files/openconnect.sh @@ -10,6 +10,7 @@ proto_openconnect_init_config() { proto_config_add_string "serverhash" proto_config_add_string "authgroup" proto_config_add_string "password" + proto_config_add_string "password2" proto_config_add_string "token_mode" proto_config_add_string "token_secret" proto_config_add_string "interface" @@ -22,7 +23,7 @@ proto_openconnect_init_config() { proto_openconnect_setup() { local config="$1" - json_get_vars server port username serverhash authgroup password interface token_mode token_secret os csd_wrapper + json_get_vars server port username serverhash authgroup password password2 interface token_mode token_secret os csd_wrapper grep -q tun /proc/modules || insmod tun @@ -65,6 +66,7 @@ proto_openconnect_setup() { mkdir -p /var/etc pwfile="/var/etc/openconnect-$config.passwd" echo "$password" > "$pwfile" + [ -n "$password2" ] && echo "$password2" >> "$pwfile" append cmdline "--passwd-on-stdin" } diff --git a/net/openconnect/patches/001-Allow-processing-two-passwords-from-stdin-in-non-int.patch b/net/openconnect/patches/001-Allow-processing-two-passwords-from-stdin-in-non-int.patch new file mode 100644 index 000000000..be652f8eb --- /dev/null +++ b/net/openconnect/patches/001-Allow-processing-two-passwords-from-stdin-in-non-int.patch @@ -0,0 +1,125 @@ +From 5f2e24fdc9935d049a7e4a5b6e10461e9467597f Mon Sep 17 00:00:00 2001 +From: Nikos Mavrogiannopoulos +Date: Thu, 18 Jun 2015 22:38:05 +0200 +Subject: [PATCH] Allow processing two passwords from stdin in non-interactive + mode + +Signed-off-by: Nikos Mavrogiannopoulos +--- + main.c | 38 ++++++++++++++++++++++++++------------ + 1 file changed, 26 insertions(+), 12 deletions(-) + +diff --git a/main.c b/main.c +index 3b976d8..f853afe 100644 +--- a/main.c ++++ b/main.c +@@ -85,6 +85,7 @@ static int do_passphrase_from_fsid; + static int nocertcheck; + static int non_inter; + static int cookieonly; ++static int allow_stdin_read; + + static char *token_filename; + static char *server_cert = NULL; +@@ -358,7 +359,7 @@ static char *convert_arg_to_utf8(char **argv, char *arg) + #define vfprintf vfprintf_utf8 + #define is_arg_utf8(str) (0) + +-static void read_stdin(char **string, int hidden) ++static void read_stdin(char **string, int hidden, int allow_fail) + { + CONSOLE_READCONSOLE_CONTROL rcc = { sizeof(rcc), 0, 13, 0 }; + HANDLE stdinh = GetStdHandle(STD_INPUT_HANDLE); +@@ -375,6 +376,7 @@ static void read_stdin(char **string, int hidden) + char *errstr = openconnect__win32_strerror(GetLastError()); + fprintf(stderr, _("ReadConsole() failed: %s\n"), errstr); + free(errstr); ++ *string = NULL; + goto out; + } + +@@ -622,7 +624,7 @@ static void print_build_opts(void) + + #ifndef _WIN32 + static const char default_vpncscript[] = DEFAULT_VPNCSCRIPT; +-static void read_stdin(char **string, int hidden) ++static void read_stdin(char **string, int hidden, int allow_fail) + { + char *c, *buf = malloc(1025); + int fd = fileno(stdin); +@@ -648,8 +650,14 @@ static void read_stdin(char **string, int hidden) + } + + if (!buf) { +- perror(_("fgets (stdin)")); +- exit(1); ++ if (allow_fail) { ++ *string = NULL; ++ free(buf); ++ return; ++ } else { ++ perror(_("fgets (stdin)")); ++ exit(1); ++ } + } + + c = strchr(buf, '\n'); +@@ -1160,13 +1168,14 @@ int main(int argc, char **argv) + cookieonly = 3; + break; + case OPT_COOKIE_ON_STDIN: +- read_stdin(&vpninfo->cookie, 0); ++ read_stdin(&vpninfo->cookie, 0, 0); + /* If the cookie is empty, ignore it */ + if (!*vpninfo->cookie) + vpninfo->cookie = NULL; + break; + case OPT_PASSWORD_ON_STDIN: +- read_stdin(&password, 0); ++ read_stdin(&password, 0, 0); ++ allow_stdin_read = 1; + break; + case OPT_NO_PASSWD: + vpninfo->nopasswd = 1; +@@ -1708,7 +1717,7 @@ static int validate_peer_cert(void *_vpninfo, const char *reason) + fprintf(stderr, _("Enter '%s' to accept, '%s' to abort; anything else to view: "), + _("yes"), _("no")); + +- read_stdin(&response, 0); ++ read_stdin(&response, 0, 0); + if (!response) + return -EINVAL; + +@@ -1779,19 +1788,24 @@ static char *prompt_for_input(const char *prompt, + struct openconnect_info *vpninfo, + int hidden) + { +- char *response; ++ char *response = NULL; + + fprintf(stderr, "%s", prompt); + fflush(stderr); + + if (non_inter) { +- fprintf(stderr, "***\n"); +- vpn_progress(vpninfo, PRG_ERR, ++ if (allow_stdin_read) { ++ read_stdin(&response, hidden, 1); ++ } ++ if (response == NULL) { ++ fprintf(stderr, "***\n"); ++ vpn_progress(vpninfo, PRG_ERR, + _("User input required in non-interactive mode\n")); +- return NULL; ++ } ++ return response; + } + +- read_stdin(&response, hidden); ++ read_stdin(&response, hidden, 0); + return response; + } + +-- +2.1.4 + From 2c6a3743c6db7323109db5602f2a1e52ec8a2740 Mon Sep 17 00:00:00 2001 From: Nikos Mavrogiannopoulos Date: Sat, 20 Jun 2015 12:36:55 +0200 Subject: [PATCH 626/681] openconnect: updated documentation Signed-off-by: Nikos Mavrogiannopoulos --- net/openconnect/README | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/net/openconnect/README b/net/openconnect/README index 7a55da014..772b0e3cc 100644 --- a/net/openconnect/README +++ b/net/openconnect/README @@ -10,11 +10,22 @@ config interface 'MYVPN' option username 'test' option password 'secret' option serverhash 'AE7FF6A0426F0A0CD0A02EB9EC3C5066FAEB0B25' - option token_mode 'rsa' # when built with stoken support - option token_secret 'secret' # when built with stoken support option defaultroute '0' option authgroup 'DEFAULT' + # For second factor auth: + + # when a fixed 2FA password can be used + #option password2 'my-fixed-2fa-password' + + # RSA tokens, must be built with stoken support + #option token_mode 'rsa' + #option token_secret 'secret' + + # HOTP/TOTP tokens + #option token_mode 'hotp' + #option token_secret '00' + The additional files are also used: /etc/openconnect/user-cert-vpn-MYVPN.pem: The user certificate /etc/openconnect/user-key-vpn-MYVPN.pem: The user private key From cb36792aa29d5dabf778f3651e1bb53dce269138 Mon Sep 17 00:00:00 2001 From: Nikos Mavrogiannopoulos Date: Sat, 20 Jun 2015 13:50:16 +0200 Subject: [PATCH 627/681] libradcli: added package to replace freeradius-client Signed-off-by: Nikos Mavrogiannopoulos --- libs/freeradius-client/Makefile | 55 ------------------------ libs/libradcli/Config.in | 10 +++++ libs/libradcli/Makefile | 75 +++++++++++++++++++++++++++++++++ 3 files changed, 85 insertions(+), 55 deletions(-) delete mode 100644 libs/freeradius-client/Makefile create mode 100644 libs/libradcli/Config.in create mode 100644 libs/libradcli/Makefile diff --git a/libs/freeradius-client/Makefile b/libs/freeradius-client/Makefile deleted file mode 100644 index 32f9aac59..000000000 --- a/libs/freeradius-client/Makefile +++ /dev/null @@ -1,55 +0,0 @@ -# -# Copyright (C) 2011 OpenWrt.org -# -# This is free software, licensed under the GNU General Public License v2. -# See /LICENSE for more information. -# - -include $(TOPDIR)/rules.mk - -PKG_NAME:=freeradius-client -PKG_VERSION:=1.1.7 -PKG_RELEASE:=1 - -PKG_SOURCE:=freeradius-client-$(PKG_VERSION).tar.gz -PKG_SOURCE_URL:=ftp://ftp.freeradius.org/pub/freeradius/ -PKG_MD5SUM:=43b4d21715b613dc4fe8ef128467fe78 - -PKG_INSTALL:=1 - -include $(INCLUDE_DIR)/package.mk - -define Package/freeradius-client - SECTION:=libs - CATEGORY:=Libraries - TITLE:=A library for radius clients - URL:=http://freeradius.org/freeradius-client/ - MAINTAINER:=Nikos Mavrogiannopoulos -endef - -define Package/freeradius-client/decription - FreeRADIUS Client is a framework and library for writing RADIUS - Clients. The library lets you develop a RADIUS-aware application - in less than 50 lines of C code. It is highly portable and runs on - Linux, many BSD variants and Solaris. -endef - -define Build/InstallDev - $(INSTALL_DIR) $(1)/usr/include - $(CP) \ - $(PKG_INSTALL_DIR)/usr/include/freeradius-client.h \ - $(1)/usr/include/ - $(INSTALL_DIR) $(1)/usr/lib - $(CP) \ - $(PKG_INSTALL_DIR)/usr/lib/libfreeradius-client.{a,so*} \ - $(1)/usr/lib/ -endef - -define Package/freeradius-client/install - $(INSTALL_DIR) $(1)/usr/lib - $(CP) \ - $(PKG_INSTALL_DIR)/usr/lib/libfreeradius-client.so.* \ - $(1)/usr/lib/ -endef - -$(eval $(call BuildPackage,freeradius-client)) diff --git a/libs/libradcli/Config.in b/libs/libradcli/Config.in new file mode 100644 index 000000000..35c3a223b --- /dev/null +++ b/libs/libradcli/Config.in @@ -0,0 +1,10 @@ +# radcli avanced configuration + +menu "Configuration" + depends on PACKAGE_libradcli + +config RADCLI_TLS + bool "enable TLS support" + default y + +endmenu diff --git a/libs/libradcli/Makefile b/libs/libradcli/Makefile new file mode 100644 index 000000000..00af18f99 --- /dev/null +++ b/libs/libradcli/Makefile @@ -0,0 +1,75 @@ +# +# Copyright (C) 2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=libradcli +PKG_VERSION:=1.2.1 +PKG_RELEASE:=1 + +PKG_SOURCE:=radcli-$(PKG_VERSION).tar.gz +PKG_SOURCE_URL:=https://github.com/radcli/radcli/releases/download/radcli_1_2_1/ +PKG_MD5SUM:=48f917ed3822ed2d91a5e90309a80812 +PKG_BUILD_DIR:=$(BUILD_DIR)/radcli-$(PKG_VERSION) + +PKG_INSTALL:=1 + +include $(INCLUDE_DIR)/package.mk + +define Package/libradcli + SECTION:=libs + CATEGORY:=Libraries + TITLE:=A library for radius clients + URL:=http://radcli.github.io/radcli/ + MAINTAINER:=Nikos Mavrogiannopoulos + DEPENDS:= +RADCLI_TLS:libgnutls +libnettle +endef + +define Package/libradcli/decription + The radcli library is a library for writing RADIUS Clients. The library's + approach is to allow writing RADIUS-aware application in less than 50 lines + of C code. It was based originally on freeradius-client and is source + compatible with it. +endef + +CONFIGURE_ARGS+= \ + --enable-legacy-compat + +ifneq ($(CONFIG_RADCLI_TLS),y) +CONFIGURE_ARGS += --without-tls +endif + +define Build/InstallDev + $(INSTALL_DIR) $(1)/usr/include/radcli + $(CP) \ + $(PKG_INSTALL_DIR)/usr/include/radcli/radcli.h \ + $(PKG_INSTALL_DIR)/usr/include/radcli/version.h \ + $(1)/usr/include/radcli + $(CP) \ + $(PKG_INSTALL_DIR)/usr/include/freeradius-client.h \ + $(1)/usr/include/ + $(INSTALL_DIR) $(1)/usr/lib + $(CP) \ + $(PKG_INSTALL_DIR)/usr/lib/libradcli.so* \ + $(PKG_INSTALL_DIR)/usr/lib/libfreeradius-client.so \ + $(1)/usr/lib/ +endef + +define Package/libradcli/conffiles +/etc/radcli/radiusclient.conf +endef + +define Package/libradcli/install + $(INSTALL_DIR) $(1)/etc/radcli + $(INSTALL_CONF) $(PKG_BUILD_DIR)/etc/radiusclient.conf $(1)/etc/radcli/ + $(INSTALL_DIR) $(1)/usr/lib + $(CP) \ + $(PKG_INSTALL_DIR)/usr/lib/libradcli.so.* \ + $(1)/usr/lib/ +endef + +$(eval $(call BuildPackage,libradcli)) From bc034ae30aa520a75a58d8e806dc8ea1fd19e276 Mon Sep 17 00:00:00 2001 From: Nikos Mavrogiannopoulos Date: Sat, 20 Jun 2015 13:56:49 +0200 Subject: [PATCH 628/681] ocserv: depend on radcli Signed-off-by: Nikos Mavrogiannopoulos --- net/ocserv/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/net/ocserv/Makefile b/net/ocserv/Makefile index a72e34fd7..a59e9dc0d 100644 --- a/net/ocserv/Makefile +++ b/net/ocserv/Makefile @@ -39,7 +39,7 @@ define Package/ocserv TITLE:=OpenConnect VPN server URL:=http://www.infradead.org/ocserv/ MAINTAINER:=Nikos Mavrogiannopoulos - DEPENDS:= +OCSERV_RADIUS:freeradius-client +OCSERV_HTTP_PARSER:libhttp-parser +OCSERV_SECCOMP:libseccomp +libgnutls +certtool +libncurses +libreadline +OCSERV_PAM:libpam +OCSERV_PROTOBUF:libprotobuf-c +kmod-tun + DEPENDS:= +OCSERV_RADIUS:libradcli +OCSERV_HTTP_PARSER:libhttp-parser +OCSERV_SECCOMP:libseccomp +libgnutls +certtool +libncurses +libreadline +OCSERV_PAM:libpam +OCSERV_PROTOBUF:libprotobuf-c +kmod-tun USERID:=ocserv=72:ocserv=72 endef From 34a5b2fb6f7cf9f21168da6e17eb2655078bd8fd Mon Sep 17 00:00:00 2001 From: Ted Hess Date: Sat, 20 Jun 2015 11:49:30 -0400 Subject: [PATCH 629/681] libnetfilter: packages moved to trunk git.openwrt.org/openwrt.git Signed-off-by: Ted Hess --- libs/libnetfilter-cthelper/Makefile | 72 ---------------------------- libs/libnetfilter-cttimeout/Makefile | 71 --------------------------- libs/libnetfilter-queue/Makefile | 70 --------------------------- 3 files changed, 213 deletions(-) delete mode 100644 libs/libnetfilter-cthelper/Makefile delete mode 100644 libs/libnetfilter-cttimeout/Makefile delete mode 100644 libs/libnetfilter-queue/Makefile diff --git a/libs/libnetfilter-cthelper/Makefile b/libs/libnetfilter-cthelper/Makefile deleted file mode 100644 index f96fd0c92..000000000 --- a/libs/libnetfilter-cthelper/Makefile +++ /dev/null @@ -1,72 +0,0 @@ -# -# Copyright (C) 2015 OpenWrt.org -# -# This is free software, licensed under the GNU General Public License v2. -# See /LICENSE for more information. -# - -include $(TOPDIR)/rules.mk - -PKG_NAME:=libnetfilter_cthelper -PKG_VERSION:=1.0.0 -PKG_RELEASE:=1 - -PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 -PKG_SOURCE_URL:= \ - http://www.netfilter.org/projects/libnetfilter_cthelper/files/ \ - ftp://ftp.netfilter.org/pub/libnetfilter_cthelper/ \ - http://mirrors.evolva.ro/netfilter.org/libnetfilter_cthelper/ -PKG_MD5SUM:=b2efab1a3a198a5add448960ba011acd - -PKG_LICENSE:=GPL-2.0+ -PKG_LICENSE_FILES:=COPYING -PKG_MAINTAINER:=Nicolas Thill - -PKG_FIXUP:=autoreconf -PKG_INSTALL:=1 - -include $(INCLUDE_DIR)/package.mk - -define Package/libnetfilter-cthelper - CATEGORY:=Libraries - SECTION:=libs - TITLE:=API to connection tracking helper infrastructure - URL:=http://www.netfilter.org/projects/libnetfilter_cthelper/ - DEPENDS:=+libmnl -endef - -define Package/libnetfilter-cthelper/description - libnetfilter_cthelper is the userspace library that provides the programming - interface to the user-space helper infrastructure available since Linux kernel - 3.6. - With this library, you register, configure, enable and disable user-space - helpers. -endef - -TARGET_CFLAGS += $(FPIC) - -CONFIGURE_ARGS += \ - --enable-static \ - --enable-shared \ - -define Build/InstallDev - $(INSTALL_DIR) $(1)/usr/include - $(CP) \ - $(PKG_INSTALL_DIR)/usr/include/libnetfilter_cthelper \ - $(1)/usr/include/ - $(INSTALL_DIR) $(1)/usr/lib - $(CP) \ - $(PKG_INSTALL_DIR)/usr/lib/libnetfilter_cthelper*.{a,la,so*} \ - $(1)/usr/lib/ - $(INSTALL_DIR) $(1)/usr/lib/pkgconfig - $(CP) \ - $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/libnetfilter_cthelper.pc \ - $(1)/usr/lib/pkgconfig/ -endef - -define Package/libnetfilter-cthelper/install - $(INSTALL_DIR) $(1)/usr/lib - $(CP) $(PKG_INSTALL_DIR)/usr/lib/libnetfilter_cthelper*.so.* $(1)/usr/lib/ -endef - -$(eval $(call BuildPackage,libnetfilter-cthelper)) diff --git a/libs/libnetfilter-cttimeout/Makefile b/libs/libnetfilter-cttimeout/Makefile deleted file mode 100644 index 01c2cd030..000000000 --- a/libs/libnetfilter-cttimeout/Makefile +++ /dev/null @@ -1,71 +0,0 @@ -# -# Copyright (C) 2015 OpenWrt.org -# -# This is free software, licensed under the GNU General Public License v2. -# See /LICENSE for more information. -# - -include $(TOPDIR)/rules.mk - -PKG_NAME:=libnetfilter_cttimeout -PKG_VERSION:=1.0.0 -PKG_RELEASE:=1 - -PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 -PKG_SOURCE_URL:= \ - http://www.netfilter.org/projects/libnetfilter_cttimeout/files/ \ - ftp://ftp.netfilter.org/pub/libnetfilter_cttimeout/ \ - http://mirrors.evolva.ro/netfilter.org/libnetfilter_cttimeout/ -PKG_MD5SUM:=7697437fc9ebb6f6b83df56a633db7f9 - -PKG_LICENSE:=GPL-2.0+ -PKG_LICENSE_FILES:=COPYING -PKG_MAINTAINER:=Nicolas Thill - -PKG_FIXUP:=autoreconf -PKG_INSTALL:=1 - -include $(INCLUDE_DIR)/package.mk - -define Package/libnetfilter-cttimeout - SECTION:=libs - CATEGORY:=Libraries - TITLE:=API to connection tracking timeout infrastructure - URL:=http://www.netfilter.org/projects/libnetfilter_cttimeout/ - DEPENDS:=+libmnl -endef - -define Package/libnetfilter-queue/description - libnetfilter_cttimeout is the userspace library that provides the programming - interface to the fine-grain connection tracking timeout infrastructure. - With this library, you can create, update and delete timeout policies that can - be attached to traffic flows. -endef - -TARGET_CFLAGS += $(FPIC) - -CONFIGURE_ARGS += \ - --enable-static \ - --enable-shared \ - -define Build/InstallDev - $(INSTALL_DIR) $(1)/usr/include - $(CP) \ - $(PKG_INSTALL_DIR)/usr/include/libnetfilter_cttimeout \ - $(1)/usr/include/ - $(INSTALL_DIR) $(1)/usr/lib - $(CP) \ - $(PKG_INSTALL_DIR)/usr/lib/libnetfilter_cttimeout*.{so*,a,la} \ - $(1)/usr/lib/ - $(INSTALL_DIR) $(1)/usr/lib/pkgconfig - $(CP) \ - $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/libnetfilter_cttimeout.pc \ - $(1)/usr/lib/pkgconfig/ -endef - -define Package/libnetfilter-cttimeout/install - $(INSTALL_DIR) $(1)/usr/lib - $(CP) $(PKG_INSTALL_DIR)/usr/lib/libnetfilter_cttimeout*.so.* $(1)/usr/lib/ -endef - -$(eval $(call BuildPackage,libnetfilter-cttimeout)) diff --git a/libs/libnetfilter-queue/Makefile b/libs/libnetfilter-queue/Makefile deleted file mode 100644 index e9793404b..000000000 --- a/libs/libnetfilter-queue/Makefile +++ /dev/null @@ -1,70 +0,0 @@ -# -# Copyright (C) 2007-2015 OpenWrt.org -# -# This is free software, licensed under the GNU General Public License v2. -# See /LICENSE for more information. -# - -include $(TOPDIR)/rules.mk - -PKG_NAME:=libnetfilter_queue -PKG_VERSION:=1.0.2 -PKG_RELEASE:=1 - -PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 -PKG_SOURCE_URL:= \ - http://www.netfilter.org/projects/libnetfilter_queue/files/ \ - ftp://ftp.netfilter.org/pub/libnetfilter_queue/ \ - http://mirrors.evolva.ro/netfilter.org/libnetfilter_queue/ -PKG_MD5SUM:=df09befac35cb215865b39a36c96a3fa - -PKG_LICENSE:=GPL-2.0+ -PKG_LICENSE_FILES:=COPYING -PKG_MAINTAINER:=Nicolas Thill - -PKG_FIXUP:=autoreconf -PKG_INSTALL:=1 - -include $(INCLUDE_DIR)/package.mk - -define Package/libnetfilter-queue - SECTION:=libs - CATEGORY:=Libraries - TITLE:=API to packets queued by the kernel packet filter - URL:=http://www.netfilter.org/projects/libnetfilter_queue/ - DEPENDS:=+libmnl +libnfnetlink +kmod-nfnetlink-queue -endef - -define Package/libnetfilter-queue/description - libnetfilter_queue is a userspace library providing an API to packets - that have been queued by the kernel packet filter. -endef - -TARGET_CFLAGS += $(FPIC) - -CONFIGURE_ARGS += \ - --enable-static \ - --enable-shared \ - - -define Build/InstallDev - $(INSTALL_DIR) $(1)/usr/include - $(CP) \ - $(PKG_INSTALL_DIR)/usr/include/libnetfilter_queue \ - $(1)/usr/include/ - $(INSTALL_DIR) $(1)/usr/lib - $(CP) \ - $(PKG_INSTALL_DIR)/usr/lib/libnetfilter_queue*.{so*,a,la} \ - $(1)/usr/lib/ - $(INSTALL_DIR) $(1)/usr/lib/pkgconfig - $(CP) \ - $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/libnetfilter_queue.pc \ - $(1)/usr/lib/pkgconfig/ -endef - -define Package/libnetfilter-queue/install - $(INSTALL_DIR) $(1)/usr/lib - $(CP) $(PKG_INSTALL_DIR)/usr/lib/libnetfilter_queue*.so.* $(1)/usr/lib/ -endef - -$(eval $(call BuildPackage,libnetfilter-queue)) From 18be1b77cf7648b8b5d9d271d23b3d17f18c7cc5 Mon Sep 17 00:00:00 2001 From: Nikos Mavrogiannopoulos Date: Sun, 21 Jun 2015 12:00:02 +0200 Subject: [PATCH 630/681] transmission: bumped version Signed-off-by: Nikos Mavrogiannopoulos --- net/transmission/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/net/transmission/Makefile b/net/transmission/Makefile index 1facadaf8..8b50cd69c 100644 --- a/net/transmission/Makefile +++ b/net/transmission/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=transmission PKG_VERSION:=2.84 -PKG_RELEASE:=2 +PKG_RELEASE:=3 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=http://download-origin.transmissionbt.com/files/ http://mirrors.m0k.org/transmission/files From 4869be787a35ad787bd085c3484c356e5aae87b8 Mon Sep 17 00:00:00 2001 From: Paul Fertser Date: Sun, 21 Jun 2015 15:06:32 +0300 Subject: [PATCH 631/681] macchanger: fix build with musl According to netdevice(7) ifr_data is a "char *", not caddr_t. Signed-off-by: Paul Fertser --- utils/macchanger/Makefile | 2 +- .../patches/0001-fix-build-with-musl.patch | 13 +++++++++++++ 2 files changed, 14 insertions(+), 1 deletion(-) create mode 100644 utils/macchanger/patches/0001-fix-build-with-musl.patch diff --git a/utils/macchanger/Makefile b/utils/macchanger/Makefile index 667f1d1cb..2bfcbbf2d 100644 --- a/utils/macchanger/Makefile +++ b/utils/macchanger/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=macchanger PKG_VERSION:=1.7.0 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=https://github.com/alobbs/macchanger/releases/download/$(PKG_VERSION)/ diff --git a/utils/macchanger/patches/0001-fix-build-with-musl.patch b/utils/macchanger/patches/0001-fix-build-with-musl.patch new file mode 100644 index 000000000..4a30d5510 --- /dev/null +++ b/utils/macchanger/patches/0001-fix-build-with-musl.patch @@ -0,0 +1,13 @@ +Index: macchanger-1.7.0/src/netinfo.c +=================================================================== +--- macchanger-1.7.0.orig/src/netinfo.c ++++ macchanger-1.7.0/src/netinfo.c +@@ -113,7 +113,7 @@ mc_net_info_get_permanent_mac (const net + epa->size = IFHWADDRLEN; + + memcpy(&req, &(net->dev), sizeof(struct ifreq)); +- req.ifr_data = (caddr_t)epa; ++ req.ifr_data = (char *)epa; + + if (ioctl(net->sock, SIOCETHTOOL, &req) < 0) { + perror ("[ERROR] Could not read permanent MAC"); From 707f61ced9482b8fbf589111285fcf29e5b738a2 Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Sun, 21 Jun 2015 13:53:07 +0200 Subject: [PATCH 632/681] i2c-tools: import from oldpackages - license and maintainer added - bumped to recent release source tarball instead of SVN source - add archive.org mirror to work-around the lm-sensors.org domain currently being broken... Signed-off-by: Daniel Golle --- utils/i2c-tools/Makefile | 94 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 94 insertions(+) create mode 100644 utils/i2c-tools/Makefile diff --git a/utils/i2c-tools/Makefile b/utils/i2c-tools/Makefile new file mode 100644 index 000000000..8c36ca9da --- /dev/null +++ b/utils/i2c-tools/Makefile @@ -0,0 +1,94 @@ +# +# Copyright (C) 2007-2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=i2c-tools +PKG_VERSION:=3.1.1 +PKG_RELEASE:=1 + +PKG_SOURCE_URL:=http://dl.lm-sensors.org/i2c-tools/releases/ \ + http://web.archive.org/web/20150326044243/http://dl.lm-sensors.org/i2c-tools/releases/ +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 +PKG_MD5SUM:=0fdbff53ebd0b8d9249256d6c56480b1 + +PKG_BUILD_PARALLEL:=1 +PKG_BUILD_DEPENDS:=PACKAGE_python-smbus:python + +PKG_MAINTAINER:=Daniel Golle +PKG_LICENSE:=GPLv2 +PKG_LICENSE_FILES:=COPYING + +include $(INCLUDE_DIR)/package.mk +$(call include_mk, python-package.mk) + +define Package/i2c/Default + URL:=http://lm-sensors.org/wiki/I2CTools + TITLE:=I2C +endef + +define Package/i2c-tools + $(call Package/i2c/Default) + SECTION:=utils + CATEGORY:=Utilities + TITLE+=tools for Linux +endef + +define Package/python-smbus + $(call Package/i2c/Default) + SUBMENU:=Python + SECTION:=lang + CATEGORY:=Languages + TITLE:=Python bindings for the SMBUS + DEPENDS:=+python-light +endef + +define Package/i2c-tools/description + This package contains an heterogeneous set of I2C tools for Linux. These tools + were originally part of the lm-sensors package. +endef + +define Package/python-smbus/description + This package contain the python bindings for Linux SMBus access through i2c-dev. +endef + +TARGET_CPPFLAGS += -I$(PKG_BUILD_DIR)/include + +ifdef CONFIG_PACKAGE_python-smbus + define Build/Compile/python-smbus + $(if $(Build/Compile/PyMod),,@echo Python packaging code not found.; false) + $(call Build/Compile/PyMod,./py-smbus/, \ + install --prefix="$(PKG_INSTALL_DIR)/usr", \ + ) + endef +endif + +define Build/Compile + $(MAKE) -C $(PKG_BUILD_DIR) \ + LINUX="$(LINUX_DIR)" \ + CC="$(TARGET_CC)" \ + STAGING_DIR="$(STAGING_DIR)" \ + LDFLAGS="$(TARGET_LDFLAGS)" \ + CFLAGS="$(TARGET_CFLAGS)" + $(Build/Compile/python-smbus) +endef + +define Package/i2c-tools/install + $(INSTALL_DIR) $(1)/usr/sbin + $(INSTALL_BIN) $(PKG_BUILD_DIR)/tools/i2cdetect $(1)/usr/sbin/ + $(INSTALL_BIN) $(PKG_BUILD_DIR)/tools/i2cdump $(1)/usr/sbin/ + $(INSTALL_BIN) $(PKG_BUILD_DIR)/tools/i2cset $(1)/usr/sbin/ + $(INSTALL_BIN) $(PKG_BUILD_DIR)/tools/i2cget $(1)/usr/sbin/ +endef + +define PyPackage/python-smbus/filespec ++|$(PYTHON_PKG_DIR)/smbus.so +endef + +$(eval $(call BuildPackage,i2c-tools)) +$(eval $(call PyPackage,python-smbus)) +$(eval $(call BuildPackage,python-smbus)) From 161b225acc370b9742ef3ca266be14f6cde918e9 Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Sun, 21 Jun 2015 13:57:37 +0200 Subject: [PATCH 633/681] gnunet: update source to r35963 Signed-off-by: Daniel Golle --- net/gnunet/Makefile | 2 +- .../012-work-around-bad-workarounds.patch | 88 ------------------- 2 files changed, 1 insertion(+), 89 deletions(-) delete mode 100644 net/gnunet/patches/012-work-around-bad-workarounds.patch diff --git a/net/gnunet/Makefile b/net/gnunet/Makefile index ad2c37044..a5529baff 100644 --- a/net/gnunet/Makefile +++ b/net/gnunet/Makefile @@ -8,7 +8,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=gnunet -PKG_SOURCE_VERSION:=35949 +PKG_SOURCE_VERSION:=35963 PKG_VERSION:=0.10.1-svn$(PKG_SOURCE_VERSION) PKG_RELEASE:=1 diff --git a/net/gnunet/patches/012-work-around-bad-workarounds.patch b/net/gnunet/patches/012-work-around-bad-workarounds.patch deleted file mode 100644 index 9ae6a6255..000000000 --- a/net/gnunet/patches/012-work-around-bad-workarounds.patch +++ /dev/null @@ -1,88 +0,0 @@ ---- a/m4/libgnurl.m4 -+++ b/m4/libgnurl.m4 -@@ -146,7 +146,7 @@ AC_DEFUN([LIBGNURL_CHECK_CONFIG], - _libgnurl_save_libs=$LIBS - LIBS="$LIBGNURL $LIBS" - -- AC_LINK_IFELSE([AC_LANG_PROGRAM([#include ],[ -+ AC_LINK_IFELSE([AC_LANG_PROGRAM([#include ],[ - /* Try and use a few common options to force a failure if we are - missing symbols or can't link. */ - int x; ---- a/src/gns/gnunet-gns-proxy.c -+++ b/src/gns/gnunet-gns-proxy.c -@@ -29,7 +29,7 @@ - */ - #include "platform.h" - #include --#include -+#include - #include - #include - #include ---- a/src/gns/test_gns_proxy.c -+++ b/src/gns/test_gns_proxy.c -@@ -24,7 +24,7 @@ - * @author Martin Schanzenbach - */ - #include "platform.h" --#include -+#include - #include - #include "gnunet_namestore_service.h" - #include "gnunet_gns_service.h" ---- a/src/hostlist/gnunet-daemon-hostlist_client.c -+++ b/src/hostlist/gnunet-daemon-hostlist_client.c -@@ -29,7 +29,7 @@ - #include "gnunet_statistics_service.h" - #include "gnunet_transport_service.h" - #include "gnunet-daemon-hostlist.h" --#include -+#include - - - /** ---- a/src/pt/test_gns_vpn.c -+++ b/src/pt/test_gns_vpn.c -@@ -24,7 +24,7 @@ - * @author Martin Schanzenbach - */ - #include "platform.h" --#include -+#include - #include - #include "gnunet_identity_service.h" - #include "gnunet_namestore_service.h" ---- a/src/pt/test_gnunet_vpn.c -+++ b/src/pt/test_gnunet_vpn.c -@@ -24,7 +24,7 @@ - * @author Christian Grothoff - */ - #include "platform.h" --#include -+#include - #include - #include "gnunet_vpn_service.h" - #include "gnunet_testing_lib.h" ---- a/src/transport/plugin_transport_http.h -+++ b/src/transport/plugin_transport_http.h -@@ -41,7 +41,7 @@ - #include "gnunet_os_lib.h" - #include "gnunet_nat_lib.h" - #include "microhttpd.h" --#include -+#include - - - #define DEBUG_HTTP GNUNET_EXTRA_LOGGING ---- a/src/transport/plugin_transport_http_client.c -+++ b/src/transport/plugin_transport_http_client.c -@@ -49,7 +49,7 @@ - #include "gnunet_protocols.h" - #include "gnunet_transport_plugin.h" - #include "plugin_transport_http_common.h" --#include -+#include - - - #define LOG(kind,...) GNUNET_log_from(kind, PLUGIN_NAME, __VA_ARGS__) From df1df03a2f5b54b2f22c6e4f988597107ac5981e Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Sun, 21 Jun 2015 15:17:26 +0200 Subject: [PATCH 634/681] libarchive: add build-variant without libopenssl Signed-off-by: Daniel Golle --- libs/libarchive/Makefile | 31 +++++++++++++++++++++++++------ 1 file changed, 25 insertions(+), 6 deletions(-) diff --git a/libs/libarchive/Makefile b/libs/libarchive/Makefile index 91bbe5462..9c42aad14 100644 --- a/libs/libarchive/Makefile +++ b/libs/libarchive/Makefile @@ -22,12 +22,23 @@ PKG_FIXUP:=autoreconf include $(INCLUDE_DIR)/package.mk -define Package/libarchive - SECTION:=libs - CATEGORY:=Libraries - DEPENDS:=+libopenssl +zlib - TITLE:=Multi-format archive and compression library - URL:=http://www.libarchive.org/ +define Package/$(PKG_NAME)/Default + SECTION:=libs + CATEGORY:=Libraries + DEPENDS:=+zlib + TITLE:=Multi-format archive and compression library + URL:=http://www.libarchive.org/ +endef + +define Package/$(PKG_NAME) + $(call Package/$(PKG_NAME)/Default) + DEPENDS += +libopenssl +endef + +define Package/$(PKG_NAME)-noopenssl + $(call Package/$(PKG_NAME)/Default) + TITLE += (without OpenSSL dependency) + VARIANT:=noopenssl endef CONFIGURE_ARGS += \ @@ -43,6 +54,12 @@ CONFIGURE_ARGS += \ --without-expat \ --without-xml2 +ifeq ($(BUILD_VARIANT),noopenssl) + CONFIGURE_ARGS += --without-openssl +else + CONFIGURE_ARGS += --with-openssl +endif + define Build/InstallDev $(INSTALL_DIR) $(1)/usr/include $(CP) $(PKG_INSTALL_DIR)/usr/include/* $(1)/usr/include/ @@ -54,5 +71,7 @@ define Package/libarchive/install $(INSTALL_DIR) $(1)/usr/lib $(CP) $(PKG_INSTALL_DIR)/usr/lib/*.so.* $(1)/usr/lib/ endef +Package/$(PKG_NAME)-noopenssl/install = $(Package/$(PKG_NAME)/install) $(eval $(call BuildPackage,libarchive)) +$(eval $(call BuildPackage,libarchive-noopenssl)) From 60ba8483f14c17a553ef7c3674246d9de2fdd95b Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Sun, 21 Jun 2015 17:29:33 +0200 Subject: [PATCH 635/681] gnunet: build PostgreSQL and mySQL backends Signed-off-by: Daniel Golle --- net/gnunet/Makefile | 45 +++++++++++++++++++++++++++++---------------- 1 file changed, 29 insertions(+), 16 deletions(-) diff --git a/net/gnunet/Makefile b/net/gnunet/Makefile index a5529baff..99baa0d7c 100644 --- a/net/gnunet/Makefile +++ b/net/gnunet/Makefile @@ -10,14 +10,13 @@ include $(TOPDIR)/rules.mk PKG_NAME:=gnunet PKG_SOURCE_VERSION:=35963 PKG_VERSION:=0.10.1-svn$(PKG_SOURCE_VERSION) -PKG_RELEASE:=1 +PKG_RELEASE:=2 # ToDo: # - break-out transports # -> get rid of microhttpd and gnurl dependency for gns and vpn # requires upstream to split config files -# - break-out {peer,name,data}store -# - building and package mysql or postgresql storage backends +# - break-out {peer,name,data}store for each backend # - package testing stuff PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz @@ -36,15 +35,15 @@ PKG_INSTALL:=1 include $(INCLUDE_DIR)/package.mk CONFIGURE_ARGS+= \ - --disable-rpath \ + --with-ltdl \ + $(if $(CONFIG_PACKAGE_$(PKG_NAME)-mysql),--with-mysql="$(STAGING_DIR)/usr",--without-mysql) \ + $(if $(CONFIG_PACKAGE_$(PKG_NAME)-pgsql),--with-postgresql="$(STAGING_DIR)/usr/bin/pg_config",--without-postgresql) \ + $(if $(CONFIG_PACKAGE_$(PKG_NAME)-sqlite),--with-sqlite="$(STAGING_DIR)/usr",--without-sqlite) \ --with-extractor=$(STAGING_DIR)/usr \ --with-gnutls=$(STAGING_DIR)/usr \ --with-libgnurl=$(STAGING_DIR)/usr \ --with-libunistring-prefix=$(STAGING_DIR)/usr \ - --with-ltdl \ - --with-microhttpd=$(STAGING_DIR)/usr \ - --without-mysql \ - --without-postgresql + --with-microhttpd=$(STAGING_DIR)/usr # ToDo: request upstream to provide --with-pulseaudio=... TARGET_LDFLAGS+= -Wl,-rpath-link=$(STAGING_DIR)/usr/lib/pulseaudio @@ -189,7 +188,7 @@ CONF_conversation:=conversation DEPENDS_experiments:=+libglpk PLUGIN_experiments:=ats_mlp ats_ril -DEPENDS_fs:=+gnunet-storage +libextractor +DEPENDS_fs:=+gnunet-datastore +libextractor BIN_fs:=auto-share directory download download-manager.scm fs publish unindex search LIB_fs:=fs PLUGIN_fs:=block_fs @@ -204,12 +203,23 @@ PLUGIN_gns:=block_dns block_gns gnsrecord_dns gnsrecord_gns LIBEXEC_gns:=dns2gns gns-proxy helper-dns namestore-fcfsd service-dns service-gns service-namecache service-namestore service-resolver CONF_gns:=dns gns namecache namestore resolver -DEPENDS_storage:=+gnunet-gns +libsqlite3 -BIN_storage:=datastore -LIB_storage:=datastore -PLUGIN_storage:=datacache_sqlite datastore_heap datastore_sqlite namecache_sqlite namestore_sqlite peerstore_sqlite -LIBEXEC_storage:=daemon-latency-logger service-datastore -CONF_storage:=datastore +DEPENDS_datastore:=+gnunet-gns +libsqlite3 +BIN_datastore:=datastore +LIB_datastore:=datastore +PLUGIN_datastore:=datacache_sqlite datastore_heap datastore_sqlite namecache_sqlite namestore_sqlite peerstore_sqlite +LIBEXEC_datastore:=daemon-latency-logger service-datastore +CONF_datastore:=datastore + +DEPENDS_mysql:=+gnunet-gns +gnunet-datastore +libmysqlclient +LIB_mysql:=mysql +PLUGIN_mysql:=datastore_mysql + +DEPENDS_pgsql:=+gnunet-gns +gnunet-datastore +libpq +LIB_pgsql:=postgres +PLUGIN_pgsql:=datacache_postgres datastore_postgres namecache_postgres namestore_postgres + +DEPENDS_sqlite:=+gnunet-gns +gnunet-datastore +libsqlite3 +PLUGIN_sqlite:=datacache_sqlite datastore_sqlite namecache_sqlite namestore_sqlite peerstore_sqlite DEPENDS_transport-bluetooth:=+bluez-libs PLUGIN_transport-bluetooth:=transport_bluetooth @@ -228,7 +238,10 @@ $(eval $(call BuildComponent,conversation,conversation component,)) $(eval $(call BuildComponent,experiments,experimental components,)) $(eval $(call BuildComponent,fs,file-sharing components,)) $(eval $(call BuildComponent,gns,name resolution components,y)) -$(eval $(call BuildComponent,storage,storage components,)) +$(eval $(call BuildComponent,datastore,storage components,)) $(eval $(call BuildComponent,transport-bluetooth,bluetooth transport,)) $(eval $(call BuildComponent,utils,administration utililties,)) $(eval $(call BuildComponent,vpn,vpn components,y)) +$(eval $(call BuildComponent,mysql,mySQL datastore backend,)) +$(eval $(call BuildComponent,pgsql,PostgreSQL backends,)) +$(eval $(call BuildComponent,sqlite,libsqlite3 backends,y)) From 7621572e2217d5dbbfe482da8708cbf8546b4f6e Mon Sep 17 00:00:00 2001 From: Damiano Renfer Date: Sun, 21 Jun 2015 18:45:30 +0200 Subject: [PATCH 636/681] net/dnscrypt-proxy: update to 1.5.0 Signed-off-by: Damiano Renfer damiano.renfer@gmail.com --- net/dnscrypt-proxy/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/net/dnscrypt-proxy/Makefile b/net/dnscrypt-proxy/Makefile index 22458fbfb..32a872185 100644 --- a/net/dnscrypt-proxy/Makefile +++ b/net/dnscrypt-proxy/Makefile @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=dnscrypt-proxy -PKG_VERSION:=1.4.3 +PKG_VERSION:=1.5.0 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://download.dnscrypt.org/dnscrypt-proxy -PKG_MD5SUM:=54d172236a8f321fb5689ff81767f1ba +PKG_MD5SUM:=bcaaaae4797082dd7a6ba618cc3e687c PKG_FIXUP:=autoreconf PKG_INSTALL:=1 From 8037b2737580741785390491de61c82847d086a6 Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Sun, 21 Jun 2015 21:33:08 +0200 Subject: [PATCH 637/681] lvm2: update sources Signed-off-by: Daniel Golle --- utils/lvm2/Makefile | 4 ++-- utils/lvm2/patches/002-const-stdio.patch | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/utils/lvm2/Makefile b/utils/lvm2/Makefile index 38b9d63e2..2bc8c9231 100644 --- a/utils/lvm2/Makefile +++ b/utils/lvm2/Makefile @@ -9,13 +9,13 @@ include $(TOPDIR)/rules.mk PKG_NAME:=LVM2 -PKG_VERSION:=2.02.121 +PKG_VERSION:=2.02.122 PKG_RELEASE:=1 PKG_LICENSE:=GPL-2.0 LGPL-2.1 PKG_SOURCE:=$(PKG_NAME).$(PKG_VERSION).tgz PKG_SOURCE_URL:=ftp://sources.redhat.com/pub/lvm2 -PKG_MD5SUM:=702c61bf07a8fc6dc0db6e9d323d9f6d +PKG_MD5SUM:=a88bf7d68955635d009a5aec1ffecc48 PKG_MAINTAINER:=Daniel Golle PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME).$(PKG_VERSION) diff --git a/utils/lvm2/patches/002-const-stdio.patch b/utils/lvm2/patches/002-const-stdio.patch index 399485831..e7625b6c6 100644 --- a/utils/lvm2/patches/002-const-stdio.patch +++ b/utils/lvm2/patches/002-const-stdio.patch @@ -31,7 +31,7 @@ if (is_valid_fd(STDIN_FILENO) && --- a/tools/lvmcmdline.c +++ b/tools/lvmcmdline.c -@@ -1606,6 +1606,7 @@ int lvm_split(char *str, int *argc, char +@@ -1635,6 +1635,7 @@ int lvm_split(char *str, int *argc, char /* Make sure we have always valid filedescriptors 0,1,2 */ static int _check_standard_fds(void) { @@ -39,7 +39,7 @@ int err = is_valid_fd(STDERR_FILENO); if (!is_valid_fd(STDIN_FILENO) && -@@ -1632,6 +1633,12 @@ static int _check_standard_fds(void) +@@ -1661,6 +1662,12 @@ static int _check_standard_fds(void) strerror(errno)); return 0; } From 9b50e5d90159889dfee15460fd1f6f90ffa667b8 Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Sun, 21 Jun 2015 15:24:43 +0200 Subject: [PATCH 638/681] libextractor: build against libarchive-noopenssl Signed-off-by: Daniel Golle --- libs/libextractor/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libs/libextractor/Makefile b/libs/libextractor/Makefile index 1bb15c71d..d68f997a7 100644 --- a/libs/libextractor/Makefile +++ b/libs/libextractor/Makefile @@ -25,7 +25,7 @@ PKG_MAINTAINER:=Daniel Golle PKG_INSTALL:=1 PLUGINS:= \ - archive:+libarchive \ + archive:+libarchive-noopenssl \ deb \ dvi \ flac:+libflac \ From 9433d5ad285056c9476a899595df6d4785ec127e Mon Sep 17 00:00:00 2001 From: heil Date: Sun, 21 Jun 2015 21:41:17 +0200 Subject: [PATCH 639/681] nginx: fix musl compatibility - include Patches according to issue #1129 - refresh Makefile Signed-off-by: heil --- net/nginx/Makefile | 4 +-- net/nginx/patches/100-musl-no-sysctl.patch | 35 ++++++++++++++++++++++ 2 files changed, 37 insertions(+), 2 deletions(-) create mode 100644 net/nginx/patches/100-musl-no-sysctl.patch diff --git a/net/nginx/Makefile b/net/nginx/Makefile index e93326e52..667bacb5d 100644 --- a/net/nginx/Makefile +++ b/net/nginx/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2009-2012 OpenWrt.org +# Copyright (C) 2012-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=nginx PKG_VERSION:=1.4.7 -PKG_RELEASE:=2 +PKG_RELEASE:=3 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://nginx.org/download/ diff --git a/net/nginx/patches/100-musl-no-sysctl.patch b/net/nginx/patches/100-musl-no-sysctl.patch new file mode 100644 index 000000000..4e35bf6ba --- /dev/null +++ b/net/nginx/patches/100-musl-no-sysctl.patch @@ -0,0 +1,35 @@ +Index: nginx-1.4.7/src/os/unix/ngx_linux_config.h +=================================================================== +--- nginx-1.4.7.orig/src/os/unix/ngx_linux_config.h ++++ nginx-1.4.7/src/os/unix/ngx_linux_config.h +@@ -51,7 +51,6 @@ + #include /* memalign() */ + #include /* IOV_MAX */ + #include +-#include + #include + #include /* uname() */ + +--- nginx-1.2.7/src/os/unix/ngx_user.c ++++ nginx-1.2.7-patched/src/os/unix/ngx_user.c +@@ -31,8 +31,6 @@ + struct crypt_data cd; + + cd.initialized = 0; +- /* work around the glibc bug */ +- cd.current_salt[0] = ~salt[0]; + + value = crypt_r((char *) key, (char *) salt, &cd); + +diff --git a/auto/lib/openssl/conf b/auto/lib/openssl/conf +index 528ee17..73ef359 100644 +--- a/auto/lib/openssl/conf ++++ b/auto/lib/openssl/conf +@@ -47,7 +47,7 @@ else + ngx_feature_run=no + ngx_feature_incs="#include " + ngx_feature_path= +- ngx_feature_libs="-lssl -lcrypto" ++ ngx_feature_libs="-lssl -lcrypto -lz" + ngx_feature_test="SSL_library_init()" + . auto/feature From 3deac7408a1f765e89a76339787a8e48d15f2282 Mon Sep 17 00:00:00 2001 From: Richard Kunze Date: Sun, 21 Jun 2015 22:26:55 +0200 Subject: [PATCH 640/681] hdparm: update to version 9.48 Signed-off-by: Richard Kunze --- utils/hdparm/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/utils/hdparm/Makefile b/utils/hdparm/Makefile index 3fb70c7eb..fabc46439 100644 --- a/utils/hdparm/Makefile +++ b/utils/hdparm/Makefile @@ -8,13 +8,13 @@ include $(TOPDIR)/rules.mk PKG_NAME:=hdparm -PKG_VERSION:=9.47 +PKG_VERSION:=9.48 PKG_RELEASE:=1 PKG_USE_MIPS16:=0 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=@SF/$(PKG_NAME) -PKG_MD5SUM:=560c1d8af7f696239cbbca7cd146304a +PKG_MD5SUM:=213efdbe7471fad3408198918e164354 PKG_MAINTAINER:=Richard Kunze PKG_LICENSE:=BSD-Style Open Source License From 4c2a42b912ebd52385fa4ccc938318f0715ca17b Mon Sep 17 00:00:00 2001 From: Karl Palsson Date: Sun, 21 Jun 2015 17:41:15 +0000 Subject: [PATCH 641/681] libev: Update to 4.20 Minor release, changes from upstream: - prefer noexcept over throw () with C++ 11. - update ecb.h due to incompatibilities with c11. - fix a potential aliasing issue when reading and writing watcher callbacks. Signed-off-by: Karl Palsson --- libs/libev/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libs/libev/Makefile b/libs/libev/Makefile index 36bf7f157..9f0dc5c89 100644 --- a/libs/libev/Makefile +++ b/libs/libev/Makefile @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=libev -PKG_VERSION:=4.19 +PKG_VERSION:=4.20 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://dist.schmorp.de/libev/Attic/ -PKG_MD5SUM:=01d1c672697f649b4f94abd0b70584ff +PKG_MD5SUM:=1cac539cfc560f381a490c9fba940de9 PKG_LICENSE:=BSD-2-Clause PKG_MAINTAINER:=Karl Palsson From 088ec6029f4229cd221b57327e80c597a345eaf1 Mon Sep 17 00:00:00 2001 From: Derek LaHousse Date: Fri, 19 Jun 2015 12:16:31 -0400 Subject: [PATCH 642/681] ipsec-tools: Make compatible with musl Based on changes at http://git.alpinelinux.org/cgit/aports/plain/main/ipsec-tools/musl-cdefs.patch Removed references to "login" and "logout" functions, as musl utmp doesn't. Bump PKG_RELEASE Signed-off-by: Derek LaHousse --- net/ipsec-tools/Makefile | 2 +- net/ipsec-tools/patches/009-musl-compat.patch | 187 ++++++++++++++++++ 2 files changed, 188 insertions(+), 1 deletion(-) create mode 100644 net/ipsec-tools/patches/009-musl-compat.patch diff --git a/net/ipsec-tools/Makefile b/net/ipsec-tools/Makefile index d758b3623..41f7f885b 100644 --- a/net/ipsec-tools/Makefile +++ b/net/ipsec-tools/Makefile @@ -11,7 +11,7 @@ include $(INCLUDE_DIR)/kernel.mk PKG_NAME:=ipsec-tools PKG_VERSION:=0.8.2 -PKG_RELEASE:=3 +PKG_RELEASE:=4 PKG_MAINTAINER := "Noah Meyerhans " PKG_LICENSE := BSD-3-Clause diff --git a/net/ipsec-tools/patches/009-musl-compat.patch b/net/ipsec-tools/patches/009-musl-compat.patch new file mode 100644 index 000000000..85d03f9ad --- /dev/null +++ b/net/ipsec-tools/patches/009-musl-compat.patch @@ -0,0 +1,187 @@ +--- a/src/racoon/grabmyaddr.c ++++ b/src/racoon/grabmyaddr.c +@@ -47,7 +47,6 @@ + #include + #include + #include +-#include + #define USE_ROUTE + #endif + +--- a/src/racoon/pfkey.c ++++ b/src/racoon/pfkey.c +@@ -59,7 +59,6 @@ + #include + #include + #include +-#include + + #include + #include +--- a/src/setkey/setkey.c ++++ b/src/setkey/setkey.c +@@ -40,7 +40,6 @@ + #include + #include + #include +-#include + #include + #include + #include +--- a/src/libipsec/ipsec_strerror.h ++++ b/src/libipsec/ipsec_strerror.h +@@ -34,6 +34,8 @@ + #ifndef _IPSEC_STRERROR_H + #define _IPSEC_STRERROR_H + ++#include ++ + extern int __ipsec_errcode; + extern void __ipsec_set_strerror __P((const char *)); + +--- a/src/libipsec/libpfkey.h ++++ b/src/libipsec/libpfkey.h +@@ -34,6 +34,8 @@ + #ifndef _LIBPFKEY_H + #define _LIBPFKEY_H + ++#include ++ + #ifndef KAME_LIBPFKEY_H + #define KAME_LIBPFKEY_H + +--- a/src/racoon/backupsa.c ++++ b/src/racoon/backupsa.c +@@ -276,9 +276,9 @@ do { \ + GETNEXTNUM(sa_args.a_keylen, strtoul); + GETNEXTNUM(sa_args.flags, strtoul); + GETNEXTNUM(sa_args.l_alloc, strtoul); +- GETNEXTNUM(sa_args.l_bytes, strtouq); +- GETNEXTNUM(sa_args.l_addtime, strtouq); +- GETNEXTNUM(sa_args.l_usetime, strtouq); ++ GETNEXTNUM(sa_args.l_bytes, strtoull); ++ GETNEXTNUM(sa_args.l_addtime, strtoull); ++ GETNEXTNUM(sa_args.l_usetime, strtoull); + GETNEXTNUM(sa_args.seq, strtoul); + + #undef GETNEXTNUM +--- a/src/racoon/cftoken.l ++++ b/src/racoon/cftoken.l +@@ -77,6 +77,10 @@ + + #include "cfparse.h" + ++#ifndef GLOB_TILDE ++#define GLOB_TILDE 0 ++#endif ++ + int yyerrorcount = 0; + + #if defined(YIPS_DEBUG) +--- a/src/racoon/logger.h ++++ b/src/racoon/logger.h +@@ -34,6 +34,8 @@ + #ifndef _LOGGER_H + #define _LOGGER_H + ++#include ++ + struct log { + int head; + int siz; +--- a/src/racoon/misc.h ++++ b/src/racoon/misc.h +@@ -34,6 +34,8 @@ + #ifndef _MISC_H + #define _MISC_H + ++#include ++ + #define BIT2STR(b) bit2str(b, sizeof(b)<<3) + + #ifdef HAVE_FUNC_MACRO +--- a/src/racoon/missing/crypto/sha2/sha2.h ++++ b/src/racoon/missing/crypto/sha2/sha2.h +@@ -40,6 +40,8 @@ + #ifndef __SHA2_H__ + #define __SHA2_H__ + ++#include ++ + #ifdef __cplusplus + extern "C" { + #endif +--- a/src/racoon/netdb_dnssec.h ++++ b/src/racoon/netdb_dnssec.h +@@ -34,6 +34,8 @@ + #ifndef _NETDB_DNSSEC_H + #define _NETDB_DNSSEC_H + ++#include ++ + #ifndef T_CERT + #define T_CERT 37 /* defined by RFC2538 section 2 */ + #endif +--- a/src/racoon/plog.h ++++ b/src/racoon/plog.h +@@ -34,6 +34,8 @@ + #ifndef _PLOG_H + #define _PLOG_H + ++#include ++ + #ifdef HAVE_STDARG_H + #include + #else +--- a/src/racoon/str2val.h ++++ b/src/racoon/str2val.h +@@ -34,6 +34,8 @@ + #ifndef _STR2VAL_H + #define _STR2VAL_H + ++#include ++ + extern caddr_t val2str __P((const char *, size_t)); + extern char *str2val __P((const char *, int, size_t *)); + +--- a/src/racoon/vmbuf.h ++++ b/src/racoon/vmbuf.h +@@ -34,6 +34,8 @@ + #ifndef _VMBUF_H + #define _VMBUF_H + ++#include ++ + /* + * bp v + * v v +--- a/src/setkey/extern.h ++++ b/src/setkey/extern.h +@@ -1,6 +1,6 @@ + /* $NetBSD: extern.h,v 1.5 2009/03/06 11:45:03 tteras Exp $ */ + +- ++#include + + void parse_init __P((void)); + int parse __P((FILE **)); +--- a/src/racoon/isakmp_cfg.c ++++ b/src/racoon/isakmp_cfg.c +@@ -1694,8 +1694,6 @@ isakmp_cfg_accounting_system(port, raddr + "Accounting : '%s' logging on '%s' from %s.\n", + ut.ut_name, ut.ut_line, ut.ut_host); + +- login(&ut); +- + break; + case ISAKMP_CFG_LOGOUT: + +@@ -1703,8 +1701,6 @@ isakmp_cfg_accounting_system(port, raddr + "Accounting : '%s' unlogging from '%s'.\n", + usr, term); + +- logout(term); +- + break; + default: + plog(LLV_ERROR, LOCATION, NULL, "Unepected inout\n"); From 103f62252394fd1e8dbc73346e28e6537afad55a Mon Sep 17 00:00:00 2001 From: Steven Barth Date: Mon, 22 Jun 2015 12:03:48 +0200 Subject: [PATCH 643/681] Revert "mysql: disable SSP for ppc (toolchain issue?)" This reverts commit e1e671139ca98c39fd6dffe3e7aaf2359cce4533. Signed-off-by: Steven Barth --- libs/libgcrypt/Makefile | 2 +- utils/mysql/Makefile | 5 ----- 2 files changed, 1 insertion(+), 6 deletions(-) diff --git a/libs/libgcrypt/Makefile b/libs/libgcrypt/Makefile index 8be982ec4..afa4096c2 100644 --- a/libs/libgcrypt/Makefile +++ b/libs/libgcrypt/Makefile @@ -15,7 +15,7 @@ PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 PKG_SOURCE_URL:=ftp://ftp.gnupg.org/gcrypt/libgcrypt PKG_MD5SUM:=a5a5060dc2f80bcac700ab0236ea47dc -PKG_FIXUP:=autoreconf +PKG_FIXUP:=patch-libtool PKG_INSTALL:=1 PKG_BUILD_PARALLEL:=1 diff --git a/utils/mysql/Makefile b/utils/mysql/Makefile index a1d94bf21..f0553a9d7 100644 --- a/utils/mysql/Makefile +++ b/utils/mysql/Makefile @@ -62,11 +62,6 @@ ifneq ($(CONFIG_USE_UCLIBCXX),) TARGET_CXX=g++-uc endif -ifeq ($(ARCH),powerpc) - TARGET_CFLAGS += -fno-stack-protector -endif - - TARGET_CFLAGS += $(FPIC) CONFIGURE_ARGS += \ From 9bf0217f2f615fc183d82938ed4c87ae02c823bc Mon Sep 17 00:00:00 2001 From: Steven Barth Date: Mon, 22 Jun 2015 12:24:19 +0200 Subject: [PATCH 644/681] strongswan: refresh musl compatibility fixes Signed-off-by: Steven Barth --- net/strongswan/patches/101-musl-fixes.patch | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/net/strongswan/patches/101-musl-fixes.patch b/net/strongswan/patches/101-musl-fixes.patch index 3604219a5..73b2d5a48 100644 --- a/net/strongswan/patches/101-musl-fixes.patch +++ b/net/strongswan/patches/101-musl-fixes.patch @@ -10,7 +10,7 @@ --- /dev/null +++ b/src/libstrongswan/musl.h -@@ -0,0 +1,27 @@ +@@ -0,0 +1,33 @@ +#include + +#define crypt x_crypt @@ -22,6 +22,9 @@ +#define off_t x_off_t +#define loff_t x_loff_t +#define dev_t x_dev_t ++#define mode_t x_mode_t ++#define uid_t x_uid_t ++#define gid_t x_gid_t +#define nlink_t x_nlink_t +#define timer_t x_timer_t +#define blkcnt_t x_blkcnt_t @@ -33,6 +36,9 @@ +#undef ino_t +#undef off_t +#undef dev_t ++#undef mode_t ++#undef uid_t ++#undef gid_t +#undef nlink_t +#undef timer_t +#undef blkcnt_t From 76b5c2007dd9bd441841895a50827fd72b86188c Mon Sep 17 00:00:00 2001 From: Maxim Storchak Date: Fri, 19 Jun 2015 20:14:33 +0300 Subject: [PATCH 645/681] luaposix: fix compatibility with musl Signed-off-by: Maxim Storchak --- lang/luaposix/Makefile | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/lang/luaposix/Makefile b/lang/luaposix/Makefile index 40cddc054..a189e6645 100644 --- a/lang/luaposix/Makefile +++ b/lang/luaposix/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=luaposix PKG_VERSION:=v33.2.1 -PKG_RELEASE:=4 +PKG_RELEASE:=5 PKG_SOURCE:=release-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=https://github.com/luaposix/luaposix/archive/ @@ -41,6 +41,9 @@ endef CONFIGURE_VARS += ac_cv_path_LDOC="" TARGET_CFLAGS += -DLUA_USE_LINUX $(FPIC) -std=gnu99 +ifeq ($(CONFIG_USE_MUSL),y) + TARGET_CFLAGS += -D_POSIX_PRIORITY_SCHEDULING +endif ifneq ($(CONFIG_USE_GLIBC),) ifeq ($(CONFIG_EGLIBC_OPTION_EGLIBC_UTMP),) From b1cac1506323b3723f27ce3f7d576a895534a390 Mon Sep 17 00:00:00 2001 From: heil Date: Mon, 22 Jun 2015 14:57:26 +0200 Subject: [PATCH 646/681] haproxy: upstream fixes - [PATCH 15/18] MEDIUM: ssl: replace standards DH groups with custom - [PATCH 16/18] BUG/MINOR: debug: display (null) in place of "meth" - [PATCH 17/18] CLEANUP: deinit: remove codes for cleaning - [PATCH 18/18] BUG/MINOR: ssl: fix smp_fetch_ssl_fc_session_id Signed-off-by: heil --- net/haproxy/Makefile | 2 +- ...ce-standards-DH-groups-with-custom-o.patch | 427 ++++++++++++++++++ ...-debug-display-null-in-place-of-meth.patch | 28 ++ ...emove-codes-for-cleaning-p-block_rul.patch | 36 ++ ...-ssl-fix-smp_fetch_ssl_fc_session_id.patch | 37 ++ 5 files changed, 529 insertions(+), 1 deletion(-) create mode 100644 net/haproxy/patches/0015-MEDIUM-ssl-replace-standards-DH-groups-with-custom-o.patch create mode 100644 net/haproxy/patches/0016-BUG-MINOR-debug-display-null-in-place-of-meth.patch create mode 100644 net/haproxy/patches/0017-CLEANUP-deinit-remove-codes-for-cleaning-p-block_rul.patch create mode 100644 net/haproxy/patches/0018-BUG-MINOR-ssl-fix-smp_fetch_ssl_fc_session_id.patch diff --git a/net/haproxy/Makefile b/net/haproxy/Makefile index 0e6fbd505..71fa81d1d 100644 --- a/net/haproxy/Makefile +++ b/net/haproxy/Makefile @@ -10,7 +10,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=haproxy PKG_VERSION:=1.5.12 -PKG_RELEASE:=14 +PKG_RELEASE:=18 PKG_SOURCE:=haproxy-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://haproxy.1wt.eu/download/1.5/src/ PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/$(PKG_NAME)-$(PKG_VERSION) diff --git a/net/haproxy/patches/0015-MEDIUM-ssl-replace-standards-DH-groups-with-custom-o.patch b/net/haproxy/patches/0015-MEDIUM-ssl-replace-standards-DH-groups-with-custom-o.patch new file mode 100644 index 000000000..2d1415bee --- /dev/null +++ b/net/haproxy/patches/0015-MEDIUM-ssl-replace-standards-DH-groups-with-custom-o.patch @@ -0,0 +1,427 @@ +From 2ad3ec1ab5379a16b16aba48a42ced27b170534e Mon Sep 17 00:00:00 2001 +From: Remi Gacogne +Date: Fri, 29 May 2015 16:26:17 +0200 +Subject: [PATCH 15/18] MEDIUM: ssl: replace standards DH groups with custom + ones +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +It is likely that powerful adversaries have been pre-computing the +standardized DH groups, because being widely used have made them +valuable targets. While users are advised to generate their own +DH parameters, replace the ones we ship by values been randomly +generated for this product only. + +[wt: replaced dh1024_p, dh2048_p, and dh4096_p with locally-generated + ones as recommended by Rémi] + +(cherry picked from commit d3a341a96fb6107d2b8e3d7a9c0afa2ff43bb0b6) +--- + src/ssl_sock.c | 340 +++++++++++++++++---------------------------------------- + 1 file changed, 102 insertions(+), 238 deletions(-) + +diff --git a/src/ssl_sock.c b/src/ssl_sock.c +index 0f7819b..93aab8b 100644 +--- a/src/ssl_sock.c ++++ b/src/ssl_sock.c +@@ -114,7 +114,6 @@ static int ssl_dh_ptr_index = -1; + static DH *local_dh_1024 = NULL; + static DH *local_dh_2048 = NULL; + static DH *local_dh_4096 = NULL; +-static DH *local_dh_8192 = NULL; + #endif /* OPENSSL_NO_DH */ + + #ifdef SSL_CTRL_SET_TLSEXT_STATUS_REQ_CB +@@ -766,32 +765,28 @@ static int ssl_sock_switchctx_cbk(SSL *ssl, int *al, struct bind_conf *s) + + static DH * ssl_get_dh_1024(void) + { +-#if OPENSSL_VERSION_NUMBER < 0x0090801fL +- static const unsigned char rfc_2409_prime_1024[] = { +- 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xC9,0x0F,0xDA,0xA2, +- 0x21,0x68,0xC2,0x34,0xC4,0xC6,0x62,0x8B,0x80,0xDC,0x1C,0xD1, +- 0x29,0x02,0x4E,0x08,0x8A,0x67,0xCC,0x74,0x02,0x0B,0xBE,0xA6, +- 0x3B,0x13,0x9B,0x22,0x51,0x4A,0x08,0x79,0x8E,0x34,0x04,0xDD, +- 0xEF,0x95,0x19,0xB3,0xCD,0x3A,0x43,0x1B,0x30,0x2B,0x0A,0x6D, +- 0xF2,0x5F,0x14,0x37,0x4F,0xE1,0x35,0x6D,0x6D,0x51,0xC2,0x45, +- 0xE4,0x85,0xB5,0x76,0x62,0x5E,0x7E,0xC6,0xF4,0x4C,0x42,0xE9, +- 0xA6,0x37,0xED,0x6B,0x0B,0xFF,0x5C,0xB6,0xF4,0x06,0xB7,0xED, +- 0xEE,0x38,0x6B,0xFB,0x5A,0x89,0x9F,0xA5,0xAE,0x9F,0x24,0x11, +- 0x7C,0x4B,0x1F,0xE6,0x49,0x28,0x66,0x51,0xEC,0xE6,0x53,0x81, +- 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF, +- }; +-#endif ++ static unsigned char dh1024_p[]={ ++ 0xFA,0xF9,0x2A,0x22,0x2A,0xA7,0x7F,0xE1,0x67,0x4E,0x53,0xF7, ++ 0x56,0x13,0xC3,0xB1,0xE3,0x29,0x6B,0x66,0x31,0x6A,0x7F,0xB3, ++ 0xC2,0x68,0x6B,0xCB,0x1D,0x57,0x39,0x1D,0x1F,0xFF,0x1C,0xC9, ++ 0xA6,0xA4,0x98,0x82,0x31,0x5D,0x25,0xFF,0x8A,0xE0,0x73,0x96, ++ 0x81,0xC8,0x83,0x79,0xC1,0x5A,0x04,0xF8,0x37,0x0D,0xA8,0x3D, ++ 0xAE,0x74,0xBC,0xDB,0xB6,0xA4,0x75,0xD9,0x71,0x8A,0xA0,0x17, ++ 0x9E,0x2D,0xC8,0xA8,0xDF,0x2C,0x5F,0x82,0x95,0xF8,0x92,0x9B, ++ 0xA7,0x33,0x5F,0x89,0x71,0xC8,0x2D,0x6B,0x18,0x86,0xC4,0x94, ++ 0x22,0xA5,0x52,0x8D,0xF6,0xF6,0xD2,0x37,0x92,0x0F,0xA5,0xCC, ++ 0xDB,0x7B,0x1D,0x3D,0xA1,0x31,0xB7,0x80,0x8F,0x0B,0x67,0x5E, ++ 0x36,0xA5,0x60,0x0C,0xF1,0x95,0x33,0x8B, ++ }; ++ static unsigned char dh1024_g[]={ ++ 0x02, ++ }; ++ + DH *dh = DH_new(); + if (dh) { +-#if OPENSSL_VERSION_NUMBER >= 0x0090801fL +- dh->p = get_rfc2409_prime_1024(NULL); +-#else +- dh->p = BN_bin2bn(rfc_2409_prime_1024, sizeof rfc_2409_prime_1024, NULL); +-#endif +- /* See RFC 2409, Section 6 "Oakley Groups" +- for the reason why 2 is used as generator. +- */ +- BN_dec2bn(&dh->g, "2"); ++ dh->p = BN_bin2bn(dh1024_p, sizeof dh1024_p, NULL); ++ dh->g = BN_bin2bn(dh1024_g, sizeof dh1024_g, NULL); ++ + if (!dh->p || !dh->g) { + DH_free(dh); + dh = NULL; +@@ -802,43 +797,39 @@ static DH * ssl_get_dh_1024(void) + + static DH *ssl_get_dh_2048(void) + { +-#if OPENSSL_VERSION_NUMBER < 0x0090801fL +- static const unsigned char rfc_3526_prime_2048[] = { +- 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xC9,0x0F,0xDA,0xA2, +- 0x21,0x68,0xC2,0x34,0xC4,0xC6,0x62,0x8B,0x80,0xDC,0x1C,0xD1, +- 0x29,0x02,0x4E,0x08,0x8A,0x67,0xCC,0x74,0x02,0x0B,0xBE,0xA6, +- 0x3B,0x13,0x9B,0x22,0x51,0x4A,0x08,0x79,0x8E,0x34,0x04,0xDD, +- 0xEF,0x95,0x19,0xB3,0xCD,0x3A,0x43,0x1B,0x30,0x2B,0x0A,0x6D, +- 0xF2,0x5F,0x14,0x37,0x4F,0xE1,0x35,0x6D,0x6D,0x51,0xC2,0x45, +- 0xE4,0x85,0xB5,0x76,0x62,0x5E,0x7E,0xC6,0xF4,0x4C,0x42,0xE9, +- 0xA6,0x37,0xED,0x6B,0x0B,0xFF,0x5C,0xB6,0xF4,0x06,0xB7,0xED, +- 0xEE,0x38,0x6B,0xFB,0x5A,0x89,0x9F,0xA5,0xAE,0x9F,0x24,0x11, +- 0x7C,0x4B,0x1F,0xE6,0x49,0x28,0x66,0x51,0xEC,0xE4,0x5B,0x3D, +- 0xC2,0x00,0x7C,0xB8,0xA1,0x63,0xBF,0x05,0x98,0xDA,0x48,0x36, +- 0x1C,0x55,0xD3,0x9A,0x69,0x16,0x3F,0xA8,0xFD,0x24,0xCF,0x5F, +- 0x83,0x65,0x5D,0x23,0xDC,0xA3,0xAD,0x96,0x1C,0x62,0xF3,0x56, +- 0x20,0x85,0x52,0xBB,0x9E,0xD5,0x29,0x07,0x70,0x96,0x96,0x6D, +- 0x67,0x0C,0x35,0x4E,0x4A,0xBC,0x98,0x04,0xF1,0x74,0x6C,0x08, +- 0xCA,0x18,0x21,0x7C,0x32,0x90,0x5E,0x46,0x2E,0x36,0xCE,0x3B, +- 0xE3,0x9E,0x77,0x2C,0x18,0x0E,0x86,0x03,0x9B,0x27,0x83,0xA2, +- 0xEC,0x07,0xA2,0x8F,0xB5,0xC5,0x5D,0xF0,0x6F,0x4C,0x52,0xC9, +- 0xDE,0x2B,0xCB,0xF6,0x95,0x58,0x17,0x18,0x39,0x95,0x49,0x7C, +- 0xEA,0x95,0x6A,0xE5,0x15,0xD2,0x26,0x18,0x98,0xFA,0x05,0x10, +- 0x15,0x72,0x8E,0x5A,0x8A,0xAC,0xAA,0x68,0xFF,0xFF,0xFF,0xFF, +- 0xFF,0xFF,0xFF,0xFF, +- }; +-#endif ++ static unsigned char dh2048_p[]={ ++ 0xEC,0x86,0xF8,0x70,0xA0,0x33,0x16,0xEC,0x05,0x1A,0x73,0x59, ++ 0xCD,0x1F,0x8B,0xF8,0x29,0xE4,0xD2,0xCF,0x52,0xDD,0xC2,0x24, ++ 0x8D,0xB5,0x38,0x9A,0xFB,0x5C,0xA4,0xE4,0xB2,0xDA,0xCE,0x66, ++ 0x50,0x74,0xA6,0x85,0x4D,0x4B,0x1D,0x30,0xB8,0x2B,0xF3,0x10, ++ 0xE9,0xA7,0x2D,0x05,0x71,0xE7,0x81,0xDF,0x8B,0x59,0x52,0x3B, ++ 0x5F,0x43,0x0B,0x68,0xF1,0xDB,0x07,0xBE,0x08,0x6B,0x1B,0x23, ++ 0xEE,0x4D,0xCC,0x9E,0x0E,0x43,0xA0,0x1E,0xDF,0x43,0x8C,0xEC, ++ 0xBE,0xBE,0x90,0xB4,0x51,0x54,0xB9,0x2F,0x7B,0x64,0x76,0x4E, ++ 0x5D,0xD4,0x2E,0xAE,0xC2,0x9E,0xAE,0x51,0x43,0x59,0xC7,0x77, ++ 0x9C,0x50,0x3C,0x0E,0xED,0x73,0x04,0x5F,0xF1,0x4C,0x76,0x2A, ++ 0xD8,0xF8,0xCF,0xFC,0x34,0x40,0xD1,0xB4,0x42,0x61,0x84,0x66, ++ 0x42,0x39,0x04,0xF8,0x68,0xB2,0x62,0xD7,0x55,0xED,0x1B,0x74, ++ 0x75,0x91,0xE0,0xC5,0x69,0xC1,0x31,0x5C,0xDB,0x7B,0x44,0x2E, ++ 0xCE,0x84,0x58,0x0D,0x1E,0x66,0x0C,0xC8,0x44,0x9E,0xFD,0x40, ++ 0x08,0x67,0x5D,0xFB,0xA7,0x76,0x8F,0x00,0x11,0x87,0xE9,0x93, ++ 0xF9,0x7D,0xC4,0xBC,0x74,0x55,0x20,0xD4,0x4A,0x41,0x2F,0x43, ++ 0x42,0x1A,0xC1,0xF2,0x97,0x17,0x49,0x27,0x37,0x6B,0x2F,0x88, ++ 0x7E,0x1C,0xA0,0xA1,0x89,0x92,0x27,0xD9,0x56,0x5A,0x71,0xC1, ++ 0x56,0x37,0x7E,0x3A,0x9D,0x05,0xE7,0xEE,0x5D,0x8F,0x82,0x17, ++ 0xBC,0xE9,0xC2,0x93,0x30,0x82,0xF9,0xF4,0xC9,0xAE,0x49,0xDB, ++ 0xD0,0x54,0xB4,0xD9,0x75,0x4D,0xFA,0x06,0xB8,0xD6,0x38,0x41, ++ 0xB7,0x1F,0x77,0xF3, ++ }; ++ static unsigned char dh2048_g[]={ ++ 0x02, ++ }; ++ + DH *dh = DH_new(); + if (dh) { +-#if OPENSSL_VERSION_NUMBER >= 0x0090801fL +- dh->p = get_rfc3526_prime_2048(NULL); +-#else +- dh->p = BN_bin2bn(rfc_3526_prime_2048, sizeof rfc_3526_prime_2048, NULL); +-#endif +- /* See RFC 3526, Section 3 "2048-bit MODP Group" +- for the reason why 2 is used as generator. +- */ +- BN_dec2bn(&dh->g, "2"); ++ dh->p = BN_bin2bn(dh2048_p, sizeof dh2048_p, NULL); ++ dh->g = BN_bin2bn(dh2048_g, sizeof dh2048_g, NULL); ++ + if (!dh->p || !dh->g) { + DH_free(dh); + dh = NULL; +@@ -849,175 +840,60 @@ static DH *ssl_get_dh_2048(void) + + static DH *ssl_get_dh_4096(void) + { +-#if OPENSSL_VERSION_NUMBER < 0x0090801fL +- static const unsigned char rfc_3526_prime_4096[] = { +- 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xC9,0x0F,0xDA,0xA2, +- 0x21,0x68,0xC2,0x34,0xC4,0xC6,0x62,0x8B,0x80,0xDC,0x1C,0xD1, +- 0x29,0x02,0x4E,0x08,0x8A,0x67,0xCC,0x74,0x02,0x0B,0xBE,0xA6, +- 0x3B,0x13,0x9B,0x22,0x51,0x4A,0x08,0x79,0x8E,0x34,0x04,0xDD, +- 0xEF,0x95,0x19,0xB3,0xCD,0x3A,0x43,0x1B,0x30,0x2B,0x0A,0x6D, +- 0xF2,0x5F,0x14,0x37,0x4F,0xE1,0x35,0x6D,0x6D,0x51,0xC2,0x45, +- 0xE4,0x85,0xB5,0x76,0x62,0x5E,0x7E,0xC6,0xF4,0x4C,0x42,0xE9, +- 0xA6,0x37,0xED,0x6B,0x0B,0xFF,0x5C,0xB6,0xF4,0x06,0xB7,0xED, +- 0xEE,0x38,0x6B,0xFB,0x5A,0x89,0x9F,0xA5,0xAE,0x9F,0x24,0x11, +- 0x7C,0x4B,0x1F,0xE6,0x49,0x28,0x66,0x51,0xEC,0xE4,0x5B,0x3D, +- 0xC2,0x00,0x7C,0xB8,0xA1,0x63,0xBF,0x05,0x98,0xDA,0x48,0x36, +- 0x1C,0x55,0xD3,0x9A,0x69,0x16,0x3F,0xA8,0xFD,0x24,0xCF,0x5F, +- 0x83,0x65,0x5D,0x23,0xDC,0xA3,0xAD,0x96,0x1C,0x62,0xF3,0x56, +- 0x20,0x85,0x52,0xBB,0x9E,0xD5,0x29,0x07,0x70,0x96,0x96,0x6D, +- 0x67,0x0C,0x35,0x4E,0x4A,0xBC,0x98,0x04,0xF1,0x74,0x6C,0x08, +- 0xCA,0x18,0x21,0x7C,0x32,0x90,0x5E,0x46,0x2E,0x36,0xCE,0x3B, +- 0xE3,0x9E,0x77,0x2C,0x18,0x0E,0x86,0x03,0x9B,0x27,0x83,0xA2, +- 0xEC,0x07,0xA2,0x8F,0xB5,0xC5,0x5D,0xF0,0x6F,0x4C,0x52,0xC9, +- 0xDE,0x2B,0xCB,0xF6,0x95,0x58,0x17,0x18,0x39,0x95,0x49,0x7C, +- 0xEA,0x95,0x6A,0xE5,0x15,0xD2,0x26,0x18,0x98,0xFA,0x05,0x10, +- 0x15,0x72,0x8E,0x5A,0x8A,0xAA,0xC4,0x2D,0xAD,0x33,0x17,0x0D, +- 0x04,0x50,0x7A,0x33,0xA8,0x55,0x21,0xAB,0xDF,0x1C,0xBA,0x64, +- 0xEC,0xFB,0x85,0x04,0x58,0xDB,0xEF,0x0A,0x8A,0xEA,0x71,0x57, +- 0x5D,0x06,0x0C,0x7D,0xB3,0x97,0x0F,0x85,0xA6,0xE1,0xE4,0xC7, +- 0xAB,0xF5,0xAE,0x8C,0xDB,0x09,0x33,0xD7,0x1E,0x8C,0x94,0xE0, +- 0x4A,0x25,0x61,0x9D,0xCE,0xE3,0xD2,0x26,0x1A,0xD2,0xEE,0x6B, +- 0xF1,0x2F,0xFA,0x06,0xD9,0x8A,0x08,0x64,0xD8,0x76,0x02,0x73, +- 0x3E,0xC8,0x6A,0x64,0x52,0x1F,0x2B,0x18,0x17,0x7B,0x20,0x0C, +- 0xBB,0xE1,0x17,0x57,0x7A,0x61,0x5D,0x6C,0x77,0x09,0x88,0xC0, +- 0xBA,0xD9,0x46,0xE2,0x08,0xE2,0x4F,0xA0,0x74,0xE5,0xAB,0x31, +- 0x43,0xDB,0x5B,0xFC,0xE0,0xFD,0x10,0x8E,0x4B,0x82,0xD1,0x20, +- 0xA9,0x21,0x08,0x01,0x1A,0x72,0x3C,0x12,0xA7,0x87,0xE6,0xD7, +- 0x88,0x71,0x9A,0x10,0xBD,0xBA,0x5B,0x26,0x99,0xC3,0x27,0x18, +- 0x6A,0xF4,0xE2,0x3C,0x1A,0x94,0x68,0x34,0xB6,0x15,0x0B,0xDA, +- 0x25,0x83,0xE9,0xCA,0x2A,0xD4,0x4C,0xE8,0xDB,0xBB,0xC2,0xDB, +- 0x04,0xDE,0x8E,0xF9,0x2E,0x8E,0xFC,0x14,0x1F,0xBE,0xCA,0xA6, +- 0x28,0x7C,0x59,0x47,0x4E,0x6B,0xC0,0x5D,0x99,0xB2,0x96,0x4F, +- 0xA0,0x90,0xC3,0xA2,0x23,0x3B,0xA1,0x86,0x51,0x5B,0xE7,0xED, +- 0x1F,0x61,0x29,0x70,0xCE,0xE2,0xD7,0xAF,0xB8,0x1B,0xDD,0x76, +- 0x21,0x70,0x48,0x1C,0xD0,0x06,0x91,0x27,0xD5,0xB0,0x5A,0xA9, +- 0x93,0xB4,0xEA,0x98,0x8D,0x8F,0xDD,0xC1,0x86,0xFF,0xB7,0xDC, +- 0x90,0xA6,0xC0,0x8F,0x4D,0xF4,0x35,0xC9,0x34,0x06,0x31,0x99, +- 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF, ++ static unsigned char dh4096_p[]={ ++ 0xDE,0x16,0x94,0xCD,0x99,0x58,0x07,0xF1,0xF7,0x32,0x96,0x11, ++ 0x04,0x82,0xD4,0x84,0x72,0x80,0x99,0x06,0xCA,0xF0,0xA3,0x68, ++ 0x07,0xCE,0x64,0x50,0xE7,0x74,0x45,0x20,0x80,0x5E,0x4D,0xAD, ++ 0xA5,0xB6,0xED,0xFA,0x80,0x6C,0x3B,0x35,0xC4,0x9A,0x14,0x6B, ++ 0x32,0xBB,0xFD,0x1F,0x17,0x8E,0xB7,0x1F,0xD6,0xFA,0x3F,0x7B, ++ 0xEE,0x16,0xA5,0x62,0x33,0x0D,0xED,0xBC,0x4E,0x58,0xE5,0x47, ++ 0x4D,0xE9,0xAB,0x8E,0x38,0xD3,0x6E,0x90,0x57,0xE3,0x22,0x15, ++ 0x33,0xBD,0xF6,0x43,0x45,0xB5,0x10,0x0A,0xBE,0x2C,0xB4,0x35, ++ 0xB8,0x53,0x8D,0xAD,0xFB,0xA7,0x1F,0x85,0x58,0x41,0x7A,0x79, ++ 0x20,0x68,0xB3,0xE1,0x3D,0x08,0x76,0xBF,0x86,0x0D,0x49,0xE3, ++ 0x82,0x71,0x8C,0xB4,0x8D,0x81,0x84,0xD4,0xE7,0xBE,0x91,0xDC, ++ 0x26,0x39,0x48,0x0F,0x35,0xC4,0xCA,0x65,0xE3,0x40,0x93,0x52, ++ 0x76,0x58,0x7D,0xDD,0x51,0x75,0xDC,0x69,0x61,0xBF,0x47,0x2C, ++ 0x16,0x68,0x2D,0xC9,0x29,0xD3,0xE6,0xC0,0x99,0x48,0xA0,0x9A, ++ 0xC8,0x78,0xC0,0x6D,0x81,0x67,0x12,0x61,0x3F,0x71,0xBA,0x41, ++ 0x1F,0x6C,0x89,0x44,0x03,0xBA,0x3B,0x39,0x60,0xAA,0x28,0x55, ++ 0x59,0xAE,0xB8,0xFA,0xCB,0x6F,0xA5,0x1A,0xF7,0x2B,0xDD,0x52, ++ 0x8A,0x8B,0xE2,0x71,0xA6,0x5E,0x7E,0xD8,0x2E,0x18,0xE0,0x66, ++ 0xDF,0xDD,0x22,0x21,0x99,0x52,0x73,0xA6,0x33,0x20,0x65,0x0E, ++ 0x53,0xE7,0x6B,0x9B,0xC5,0xA3,0x2F,0x97,0x65,0x76,0xD3,0x47, ++ 0x23,0x77,0x12,0xB6,0x11,0x7B,0x24,0xED,0xF1,0xEF,0xC0,0xE2, ++ 0xA3,0x7E,0x67,0x05,0x3E,0x96,0x4D,0x45,0xC2,0x18,0xD1,0x73, ++ 0x9E,0x07,0xF3,0x81,0x6E,0x52,0x63,0xF6,0x20,0x76,0xB9,0x13, ++ 0xD2,0x65,0x30,0x18,0x16,0x09,0x16,0x9E,0x8F,0xF1,0xD2,0x10, ++ 0x5A,0xD3,0xD4,0xAF,0x16,0x61,0xDA,0x55,0x2E,0x18,0x5E,0x14, ++ 0x08,0x54,0x2E,0x2A,0x25,0xA2,0x1A,0x9B,0x8B,0x32,0xA9,0xFD, ++ 0xC2,0x48,0x96,0xE1,0x80,0xCA,0xE9,0x22,0x17,0xBB,0xCE,0x3E, ++ 0x9E,0xED,0xC7,0xF1,0x1F,0xEC,0x17,0x21,0xDC,0x7B,0x82,0x48, ++ 0x8E,0xBB,0x4B,0x9D,0x5B,0x04,0x04,0xDA,0xDB,0x39,0xDF,0x01, ++ 0x40,0xC3,0xAA,0x26,0x23,0x89,0x75,0xC6,0x0B,0xD0,0xA2,0x60, ++ 0x6A,0xF1,0xCC,0x65,0x18,0x98,0x1B,0x52,0xD2,0x74,0x61,0xCC, ++ 0xBD,0x60,0xAE,0xA3,0xA0,0x66,0x6A,0x16,0x34,0x92,0x3F,0x41, ++ 0x40,0x31,0x29,0xC0,0x2C,0x63,0xB2,0x07,0x8D,0xEB,0x94,0xB8, ++ 0xE8,0x47,0x92,0x52,0x93,0x6A,0x1B,0x7E,0x1A,0x61,0xB3,0x1B, ++ 0xF0,0xD6,0x72,0x9B,0xF1,0xB0,0xAF,0xBF,0x3E,0x65,0xEF,0x23, ++ 0x1D,0x6F,0xFF,0x70,0xCD,0x8A,0x4C,0x8A,0xA0,0x72,0x9D,0xBE, ++ 0xD4,0xBB,0x24,0x47,0x4A,0x68,0xB5,0xF5,0xC6,0xD5,0x7A,0xCD, ++ 0xCA,0x06,0x41,0x07,0xAD,0xC2,0x1E,0xE6,0x54,0xA7,0xAD,0x03, ++ 0xD9,0x12,0xC1,0x9C,0x13,0xB1,0xC9,0x0A,0x43,0x8E,0x1E,0x08, ++ 0xCE,0x50,0x82,0x73,0x5F,0xA7,0x55,0x1D,0xD9,0x59,0xAC,0xB5, ++ 0xEA,0x02,0x7F,0x6C,0x5B,0x74,0x96,0x98,0x67,0x24,0xA3,0x0F, ++ 0x15,0xFC,0xA9,0x7D,0x3E,0x67,0xD1,0x70,0xF8,0x97,0xF3,0x67, ++ 0xC5,0x8C,0x88,0x44,0x08,0x02,0xC7,0x2B, + }; +-#endif +- DH *dh = DH_new(); +- if (dh) { +-#if OPENSSL_VERSION_NUMBER >= 0x0090801fL +- dh->p = get_rfc3526_prime_4096(NULL); +-#else +- dh->p = BN_bin2bn(rfc_3526_prime_4096, sizeof rfc_3526_prime_4096, NULL); +-#endif +- /* See RFC 3526, Section 5 "4096-bit MODP Group" +- for the reason why 2 is used as generator. +- */ +- BN_dec2bn(&dh->g, "2"); +- if (!dh->p || !dh->g) { +- DH_free(dh); +- dh = NULL; +- } +- } +- return dh; +-} ++ static unsigned char dh4096_g[]={ ++ 0x02, ++ }; + +-static DH *ssl_get_dh_8192(void) +-{ +-#if OPENSSL_VERSION_NUMBER < 0x0090801fL +- static const unsigned char rfc_3526_prime_8192[] = { +- 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xC9,0x0F,0xDA,0xA2, +- 0x21,0x68,0xC2,0x34,0xC4,0xC6,0x62,0x8B,0x80,0xDC,0x1C,0xD1, +- 0x29,0x02,0x4E,0x08,0x8A,0x67,0xCC,0x74,0x02,0x0B,0xBE,0xA6, +- 0x3B,0x13,0x9B,0x22,0x51,0x4A,0x08,0x79,0x8E,0x34,0x04,0xDD, +- 0xEF,0x95,0x19,0xB3,0xCD,0x3A,0x43,0x1B,0x30,0x2B,0x0A,0x6D, +- 0xF2,0x5F,0x14,0x37,0x4F,0xE1,0x35,0x6D,0x6D,0x51,0xC2,0x45, +- 0xE4,0x85,0xB5,0x76,0x62,0x5E,0x7E,0xC6,0xF4,0x4C,0x42,0xE9, +- 0xA6,0x37,0xED,0x6B,0x0B,0xFF,0x5C,0xB6,0xF4,0x06,0xB7,0xED, +- 0xEE,0x38,0x6B,0xFB,0x5A,0x89,0x9F,0xA5,0xAE,0x9F,0x24,0x11, +- 0x7C,0x4B,0x1F,0xE6,0x49,0x28,0x66,0x51,0xEC,0xE4,0x5B,0x3D, +- 0xC2,0x00,0x7C,0xB8,0xA1,0x63,0xBF,0x05,0x98,0xDA,0x48,0x36, +- 0x1C,0x55,0xD3,0x9A,0x69,0x16,0x3F,0xA8,0xFD,0x24,0xCF,0x5F, +- 0x83,0x65,0x5D,0x23,0xDC,0xA3,0xAD,0x96,0x1C,0x62,0xF3,0x56, +- 0x20,0x85,0x52,0xBB,0x9E,0xD5,0x29,0x07,0x70,0x96,0x96,0x6D, +- 0x67,0x0C,0x35,0x4E,0x4A,0xBC,0x98,0x04,0xF1,0x74,0x6C,0x08, +- 0xCA,0x18,0x21,0x7C,0x32,0x90,0x5E,0x46,0x2E,0x36,0xCE,0x3B, +- 0xE3,0x9E,0x77,0x2C,0x18,0x0E,0x86,0x03,0x9B,0x27,0x83,0xA2, +- 0xEC,0x07,0xA2,0x8F,0xB5,0xC5,0x5D,0xF0,0x6F,0x4C,0x52,0xC9, +- 0xDE,0x2B,0xCB,0xF6,0x95,0x58,0x17,0x18,0x39,0x95,0x49,0x7C, +- 0xEA,0x95,0x6A,0xE5,0x15,0xD2,0x26,0x18,0x98,0xFA,0x05,0x10, +- 0x15,0x72,0x8E,0x5A,0x8A,0xAA,0xC4,0x2D,0xAD,0x33,0x17,0x0D, +- 0x04,0x50,0x7A,0x33,0xA8,0x55,0x21,0xAB,0xDF,0x1C,0xBA,0x64, +- 0xEC,0xFB,0x85,0x04,0x58,0xDB,0xEF,0x0A,0x8A,0xEA,0x71,0x57, +- 0x5D,0x06,0x0C,0x7D,0xB3,0x97,0x0F,0x85,0xA6,0xE1,0xE4,0xC7, +- 0xAB,0xF5,0xAE,0x8C,0xDB,0x09,0x33,0xD7,0x1E,0x8C,0x94,0xE0, +- 0x4A,0x25,0x61,0x9D,0xCE,0xE3,0xD2,0x26,0x1A,0xD2,0xEE,0x6B, +- 0xF1,0x2F,0xFA,0x06,0xD9,0x8A,0x08,0x64,0xD8,0x76,0x02,0x73, +- 0x3E,0xC8,0x6A,0x64,0x52,0x1F,0x2B,0x18,0x17,0x7B,0x20,0x0C, +- 0xBB,0xE1,0x17,0x57,0x7A,0x61,0x5D,0x6C,0x77,0x09,0x88,0xC0, +- 0xBA,0xD9,0x46,0xE2,0x08,0xE2,0x4F,0xA0,0x74,0xE5,0xAB,0x31, +- 0x43,0xDB,0x5B,0xFC,0xE0,0xFD,0x10,0x8E,0x4B,0x82,0xD1,0x20, +- 0xA9,0x21,0x08,0x01,0x1A,0x72,0x3C,0x12,0xA7,0x87,0xE6,0xD7, +- 0x88,0x71,0x9A,0x10,0xBD,0xBA,0x5B,0x26,0x99,0xC3,0x27,0x18, +- 0x6A,0xF4,0xE2,0x3C,0x1A,0x94,0x68,0x34,0xB6,0x15,0x0B,0xDA, +- 0x25,0x83,0xE9,0xCA,0x2A,0xD4,0x4C,0xE8,0xDB,0xBB,0xC2,0xDB, +- 0x04,0xDE,0x8E,0xF9,0x2E,0x8E,0xFC,0x14,0x1F,0xBE,0xCA,0xA6, +- 0x28,0x7C,0x59,0x47,0x4E,0x6B,0xC0,0x5D,0x99,0xB2,0x96,0x4F, +- 0xA0,0x90,0xC3,0xA2,0x23,0x3B,0xA1,0x86,0x51,0x5B,0xE7,0xED, +- 0x1F,0x61,0x29,0x70,0xCE,0xE2,0xD7,0xAF,0xB8,0x1B,0xDD,0x76, +- 0x21,0x70,0x48,0x1C,0xD0,0x06,0x91,0x27,0xD5,0xB0,0x5A,0xA9, +- 0x93,0xB4,0xEA,0x98,0x8D,0x8F,0xDD,0xC1,0x86,0xFF,0xB7,0xDC, +- 0x90,0xA6,0xC0,0x8F,0x4D,0xF4,0x35,0xC9,0x34,0x02,0x84,0x92, +- 0x36,0xC3,0xFA,0xB4,0xD2,0x7C,0x70,0x26,0xC1,0xD4,0xDC,0xB2, +- 0x60,0x26,0x46,0xDE,0xC9,0x75,0x1E,0x76,0x3D,0xBA,0x37,0xBD, +- 0xF8,0xFF,0x94,0x06,0xAD,0x9E,0x53,0x0E,0xE5,0xDB,0x38,0x2F, +- 0x41,0x30,0x01,0xAE,0xB0,0x6A,0x53,0xED,0x90,0x27,0xD8,0x31, +- 0x17,0x97,0x27,0xB0,0x86,0x5A,0x89,0x18,0xDA,0x3E,0xDB,0xEB, +- 0xCF,0x9B,0x14,0xED,0x44,0xCE,0x6C,0xBA,0xCE,0xD4,0xBB,0x1B, +- 0xDB,0x7F,0x14,0x47,0xE6,0xCC,0x25,0x4B,0x33,0x20,0x51,0x51, +- 0x2B,0xD7,0xAF,0x42,0x6F,0xB8,0xF4,0x01,0x37,0x8C,0xD2,0xBF, +- 0x59,0x83,0xCA,0x01,0xC6,0x4B,0x92,0xEC,0xF0,0x32,0xEA,0x15, +- 0xD1,0x72,0x1D,0x03,0xF4,0x82,0xD7,0xCE,0x6E,0x74,0xFE,0xF6, +- 0xD5,0x5E,0x70,0x2F,0x46,0x98,0x0C,0x82,0xB5,0xA8,0x40,0x31, +- 0x90,0x0B,0x1C,0x9E,0x59,0xE7,0xC9,0x7F,0xBE,0xC7,0xE8,0xF3, +- 0x23,0xA9,0x7A,0x7E,0x36,0xCC,0x88,0xBE,0x0F,0x1D,0x45,0xB7, +- 0xFF,0x58,0x5A,0xC5,0x4B,0xD4,0x07,0xB2,0x2B,0x41,0x54,0xAA, +- 0xCC,0x8F,0x6D,0x7E,0xBF,0x48,0xE1,0xD8,0x14,0xCC,0x5E,0xD2, +- 0x0F,0x80,0x37,0xE0,0xA7,0x97,0x15,0xEE,0xF2,0x9B,0xE3,0x28, +- 0x06,0xA1,0xD5,0x8B,0xB7,0xC5,0xDA,0x76,0xF5,0x50,0xAA,0x3D, +- 0x8A,0x1F,0xBF,0xF0,0xEB,0x19,0xCC,0xB1,0xA3,0x13,0xD5,0x5C, +- 0xDA,0x56,0xC9,0xEC,0x2E,0xF2,0x96,0x32,0x38,0x7F,0xE8,0xD7, +- 0x6E,0x3C,0x04,0x68,0x04,0x3E,0x8F,0x66,0x3F,0x48,0x60,0xEE, +- 0x12,0xBF,0x2D,0x5B,0x0B,0x74,0x74,0xD6,0xE6,0x94,0xF9,0x1E, +- 0x6D,0xBE,0x11,0x59,0x74,0xA3,0x92,0x6F,0x12,0xFE,0xE5,0xE4, +- 0x38,0x77,0x7C,0xB6,0xA9,0x32,0xDF,0x8C,0xD8,0xBE,0xC4,0xD0, +- 0x73,0xB9,0x31,0xBA,0x3B,0xC8,0x32,0xB6,0x8D,0x9D,0xD3,0x00, +- 0x74,0x1F,0xA7,0xBF,0x8A,0xFC,0x47,0xED,0x25,0x76,0xF6,0x93, +- 0x6B,0xA4,0x24,0x66,0x3A,0xAB,0x63,0x9C,0x5A,0xE4,0xF5,0x68, +- 0x34,0x23,0xB4,0x74,0x2B,0xF1,0xC9,0x78,0x23,0x8F,0x16,0xCB, +- 0xE3,0x9D,0x65,0x2D,0xE3,0xFD,0xB8,0xBE,0xFC,0x84,0x8A,0xD9, +- 0x22,0x22,0x2E,0x04,0xA4,0x03,0x7C,0x07,0x13,0xEB,0x57,0xA8, +- 0x1A,0x23,0xF0,0xC7,0x34,0x73,0xFC,0x64,0x6C,0xEA,0x30,0x6B, +- 0x4B,0xCB,0xC8,0x86,0x2F,0x83,0x85,0xDD,0xFA,0x9D,0x4B,0x7F, +- 0xA2,0xC0,0x87,0xE8,0x79,0x68,0x33,0x03,0xED,0x5B,0xDD,0x3A, +- 0x06,0x2B,0x3C,0xF5,0xB3,0xA2,0x78,0xA6,0x6D,0x2A,0x13,0xF8, +- 0x3F,0x44,0xF8,0x2D,0xDF,0x31,0x0E,0xE0,0x74,0xAB,0x6A,0x36, +- 0x45,0x97,0xE8,0x99,0xA0,0x25,0x5D,0xC1,0x64,0xF3,0x1C,0xC5, +- 0x08,0x46,0x85,0x1D,0xF9,0xAB,0x48,0x19,0x5D,0xED,0x7E,0xA1, +- 0xB1,0xD5,0x10,0xBD,0x7E,0xE7,0x4D,0x73,0xFA,0xF3,0x6B,0xC3, +- 0x1E,0xCF,0xA2,0x68,0x35,0x90,0x46,0xF4,0xEB,0x87,0x9F,0x92, +- 0x40,0x09,0x43,0x8B,0x48,0x1C,0x6C,0xD7,0x88,0x9A,0x00,0x2E, +- 0xD5,0xEE,0x38,0x2B,0xC9,0x19,0x0D,0xA6,0xFC,0x02,0x6E,0x47, +- 0x95,0x58,0xE4,0x47,0x56,0x77,0xE9,0xAA,0x9E,0x30,0x50,0xE2, +- 0x76,0x56,0x94,0xDF,0xC8,0x1F,0x56,0xE8,0x80,0xB9,0x6E,0x71, +- 0x60,0xC9,0x80,0xDD,0x98,0xED,0xD3,0xDF,0xFF,0xFF,0xFF,0xFF, +- 0xFF,0xFF,0xFF,0xFF, +- }; +-#endif + DH *dh = DH_new(); + if (dh) { +-#if OPENSSL_VERSION_NUMBER >= 0x0090801fL +- dh->p = get_rfc3526_prime_8192(NULL); +-#else +- dh->p = BN_bin2bn(rfc_3526_prime_8192, sizeof rfc_3526_prime_8192, NULL); +-#endif +- /* See RFC 3526, Section 7 "8192-bit MODP Group" +- for the reason why 2 is used as generator. +- */ +- BN_dec2bn(&dh->g, "2"); ++ dh->p = BN_bin2bn(dh4096_p, sizeof dh4096_p, NULL); ++ dh->g = BN_bin2bn(dh4096_g, sizeof dh4096_g, NULL); ++ + if (!dh->p || !dh->g) { + DH_free(dh); + dh = NULL; +@@ -1045,10 +921,7 @@ static DH *ssl_get_tmp_dh(SSL *ssl, int export, int keylen) + keylen = global.tune.ssl_default_dh_param; + } + +- if (keylen >= 8192) { +- dh = local_dh_8192; +- } +- else if (keylen >= 4096) { ++ if (keylen >= 4096) { + dh = local_dh_4096; + } + else if (keylen >= 2048) { +@@ -1643,10 +1516,6 @@ int ssl_sock_prepare_ctx(struct bind_conf *bind_conf, SSL_CTX *ctx, struct proxy + if (local_dh_4096 == NULL) { + local_dh_4096 = ssl_get_dh_4096(); + } +- if (global.tune.ssl_default_dh_param >= 8192 && +- local_dh_8192 == NULL) { +- local_dh_8192 = ssl_get_dh_8192(); +- } + } + } + } +@@ -4753,11 +4622,6 @@ static void __ssl_sock_deinit(void) + DH_free(local_dh_4096); + local_dh_4096 = NULL; + } +- +- if (local_dh_8192) { +- DH_free(local_dh_8192); +- local_dh_8192 = NULL; +- } + #endif + + ERR_remove_state(0); +-- +2.3.6 + diff --git a/net/haproxy/patches/0016-BUG-MINOR-debug-display-null-in-place-of-meth.patch b/net/haproxy/patches/0016-BUG-MINOR-debug-display-null-in-place-of-meth.patch new file mode 100644 index 000000000..f40d72317 --- /dev/null +++ b/net/haproxy/patches/0016-BUG-MINOR-debug-display-null-in-place-of-meth.patch @@ -0,0 +1,28 @@ +From c51fe0fb249db735c5b103ec99559a0254d58441 Mon Sep 17 00:00:00 2001 +From: Thierry FOURNIER +Date: Wed, 3 Jun 2015 20:12:04 +0200 +Subject: [PATCH 16/18] BUG/MINOR: debug: display (null) in place of "meth" + +The array which contains names of types, miss the METH entry. + +[wt: should be backported to 1.5 as well] +(cherry picked from commit 4c2479e1c455e2cc46c02cfc28ea2a185f9a7747) +--- + src/sample.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/src/sample.c b/src/sample.c +index 87c9f60..59c80b2 100644 +--- a/src/sample.c ++++ b/src/sample.c +@@ -40,6 +40,7 @@ const char *smp_to_type[SMP_TYPES] = { + [SMP_T_IPV6] = "ipv6", + [SMP_T_STR] = "str", + [SMP_T_BIN] = "bin", ++ [SMP_T_METH] = "meth", + }; + + /* static sample used in sample_process() when

is NULL */ +-- +2.3.6 + diff --git a/net/haproxy/patches/0017-CLEANUP-deinit-remove-codes-for-cleaning-p-block_rul.patch b/net/haproxy/patches/0017-CLEANUP-deinit-remove-codes-for-cleaning-p-block_rul.patch new file mode 100644 index 000000000..bbacca4af --- /dev/null +++ b/net/haproxy/patches/0017-CLEANUP-deinit-remove-codes-for-cleaning-p-block_rul.patch @@ -0,0 +1,36 @@ +From 793a74065926b0da87120d4b1e6330234475505c Mon Sep 17 00:00:00 2001 +From: Godbach +Date: Tue, 9 Jun 2015 19:41:52 +0800 +Subject: [PATCH 17/18] CLEANUP: deinit: remove codes for cleaning + p->block_rules + +Since all rules listed in p->block_rules have been moved to the beginning of +the http-request rules in check_config_validity(), there is no need to clean +p->block_rules in deinit(). + +Signed-off-by: Godbach +(cherry picked from commit 28b48ccbc879a552f988e6e1db22941e3362b4db) +--- + src/haproxy.c | 6 ------ + 1 file changed, 6 deletions(-) + +diff --git a/src/haproxy.c b/src/haproxy.c +index 0dddd53..eac6f44 100644 +--- a/src/haproxy.c ++++ b/src/haproxy.c +@@ -1020,12 +1020,6 @@ void deinit(void) + free(cwl); + } + +- list_for_each_entry_safe(cond, condb, &p->block_rules, list) { +- LIST_DEL(&cond->list); +- prune_acl_cond(cond); +- free(cond); +- } +- + list_for_each_entry_safe(cond, condb, &p->mon_fail_cond, list) { + LIST_DEL(&cond->list); + prune_acl_cond(cond); +-- +2.3.6 + diff --git a/net/haproxy/patches/0018-BUG-MINOR-ssl-fix-smp_fetch_ssl_fc_session_id.patch b/net/haproxy/patches/0018-BUG-MINOR-ssl-fix-smp_fetch_ssl_fc_session_id.patch new file mode 100644 index 000000000..b6113a359 --- /dev/null +++ b/net/haproxy/patches/0018-BUG-MINOR-ssl-fix-smp_fetch_ssl_fc_session_id.patch @@ -0,0 +1,37 @@ +From 69760db11dfca4a8d8fbd34cec25c334f77add67 Mon Sep 17 00:00:00 2001 +From: Willy Tarreau +Date: Wed, 17 Jun 2015 18:34:14 +0200 +Subject: [PATCH 18/18] BUG/MINOR: ssl: fix smp_fetch_ssl_fc_session_id + +Dmitry Sivachenko reported the following build warning using Clang +which is a real bug : + +src/ssl_sock.c:4104:44: warning: address of 'smp->data.str.len' will always + evaluate to 'true' [-Wpointer-bool-conversion] + if (!smp->data.str.str || !&smp->data.str.len) + +The impact is very low however, it will return an empty session_id +instead of no session id when none is found. + +The fix should be backported to 1.5. +(cherry picked from commit 745d4127582a8c66e2e8ce35f746a78e867960af) +--- + src/ssl_sock.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/ssl_sock.c b/src/ssl_sock.c +index 93aab8b..7d77d36 100644 +--- a/src/ssl_sock.c ++++ b/src/ssl_sock.c +@@ -3540,7 +3540,7 @@ smp_fetch_ssl_fc_session_id(struct proxy *px, struct session *l4, void *l7, unsi + return 0; + + smp->data.str.str = (char *)SSL_SESSION_get_id(sess, (unsigned int *)&smp->data.str.len); +- if (!smp->data.str.str || !&smp->data.str.len) ++ if (!smp->data.str.str || !smp->data.str.len) + return 0; + + return 1; +-- +2.3.6 + From d4afd14ff1a7bfd2cf5e91e9a374497b1a5ca265 Mon Sep 17 00:00:00 2001 From: Nicolas Thill Date: Tue, 23 Jun 2015 01:06:36 +0200 Subject: [PATCH 647/681] erlang: fix musl compatibility gethostbyname_r is available when _GNU_SOURCE is defined, add a patch to check for it instead of __GLIBC__, build with -D_GNU_SOURCE, bump release number Signed-off-by: Nicolas Thill --- lang/erlang/Makefile | 5 ++++- lang/erlang/patches/102-musl_compat.patch | 11 +++++++++++ 2 files changed, 15 insertions(+), 1 deletion(-) create mode 100644 lang/erlang/patches/102-musl_compat.patch diff --git a/lang/erlang/Makefile b/lang/erlang/Makefile index 2423f374d..47c8b1198 100644 --- a/lang/erlang/Makefile +++ b/lang/erlang/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=erlang PKG_VERSION:=17.5 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE:=otp_src_$(PKG_VERSION).tar.gz PKG_SOURCE_URL:= http://www.erlang.org/download/ \ @@ -232,6 +232,8 @@ HOST_CONFIGURE_ARGS += \ --disable-smp-support \ --without-javac +HOST_CFLAGS += -D_GNU_SOURCE + define Host/Compile $(MAKE) -C $(HOST_BUILD_DIR) all endef @@ -257,6 +259,7 @@ CONFIGURE_VARS += \ erl_xcomp_getaddrinfo=no \ erl_xcomp_sysroot="$(STAGING_DIR)" +EXTRA_CFLAGS+=-D_GNU_SOURCE EXTRA_LDFLAGS+=-lz define Build/Compile diff --git a/lang/erlang/patches/102-musl_compat.patch b/lang/erlang/patches/102-musl_compat.patch new file mode 100644 index 000000000..d23900ed2 --- /dev/null +++ b/lang/erlang/patches/102-musl_compat.patch @@ -0,0 +1,11 @@ +--- a/lib/erl_interface/src/connect/ei_resolve.c ++++ b/lib/erl_interface/src/connect/ei_resolve.c +@@ -642,7 +642,7 @@ struct hostent *ei_gethostbyname_r(const + #ifndef HAVE_GETHOSTBYNAME_R + return my_gethostbyname_r(name,hostp,buffer,buflen,h_errnop); + #else +-#if (defined(__GLIBC__) || (__FreeBSD_version >= 602000) || defined(__DragonFly__) || defined(__ANDROID__)) ++#if (defined(_GNU_SOURCE) || (__FreeBSD_version >= 602000) || defined(__DragonFly__) || defined(__ANDROID__)) + struct hostent *result; + + gethostbyname_r(name, hostp, buffer, buflen, &result, h_errnop); From c665325f8cc2599905751a5fb63b59915e445dd7 Mon Sep 17 00:00:00 2001 From: Steven Barth Date: Tue, 23 Jun 2015 18:40:54 +0200 Subject: [PATCH 648/681] strongswan: add more exceptions to musl-fixes Signed-off-by: Steven Barth --- net/strongswan/patches/101-musl-fixes.patch | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/net/strongswan/patches/101-musl-fixes.patch b/net/strongswan/patches/101-musl-fixes.patch index 73b2d5a48..3b90e6cf2 100644 --- a/net/strongswan/patches/101-musl-fixes.patch +++ b/net/strongswan/patches/101-musl-fixes.patch @@ -10,7 +10,7 @@ --- /dev/null +++ b/src/libstrongswan/musl.h -@@ -0,0 +1,33 @@ +@@ -0,0 +1,39 @@ +#include + +#define crypt x_crypt @@ -25,6 +25,9 @@ +#define mode_t x_mode_t +#define uid_t x_uid_t +#define gid_t x_gid_t ++#define uint64_t x_uint64_t ++#define u_int64_t x_u_int64_t ++#define int64_t x_int64_t +#define nlink_t x_nlink_t +#define timer_t x_timer_t +#define blkcnt_t x_blkcnt_t @@ -39,6 +42,9 @@ +#undef mode_t +#undef uid_t +#undef gid_t ++#undef uint64_t ++#undef u_int64_t ++#undef int64_t +#undef nlink_t +#undef timer_t +#undef blkcnt_t From de68de3062444cf98ac533b130d4b2b98e236c16 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Christoph=20K=C3=B6nig?= Date: Wed, 24 Jun 2015 15:18:01 +0200 Subject: [PATCH 649/681] mpc: update to 0.27 Signed-off-by: Christoph Koenig --- sound/mpc/Makefile | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/sound/mpc/Makefile b/sound/mpc/Makefile index e6b62633a..3109b1c08 100644 --- a/sound/mpc/Makefile +++ b/sound/mpc/Makefile @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=mpc -PKG_VERSION:=0.26 -PKG_RELEASE:=2 +PKG_VERSION:=0.27 +PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=http://www.musicpd.org/download/mpc/0 -PKG_MD5SUM:=d4f37e7e6b32c804a870192d1eb86199 +PKG_MD5SUM:=d9430db9b9d7fb1eadbe4d13e8d97c66 PKG_LICENSE:=GPL-2.0+ PKG_LICENSE_FILES:=COPYING PKG_MAINTAINER:=Ted Hess From 5b6dbc15f5effd4666f07d65b91dfd5e898e4a26 Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Wed, 24 Jun 2015 16:03:45 +0200 Subject: [PATCH 650/681] hiredis: add new package Signed-off-by: Daniel Golle --- libs/hiredis/Makefile | 55 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 55 insertions(+) create mode 100644 libs/hiredis/Makefile diff --git a/libs/hiredis/Makefile b/libs/hiredis/Makefile new file mode 100644 index 000000000..31971b907 --- /dev/null +++ b/libs/hiredis/Makefile @@ -0,0 +1,55 @@ +# +# Copyright (C) 2010-2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=hiredis +PKG_VERSION:=0.13.1 +PKG_RELEASE:=1 + +PKG_SOURCE_PROTO:=git +PKG_SOURCE_URL:=https://github.com/redis/hiredis.git +PKG_SOURCE_VERSION:=f58dd249d6ed47a7e835463c3b04722972281dbb +PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz + +PKG_LICENSE:=BSD-3-Clause +PKG_LICENSE_FILES:=COPYING +PKG_MAINTAINER:=Daniel Golle + +PKG_INSTALL:=1 + +include $(INCLUDE_DIR)/package.mk + +define Package/libhiredis + SECTION:=libs + CATEGORY:=Libraries + TITLE:=Minimalistic C client for Redis + URL:=https://github.com/redis/hiredis +endef + +define Package/libhiredis/description + Hiredis is a minimalistic C client library for the Redis database. +endef + +MAKE_FLAGS += ARCH="" DEBUG="" PREFIX="/usr" + +define Build/InstallDev + $(INSTALL_DIR) $(1)/usr/include/hiredis/adapters + $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/include/hiredis/adapters/* $(1)/usr/include/hiredis/adapters + $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/include/hiredis/*.h $(1)/usr/include/hiredis/ + $(INSTALL_DIR) $(1)/usr/lib/pkgconfig + $(CP) $(PKG_INSTALL_DIR)/usr/lib/libhiredis.{so*,a} $(1)/usr/lib/ + $(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/hiredis.pc $(1)/usr/lib/pkgconfig +endef + +define Package/libhiredis/install + $(INSTALL_DIR) $(1)/usr/lib/ + $(CP) $(PKG_INSTALL_DIR)/usr/lib/libhiredis.so* $(1)/usr/lib/ +endef + +$(eval $(call BuildPackage,libhiredis)) From 3788dd697b642c09eb6fb868e07b045453ab60d1 Mon Sep 17 00:00:00 2001 From: Christian Schoenebeck Date: Wed, 24 Jun 2015 18:46:52 +0200 Subject: [PATCH 651/681] ddns-scripts: fix/update to version 2.4.3-1 fixed sed when filtering IP address from nslookup output because "Server:" block might have multiple address lines. Thanks to Arjen de Korte Signed-off-by: Christian Schoenebeck --- net/ddns-scripts/Makefile | 2 +- net/ddns-scripts/files/dynamic_dns_functions.sh | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) mode change 100644 => 100755 net/ddns-scripts/Makefile diff --git a/net/ddns-scripts/Makefile b/net/ddns-scripts/Makefile old mode 100644 new mode 100755 index ba04fb5e4..1ca475661 --- a/net/ddns-scripts/Makefile +++ b/net/ddns-scripts/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=ddns-scripts # Version == major.minor.patch # increase on new functionality (minor) or patches (patch) -PKG_VERSION:=2.4.2 +PKG_VERSION:=2.4.3 # Release == build # increase on changes of services files or tld_names.dat PKG_RELEASE:=1 diff --git a/net/ddns-scripts/files/dynamic_dns_functions.sh b/net/ddns-scripts/files/dynamic_dns_functions.sh index 0023f88f0..cb0db9ac3 100755 --- a/net/ddns-scripts/files/dynamic_dns_functions.sh +++ b/net/ddns-scripts/files/dynamic_dns_functions.sh @@ -486,8 +486,8 @@ verify_host_port() { __IPV4=$(cat $DATFILE | awk -F "address " '/has address/ {print $2; exit}' ) __IPV6=$(cat $DATFILE | awk -F "address " '/has IPv6/ {print $2; exit}' ) else # use BusyBox nslookup - __IPV4=$(cat $DATFILE | sed -ne "3,\$ { s/^Address[0-9 ]\{0,\}: \($IPV4_REGEX\).*$/\\1/p }") - __IPV6=$(cat $DATFILE | sed -ne "3,\$ { s/^Address[0-9 ]\{0,\}: \($IPV6_REGEX\).*$/\\1/p }") + __IPV4=$(cat $DATFILE | sed -ne "/^Name:/,\$ { s/^Address[0-9 ]\{0,\}: \($IPV4_REGEX\).*$/\\1/p }") + __IPV6=$(cat $DATFILE | sed -ne "/^Name:/,\$ { s/^Address[0-9 ]\{0,\}: \($IPV6_REGEX\).*$/\\1/p }") fi } @@ -966,7 +966,7 @@ get_registered_ip() { if [ "$__PROG" = "BIND host" ]; then __DATA=$(cat $DATFILE | awk -F "address " '/has/ {print $2; exit}' ) else - __DATA=$(cat $DATFILE | sed -ne "3,\$ { s/^Address[0-9 ]\{0,\}: \($__REGEX\).*$/\\1/p }" ) + __DATA=$(cat $DATFILE | sed -ne "/^Name:/,\$ { s/^Address[0-9 ]\{0,\}: \($__REGEX\).*$/\\1/p }" ) fi [ -n "$__DATA" ] && { write_log 7 "Registered IP '$__DATA' detected" From 2e73fcd4b02cd6210c628c0c6e7a8e54cbddca41 Mon Sep 17 00:00:00 2001 From: Jo-Philipp Wich Date: Thu, 25 Jun 2015 12:54:05 +0200 Subject: [PATCH 652/681] c-ares: fix build with CONFIG_PKG_FORTIFY_SOURCE* When fortify source is enabled, the c-ares configure script will abort with: configure: CFLAGS error: CFLAGS may only be used to specify C compiler flags, not macro definitions. Use CPPFLAGS for: -D_FORTIFY_SOURCE=1 Change the OpenWrt Makefile to move any -D flags from TARGET_CFLAGS to TARGET_CPPFLAGS in order to satisfy `configure`. Signed-off-by: Jo-Philipp Wich --- libs/c-ares/Makefile | 3 +++ 1 file changed, 3 insertions(+) diff --git a/libs/c-ares/Makefile b/libs/c-ares/Makefile index 815a379a3..c5b226997 100644 --- a/libs/c-ares/Makefile +++ b/libs/c-ares/Makefile @@ -22,6 +22,9 @@ PKG_INSTALL:=1 include $(INCLUDE_DIR)/package.mk +TARGET_CPPFLAGS += $(filter -D%,$(TARGET_CFLAGS)) +TARGET_CFLAGS := $(filter-out -D%,$(TARGET_CFLAGS)) + define Package/libcares SECTION:=libs CATEGORY:=Libraries From 757de70511761ece54f38a70759382ebefb15c59 Mon Sep 17 00:00:00 2001 From: Jo-Philipp Wich Date: Thu, 25 Jun 2015 14:49:05 +0200 Subject: [PATCH 653/681] usb: fix musl compatibility Replace the nonstandard `SIGCLD` signal name with the proper `SIGCHLD` spelling as the `SIGCLD` alias is not provided by musl. Signed-off-by: Jo-Philipp Wich --- net/usbip/Makefile | 2 +- net/usbip/patches-2.0/100-musl-compat.patch | 11 +++++++++++ 2 files changed, 12 insertions(+), 1 deletion(-) create mode 100644 net/usbip/patches-2.0/100-musl-compat.patch diff --git a/net/usbip/Makefile b/net/usbip/Makefile index 8aa0df0eb..49130574f 100644 --- a/net/usbip/Makefile +++ b/net/usbip/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk include $(INCLUDE_DIR)/kernel.mk PKG_NAME:=usbip -PKG_RELEASE:=4 +PKG_RELEASE:=5 PKG_LICENSE:=GPL-2.0 # Since kernel 2.6.39.1 userspace tools are inside the kernel tree diff --git a/net/usbip/patches-2.0/100-musl-compat.patch b/net/usbip/patches-2.0/100-musl-compat.patch new file mode 100644 index 000000000..a64678cb8 --- /dev/null +++ b/net/usbip/patches-2.0/100-musl-compat.patch @@ -0,0 +1,11 @@ +--- a/src/usbipd.c ++++ b/src/usbipd.c +@@ -453,7 +453,7 @@ static void set_signal(void) + sigaction(SIGTERM, &act, NULL); + sigaction(SIGINT, &act, NULL); + act.sa_handler = SIG_IGN; +- sigaction(SIGCLD, &act, NULL); ++ sigaction(SIGCHLD, &act, NULL); + } + + static const char *pid_file; From 419637e17f09164c852dc9e93bfa8a6129f2ab13 Mon Sep 17 00:00:00 2001 From: Jo-Philipp Wich Date: Thu, 25 Jun 2015 16:30:32 +0200 Subject: [PATCH 654/681] sstp-client: fix musl compatibility - Ship a `net/ppp_defs.h` replacement header since musl does not provide one but `pppd/pppd.h` provided by pppd is needing it. - Add missing `sys/types.h` includes Signed-off-by: Jo-Philipp Wich --- net/sstp-client/Makefile | 4 ++- net/sstp-client/patches/100-musl-compat.patch | 33 +++++++++++++++++++ 2 files changed, 36 insertions(+), 1 deletion(-) create mode 100644 net/sstp-client/patches/100-musl-compat.patch diff --git a/net/sstp-client/Makefile b/net/sstp-client/Makefile index 6e6526982..baea8d2be 100644 --- a/net/sstp-client/Makefile +++ b/net/sstp-client/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2006-2014 OpenWrt.org +# Copyright (C) 2006-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -18,6 +18,8 @@ PKG_LICENSE=GPLv2 include $(INCLUDE_DIR)/package.mk +TARGET_CPPFLAGS += -I$(PKG_BUILD_DIR)/include + define Package/sstp-client SECTION:=net CATEGORY:=Network diff --git a/net/sstp-client/patches/100-musl-compat.patch b/net/sstp-client/patches/100-musl-compat.patch new file mode 100644 index 000000000..d19b2fa17 --- /dev/null +++ b/net/sstp-client/patches/100-musl-compat.patch @@ -0,0 +1,33 @@ +--- /dev/null ++++ b/include/net/ppp_defs.h +@@ -0,0 +1,10 @@ ++#ifndef _NET_PPP_DEFS_H ++#define _NET_PPP_DEFS_H 1 ++ ++#define __need_time_t ++#include ++ ++#include ++#include ++ ++#endif /* net/ppp_defs.h */ +--- a/src/libsstp-log/sstp-log-syslog.c ++++ b/src/libsstp-log/sstp-log-syslog.c +@@ -32,6 +32,7 @@ + #include + #include + #include ++#include + #include + + #include +--- a/src/libsstp-log/sstp-log-std.c ++++ b/src/libsstp-log/sstp-log-std.c +@@ -25,6 +25,7 @@ + #include + #include + #include ++#include + #include + #include + From 768f1a42ae47d526fc5a53c3ad7e779584e4cde9 Mon Sep 17 00:00:00 2001 From: Jo-Philipp Wich Date: Thu, 25 Jun 2015 16:42:52 +0200 Subject: [PATCH 655/681] squid: fix musl compatibility Change `sys/signal.h` include to just `signal.h`. The build otherwise fails due to `-Werror` with the following message: In file included from rfcnb-io.c:43:0: .../staging_dir/toolchain-mipsel_mips32_gcc-4.8-linaro_musl-1.1.10/include/sys/signal.h:1:2: error: #warning redirecting incorrect #include to [-Werror=cpp] #warning redirecting incorrect #include to ^ cc1: all warnings being treated as errors Signed-off-by: Jo-Philipp Wich --- net/squid/Makefile | 2 +- net/squid/patches/200-musl-compat.patch | 15 +++++++++++++++ 2 files changed, 16 insertions(+), 1 deletion(-) create mode 100644 net/squid/patches/200-musl-compat.patch diff --git a/net/squid/Makefile b/net/squid/Makefile index 1d34d26ca..d5873c7b2 100644 --- a/net/squid/Makefile +++ b/net/squid/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=squid PKG_VERSION:=3.5.2 -PKG_RELEASE:=3 +PKG_RELEASE:=4 PKG_LICENSE:=GPL-2.0 PKG_MAINTAINER:=Luka Perkov diff --git a/net/squid/patches/200-musl-compat.patch b/net/squid/patches/200-musl-compat.patch new file mode 100644 index 000000000..7cbd9da9f --- /dev/null +++ b/net/squid/patches/200-musl-compat.patch @@ -0,0 +1,15 @@ +--- a/lib/rfcnb/rfcnb-io.c ++++ b/lib/rfcnb/rfcnb-io.c +@@ -36,11 +36,11 @@ + #include "rfcnb/rfcnb-util.h" + #include "rfcnb/std-includes.h" + ++#include + #if HAVE_STRING_H + #include + #endif + #include +-#include + + int RFCNB_Timeout = 0; /* Timeout in seconds ... */ + From 9aa904b04bb8e882432256405a418ba3de7787a9 Mon Sep 17 00:00:00 2001 From: Nicolas Thill Date: Thu, 25 Jun 2015 17:10:31 +0200 Subject: [PATCH 656/681] libv4l: fix musl compatibility on 64-bits Signed-off-by: Nicolas Thill --- libs/libv4l/patches/030-musl_compatibility.patch | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/libs/libv4l/patches/030-musl_compatibility.patch b/libs/libv4l/patches/030-musl_compatibility.patch index bd3f0d7f4..758be2b52 100644 --- a/libs/libv4l/patches/030-musl_compatibility.patch +++ b/libs/libv4l/patches/030-musl_compatibility.patch @@ -1,6 +1,6 @@ --- a/lib/libv4lconvert/libv4lsyscall-priv.h +++ b/lib/libv4lconvert/libv4lsyscall-priv.h -@@ -35,14 +35,19 @@ +@@ -35,18 +35,23 @@ which is broken on some systems and doesn't include them itself :( */ #ifdef linux @@ -14,12 +14,16 @@ +#undef SYS_mmap2 #define SYS_mmap2 __NR_mmap2 #define MMAP2_PAGE_SHIFT 12 -+#if !(defined(__UCLIBC__) || defined(__GLIBC__)) -+typedef off_t __off_t; -+#endif #else #define SYS_mmap2 SYS_mmap #define MMAP2_PAGE_SHIFT 0 + #endif ++#if !(defined(__UCLIBC__) || defined(__GLIBC__)) ++typedef off_t __off_t; ++#endif + #endif + + #if defined(__FreeBSD__) || defined(__FreeBSD_kernel__) --- a/lib/libv4l1/v4l1compat.c +++ b/lib/libv4l1/v4l1compat.c @@ -62,7 +62,7 @@ LIBV4L_PUBLIC int open(const char *file, From eaf46527608365e5c10a94ecbbbb865b72282ef8 Mon Sep 17 00:00:00 2001 From: Jo-Philipp Wich Date: Thu, 25 Jun 2015 17:26:37 +0200 Subject: [PATCH 657/681] snort: fix build with CONFIG_PKG_CHECK_FORMAT_SECURITY The configure script incorrectly mangles `CFLAGS` by attempting to remove `-Werror` from it, thus turning `-Werror=format-security` into just `=format-security` which will cause subsequent autoconf tests to fail. Patch out the custom `CFLAGS` mangling to fix the build. Signed-off-by: Jo-Philipp Wich --- net/snort/Makefile | 2 +- net/snort/patches/100-autoconf-fixes.patch | 17 +++++++++++++++++ 2 files changed, 18 insertions(+), 1 deletion(-) create mode 100644 net/snort/patches/100-autoconf-fixes.patch diff --git a/net/snort/Makefile b/net/snort/Makefile index 33f8b6d5e..546f7426e 100644 --- a/net/snort/Makefile +++ b/net/snort/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=snort PKG_VERSION:=2.9.7.2 -PKG_RELEASE:=2 +PKG_RELEASE:=3 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=https://www.snort.org/downloads/snort/ \ diff --git a/net/snort/patches/100-autoconf-fixes.patch b/net/snort/patches/100-autoconf-fixes.patch new file mode 100644 index 000000000..414c0c1cc --- /dev/null +++ b/net/snort/patches/100-autoconf-fixes.patch @@ -0,0 +1,17 @@ +--- a/configure.in ++++ b/configure.in +@@ -11,14 +11,6 @@ AM_INIT_AUTOMAKE(snort,2.9.7.2) + NO_OPTIMIZE="no" + ADD_WERROR="no" + +-# Test for -Werror and sed it out for now since some of the auto tests, +-# for example AC_CHECK_LIB, will fail because of +-# warning: conflicting types for built-in function +-if eval "echo $CFLAGS | grep -e -Werror"; then +- CFLAGS=`echo $CFLAGS | sed -e "s/-Werror//g"` +- ADD_WERROR="yes" +-fi +- + # Disable annoying practice of recursively re-running the autotools + AM_MAINTAINER_MODE + AC_PROG_CC_STDC From 5d4955c9ff2121783ee936bd9de3cc45e0e2b68d Mon Sep 17 00:00:00 2001 From: Maxim Storchak Date: Fri, 19 Jun 2015 20:30:17 +0300 Subject: [PATCH 658/681] iodine: fix musl compatibility Signed-off-by: Maxim Storchak --- net/iodine/Makefile | 2 +- .../patches/100-musl-compatibility.patch | 26 +++++++++++++++++++ 2 files changed, 27 insertions(+), 1 deletion(-) create mode 100644 net/iodine/patches/100-musl-compatibility.patch diff --git a/net/iodine/Makefile b/net/iodine/Makefile index af97aab58..066399757 100644 --- a/net/iodine/Makefile +++ b/net/iodine/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=iodine PKG_VERSION:=0.7.0 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://code.kryo.se/iodine/ diff --git a/net/iodine/patches/100-musl-compatibility.patch b/net/iodine/patches/100-musl-compatibility.patch new file mode 100644 index 000000000..17ddc0483 --- /dev/null +++ b/net/iodine/patches/100-musl-compatibility.patch @@ -0,0 +1,26 @@ +commit 9603c1848ddd4d9bb2d6ab031fcef91f543b71a0 +Author: Maxim Storchak +Date: Thu Jun 25 19:38:24 2015 +0300 + + Fix compatibility with musl for OpenWRT + + This patch breaks builds for Windows and Android, but since the only + libc flavors OpenWRT currently cares about are musl, uClibc and glibc, + this should be fine. + + The reason for such brutal intrusiuon is explained in musl FAQ: + http://wiki.musl-libc.org/wiki/FAQ#Q:_why_is_there_no_MUSL_macro_.3F + +diff --git a/src/common.c b/src/common.c +index 2715979..5f0e370 100644 +--- a/src/common.c ++++ b/src/common.c +@@ -57,7 +57,7 @@ + const unsigned char raw_header[RAW_HDR_LEN] = { 0x10, 0xd1, 0x9e, 0x00 }; + + /* daemon(3) exists only in 4.4BSD or later, and in GNU libc */ +-#if !defined(ANDROID) && !defined(WINDOWS32) && !(defined(BSD) && (BSD >= 199306)) && !defined(__GLIBC__) ++#ifdef __UCLIBC__ + static int daemon(int nochdir, int noclose) + { + int fd, i; From b73068365d68a5ca0f5707406399f784bb039c44 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=81lvaro=20Fern=C3=A1ndez=20Rojas?= Date: Thu, 25 Jun 2015 19:47:49 +0200 Subject: [PATCH 659/681] minicom: fix full language support MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Fixes https://github.com/openwrt/packages/issues/1467 Signed-off-by: Álvaro Fernández Rojas --- utils/minicom/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/utils/minicom/Makefile b/utils/minicom/Makefile index ba5677ed3..b588993e2 100644 --- a/utils/minicom/Makefile +++ b/utils/minicom/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=minicom PKG_VERSION:=2.7 -PKG_RELEASE:=2 +PKG_RELEASE:=3 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=https://alioth.debian.org/frs/download.php/file/3977/ @@ -27,7 +27,7 @@ include $(INCLUDE_DIR)/package.mk define Package/minicom SECTION:=utils CATEGORY:=Utilities - DEPENDS:=$(ICONV_DEPENDS) +libncurses + DEPENDS:=$(ICONV_DEPENDS) $(INTL_DEPENDS) +libncurses TITLE:=Terminal emulation program URL:=http://alioth.debian.org/projects/minicom/ SUBMENU:=Terminal From c6ffaa34d6e945a1c06786502f23ccd77a7d10df Mon Sep 17 00:00:00 2001 From: Luka Perkov Date: Thu, 25 Jun 2015 22:00:35 +0200 Subject: [PATCH 660/681] snort: add maintainer and SPDX license info Signed-off-by: Luka Perkov --- net/snort/Makefile | 3 +++ 1 file changed, 3 insertions(+) diff --git a/net/snort/Makefile b/net/snort/Makefile index 546f7426e..9886a5d92 100644 --- a/net/snort/Makefile +++ b/net/snort/Makefile @@ -11,6 +11,9 @@ PKG_NAME:=snort PKG_VERSION:=2.9.7.2 PKG_RELEASE:=3 +PKG_LICENSE:=GPL-2.0 +PKG_MAINTAINER:=Luka Perkov + PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=https://www.snort.org/downloads/snort/ \ @SF/$(PKG_NAME) From 5c0d03417141b222e69b2d513226ecf00e876951 Mon Sep 17 00:00:00 2001 From: ejurgensen Date: Thu, 25 Jun 2015 22:40:46 +0200 Subject: [PATCH 661/681] forked-daapd: update to 23.2 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Espen Jürgensen --- sound/forked-daapd/Makefile | 25 ++++++++++++++-------- sound/forked-daapd/files/forked-daapd.conf | 24 ++++++++------------- 2 files changed, 25 insertions(+), 24 deletions(-) diff --git a/sound/forked-daapd/Makefile b/sound/forked-daapd/Makefile index 8599c3831..51f459f0f 100644 --- a/sound/forked-daapd/Makefile +++ b/sound/forked-daapd/Makefile @@ -8,9 +8,9 @@ include $(TOPDIR)/rules.mk PKG_NAME:=forked-daapd -PKG_VERSION:=22.3 -PKG_RELEASE:=20150222 -PKG_REV:=81b0d330691ce22879514af04c7d831bca8a6e19 +PKG_VERSION:=23.2 +PKG_RELEASE:=20150622 +PKG_REV:=227017ef5ba8df921b2f1db681a46494ec296b8b PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) @@ -35,29 +35,36 @@ CATEGORY:=Sound TITLE:=iTunes (DAAP) server for Apple Remote and AirPlay URL:=https://github.com/ejurgensen/forked-daapd DEPENDS:=+libgpg-error +libgcrypt +libgdbm +zlib +libexpat +libunistring \ - +libevent2 +libdaemon +libantlr3c +confuse +glib2 +alsa-lib +libffmpeg-full \ + +libevent2 +libdaemon +libantlr3c +confuse +alsa-lib +libffmpeg-full \ +mxml +libavahi-client +sqlite3-cli +libplist +libcurl endef +define Package/forked-daapd/description + forked-daapd is a Linux/FreeBSD DAAP (iTunes), MPD (Music Player Daemon) and + RSP (Roku) media server. It has support for AirPlay devices/speakers, Apple + Remote (and compatibles), MPD clients, internet radio and LastFM. It does not + support AirPlay video. +endef + define Package/forked-daapd/conffiles /etc/forked-daapd.conf endef CONFIGURE_ARGS += \ --enable-itunes \ - --enable-lastfm + --enable-lastfm \ + --enable-mpd TARGET_CFLAGS += $(FPIC) TARGET_LDFLAGS += -Wl,-rpath-link,$(STAGING_DIR)/usr/lib define Package/forked-daapd/install + $(INSTALL_DIR) $(1)/usr/sbin + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/forked-daapd $(1)/usr/sbin/ $(INSTALL_DIR) $(1)/etc - $(INSTALL_DATA) ./files/forked-daapd.conf $(1)/etc/ - $(INSTALL_DIR) $(1)/usr/lib + $(INSTALL_CONF) ./files/forked-daapd.conf $(1)/etc/forked-daapd.conf $(INSTALL_DIR) $(1)/usr/lib/forked-daapd $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/forked-daapd/* $(1)/usr/lib/forked-daapd/ - $(INSTALL_DIR) $(1)/usr/sbin - $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/forked-daapd $(1)/usr/sbin/ $(INSTALL_DIR) $(1)/etc/init.d $(INSTALL_BIN) ./files/forked-daapd.init $(1)/etc/init.d/forked-daapd endef diff --git a/sound/forked-daapd/files/forked-daapd.conf b/sound/forked-daapd/files/forked-daapd.conf index 63c0ac3db..0f756e0f8 100644 --- a/sound/forked-daapd/files/forked-daapd.conf +++ b/sound/forked-daapd/files/forked-daapd.conf @@ -14,7 +14,7 @@ general { uid = "daapd" # Database location -# db_path = "/var/cache/forked-daapd/songs3.db" + db_path = "/var/cache/forked-daapd/songs3.db" # Log file and level # Available levels: fatal, log, warning, info, debug, spam @@ -28,7 +28,7 @@ general { ipv6 = no # Location of cache database -# cache_path = "/var/cache/forked-daapd/cache.db" + cache_path = "/var/cache/forked-daapd/cache.db" # DAAP requests that take longer than this threshold (in msec) get their # replies cached for next time. Set to 0 to disable caching. @@ -78,6 +78,12 @@ library { # (changing this setting only takes effect after rescan, see the README) compilation_artist = "Various artists" + # Internet streams in your playlists will by default be shown in the + # "Radio" library, like iTunes does. However, some clients (like + # TunesRemote+) won't show the "Radio" library. If you would also like + # to have them shown like normal playlists, you can enable this option. +# radio_playlists = false + # There are 5 default playlists: "Library", "Music", "Movies", "TV Shows" # and "Podcasts". Here you can change the names of these playlists. # name_library = "Library" @@ -86,6 +92,7 @@ library { # name_tvshows = "TV Shows" # name_podcasts = "Podcasts" # name_audiobooks = "Audiobooks" +# name_radio = "Radio" # Artwork file names (without file type extension) # forked-daapd will look for jpg and png files with these base names @@ -152,19 +159,6 @@ audio { # password = "s1kr3t" #} -# Spotify settings (only have effect if Spotify enabled - see README/INSTALL) -spotify { - # Directory where user settings should be stored (credentials) -# settings_dir = "/var/cache/forked-daapd/libspotify" - - # Cache directory -# cache_dir = "/tmp" - - # Set preferred bitrate for music streaming - # 0: No preference (default), 1: 96kbps, 2: 160kbps, 3: 320kbps -# bitrate = 0 -} - # SQLite configuration (allows to modify the operation of the SQLite databases) # Make sure to read the SQLite documentation for the corresponding PRAGMA statements as # changing them from the defaults may increase the possibility of database corruptions! From e14423f86690d61cff152058d9044d16321437be Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Sun, 31 May 2015 05:28:38 +0200 Subject: [PATCH 662/681] libmicrohttpd: update source Signed-off-by: Daniel Golle --- libs/libmicrohttpd/Makefile | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/libs/libmicrohttpd/Makefile b/libs/libmicrohttpd/Makefile index 91e98341c..2ea96f237 100644 --- a/libs/libmicrohttpd/Makefile +++ b/libs/libmicrohttpd/Makefile @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=libmicrohttpd -PKG_VERSION:=0.9.38 -PKG_RELEASE:=1.2 +PKG_VERSION:=0.9.42 +PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=@GNU/libmicrohttpd -PKG_MD5SUM:=b72efbfe7f290846015d460aea7091fe +PKG_MD5SUM:=3b9cf0b67fc8ebc9e69f53c6bc84a88d PKG_MAINTAINER:=Martijn Zilverschoon From 24056cfdada751619439ea888ee7178f58c16f58 Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Thu, 4 Jun 2015 12:52:31 +0200 Subject: [PATCH 663/681] libmicrohttpd: get rid of OpenSSL dependency Depending on both, GnuTLS and OpenSSL doesn't make sense, we should use either TLS implementation but not both. Use GnuTLS for now and get rid of OpenSSL dependency by explicitely telling the package's build-system to do so using CONFIGURE_ARGS. If future uses of libmicrohttpd require OpenSSL, it probably makes most sense to build several variants of the package, i.e. libmicrohttpd-openssl as well as libmicrohttpd-gnutls. As with most packages making use of any TLS implementation, these are build-time decissions resulting in conflicting variants of the same package which cannot be installed simultanously. Signed-off-by: Daniel Golle --- libs/libmicrohttpd/Makefile | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/libs/libmicrohttpd/Makefile b/libs/libmicrohttpd/Makefile index 2ea96f237..d47875cec 100644 --- a/libs/libmicrohttpd/Makefile +++ b/libs/libmicrohttpd/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=libmicrohttpd PKG_VERSION:=0.9.42 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=@GNU/libmicrohttpd @@ -29,7 +29,7 @@ define Package/libmicrohttpd CATEGORY:=Libraries TITLE:=GNU libmicrohttpd is a library that runs an HTTP server. URL:=http://www.gnu.org/software/libmicrohttpd/ - DEPENDS:=+libpthread +libgcrypt +libgnutls +libgpg-error +libopenssl + DEPENDS:=+libpthread +libgcrypt +libgnutls +libgpg-error endef define Package/libmicrohttpd/description @@ -37,6 +37,13 @@ define Package/libmicrohttpd/description to run an HTTP server as part of another application. endef +CONFIGURE_ARGS += \ + --enable-https \ + --with-gnutls \ + --disable-curl \ + --disable-spdy \ + --without-openssl + define Build/InstallDev $(INSTALL_DIR) $(1)/usr/include/ $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/include/* $(1)/usr/include/ From 9e221b6b8378b6f6a9e6f4d401a3cbcb7068d1b4 Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Fri, 5 Jun 2015 03:26:00 +0200 Subject: [PATCH 664/681] libmicrohttpd: import fixes from subversion repo Fixes a memleak as well as a bug in digest authentication. Signed-off-by: Daniel Golle --- libs/libmicrohttpd/Makefile | 2 +- .../patches/001-bump-to-r35864.patch | 754 ++++++++++++++++++ 2 files changed, 755 insertions(+), 1 deletion(-) create mode 100644 libs/libmicrohttpd/patches/001-bump-to-r35864.patch diff --git a/libs/libmicrohttpd/Makefile b/libs/libmicrohttpd/Makefile index d47875cec..9c9dcbae5 100644 --- a/libs/libmicrohttpd/Makefile +++ b/libs/libmicrohttpd/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=libmicrohttpd PKG_VERSION:=0.9.42 -PKG_RELEASE:=2 +PKG_RELEASE:=3 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=@GNU/libmicrohttpd diff --git a/libs/libmicrohttpd/patches/001-bump-to-r35864.patch b/libs/libmicrohttpd/patches/001-bump-to-r35864.patch new file mode 100644 index 000000000..6558a96db --- /dev/null +++ b/libs/libmicrohttpd/patches/001-bump-to-r35864.patch @@ -0,0 +1,754 @@ +--- a/ChangeLog ++++ b/ChangeLog +@@ -1,3 +1,14 @@ ++Thu Jun 4 13:37:05 CEST 2015 ++ Fixing memory leak in digest authentication. -AW ++ ++Wed Jun 03 21:23:47 CEST 2015 ++ Add deprecation compiler messages for deprecated functions ++ and macros. -EG ++ ++Fri May 29 12:23:01 CEST 2015 ++ Fixing digest authentication when used in combination ++ with escaped characters in URLs. -CG/AW ++ + Wed May 13 11:49:09 CEST 2015 + Releasing libmicrohttpd 0.9.42. -CG + +--- a/src/microhttpd/response.c ++++ b/src/microhttpd/response.c +@@ -24,6 +24,8 @@ + * @author Christian Grothoff + */ + ++#define MHD_NO_DEPRECATION 1 ++ + #include "internal.h" + #include "response.h" + +--- a/src/microhttpd/digestauth.c ++++ b/src/microhttpd/digestauth.c +@@ -1,6 +1,6 @@ + /* + This file is part of libmicrohttpd +- Copyright (C) 2010, 2011, 2012 Daniel Pittman and Christian Grothoff ++ Copyright (C) 2010, 2011, 2012, 2015 Daniel Pittman and Christian Grothoff + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public +@@ -472,8 +472,8 @@ test_header (struct MHD_Connection *conn + * + * @param connection connections with headers to compare against + * @param args argument URI string (after "?" in URI) +- * @return MHD_YES if the arguments match, +- * MHD_NO if not ++ * @return #MHD_YES if the arguments match, ++ * #MHD_NO if not + */ + static int + check_argument_match (struct MHD_Connection *connection, +@@ -508,7 +508,10 @@ check_argument_match (struct MHD_Connect + connection, + argp); + if (MHD_YES != test_header (connection, argp, NULL)) +- return MHD_NO; ++ { ++ free(argb); ++ return MHD_NO; ++ } + num_headers++; + break; + } +@@ -527,10 +530,16 @@ check_argument_match (struct MHD_Connect + connection, + equals); + if (! test_header (connection, argp, equals)) +- return MHD_NO; ++ { ++ free(argb); ++ return MHD_NO; ++ } ++ + num_headers++; + argp = amper; + } ++ ++ free(argb); + + /* also check that the number of headers matches */ + for (pos = connection->headers_received; NULL != pos; pos = pos->next) +@@ -632,10 +641,83 @@ MHD_digest_auth_check (struct MHD_Connec + header value. */ + return MHD_NO; + } ++ /* 8 = 4 hexadecimal numbers for the timestamp */ ++ nonce_time = strtoul (nonce + len - 8, (char **)NULL, 16); ++ t = (uint32_t) MHD_monotonic_time(); ++ /* ++ * First level vetting for the nonce validity: if the timestamp ++ * attached to the nonce exceeds `nonce_timeout', then the nonce is ++ * invalid. ++ */ ++ if ( (t > nonce_time + nonce_timeout) || ++ (nonce_time + nonce_timeout < nonce_time) ) ++ { ++ /* too old */ ++ return MHD_INVALID_NONCE; ++ } ++ ++ calculate_nonce (nonce_time, ++ connection->method, ++ connection->daemon->digest_auth_random, ++ connection->daemon->digest_auth_rand_size, ++ connection->url, ++ realm, ++ noncehashexp); ++ /* ++ * Second level vetting for the nonce validity ++ * if the timestamp attached to the nonce is valid ++ * and possibly fabricated (in case of an attack) ++ * the attacker must also know the random seed to be ++ * able to generate a "sane" nonce, which if he does ++ * not, the nonce fabrication process going to be ++ * very hard to achieve. ++ */ ++ ++ if (0 != strcmp (nonce, noncehashexp)) ++ { ++ return MHD_INVALID_NONCE; ++ } ++ if ( (0 == lookup_sub_value (cnonce, ++ sizeof (cnonce), ++ header, "cnonce")) || ++ (0 == lookup_sub_value (qop, sizeof (qop), header, "qop")) || ++ ( (0 != strcmp (qop, "auth")) && ++ (0 != strcmp (qop, "")) ) || ++ (0 == lookup_sub_value (nc, sizeof (nc), header, "nc")) || ++ (0 == lookup_sub_value (response, sizeof (response), header, "response")) ) ++ { ++#if HAVE_MESSAGES ++ MHD_DLOG (connection->daemon, ++ "Authentication failed, invalid format.\n"); ++#endif ++ return MHD_NO; ++ } ++ nci = strtoul (nc, &end, 16); ++ if ( ('\0' != *end) || ++ ( (LONG_MAX == nci) && ++ (ERANGE == errno) ) ) ++ { ++#if HAVE_MESSAGES ++ MHD_DLOG (connection->daemon, ++ "Authentication failed, invalid format.\n"); ++#endif ++ return MHD_NO; /* invalid nonce format */ ++ } ++ /* ++ * Checking if that combination of nonce and nc is sound ++ * and not a replay attack attempt. Also adds the nonce ++ * to the nonce-nc map if it does not exist there. ++ */ ++ ++ if (MHD_YES != check_nonce_nc (connection, nonce, nci)) ++ { ++ return MHD_NO; ++ } ++ + { + char *uri; +- +- uri = malloc(left + 1); ++ ++ uri = malloc (left + 1); + if (NULL == uri) + { + #if HAVE_MESSAGES +@@ -648,24 +730,31 @@ MHD_digest_auth_check (struct MHD_Connec + left + 1, + header, "uri")) + { +- free(uri); ++ free (uri); + return MHD_NO; + } + +- /* 8 = 4 hexadecimal numbers for the timestamp */ +- nonce_time = strtoul (nonce + len - 8, (char **)NULL, 16); +- t = (uint32_t) MHD_monotonic_time(); +- /* +- * First level vetting for the nonce validity: if the timestamp +- * attached to the nonce exceeds `nonce_timeout', then the nonce is +- * invalid. +- */ +- if ( (t > nonce_time + nonce_timeout) || +- (nonce_time + nonce_timeout < nonce_time) ) +- { +- free(uri); +- return MHD_INVALID_NONCE; +- } ++ digest_calc_ha1("md5", ++ username, ++ realm, ++ password, ++ nonce, ++ cnonce, ++ ha1); ++ digest_calc_response (ha1, ++ nonce, ++ nc, ++ cnonce, ++ qop, ++ connection->method, ++ uri, ++ hentity, ++ respexp); ++ ++ /* Need to unescape URI before comparing with connection->url */ ++ connection->daemon->unescape_callback (connection->daemon->unescape_callback_cls, ++ connection, ++ uri); + if (0 != strncmp (uri, + connection->url, + strlen (connection->url))) +@@ -674,9 +763,10 @@ MHD_digest_auth_check (struct MHD_Connec + MHD_DLOG (connection->daemon, + "Authentication failed, URI does not match.\n"); + #endif +- free(uri); ++ free (uri); + return MHD_NO; + } ++ + { + const char *args = strchr (uri, '?'); + +@@ -692,89 +782,11 @@ MHD_digest_auth_check (struct MHD_Connec + MHD_DLOG (connection->daemon, + "Authentication failed, arguments do not match.\n"); + #endif +- free(uri); ++ free (uri); + return MHD_NO; + } + } +- calculate_nonce (nonce_time, +- connection->method, +- connection->daemon->digest_auth_random, +- connection->daemon->digest_auth_rand_size, +- connection->url, +- realm, +- noncehashexp); +- /* +- * Second level vetting for the nonce validity +- * if the timestamp attached to the nonce is valid +- * and possibly fabricated (in case of an attack) +- * the attacker must also know the random seed to be +- * able to generate a "sane" nonce, which if he does +- * not, the nonce fabrication process going to be +- * very hard to achieve. +- */ +- +- if (0 != strcmp (nonce, noncehashexp)) +- { +- free(uri); +- return MHD_INVALID_NONCE; +- } +- if ( (0 == lookup_sub_value (cnonce, +- sizeof (cnonce), +- header, "cnonce")) || +- (0 == lookup_sub_value (qop, sizeof (qop), header, "qop")) || +- ( (0 != strcmp (qop, "auth")) && +- (0 != strcmp (qop, "")) ) || +- (0 == lookup_sub_value (nc, sizeof (nc), header, "nc")) || +- (0 == lookup_sub_value (response, sizeof (response), header, "response")) ) +- { +-#if HAVE_MESSAGES +- MHD_DLOG (connection->daemon, +- "Authentication failed, invalid format.\n"); +-#endif +- free(uri); +- return MHD_NO; +- } +- nci = strtoul (nc, &end, 16); +- if ( ('\0' != *end) || +- ( (LONG_MAX == nci) && +- (ERANGE == errno) ) ) +- { +-#if HAVE_MESSAGES +- MHD_DLOG (connection->daemon, +- "Authentication failed, invalid format.\n"); +-#endif +- free(uri); +- return MHD_NO; /* invalid nonce format */ +- } +- /* +- * Checking if that combination of nonce and nc is sound +- * and not a replay attack attempt. Also adds the nonce +- * to the nonce-nc map if it does not exist there. +- */ +- +- if (MHD_YES != check_nonce_nc (connection, nonce, nci)) +- { +- free(uri); +- return MHD_NO; +- } +- +- digest_calc_ha1("md5", +- username, +- realm, +- password, +- nonce, +- cnonce, +- ha1); +- digest_calc_response (ha1, +- nonce, +- nc, +- cnonce, +- qop, +- connection->method, +- uri, +- hentity, +- respexp); +- free(uri); ++ free (uri); + return (0 == strcmp(response, respexp)) + ? MHD_YES + : MHD_NO; +@@ -835,7 +847,7 @@ MHD_queue_auth_fail_response (struct MHD + : ""); + { + char *header; +- ++ + header = malloc(hlen + 1); + if (NULL == header) + { +--- a/src/microhttpd/daemon.c ++++ b/src/microhttpd/daemon.c +@@ -73,7 +73,7 @@ + /** + * Default connection limit. + */ +-#ifndef WINDOWS ++#ifndef MHD_WINSOCK_SOCKETS + #define MHD_MAX_CONNECTIONS_DEFAULT FD_SETSIZE - 4 + #else + #define MHD_MAX_CONNECTIONS_DEFAULT FD_SETSIZE +@@ -1271,7 +1271,7 @@ internal_add_connection (struct MHD_Daem + return MHD_NO; + } + +-#ifndef WINDOWS ++#ifndef MHD_WINSOCK_SOCKETS + if ( (client_socket >= FD_SETSIZE) && + (0 == (daemon->options & (MHD_USE_POLL | MHD_USE_EPOLL_LINUX_ONLY))) ) + { +@@ -1418,7 +1418,7 @@ internal_add_connection (struct MHD_Daem + #endif + { + /* make socket non-blocking */ +-#if !defined(WINDOWS) || defined(CYGWIN) ++#if !defined(MHD_WINSOCK_SOCKETS) + int flags = fcntl (connection->socket_fd, F_GETFL); + if ( (-1 == flags) || + (0 != fcntl (connection->socket_fd, F_SETFL, flags | O_NONBLOCK)) ) +@@ -1797,7 +1797,7 @@ static void + make_nonblocking_noninheritable (struct MHD_Daemon *daemon, + MHD_socket sock) + { +-#ifdef WINDOWS ++#ifdef MHD_WINSOCK_SOCKETS + DWORD dwFlags; + unsigned long flags = 1; + +@@ -3611,7 +3611,7 @@ MHD_start_daemon_va (unsigned int flags, + daemon->socket_fd = MHD_INVALID_SOCKET; + daemon->listening_address_reuse = 0; + daemon->options = flags; +-#if WINDOWS ++#if defined(MHD_WINSOCK_SOCKETS) || defined(CYGWIN) + /* Winsock is broken with respect to 'shutdown'; + this disables us calling 'shutdown' on W32. */ + daemon->options |= MHD_USE_EPOLL_TURBO; +@@ -3650,7 +3650,7 @@ MHD_start_daemon_va (unsigned int flags, + free (daemon); + return NULL; + } +-#ifndef WINDOWS ++#ifndef MHD_WINSOCK_SOCKETS + if ( (0 == (flags & (MHD_USE_POLL | MHD_USE_EPOLL_LINUX_ONLY))) && + (1 == use_pipe) && + (daemon->wpipe[0] >= FD_SETSIZE) ) +@@ -3934,7 +3934,7 @@ MHD_start_daemon_va (unsigned int flags, + (http://msdn.microsoft.com/en-us/library/ms738574%28v=VS.85%29.aspx); + and may also be missing on older POSIX systems; good luck if you have any of those, + your IPv6 socket may then also bind against IPv4 anyway... */ +-#ifndef WINDOWS ++#ifndef MHD_WINSOCK_SOCKETS + const int + #else + const char +@@ -4016,7 +4016,7 @@ MHD_start_daemon_va (unsigned int flags, + { + socket_fd = daemon->socket_fd; + } +-#ifndef WINDOWS ++#ifndef MHD_WINSOCK_SOCKETS + if ( (socket_fd >= FD_SETSIZE) && + (0 == (flags & (MHD_USE_POLL | MHD_USE_EPOLL_LINUX_ONLY)) ) ) + { +@@ -4121,7 +4121,7 @@ MHD_start_daemon_va (unsigned int flags, + if ( (daemon->worker_pool_size > 0) && + (0 == (daemon->options & MHD_USE_NO_LISTEN_SOCKET)) ) + { +-#if !defined(WINDOWS) || defined(CYGWIN) ++#if !defined(MHD_WINSOCK_SOCKETS) + int sk_flags; + #else + unsigned long sk_flags; +@@ -4140,7 +4140,7 @@ MHD_start_daemon_va (unsigned int flags, + /* Accept must be non-blocking. Multiple children may wake up + * to handle a new connection, but only one will win the race. + * The others must immediately return. */ +-#if !defined(WINDOWS) || defined(CYGWIN) ++#if !defined(MHD_WINSOCK_SOCKETS) + sk_flags = fcntl (socket_fd, F_GETFL); + if (sk_flags < 0) + goto thread_failed; +@@ -4150,7 +4150,7 @@ MHD_start_daemon_va (unsigned int flags, + sk_flags = 1; + if (SOCKET_ERROR == ioctlsocket (socket_fd, FIONBIO, &sk_flags)) + goto thread_failed; +-#endif /* WINDOWS && !CYGWIN */ ++#endif /* MHD_WINSOCK_SOCKETS */ + + /* Allocate memory for pooled objects */ + daemon->worker_pool = malloc (sizeof (struct MHD_Daemon) +@@ -4182,7 +4182,7 @@ MHD_start_daemon_va (unsigned int flags, + #endif + goto thread_failed; + } +-#ifndef WINDOWS ++#ifndef MHD_WINSOCK_SOCKETS + if ( (0 == (flags & (MHD_USE_POLL | MHD_USE_EPOLL_LINUX_ONLY))) && + (MHD_USE_SUSPEND_RESUME == (flags & MHD_USE_SUSPEND_RESUME)) && + (d->wpipe[0] >= FD_SETSIZE) ) +@@ -4343,7 +4343,7 @@ close_all_connections (struct MHD_Daemon + { + shutdown (pos->socket_fd, + (pos->read_closed == MHD_YES) ? SHUT_WR : SHUT_RDWR); +-#if WINDOWS ++#if MHD_WINSOCK_SOCKETS + if ( (0 != (daemon->options & MHD_USE_THREAD_PER_CONNECTION)) && + (MHD_INVALID_PIPE_ != daemon->wpipe[1]) && + (1 != MHD_pipe_write_ (daemon->wpipe[1], "e", 1)) ) +--- a/src/include/microhttpd.h ++++ b/src/include/microhttpd.h +@@ -130,7 +130,7 @@ typedef intptr_t ssize_t; + * Current version of the library. + * 0x01093001 = 1.9.30-1. + */ +-#define MHD_VERSION 0x00094200 ++#define MHD_VERSION 0x00094202 + + /** + * MHD-internal return code for "YES". +@@ -194,6 +194,53 @@ typedef SOCKET MHD_socket; + #endif /* MHD_SOCKET_DEFINED */ + + /** ++ * Define MHD_NO_DEPRECATION before including "microhttpd.h" to disable deprecation messages ++ */ ++#ifdef MHD_NO_DEPRECATION ++#define _MHD_DEPR_MACRO(msg) ++#define _MHD_DEPR_FUNC(msg) ++#endif /* MHD_NO_DEPRECATION */ ++ ++#ifndef _MHD_DEPR_MACRO ++#if defined(_MSC_FULL_VER) && _MSC_VER+0 >= 1500 ++/* Stringify macros */ ++#define _MHD_INSTRMACRO(a) #a ++#define _MHD_STRMACRO(a) _MHD_INSTRMACRO(a) ++#define _MHD_DEPR_MACRO(msg) __pragma(message(__FILE__ "(" _MHD_STRMACRO(__LINE__)"): warning: " msg)) ++#elif defined(__clang__) || defined (__GNUC_PATCHLEVEL__) ++#define _MHD_GCC_PRAG(x) _Pragma (#x) ++#if __clang_major__+0 >= 5 || \ ++ (!defined(__apple_build_version__) && (__clang_major__+0 > 3 || (__clang_major__+0 == 3 && __clang_minor__ >= 3))) || \ ++ __GNUC__+0 > 4 || (__GNUC__+0 == 4 && __GNUC_MINOR__+0 >= 8) ++#define _MHD_DEPR_MACRO(msg) _MHD_GCC_PRAG(GCC warning msg) ++#else /* older clang or GCC */ ++#define _MHD_DEPR_MACRO(msg) _MHD_GCC_PRAG(message msg) ++#endif ++/* #elif defined(SOMEMACRO) */ /* add compiler-specific macros here if required */ ++#else /* other compilers */ ++#define _MHD_DEPR_MACRO(msg) ++#endif ++#endif /* _MHD_DEPR_MACRO */ ++ ++#ifndef _MHD_DEPR_FUNC ++#if defined(_MSC_FULL_VER) && _MSC_VER+0 >= 1400 ++#define _MHD_DEPR_FUNC(msg) __declspec(deprecated(msg)) ++#elif defined(_MSC_FULL_VER) && _MSC_VER+0 >= 1310 ++/* VS .NET 2003 deprecation do not support custom messages */ ++#define _MHD_DEPR_FUNC(msg) __declspec(deprecated) ++#elif defined (__clang__) && \ ++ (__clang_major__+0 >= 4 || (!defined(__apple_build_version__) && __clang_major__+0 >= 3)) ++#define _MHD_DEPR_FUNC(msg) __attribute__((deprecated(msg))) ++#elif defined (__clang__) || __GNUC__+0 > 3 || (__GNUC__+0 == 3 && __GNUC_MINOR__+0 >= 1) ++/* GCC-style deprecation do not support custom messages */ ++#define _MHD_DEPR_FUNC(msg) __attribute__((__deprecated__)) ++/* #elif defined(SOMEMACRO) */ /* add compiler-specific macros here if required */ ++#else /* other compilers */ ++#define _MHD_DEPR_FUNC(msg) ++#endif ++#endif /* _MHD_DEPR_FUNC */ ++ ++/** + * Not all architectures and `printf()`'s support the `long long` type. + * This gives the ability to replace `long long` with just a `long`, + * standard `int` or a `short`. +@@ -204,6 +251,8 @@ typedef SOCKET MHD_socket; + */ + #define MHD_LONG_LONG long long + #define MHD_UNSIGNED_LONG_LONG unsigned long long ++#else /* MHD_LONG_LONG */ ++_MHD_DEPR_MACRO("Macro MHD_LONG_LONG is deprecated, use MHD_UNSIGNED_LONG_LONG") + #endif + /** + * Format string for printing a variable of type #MHD_LONG_LONG. +@@ -215,6 +264,8 @@ typedef SOCKET MHD_socket; + */ + #define MHD_LONG_LONG_PRINTF "ll" + #define MHD_UNSIGNED_LONG_LONG_PRINTF "%llu" ++#else /* MHD_LONG_LONG_PRINTF */ ++_MHD_DEPR_MACRO("Macro MHD_LONG_LONG_PRINTF is deprecated, use MHD_UNSIGNED_LONG_LONG_PRINTF") + #endif + + +@@ -253,7 +304,8 @@ typedef SOCKET MHD_socket; + #define MHD_HTTP_METHOD_NOT_ALLOWED 405 + #define MHD_HTTP_NOT_ACCEPTABLE 406 + /** @deprecated */ +-#define MHD_HTTP_METHOD_NOT_ACCEPTABLE 406 ++#define MHD_HTTP_METHOD_NOT_ACCEPTABLE \ ++ _MHD_DEPR_MACRO("Value MHD_HTTP_METHOD_NOT_ACCEPTABLE is deprecated, use MHD_HTTP_NOT_ACCEPTABLE") 406 + #define MHD_HTTP_PROXY_AUTHENTICATION_REQUIRED 407 + #define MHD_HTTP_REQUEST_TIMEOUT 408 + #define MHD_HTTP_CONFLICT 409 +@@ -1953,6 +2005,7 @@ MHD_create_response_from_callback (uint6 + * @deprecated use #MHD_create_response_from_buffer instead + * @ingroup response + */ ++_MHD_DEPR_FUNC("MHD_create_response_from_data() is deprecated, use MHD_create_response_from_buffer()") \ + _MHD_EXTERN struct MHD_Response * + MHD_create_response_from_data (size_t size, + void *data, +@@ -2023,6 +2076,8 @@ MHD_create_response_from_buffer (size_t + * @return NULL on error (i.e. invalid arguments, out of memory) + * @ingroup response + */ ++/* NOTE: this should be 'uint64_t' instead of 'size_t', but changing ++ this would break API compatibility. */ + _MHD_EXTERN struct MHD_Response * + MHD_create_response_from_fd (size_t size, + int fd); +@@ -2044,6 +2099,8 @@ MHD_create_response_from_fd (size_t size + * @return NULL on error (i.e. invalid arguments, out of memory) + * @ingroup response + */ ++/* NOTE: this should be 'uint64_t' instead of 'size_t', but changing ++ this would break API compatibility. */ + _MHD_EXTERN struct MHD_Response * + MHD_create_response_from_fd_at_offset (size_t size, + int fd, +--- a/src/include/platform_interface.h ++++ b/src/include/platform_interface.h +@@ -82,14 +82,14 @@ + + + /* MHD_socket_close_(fd) close any FDs (non-W32) / close only socket FDs (W32) */ +-#if !defined(_WIN32) || defined(__CYGWIN__) ++#if !defined(MHD_WINSOCK_SOCKETS) + #define MHD_socket_close_(fd) close((fd)) + #else + #define MHD_socket_close_(fd) closesocket((fd)) + #endif + + /* MHD_socket_errno_ is errno of last function (non-W32) / errno of last socket function (W32) */ +-#if !defined(_WIN32) || defined(__CYGWIN__) ++#if !defined(MHD_WINSOCK_SOCKETS) + #define MHD_socket_errno_ errno + #else + #define MHD_socket_errno_ MHD_W32_errno_from_winsock_() +@@ -97,21 +97,21 @@ + + /* MHD_socket_last_strerr_ is description string of last errno (non-W32) / + * description string of last socket error (W32) */ +-#if !defined(_WIN32) || defined(__CYGWIN__) ++#if !defined(MHD_WINSOCK_SOCKETS) + #define MHD_socket_last_strerr_() strerror(errno) + #else + #define MHD_socket_last_strerr_() MHD_W32_strerror_last_winsock_() + #endif + + /* MHD_strerror_ is strerror (both non-W32/W32) */ +-#if !defined(_WIN32) || defined(__CYGWIN__) ++#if !defined(MHD_WINSOCK_SOCKETS) + #define MHD_strerror_(errnum) strerror((errnum)) + #else + #define MHD_strerror_(errnum) MHD_W32_strerror_((errnum)) + #endif + + /* MHD_set_socket_errno_ set errno to errnum (non-W32) / set socket last error to errnum (W32) */ +-#if !defined(_WIN32) || defined(__CYGWIN__) ++#if !defined(MHD_WINSOCK_SOCKETS) + #define MHD_set_socket_errno_(errnum) errno=(errnum) + #else + #define MHD_set_socket_errno_(errnum) MHD_W32_set_last_winsock_error_((errnum)) +--- a/src/testcurl/test_digestauth.c ++++ b/src/testcurl/test_digestauth.c +@@ -73,7 +73,8 @@ ahc_echo (void *cls, + const char *url, + const char *method, + const char *version, +- const char *upload_data, size_t *upload_data_size, ++ const char *upload_data, ++ size_t *upload_data_size, + void **unused) + { + struct MHD_Response *response; +@@ -82,44 +83,47 @@ ahc_echo (void *cls, + const char *realm = "test@example.com"; + int ret; + +- username = MHD_digest_auth_get_username(connection); ++ username = MHD_digest_auth_get_username (connection); + if ( (username == NULL) || + (0 != strcmp (username, "testuser")) ) + { +- response = MHD_create_response_from_buffer(strlen (DENIED), +- DENIED, +- MHD_RESPMEM_PERSISTENT); ++ response = MHD_create_response_from_buffer (strlen (DENIED), ++ DENIED, ++ MHD_RESPMEM_PERSISTENT); + ret = MHD_queue_auth_fail_response(connection, realm, + MY_OPAQUE, + response, +- MHD_NO); +- MHD_destroy_response(response); ++ MHD_NO); ++ MHD_destroy_response(response); + return ret; + } + ret = MHD_digest_auth_check(connection, realm, +- username, +- password, ++ username, ++ password, + 300); + free(username); + if ( (ret == MHD_INVALID_NONCE) || + (ret == MHD_NO) ) + { +- response = MHD_create_response_from_buffer(strlen (DENIED), ++ response = MHD_create_response_from_buffer(strlen (DENIED), + DENIED, +- MHD_RESPMEM_PERSISTENT); +- if (NULL == response) ++ MHD_RESPMEM_PERSISTENT); ++ if (NULL == response) + return MHD_NO; + ret = MHD_queue_auth_fail_response(connection, realm, + MY_OPAQUE, + response, +- (ret == MHD_INVALID_NONCE) ? MHD_YES : MHD_NO); +- MHD_destroy_response(response); ++ (ret == MHD_INVALID_NONCE) ? MHD_YES : MHD_NO); ++ MHD_destroy_response(response); + return ret; + } +- response = MHD_create_response_from_buffer(strlen(PAGE), PAGE, +- MHD_RESPMEM_PERSISTENT); +- ret = MHD_queue_response(connection, MHD_HTTP_OK, response); +- MHD_destroy_response(response); ++ response = MHD_create_response_from_buffer (strlen(PAGE), ++ PAGE, ++ MHD_RESPMEM_PERSISTENT); ++ ret = MHD_queue_response (connection, ++ MHD_HTTP_OK, ++ response); ++ MHD_destroy_response (response); + return ret; + } + +@@ -144,24 +148,24 @@ testDigestAuth () + fd = open("/dev/urandom", O_RDONLY); + if (-1 == fd) + { +- fprintf(stderr, "Failed to open `%s': %s\n", +- "/dev/urandom", +- strerror(errno)); +- return 1; +- } ++ fprintf(stderr, "Failed to open `%s': %s\n", ++ "/dev/urandom", ++ strerror(errno)); ++ return 1; ++ } + while (off < 8) +- { +- len = read(fd, rnd, 8); +- if (len == -1) +- { +- fprintf(stderr, "Failed to read `%s': %s\n", +- "/dev/urandom", +- strerror(errno)); +- (void) close(fd); +- return 1; +- } +- off += len; +- } ++ { ++ len = read(fd, rnd, 8); ++ if (len == -1) ++ { ++ fprintf(stderr, "Failed to read `%s': %s\n", ++ "/dev/urandom", ++ strerror(errno)); ++ (void) close(fd); ++ return 1; ++ } ++ off += len; ++ } + (void) close(fd); + #else + { +@@ -193,7 +197,7 @@ testDigestAuth () + if (d == NULL) + return 1; + c = curl_easy_init (); +- curl_easy_setopt (c, CURLOPT_URL, "http://127.0.0.1:1337/"); ++ curl_easy_setopt (c, CURLOPT_URL, "http://127.0.0.1:1337/bar%20 foo?a=bü%20"); + curl_easy_setopt (c, CURLOPT_WRITEFUNCTION, ©Buffer); + curl_easy_setopt (c, CURLOPT_WRITEDATA, &cbc); + curl_easy_setopt (c, CURLOPT_HTTPAUTH, CURLAUTH_DIGEST); +@@ -225,7 +229,6 @@ testDigestAuth () + } + + +- + int + main (int argc, char *const *argv) + { +--- a/src/testcurl/https/test_https_time_out.c ++++ b/src/testcurl/https/test_https_time_out.c +@@ -64,7 +64,7 @@ test_tls_session_time_out (gnutls_sessio + + gnutls_transport_set_ptr (session, (gnutls_transport_ptr_t) (intptr_t) sd); + +- ret = connect (sd, &sa, sizeof (struct sockaddr_in)); ++ ret = connect (sd, (struct sockaddr *) &sa, sizeof (struct sockaddr_in)); + + if (ret < 0) + { From 2925877e73c15a0cb0aff518229efe881134983b Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Fri, 26 Jun 2015 04:19:20 +0200 Subject: [PATCH 665/681] gnunet: update source Signed-off-by: Daniel Golle --- net/gnunet/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/net/gnunet/Makefile b/net/gnunet/Makefile index 99baa0d7c..8c8dadc74 100644 --- a/net/gnunet/Makefile +++ b/net/gnunet/Makefile @@ -8,9 +8,9 @@ include $(TOPDIR)/rules.mk PKG_NAME:=gnunet -PKG_SOURCE_VERSION:=35963 +PKG_SOURCE_VERSION:=35991 PKG_VERSION:=0.10.1-svn$(PKG_SOURCE_VERSION) -PKG_RELEASE:=2 +PKG_RELEASE:=1 # ToDo: # - break-out transports From f1fbc7f51e0f82e2be2ed310a5e2df70cfb237db Mon Sep 17 00:00:00 2001 From: Jo-Philipp Wich Date: Fri, 26 Jun 2015 11:51:23 +0200 Subject: [PATCH 666/681] pthsem: fix musl and fortify source compatibility This commit addresses two issues encountered while building pthsem for x86_64/musl: 1) Autoconf incorrectly assumes a broken Glibc and thus falls back to Linux compatibility code which runs into an unsupported platform error with musl libc. Since musl provides a proper implementation of `sigaltstack(2)`, force configure to use the POSIX compliant code when musl libc is used. 2) The `pth_syscall.c` file undefines various libc function names which breaks the indirection set up by fortify-source headers, therefore forcibly disable fortify source in the OpenWrt Makefile. Signed-off-by: Jo-Philipp Wich --- libs/pthsem/Makefile | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/libs/pthsem/Makefile b/libs/pthsem/Makefile index 6e07e6854..54d7737e1 100644 --- a/libs/pthsem/Makefile +++ b/libs/pthsem/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=pthsem PKG_VERSION:=2.0.8 -PKG_RELEASE:=3 +PKG_RELEASE:=4 PKG_MAINTAINER:=Othmar Truniger PKG_LICENSE:=LGPL-2.1+ @@ -21,6 +21,7 @@ PKG_MD5SUM:=9144b26dcc27e67498d63dd5456f934c PKG_FIXUP:=autoreconf PKG_BUILD_PARALLEL:=1 +PKG_FORTIFY_SOURCE:=0 PKG_INSTALL:=1 include $(INCLUDE_DIR)/package.mk @@ -37,6 +38,13 @@ define Package/pthsem/description pthsem is an extend version, with support for semaphores added. It can be installed parallel to a normal pth. endef +# The musl libc provides a proper implementation of sigaltstack() so +# prevent configure from wrongly assuming a broken Linux platform +ifeq ($(CONFIG_USE_MUSL),y) + CONFIGURE_VARS += \ + ac_cv_check_sjlj=ssjlj +endif + define Build/InstallDev $(INSTALL_DIR) $(1)/usr/bin $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/pthsem-config $(1)/usr/bin/ From abcadcbedea6fd6167022c008524ce99279d210a Mon Sep 17 00:00:00 2001 From: Jo-Philipp Wich Date: Fri, 26 Jun 2015 14:51:16 +0200 Subject: [PATCH 667/681] postfix: fix musl compatibility The current package patches `makedefs` to probe for the existance of the `nsl` and `resolv` libraries but uses the wrong variables for the prefix, leading to `makedefs` probing the host directories, not the staging dir ones. Replace `$PKG_BUILD_DIR` with `$STAGING_DIR` to perform the library tests in the correct directory. Fixes the following error spotted by doing test builds against musl which does not provide a `libnsl`: .../mips-openwrt-linux-musl/bin/ld: cannot find -lnsl collect2: error: ld returned 1 exit status make: *** [master] Error 1 Signed-off-by: Jo-Philipp Wich --- mail/postfix/Makefile | 4 ++-- mail/postfix/patches/500-crosscompile.patch | 10 +++++----- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/mail/postfix/Makefile b/mail/postfix/Makefile index 3f3ba0ff6..bcbb07a18 100644 --- a/mail/postfix/Makefile +++ b/mail/postfix/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2014 OpenWrt.org +# Copyright (C) 2014-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -8,7 +8,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=postfix -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE_URL:=ftp://ftp.porcupine.org/mirrors/postfix-release/official/ PKG_VERSION:=3.0.1 PKG_MD5SUM:=3ec1416e7d4fba9566297c8fcf7a348c diff --git a/mail/postfix/patches/500-crosscompile.patch b/mail/postfix/patches/500-crosscompile.patch index e4123ef00..0366612bb 100644 --- a/mail/postfix/patches/500-crosscompile.patch +++ b/mail/postfix/patches/500-crosscompile.patch @@ -1,6 +1,6 @@ ---- postfix-2.10.2/makedefs 2013-02-04 05:33:13.000000000 +0400 -+++ postfix-2.10.2_patched/makedefs 2013-11-19 22:48:50.528560454 +0400 -@@ -190,9 +190,9 @@ +--- a/makedefs ++++ b/makedefs +@@ -190,9 +190,9 @@ error() { case $# in # Officially supported usage. @@ -13,7 +13,7 @@ case "$VERSION" in dcosx*) SYSTEM=$VERSION;; esac;; -@@ -522,9 +522,9 @@ +@@ -522,9 +522,9 @@ EOF esac for name in nsl resolv do @@ -21,7 +21,7 @@ + for lib in /usr/lib64 /usr/lib64/* /usr/lib /usr/lib/* /lib /lib/* do - test -e $lib/lib$name.a -o -e $lib/lib$name.so && { -+ test -e $PKG_BUILD_DIR/$lib/lib$name.a -o -e $PKG_BUILD_DIR/$lib/lib$name.so && { ++ test -e $STAGING_DIR/$lib/lib$name.a -o -e $STAGING_DIR/$lib/lib$name.so && { SYSLIBS="$SYSLIBS -l$name" break } From 940c522cf694b87a58a20152401d9dbe7f0a935c Mon Sep 17 00:00:00 2001 From: Jo-Philipp Wich Date: Thu, 25 Jun 2015 11:38:08 +0200 Subject: [PATCH 668/681] lm-sensors: fix musl compatibility Only use `asm/io.h` for uClibc, else include `sys/io.h` Signed-off-by: Jo-Philipp Wich --- utils/lm-sensors/Makefile | 4 +- .../lm-sensors/patches/100-musl-compat.patch | 44 +++++++++++++++++++ 2 files changed, 46 insertions(+), 2 deletions(-) create mode 100644 utils/lm-sensors/patches/100-musl-compat.patch diff --git a/utils/lm-sensors/Makefile b/utils/lm-sensors/Makefile index 02faccb15..4dcea0caf 100644 --- a/utils/lm-sensors/Makefile +++ b/utils/lm-sensors/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2006-2014 OpenWrt.org +# Copyright (C) 2006-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=lm-sensors PKG_VERSION:=3.3.5 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE:=lm_sensors-$(PKG_VERSION).tar.bz2 PKG_SOURCE_URL:=http://dl.lm-sensors.org/lm-sensors/releases diff --git a/utils/lm-sensors/patches/100-musl-compat.patch b/utils/lm-sensors/patches/100-musl-compat.patch new file mode 100644 index 000000000..1cd82aba9 --- /dev/null +++ b/utils/lm-sensors/patches/100-musl-compat.patch @@ -0,0 +1,44 @@ +--- a/prog/dump/isadump.c ++++ b/prog/dump/isadump.c +@@ -38,7 +38,7 @@ + + + /* To keep glibc2 happy */ +-#if defined(__GLIBC__) && __GLIBC__ == 2 && __GLIBC_MINOR__ >= 0 ++#if !defined(__UCLIBC__) + #include + #else + #include +--- a/prog/dump/isaset.c ++++ b/prog/dump/isaset.c +@@ -34,7 +34,7 @@ + + + /* To keep glibc2 happy */ +-#if defined(__GLIBC__) && __GLIBC__ == 2 && __GLIBC_MINOR__ >= 0 ++#if !defined(__UCLIBC__) + #include + #else + #include +--- a/prog/dump/superio.c ++++ b/prog/dump/superio.c +@@ -21,7 +21,7 @@ + + #include + +-#if defined(__GLIBC__) && __GLIBC__ == 2 && __GLIBC_MINOR__ >= 0 ++#if !defined(__UCLIBC__) + #include + #else + #include +--- a/prog/dump/util.c ++++ b/prog/dump/util.c +@@ -12,7 +12,7 @@ + #include "util.h" + + /* To keep glibc2 happy */ +-#if defined(__GLIBC__) && __GLIBC__ == 2 && __GLIBC_MINOR__ >= 0 ++#if !defined(__UCLIBC__) + #include + #else + #include From d3c279d4f632c9b9e9fcb46df78f7ace9acffc56 Mon Sep 17 00:00:00 2001 From: Jo-Philipp Wich Date: Fri, 26 Jun 2015 16:38:42 +0200 Subject: [PATCH 669/681] open-plc-utils: fix musl and fortify source compatibility - Include `poll.h` at the top of `ether/readpacket.c` to avoid nested declaration errors caused by fortify source headers - Add missing `sys/select.h` include to `serial/serial.c` Signed-off-by: Jo-Philipp Wich --- utils/open-plc-utils/Makefile | 4 +-- .../patches/100-musl-compat.patch | 33 +++++++++++++++++++ 2 files changed, 35 insertions(+), 2 deletions(-) create mode 100644 utils/open-plc-utils/patches/100-musl-compat.patch diff --git a/utils/open-plc-utils/Makefile b/utils/open-plc-utils/Makefile index 1c8ef9d51..480711a74 100644 --- a/utils/open-plc-utils/Makefile +++ b/utils/open-plc-utils/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2013-2014 OpenWrt.org +# Copyright (C) 2013-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -8,7 +8,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=open-plc-utils -PKG_VERSION:=2015-02-23 +PKG_VERSION:=2015-06-26 PKG_RELEASE:=$(PKG_SOURCE_VERSION) PKG_SOURCE_PROTO:=git diff --git a/utils/open-plc-utils/patches/100-musl-compat.patch b/utils/open-plc-utils/patches/100-musl-compat.patch new file mode 100644 index 000000000..c20c0a1fe --- /dev/null +++ b/utils/open-plc-utils/patches/100-musl-compat.patch @@ -0,0 +1,33 @@ +--- a/ether/readpacket.c ++++ b/ether/readpacket.c +@@ -70,6 +70,10 @@ + #include + #include + ++#if defined (__linux__) ++#include ++#endif ++ + #include "../ether/channel.h" + #include "../tools/memory.h" + #include "../tools/error.h" +@@ -95,8 +99,6 @@ ssize_t readpacket (struct channel const + + #elif defined (__linux__) + +-#include +- + struct pollfd pollfd = + { + channel->fd, +--- a/serial/serial.c ++++ b/serial/serial.c +@@ -69,6 +69,8 @@ + + #if defined (WIN32) + #include ++#else ++#include + #endif + + /*====================================================================* From e10abaf165cce3418a3053ef4cefbf8a972040ad Mon Sep 17 00:00:00 2001 From: Jo-Philipp Wich Date: Fri, 26 Jun 2015 16:47:16 +0200 Subject: [PATCH 670/681] ntripclient: fix musl comaptibility Add missing `sys/select.h` include to `ntripclient.c` to provide declarations for `struct timeval` and `fd_set` under musl. Signed-off-by: Jo-Philipp Wich --- net/ntripclient/Makefile | 5 +++-- net/ntripclient/patches/100-musl-compat.patch | 10 ++++++++++ 2 files changed, 13 insertions(+), 2 deletions(-) create mode 100644 net/ntripclient/patches/100-musl-compat.patch diff --git a/net/ntripclient/Makefile b/net/ntripclient/Makefile index 249f75ba2..2276b31ad 100644 --- a/net/ntripclient/Makefile +++ b/net/ntripclient/Makefile @@ -1,6 +1,6 @@ # # Copyright (C) 2011 segal.ubi.pt -# Copyright (C) 2010-2014 OpenWrt.org +# Copyright (C) 2010-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -10,7 +10,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=ntripclient PKG_VERSION:=1.5.0 -PKG_RELEASE:=2 +PKG_RELEASE:=3 PKG_LICENSE:=GPL-2.0+ PKG_SOURCE:=$(PKG_NAME).zip @@ -36,6 +36,7 @@ endef define Build/Prepare mkdir -p $(PKG_BUILD_DIR) unzip $(DL_DIR)/$(PKG_SOURCE) -d $(PKG_BUILD_DIR) + $(call Build/Prepare/Default) endef MAKE_FLAGS += \ diff --git a/net/ntripclient/patches/100-musl-compat.patch b/net/ntripclient/patches/100-musl-compat.patch new file mode 100644 index 000000000..10f690fd9 --- /dev/null +++ b/net/ntripclient/patches/100-musl-compat.patch @@ -0,0 +1,10 @@ +--- a/ntripclient.c ++++ b/ntripclient.c +@@ -44,6 +44,7 @@ + #include + #include + #include ++ #include + #include + #include + #include From cbf11196b75119d40c6632e3a1585d5b4997fc01 Mon Sep 17 00:00:00 2001 From: Jo-Philipp Wich Date: Fri, 26 Jun 2015 17:09:13 +0200 Subject: [PATCH 671/681] ntpd: fix fortify source compatibility The ntpd package ships autoconf macros which attempt to test for the C99 compliance of `snprintf()` and `vsnprintf()`. Those macros unconditionally consider the functions not compliant in a cross compile setting and therfore break all subsequent configure tests because the `snprintf` and `vsnprintf` symbols are shadowed with `#define` directives redirecting them to their respectiv gnulib replacements. The fortify source headers in turn will `#undef` those defines when wrapping the associated functions and therfore cause all `conftest` programs to emit a failure. Pass the required magic autoconf cache variables via `CONFIGURE_VARS` to let `./configure` assume C99 compliance of the affected functions, thus fixing the build. Signed-off-by: Jo-Philipp Wich --- net/ntpd/Makefile | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/net/ntpd/Makefile b/net/ntpd/Makefile index b9c9706cb..787e77955 100644 --- a/net/ntpd/Makefile +++ b/net/ntpd/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=ntp PKG_VERSION:=4.2.8p2 -PKG_RELEASE:=2 +PKG_RELEASE:=3 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://www.eecis.udel.edu/~ntp/ntp_spool/ntp4/ntp-4.2/ @@ -93,7 +93,9 @@ endef CONFIGURE_VARS += \ ac_cv_header_md5_h=no \ ac_cv_lib_rt_sched_setscheduler=no \ - ac_cv_header_dns_sd_h=no + ac_cv_header_dns_sd_h=no \ + hw_cv_func_snprintf_c99=yes \ + hw_cv_func_vsnprintf_c99=yes \ CONFIGURE_ARGS += \ --disable-all-clocks \ From fdde98152234dbd771b47136be40342ca5b8c76c Mon Sep 17 00:00:00 2001 From: Jo-Philipp Wich Date: Fri, 26 Jun 2015 17:46:10 +0200 Subject: [PATCH 672/681] net-snmp: fix musl compatibility Fixup `iwlib.h` to not consider an musl environment to be an unsupported platform. Signed-off-by: Jo-Philipp Wich --- net/net-snmp/Makefile | 4 ++-- net/net-snmp/patches/900-musl-compat.patch | 14 ++++++++++++++ 2 files changed, 16 insertions(+), 2 deletions(-) create mode 100644 net/net-snmp/patches/900-musl-compat.patch diff --git a/net/net-snmp/Makefile b/net/net-snmp/Makefile index 5736e0d7d..38d038035 100644 --- a/net/net-snmp/Makefile +++ b/net/net-snmp/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2006-2014 OpenWrt.org +# Copyright (C) 2006-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=net-snmp PKG_VERSION:=5.4.4 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=@SF/net-snmp diff --git a/net/net-snmp/patches/900-musl-compat.patch b/net/net-snmp/patches/900-musl-compat.patch new file mode 100644 index 000000000..fa9a01e1b --- /dev/null +++ b/net/net-snmp/patches/900-musl-compat.patch @@ -0,0 +1,14 @@ +--- a/agent/mibgroup/iwlib.h ++++ b/agent/mibgroup/iwlib.h +@@ -85,6 +85,11 @@ + && LINUX_VERSION_CODE < KERNEL_VERSION(2,1,0) + #define LIBC5_HEADERS + ++/* Musl */ ++#elif !defined(__GLIBC__) && !defined(__UCLIBC__) \ ++ && LINUX_VERSION_CODE >= KERNEL_VERSION(3,0,0) ++#define GENERIC_HEADERS ++ + /* Unsupported combination */ + #else + #error "Your kernel/libc combination is not supported" From 7c0d75e0133d864e1bb8517524f8019a4c2d0676 Mon Sep 17 00:00:00 2001 From: heil Date: Fri, 26 Jun 2015 18:02:49 +0200 Subject: [PATCH 673/681] haproxy: bugfix release 1.5.13 Released version 1.5.13 with the following main changes : - BUG/MINOR: check: fix tcpcheck error message - CLEANUP: deinit: remove codes for cleaning p->block_rules - DOC: Update doc about weight, act and bck fields in the statistics - MINOR: ssl: add a destructor to free allocated SSL ressources - BUG/MEDIUM: ssl: fix tune.ssl.default-dh-param value being overwritten - MEDIUM: ssl: replace standards DH groups with custom ones - BUG/MINOR: debug: display (null) in place of "meth" - BUG/MINOR: cfgparse: fix typo in 'option httplog' error message - BUG/MEDIUM: cfgparse: segfault when userlist is misused - BUG/MEDIUM: stats: properly initialize the scope before dumping stats - BUG/MEDIUM: http: don't forward client shutdown without NOLINGER except for tunnels - CLEANUP: checks: fix double usage of cur / current_step in tcp-checks - BUG/MEDIUM: checks: do not dereference head of a tcp-check at the end - CLEANUP: checks: simplify the loop processing of tcp-checks - BUG/MAJOR: checks: always check for end of list before proceeding - BUG/MEDIUM: checks: do not dereference a list as a tcpcheck struct - BUG/MEDIUM: peers: apply a random reconnection timeout - BUG/MINOR: ssl: fix smp_fetch_ssl_fc_session_id - MEDIUM: init: don't stop proxies in parent process when exiting - MINOR: peers: store the pointer to the signal handler - MEDIUM: peers: unregister peers that were never started - MEDIUM: config: propagate the table's process list to the peers sections - MEDIUM: init: stop any peers section not bound to the correct process - MEDIUM: config: validate that peers sections are bound to exactly one process - MAJOR: peers: allow peers section to be used with nbproc > 1 - DOC: relax the peers restriction to single-process - CLEANUP: config: fix misleading information in error message. - MINOR: config: report the number of processes using a peers section in the error case - BUG/MEDIUM: config: properly compute the default number of processes for a proxy Signed-off-by: heil --- net/haproxy/Makefile | 6 +- ...-properly-initialize-the-scope-befor.patch | 32 -- ...don-t-forward-client-shutdown-withou.patch | 82 ---- ...NOR-check-fix-tcpcheck-error-message.patch | 28 -- ...ix-double-usage-of-cur-current_step-.patch | 178 -------- ...s-do-not-dereference-head-of-a-tcp-c.patch | 53 --- ...implify-the-loop-processing-of-tcp-c.patch | 82 ---- ...-always-check-for-end-of-list-before.patch | 90 ---- ...s-do-not-dereference-a-list-as-a-tcp.patch | 116 ----- ...-apply-a-random-reconnection-timeout.patch | 77 ---- ...bout-weight-act-and-bck-fields-in-th.patch | 33 -- ...destructor-to-free-allocated-SSL-res.patch | 64 --- ...ix-tune.ssl.default-dh-param-value-b.patch | 98 ---- ...se-fix-typo-in-option-httplog-error-.patch | 29 -- ...rse-segfault-when-userlist-is-misuse.patch | 41 -- ...ce-standards-DH-groups-with-custom-o.patch | 427 ------------------ ...-debug-display-null-in-place-of-meth.patch | 28 -- ...emove-codes-for-cleaning-p-block_rul.patch | 36 -- ...-ssl-fix-smp_fetch_ssl_fc_session_id.patch | 37 -- 19 files changed, 3 insertions(+), 1534 deletions(-) delete mode 100644 net/haproxy/patches/0001-BUG-MEDIUM-stats-properly-initialize-the-scope-befor.patch delete mode 100644 net/haproxy/patches/0002-BUG-MEDIUM-http-don-t-forward-client-shutdown-withou.patch delete mode 100644 net/haproxy/patches/0003-BUG-MINOR-check-fix-tcpcheck-error-message.patch delete mode 100644 net/haproxy/patches/0004-CLEANUP-checks-fix-double-usage-of-cur-current_step-.patch delete mode 100644 net/haproxy/patches/0005-BUG-MEDIUM-checks-do-not-dereference-head-of-a-tcp-c.patch delete mode 100644 net/haproxy/patches/0006-CLEANUP-checks-simplify-the-loop-processing-of-tcp-c.patch delete mode 100644 net/haproxy/patches/0007-BUG-MAJOR-checks-always-check-for-end-of-list-before.patch delete mode 100644 net/haproxy/patches/0008-BUG-MEDIUM-checks-do-not-dereference-a-list-as-a-tcp.patch delete mode 100644 net/haproxy/patches/0009-BUG-MEDIUM-peers-apply-a-random-reconnection-timeout.patch delete mode 100644 net/haproxy/patches/0010-DOC-Update-doc-about-weight-act-and-bck-fields-in-th.patch delete mode 100644 net/haproxy/patches/0011-MINOR-ssl-add-a-destructor-to-free-allocated-SSL-res.patch delete mode 100644 net/haproxy/patches/0012-BUG-MEDIUM-ssl-fix-tune.ssl.default-dh-param-value-b.patch delete mode 100644 net/haproxy/patches/0013-BUG-MINOR-cfgparse-fix-typo-in-option-httplog-error-.patch delete mode 100644 net/haproxy/patches/0014-BUG-MEDIUM-cfgparse-segfault-when-userlist-is-misuse.patch delete mode 100644 net/haproxy/patches/0015-MEDIUM-ssl-replace-standards-DH-groups-with-custom-o.patch delete mode 100644 net/haproxy/patches/0016-BUG-MINOR-debug-display-null-in-place-of-meth.patch delete mode 100644 net/haproxy/patches/0017-CLEANUP-deinit-remove-codes-for-cleaning-p-block_rul.patch delete mode 100644 net/haproxy/patches/0018-BUG-MINOR-ssl-fix-smp_fetch_ssl_fc_session_id.patch diff --git a/net/haproxy/Makefile b/net/haproxy/Makefile index 71fa81d1d..cd37fc776 100644 --- a/net/haproxy/Makefile +++ b/net/haproxy/Makefile @@ -9,12 +9,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=haproxy -PKG_VERSION:=1.5.12 -PKG_RELEASE:=18 +PKG_VERSION:=1.5.13 +PKG_RELEASE:=00 PKG_SOURCE:=haproxy-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://haproxy.1wt.eu/download/1.5/src/ PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/$(PKG_NAME)-$(PKG_VERSION) -PKG_MD5SUM:=4b94b257f16d88c315716b062b22e48a +PKG_MD5SUM:=30cf07875ecae4fd6c4c309627afa8f1 PKG_MAINTAINER:=Thomas Heil PKG_LICENSE:=GPL-2.0 diff --git a/net/haproxy/patches/0001-BUG-MEDIUM-stats-properly-initialize-the-scope-befor.patch b/net/haproxy/patches/0001-BUG-MEDIUM-stats-properly-initialize-the-scope-befor.patch deleted file mode 100644 index 4ae6c9a84..000000000 --- a/net/haproxy/patches/0001-BUG-MEDIUM-stats-properly-initialize-the-scope-befor.patch +++ /dev/null @@ -1,32 +0,0 @@ -From 0aa5899911bbc765ba16ce52a80fa76230781779 Mon Sep 17 00:00:00 2001 -From: Willy Tarreau -Date: Mon, 4 May 2015 18:07:56 +0200 -Subject: [PATCH 1/2] BUG/MEDIUM: stats: properly initialize the scope before - dumping stats - -Issuing a "show sess all" prior to a "show stat" on the CLI results in no -proxy being dumped because the scope_len union member was not properly -reinitialized. - -This fix must be backported into 1.5. -(cherry picked from commit 6bcb95da5b9cb143088102b460c7bcb37c1b3d81) ---- - src/dumpstats.c | 2 ++ - 1 file changed, 2 insertions(+) - -diff --git a/src/dumpstats.c b/src/dumpstats.c -index b616478..ca084ac 100644 ---- a/src/dumpstats.c -+++ b/src/dumpstats.c -@@ -1109,6 +1109,8 @@ static int stats_sock_parse_request(struct stream_interface *si, char *line) - arg++; - } - -+ appctx->ctx.stats.scope_str = 0; -+ appctx->ctx.stats.scope_len = 0; - appctx->ctx.stats.flags = 0; - if (strcmp(args[0], "show") == 0) { - if (strcmp(args[1], "stat") == 0) { --- -2.0.5 - diff --git a/net/haproxy/patches/0002-BUG-MEDIUM-http-don-t-forward-client-shutdown-withou.patch b/net/haproxy/patches/0002-BUG-MEDIUM-http-don-t-forward-client-shutdown-withou.patch deleted file mode 100644 index 3875b8879..000000000 --- a/net/haproxy/patches/0002-BUG-MEDIUM-http-don-t-forward-client-shutdown-withou.patch +++ /dev/null @@ -1,82 +0,0 @@ -From 294e4676a3b775a7accb50eb8428f293c218b5e2 Mon Sep 17 00:00:00 2001 -From: Willy Tarreau -Date: Mon, 11 May 2015 18:30:33 +0200 -Subject: [PATCH 2/2] BUG/MEDIUM: http: don't forward client shutdown without - NOLINGER except for tunnels - -There's an issue related with shutting down POST transfers or closing the -connection after the end of the upload : the shutdown is forwarded to the -server regardless of the abortonclose option. The problem it causes is that -during a scan, brute force or whatever, it becomes possible that all source -ports are exhausted with all sockets in TIME_WAIT state. - -There are multiple issues at once in fact : - - no action is done for the close, it automatically happens at the lower - layers thanks for channel_auto_close(), so we cannot act on NOLINGER ; - - - we *do* want to continue to send a clean shutdown in tunnel mode because - some protocols transported over HTTP may need this, regardless of option - abortonclose, thus we can't set the option inconditionally - - - for all other modes, we do want to close the dirty way because we're - certain whether we've sent everything or not, and we don't want to eat - all source ports. - -The solution is a bit complex and applies to DONE/TUNNEL states : - - 1) disable automatic close for everything not a tunnel and not just - keep-alive / server-close. Force-close is now covered, as is HTTP/1.0 - which implicitly works in force-close mode ; - - 2) when processing option abortonclose, we know we can disable lingering - if the client has closed and the connection is not in tunnel mode. - -Since the last case above leads to a situation where the client side reports -an error, we know the connection will not be reused, so leaving the flag on -the stream-interface is safe. A client closing in the middle of the data -transmission already aborts the transaction so this case is not a problem. - -This fix must be backported to 1.5 where the problem was detected. -(cherry picked from commit bbfb6c40854925367ae5f9e8b22c5c9a18dc69d5) ---- - src/proto_http.c | 14 ++++++++++---- - 1 file changed, 10 insertions(+), 4 deletions(-) - -diff --git a/src/proto_http.c b/src/proto_http.c -index 0ac3a47..5db64b5 100644 ---- a/src/proto_http.c -+++ b/src/proto_http.c -@@ -5452,9 +5452,10 @@ int http_request_forward_body(struct session *s, struct channel *req, int an_bit - msg->sov -= msg->next; - msg->next = 0; - -- /* for keep-alive we don't want to forward closes on DONE */ -- if ((txn->flags & TX_CON_WANT_MSK) == TX_CON_WANT_KAL || -- (txn->flags & TX_CON_WANT_MSK) == TX_CON_WANT_SCL) -+ /* we don't want to forward closes on DONE except in -+ * tunnel mode. -+ */ -+ if ((txn->flags & TX_CON_WANT_MSK) != TX_CON_WANT_TUN) - channel_dont_close(req); - if (http_resync_states(s)) { - /* some state changes occurred, maybe the analyser -@@ -5478,10 +5479,15 @@ int http_request_forward_body(struct session *s, struct channel *req, int an_bit - * want to monitor the client's connection and forward - * any shutdown notification to the server, which will - * decide whether to close or to go on processing the -- * request. -+ * request. We only do that in tunnel mode, and not in -+ * other modes since it can be abused to exhaust source -+ * ports. - */ - if (s->be->options & PR_O_ABRT_CLOSE) { - channel_auto_read(req); -+ if ((req->flags & (CF_SHUTR|CF_READ_NULL)) && -+ ((txn->flags & TX_CON_WANT_MSK) != TX_CON_WANT_TUN)) -+ s->si[1].flags |= SI_FL_NOLINGER; - channel_auto_close(req); - } - else if (s->txn.meth == HTTP_METH_POST) { --- -2.0.5 - diff --git a/net/haproxy/patches/0003-BUG-MINOR-check-fix-tcpcheck-error-message.patch b/net/haproxy/patches/0003-BUG-MINOR-check-fix-tcpcheck-error-message.patch deleted file mode 100644 index 9bb33119e..000000000 --- a/net/haproxy/patches/0003-BUG-MINOR-check-fix-tcpcheck-error-message.patch +++ /dev/null @@ -1,28 +0,0 @@ -From 68e4fc2b9910dd090c5e729203b72444f75aaa75 Mon Sep 17 00:00:00 2001 -From: Baptiste Assmann -Date: Fri, 1 May 2015 08:09:29 +0200 -Subject: [PATCH 3/8] BUG/MINOR: check: fix tcpcheck error message - -add the keyword 'string' when required (error in a tcpcheck expect -string) -(cherry picked from commit 96a5c9b57738c05ecce7822093b9c4118123dc1e) ---- - src/checks.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/checks.c b/src/checks.c -index 71debb6..8b53f97 100644 ---- a/src/checks.c -+++ b/src/checks.c -@@ -614,7 +614,7 @@ static void chk_report_conn_err(struct connection *conn, int errno_bck, int expi - } - else if (check->last_started_step && check->last_started_step->action == TCPCHK_ACT_EXPECT) { - if (check->last_started_step->string) -- chunk_appendf(chk, " (string '%s')", check->last_started_step->string); -+ chunk_appendf(chk, " (expect string '%s')", check->last_started_step->string); - else if (check->last_started_step->expect_regex) - chunk_appendf(chk, " (expect regex)"); - } --- -2.0.5 - diff --git a/net/haproxy/patches/0004-CLEANUP-checks-fix-double-usage-of-cur-current_step-.patch b/net/haproxy/patches/0004-CLEANUP-checks-fix-double-usage-of-cur-current_step-.patch deleted file mode 100644 index 6acba4e87..000000000 --- a/net/haproxy/patches/0004-CLEANUP-checks-fix-double-usage-of-cur-current_step-.patch +++ /dev/null @@ -1,178 +0,0 @@ -From 4f889006269e4d3f802de46f280ed198a15e3a69 Mon Sep 17 00:00:00 2001 -From: Willy Tarreau -Date: Wed, 13 May 2015 11:23:01 +0200 -Subject: [PATCH 4/8] CLEANUP: checks: fix double usage of cur / current_step - in tcp-checks - -This cleanup is a preliminary requirement to the upcoming fixes for -the bug that affect tcp-check's improper use of lists. It will have -to be backported to 1.5 though it will not easily apply. - -There are two variables pointing to the current rule within the loop, -and either one or the other is used depending on the code blocks, -making it much harder to apply checks to fix the list walking bug. -So first get rid of "cur" and only focus on current_step. -(cherry picked from commit ce8c42a37a44a1e0cb94e81abb7cc2baf3d0ef80) - -[wt: 1.5 doesn't have comments so this patch differs significantly - from 1.6, but it's needed for the next batch of fixes] ---- - src/checks.c | 57 ++++++++++++++++++++++++++++----------------------------- - 1 file changed, 28 insertions(+), 29 deletions(-) - -diff --git a/src/checks.c b/src/checks.c -index 8b53f97..cfdfe8c 100644 ---- a/src/checks.c -+++ b/src/checks.c -@@ -1859,7 +1859,7 @@ static int tcpcheck_get_step_id(struct server *s) - static void tcpcheck_main(struct connection *conn) - { - char *contentptr; -- struct tcpcheck_rule *cur, *next; -+ struct tcpcheck_rule *next; - int done = 0, ret = 0; - struct check *check = conn->owner; - struct server *s = check->server; -@@ -1916,15 +1916,11 @@ static void tcpcheck_main(struct connection *conn) - check->bo->o = 0; - check->bi->p = check->bi->data; - check->bi->i = 0; -- cur = check->current_step = LIST_ELEM(head->n, struct tcpcheck_rule *, list); -+ check->current_step = LIST_ELEM(head->n, struct tcpcheck_rule *, list); - t->expire = tick_add(now_ms, MS_TO_TICKS(check->inter)); - if (s->proxy->timeout.check) - t->expire = tick_add_ifset(now_ms, s->proxy->timeout.check); - } -- /* keep on processing step */ -- else { -- cur = check->current_step; -- } - - /* It's only the rules which will enable send/recv */ - __conn_data_stop_both(conn); -@@ -1934,7 +1930,7 @@ static void tcpcheck_main(struct connection *conn) - * or if we're about to send a string that does not fit in the remaining space. - */ - if (check->bo->o && -- (&cur->list == head || -+ (&check->current_step->list == head || - check->current_step->action != TCPCHK_ACT_SEND || - check->current_step->string_len >= buffer_total_space(check->bo))) { - -@@ -1949,14 +1945,17 @@ static void tcpcheck_main(struct connection *conn) - } - - /* did we reach the end ? If so, let's check that everything was sent */ -- if (&cur->list == head) { -+ if (&check->current_step->list == head) { - if (check->bo->o) - goto out_need_io; - break; - } - -- /* have 'next' point to the next rule or NULL if we're on the last one */ -- next = (struct tcpcheck_rule *)cur->list.n; -+ /* have 'next' point to the next rule or NULL if we're on the -+ * last one, connect() needs this. -+ */ -+ next = (struct tcpcheck_rule *)check->current_step->list.n; -+ - if (&next->list == head) - next = NULL; - -@@ -2058,8 +2057,7 @@ static void tcpcheck_main(struct connection *conn) - } - - /* allow next rule */ -- cur = (struct tcpcheck_rule *)cur->list.n; -- check->current_step = cur; -+ check->current_step = (struct tcpcheck_rule *)check->current_step->list.n; - - /* don't do anything until the connection is established */ - if (!(conn->flags & CO_FL_CONNECTED)) { -@@ -2113,8 +2111,7 @@ static void tcpcheck_main(struct connection *conn) - *check->bo->p = '\0'; /* to make gdb output easier to read */ - - /* go to next rule and try to send */ -- cur = (struct tcpcheck_rule *)cur->list.n; -- check->current_step = cur; -+ check->current_step = (struct tcpcheck_rule *)check->current_step->list.n; - } /* end 'send' */ - else if (check->current_step->action == TCPCHK_ACT_EXPECT) { - if (unlikely(check->result == CHK_RES_FAILED)) -@@ -2167,14 +2164,14 @@ static void tcpcheck_main(struct connection *conn) - goto out_end_tcpcheck; - } - -- if (!done && (cur->string != NULL) && (check->bi->i < cur->string_len) ) -+ if (!done && (check->current_step->string != NULL) && (check->bi->i < check->current_step->string_len) ) - continue; /* try to read more */ - - tcpcheck_expect: -- if (cur->string != NULL) -- ret = my_memmem(contentptr, check->bi->i, cur->string, cur->string_len) != NULL; -- else if (cur->expect_regex != NULL) -- ret = regex_exec(cur->expect_regex, contentptr); -+ if (check->current_step->string != NULL) -+ ret = my_memmem(contentptr, check->bi->i, check->current_step->string, check->current_step->string_len) != NULL; -+ else if (check->current_step->expect_regex != NULL) -+ ret = regex_exec(check->current_step->expect_regex, contentptr); - - if (!ret && !done) - continue; /* try to read more */ -@@ -2182,11 +2179,11 @@ static void tcpcheck_main(struct connection *conn) - /* matched */ - if (ret) { - /* matched but we did not want to => ERROR */ -- if (cur->inverse) { -+ if (check->current_step->inverse) { - /* we were looking for a string */ -- if (cur->string != NULL) { -+ if (check->current_step->string != NULL) { - chunk_printf(&trash, "TCPCHK matched unwanted content '%s' at step %d", -- cur->string, tcpcheck_get_step_id(s)); -+ check->current_step->string, tcpcheck_get_step_id(s)); - } - else { - /* we were looking for a regex */ -@@ -2198,8 +2195,9 @@ static void tcpcheck_main(struct connection *conn) - } - /* matched and was supposed to => OK, next step */ - else { -- cur = (struct tcpcheck_rule*)cur->list.n; -- check->current_step = cur; -+ /* allow next rule */ -+ check->current_step = (struct tcpcheck_rule *)check->current_step->list.n; -+ - if (check->current_step->action == TCPCHK_ACT_EXPECT) - goto tcpcheck_expect; - __conn_data_stop_recv(conn); -@@ -2208,9 +2206,10 @@ static void tcpcheck_main(struct connection *conn) - else { - /* not matched */ - /* not matched and was not supposed to => OK, next step */ -- if (cur->inverse) { -- cur = (struct tcpcheck_rule*)cur->list.n; -- check->current_step = cur; -+ if (check->current_step->inverse) { -+ /* allow next rule */ -+ check->current_step = (struct tcpcheck_rule *)check->current_step->list.n; -+ - if (check->current_step->action == TCPCHK_ACT_EXPECT) - goto tcpcheck_expect; - __conn_data_stop_recv(conn); -@@ -2218,9 +2217,9 @@ static void tcpcheck_main(struct connection *conn) - /* not matched but was supposed to => ERROR */ - else { - /* we were looking for a string */ -- if (cur->string != NULL) { -+ if (check->current_step->string != NULL) { - chunk_printf(&trash, "TCPCHK did not match content '%s' at step %d", -- cur->string, tcpcheck_get_step_id(s)); -+ check->current_step->string, tcpcheck_get_step_id(s)); - } - else { - /* we were looking for a regex */ --- -2.0.5 - diff --git a/net/haproxy/patches/0005-BUG-MEDIUM-checks-do-not-dereference-head-of-a-tcp-c.patch b/net/haproxy/patches/0005-BUG-MEDIUM-checks-do-not-dereference-head-of-a-tcp-c.patch deleted file mode 100644 index f4bc68315..000000000 --- a/net/haproxy/patches/0005-BUG-MEDIUM-checks-do-not-dereference-head-of-a-tcp-c.patch +++ /dev/null @@ -1,53 +0,0 @@ -From b94a6d5a37499ce6649ad58f4a8c4664779abd8b Mon Sep 17 00:00:00 2001 -From: Willy Tarreau -Date: Wed, 13 May 2015 11:38:17 +0200 -Subject: [PATCH 5/8] BUG/MEDIUM: checks: do not dereference head of a - tcp-check at the end - -When the end of the list is reached, the current step's action is checked -to know if we must poll or not. Unfortunately, the main reason for going -there is that we walked past the end of list and current_step points to -the head. We cannot dereference ->action since it does not belong to this -structure and can definitely crash if the address is not mapped. - -This bug is unlikely to cause a crash since the action appears just after -the list, and corresponds to the "char *check_req" pointer in the proxy -struct, and it seems that we can't go there with current_step being null. -At worst it can cause the check to register for recv events. - -This fix needs to be backported to 1.5 since the code is incorrect there -as well. -(cherry picked from commit 53c5a049e1f4dbf67412472e23690dc6b3c8d0f8) ---- - src/checks.c | 5 +++-- - 1 file changed, 3 insertions(+), 2 deletions(-) - -diff --git a/src/checks.c b/src/checks.c -index cfdfe8c..a887be1 100644 ---- a/src/checks.c -+++ b/src/checks.c -@@ -2237,10 +2237,12 @@ static void tcpcheck_main(struct connection *conn) - goto out_end_tcpcheck; - - out_need_io: -+ /* warning, current_step may now point to the head */ - if (check->bo->o) - __conn_data_want_send(conn); - -- if (check->current_step->action == TCPCHK_ACT_EXPECT) -+ if (&check->current_step->list != head && -+ check->current_step->action == TCPCHK_ACT_EXPECT) - __conn_data_want_recv(conn); - return; - -@@ -2256,7 +2258,6 @@ static void tcpcheck_main(struct connection *conn) - conn->flags |= CO_FL_ERROR; - - __conn_data_stop_both(conn); -- - return; - } - --- -2.0.5 - diff --git a/net/haproxy/patches/0006-CLEANUP-checks-simplify-the-loop-processing-of-tcp-c.patch b/net/haproxy/patches/0006-CLEANUP-checks-simplify-the-loop-processing-of-tcp-c.patch deleted file mode 100644 index 45ba96022..000000000 --- a/net/haproxy/patches/0006-CLEANUP-checks-simplify-the-loop-processing-of-tcp-c.patch +++ /dev/null @@ -1,82 +0,0 @@ -From ebb2bceb34d7787453548627ed0e99c60354672b Mon Sep 17 00:00:00 2001 -From: Willy Tarreau -Date: Wed, 13 May 2015 11:59:14 +0200 -Subject: [PATCH 6/8] CLEANUP: checks: simplify the loop processing of - tcp-checks - -There is some unobvious redundancy between the various ways we can leave -the loop. Some of them can be factored out. So now we leave the loop when -we can't go further, whether it's caused by reaching the end of the rules -or by a blocking I/O. -(cherry picked from commit 263013d031d754c9f96de0d0cb5afcc011af6441) -[wt: this patch is required for the next fix] ---- - src/checks.c | 26 ++++++++++++++------------ - 1 file changed, 14 insertions(+), 12 deletions(-) - -diff --git a/src/checks.c b/src/checks.c -index a887be1..a0c42f2 100644 ---- a/src/checks.c -+++ b/src/checks.c -@@ -1926,8 +1926,10 @@ static void tcpcheck_main(struct connection *conn) - __conn_data_stop_both(conn); - - while (1) { -- /* we have to try to flush the output buffer before reading, at the end, -- * or if we're about to send a string that does not fit in the remaining space. -+ /* We have to try to flush the output buffer before reading, at -+ * the end, or if we're about to send a string that does not fit -+ * in the remaining space. That explains why we break out of the -+ * loop after this control. - */ - if (check->bo->o && - (&check->current_step->list == head || -@@ -1940,16 +1942,12 @@ static void tcpcheck_main(struct connection *conn) - __conn_data_stop_both(conn); - goto out_end_tcpcheck; - } -- goto out_need_io; -+ break; - } - } - -- /* did we reach the end ? If so, let's check that everything was sent */ -- if (&check->current_step->list == head) { -- if (check->bo->o) -- goto out_need_io; -+ if (&check->current_step->list == head) - break; -- } - - /* have 'next' point to the next rule or NULL if we're on the - * last one, connect() needs this. -@@ -2131,7 +2129,7 @@ static void tcpcheck_main(struct connection *conn) - } - } - else -- goto out_need_io; -+ break; - } - - /* mark the step as started */ -@@ -2233,10 +2231,14 @@ static void tcpcheck_main(struct connection *conn) - } /* end expect */ - } /* end loop over double chained step list */ - -- set_server_check_status(check, HCHK_STATUS_L7OKD, "(tcp-check)"); -- goto out_end_tcpcheck; -+ /* We're waiting for some I/O to complete, we've reached the end of the -+ * rules, or both. Do what we have to do, otherwise we're done. -+ */ -+ if (&check->current_step->list == head && !check->bo->o) { -+ set_server_check_status(check, HCHK_STATUS_L7OKD, "(tcp-check)"); -+ goto out_end_tcpcheck; -+ } - -- out_need_io: - /* warning, current_step may now point to the head */ - if (check->bo->o) - __conn_data_want_send(conn); --- -2.0.5 - diff --git a/net/haproxy/patches/0007-BUG-MAJOR-checks-always-check-for-end-of-list-before.patch b/net/haproxy/patches/0007-BUG-MAJOR-checks-always-check-for-end-of-list-before.patch deleted file mode 100644 index 7c2d562f3..000000000 --- a/net/haproxy/patches/0007-BUG-MAJOR-checks-always-check-for-end-of-list-before.patch +++ /dev/null @@ -1,90 +0,0 @@ -From 97fccc87f1297d189ee80735e5b8746c34956eda Mon Sep 17 00:00:00 2001 -From: Willy Tarreau -Date: Wed, 13 May 2015 12:08:21 +0200 -Subject: [PATCH 7/8] BUG/MAJOR: checks: always check for end of list before - proceeding - -This is the most important fix of this series. There's a risk of endless -loop and crashes caused by the fact that we go past the head of the list -when skipping to next rule, without checking if it's still a valid element. -Most of the time, the ->action field is checked, which points to the proxy's -check_req pointer (generally NULL), meaning the element is confused with a -TCPCHK_ACT_SEND action. - -The situation was accidently made worse with the addition of tcp-check -comment since it also skips list elements. However, since the action that -makes it go forward is TCPCHK_ACT_COMMENT (3), there's little chance to -see this as a valid pointer, except on 64-bit machines where it can match -the end of a check_req string pointer. - -This fix heavily depends on previous cleanup and both must be backported -to 1.5 where the bug is present. -(cherry picked from commit f2c87353a7f8160930b5f342bb6d6ad0991ee3d1) -[wt: this patch differs significantly from 1.6 since we don't have comments] ---- - src/cfgparse.c | 4 +++- - src/checks.c | 12 ++++++++++++ - 2 files changed, 15 insertions(+), 1 deletion(-) - -diff --git a/src/cfgparse.c b/src/cfgparse.c -index 746c7eb..dba59d1 100644 ---- a/src/cfgparse.c -+++ b/src/cfgparse.c -@@ -4368,7 +4368,9 @@ stats_error_parsing: - l = (struct list *)&curproxy->tcpcheck_rules; - if (l->p != l->n) { - tcpcheck = (struct tcpcheck_rule *)l->n; -- if (tcpcheck && tcpcheck->action != TCPCHK_ACT_CONNECT) { -+ -+ if (&tcpcheck->list != &curproxy->tcpcheck_rules -+ && tcpcheck->action != TCPCHK_ACT_CONNECT) { - Alert("parsing [%s:%d] : first step MUST also be a 'connect' when there is a 'connect' step in the tcp-check ruleset.\n", - file, linenum); - err_code |= ERR_ALERT | ERR_FATAL; -diff --git a/src/checks.c b/src/checks.c -index a0c42f2..e13d561 100644 ---- a/src/checks.c -+++ b/src/checks.c -@@ -2057,6 +2057,9 @@ static void tcpcheck_main(struct connection *conn) - /* allow next rule */ - check->current_step = (struct tcpcheck_rule *)check->current_step->list.n; - -+ if (&check->current_step->list == head) -+ break; -+ - /* don't do anything until the connection is established */ - if (!(conn->flags & CO_FL_CONNECTED)) { - /* update expire time, should be done by process_chk */ -@@ -2110,6 +2113,9 @@ static void tcpcheck_main(struct connection *conn) - - /* go to next rule and try to send */ - check->current_step = (struct tcpcheck_rule *)check->current_step->list.n; -+ -+ if (&check->current_step->list == head) -+ break; - } /* end 'send' */ - else if (check->current_step->action == TCPCHK_ACT_EXPECT) { - if (unlikely(check->result == CHK_RES_FAILED)) -@@ -2196,6 +2202,9 @@ static void tcpcheck_main(struct connection *conn) - /* allow next rule */ - check->current_step = (struct tcpcheck_rule *)check->current_step->list.n; - -+ if (&check->current_step->list == head) -+ break; -+ - if (check->current_step->action == TCPCHK_ACT_EXPECT) - goto tcpcheck_expect; - __conn_data_stop_recv(conn); -@@ -2208,6 +2217,9 @@ static void tcpcheck_main(struct connection *conn) - /* allow next rule */ - check->current_step = (struct tcpcheck_rule *)check->current_step->list.n; - -+ if (&check->current_step->list == head) -+ break; -+ - if (check->current_step->action == TCPCHK_ACT_EXPECT) - goto tcpcheck_expect; - __conn_data_stop_recv(conn); --- -2.0.5 - diff --git a/net/haproxy/patches/0008-BUG-MEDIUM-checks-do-not-dereference-a-list-as-a-tcp.patch b/net/haproxy/patches/0008-BUG-MEDIUM-checks-do-not-dereference-a-list-as-a-tcp.patch deleted file mode 100644 index 454026097..000000000 --- a/net/haproxy/patches/0008-BUG-MEDIUM-checks-do-not-dereference-a-list-as-a-tcp.patch +++ /dev/null @@ -1,116 +0,0 @@ -From 5bff05986c501d9ffb67873b60472f9c2a2e41be Mon Sep 17 00:00:00 2001 -From: Willy Tarreau -Date: Wed, 13 May 2015 12:24:53 +0200 -Subject: [PATCH 8/8] BUG/MEDIUM: checks: do not dereference a list as a - tcpcheck struct - -The method used to skip to next rule in the list is wrong, it assumes -that the list element starts at the same offset as the rule. It happens -to be true on most architectures since the list is the first element for -now but it's definitely wrong. Now the code doesn't crash anymore when -the struct list is moved anywhere else in the struct tcpcheck_rule. - -This fix must be backported to 1.5. -(cherry picked from commit 5581c27b579cbfc53afb0ca04cdeebe7e2200131) -[wt: changes from 1.6 : no tcp-check comments, check becomes s->proxy] ---- - src/cfgparse.c | 18 +++++++----------- - src/checks.c | 15 +++++++++------ - 2 files changed, 16 insertions(+), 17 deletions(-) - -diff --git a/src/cfgparse.c b/src/cfgparse.c -index dba59d1..e04eff8 100644 ---- a/src/cfgparse.c -+++ b/src/cfgparse.c -@@ -4362,20 +4362,16 @@ stats_error_parsing: - const char *ptr_arg; - int cur_arg; - struct tcpcheck_rule *tcpcheck; -- struct list *l; - - /* check if first rule is also a 'connect' action */ -- l = (struct list *)&curproxy->tcpcheck_rules; -- if (l->p != l->n) { -- tcpcheck = (struct tcpcheck_rule *)l->n; -+ tcpcheck = LIST_NEXT(&curproxy->tcpcheck_rules, struct tcpcheck_rule *, list); - -- if (&tcpcheck->list != &curproxy->tcpcheck_rules -- && tcpcheck->action != TCPCHK_ACT_CONNECT) { -- Alert("parsing [%s:%d] : first step MUST also be a 'connect' when there is a 'connect' step in the tcp-check ruleset.\n", -- file, linenum); -- err_code |= ERR_ALERT | ERR_FATAL; -- goto out; -- } -+ if (&tcpcheck->list != &curproxy->tcpcheck_rules -+ && tcpcheck->action != TCPCHK_ACT_CONNECT) { -+ Alert("parsing [%s:%d] : first step MUST also be a 'connect' when there is a 'connect' step in the tcp-check ruleset.\n", -+ file, linenum); -+ err_code |= ERR_ALERT | ERR_FATAL; -+ goto out; - } - - cur_arg = 2; -diff --git a/src/checks.c b/src/checks.c -index e13d561..27a23b2 100644 ---- a/src/checks.c -+++ b/src/checks.c -@@ -1444,7 +1444,10 @@ static int connect_chk(struct task *t) - quickack = check->type == 0 || check->type == PR_O2_TCPCHK_CHK; - - if (check->type == PR_O2_TCPCHK_CHK && !LIST_ISEMPTY(&s->proxy->tcpcheck_rules)) { -- struct tcpcheck_rule *r = (struct tcpcheck_rule *) s->proxy->tcpcheck_rules.n; -+ struct tcpcheck_rule *r; -+ -+ r = LIST_NEXT(&s->proxy->tcpcheck_rules, struct tcpcheck_rule *, list); -+ - /* if first step is a 'connect', then tcpcheck_main must run it */ - if (r->action == TCPCHK_ACT_CONNECT) { - tcpcheck_main(conn); -@@ -1952,7 +1955,7 @@ static void tcpcheck_main(struct connection *conn) - /* have 'next' point to the next rule or NULL if we're on the - * last one, connect() needs this. - */ -- next = (struct tcpcheck_rule *)check->current_step->list.n; -+ next = LIST_NEXT(&check->current_step->list, struct tcpcheck_rule *, list); - - if (&next->list == head) - next = NULL; -@@ -2055,7 +2058,7 @@ static void tcpcheck_main(struct connection *conn) - } - - /* allow next rule */ -- check->current_step = (struct tcpcheck_rule *)check->current_step->list.n; -+ check->current_step = LIST_NEXT(&check->current_step->list, struct tcpcheck_rule *, list); - - if (&check->current_step->list == head) - break; -@@ -2112,7 +2115,7 @@ static void tcpcheck_main(struct connection *conn) - *check->bo->p = '\0'; /* to make gdb output easier to read */ - - /* go to next rule and try to send */ -- check->current_step = (struct tcpcheck_rule *)check->current_step->list.n; -+ check->current_step = LIST_NEXT(&check->current_step->list, struct tcpcheck_rule *, list); - - if (&check->current_step->list == head) - break; -@@ -2200,7 +2203,7 @@ static void tcpcheck_main(struct connection *conn) - /* matched and was supposed to => OK, next step */ - else { - /* allow next rule */ -- check->current_step = (struct tcpcheck_rule *)check->current_step->list.n; -+ check->current_step = LIST_NEXT(&check->current_step->list, struct tcpcheck_rule *, list); - - if (&check->current_step->list == head) - break; -@@ -2215,7 +2218,7 @@ static void tcpcheck_main(struct connection *conn) - /* not matched and was not supposed to => OK, next step */ - if (check->current_step->inverse) { - /* allow next rule */ -- check->current_step = (struct tcpcheck_rule *)check->current_step->list.n; -+ check->current_step = LIST_NEXT(&check->current_step->list, struct tcpcheck_rule *, list); - - if (&check->current_step->list == head) - break; --- -2.0.5 - diff --git a/net/haproxy/patches/0009-BUG-MEDIUM-peers-apply-a-random-reconnection-timeout.patch b/net/haproxy/patches/0009-BUG-MEDIUM-peers-apply-a-random-reconnection-timeout.patch deleted file mode 100644 index 96aa743aa..000000000 --- a/net/haproxy/patches/0009-BUG-MEDIUM-peers-apply-a-random-reconnection-timeout.patch +++ /dev/null @@ -1,77 +0,0 @@ -From 76a06b2804bcdba0fb2c19f834bdb511ce3cf344 Mon Sep 17 00:00:00 2001 -From: Willy Tarreau -Date: Wed, 20 May 2015 10:39:04 +0200 -Subject: [PATCH 09/10] BUG/MEDIUM: peers: apply a random reconnection timeout - -Commit 9ff95bb ("BUG/MEDIUM: peers: correctly configure the client timeout") -uncovered an old bug in the peers : upon disconnect, we reconnect immediately. -This sometimes results in both ends to do the same thing in parallel causing -a loop of connect/accept/close/close that can last several seconds. The risk -of occurrence of the trouble increases with latency, and is emphasized by the -fact that idle connections are now frequently recycled (after 5s of idle). - -In order to avoid this we must apply a random delay before reconnecting. -Fortunately the mechanism already supports a reconnect delay, so here we -compute the random timeout when killing a session. The delay is 50ms plus -a random between 0 and 2 seconds. Ideally an exponential back-off would -be preferred but it's preferable to keep the fix simple. - -This bug was reported by Marco Corte. - -This fix must be backported to 1.5 since the fix above was backported into -1.5.12. -(cherry picked from commit b4e34da692d8a7f6837ad16b3389f5830dbc11d2) ---- - src/peers.c | 14 +++++++++++--- - 1 file changed, 11 insertions(+), 3 deletions(-) - -diff --git a/src/peers.c b/src/peers.c -index b196d88..159f0a4 100644 ---- a/src/peers.c -+++ b/src/peers.c -@@ -1063,6 +1063,7 @@ static void peer_session_forceshutdown(struct session * session) - { - struct stream_interface *oldsi = NULL; - struct appctx *appctx = NULL; -+ struct peer_session *ps; - int i; - - for (i = 0; i <= 1; i++) { -@@ -1079,6 +1080,14 @@ static void peer_session_forceshutdown(struct session * session) - if (!appctx) - return; - -+ ps = (struct peer_session *)appctx->ctx.peers.ptr; -+ /* we're killing a connection, we must apply a random delay before -+ * retrying otherwise the other end will do the same and we can loop -+ * for a while. -+ */ -+ if (ps) -+ ps->reconnect = tick_add(now_ms, MS_TO_TICKS(50 + random() % 2000)); -+ - /* call release to reinit resync states if needed */ - peer_session_release(oldsi); - appctx->st0 = PEER_SESS_ST_END; -@@ -1352,8 +1361,8 @@ static struct task *process_peer_sync(struct task * task) - if (!ps->session) { - /* no active session */ - if (ps->statuscode == 0 || -- ps->statuscode == PEER_SESS_SC_SUCCESSCODE || - ((ps->statuscode == PEER_SESS_SC_CONNECTCODE || -+ ps->statuscode == PEER_SESS_SC_SUCCESSCODE || - ps->statuscode == PEER_SESS_SC_CONNECTEDCODE) && - tick_is_expired(ps->reconnect, now_ms))) { - /* connection never tried -@@ -1364,8 +1373,7 @@ static struct task *process_peer_sync(struct task * task) - /* retry a connect */ - ps->session = peer_session_create(ps->peer, ps); - } -- else if (ps->statuscode == PEER_SESS_SC_CONNECTCODE || -- ps->statuscode == PEER_SESS_SC_CONNECTEDCODE) { -+ else if (!tick_is_expired(ps->reconnect, now_ms)) { - /* If previous session failed during connection - * but reconnection timer is not expired */ - --- -2.0.5 - diff --git a/net/haproxy/patches/0010-DOC-Update-doc-about-weight-act-and-bck-fields-in-th.patch b/net/haproxy/patches/0010-DOC-Update-doc-about-weight-act-and-bck-fields-in-th.patch deleted file mode 100644 index 563ed64b8..000000000 --- a/net/haproxy/patches/0010-DOC-Update-doc-about-weight-act-and-bck-fields-in-th.patch +++ /dev/null @@ -1,33 +0,0 @@ -From ac372e18c422841a9f1197b4238637c470e8edca Mon Sep 17 00:00:00 2001 -From: Pavlos Parissis -Date: Sat, 2 May 2015 20:30:44 +0200 -Subject: [PATCH 10/10] DOC: Update doc about weight, act and bck fields in the - statistics - -Reorder description of the mentioned fields in order to match the -order of types -(cherry picked from commit 1f673c72c11d011bbd24e309d3155384eddf7a46) ---- - doc/configuration.txt | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - -diff --git a/doc/configuration.txt b/doc/configuration.txt -index a9d497e..6f5eeb1 100644 ---- a/doc/configuration.txt -+++ b/doc/configuration.txt -@@ -13240,9 +13240,9 @@ S (Servers). - server. The server value counts the number of times that server was - switched away from. - 17. status [LFBS]: status (UP/DOWN/NOLB/MAINT/MAINT(via)...) -- 18. weight [..BS]: server weight (server), total weight (backend) -- 19. act [..BS]: server is active (server), number of active servers (backend) -- 20. bck [..BS]: server is backup (server), number of backup servers (backend) -+ 18. weight [..BS]: total weight (backend), server weight (server) -+ 19. act [..BS]: number of active servers (backend), server is active (server) -+ 20. bck [..BS]: number of backup servers (backend), server is backup (server) - 21. chkfail [...S]: number of failed checks. (Only counts checks failed when - the server is up.) - 22. chkdown [..BS]: number of UP->DOWN transitions. The backend counter counts --- -2.0.5 - diff --git a/net/haproxy/patches/0011-MINOR-ssl-add-a-destructor-to-free-allocated-SSL-res.patch b/net/haproxy/patches/0011-MINOR-ssl-add-a-destructor-to-free-allocated-SSL-res.patch deleted file mode 100644 index 86be3b965..000000000 --- a/net/haproxy/patches/0011-MINOR-ssl-add-a-destructor-to-free-allocated-SSL-res.patch +++ /dev/null @@ -1,64 +0,0 @@ -From 269a02fbb332da8faf6c2a614d45d5b5018816d1 Mon Sep 17 00:00:00 2001 -From: Remi Gacogne -Date: Thu, 28 May 2015 16:39:47 +0200 -Subject: [PATCH 11/14] MINOR: ssl: add a destructor to free allocated SSL - ressources - -Using valgrind or another memory leak tracking tool is easier -when the memory internally allocated by OpenSSL is cleanly released -at shutdown. -(cherry picked from commit d3a23c3eb8c0950d26204568a133207099923494) ---- - src/ssl_sock.c | 36 ++++++++++++++++++++++++++++++++++++ - 1 file changed, 36 insertions(+) - -diff --git a/src/ssl_sock.c b/src/ssl_sock.c -index d0f4d01..a78fc6a 100644 ---- a/src/ssl_sock.c -+++ b/src/ssl_sock.c -@@ -4717,6 +4717,42 @@ static void __ssl_sock_init(void) - cfg_register_keywords(&cfg_kws); - } - -+__attribute__((destructor)) -+static void __ssl_sock_deinit(void) -+{ -+#ifndef OPENSSL_NO_DH -+ if (local_dh_1024) { -+ DH_free(local_dh_1024); -+ local_dh_1024 = NULL; -+ } -+ -+ if (local_dh_2048) { -+ DH_free(local_dh_2048); -+ local_dh_2048 = NULL; -+ } -+ -+ if (local_dh_4096) { -+ DH_free(local_dh_4096); -+ local_dh_4096 = NULL; -+ } -+ -+ if (local_dh_8192) { -+ DH_free(local_dh_8192); -+ local_dh_8192 = NULL; -+ } -+#endif -+ -+ ERR_remove_state(0); -+ ERR_free_strings(); -+ -+ EVP_cleanup(); -+ -+#if OPENSSL_VERSION_NUMBER >= 0x00907000L -+ CRYPTO_cleanup_all_ex_data(); -+#endif -+} -+ -+ - /* - * Local variables: - * c-indent-level: 8 --- -2.0.5 - diff --git a/net/haproxy/patches/0012-BUG-MEDIUM-ssl-fix-tune.ssl.default-dh-param-value-b.patch b/net/haproxy/patches/0012-BUG-MEDIUM-ssl-fix-tune.ssl.default-dh-param-value-b.patch deleted file mode 100644 index 37600c8a2..000000000 --- a/net/haproxy/patches/0012-BUG-MEDIUM-ssl-fix-tune.ssl.default-dh-param-value-b.patch +++ /dev/null @@ -1,98 +0,0 @@ -From 5d769ca828fdb055052b3dbc232864bdf2853c9f Mon Sep 17 00:00:00 2001 -From: Remi Gacogne -Date: Thu, 28 May 2015 16:23:00 +0200 -Subject: [PATCH 12/14] BUG/MEDIUM: ssl: fix tune.ssl.default-dh-param value - being overwritten -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Hervé Commowick reported that the logic used to avoid complaining about -ssl-default-dh-param not being set when static DH params are present -in the certificate file was clearly wrong when more than one sni_ctx -is used. -This patch stores whether static DH params are being used for each -SSL_CTX individually, and does not overwrite the value of -tune.ssl.default-dh-param. -(cherry picked from commit 4f902b88323927c9d25d391a809e3678ac31df41) ---- - src/ssl_sock.c | 28 +++++++++++++++++++++++----- - 1 file changed, 23 insertions(+), 5 deletions(-) - -diff --git a/src/ssl_sock.c b/src/ssl_sock.c -index a78fc6a..0f7819b 100644 ---- a/src/ssl_sock.c -+++ b/src/ssl_sock.c -@@ -47,6 +47,9 @@ - #ifdef SSL_CTRL_SET_TLSEXT_STATUS_REQ_CB - #include - #endif -+#ifndef OPENSSL_NO_DH -+#include -+#endif - - #include - #include -@@ -107,6 +110,7 @@ int sslconns = 0; - int totalsslconns = 0; - - #ifndef OPENSSL_NO_DH -+static int ssl_dh_ptr_index = -1; - static DH *local_dh_1024 = NULL; - static DH *local_dh_2048 = NULL; - static DH *local_dh_4096 = NULL; -@@ -1076,10 +1080,12 @@ int ssl_sock_load_dh_params(SSL_CTX *ctx, const char *file) - if (dh) { - ret = 1; - SSL_CTX_set_tmp_dh(ctx, dh); -- /* Setting ssl default dh param to the size of the static DH params -- found in the file. This way we know that there is no use -- complaining later about ssl-default-dh-param not being set. */ -- global.tune.ssl_default_dh_param = DH_size(dh) * 8; -+ -+ if (ssl_dh_ptr_index >= 0) { -+ /* store a pointer to the DH params to avoid complaining about -+ ssl-default-dh-param not being set for this SSL_CTX */ -+ SSL_CTX_set_ex_data(ctx, ssl_dh_ptr_index, dh); -+ } - } - else { - /* Clear openssl global errors stack */ -@@ -1274,6 +1280,12 @@ static int ssl_sock_load_cert_file(const char *path, struct bind_conf *bind_conf - * the tree, so it will be discovered and cleaned in time. - */ - #ifndef OPENSSL_NO_DH -+ /* store a NULL pointer to indicate we have not yet loaded -+ a custom DH param file */ -+ if (ssl_dh_ptr_index >= 0) { -+ SSL_CTX_set_ex_data(ctx, ssl_dh_ptr_index, NULL); -+ } -+ - ret = ssl_sock_load_dh_params(ctx, path); - if (ret < 0) { - if (err) -@@ -1593,7 +1605,9 @@ int ssl_sock_prepare_ctx(struct bind_conf *bind_conf, SSL_CTX *ctx, struct proxy - - /* If tune.ssl.default-dh-param has not been set and - no static DH params were in the certificate file. */ -- if (global.tune.ssl_default_dh_param == 0) { -+ if (global.tune.ssl_default_dh_param == 0 && -+ (ssl_dh_ptr_index == -1 || -+ SSL_CTX_get_ex_data(ctx, ssl_dh_ptr_index) == NULL)) { - ciphers = ctx->cipher_list; - - if (ciphers) { -@@ -4715,6 +4729,10 @@ static void __ssl_sock_init(void) - bind_register_keywords(&bind_kws); - srv_register_keywords(&srv_kws); - cfg_register_keywords(&cfg_kws); -+ -+#ifndef OPENSSL_NO_DH -+ ssl_dh_ptr_index = SSL_CTX_get_ex_new_index(0, NULL, NULL, NULL, NULL); -+#endif - } - - __attribute__((destructor)) --- -2.0.5 - diff --git a/net/haproxy/patches/0013-BUG-MINOR-cfgparse-fix-typo-in-option-httplog-error-.patch b/net/haproxy/patches/0013-BUG-MINOR-cfgparse-fix-typo-in-option-httplog-error-.patch deleted file mode 100644 index d09f18df5..000000000 --- a/net/haproxy/patches/0013-BUG-MINOR-cfgparse-fix-typo-in-option-httplog-error-.patch +++ /dev/null @@ -1,29 +0,0 @@ -From 629b1c000b26f0031246b9b529680b275a14118f Mon Sep 17 00:00:00 2001 -From: William Lallemand -Date: Thu, 28 May 2015 18:02:48 +0200 -Subject: [PATCH 13/14] BUG/MINOR: cfgparse: fix typo in 'option httplog' error - message - -The error message was displaying the wrong argument when 'option -httplog' took a wrong argument. -(cherry picked from commit 77063bc0c6ceb4257c4e2c08411811ecc48be1aa) ---- - src/cfgparse.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/cfgparse.c b/src/cfgparse.c -index e04eff8..3c3383d 100644 ---- a/src/cfgparse.c -+++ b/src/cfgparse.c -@@ -3792,7 +3792,7 @@ stats_error_parsing: - curproxy->options2 |= PR_O2_CLFLOG; - logformat = clf_http_log_format; - } else { -- Alert("parsing [%s:%d] : keyword '%s' only supports option 'clf'.\n", file, linenum, args[2]); -+ Alert("parsing [%s:%d] : keyword '%s' only supports option 'clf'.\n", file, linenum, args[1]); - err_code |= ERR_ALERT | ERR_FATAL; - goto out; - } --- -2.0.5 - diff --git a/net/haproxy/patches/0014-BUG-MEDIUM-cfgparse-segfault-when-userlist-is-misuse.patch b/net/haproxy/patches/0014-BUG-MEDIUM-cfgparse-segfault-when-userlist-is-misuse.patch deleted file mode 100644 index 329505b7b..000000000 --- a/net/haproxy/patches/0014-BUG-MEDIUM-cfgparse-segfault-when-userlist-is-misuse.patch +++ /dev/null @@ -1,41 +0,0 @@ -From faf3315f77c527e6e1d027deb7e853cdf6af5858 Mon Sep 17 00:00:00 2001 -From: William Lallemand -Date: Thu, 28 May 2015 18:03:51 +0200 -Subject: [PATCH 14/14] BUG/MEDIUM: cfgparse: segfault when userlist is misused - -If the 'userlist' keyword parsing returns an error and no userlist were -previously created. The parsing of 'user' and 'group' leads to NULL -derefence. - -The userlist pointer is now tested to prevent this issue. -(cherry picked from commit 4ac9f546120d42be8147e3d90588e7b9738af0cc) ---- - src/cfgparse.c | 5 +++++ - 1 file changed, 5 insertions(+) - -diff --git a/src/cfgparse.c b/src/cfgparse.c -index 3c3383d..392a78d 100644 ---- a/src/cfgparse.c -+++ b/src/cfgparse.c -@@ -5668,6 +5668,9 @@ cfg_parse_users(const char *file, int linenum, char **args, int kwm) - goto out; - } - -+ if (!userlist) -+ goto out; -+ - for (ag = userlist->groups; ag; ag = ag->next) - if (!strcmp(ag->name, args[1])) { - Warning("parsing [%s:%d]: ignoring duplicated group '%s' in userlist '%s'.\n", -@@ -5718,6 +5721,8 @@ cfg_parse_users(const char *file, int linenum, char **args, int kwm) - err_code |= ERR_ALERT | ERR_FATAL; - goto out; - } -+ if (!userlist) -+ goto out; - - for (newuser = userlist->users; newuser; newuser = newuser->next) - if (!strcmp(newuser->user, args[1])) { --- -2.0.5 - diff --git a/net/haproxy/patches/0015-MEDIUM-ssl-replace-standards-DH-groups-with-custom-o.patch b/net/haproxy/patches/0015-MEDIUM-ssl-replace-standards-DH-groups-with-custom-o.patch deleted file mode 100644 index 2d1415bee..000000000 --- a/net/haproxy/patches/0015-MEDIUM-ssl-replace-standards-DH-groups-with-custom-o.patch +++ /dev/null @@ -1,427 +0,0 @@ -From 2ad3ec1ab5379a16b16aba48a42ced27b170534e Mon Sep 17 00:00:00 2001 -From: Remi Gacogne -Date: Fri, 29 May 2015 16:26:17 +0200 -Subject: [PATCH 15/18] MEDIUM: ssl: replace standards DH groups with custom - ones -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -It is likely that powerful adversaries have been pre-computing the -standardized DH groups, because being widely used have made them -valuable targets. While users are advised to generate their own -DH parameters, replace the ones we ship by values been randomly -generated for this product only. - -[wt: replaced dh1024_p, dh2048_p, and dh4096_p with locally-generated - ones as recommended by Rémi] - -(cherry picked from commit d3a341a96fb6107d2b8e3d7a9c0afa2ff43bb0b6) ---- - src/ssl_sock.c | 340 +++++++++++++++++---------------------------------------- - 1 file changed, 102 insertions(+), 238 deletions(-) - -diff --git a/src/ssl_sock.c b/src/ssl_sock.c -index 0f7819b..93aab8b 100644 ---- a/src/ssl_sock.c -+++ b/src/ssl_sock.c -@@ -114,7 +114,6 @@ static int ssl_dh_ptr_index = -1; - static DH *local_dh_1024 = NULL; - static DH *local_dh_2048 = NULL; - static DH *local_dh_4096 = NULL; --static DH *local_dh_8192 = NULL; - #endif /* OPENSSL_NO_DH */ - - #ifdef SSL_CTRL_SET_TLSEXT_STATUS_REQ_CB -@@ -766,32 +765,28 @@ static int ssl_sock_switchctx_cbk(SSL *ssl, int *al, struct bind_conf *s) - - static DH * ssl_get_dh_1024(void) - { --#if OPENSSL_VERSION_NUMBER < 0x0090801fL -- static const unsigned char rfc_2409_prime_1024[] = { -- 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xC9,0x0F,0xDA,0xA2, -- 0x21,0x68,0xC2,0x34,0xC4,0xC6,0x62,0x8B,0x80,0xDC,0x1C,0xD1, -- 0x29,0x02,0x4E,0x08,0x8A,0x67,0xCC,0x74,0x02,0x0B,0xBE,0xA6, -- 0x3B,0x13,0x9B,0x22,0x51,0x4A,0x08,0x79,0x8E,0x34,0x04,0xDD, -- 0xEF,0x95,0x19,0xB3,0xCD,0x3A,0x43,0x1B,0x30,0x2B,0x0A,0x6D, -- 0xF2,0x5F,0x14,0x37,0x4F,0xE1,0x35,0x6D,0x6D,0x51,0xC2,0x45, -- 0xE4,0x85,0xB5,0x76,0x62,0x5E,0x7E,0xC6,0xF4,0x4C,0x42,0xE9, -- 0xA6,0x37,0xED,0x6B,0x0B,0xFF,0x5C,0xB6,0xF4,0x06,0xB7,0xED, -- 0xEE,0x38,0x6B,0xFB,0x5A,0x89,0x9F,0xA5,0xAE,0x9F,0x24,0x11, -- 0x7C,0x4B,0x1F,0xE6,0x49,0x28,0x66,0x51,0xEC,0xE6,0x53,0x81, -- 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF, -- }; --#endif -+ static unsigned char dh1024_p[]={ -+ 0xFA,0xF9,0x2A,0x22,0x2A,0xA7,0x7F,0xE1,0x67,0x4E,0x53,0xF7, -+ 0x56,0x13,0xC3,0xB1,0xE3,0x29,0x6B,0x66,0x31,0x6A,0x7F,0xB3, -+ 0xC2,0x68,0x6B,0xCB,0x1D,0x57,0x39,0x1D,0x1F,0xFF,0x1C,0xC9, -+ 0xA6,0xA4,0x98,0x82,0x31,0x5D,0x25,0xFF,0x8A,0xE0,0x73,0x96, -+ 0x81,0xC8,0x83,0x79,0xC1,0x5A,0x04,0xF8,0x37,0x0D,0xA8,0x3D, -+ 0xAE,0x74,0xBC,0xDB,0xB6,0xA4,0x75,0xD9,0x71,0x8A,0xA0,0x17, -+ 0x9E,0x2D,0xC8,0xA8,0xDF,0x2C,0x5F,0x82,0x95,0xF8,0x92,0x9B, -+ 0xA7,0x33,0x5F,0x89,0x71,0xC8,0x2D,0x6B,0x18,0x86,0xC4,0x94, -+ 0x22,0xA5,0x52,0x8D,0xF6,0xF6,0xD2,0x37,0x92,0x0F,0xA5,0xCC, -+ 0xDB,0x7B,0x1D,0x3D,0xA1,0x31,0xB7,0x80,0x8F,0x0B,0x67,0x5E, -+ 0x36,0xA5,0x60,0x0C,0xF1,0x95,0x33,0x8B, -+ }; -+ static unsigned char dh1024_g[]={ -+ 0x02, -+ }; -+ - DH *dh = DH_new(); - if (dh) { --#if OPENSSL_VERSION_NUMBER >= 0x0090801fL -- dh->p = get_rfc2409_prime_1024(NULL); --#else -- dh->p = BN_bin2bn(rfc_2409_prime_1024, sizeof rfc_2409_prime_1024, NULL); --#endif -- /* See RFC 2409, Section 6 "Oakley Groups" -- for the reason why 2 is used as generator. -- */ -- BN_dec2bn(&dh->g, "2"); -+ dh->p = BN_bin2bn(dh1024_p, sizeof dh1024_p, NULL); -+ dh->g = BN_bin2bn(dh1024_g, sizeof dh1024_g, NULL); -+ - if (!dh->p || !dh->g) { - DH_free(dh); - dh = NULL; -@@ -802,43 +797,39 @@ static DH * ssl_get_dh_1024(void) - - static DH *ssl_get_dh_2048(void) - { --#if OPENSSL_VERSION_NUMBER < 0x0090801fL -- static const unsigned char rfc_3526_prime_2048[] = { -- 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xC9,0x0F,0xDA,0xA2, -- 0x21,0x68,0xC2,0x34,0xC4,0xC6,0x62,0x8B,0x80,0xDC,0x1C,0xD1, -- 0x29,0x02,0x4E,0x08,0x8A,0x67,0xCC,0x74,0x02,0x0B,0xBE,0xA6, -- 0x3B,0x13,0x9B,0x22,0x51,0x4A,0x08,0x79,0x8E,0x34,0x04,0xDD, -- 0xEF,0x95,0x19,0xB3,0xCD,0x3A,0x43,0x1B,0x30,0x2B,0x0A,0x6D, -- 0xF2,0x5F,0x14,0x37,0x4F,0xE1,0x35,0x6D,0x6D,0x51,0xC2,0x45, -- 0xE4,0x85,0xB5,0x76,0x62,0x5E,0x7E,0xC6,0xF4,0x4C,0x42,0xE9, -- 0xA6,0x37,0xED,0x6B,0x0B,0xFF,0x5C,0xB6,0xF4,0x06,0xB7,0xED, -- 0xEE,0x38,0x6B,0xFB,0x5A,0x89,0x9F,0xA5,0xAE,0x9F,0x24,0x11, -- 0x7C,0x4B,0x1F,0xE6,0x49,0x28,0x66,0x51,0xEC,0xE4,0x5B,0x3D, -- 0xC2,0x00,0x7C,0xB8,0xA1,0x63,0xBF,0x05,0x98,0xDA,0x48,0x36, -- 0x1C,0x55,0xD3,0x9A,0x69,0x16,0x3F,0xA8,0xFD,0x24,0xCF,0x5F, -- 0x83,0x65,0x5D,0x23,0xDC,0xA3,0xAD,0x96,0x1C,0x62,0xF3,0x56, -- 0x20,0x85,0x52,0xBB,0x9E,0xD5,0x29,0x07,0x70,0x96,0x96,0x6D, -- 0x67,0x0C,0x35,0x4E,0x4A,0xBC,0x98,0x04,0xF1,0x74,0x6C,0x08, -- 0xCA,0x18,0x21,0x7C,0x32,0x90,0x5E,0x46,0x2E,0x36,0xCE,0x3B, -- 0xE3,0x9E,0x77,0x2C,0x18,0x0E,0x86,0x03,0x9B,0x27,0x83,0xA2, -- 0xEC,0x07,0xA2,0x8F,0xB5,0xC5,0x5D,0xF0,0x6F,0x4C,0x52,0xC9, -- 0xDE,0x2B,0xCB,0xF6,0x95,0x58,0x17,0x18,0x39,0x95,0x49,0x7C, -- 0xEA,0x95,0x6A,0xE5,0x15,0xD2,0x26,0x18,0x98,0xFA,0x05,0x10, -- 0x15,0x72,0x8E,0x5A,0x8A,0xAC,0xAA,0x68,0xFF,0xFF,0xFF,0xFF, -- 0xFF,0xFF,0xFF,0xFF, -- }; --#endif -+ static unsigned char dh2048_p[]={ -+ 0xEC,0x86,0xF8,0x70,0xA0,0x33,0x16,0xEC,0x05,0x1A,0x73,0x59, -+ 0xCD,0x1F,0x8B,0xF8,0x29,0xE4,0xD2,0xCF,0x52,0xDD,0xC2,0x24, -+ 0x8D,0xB5,0x38,0x9A,0xFB,0x5C,0xA4,0xE4,0xB2,0xDA,0xCE,0x66, -+ 0x50,0x74,0xA6,0x85,0x4D,0x4B,0x1D,0x30,0xB8,0x2B,0xF3,0x10, -+ 0xE9,0xA7,0x2D,0x05,0x71,0xE7,0x81,0xDF,0x8B,0x59,0x52,0x3B, -+ 0x5F,0x43,0x0B,0x68,0xF1,0xDB,0x07,0xBE,0x08,0x6B,0x1B,0x23, -+ 0xEE,0x4D,0xCC,0x9E,0x0E,0x43,0xA0,0x1E,0xDF,0x43,0x8C,0xEC, -+ 0xBE,0xBE,0x90,0xB4,0x51,0x54,0xB9,0x2F,0x7B,0x64,0x76,0x4E, -+ 0x5D,0xD4,0x2E,0xAE,0xC2,0x9E,0xAE,0x51,0x43,0x59,0xC7,0x77, -+ 0x9C,0x50,0x3C,0x0E,0xED,0x73,0x04,0x5F,0xF1,0x4C,0x76,0x2A, -+ 0xD8,0xF8,0xCF,0xFC,0x34,0x40,0xD1,0xB4,0x42,0x61,0x84,0x66, -+ 0x42,0x39,0x04,0xF8,0x68,0xB2,0x62,0xD7,0x55,0xED,0x1B,0x74, -+ 0x75,0x91,0xE0,0xC5,0x69,0xC1,0x31,0x5C,0xDB,0x7B,0x44,0x2E, -+ 0xCE,0x84,0x58,0x0D,0x1E,0x66,0x0C,0xC8,0x44,0x9E,0xFD,0x40, -+ 0x08,0x67,0x5D,0xFB,0xA7,0x76,0x8F,0x00,0x11,0x87,0xE9,0x93, -+ 0xF9,0x7D,0xC4,0xBC,0x74,0x55,0x20,0xD4,0x4A,0x41,0x2F,0x43, -+ 0x42,0x1A,0xC1,0xF2,0x97,0x17,0x49,0x27,0x37,0x6B,0x2F,0x88, -+ 0x7E,0x1C,0xA0,0xA1,0x89,0x92,0x27,0xD9,0x56,0x5A,0x71,0xC1, -+ 0x56,0x37,0x7E,0x3A,0x9D,0x05,0xE7,0xEE,0x5D,0x8F,0x82,0x17, -+ 0xBC,0xE9,0xC2,0x93,0x30,0x82,0xF9,0xF4,0xC9,0xAE,0x49,0xDB, -+ 0xD0,0x54,0xB4,0xD9,0x75,0x4D,0xFA,0x06,0xB8,0xD6,0x38,0x41, -+ 0xB7,0x1F,0x77,0xF3, -+ }; -+ static unsigned char dh2048_g[]={ -+ 0x02, -+ }; -+ - DH *dh = DH_new(); - if (dh) { --#if OPENSSL_VERSION_NUMBER >= 0x0090801fL -- dh->p = get_rfc3526_prime_2048(NULL); --#else -- dh->p = BN_bin2bn(rfc_3526_prime_2048, sizeof rfc_3526_prime_2048, NULL); --#endif -- /* See RFC 3526, Section 3 "2048-bit MODP Group" -- for the reason why 2 is used as generator. -- */ -- BN_dec2bn(&dh->g, "2"); -+ dh->p = BN_bin2bn(dh2048_p, sizeof dh2048_p, NULL); -+ dh->g = BN_bin2bn(dh2048_g, sizeof dh2048_g, NULL); -+ - if (!dh->p || !dh->g) { - DH_free(dh); - dh = NULL; -@@ -849,175 +840,60 @@ static DH *ssl_get_dh_2048(void) - - static DH *ssl_get_dh_4096(void) - { --#if OPENSSL_VERSION_NUMBER < 0x0090801fL -- static const unsigned char rfc_3526_prime_4096[] = { -- 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xC9,0x0F,0xDA,0xA2, -- 0x21,0x68,0xC2,0x34,0xC4,0xC6,0x62,0x8B,0x80,0xDC,0x1C,0xD1, -- 0x29,0x02,0x4E,0x08,0x8A,0x67,0xCC,0x74,0x02,0x0B,0xBE,0xA6, -- 0x3B,0x13,0x9B,0x22,0x51,0x4A,0x08,0x79,0x8E,0x34,0x04,0xDD, -- 0xEF,0x95,0x19,0xB3,0xCD,0x3A,0x43,0x1B,0x30,0x2B,0x0A,0x6D, -- 0xF2,0x5F,0x14,0x37,0x4F,0xE1,0x35,0x6D,0x6D,0x51,0xC2,0x45, -- 0xE4,0x85,0xB5,0x76,0x62,0x5E,0x7E,0xC6,0xF4,0x4C,0x42,0xE9, -- 0xA6,0x37,0xED,0x6B,0x0B,0xFF,0x5C,0xB6,0xF4,0x06,0xB7,0xED, -- 0xEE,0x38,0x6B,0xFB,0x5A,0x89,0x9F,0xA5,0xAE,0x9F,0x24,0x11, -- 0x7C,0x4B,0x1F,0xE6,0x49,0x28,0x66,0x51,0xEC,0xE4,0x5B,0x3D, -- 0xC2,0x00,0x7C,0xB8,0xA1,0x63,0xBF,0x05,0x98,0xDA,0x48,0x36, -- 0x1C,0x55,0xD3,0x9A,0x69,0x16,0x3F,0xA8,0xFD,0x24,0xCF,0x5F, -- 0x83,0x65,0x5D,0x23,0xDC,0xA3,0xAD,0x96,0x1C,0x62,0xF3,0x56, -- 0x20,0x85,0x52,0xBB,0x9E,0xD5,0x29,0x07,0x70,0x96,0x96,0x6D, -- 0x67,0x0C,0x35,0x4E,0x4A,0xBC,0x98,0x04,0xF1,0x74,0x6C,0x08, -- 0xCA,0x18,0x21,0x7C,0x32,0x90,0x5E,0x46,0x2E,0x36,0xCE,0x3B, -- 0xE3,0x9E,0x77,0x2C,0x18,0x0E,0x86,0x03,0x9B,0x27,0x83,0xA2, -- 0xEC,0x07,0xA2,0x8F,0xB5,0xC5,0x5D,0xF0,0x6F,0x4C,0x52,0xC9, -- 0xDE,0x2B,0xCB,0xF6,0x95,0x58,0x17,0x18,0x39,0x95,0x49,0x7C, -- 0xEA,0x95,0x6A,0xE5,0x15,0xD2,0x26,0x18,0x98,0xFA,0x05,0x10, -- 0x15,0x72,0x8E,0x5A,0x8A,0xAA,0xC4,0x2D,0xAD,0x33,0x17,0x0D, -- 0x04,0x50,0x7A,0x33,0xA8,0x55,0x21,0xAB,0xDF,0x1C,0xBA,0x64, -- 0xEC,0xFB,0x85,0x04,0x58,0xDB,0xEF,0x0A,0x8A,0xEA,0x71,0x57, -- 0x5D,0x06,0x0C,0x7D,0xB3,0x97,0x0F,0x85,0xA6,0xE1,0xE4,0xC7, -- 0xAB,0xF5,0xAE,0x8C,0xDB,0x09,0x33,0xD7,0x1E,0x8C,0x94,0xE0, -- 0x4A,0x25,0x61,0x9D,0xCE,0xE3,0xD2,0x26,0x1A,0xD2,0xEE,0x6B, -- 0xF1,0x2F,0xFA,0x06,0xD9,0x8A,0x08,0x64,0xD8,0x76,0x02,0x73, -- 0x3E,0xC8,0x6A,0x64,0x52,0x1F,0x2B,0x18,0x17,0x7B,0x20,0x0C, -- 0xBB,0xE1,0x17,0x57,0x7A,0x61,0x5D,0x6C,0x77,0x09,0x88,0xC0, -- 0xBA,0xD9,0x46,0xE2,0x08,0xE2,0x4F,0xA0,0x74,0xE5,0xAB,0x31, -- 0x43,0xDB,0x5B,0xFC,0xE0,0xFD,0x10,0x8E,0x4B,0x82,0xD1,0x20, -- 0xA9,0x21,0x08,0x01,0x1A,0x72,0x3C,0x12,0xA7,0x87,0xE6,0xD7, -- 0x88,0x71,0x9A,0x10,0xBD,0xBA,0x5B,0x26,0x99,0xC3,0x27,0x18, -- 0x6A,0xF4,0xE2,0x3C,0x1A,0x94,0x68,0x34,0xB6,0x15,0x0B,0xDA, -- 0x25,0x83,0xE9,0xCA,0x2A,0xD4,0x4C,0xE8,0xDB,0xBB,0xC2,0xDB, -- 0x04,0xDE,0x8E,0xF9,0x2E,0x8E,0xFC,0x14,0x1F,0xBE,0xCA,0xA6, -- 0x28,0x7C,0x59,0x47,0x4E,0x6B,0xC0,0x5D,0x99,0xB2,0x96,0x4F, -- 0xA0,0x90,0xC3,0xA2,0x23,0x3B,0xA1,0x86,0x51,0x5B,0xE7,0xED, -- 0x1F,0x61,0x29,0x70,0xCE,0xE2,0xD7,0xAF,0xB8,0x1B,0xDD,0x76, -- 0x21,0x70,0x48,0x1C,0xD0,0x06,0x91,0x27,0xD5,0xB0,0x5A,0xA9, -- 0x93,0xB4,0xEA,0x98,0x8D,0x8F,0xDD,0xC1,0x86,0xFF,0xB7,0xDC, -- 0x90,0xA6,0xC0,0x8F,0x4D,0xF4,0x35,0xC9,0x34,0x06,0x31,0x99, -- 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF, -+ static unsigned char dh4096_p[]={ -+ 0xDE,0x16,0x94,0xCD,0x99,0x58,0x07,0xF1,0xF7,0x32,0x96,0x11, -+ 0x04,0x82,0xD4,0x84,0x72,0x80,0x99,0x06,0xCA,0xF0,0xA3,0x68, -+ 0x07,0xCE,0x64,0x50,0xE7,0x74,0x45,0x20,0x80,0x5E,0x4D,0xAD, -+ 0xA5,0xB6,0xED,0xFA,0x80,0x6C,0x3B,0x35,0xC4,0x9A,0x14,0x6B, -+ 0x32,0xBB,0xFD,0x1F,0x17,0x8E,0xB7,0x1F,0xD6,0xFA,0x3F,0x7B, -+ 0xEE,0x16,0xA5,0x62,0x33,0x0D,0xED,0xBC,0x4E,0x58,0xE5,0x47, -+ 0x4D,0xE9,0xAB,0x8E,0x38,0xD3,0x6E,0x90,0x57,0xE3,0x22,0x15, -+ 0x33,0xBD,0xF6,0x43,0x45,0xB5,0x10,0x0A,0xBE,0x2C,0xB4,0x35, -+ 0xB8,0x53,0x8D,0xAD,0xFB,0xA7,0x1F,0x85,0x58,0x41,0x7A,0x79, -+ 0x20,0x68,0xB3,0xE1,0x3D,0x08,0x76,0xBF,0x86,0x0D,0x49,0xE3, -+ 0x82,0x71,0x8C,0xB4,0x8D,0x81,0x84,0xD4,0xE7,0xBE,0x91,0xDC, -+ 0x26,0x39,0x48,0x0F,0x35,0xC4,0xCA,0x65,0xE3,0x40,0x93,0x52, -+ 0x76,0x58,0x7D,0xDD,0x51,0x75,0xDC,0x69,0x61,0xBF,0x47,0x2C, -+ 0x16,0x68,0x2D,0xC9,0x29,0xD3,0xE6,0xC0,0x99,0x48,0xA0,0x9A, -+ 0xC8,0x78,0xC0,0x6D,0x81,0x67,0x12,0x61,0x3F,0x71,0xBA,0x41, -+ 0x1F,0x6C,0x89,0x44,0x03,0xBA,0x3B,0x39,0x60,0xAA,0x28,0x55, -+ 0x59,0xAE,0xB8,0xFA,0xCB,0x6F,0xA5,0x1A,0xF7,0x2B,0xDD,0x52, -+ 0x8A,0x8B,0xE2,0x71,0xA6,0x5E,0x7E,0xD8,0x2E,0x18,0xE0,0x66, -+ 0xDF,0xDD,0x22,0x21,0x99,0x52,0x73,0xA6,0x33,0x20,0x65,0x0E, -+ 0x53,0xE7,0x6B,0x9B,0xC5,0xA3,0x2F,0x97,0x65,0x76,0xD3,0x47, -+ 0x23,0x77,0x12,0xB6,0x11,0x7B,0x24,0xED,0xF1,0xEF,0xC0,0xE2, -+ 0xA3,0x7E,0x67,0x05,0x3E,0x96,0x4D,0x45,0xC2,0x18,0xD1,0x73, -+ 0x9E,0x07,0xF3,0x81,0x6E,0x52,0x63,0xF6,0x20,0x76,0xB9,0x13, -+ 0xD2,0x65,0x30,0x18,0x16,0x09,0x16,0x9E,0x8F,0xF1,0xD2,0x10, -+ 0x5A,0xD3,0xD4,0xAF,0x16,0x61,0xDA,0x55,0x2E,0x18,0x5E,0x14, -+ 0x08,0x54,0x2E,0x2A,0x25,0xA2,0x1A,0x9B,0x8B,0x32,0xA9,0xFD, -+ 0xC2,0x48,0x96,0xE1,0x80,0xCA,0xE9,0x22,0x17,0xBB,0xCE,0x3E, -+ 0x9E,0xED,0xC7,0xF1,0x1F,0xEC,0x17,0x21,0xDC,0x7B,0x82,0x48, -+ 0x8E,0xBB,0x4B,0x9D,0x5B,0x04,0x04,0xDA,0xDB,0x39,0xDF,0x01, -+ 0x40,0xC3,0xAA,0x26,0x23,0x89,0x75,0xC6,0x0B,0xD0,0xA2,0x60, -+ 0x6A,0xF1,0xCC,0x65,0x18,0x98,0x1B,0x52,0xD2,0x74,0x61,0xCC, -+ 0xBD,0x60,0xAE,0xA3,0xA0,0x66,0x6A,0x16,0x34,0x92,0x3F,0x41, -+ 0x40,0x31,0x29,0xC0,0x2C,0x63,0xB2,0x07,0x8D,0xEB,0x94,0xB8, -+ 0xE8,0x47,0x92,0x52,0x93,0x6A,0x1B,0x7E,0x1A,0x61,0xB3,0x1B, -+ 0xF0,0xD6,0x72,0x9B,0xF1,0xB0,0xAF,0xBF,0x3E,0x65,0xEF,0x23, -+ 0x1D,0x6F,0xFF,0x70,0xCD,0x8A,0x4C,0x8A,0xA0,0x72,0x9D,0xBE, -+ 0xD4,0xBB,0x24,0x47,0x4A,0x68,0xB5,0xF5,0xC6,0xD5,0x7A,0xCD, -+ 0xCA,0x06,0x41,0x07,0xAD,0xC2,0x1E,0xE6,0x54,0xA7,0xAD,0x03, -+ 0xD9,0x12,0xC1,0x9C,0x13,0xB1,0xC9,0x0A,0x43,0x8E,0x1E,0x08, -+ 0xCE,0x50,0x82,0x73,0x5F,0xA7,0x55,0x1D,0xD9,0x59,0xAC,0xB5, -+ 0xEA,0x02,0x7F,0x6C,0x5B,0x74,0x96,0x98,0x67,0x24,0xA3,0x0F, -+ 0x15,0xFC,0xA9,0x7D,0x3E,0x67,0xD1,0x70,0xF8,0x97,0xF3,0x67, -+ 0xC5,0x8C,0x88,0x44,0x08,0x02,0xC7,0x2B, - }; --#endif -- DH *dh = DH_new(); -- if (dh) { --#if OPENSSL_VERSION_NUMBER >= 0x0090801fL -- dh->p = get_rfc3526_prime_4096(NULL); --#else -- dh->p = BN_bin2bn(rfc_3526_prime_4096, sizeof rfc_3526_prime_4096, NULL); --#endif -- /* See RFC 3526, Section 5 "4096-bit MODP Group" -- for the reason why 2 is used as generator. -- */ -- BN_dec2bn(&dh->g, "2"); -- if (!dh->p || !dh->g) { -- DH_free(dh); -- dh = NULL; -- } -- } -- return dh; --} -+ static unsigned char dh4096_g[]={ -+ 0x02, -+ }; - --static DH *ssl_get_dh_8192(void) --{ --#if OPENSSL_VERSION_NUMBER < 0x0090801fL -- static const unsigned char rfc_3526_prime_8192[] = { -- 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xC9,0x0F,0xDA,0xA2, -- 0x21,0x68,0xC2,0x34,0xC4,0xC6,0x62,0x8B,0x80,0xDC,0x1C,0xD1, -- 0x29,0x02,0x4E,0x08,0x8A,0x67,0xCC,0x74,0x02,0x0B,0xBE,0xA6, -- 0x3B,0x13,0x9B,0x22,0x51,0x4A,0x08,0x79,0x8E,0x34,0x04,0xDD, -- 0xEF,0x95,0x19,0xB3,0xCD,0x3A,0x43,0x1B,0x30,0x2B,0x0A,0x6D, -- 0xF2,0x5F,0x14,0x37,0x4F,0xE1,0x35,0x6D,0x6D,0x51,0xC2,0x45, -- 0xE4,0x85,0xB5,0x76,0x62,0x5E,0x7E,0xC6,0xF4,0x4C,0x42,0xE9, -- 0xA6,0x37,0xED,0x6B,0x0B,0xFF,0x5C,0xB6,0xF4,0x06,0xB7,0xED, -- 0xEE,0x38,0x6B,0xFB,0x5A,0x89,0x9F,0xA5,0xAE,0x9F,0x24,0x11, -- 0x7C,0x4B,0x1F,0xE6,0x49,0x28,0x66,0x51,0xEC,0xE4,0x5B,0x3D, -- 0xC2,0x00,0x7C,0xB8,0xA1,0x63,0xBF,0x05,0x98,0xDA,0x48,0x36, -- 0x1C,0x55,0xD3,0x9A,0x69,0x16,0x3F,0xA8,0xFD,0x24,0xCF,0x5F, -- 0x83,0x65,0x5D,0x23,0xDC,0xA3,0xAD,0x96,0x1C,0x62,0xF3,0x56, -- 0x20,0x85,0x52,0xBB,0x9E,0xD5,0x29,0x07,0x70,0x96,0x96,0x6D, -- 0x67,0x0C,0x35,0x4E,0x4A,0xBC,0x98,0x04,0xF1,0x74,0x6C,0x08, -- 0xCA,0x18,0x21,0x7C,0x32,0x90,0x5E,0x46,0x2E,0x36,0xCE,0x3B, -- 0xE3,0x9E,0x77,0x2C,0x18,0x0E,0x86,0x03,0x9B,0x27,0x83,0xA2, -- 0xEC,0x07,0xA2,0x8F,0xB5,0xC5,0x5D,0xF0,0x6F,0x4C,0x52,0xC9, -- 0xDE,0x2B,0xCB,0xF6,0x95,0x58,0x17,0x18,0x39,0x95,0x49,0x7C, -- 0xEA,0x95,0x6A,0xE5,0x15,0xD2,0x26,0x18,0x98,0xFA,0x05,0x10, -- 0x15,0x72,0x8E,0x5A,0x8A,0xAA,0xC4,0x2D,0xAD,0x33,0x17,0x0D, -- 0x04,0x50,0x7A,0x33,0xA8,0x55,0x21,0xAB,0xDF,0x1C,0xBA,0x64, -- 0xEC,0xFB,0x85,0x04,0x58,0xDB,0xEF,0x0A,0x8A,0xEA,0x71,0x57, -- 0x5D,0x06,0x0C,0x7D,0xB3,0x97,0x0F,0x85,0xA6,0xE1,0xE4,0xC7, -- 0xAB,0xF5,0xAE,0x8C,0xDB,0x09,0x33,0xD7,0x1E,0x8C,0x94,0xE0, -- 0x4A,0x25,0x61,0x9D,0xCE,0xE3,0xD2,0x26,0x1A,0xD2,0xEE,0x6B, -- 0xF1,0x2F,0xFA,0x06,0xD9,0x8A,0x08,0x64,0xD8,0x76,0x02,0x73, -- 0x3E,0xC8,0x6A,0x64,0x52,0x1F,0x2B,0x18,0x17,0x7B,0x20,0x0C, -- 0xBB,0xE1,0x17,0x57,0x7A,0x61,0x5D,0x6C,0x77,0x09,0x88,0xC0, -- 0xBA,0xD9,0x46,0xE2,0x08,0xE2,0x4F,0xA0,0x74,0xE5,0xAB,0x31, -- 0x43,0xDB,0x5B,0xFC,0xE0,0xFD,0x10,0x8E,0x4B,0x82,0xD1,0x20, -- 0xA9,0x21,0x08,0x01,0x1A,0x72,0x3C,0x12,0xA7,0x87,0xE6,0xD7, -- 0x88,0x71,0x9A,0x10,0xBD,0xBA,0x5B,0x26,0x99,0xC3,0x27,0x18, -- 0x6A,0xF4,0xE2,0x3C,0x1A,0x94,0x68,0x34,0xB6,0x15,0x0B,0xDA, -- 0x25,0x83,0xE9,0xCA,0x2A,0xD4,0x4C,0xE8,0xDB,0xBB,0xC2,0xDB, -- 0x04,0xDE,0x8E,0xF9,0x2E,0x8E,0xFC,0x14,0x1F,0xBE,0xCA,0xA6, -- 0x28,0x7C,0x59,0x47,0x4E,0x6B,0xC0,0x5D,0x99,0xB2,0x96,0x4F, -- 0xA0,0x90,0xC3,0xA2,0x23,0x3B,0xA1,0x86,0x51,0x5B,0xE7,0xED, -- 0x1F,0x61,0x29,0x70,0xCE,0xE2,0xD7,0xAF,0xB8,0x1B,0xDD,0x76, -- 0x21,0x70,0x48,0x1C,0xD0,0x06,0x91,0x27,0xD5,0xB0,0x5A,0xA9, -- 0x93,0xB4,0xEA,0x98,0x8D,0x8F,0xDD,0xC1,0x86,0xFF,0xB7,0xDC, -- 0x90,0xA6,0xC0,0x8F,0x4D,0xF4,0x35,0xC9,0x34,0x02,0x84,0x92, -- 0x36,0xC3,0xFA,0xB4,0xD2,0x7C,0x70,0x26,0xC1,0xD4,0xDC,0xB2, -- 0x60,0x26,0x46,0xDE,0xC9,0x75,0x1E,0x76,0x3D,0xBA,0x37,0xBD, -- 0xF8,0xFF,0x94,0x06,0xAD,0x9E,0x53,0x0E,0xE5,0xDB,0x38,0x2F, -- 0x41,0x30,0x01,0xAE,0xB0,0x6A,0x53,0xED,0x90,0x27,0xD8,0x31, -- 0x17,0x97,0x27,0xB0,0x86,0x5A,0x89,0x18,0xDA,0x3E,0xDB,0xEB, -- 0xCF,0x9B,0x14,0xED,0x44,0xCE,0x6C,0xBA,0xCE,0xD4,0xBB,0x1B, -- 0xDB,0x7F,0x14,0x47,0xE6,0xCC,0x25,0x4B,0x33,0x20,0x51,0x51, -- 0x2B,0xD7,0xAF,0x42,0x6F,0xB8,0xF4,0x01,0x37,0x8C,0xD2,0xBF, -- 0x59,0x83,0xCA,0x01,0xC6,0x4B,0x92,0xEC,0xF0,0x32,0xEA,0x15, -- 0xD1,0x72,0x1D,0x03,0xF4,0x82,0xD7,0xCE,0x6E,0x74,0xFE,0xF6, -- 0xD5,0x5E,0x70,0x2F,0x46,0x98,0x0C,0x82,0xB5,0xA8,0x40,0x31, -- 0x90,0x0B,0x1C,0x9E,0x59,0xE7,0xC9,0x7F,0xBE,0xC7,0xE8,0xF3, -- 0x23,0xA9,0x7A,0x7E,0x36,0xCC,0x88,0xBE,0x0F,0x1D,0x45,0xB7, -- 0xFF,0x58,0x5A,0xC5,0x4B,0xD4,0x07,0xB2,0x2B,0x41,0x54,0xAA, -- 0xCC,0x8F,0x6D,0x7E,0xBF,0x48,0xE1,0xD8,0x14,0xCC,0x5E,0xD2, -- 0x0F,0x80,0x37,0xE0,0xA7,0x97,0x15,0xEE,0xF2,0x9B,0xE3,0x28, -- 0x06,0xA1,0xD5,0x8B,0xB7,0xC5,0xDA,0x76,0xF5,0x50,0xAA,0x3D, -- 0x8A,0x1F,0xBF,0xF0,0xEB,0x19,0xCC,0xB1,0xA3,0x13,0xD5,0x5C, -- 0xDA,0x56,0xC9,0xEC,0x2E,0xF2,0x96,0x32,0x38,0x7F,0xE8,0xD7, -- 0x6E,0x3C,0x04,0x68,0x04,0x3E,0x8F,0x66,0x3F,0x48,0x60,0xEE, -- 0x12,0xBF,0x2D,0x5B,0x0B,0x74,0x74,0xD6,0xE6,0x94,0xF9,0x1E, -- 0x6D,0xBE,0x11,0x59,0x74,0xA3,0x92,0x6F,0x12,0xFE,0xE5,0xE4, -- 0x38,0x77,0x7C,0xB6,0xA9,0x32,0xDF,0x8C,0xD8,0xBE,0xC4,0xD0, -- 0x73,0xB9,0x31,0xBA,0x3B,0xC8,0x32,0xB6,0x8D,0x9D,0xD3,0x00, -- 0x74,0x1F,0xA7,0xBF,0x8A,0xFC,0x47,0xED,0x25,0x76,0xF6,0x93, -- 0x6B,0xA4,0x24,0x66,0x3A,0xAB,0x63,0x9C,0x5A,0xE4,0xF5,0x68, -- 0x34,0x23,0xB4,0x74,0x2B,0xF1,0xC9,0x78,0x23,0x8F,0x16,0xCB, -- 0xE3,0x9D,0x65,0x2D,0xE3,0xFD,0xB8,0xBE,0xFC,0x84,0x8A,0xD9, -- 0x22,0x22,0x2E,0x04,0xA4,0x03,0x7C,0x07,0x13,0xEB,0x57,0xA8, -- 0x1A,0x23,0xF0,0xC7,0x34,0x73,0xFC,0x64,0x6C,0xEA,0x30,0x6B, -- 0x4B,0xCB,0xC8,0x86,0x2F,0x83,0x85,0xDD,0xFA,0x9D,0x4B,0x7F, -- 0xA2,0xC0,0x87,0xE8,0x79,0x68,0x33,0x03,0xED,0x5B,0xDD,0x3A, -- 0x06,0x2B,0x3C,0xF5,0xB3,0xA2,0x78,0xA6,0x6D,0x2A,0x13,0xF8, -- 0x3F,0x44,0xF8,0x2D,0xDF,0x31,0x0E,0xE0,0x74,0xAB,0x6A,0x36, -- 0x45,0x97,0xE8,0x99,0xA0,0x25,0x5D,0xC1,0x64,0xF3,0x1C,0xC5, -- 0x08,0x46,0x85,0x1D,0xF9,0xAB,0x48,0x19,0x5D,0xED,0x7E,0xA1, -- 0xB1,0xD5,0x10,0xBD,0x7E,0xE7,0x4D,0x73,0xFA,0xF3,0x6B,0xC3, -- 0x1E,0xCF,0xA2,0x68,0x35,0x90,0x46,0xF4,0xEB,0x87,0x9F,0x92, -- 0x40,0x09,0x43,0x8B,0x48,0x1C,0x6C,0xD7,0x88,0x9A,0x00,0x2E, -- 0xD5,0xEE,0x38,0x2B,0xC9,0x19,0x0D,0xA6,0xFC,0x02,0x6E,0x47, -- 0x95,0x58,0xE4,0x47,0x56,0x77,0xE9,0xAA,0x9E,0x30,0x50,0xE2, -- 0x76,0x56,0x94,0xDF,0xC8,0x1F,0x56,0xE8,0x80,0xB9,0x6E,0x71, -- 0x60,0xC9,0x80,0xDD,0x98,0xED,0xD3,0xDF,0xFF,0xFF,0xFF,0xFF, -- 0xFF,0xFF,0xFF,0xFF, -- }; --#endif - DH *dh = DH_new(); - if (dh) { --#if OPENSSL_VERSION_NUMBER >= 0x0090801fL -- dh->p = get_rfc3526_prime_8192(NULL); --#else -- dh->p = BN_bin2bn(rfc_3526_prime_8192, sizeof rfc_3526_prime_8192, NULL); --#endif -- /* See RFC 3526, Section 7 "8192-bit MODP Group" -- for the reason why 2 is used as generator. -- */ -- BN_dec2bn(&dh->g, "2"); -+ dh->p = BN_bin2bn(dh4096_p, sizeof dh4096_p, NULL); -+ dh->g = BN_bin2bn(dh4096_g, sizeof dh4096_g, NULL); -+ - if (!dh->p || !dh->g) { - DH_free(dh); - dh = NULL; -@@ -1045,10 +921,7 @@ static DH *ssl_get_tmp_dh(SSL *ssl, int export, int keylen) - keylen = global.tune.ssl_default_dh_param; - } - -- if (keylen >= 8192) { -- dh = local_dh_8192; -- } -- else if (keylen >= 4096) { -+ if (keylen >= 4096) { - dh = local_dh_4096; - } - else if (keylen >= 2048) { -@@ -1643,10 +1516,6 @@ int ssl_sock_prepare_ctx(struct bind_conf *bind_conf, SSL_CTX *ctx, struct proxy - if (local_dh_4096 == NULL) { - local_dh_4096 = ssl_get_dh_4096(); - } -- if (global.tune.ssl_default_dh_param >= 8192 && -- local_dh_8192 == NULL) { -- local_dh_8192 = ssl_get_dh_8192(); -- } - } - } - } -@@ -4753,11 +4622,6 @@ static void __ssl_sock_deinit(void) - DH_free(local_dh_4096); - local_dh_4096 = NULL; - } -- -- if (local_dh_8192) { -- DH_free(local_dh_8192); -- local_dh_8192 = NULL; -- } - #endif - - ERR_remove_state(0); --- -2.3.6 - diff --git a/net/haproxy/patches/0016-BUG-MINOR-debug-display-null-in-place-of-meth.patch b/net/haproxy/patches/0016-BUG-MINOR-debug-display-null-in-place-of-meth.patch deleted file mode 100644 index f40d72317..000000000 --- a/net/haproxy/patches/0016-BUG-MINOR-debug-display-null-in-place-of-meth.patch +++ /dev/null @@ -1,28 +0,0 @@ -From c51fe0fb249db735c5b103ec99559a0254d58441 Mon Sep 17 00:00:00 2001 -From: Thierry FOURNIER -Date: Wed, 3 Jun 2015 20:12:04 +0200 -Subject: [PATCH 16/18] BUG/MINOR: debug: display (null) in place of "meth" - -The array which contains names of types, miss the METH entry. - -[wt: should be backported to 1.5 as well] -(cherry picked from commit 4c2479e1c455e2cc46c02cfc28ea2a185f9a7747) ---- - src/sample.c | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/src/sample.c b/src/sample.c -index 87c9f60..59c80b2 100644 ---- a/src/sample.c -+++ b/src/sample.c -@@ -40,6 +40,7 @@ const char *smp_to_type[SMP_TYPES] = { - [SMP_T_IPV6] = "ipv6", - [SMP_T_STR] = "str", - [SMP_T_BIN] = "bin", -+ [SMP_T_METH] = "meth", - }; - - /* static sample used in sample_process() when

is NULL */ --- -2.3.6 - diff --git a/net/haproxy/patches/0017-CLEANUP-deinit-remove-codes-for-cleaning-p-block_rul.patch b/net/haproxy/patches/0017-CLEANUP-deinit-remove-codes-for-cleaning-p-block_rul.patch deleted file mode 100644 index bbacca4af..000000000 --- a/net/haproxy/patches/0017-CLEANUP-deinit-remove-codes-for-cleaning-p-block_rul.patch +++ /dev/null @@ -1,36 +0,0 @@ -From 793a74065926b0da87120d4b1e6330234475505c Mon Sep 17 00:00:00 2001 -From: Godbach -Date: Tue, 9 Jun 2015 19:41:52 +0800 -Subject: [PATCH 17/18] CLEANUP: deinit: remove codes for cleaning - p->block_rules - -Since all rules listed in p->block_rules have been moved to the beginning of -the http-request rules in check_config_validity(), there is no need to clean -p->block_rules in deinit(). - -Signed-off-by: Godbach -(cherry picked from commit 28b48ccbc879a552f988e6e1db22941e3362b4db) ---- - src/haproxy.c | 6 ------ - 1 file changed, 6 deletions(-) - -diff --git a/src/haproxy.c b/src/haproxy.c -index 0dddd53..eac6f44 100644 ---- a/src/haproxy.c -+++ b/src/haproxy.c -@@ -1020,12 +1020,6 @@ void deinit(void) - free(cwl); - } - -- list_for_each_entry_safe(cond, condb, &p->block_rules, list) { -- LIST_DEL(&cond->list); -- prune_acl_cond(cond); -- free(cond); -- } -- - list_for_each_entry_safe(cond, condb, &p->mon_fail_cond, list) { - LIST_DEL(&cond->list); - prune_acl_cond(cond); --- -2.3.6 - diff --git a/net/haproxy/patches/0018-BUG-MINOR-ssl-fix-smp_fetch_ssl_fc_session_id.patch b/net/haproxy/patches/0018-BUG-MINOR-ssl-fix-smp_fetch_ssl_fc_session_id.patch deleted file mode 100644 index b6113a359..000000000 --- a/net/haproxy/patches/0018-BUG-MINOR-ssl-fix-smp_fetch_ssl_fc_session_id.patch +++ /dev/null @@ -1,37 +0,0 @@ -From 69760db11dfca4a8d8fbd34cec25c334f77add67 Mon Sep 17 00:00:00 2001 -From: Willy Tarreau -Date: Wed, 17 Jun 2015 18:34:14 +0200 -Subject: [PATCH 18/18] BUG/MINOR: ssl: fix smp_fetch_ssl_fc_session_id - -Dmitry Sivachenko reported the following build warning using Clang -which is a real bug : - -src/ssl_sock.c:4104:44: warning: address of 'smp->data.str.len' will always - evaluate to 'true' [-Wpointer-bool-conversion] - if (!smp->data.str.str || !&smp->data.str.len) - -The impact is very low however, it will return an empty session_id -instead of no session id when none is found. - -The fix should be backported to 1.5. -(cherry picked from commit 745d4127582a8c66e2e8ce35f746a78e867960af) ---- - src/ssl_sock.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/ssl_sock.c b/src/ssl_sock.c -index 93aab8b..7d77d36 100644 ---- a/src/ssl_sock.c -+++ b/src/ssl_sock.c -@@ -3540,7 +3540,7 @@ smp_fetch_ssl_fc_session_id(struct proxy *px, struct session *l4, void *l7, unsi - return 0; - - smp->data.str.str = (char *)SSL_SESSION_get_id(sess, (unsigned int *)&smp->data.str.len); -- if (!smp->data.str.str || !&smp->data.str.len) -+ if (!smp->data.str.str || !smp->data.str.len) - return 0; - - return 1; --- -2.3.6 - From 8b09195b2bf2a0e590e1c14c5c4002a766db984e Mon Sep 17 00:00:00 2001 From: Ted Hess Date: Fri, 26 Jun 2015 16:46:05 -0400 Subject: [PATCH 674/681] mpd: Upgrade to 0.19.10, refresh patches Signed-off-by: Ted Hess --- sound/mpd/Makefile | 26 ++++++++----------- .../patches/210-support_raw_pcm_streams.patch | 6 ++--- ...20-handle_slow_server_stream_startup.patch | 6 ++--- 3 files changed, 17 insertions(+), 21 deletions(-) diff --git a/sound/mpd/Makefile b/sound/mpd/Makefile index 56e63eb4a..845360301 100644 --- a/sound/mpd/Makefile +++ b/sound/mpd/Makefile @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=mpd -PKG_VERSION:=0.18.23 +PKG_VERSION:=0.19.10 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz -PKG_SOURCE_URL:=http://www.musicpd.org/download/mpd/0.18/ -PKG_MD5SUM:=fcdfe8b3a7a21a87b6776204e6eb7814 +PKG_SOURCE_URL:=http://www.musicpd.org/download/mpd/0.19/ +PKG_MD5SUM:=da4bc3e47afd0faf9e7a67168e012102 PKG_MAINTAINER:=Ted Hess PKG_LICENSE:=GPL-2.0 @@ -28,15 +28,15 @@ PKG_CONFIG_DEPENDS:= \ PKG_INSTALL:=1 include $(INCLUDE_DIR)/package.mk -include $(INCLUDE_DIR)/nls.mk define Package/mpd/Default SECTION:=sound CATEGORY:=Sound TITLE:=Music Player Daemon URL:=http://www.musicpd.org/ - DEPENDS:= +glib2 +libcurl +libpthread +libmpdclient $(ICONV_DEPENDS) +libstdcpp \ - +libflac +BUILD_PATENTED:libmad +libvorbisidec +AUDIO_SUPPORT:alsa-lib + DEPENDS:= +glib2 +libcurl +libpthread +libmpdclient +libstdcpp \ + +libflac +BUILD_PATENTED:libmad +libvorbisidec +AUDIO_SUPPORT:alsa-lib \ + +boost +boost-container +libexpat endef define Package/mpd/Default/description @@ -51,7 +51,7 @@ $(call Package/mpd/Default) TITLE+= (full) DEPENDS+= \ +libaudiofile +BUILD_PATENTED:libfaad2 +libffmpeg +libid3tag \ - +libmms +libogg +libsndfile +libvorbis + +libmms +libogg +libsndfile +libvorbis +libupnp PROVIDES:=mpd VARIANT:=full endef @@ -105,17 +105,15 @@ CONFIGURE_ARGS += \ $(call autoconf_bool,CONFIG_IPV6,ipv6) \ --disable-debug \ --disable-documentation \ - --disable-gprof \ --disable-test \ --disable-werror \ \ --disable-ao \ --disable-bzip2 \ - --enable-cue \ - --disable-ffado \ --disable-fluidsynth \ --disable-gme \ --enable-inotify \ + --disable-icu \ --disable-eventfd \ --disable-iso9660 \ --disable-jack \ @@ -126,13 +124,11 @@ CONFIGURE_ARGS += \ --disable-modplug \ --disable-mpc \ --disable-mpg123 \ - --disable-mvp \ --disable-openal \ --disable-opus \ --disable-pulse \ --disable-sidplay \ --disable-solaris-output \ - --disable-soup \ --disable-sqlite \ --disable-twolame-encoder \ --enable-wave-encoder \ @@ -155,11 +151,12 @@ CONFIGURE_VARS += \ $(if $(CONFIG_BUILD_PATENTED),MAD_CFLAGS="$(TARGET_CFLAGS)") \ $(if $(CONFIG_BUILD_PATENTED),MAD_LIBS="$(TARGET_LDFLAGS) -lmad") \ -TARGET_LDFLAGS += -Wl,-rpath-link=$(STAGING_DIR)/usr/lib $(if $(ICONV_FULL),-liconv) +TARGET_LDFLAGS += -Wl,-rpath-link=$(STAGING_DIR)/usr/lib ifeq ($(BUILD_VARIANT),full) CONFIGURE_ARGS += \ + --enable-upnp \ $(call autoconf_bool,CONFIG_BUILD_PATENTED,aac) \ --enable-audiofile \ --enable-fifo \ @@ -183,14 +180,13 @@ ifeq ($(BUILD_VARIANT),mini) # oggflac is not compatible with tremor CONFIGURE_ARGS += \ + --disable-upnp \ --disable-aac \ --disable-audiofile \ --disable-fifo \ --disable-ffmpeg \ --disable-id3 \ - --disable-lastfm \ --disable-mms \ - --disable-oggflac \ --disable-pipe-output \ --disable-recorder-output \ --disable-shout \ diff --git a/sound/mpd/patches/210-support_raw_pcm_streams.patch b/sound/mpd/patches/210-support_raw_pcm_streams.patch index f6624af18..2c94c262c 100644 --- a/sound/mpd/patches/210-support_raw_pcm_streams.patch +++ b/sound/mpd/patches/210-support_raw_pcm_streams.patch @@ -1,6 +1,6 @@ ---- a/src/decoder/FfmpegDecoderPlugin.cxx -+++ b/src/decoder/FfmpegDecoderPlugin.cxx -@@ -666,6 +666,7 @@ static const char *const ffmpeg_mime_typ +--- a/src/decoder/plugins/FfmpegDecoderPlugin.cxx ++++ b/src/decoder/plugins/FfmpegDecoderPlugin.cxx +@@ -765,6 +765,7 @@ static const char *const ffmpeg_mime_typ "audio/qcelp", "audio/vorbis", "audio/vorbis+ogg", diff --git a/sound/mpd/patches/220-handle_slow_server_stream_startup.patch b/sound/mpd/patches/220-handle_slow_server_stream_startup.patch index af2773d06..15c51f898 100644 --- a/sound/mpd/patches/220-handle_slow_server_stream_startup.patch +++ b/sound/mpd/patches/220-handle_slow_server_stream_startup.patch @@ -1,6 +1,6 @@ ---- a/src/decoder/FfmpegDecoderPlugin.cxx -+++ b/src/decoder/FfmpegDecoderPlugin.cxx -@@ -376,6 +376,13 @@ ffmpeg_probe(Decoder *decoder, InputStre +--- a/src/decoder/plugins/FfmpegDecoderPlugin.cxx ++++ b/src/decoder/plugins/FfmpegDecoderPlugin.cxx +@@ -458,6 +458,13 @@ ffmpeg_probe(Decoder *decoder, InputStre unsigned char buffer[BUFFER_SIZE]; size_t nbytes = decoder_read(decoder, is, buffer, BUFFER_SIZE); From 19d76b3b32bab00cf5880178caa856110f98cc88 Mon Sep 17 00:00:00 2001 From: Ted Hess Date: Fri, 26 Jun 2015 16:49:11 -0400 Subject: [PATCH 675/681] boost: force build of meta-package to satisfy other package dependencies Signed-off-by: Ted Hess --- libs/boost/Makefile | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/libs/boost/Makefile b/libs/boost/Makefile index e9c2364e5..b54ea1e84 100644 --- a/libs/boost/Makefile +++ b/libs/boost/Makefile @@ -17,7 +17,7 @@ include $(INCLUDE_DIR)/target.mk PKG_NAME:=boost PKG_VERSION:=1_58_0 -PKG_RELEASE:=4 +PKG_RELEASE:=5 PKG_SOURCE:=$(PKG_NAME)_$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=@SF/boost @@ -68,6 +68,10 @@ define Package/boost-libs/install true endef +define Package/boost/install + true +endef + define Package/boost $(call Package/boost/Default) TITLE+= packages From 39ecf00d65200ae0d34b0fca5212fb12c09b428b Mon Sep 17 00:00:00 2001 From: Nikos Mavrogiannopoulos Date: Wed, 24 Jun 2015 21:51:50 +0200 Subject: [PATCH 676/681] vpnc-script: handle multiple servers in INTERNAL_IP_DNS vars Resolves #1372 Signed-off-by: Nikos Mavrogiannopoulos --- net/vpnc-scripts/files/vpnc-script | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) diff --git a/net/vpnc-scripts/files/vpnc-script b/net/vpnc-scripts/files/vpnc-script index c6007ab85..48c8ed04b 100755 --- a/net/vpnc-scripts/files/vpnc-script +++ b/net/vpnc-scripts/files/vpnc-script @@ -87,16 +87,29 @@ do_connect() { rm -f $DNSMASQ_FILE echo "$SDNS" | while read i; do if [ -n "$INTERNAL_IP4_DNS" ];then - echo "server=/$i/$INTERNAL_IP4_DNS" >> $DNSMASQ_FILE + for dns in "$INTERNAL_IP4_DNS";do + echo "server=/$i/$dns" >> $DNSMASQ_FILE + done fi if [ -n "$INTERNAL_IP6_DNS" ];then - echo "server=/$i/$INTERNAL_IP6_DNS" >> $DNSMASQ_FILE + for dns in "$INTERNAL_IP6_DNS";do + echo "server=/$i/$dns" >> $DNSMASQ_FILE + done fi echo "rebind-domain-ok=$i" >> $DNSMASQ_FILE done /etc/init.d/dnsmasq restart else - [ -n "$INTERNAL_IP4_DNS" ] && proto_add_dns_server "$INTERNAL_IP4_DNS" + if [ -n "$INTERNAL_IP4_DNS" ];then + for dns in "$INTERNAL_IP4_DNS";do + proto_add_dns_server "$dns" + done + fi + if [ -n "$INTERNAL_IP6_DNS" ];then + for dns in "$INTERNAL_IP6_DNS";do + proto_add_dns_server "$dns" + done + fi [ -n "$CISCO_DEF_DOMAIN" ] && proto_add_dns_search "$CISCO_DEF_DOMAIN" fi From 3ed70bb7724507afdffb3d4ea8be7091510bd976 Mon Sep 17 00:00:00 2001 From: Nikos Mavrogiannopoulos Date: Sat, 27 Jun 2015 08:22:07 +0200 Subject: [PATCH 677/681] vpnc-scripts: bumped version Signed-off-by: Nikos Mavrogiannopoulos --- net/vpnc-scripts/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/net/vpnc-scripts/Makefile b/net/vpnc-scripts/Makefile index 95948cfdd..3af3695ae 100644 --- a/net/vpnc-scripts/Makefile +++ b/net/vpnc-scripts/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=vpnc-scripts PKG_VERSION:=20150116 -PKG_RELEASE:=1 +PKG_RELEASE:=2 include $(INCLUDE_DIR)/package.mk From 371bf3954680bac23a32ead2194c579bdc78f537 Mon Sep 17 00:00:00 2001 From: Jo-Philipp Wich Date: Sat, 27 Jun 2015 14:25:43 +0200 Subject: [PATCH 678/681] screen: fix autoconf misdetection The configure script shipped by screen uses the presence of `elf.h` and `-lelf` as indicator for an SVR4 system which implies a `#define BUGGYGETLOGIN`. The SVR4 `getlogin()` replacement function does not compile with a musl toolchain and we do not want it anyway, so patch configure to remove the broken SVR4 detection logic. Signed-off-by: Jo-Philipp Wich --- utils/screen/Makefile | 6 ++- utils/screen/patches/200-musl-compat.patch | 47 ++++++++++++++++++++++ 2 files changed, 52 insertions(+), 1 deletion(-) diff --git a/utils/screen/Makefile b/utils/screen/Makefile index 634121424..5879e37a6 100644 --- a/utils/screen/Makefile +++ b/utils/screen/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=screen PKG_VERSION:=4.2.1 -PKG_RELEASE:=3 +PKG_RELEASE:=4 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=@GNU/screen @@ -40,6 +40,10 @@ define Build/Configure ) # XXX: memmove() works well with overlapped memory areas echo "#define USEMEMMOVE 1" >>$(PKG_BUILD_DIR)/config.h + ifeq ($(CONFIG_USE_MUSL),y) + # XXX: assume a working getlogin() for musl + echo "#undef BUGGYGETLOGIN" >>$(PKG_BUILD_DIR)/config.h + endif endef define Package/screen/install diff --git a/utils/screen/patches/200-musl-compat.patch b/utils/screen/patches/200-musl-compat.patch index 2586bb984..5bbc9d0ea 100644 --- a/utils/screen/patches/200-musl-compat.patch +++ b/utils/screen/patches/200-musl-compat.patch @@ -1,3 +1,50 @@ +--- a/configure ++++ b/configure +@@ -4154,44 +4154,6 @@ fi + rm -f conftest* + + +-oldlibs="$LIBS" +-LIBS="$LIBS -lelf" +-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking SVR4..." >&5 +-$as_echo "$as_me: checking SVR4..." >&6;} +-cat confdefs.h - <<_ACEOF >conftest.$ac_ext +-/* end confdefs.h. */ +-#include +- +-int +-main () +-{ +- +- ; +- return 0; +-} +-_ACEOF +-if ac_fn_c_try_link "$LINENO"; then : +- ac_fn_c_check_header_mongrel "$LINENO" "dwarf.h" "ac_cv_header_dwarf_h" "$ac_includes_default" +-if test "x$ac_cv_header_dwarf_h" = xyes; then : +- $as_echo "#define SVR4 1" >>confdefs.h +- $as_echo "#define BUGGYGETLOGIN 1" >>confdefs.h +- +-else +- ac_fn_c_check_header_mongrel "$LINENO" "elf.h" "ac_cv_header_elf_h" "$ac_includes_default" +-if test "x$ac_cv_header_elf_h" = xyes; then : +- $as_echo "#define SVR4 1" >>confdefs.h +- $as_echo "#define BUGGYGETLOGIN 1" >>confdefs.h +- +-fi +- +- +-fi +- +- +- +-else +- LIBS="$oldlibs" +-fi + rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + for ac_header in stropts.h string.h strings.h --- a/utmp.c +++ b/utmp.c @@ -33,6 +33,7 @@ From 474a5bf7955646c7c862948f99f50fbfd2e4f966 Mon Sep 17 00:00:00 2001 From: Jo-Philipp Wich Date: Sat, 27 Jun 2015 14:31:29 +0200 Subject: [PATCH 679/681] screen: remove leftover Makefile code Signed-off-by: Jo-Philipp Wich --- utils/screen/Makefile | 4 ---- 1 file changed, 4 deletions(-) diff --git a/utils/screen/Makefile b/utils/screen/Makefile index 5879e37a6..c7449bcd8 100644 --- a/utils/screen/Makefile +++ b/utils/screen/Makefile @@ -40,10 +40,6 @@ define Build/Configure ) # XXX: memmove() works well with overlapped memory areas echo "#define USEMEMMOVE 1" >>$(PKG_BUILD_DIR)/config.h - ifeq ($(CONFIG_USE_MUSL),y) - # XXX: assume a working getlogin() for musl - echo "#undef BUGGYGETLOGIN" >>$(PKG_BUILD_DIR)/config.h - endif endef define Package/screen/install From 77cee81ca0c907cbf96dd81757c341d8698f5281 Mon Sep 17 00:00:00 2001 From: Othmar Truniger Date: Sat, 27 Jun 2015 21:49:25 +0200 Subject: [PATCH 680/681] knxd: fix musl compatibility Signed-off-by: Othmar Truniger --- net/knxd/Makefile | 4 ++-- net/knxd/patches/0100-musl-compat | 10 ++++++++++ 2 files changed, 12 insertions(+), 2 deletions(-) create mode 100644 net/knxd/patches/0100-musl-compat diff --git a/net/knxd/Makefile b/net/knxd/Makefile index cc7f81d41..238840629 100644 --- a/net/knxd/Makefile +++ b/net/knxd/Makefile @@ -11,12 +11,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=knxd -PKG_VERSION=2015-06-02-$(PKG_SOURCE_VERSION) +PKG_VERSION=2015-06-27-$(PKG_SOURCE_VERSION) PKG_RELEASE:=1 PKG_SOURCE_PROTO:=git PKG_SOURCE_URL:=https://github.com/knxd/knxd.git -PKG_SOURCE_VERSION:=3d3b1a5e8112397d297625d673a2a94507f9ebce +PKG_SOURCE_VERSION:=50e7f6e6bfa13c2b6140b0f76aaa70234bf44b1d PKG_SOURCE_SUBDIR:=$(PKG_NAME) PKG_SOURCE:=$(PKG_NAME)-$(PKG_SOURCE_VERSION).tar.gz diff --git a/net/knxd/patches/0100-musl-compat b/net/knxd/patches/0100-musl-compat new file mode 100644 index 000000000..0c2a09b24 --- /dev/null +++ b/net/knxd/patches/0100-musl-compat @@ -0,0 +1,10 @@ +--- a/src/examples/common.h 2015-06-27 15:20:15.266563893 +0200 ++++ b/src/examples/common.h 2015-06-27 15:23:09.406457392 +0200 +@@ -20,6 +20,7 @@ + #include + #include + #include ++#include + #include "eibclient.h" + + /** unsigned char*/ From 3cf6ae0fb19264a53852584dec849b7593ca0263 Mon Sep 17 00:00:00 2001 From: Othmar Truniger Date: Sat, 27 Jun 2015 22:55:51 +0200 Subject: [PATCH 681/681] linknx: fix musl compatibility Signed-off-by: Othmar Truniger --- net/linknx/Makefile | 3 ++- net/linknx/patches/010-musl-compat | 10 ++++++++++ net/linknx/patches/012-fix-linknx.cpp | 11 +++++++++++ 3 files changed, 23 insertions(+), 1 deletion(-) create mode 100644 net/linknx/patches/010-musl-compat create mode 100644 net/linknx/patches/012-fix-linknx.cpp diff --git a/net/linknx/Makefile b/net/linknx/Makefile index 06083fc96..3af3842be 100644 --- a/net/linknx/Makefile +++ b/net/linknx/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=linknx PKG_VERSION:=0.0.1.32 -PKG_RELEASE:=6 +PKG_RELEASE:=7 PKG_MD5SUM:=7ecc1208f59bceb05068c752b2250b63 PKG_MAINTAINER:=Othmar Truniger @@ -18,6 +18,7 @@ PKG_LICENSE:=GPL-2.0+ PKG_SOURCE_URL:=@SF/linknx PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_BUILD_DEPENDS:=argp-standalone +PKG_FORTIFY_SOURCE:=1 include $(INCLUDE_DIR)/package.mk diff --git a/net/linknx/patches/010-musl-compat b/net/linknx/patches/010-musl-compat new file mode 100644 index 000000000..15c757ee0 --- /dev/null +++ b/net/linknx/patches/010-musl-compat @@ -0,0 +1,10 @@ +--- a/src/eibclient.c 2007-10-11 01:55:31.000000000 +0200 ++++ b/src/eibclient.c 2015-06-27 22:18:01.433296921 +0200 +@@ -32,6 +32,7 @@ + #include + #include + #include ++#include + + #include "config.h" + diff --git a/net/linknx/patches/012-fix-linknx.cpp b/net/linknx/patches/012-fix-linknx.cpp new file mode 100644 index 000000000..8394cf12e --- /dev/null +++ b/net/linknx/patches/012-fix-linknx.cpp @@ -0,0 +1,11 @@ +--- a/src/linknx.cpp 2012-06-04 22:12:13.000000000 +0200 ++++ b/src/linknx.cpp 2015-06-27 22:35:23.705721355 +0200 +@@ -136,7 +136,7 @@ + if (errno) + printf (": %s\n", strerror (errno)); + else +- printf ("\n", strerror (errno)); ++ printf ("\n"); + exit (1); + } +