diff --git a/dev/debug_osync.sh b/dev/debug_osync.sh index 48d0c3b..3df3165 100755 --- a/dev/debug_osync.sh +++ b/dev/debug_osync.sh @@ -4,7 +4,7 @@ PROGRAM="osync" # Rsync based two way sync engine with fault tolerance AUTHOR="(C) 2013-2016 by Orsiris de Jong" CONTACT="http://www.netpower.fr/osync - ozy@netpower.fr" PROGRAM_VERSION=1.2-beta2 -PROGRAM_BUILD=2016102101 +PROGRAM_BUILD=2016102102 IS_STABLE=no # Execution order #__WITH_PARANOIA_DEBUG @@ -45,7 +45,7 @@ IS_STABLE=no #### MINIMAL-FUNCTION-SET BEGIN #### -## FUNC_BUILD=2016102101 +## FUNC_BUILD=2016102102 ## BEGIN Generic bash functions written in 2013-2016 by Orsiris de Jong - http://www.netpower.fr - ozy@netpower.fr ## To use in a program, define the following variables: @@ -917,19 +917,20 @@ function IsNumericExpand { local re="^-?[0-9]+([.][0-9]+)?$" if [[ $value =~ $re ]]; then - echo 1 + echo 1 && return 1 else - echo 0 + echo 0 && return 0 fi } +# Usage [ $(IsNumeric $var) -eq 1 ] function IsNumeric { local value="${1}" if [[ $value =~ ^[0-9]+([.][0-9]+)?$ ]]; then - echo 1 + echo 1 && return 1 else - echo 0 + echo 0 && return 0 fi } @@ -937,9 +938,9 @@ function IsInteger { local value="${1}" if [[ $value =~ ^[0-9]+$ ]]; then - echo 1 + echo 1 && return 1 else - echo 0 + echo 0 && return 0 fi } @@ -973,13 +974,13 @@ arrayContains () { local e if [ "$2" == "" ]; then - echo 1 && return 1 + echo 0 && return 0 fi for e in "${@:2}"; do - [[ "$e" == "$1" ]] && echo 0 && return 0 + [[ "$e" == "$1" ]] && echo 1 && return 1 done - echo 1 && return 1 + echo 0 && return 0 } function GetLocalOS { @@ -1714,7 +1715,7 @@ function CheckCurrentConfigAll { exit 1 fi - if [ "$SKIP_DELETION" != "" ] && [ $(arrayContains "${INITIATOR[$__type]}" "${SKIP_DELETION[@]}") -ne 0 ] && [ $(arrayContains "${TARGET[$__type]}" "${SKIP_DELETION[@]}") -ne 0 ]; then + if [ "$SKIP_DELETION" != "" ] && [ $(arrayContains "${INITIATOR[$__type]}" "${SKIP_DELETION[@]}") -eq 0 ] && [ $(arrayContains "${TARGET[$__type]}" "${SKIP_DELETION[@]}") -eq 0 ]; then Logger "Bogus skip deletion parameter." "CRITICAL" exit 1 fi @@ -2715,7 +2716,7 @@ function deletionPropagation { #TODO: deletionPropagation replicaType = source replica whereas _deleteXxxxxx replicaType = dest replica if [ "$replicaType" == "${INITIATOR[$__type]}" ]; then - if [ $(arrayContains "${INITIATOR[$__type]}" "${SKIP_DELETION[@]}") -ne 0 ]; then + if [ $(arrayContains "${INITIATOR[$__type]}" "${SKIP_DELETION[@]}") -eq 0 ]; then replicaDir="${INITIATOR[$__replicaDir]}" deleteDir="${INITIATOR[$__deleteDir]}" @@ -2729,7 +2730,7 @@ function deletionPropagation { Logger "Skipping deletion on replica $replicaType." "NOTICE" fi elif [ "$replicaType" == "${TARGET[$__type]}" ]; then - if [ $(arrayContains "${TARGET[$__type]}" "${SKIP_DELETION[@]}") -ne 0 ]; then + if [ $(arrayContains "${TARGET[$__type]}" "${SKIP_DELETION[@]}") -eq 0 ]; then replicaDir="${TARGET[$__replicaDir]}" deleteDir="${TARGET[$__deleteDir]}" diff --git a/osync.sh b/osync.sh index b65007c..8c03d71 100755 --- a/osync.sh +++ b/osync.sh @@ -4,14 +4,14 @@ PROGRAM="osync" # Rsync based two way sync engine with fault tolerance AUTHOR="(C) 2013-2016 by Orsiris de Jong" CONTACT="http://www.netpower.fr/osync - ozy@netpower.fr" PROGRAM_VERSION=1.2-beta2 -PROGRAM_BUILD=2016102101 +PROGRAM_BUILD=2016102102 IS_STABLE=no #### MINIMAL-FUNCTION-SET BEGIN #### -## FUNC_BUILD=2016102101 +## FUNC_BUILD=2016102102 ## BEGIN Generic bash functions written in 2013-2016 by Orsiris de Jong - http://www.netpower.fr - ozy@netpower.fr ## To use in a program, define the following variables: @@ -851,19 +851,20 @@ function IsNumericExpand { local re="^-?[0-9]+([.][0-9]+)?$" if [[ $value =~ $re ]]; then - echo 1 + echo 1 && return 1 else - echo 0 + echo 0 && return 0 fi } +# Usage [ $(IsNumeric $var) -eq 1 ] function IsNumeric { local value="${1}" if [[ $value =~ ^[0-9]+([.][0-9]+)?$ ]]; then - echo 1 + echo 1 && return 1 else - echo 0 + echo 0 && return 0 fi } @@ -871,9 +872,9 @@ function IsInteger { local value="${1}" if [[ $value =~ ^[0-9]+$ ]]; then - echo 1 + echo 1 && return 1 else - echo 0 + echo 0 && return 0 fi } @@ -907,13 +908,13 @@ arrayContains () { local e if [ "$2" == "" ]; then - echo 1 && return 1 + echo 0 && return 0 fi for e in "${@:2}"; do - [[ "$e" == "$1" ]] && echo 0 && return 0 + [[ "$e" == "$1" ]] && echo 1 && return 1 done - echo 1 && return 1 + echo 0 && return 0 } function GetLocalOS { @@ -1581,7 +1582,7 @@ function CheckCurrentConfigAll { exit 1 fi - if [ "$SKIP_DELETION" != "" ] && [ $(arrayContains "${INITIATOR[$__type]}" "${SKIP_DELETION[@]}") -ne 0 ] && [ $(arrayContains "${TARGET[$__type]}" "${SKIP_DELETION[@]}") -ne 0 ]; then + if [ "$SKIP_DELETION" != "" ] && [ $(arrayContains "${INITIATOR[$__type]}" "${SKIP_DELETION[@]}") -eq 0 ] && [ $(arrayContains "${TARGET[$__type]}" "${SKIP_DELETION[@]}") -eq 0 ]; then Logger "Bogus skip deletion parameter." "CRITICAL" exit 1 fi @@ -2555,7 +2556,7 @@ function deletionPropagation { #TODO: deletionPropagation replicaType = source replica whereas _deleteXxxxxx replicaType = dest replica if [ "$replicaType" == "${INITIATOR[$__type]}" ]; then - if [ $(arrayContains "${INITIATOR[$__type]}" "${SKIP_DELETION[@]}") -ne 0 ]; then + if [ $(arrayContains "${INITIATOR[$__type]}" "${SKIP_DELETION[@]}") -eq 0 ]; then replicaDir="${INITIATOR[$__replicaDir]}" deleteDir="${INITIATOR[$__deleteDir]}" @@ -2569,7 +2570,7 @@ function deletionPropagation { Logger "Skipping deletion on replica $replicaType." "NOTICE" fi elif [ "$replicaType" == "${TARGET[$__type]}" ]; then - if [ $(arrayContains "${TARGET[$__type]}" "${SKIP_DELETION[@]}") -ne 0 ]; then + if [ $(arrayContains "${TARGET[$__type]}" "${SKIP_DELETION[@]}") -eq 0 ]; then replicaDir="${TARGET[$__replicaDir]}" deleteDir="${TARGET[$__deleteDir]}"