From 437999879a96628ed168645bccabc98c15a3a85c Mon Sep 17 00:00:00 2001 From: Ferry Huberts Date: Wed, 3 Apr 2013 14:48:48 +0200 Subject: [PATCH 01/16] pud: set local loopback for multicast tx Signed-off-by: Ferry Huberts --- lib/pud/src/networkInterfaces.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/pud/src/networkInterfaces.c b/lib/pud/src/networkInterfaces.c index c6b45c8f..a7d26b93 100644 --- a/lib/pud/src/networkInterfaces.c +++ b/lib/pud/src/networkInterfaces.c @@ -324,7 +324,7 @@ static int createTxSocket(TRxTxNetworkInterface * networkInterface, union olsr_s int txSocket = -1; - int mcLoopValue = 0; + int mcLoopValue = 1; int txTtl = getTxTtl(); assert(networkInterface != NULL); From d0fd9cf22af0c1470cdaf0b94037641322bb81ef Mon Sep 17 00:00:00 2001 From: Ronald in 't Velt Date: Fri, 19 Apr 2013 18:51:49 +0200 Subject: [PATCH 02/16] Fix setsockopt for setting Traffic Class in IPv6 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit HiOLSR-developers, For your consideration: Setting Traffic Class (the counterpart of TOS in IPv4) on OLSR IPv6 packets is currently broken. The code does not distinguish between the IPv4 and IPv6 cases, but it should, as the required 'level' and 'optname' arguments to setsockopt differ. I tested this patch by monitoring OLSR IPv6 packets with 'tcpdump -v': it appears to be working. Note this is for Linux only. This is my modest contribution to Dave Täht's quest to fix "TOS setting" in IPv6 :-) See: http://www.bufferbloat.net/issues/249 Thanks, Ronald Signed-off-by: Ronald in 't Velt --- src/unix/ifnet.c | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/src/unix/ifnet.c b/src/unix/ifnet.c index 654c169c..5ec8e32c 100644 --- a/src/unix/ifnet.c +++ b/src/unix/ifnet.c @@ -783,9 +783,17 @@ chk_if_up(struct olsr_if *iface, int debuglvl __attribute__ ((unused))) perror("setsockopt(SO_PRIORITY)"); olsr_syslog(OLSR_LOG_ERR, "OLSRD: setsockopt(SO_PRIORITY) error %m"); } - if (setsockopt(ifp->send_socket, IPPROTO_IP, IP_TOS, (char *)&tos_bits, sizeof(tos_bits)) < 0) { - perror("setsockopt(IP_TOS)"); - olsr_syslog(OLSR_LOG_ERR, "setsockopt(IP_TOS) error %m"); + if (olsr_cnf->ip_version == AF_INET) { + if (setsockopt(ifp->send_socket, IPPROTO_IP, IP_TOS, (char *)&tos_bits, sizeof(tos_bits)) < 0) { + perror("setsockopt(IP_TOS)"); + olsr_syslog(OLSR_LOG_ERR, "setsockopt(IP_TOS) error %m"); + } + } else { + /* IP version 6 */ + if (setsockopt(ifp->send_socket, IPPROTO_IPV6, IPV6_TCLASS, (char *)&tos_bits, sizeof(tos_bits)) < 0) { + perror("setsockopt(IPV6_TCLASS)"); + olsr_syslog(OLSR_LOG_ERR, "setsockopt(IPV6_TCLASS) error %m"); + } } #endif /* __linux__ */ From c50d3e021b5847990854769ea32478ebcf8aec68 Mon Sep 17 00:00:00 2001 From: Henning Rogge Date: Tue, 23 Apr 2013 15:59:34 +0200 Subject: [PATCH 03/16] Release v0.6.5.3 Signed-off-by: Henning Rogge --- CHANGELOG | 16 ++++++++++++++++ Makefile | 2 +- gui/win32/Inst/installer.nsi | 2 +- gui/win32/Main/Frontend.rc | 2 +- 4 files changed, 19 insertions(+), 3 deletions(-) diff --git a/CHANGELOG b/CHANGELOG index 2410fe7d..d75df6d2 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -1,3 +1,19 @@ +0.6.5.3 ------------------------------------------------------------------- + +Ferry Huberts (5): + pud: detect the java include directory + pud: better detection of java jdk + gateway: work around kernel IPIP module initialisation bug + main: use /dev/urandom by default + pud: set local loopback for multicast tx + +Henning Rogge (2): + Update version after release of v0.6.5.2 + Release v0.6.5.3 + +Ronald in 't Velt (1): + Fix setsockopt for setting Traffic Class in IPv6 + 0.6.5.2 ------------------------------------------------------------------- Henning Rogge (2): diff --git a/Makefile b/Makefile index 3b14b9d6..8750fab4 100644 --- a/Makefile +++ b/Makefile @@ -39,7 +39,7 @@ # Please also write a new version to: # gui/win32/Main/Frontend.rc (line 71, around "CAPTION [...]") # gui/win32/Inst/installer.nsi (line 57, around "MessageBox MB_YESNO [...]") -VERS = pre-0.6.5.3 +VERS = 0.6.5.3 TOPDIR = . INSTALLOVERWRITE ?= diff --git a/gui/win32/Inst/installer.nsi b/gui/win32/Inst/installer.nsi index 08455521..102710ed 100644 --- a/gui/win32/Inst/installer.nsi +++ b/gui/win32/Inst/installer.nsi @@ -54,7 +54,7 @@ UninstPage uninstConfirm UninstPage instfiles Function .onInit - MessageBox MB_YESNO "This will install olsr.org pre-0.6.5.3 on your computer. Continue?" IDYES NoAbort + MessageBox MB_YESNO "This will install olsr.org 0.6.5.3 on your computer. Continue?" IDYES NoAbort Abort NoAbort: FunctionEnd diff --git a/gui/win32/Main/Frontend.rc b/gui/win32/Main/Frontend.rc index f4b27415..b5f4e43c 100644 --- a/gui/win32/Main/Frontend.rc +++ b/gui/win32/Main/Frontend.rc @@ -68,7 +68,7 @@ IDD_FRONTEND_DIALOG DIALOGEX 0, 0, 399, 289 STYLE DS_MODALFRAME | WS_MINIMIZEBOX | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU EXSTYLE WS_EX_APPWINDOW -CAPTION "olsr.org Switch pre-0.6.5.3" +CAPTION "olsr.org Switch 0.6.5.3" FONT 8, "MS Sans Serif", 0, 0, 0x1 BEGIN CONTROL "Tab1",IDC_TAB1,"SysTabControl32",0x0,7,7,383,256 From bfafe1456918662ddbd1f9e196811af1a8d150a3 Mon Sep 17 00:00:00 2001 From: Henning Rogge Date: Tue, 23 Apr 2013 15:59:40 +0200 Subject: [PATCH 04/16] Update version after release of v0.6.5.3 Signed-off-by: Henning Rogge --- Makefile | 2 +- gui/win32/Inst/installer.nsi | 2 +- gui/win32/Main/Frontend.rc | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/Makefile b/Makefile index 8750fab4..89821855 100644 --- a/Makefile +++ b/Makefile @@ -39,7 +39,7 @@ # Please also write a new version to: # gui/win32/Main/Frontend.rc (line 71, around "CAPTION [...]") # gui/win32/Inst/installer.nsi (line 57, around "MessageBox MB_YESNO [...]") -VERS = 0.6.5.3 +VERS = pre-0.6.5.4 TOPDIR = . INSTALLOVERWRITE ?= diff --git a/gui/win32/Inst/installer.nsi b/gui/win32/Inst/installer.nsi index 102710ed..c2da561b 100644 --- a/gui/win32/Inst/installer.nsi +++ b/gui/win32/Inst/installer.nsi @@ -54,7 +54,7 @@ UninstPage uninstConfirm UninstPage instfiles Function .onInit - MessageBox MB_YESNO "This will install olsr.org 0.6.5.3 on your computer. Continue?" IDYES NoAbort + MessageBox MB_YESNO "This will install olsr.org pre-0.6.5.4 on your computer. Continue?" IDYES NoAbort Abort NoAbort: FunctionEnd diff --git a/gui/win32/Main/Frontend.rc b/gui/win32/Main/Frontend.rc index b5f4e43c..b9f62ee8 100644 --- a/gui/win32/Main/Frontend.rc +++ b/gui/win32/Main/Frontend.rc @@ -68,7 +68,7 @@ IDD_FRONTEND_DIALOG DIALOGEX 0, 0, 399, 289 STYLE DS_MODALFRAME | WS_MINIMIZEBOX | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU EXSTYLE WS_EX_APPWINDOW -CAPTION "olsr.org Switch 0.6.5.3" +CAPTION "olsr.org Switch pre-0.6.5.4" FONT 8, "MS Sans Serif", 0, 0, 0x1 BEGIN CONTROL "Tab1",IDC_TAB1,"SysTabControl32",0x0,7,7,383,256 From 3bc8ac6c83fde54fa3e069137f8c66dd29685a74 Mon Sep 17 00:00:00 2001 From: Ferry Huberts Date: Mon, 22 Apr 2013 14:09:10 +0200 Subject: [PATCH 05/16] Remove mercurial ignore file; we use git Signed-off-by: Ferry Huberts --- .hgignore | 33 --------------------------------- 1 file changed, 33 deletions(-) delete mode 100644 .hgignore diff --git a/.hgignore b/.hgignore deleted file mode 100644 index 339a2d75..00000000 --- a/.hgignore +++ /dev/null @@ -1,33 +0,0 @@ -syntax: glob -*.o -*.a -*.d -*.diff -*.rej -*.orig -*.swp -*~ -*.out.* -TAGS -olsrd -olsr_switch -netsimpcap -src/builddata.c -src/cfgparser/oparse.c -src/cfgparser/oparse.h -src/cfgparser/oscan.c -lib/*/*so.*.* -*.obj -*.lib -*.dll -olsrd.exe -olsr-setup.exe -*.opt -*.ncb -*.aps -*.sbr -*.plg -gui/win32/Main/Debug/ -gui/win32/Main/Release/ -gui/win32/Shim/Debug/ -gui/win32/Shim/Release/ From 74b63dd473882a8d7690b95454a6afa9227c3d34 Mon Sep 17 00:00:00 2001 From: Ferry Huberts Date: Mon, 22 Apr 2013 15:39:20 +0200 Subject: [PATCH 06/16] build: ignore builddata.c when hashing sources Not ignoring it is actually incorrect; it contains generated meta-data about the sources. If we don't ignore it then the hash will be different every time for the same source tree. Signed-off-by: Ferry Huberts --- make/hash_source.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/make/hash_source.sh b/make/hash_source.sh index 2942849d..b60781e0 100755 --- a/make/hash_source.sh +++ b/make/hash_source.sh @@ -4,4 +4,4 @@ os=$(uname) if [ "xDarwin" = "x$os" ] ; then md5cmd=md5 fi -cat `find . -name *.[ch]`| $md5cmd +cat `find . -name *.[ch] | grep -E '[/\\]?builddata.c$'`| $md5cmd From 4f2bbdbde786178518d34741955b3f17403a2a67 Mon Sep 17 00:00:00 2001 From: Ferry Huberts Date: Wed, 24 Apr 2013 09:51:59 +0200 Subject: [PATCH 07/16] release: fix the list of generated files Copy/Paste typo Signed-off-by: Ferry Huberts --- release/release.bash | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/release/release.bash b/release/release.bash index 01746a31..e39bae93 100755 --- a/release/release.bash +++ b/release/release.bash @@ -709,7 +709,7 @@ if [[ "${mode}" == "${MODE_RELEASE}" ]]; then echo "===================" cat >&1 << EOF ${tarGzFile} -${tarGzFile} +${tarBz2File} ${md5File} ${sha256File}" EOF From 70492047397c49475ebc9c2cea77df3ad06d0cb8 Mon Sep 17 00:00:00 2001 From: Ferry Huberts Date: Wed, 24 Apr 2013 09:32:48 +0200 Subject: [PATCH 08/16] release: update some comments Signed-off-by: Ferry Huberts --- release/release.bash | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/release/release.bash b/release/release.bash index e39bae93..1125b532 100755 --- a/release/release.bash +++ b/release/release.bash @@ -334,7 +334,8 @@ function checkVersionIncrementing() { # Commit the current changes, allow an empty commit, or amend (when the commit # message is the same as that of the last commit) # -# 1=commit message +# 1=non-zero to allow an empty commit +# 2=commit message function commitChanges() { local -i allowEmpty=${1} local msg="$(stringTrim "${2}")" @@ -560,7 +561,7 @@ checkVersionIncrementing "${prevTagVersionDigits}" "${relBranchVersionDigits}" # -# Confirm the release +# Confirm the branch/release # cat >&1 << EOF From 1c7ce2b42dbd07e5b1081bc04a614902e2f69885 Mon Sep 17 00:00:00 2001 From: Ferry Huberts Date: Wed, 24 Apr 2013 09:15:51 +0200 Subject: [PATCH 09/16] release: refactor the checkVersionIncrementing function To return a success/fail value. Signed-off-by: Ferry Huberts --- release/release.bash | 29 ++++++++++++++++++----------- 1 file changed, 18 insertions(+), 11 deletions(-) diff --git a/release/release.bash b/release/release.bash index 1125b532..78048d77 100755 --- a/release/release.bash +++ b/release/release.bash @@ -270,10 +270,13 @@ function adjustBranchName() { # # 1=last version # 2=new version +# return (in checkVersionIncrementingResult) = 0 when new version > last version, +# 1 otherwise +declare -i checkVersionIncrementingResult=0 function checkVersionIncrementing() { + checkVersionIncrementingResult=0 local lastVersion="$(stringTrim "${1}")" local newVersion="$(stringTrim "${2}")" - local errorstr="* The new version ${newVersion} is not greater than the previous version ${lastVersion}" local -a lastVersionDigits=( ${lastVersion//\./ } ) local -a newVersionDigits=( ${newVersion//\./ } ) @@ -290,8 +293,8 @@ function checkVersionIncrementing() { # major if [[ ${newVersionDigits[0]} -lt ${lastVersionDigits[0]} ]]; then - echo "${errorstr}" - exit 1 + checkVersionIncrementingResult=1 + return fi if [[ ${newVersionDigits[0]} -gt ${lastVersionDigits[0]} ]]; then return @@ -299,8 +302,8 @@ function checkVersionIncrementing() { # minor if [[ ${newVersionDigits[1]} -lt ${lastVersionDigits[1]} ]]; then - echo "${errorstr}" - exit 1 + checkVersionIncrementingResult=1 + return fi if [[ ${newVersionDigits[1]} -gt ${lastVersionDigits[1]} ]]; then return @@ -308,8 +311,8 @@ function checkVersionIncrementing() { # micro if [[ ${newVersionDigits[2]} -lt ${lastVersionDigits[2]} ]]; then - echo "${errorstr}" - exit 1 + checkVersionIncrementingResult=1 + return fi if [[ ${newVersionDigits[2]} -gt ${lastVersionDigits[2]} ]]; then return @@ -317,16 +320,16 @@ function checkVersionIncrementing() { # patch level if [[ ${newVersionDigits[3]} -lt ${lastVersionDigits[3]} ]]; then - echo "${errorstr}" - exit 1 + checkVersionIncrementingResult=1 + return fi if [[ ${newVersionDigits[3]} -gt ${lastVersionDigits[3]} ]]; then return fi # everything is equal - echo "${errorstr}" - exit 1 + checkVersionIncrementingResult=1 + return } @@ -558,6 +561,10 @@ declare relBranchVersionDigitsNextPatchLevel="$(getNextVersionDigitsPatchLevel " # Check that the version is incrementing # checkVersionIncrementing "${prevTagVersionDigits}" "${relBranchVersionDigits}" +if [[ ${checkVersionIncrementingResult} -ne 0 ]]; then + echo "* The new version ${relBranchVersionDigits} is not greater than the previous version ${prevTagVersionDigits}" + exit 1 +fi # From c087e426fb4fa88dc0cb926a94ca905cbffae3a3 Mon Sep 17 00:00:00 2001 From: Ferry Huberts Date: Wed, 24 Apr 2013 09:36:10 +0200 Subject: [PATCH 10/16] release: do not update the version on master when it's already higher Signed-off-by: Ferry Huberts --- release/release.bash | 24 ++++++++++++++++++++++-- 1 file changed, 22 insertions(+), 2 deletions(-) diff --git a/release/release.bash b/release/release.bash index 78048d77..7b42d4be 100755 --- a/release/release.bash +++ b/release/release.bash @@ -358,6 +358,16 @@ function commitChanges() { } +# +# Get the version from the Makefile +# +function getVersionFromMakefile() { + local src="Makefile" + local regex="([[:space:]]*VERS[[:space:]]*=[[:space:]]*)${versionRegexSources}[[:space:]]*" + grep -E "^${regex}\$" "${src}" | sed -r "s/^${regex}\$/\3/" +} + + # # Update the version in all relevant files # @@ -667,8 +677,18 @@ EOF git checkout -q master git clean -fdq git reset -q --hard - updateVersions "pre-${relBranchVersionDigitsNextMicro}" - commitChanges 0 "Update version after ${MODE_TXT_LOWER} of ${relTagVersion}" + + declare oldMasterVersion="$(getVersionFromMakefile)" + declare newMasterVersion="${relBranchVersionDigitsNextMicro}" + checkVersionIncrementing "${oldMasterVersion}" "${newMasterVersion}" + if [[ ${checkVersionIncrementingResult} -ne 0 ]]; then + echo "* Skipped updating the version on the master branch:" + echo " The new version ${newMasterVersion} is not greater than the previous version ${oldMasterVersion}" + else + updateVersions "pre-${relBranchVersionDigitsNextMicro}" + commitChanges 0 "Update version after ${MODE_TXT_LOWER} of ${relTagVersion}" + fi + git checkout -q "${relBranch}" git clean -fdq git reset -q --hard From 21e2cd798f29bbcfdfeee6c9647dd3d449454083 Mon Sep 17 00:00:00 2001 From: Ferry Huberts Date: Wed, 24 Apr 2013 09:37:09 +0200 Subject: [PATCH 11/16] release: only report that master changed when it was actually changed Signed-off-by: Ferry Huberts --- release/release.bash | 31 ++++++++++++++++++++++++++----- 1 file changed, 26 insertions(+), 5 deletions(-) diff --git a/release/release.bash b/release/release.bash index 7b42d4be..d16de33a 100755 --- a/release/release.bash +++ b/release/release.bash @@ -446,6 +446,7 @@ declare baseDir="$(dirname "${scriptDir}")" cd "${baseDir}" +declare -i masterWasUpdated=0 # # Check the number of arguments @@ -611,6 +612,7 @@ if [[ "${mode}" == "${MODE_BRANCH}" ]]; then echo "Updating the version to pre-${relBranchVersionDigits}..." updateVersions "pre-${relBranchVersionDigits}" commitChanges 1 "${MODE_TXT} ${relTagVersion}" + masterWasUpdated=1 # create release branch echo "Creating the release branch ${relBranch}..." @@ -687,6 +689,7 @@ EOF else updateVersions "pre-${relBranchVersionDigitsNextMicro}" commitChanges 0 "Update version after ${MODE_TXT_LOWER} of ${relTagVersion}" + masterWasUpdated=1 fi git checkout -q "${relBranch}" @@ -724,7 +727,9 @@ echo "" echo "===================" echo "= Git Updates =" echo "===================" -echo "Branch : master" +if [[ ${masterWasUpdated} -ne 0 ]]; then + echo "Branch : master" +fi echo "Branch : ${relBranch}" if [[ "${mode}" == "${MODE_RELEASE}" ]]; then echo "Tag : ${relTagVersion}" @@ -751,18 +756,34 @@ echo "= Manual Actions =" echo "===================" if [[ "${mode}" == "${MODE_RELEASE}" ]]; then echo "1. Check that everything is in order. For example, run:" - echo " gitk master ${relBranch} ${relTagVersion}" + if [[ ${masterWasUpdated} -ne 0 ]]; then + echo " gitk master ${relBranch} ${relTagVersion}" + else + echo " gitk ${relBranch} ${relTagVersion}" + fi echo "2. Push. For example, run:" - echo " git push origin master ${relBranch} ${relTagVersion}" + if [[ ${masterWasUpdated} -ne 0 ]]; then + echo " git push origin master ${relBranch} ${relTagVersion}" + else + echo " git push origin ${relBranch} ${relTagVersion}" + fi echo "3. Upload the generated files to" echo " http://www.olsr.org/releases/${relBranchVersionDigits}" echo "4. Add a release article on olsr.org." echo "" else echo "1. Check that everything is in order. For example, run:" - echo " gitk master ${relBranch}" + if [[ ${masterWasUpdated} -ne 0 ]]; then + echo " gitk master ${relBranch}" + else + echo " gitk ${relBranch}" + fi echo "2. Push. For example, run:" - echo " git push origin master ${relBranch}" + if [[ ${masterWasUpdated} -ne 0 ]]; then + echo " git push origin master ${relBranch}" + else + echo " git push origin ${relBranch}" + fi echo "3. Send a 'release branch created' email to olsr-dev@lists.olsr.org." echo "" fi From 04811bb87b9d425fd7f7e3aaa85cd5fd6313478a Mon Sep 17 00:00:00 2001 From: Ferry Huberts Date: Wed, 24 Apr 2013 10:19:12 +0200 Subject: [PATCH 12/16] release: checkVersionIncrementing: optionally allow equal versions Signed-off-by: Ferry Huberts --- release/release.bash | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/release/release.bash b/release/release.bash index d16de33a..97ee7f1b 100755 --- a/release/release.bash +++ b/release/release.bash @@ -270,6 +270,7 @@ function adjustBranchName() { # # 1=last version # 2=new version +# 3= 0 to disallow equal versions as ok # return (in checkVersionIncrementingResult) = 0 when new version > last version, # 1 otherwise declare -i checkVersionIncrementingResult=0 @@ -277,6 +278,7 @@ function checkVersionIncrementing() { checkVersionIncrementingResult=0 local lastVersion="$(stringTrim "${1}")" local newVersion="$(stringTrim "${2}")" + local -i allowEqualVersions=${3} local -a lastVersionDigits=( ${lastVersion//\./ } ) local -a newVersionDigits=( ${newVersion//\./ } ) @@ -328,7 +330,9 @@ function checkVersionIncrementing() { fi # everything is equal - checkVersionIncrementingResult=1 + if [[ ${allowEqualVersions} -eq 0 ]]; then + checkVersionIncrementingResult=1 + fi return } @@ -571,7 +575,7 @@ declare relBranchVersionDigitsNextPatchLevel="$(getNextVersionDigitsPatchLevel " # # Check that the version is incrementing # -checkVersionIncrementing "${prevTagVersionDigits}" "${relBranchVersionDigits}" +checkVersionIncrementing "${prevTagVersionDigits}" "${relBranchVersionDigits}" 0 if [[ ${checkVersionIncrementingResult} -ne 0 ]]; then echo "* The new version ${relBranchVersionDigits} is not greater than the previous version ${prevTagVersionDigits}" exit 1 @@ -682,7 +686,7 @@ EOF declare oldMasterVersion="$(getVersionFromMakefile)" declare newMasterVersion="${relBranchVersionDigitsNextMicro}" - checkVersionIncrementing "${oldMasterVersion}" "${newMasterVersion}" + checkVersionIncrementing "${oldMasterVersion}" "${newMasterVersion}" 0 if [[ ${checkVersionIncrementingResult} -ne 0 ]]; then echo "* Skipped updating the version on the master branch:" echo " The new version ${newMasterVersion} is not greater than the previous version ${oldMasterVersion}" From 3292d11688a2d691541d320a7b2ff08ad394207c Mon Sep 17 00:00:00 2001 From: Ferry Huberts Date: Wed, 24 Apr 2013 11:03:40 +0200 Subject: [PATCH 13/16] release: also check against the Makefile version when branching Signed-off-by: Ferry Huberts --- release/release.bash | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/release/release.bash b/release/release.bash index 97ee7f1b..08068084 100755 --- a/release/release.bash +++ b/release/release.bash @@ -582,6 +582,20 @@ if [[ ${checkVersionIncrementingResult} -ne 0 ]]; then fi +# +# When branching, check that the version is incrementing (allow equal versions), +# w.r.t. the version in the Makefile +# +if [[ "${mode}" == "${MODE_BRANCH}" ]]; then + declare currentMasterVersion="$(getVersionFromMakefile)" + checkVersionIncrementing "${currentMasterVersion}" "${relBranchVersionDigits}" 1 + if [[ ${checkVersionIncrementingResult} -ne 0 ]]; then + echo "* The new version ${relBranchVersionDigits} is not greater than the current version ${currentMasterVersion}" + exit 1 + fi +fi + + # # Confirm the branch/release # From b503b52de4ff5ee3b5c53980722da9c79dc50db4 Mon Sep 17 00:00:00 2001 From: Ferry Huberts Date: Fri, 3 May 2013 11:19:40 +0200 Subject: [PATCH 14/16] txtinfo: prevent buffer overflow Reported-by: Saverio Proto Tested-by: Saverio Proto Signed-off-by: Ferry Huberts --- lib/txtinfo/src/olsrd_txtinfo.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/lib/txtinfo/src/olsrd_txtinfo.c b/lib/txtinfo/src/olsrd_txtinfo.c index 73c3473a..d1ac379c 100644 --- a/lib/txtinfo/src/olsrd_txtinfo.c +++ b/lib/txtinfo/src/olsrd_txtinfo.c @@ -64,6 +64,7 @@ #include #include #include +#include #include "ipcalc.h" #include "olsr.h" @@ -137,7 +138,7 @@ static char *outbuffer[MAX_CLIENTS]; static size_t outbuffer_size[MAX_CLIENTS]; static size_t outbuffer_written[MAX_CLIENTS]; static int outbuffer_socket[MAX_CLIENTS]; -static int outbuffer_count; +static int outbuffer_count = 0; static struct timer_entry *writetimer_entry; @@ -254,6 +255,10 @@ ipc_action(int fd, void *data __attribute__ ((unused)), unsigned int flags __att socklen_t addrlen = sizeof(pin); + if (outbuffer_count >= MAX_CLIENTS) { + return; + } + if ((ipc_connection = accept(fd, &pin.in, &addrlen)) == -1) { #ifndef NODEBUG olsr_printf(1, "(TXTINFO) accept()=%s\n", strerror(errno)); @@ -738,6 +743,8 @@ send_info(unsigned int send_what, int the_socket) /* version */ if ((send_what & SIW_VERSION) == SIW_VERSION) ipc_print_version(&abuf); + assert(outbuffer_count < MAX_CLIENTS); + outbuffer[outbuffer_count] = olsr_malloc(abuf.len, "txt output buffer"); outbuffer_size[outbuffer_count] = abuf.len; outbuffer_written[outbuffer_count] = 0; From 4794bf2961a4a679ea6d8eee830fc81272f0e43c Mon Sep 17 00:00:00 2001 From: Ferry Huberts Date: Mon, 13 May 2013 09:35:42 +0200 Subject: [PATCH 15/16] pud: nmealib: _nmea_parse_time not parsing hsec when given "hhmmss" format Signed-off-by: Ferry Huberts --- lib/pud/nmealib/src/parse.c | 1 + 1 file changed, 1 insertion(+) diff --git a/lib/pud/nmealib/src/parse.c b/lib/pud/nmealib/src/parse.c index 092a7038..4153df04 100644 --- a/lib/pud/nmealib/src/parse.c +++ b/lib/pud/nmealib/src/parse.c @@ -48,6 +48,7 @@ static bool _nmea_parse_time(const char *s, const int len, nmeaTIME *t) { assert(t); if (len == (sizeof("hhmmss") - 1)) { + t->hsec = 0; return (3 == nmea_scanf(s, len, "%2d%2d%2d", &t->hour, &t->min, &t->sec)); } From 52b4ae06e11a055e66fe9549b8e6661150434e3b Mon Sep 17 00:00:00 2001 From: Henning Rogge Date: Thu, 16 May 2013 18:37:09 +0200 Subject: [PATCH 16/16] Release v0.6.5.4 Signed-off-by: Henning Rogge --- CHANGELOG | 19 +++++++++++++++++++ Makefile | 2 +- gui/win32/Inst/installer.nsi | 2 +- gui/win32/Main/Frontend.rc | 2 +- 4 files changed, 22 insertions(+), 3 deletions(-) diff --git a/CHANGELOG b/CHANGELOG index d75df6d2..e1259f0b 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -1,3 +1,22 @@ +0.6.5.4 ------------------------------------------------------------------- + +Ferry Huberts (11): + Remove mercurial ignore file; we use git + build: ignore builddata.c when hashing sources + release: fix the list of generated files + release: update some comments + release: refactor the checkVersionIncrementing function + release: do not update the version on master when it's already higher + release: only report that master changed when it was actually changed + release: checkVersionIncrementing: optionally allow equal versions + release: also check against the Makefile version when branching + txtinfo: prevent buffer overflow + pud: nmealib: _nmea_parse_time not parsing hsec when given "hhmmss" format + +Henning Rogge (2): + Update version after release of v0.6.5.3 + Release v0.6.5.4 + 0.6.5.3 ------------------------------------------------------------------- Ferry Huberts (5): diff --git a/Makefile b/Makefile index 89821855..078d36cf 100644 --- a/Makefile +++ b/Makefile @@ -39,7 +39,7 @@ # Please also write a new version to: # gui/win32/Main/Frontend.rc (line 71, around "CAPTION [...]") # gui/win32/Inst/installer.nsi (line 57, around "MessageBox MB_YESNO [...]") -VERS = pre-0.6.5.4 +VERS = 0.6.5.4 TOPDIR = . INSTALLOVERWRITE ?= diff --git a/gui/win32/Inst/installer.nsi b/gui/win32/Inst/installer.nsi index c2da561b..0539bba1 100644 --- a/gui/win32/Inst/installer.nsi +++ b/gui/win32/Inst/installer.nsi @@ -54,7 +54,7 @@ UninstPage uninstConfirm UninstPage instfiles Function .onInit - MessageBox MB_YESNO "This will install olsr.org pre-0.6.5.4 on your computer. Continue?" IDYES NoAbort + MessageBox MB_YESNO "This will install olsr.org 0.6.5.4 on your computer. Continue?" IDYES NoAbort Abort NoAbort: FunctionEnd diff --git a/gui/win32/Main/Frontend.rc b/gui/win32/Main/Frontend.rc index b9f62ee8..92e9a4de 100644 --- a/gui/win32/Main/Frontend.rc +++ b/gui/win32/Main/Frontend.rc @@ -68,7 +68,7 @@ IDD_FRONTEND_DIALOG DIALOGEX 0, 0, 399, 289 STYLE DS_MODALFRAME | WS_MINIMIZEBOX | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU EXSTYLE WS_EX_APPWINDOW -CAPTION "olsr.org Switch pre-0.6.5.4" +CAPTION "olsr.org Switch 0.6.5.4" FONT 8, "MS Sans Serif", 0, 0, 0x1 BEGIN CONTROL "Tab1",IDC_TAB1,"SysTabControl32",0x0,7,7,383,256