From a88198051bbc710bac0ad1a04ce3ee3a72c72772 Mon Sep 17 00:00:00 2001 From: Henry Robalino Date: Fri, 5 Jun 2020 17:28:49 -0400 Subject: [PATCH 01/10] add support for freerdp3" Added support for freerdp module 3, this is the newest module from freerdp --- configure | 98 ++++++++++++++++++++++++++--------------------------- hydra-rdp.c | 2 +- hydra.c | 10 +++--- 3 files changed, 55 insertions(+), 55 deletions(-) diff --git a/configure b/configure index 37a8f07..7849a7d 100755 --- a/configure +++ b/configure @@ -70,8 +70,8 @@ NSL_PATH="" SOCKET_PATH="" MANDIR="" XHYDRA_SUPPORT="" -FREERDP2_PATH="" -WINPR2_PATH="" +FREERDP3_PATH="" +WINPR3_PATH="" SMBC_PATH="" SMBC_IPATH="" @@ -1018,76 +1018,76 @@ fi fi -echo "Checking for Freerdp2 (libfreerdp2.so, freerdp/*.h, libwinpr2.so, winpr/*.h) ..." +echo "Checking for Freerdp3 (libfreerdp3.so, freerdp/*.h, libwinpr3.so, winpr/*.h) ..." for i in $LIBDIRS ; do - if [ "X" = "X$FREERDP2_PATH" ]; then - if [ -f "$i/libfreerdp2.so" -o -f "$i/libfreerdp2.dylib" -o -f "$i/libfreerdp2.a" -o -f "$i/libfreerdp2.dll.a" ]; then - FREERDP2_PATH="$i" + if [ "X" = "X$FREERDP3_PATH" ]; then + if [ -f "$i/libfreerdp3.so" -o -f "$i/libfreerdp3.dylib" -o -f "$i/libfreerdp3.a" -o -f "$i/libfreerdp3.dll.a" ]; then + FREERDP3_PATH="$i" fi fi - if [ "X" = "X$FREERDP2_PATH" ]; then - TMP_LIB=`/bin/ls $i/libfreerdp2*.so* 2> /dev/null | grep libfreerdp2` + if [ "X" = "X$FREERDP3_PATH" ]; then + TMP_LIB=`/bin/ls $i/libfreerdp3*.so* 2> /dev/null | grep libfreerdp3` if [ -n "$TMP_LIB" ]; then - FREERDP2_PATH="$i" + FREERDP3_PATH="$i" fi fi done - FREERDP2_IPATH= + FREERDP3_IPATH= for i in $INCDIRS ; do - if [ "X" = "X$FREERDP2_IPATH" ]; then + if [ "X" = "X$FREERDP3_IPATH" ]; then if [ -f "$i/freerdp/freerdp.h" ]; then - FREERDP2_IPATH="$i/freerdp2" + FREERDP3_IPATH="$i/freerdp3" fi - if [ -f "$i/freerdp2/freerdp/freerdp.h" ]; then - FREERDP2_IPATH="$i/freerdp2" + if [ -f "$i/freerdp3/freerdp/freerdp.h" ]; then + FREERDP3_IPATH="$i/freerdp3" fi fi done for i in $LIBDIRS ; do - if [ "X" = "X$WINPR2_PATH" ]; then - if [ -f "$i/libwinpr2.so" -o -f "$i/libwinpr2.dylib" -o -f "$i/libwinpr2.a" ]; then - WINPR2_PATH="$i" + if [ "X" = "X$WINPR3_PATH" ]; then + if [ -f "$i/libwinpr3.so" -o -f "$i/libwinpr3.dylib" -o -f "$i/libwinpr3.a" ]; then + WINPR3_PATH="$i" fi fi - if [ "X" = "X$WINPR2_PATH" ]; then - TMP_LIB=`/bin/ls $i/libwinpr2.dll.a 2> /dev/null | grep winpr` + if [ "X" = "X$WINPR3_PATH" ]; then + TMP_LIB=`/bin/ls $i/libwinpr3.dll.a 2> /dev/null | grep winpr` if [ -n "$TMP_LIB" ]; then - WINPR2_PATH="$i" + WINPR3_PATH="$i" fi fi done - WINPR2_IPATH= + WINPR3_IPATH= for i in $INCDIRS ; do - if [ "X" = "X$WINPR2_IPATH" ]; then + if [ "X" = "X$WINPR3_IPATH" ]; then if [ -f "$i/winpr.h" ]; then - WINPR2_IPATH="$i" + WINPR3_IPATH="$i" fi - if [ -f "$i/winpr2/winpr/winpr.h" ]; then - WINPR2_IPATH="$i/winpr2" + if [ -f "$i/winpr3/winpr/winpr.h" ]; then + WINPR3_IPATH="$i/winpr3" fi fi done if [ "X" != "X$DEBUG" ]; then - echo DEBUG: FREERDP2_PATH=$FREERDP2_PATH/ - echo DEBUG: FREERDP2_IPATH=$FREERDP2_IPATH/ - echo DEBUG: WINPR2_PATH=$WINPR2_PATH/ - echo DEBUG: WINPR2_IPATH=$WINPR2_IPATH/ + echo DEBUG: FREERDP3_PATH=$FREERDP3_PATH/ + echo DEBUG: FREERDP3_IPATH=$FREERDP3_IPATH/ + echo DEBUG: WINPR3_PATH=$WINPR3_PATH/ + echo DEBUG: WINPR3_IPATH=$WINPR3_IPATH/ fi - if [ -n "$FREERDP2_PATH" -a -n "$FREERDP2_IPATH" -a -n "$WINPR2_PATH" -a -n "$WINPR2_IPATH" ]; then + if [ -n "$FREERDP3_PATH" -a -n "$FREERDP3_IPATH" -a -n "$WINPR3_PATH" -a -n "$WINPR3_IPATH" ]; then echo " ... found" fi - if [ "X" = "X$FREERDP2_PATH" -o "X" = "X$FREERDP2_IPATH" -o "X" = "X$WINPR2_PATH" -o "X" = "X$WINPR2_IPATH" ]; then + if [ "X" = "X$FREERDP3_PATH" -o "X" = "X$FREERDP3_IPATH" -o "X" = "X$WINPR3_PATH" -o "X" = "X$WINPR3_IPATH" ]; then echo " ... NOT found, module rdp disabled" - FREERDP2_PATH="" - FREERDP2_IPATH="" - WINPR2_PATH="" - WINPR2_IPATH="" + FREERDP3_PATH="" + FREERDP3_IPATH="" + WINPR3_PATH="" + WINPR3_IPATH="" fi echo "Checking for Mongodb (libmongoc-1.0.so, mongoc.h, libbson-1.0.so, bson.h) ..." @@ -1340,8 +1340,8 @@ if [ -n "$FIREBIRD_PATH" -o \ -n "$MYSQL_PATH" -o \ -n "$MCACHED_PATH" -o \ -n "$MONGOD_PATH" -o \ - -n "$FREERDP2_PATH" -o \ - -n "$WINPR2_PATH" -o \ + -n "$FREERDP3_PATH" -o \ + -n "$WINPR3_PATH" -o \ -n "$SMBC_PATH" \ ]; then if [ "$SYSS" = "Darwin" ] && [ ! -d "/lib" ]; then @@ -1425,11 +1425,11 @@ fi if [ -n "$BSON_PATH" ]; then XDEFINES="$XDEFINES -DLIBBSON" fi -if [ -n "$FREERDP2_PATH" ]; then - XDEFINES="$XDEFINES -DLIBFREERDP2" +if [ -n "$FREERDP3_PATH" ]; then + XDEFINES="$XDEFINES -DLIBFREERDP3" fi -if [ -n "$WINPR2_PATH" ]; then - XDEFINES="$XDEFINES -DLIBWINPR2" +if [ -n "$WINPR3_PATH" ]; then + XDEFINES="$XDEFINES -DLIBWINPR3" fi if [ -n "$SMBC_PATH" ]; then XDEFINES="$XDEFINES -DLIBSMBCLIENT" @@ -1457,8 +1457,8 @@ for i in $SSL_PATH \ $MCACHED_PATH \ $MONGODB_PATH \ $BSON_PATH \ - $FREERDP2_PATH \ - $WINPR2_PATH \ + $FREERDP3_PATH \ + $WINPR3_PATH \ $SMBC_PATH; do if [ "$OLDPATH" = "$i" ]; then OLDPATH="$i" @@ -1518,8 +1518,8 @@ fi if [ -n "$MONGODB_IPATH" ]; then XIPATHS="$XIPATHS -I$MONGODB_IPATH -I$BSON_IPATH" fi -if [ -n "$FREERDP2_IPATH" ]; then - XIPATHS="$XIPATHS -I$FREERDP2_IPATH -I$WINPR2_IPATH" +if [ -n "$FREERDP3_IPATH" ]; then + XIPATHS="$XIPATHS -I$FREERDP3_IPATH -I$WINPR3_IPATH" fi if [ -n "$SMBC_IPATH" ]; then XIPATHS="$XIPATHS -I$SMBC_IPATH" @@ -1599,11 +1599,11 @@ fi if [ -n "$BSON_PATH" ]; then XLIBS="$XLIBS -lbson-1.0" fi -if [ -n "$FREERDP2_PATH" ]; then - XLIBS="$XLIBS -lfreerdp2" +if [ -n "$FREERDP3_PATH" ]; then + XLIBS="$XLIBS -lfreerdp3" fi -if [ -n "$WINPR2_PATH" ]; then - XLIBS="$XLIBS -lwinpr2" +if [ -n "$WINPR3_PATH" ]; then + XLIBS="$XLIBS -lwinpr3" fi if [ -n "$SMBC_PATH" ]; then XLIBS="$XLIBS -lsmbclient" diff --git a/hydra-rdp.c b/hydra-rdp.c index bd333ce..25528e0 100644 --- a/hydra-rdp.c +++ b/hydra-rdp.c @@ -10,7 +10,7 @@ #include "hydra-mod.h" extern char *HYDRA_EXIT; -#ifndef LIBFREERDP2 +#ifndef LIBFREERDP3 void dummy_rdp() { printf("\n"); } #else diff --git a/hydra.c b/hydra.c index 5e1dd87..29f2097 100644 --- a/hydra.c +++ b/hydra.c @@ -117,7 +117,7 @@ extern int32_t service_oracle_sid_init(char *ip, int32_t sp, unsigned char optio extern void service_sip(char *ip, int32_t sp, unsigned char options, char *miscptr, FILE *fp, int32_t port, char *hostname); extern int32_t service_sip_init(char *ip, int32_t sp, unsigned char options, char *miscptr, FILE *fp, int32_t port, char *hostname); #endif -#ifdef LIBFREERDP2 +#ifdef LIBFREERDP3 extern void service_rdp(char *ip, int32_t sp, unsigned char options, char *miscptr, FILE *fp, int32_t port, char *hostname); extern int32_t service_rdp_init(char *ip, int32_t sp, unsigned char options, char *miscptr, FILE *fp, int32_t port, char *hostname); #endif @@ -426,7 +426,7 @@ static const struct { #endif SERVICE(redis), SERVICE(rexec), -#ifdef LIBFREERDP2 +#ifdef LIBFREERDP3 SERVICE3("rdp", rdp), #endif SERVICE(rlogin), @@ -2237,7 +2237,7 @@ int main(int argc, char *argv[]) { strcat(unsupported, "SSL-services (ftps, sip, rdp, oracle-services, ...) "); #endif -#ifndef LIBFREERDP2 +#ifndef LIBFREERDP3 // for rdp SERVICES = hydra_string_replace(SERVICES, " rdp", ""); #endif @@ -2905,8 +2905,8 @@ int main(int argc, char *argv[]) { } if (strcmp(hydra_options.service, "rdp") == 0) { -#ifndef LIBFREERDP2 - bail("Compiled without FREERDP2 support, module not available!"); +#ifndef LIBFREERDP3 + bail("Compiled without FREERDP3 support, module not available!"); #endif } if (strcmp(hydra_options.service, "pcnfs") == 0) { From b0c1a9d1deaf522063564b3e3540a20035ce6510 Mon Sep 17 00:00:00 2001 From: Henry Robalino Date: Mon, 8 Jun 2020 09:24:16 -0400 Subject: [PATCH 02/10] Updated version of freerdp lib supported to 3.0 --- hydra-rdp.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/hydra-rdp.c b/hydra-rdp.c index 25528e0..89245f3 100644 --- a/hydra-rdp.c +++ b/hydra-rdp.c @@ -1,5 +1,5 @@ /* - This module is using freerdp2 lib + This module is using freerdp3 lib Tested on: - Windows 7 pro SP1 From bc6e8aec416ac29bd9ff23fd7486576f4cec44c0 Mon Sep 17 00:00:00 2001 From: Henry Robalino Date: Fri, 12 Jun 2020 11:19:01 -0400 Subject: [PATCH 03/10] Adding support to check for freerdp2 and freerdp3 Adding logic to check for freerdp2 first and if not the rdp module will check for freerdp3 to support the rdp module --- configure | 90 +++++++++++++++++++++++++++++++++++++++++++++++++---- hydra-rdp.c | 2 +- hydra.c | 11 ++++--- 3 files changed, 92 insertions(+), 11 deletions(-) diff --git a/configure b/configure index 7849a7d..add5ca6 100755 --- a/configure +++ b/configure @@ -70,6 +70,8 @@ NSL_PATH="" SOCKET_PATH="" MANDIR="" XHYDRA_SUPPORT="" +FREERDP2_PATH="" +WINPR2_PATH="" FREERDP3_PATH="" WINPR3_PATH="" SMBC_PATH="" @@ -1017,16 +1019,92 @@ fi MCACHED_IPATH="" fi +echo "Checking for Freerdp..." +echo "Checking for Freerdp2 (libfreerdp2.so, freerdp/*.h, libwinpr2.so, winpr/*.h) ..." + +#Checking Freerdp2 + + for i in $LIBDIRS ; do + if [ "X" = "X$FREERDP2_PATH" ]; then + if [ -f "$i/libfreerdp2.so" -o -f "$i/libfreerdp2.dylib" -o -f "$i/libfreerdp2.a" -o -f "$i/libfreerdp2.dll.a" ]; then + FREERDP2_PATH="$i" + fi + fi + if [ "X" = "X$FREERDP2_PATH" ]; then + TMP_LIB=`/bin/ls $i/libfreerdp2*.so* 2> /dev/null | grep libfreerdp2` + if [ -n "$TMP_LIB" ]; then + FREERDP2_PATH="$i" + fi + fi + done + + FREERDP2_IPATH= + for i in $INCDIRS ; do + if [ "X" = "X$FREERDP2_IPATH" ]; then + if [ -f "$i/freerdp/freerdp.h" ]; then + FREERDP2_IPATH="$i/freerdp2" + fi + if [ -f "$i/freerdp2/freerdp/freerdp.h" ]; then + FREERDP2_IPATH="$i/freerdp2" + fi + fi + done + + for i in $LIBDIRS ; do + if [ "X" = "X$WINPR2_PATH" ]; then + if [ -f "$i/libwinpr2.so" -o -f "$i/libwinpr2.dylib" -o -f "$i/libwinpr2.a" ]; then + WINPR2_PATH="$i" + fi + fi + if [ "X" = "X$WINPR2_PATH" ]; then + TMP_LIB=`/bin/ls $i/libwinpr2.dll.a 2> /dev/null | grep winpr` + if [ -n "$TMP_LIB" ]; then + WINPR2_PATH="$i" + fi + fi + done + + WINPR2_IPATH= + for i in $INCDIRS ; do + if [ "X" = "X$WINPR2_IPATH" ]; then + if [ -f "$i/winpr.h" ]; then + WINPR2_IPATH="$i" + fi + if [ -f "$i/winpr2/winpr/winpr.h" ]; then + WINPR2_IPATH="$i/winpr2" + fi + fi + done + +if [ "X" != "X$DEBUG" ]; then + echo DEBUG: FREERDP2_PATH=$FREERDP2_PATH/ + echo DEBUG: FREERDP2_IPATH=$FREERDP2_IPATH/ + echo DEBUG: WINPR2_PATH=$WINPR2_PATH/ + echo DEBUG: WINPR2_IPATH=$WINPR2_IPATH/ +fi + + if [ -n "$FREERDP2_PATH" -a -n "$FREERDP2_IPATH" -a -n "$WINPR2_PATH" -a -n "$WINPR2_IPATH" ]; then + echo " ... found" + fi + if [ "X" = "X$FREERDP2_PATH" -o "X" = "X$FREERDP2_IPATH" -o "X" = "X$WINPR2_PATH" -o "X" = "X$WINPR2_IPATH" ]; then + echo " ... NOT found, checking freerdp3 module next..." + FREERDP2_PATH="" + FREERDP2_IPATH="" + WINPR2_PATH="" + WINPR2_IPATH="" + fi + +#Checking Freerdp3 echo "Checking for Freerdp3 (libfreerdp3.so, freerdp/*.h, libwinpr3.so, winpr/*.h) ..." for i in $LIBDIRS ; do - if [ "X" = "X$FREERDP3_PATH" ]; then + if [ "X" = "X$FREERDP2_PATH" && "X" = "X$FREERDP3_PATH" ]; then if [ -f "$i/libfreerdp3.so" -o -f "$i/libfreerdp3.dylib" -o -f "$i/libfreerdp3.a" -o -f "$i/libfreerdp3.dll.a" ]; then FREERDP3_PATH="$i" fi fi - if [ "X" = "X$FREERDP3_PATH" ]; then + if [ "X" = "X$FREERDP2_PATH" && "X" = "X$FREERDP3_PATH" ]; then TMP_LIB=`/bin/ls $i/libfreerdp3*.so* 2> /dev/null | grep libfreerdp3` if [ -n "$TMP_LIB" ]; then FREERDP3_PATH="$i" @@ -1036,7 +1114,7 @@ echo "Checking for Freerdp3 (libfreerdp3.so, freerdp/*.h, libwinpr3.so, winpr/*. FREERDP3_IPATH= for i in $INCDIRS ; do - if [ "X" = "X$FREERDP3_IPATH" ]; then + if [ "X" = "X$FREERDP2_IPATH" && "X" = "X$FREERDP3_IPATH" ]; then if [ -f "$i/freerdp/freerdp.h" ]; then FREERDP3_IPATH="$i/freerdp3" fi @@ -1047,12 +1125,12 @@ echo "Checking for Freerdp3 (libfreerdp3.so, freerdp/*.h, libwinpr3.so, winpr/*. done for i in $LIBDIRS ; do - if [ "X" = "X$WINPR3_PATH" ]; then + if [ "X" = "X$WINPR2_PATH" && "X" = "X$WINPR3_PATH" ]; then if [ -f "$i/libwinpr3.so" -o -f "$i/libwinpr3.dylib" -o -f "$i/libwinpr3.a" ]; then WINPR3_PATH="$i" fi fi - if [ "X" = "X$WINPR3_PATH" ]; then + if [ "X" = "X$WINPR2_PATH" && "X" = "X$WINPR3_PATH" ]; then TMP_LIB=`/bin/ls $i/libwinpr3.dll.a 2> /dev/null | grep winpr` if [ -n "$TMP_LIB" ]; then WINPR3_PATH="$i" @@ -1062,7 +1140,7 @@ echo "Checking for Freerdp3 (libfreerdp3.so, freerdp/*.h, libwinpr3.so, winpr/*. WINPR3_IPATH= for i in $INCDIRS ; do - if [ "X" = "X$WINPR3_IPATH" ]; then + if [ "X" = "X$WINPR2_IPATH" && "X" = "X$WINPR3_IPATH" ]; then if [ -f "$i/winpr.h" ]; then WINPR3_IPATH="$i" fi diff --git a/hydra-rdp.c b/hydra-rdp.c index 89245f3..282846d 100644 --- a/hydra-rdp.c +++ b/hydra-rdp.c @@ -10,7 +10,7 @@ #include "hydra-mod.h" extern char *HYDRA_EXIT; -#ifndef LIBFREERDP3 +#if !defined(LIBFREERDP2) || (LIBFREERDP3) void dummy_rdp() { printf("\n"); } #else diff --git a/hydra.c b/hydra.c index 29f2097..9d1ba88 100644 --- a/hydra.c +++ b/hydra.c @@ -117,7 +117,7 @@ extern int32_t service_oracle_sid_init(char *ip, int32_t sp, unsigned char optio extern void service_sip(char *ip, int32_t sp, unsigned char options, char *miscptr, FILE *fp, int32_t port, char *hostname); extern int32_t service_sip_init(char *ip, int32_t sp, unsigned char options, char *miscptr, FILE *fp, int32_t port, char *hostname); #endif -#ifdef LIBFREERDP3 +#if defined(LIBFREERDP2) || (LIBFREERDP3) extern void service_rdp(char *ip, int32_t sp, unsigned char options, char *miscptr, FILE *fp, int32_t port, char *hostname); extern int32_t service_rdp_init(char *ip, int32_t sp, unsigned char options, char *miscptr, FILE *fp, int32_t port, char *hostname); #endif @@ -426,7 +426,7 @@ static const struct { #endif SERVICE(redis), SERVICE(rexec), -#ifdef LIBFREERDP3 +#if defined(LIBFREERDP2) || (LIBFREERDP3) SERVICE3("rdp", rdp), #endif SERVICE(rlogin), @@ -2237,7 +2237,7 @@ int main(int argc, char *argv[]) { strcat(unsupported, "SSL-services (ftps, sip, rdp, oracle-services, ...) "); #endif -#ifndef LIBFREERDP3 +#if !defined(LIBFREERDP2) || (LIBFREERDP3) // for rdp SERVICES = hydra_string_replace(SERVICES, " rdp", ""); #endif @@ -2905,7 +2905,10 @@ int main(int argc, char *argv[]) { } if (strcmp(hydra_options.service, "rdp") == 0) { -#ifndef LIBFREERDP3 +#if !defined(LIBFREERDP2)|| (LIBFREERDP3) + if(!LIBFREERDP2) + bail("Compiled without FREERDP2 support, module not available!"); + else bail("Compiled without FREERDP3 support, module not available!"); #endif } From fdc460c7fb6e03f0aeb33fd123c5658312552e85 Mon Sep 17 00:00:00 2001 From: Henry Robalino Date: Fri, 12 Jun 2020 11:32:25 -0400 Subject: [PATCH 04/10] Fixing logic issue with hydra.c file Did not do proper check for freerdp2 or freerdp3 modules --- hydra.c | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/hydra.c b/hydra.c index 9d1ba88..db7837d 100644 --- a/hydra.c +++ b/hydra.c @@ -2906,10 +2906,7 @@ int main(int argc, char *argv[]) { if (strcmp(hydra_options.service, "rdp") == 0) { #if !defined(LIBFREERDP2)|| (LIBFREERDP3) - if(!LIBFREERDP2) - bail("Compiled without FREERDP2 support, module not available!"); - else - bail("Compiled without FREERDP3 support, module not available!"); + bail("Compiled without FREERDP2 or FREERDP3 support, modules not available!"); #endif } if (strcmp(hydra_options.service, "pcnfs") == 0) { From 70fb9e4fa57fd054efd7728b58800f7786f805da Mon Sep 17 00:00:00 2001 From: Henry Robalino Date: Fri, 12 Jun 2020 12:11:03 -0400 Subject: [PATCH 05/10] Fixing logic that checks for rdp libraries Fixed logic inside of configure to properly check for freedrdp2 if not found check for freerdp3, if found to skip freerdp3 --- configure | 17 ++++++----------- 1 file changed, 6 insertions(+), 11 deletions(-) diff --git a/configure b/configure index add5ca6..7950afe 100755 --- a/configure +++ b/configure @@ -1019,11 +1019,8 @@ fi MCACHED_IPATH="" fi -echo "Checking for Freerdp..." echo "Checking for Freerdp2 (libfreerdp2.so, freerdp/*.h, libwinpr2.so, winpr/*.h) ..." -#Checking Freerdp2 - for i in $LIBDIRS ; do if [ "X" = "X$FREERDP2_PATH" ]; then if [ -f "$i/libfreerdp2.so" -o -f "$i/libfreerdp2.dylib" -o -f "$i/libfreerdp2.a" -o -f "$i/libfreerdp2.dll.a" ]; then @@ -1094,17 +1091,15 @@ fi WINPR2_IPATH="" fi -#Checking Freerdp3 - echo "Checking for Freerdp3 (libfreerdp3.so, freerdp/*.h, libwinpr3.so, winpr/*.h) ..." for i in $LIBDIRS ; do - if [ "X" = "X$FREERDP2_PATH" && "X" = "X$FREERDP3_PATH" ]; then + if [ "X" = "X$FREERDP2_PATH" ] && [ "X" = "X$FREERDP3_PATH" ]; then if [ -f "$i/libfreerdp3.so" -o -f "$i/libfreerdp3.dylib" -o -f "$i/libfreerdp3.a" -o -f "$i/libfreerdp3.dll.a" ]; then FREERDP3_PATH="$i" fi fi - if [ "X" = "X$FREERDP2_PATH" && "X" = "X$FREERDP3_PATH" ]; then + if [ "X" = "X$FREERDP2_PATH" ] && [ "X" = "X$FREERDP3_PATH" ]; then TMP_LIB=`/bin/ls $i/libfreerdp3*.so* 2> /dev/null | grep libfreerdp3` if [ -n "$TMP_LIB" ]; then FREERDP3_PATH="$i" @@ -1114,7 +1109,7 @@ echo "Checking for Freerdp3 (libfreerdp3.so, freerdp/*.h, libwinpr3.so, winpr/*. FREERDP3_IPATH= for i in $INCDIRS ; do - if [ "X" = "X$FREERDP2_IPATH" && "X" = "X$FREERDP3_IPATH" ]; then + if [ "X" = "X$FREERDP2_IPATH" ] && [ "X" = "X$FREERDP3_IPATH" ]; then if [ -f "$i/freerdp/freerdp.h" ]; then FREERDP3_IPATH="$i/freerdp3" fi @@ -1125,12 +1120,12 @@ echo "Checking for Freerdp3 (libfreerdp3.so, freerdp/*.h, libwinpr3.so, winpr/*. done for i in $LIBDIRS ; do - if [ "X" = "X$WINPR2_PATH" && "X" = "X$WINPR3_PATH" ]; then + if [ "X" = "X$WINPR2_PATH" ] && [ "X" = "X$WINPR3_PATH" ]; then if [ -f "$i/libwinpr3.so" -o -f "$i/libwinpr3.dylib" -o -f "$i/libwinpr3.a" ]; then WINPR3_PATH="$i" fi fi - if [ "X" = "X$WINPR2_PATH" && "X" = "X$WINPR3_PATH" ]; then + if [ "X" = "X$WINPR2_PATH" ] && [ "X" = "X$WINPR3_PATH" ]; then TMP_LIB=`/bin/ls $i/libwinpr3.dll.a 2> /dev/null | grep winpr` if [ -n "$TMP_LIB" ]; then WINPR3_PATH="$i" @@ -1140,7 +1135,7 @@ echo "Checking for Freerdp3 (libfreerdp3.so, freerdp/*.h, libwinpr3.so, winpr/*. WINPR3_IPATH= for i in $INCDIRS ; do - if [ "X" = "X$WINPR2_IPATH" && "X" = "X$WINPR3_IPATH" ]; then + if [ "X" = "X$WINPR2_IPATH" ] && [ "X" = "X$WINPR3_IPATH" ]; then if [ -f "$i/winpr.h" ]; then WINPR3_IPATH="$i" fi From 9c300ea820946e706a70f6994245a8485dedea72 Mon Sep 17 00:00:00 2001 From: Henry Robalino Date: Mon, 15 Jun 2020 15:51:22 -0400 Subject: [PATCH 06/10] Refactoring libfreerdp Removing double entry of libfreerdp in hydra.c and hydra-rdp.c --- hydra-rdp.c | 2 +- hydra.c | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/hydra-rdp.c b/hydra-rdp.c index 282846d..6a000a4 100644 --- a/hydra-rdp.c +++ b/hydra-rdp.c @@ -10,7 +10,7 @@ #include "hydra-mod.h" extern char *HYDRA_EXIT; -#if !defined(LIBFREERDP2) || (LIBFREERDP3) +#ifndef LIBFREERDP void dummy_rdp() { printf("\n"); } #else diff --git a/hydra.c b/hydra.c index db7837d..aa7f9ee 100644 --- a/hydra.c +++ b/hydra.c @@ -117,7 +117,7 @@ extern int32_t service_oracle_sid_init(char *ip, int32_t sp, unsigned char optio extern void service_sip(char *ip, int32_t sp, unsigned char options, char *miscptr, FILE *fp, int32_t port, char *hostname); extern int32_t service_sip_init(char *ip, int32_t sp, unsigned char options, char *miscptr, FILE *fp, int32_t port, char *hostname); #endif -#if defined(LIBFREERDP2) || (LIBFREERDP3) +#ifdef LIBFREERDP extern void service_rdp(char *ip, int32_t sp, unsigned char options, char *miscptr, FILE *fp, int32_t port, char *hostname); extern int32_t service_rdp_init(char *ip, int32_t sp, unsigned char options, char *miscptr, FILE *fp, int32_t port, char *hostname); #endif @@ -426,7 +426,7 @@ static const struct { #endif SERVICE(redis), SERVICE(rexec), -#if defined(LIBFREERDP2) || (LIBFREERDP3) +#ifdef LIBFREERDP SERVICE3("rdp", rdp), #endif SERVICE(rlogin), @@ -2237,7 +2237,7 @@ int main(int argc, char *argv[]) { strcat(unsupported, "SSL-services (ftps, sip, rdp, oracle-services, ...) "); #endif -#if !defined(LIBFREERDP2) || (LIBFREERDP3) +#ifndef LIBFREERDP // for rdp SERVICES = hydra_string_replace(SERVICES, " rdp", ""); #endif @@ -2905,8 +2905,8 @@ int main(int argc, char *argv[]) { } if (strcmp(hydra_options.service, "rdp") == 0) { -#if !defined(LIBFREERDP2)|| (LIBFREERDP3) - bail("Compiled without FREERDP2 or FREERDP3 support, modules not available!"); +#ifndef LIBFREERDP + bail("Compiled without FREERDP support, modules not available!"); #endif } if (strcmp(hydra_options.service, "pcnfs") == 0) { From 54dd5667ff72d76d770dbc65472850fb090efb14 Mon Sep 17 00:00:00 2001 From: Henry Robalino Date: Tue, 16 Jun 2020 09:53:24 -0400 Subject: [PATCH 07/10] Fixing XDEFINES Trying to fix defines for freerdp --- configure | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/configure b/configure index 7950afe..5e58161 100755 --- a/configure +++ b/configure @@ -1413,6 +1413,8 @@ if [ -n "$FIREBIRD_PATH" -o \ -n "$MYSQL_PATH" -o \ -n "$MCACHED_PATH" -o \ -n "$MONGOD_PATH" -o \ + -n "$FREERDP2_PATH" -o \ + -n "$WINPR2_PATH" -o \ -n "$FREERDP3_PATH" -o \ -n "$WINPR3_PATH" -o \ -n "$SMBC_PATH" \ @@ -1498,8 +1500,14 @@ fi if [ -n "$BSON_PATH" ]; then XDEFINES="$XDEFINES -DLIBBSON" fi +if [ -n "$FREERDP2_PATH" ]; then + XDEFINES="$XDEFINES -DLIBFREERDP" +fi +if [ -n "$WINPR2_PATH" ]; then + XDEFINES="$XDEFINES -DLIBWINPR2" +fi if [ -n "$FREERDP3_PATH" ]; then - XDEFINES="$XDEFINES -DLIBFREERDP3" + XDEFINES="$XDEFINES -DLIBFREERDP" fi if [ -n "$WINPR3_PATH" ]; then XDEFINES="$XDEFINES -DLIBWINPR3" @@ -1530,6 +1538,8 @@ for i in $SSL_PATH \ $MCACHED_PATH \ $MONGODB_PATH \ $BSON_PATH \ + $FREERDP2_PATH \ + $WINPR2_PATH \ $FREERDP3_PATH \ $WINPR3_PATH \ $SMBC_PATH; do @@ -1591,6 +1601,9 @@ fi if [ -n "$MONGODB_IPATH" ]; then XIPATHS="$XIPATHS -I$MONGODB_IPATH -I$BSON_IPATH" fi +if [ -n "$FREERDP3_IPATH" ]; then + XIPATHS="$XIPATHS -I$FREERDP2_IPATH -I$WINPR2_IPATH" +fi if [ -n "$FREERDP3_IPATH" ]; then XIPATHS="$XIPATHS -I$FREERDP3_IPATH -I$WINPR3_IPATH" fi @@ -1672,6 +1685,12 @@ fi if [ -n "$BSON_PATH" ]; then XLIBS="$XLIBS -lbson-1.0" fi +if [ -n "$FREERDP3_PATH" ]; then + XLIBS="$XLIBS -lfreerdp2" +fi +if [ -n "$WINPR3_PATH" ]; then + XLIBS="$XLIBS -lwinpr2" +fi if [ -n "$FREERDP3_PATH" ]; then XLIBS="$XLIBS -lfreerdp3" fi From f5b3fe77d386c5f323e2ec6bbf77cf5960730fda Mon Sep 17 00:00:00 2001 From: Henry Robalino Date: Tue, 16 Jun 2020 09:56:11 -0400 Subject: [PATCH 08/10] Fixing typo on xlibs path --- configure | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/configure b/configure index 5e58161..67b968c 100755 --- a/configure +++ b/configure @@ -1685,10 +1685,10 @@ fi if [ -n "$BSON_PATH" ]; then XLIBS="$XLIBS -lbson-1.0" fi -if [ -n "$FREERDP3_PATH" ]; then +if [ -n "$FREERDP2_PATH" ]; then XLIBS="$XLIBS -lfreerdp2" fi -if [ -n "$WINPR3_PATH" ]; then +if [ -n "$WINPR2_PATH" ]; then XLIBS="$XLIBS -lwinpr2" fi if [ -n "$FREERDP3_PATH" ]; then From 435ed442897879ffcaa32baad44e3049ff418a18 Mon Sep 17 00:00:00 2001 From: Henry Robalino Date: Tue, 16 Jun 2020 10:19:16 -0400 Subject: [PATCH 09/10] Adding step to makefile to fix Lib Symlinks --- Makefile.am | 1 + 1 file changed, 1 insertion(+) diff --git a/Makefile.am b/Makefile.am index 49e8476..111cd88 100644 --- a/Makefile.am +++ b/Makefile.am @@ -78,6 +78,7 @@ install: strip -cp -f *.csv $(DESTDIR)$(PREFIX)$(DATADIR) -mkdir -p $(DESTDIR)$(PREFIX)$(MANDIR) -cp -f hydra.1 xhydra.1 pw-inspector.1 $(DESTDIR)$(PREFIX)$(MANDIR) + -ldconfig clean: rm -rf xhydra pw-inspector hydra *.o core *.core *.stackdump *~ Makefile.in Makefile dev_rfc hydra.restore arm/*.ipk arm/ipkg/usr/bin/* hydra-gtk/src/*.o hydra-gtk/src/xhydra hydra-gtk/stamp-h hydra-gtk/config.status hydra-gtk/errors hydra-gtk/config.log hydra-gtk/src/.deps hydra-gtk/src/Makefile hydra-gtk/Makefile From fc196d7fc26469fd3b297abca23399727b0f4962 Mon Sep 17 00:00:00 2001 From: Henry Robalino Date: Tue, 7 Jul 2020 11:25:09 -0400 Subject: [PATCH 10/10] Updating freerdp logic to check v3 first Updating the logic here to check for freerdpv3 first and if found do not check for freerdpv2. Also fixed paths for freerdpv2 paths. Updated bash "or" to use "||" and "and" to use "&&" conditionals with proper POSIX specifications. --- configure | 298 +++++++++++++++++++++++++++--------------------------- 1 file changed, 150 insertions(+), 148 deletions(-) diff --git a/configure b/configure index 67b968c..709fb30 100755 --- a/configure +++ b/configure @@ -3,7 +3,7 @@ # uname -s = Linux | OpenBSD | FreeBSD | Darwin # uname -m = i636 or x86_64 -if [ "$1" = "-h" -o "$1" = "--help" ]; then +if [ "$1" = "-h" || "$1" = "--help" ]; then echo Options: echo " --prefix=path path to install hydra and its datafiles to" echo " --fhs install according to the File System Hierarchy Standard" @@ -198,7 +198,7 @@ else /*ssl/lib /usr/*ssl/lib /opt/*ssl/lib /usr/local/*ssl/lib /opt/local/*ssl/lib do if [ "X" = "X$SSL_PATH" ]; then - if [ -f "$i/libssl.so" -o -f "$i/libssl.dylib" -o -f "$i/libssl.a" ]; then + if [ -f "$i/libssl.so" || -f "$i/libssl.dylib" || -f "$i/libssl.a" ]; then SSL_PATH="$i" fi fi @@ -209,7 +209,7 @@ else fi fi if [ "X" = "X$CRYPTO_PATH" ]; then - if [ -f "$i/libcrypto.so" -o -f "$i/libcrypto.dylib" -o -f "$i/libcrypto.a" ]; then + if [ -f "$i/libcrypto.so" || -f "$i/libcrypto.dylib" || -f "$i/libcrypto.a" ]; then CRYPTO_PATH="$i" fi fi @@ -251,11 +251,11 @@ if [ "X" = "X$SSL_IPATH" ]; then SSL_PATH="" CRYPTO_PATH="" fi -if [ -n "$SSL_PATH" -a "X" = "X$SSLNEW" ]; then +if [ -n "$SSL_PATH" && "X" = "X$SSLNEW" ]; then echo " ... found but OLD" echo "NOTE: your OpenSSL package is outdated, update it!" fi -if [ -n "$SSL_PATH" -a '!' "X" = "X$SSLNEW" ]; then +if [ -n "$SSL_PATH" && '!' "X" = "X$SSLNEW" ]; then echo " ... found" fi if [ "X" = "X$SSL_PATH" ]; then @@ -268,7 +268,7 @@ fi echo "Checking for gcrypt (libgcrypt.so, gpg-error.h) ..." for i in $LIBDIRS ; do - if [ -f "$i/libgcrypt.so" -o -f "$i/libgcrypt.dylib" -o -f "$i/libgcrypt.a" -o -f "$i/libgcrypt.dll.a" -o -f "$i/libgcrypt.la" ]; then + if [ -f "$i/libgcrypt.so" || -f "$i/libgcrypt.dylib" || -f "$i/libgcrypt.a" || -f "$i/libgcrypt.dll.a" || -f "$i/libgcrypt.la" ]; then HAVE_GCRYPT="y" fi done @@ -286,7 +286,7 @@ for i in $INCDIRS ; do fi done -if [ -n "$HAVE_GCRYPT" -a "X" != "X$GPGERROR_IPATH" ]; then +if [ -n "$HAVE_GCRYPT" && "X" != "X$GPGERROR_IPATH" ]; then echo " ... found" else echo " ... gcrypt not found, radmin2 module disabled" @@ -296,7 +296,7 @@ fi echo "Checking for idn (libidn.so) ..." for i in $LIBDIRS ; do if [ "X" = "X$IDN_PATH" ]; then - if [ -f "$i/libidn.so" -o -f "$i/libidn.dylib" -o -f "$i/libidn.a" -o -f "$i/libidn.dll.a" -o -f "$i/libidn.la" ]; then + if [ -f "$i/libidn.so" || -f "$i/libidn.dylib" || -f "$i/libidn.a" || -f "$i/libidn.dll.a" || -f "$i/libidn.la" ]; then IDN_PATH="$i" fi fi @@ -324,11 +324,11 @@ if [ "X" != "X$DEBUG" ]; then echo DEBUG: IDN_IPATH=$IDN_IPATH/stringprep.h echo DEBUG: PR29_IPATH=$PR29_IPATH/pr29.h fi -if [ -n "$IDN_PATH" -a -n "$IDN_IPATH" ]; then +if [ -n "$IDN_PATH" && -n "$IDN_IPATH" ]; then echo " ... found" fi #pr29 is optional -if [ "X" = "X$IDN_PATH" -o "X" = "X$IDN_IPATH" ]; then +if [ "X" = "X$IDN_PATH" || "X" = "X$IDN_IPATH" ]; then echo " ... NOT found, unicode logins and passwords will not be supported" IDN_PATH="" IDN_IPATH="" @@ -338,7 +338,7 @@ fi echo "Checking for curses (libcurses.so / term.h) ..." for i in $LIBDIRS; do if [ "X" = "X$CURSES_PATH" ]; then - if [ -f "$i/libcurses.so" -o -f "$i/libcurses.dylib" -o -f "$i/libcurses.a" ]; then + if [ -f "$i/libcurses.so" || -f "$i/libcurses.dylib" || -f "$i/libcurses.a" ]; then CURSES_PATH="$i" fi fi @@ -369,10 +369,10 @@ if [ "X" != "X$DEBUG" ]; then echo DEBUG: CURSES_PATH=$CURSES_PATH/libcurses echo DEBUG: CURSES_IPATH=$CURSES_IPATH/term.h fi -if [ -n "$CURSES_PATH" -a -n "$CURSES_IPATH" ]; then +if [ -n "$CURSES_PATH" && -n "$CURSES_IPATH" ]; then echo " ... found, color output enabled" fi -if [ "X" = "X$CURSES_PATH" -o "X" = "X$CURSES_IPATH" ]; then +if [ "X" = "X$CURSES_PATH" || "X" = "X$CURSES_IPATH" ]; then echo " ... NOT found, color output disabled" CURSES_PATH="" CURSES_IPATH="" @@ -381,7 +381,7 @@ fi echo "Checking for pcre (libpcre.so, pcre.h) ..." for i in $LIBDIRS ; do if [ "X" = "X$PCRE_PATH" ]; then - if [ -f "$i/libpcre.so" -o -f "$i/libpcre.dylib" -o -f "$i/libpcre.a" ]; then + if [ -f "$i/libpcre.so" || -f "$i/libpcre.dylib" || -f "$i/libpcre.a" ]; then PCRE_PATH="$i" fi fi @@ -409,10 +409,10 @@ if [ "X" != "X$DEBUG" ]; then echo DEBUG: PCRE_PATH=$PCRE_PATH/libpcre echo DEBUG: PCRE_IPATH=$PCRE_IPATH/pcre.h fi -if [ -n "$PCRE_PATH" -a -n "$PCRE_IPATH" ]; then +if [ -n "$PCRE_PATH" && -n "$PCRE_IPATH" ]; then echo " ... found" fi -if [ "X" = "X$PCRE_PATH" -o "X" = "X$PCRE_IPATH" ]; then +if [ "X" = "X$PCRE_PATH" || "X" = "X$PCRE_IPATH" ]; then echo " ... NOT found, server response checks will be less reliable" PCRE_PATH="" PCRE_IPATH="" @@ -426,7 +426,7 @@ echo "Checking for Postgres (libpq.so, libpq-fe.h) ..." #else for i in $LIBDIRS ; do if [ "X" = "X$POSTGRES_PATH" ]; then - if [ -f "$i/libpq.so" -o -f "$i/libpq.dylib" -o -f "$i/libpq.a" ]; then + if [ -f "$i/libpq.so" || -f "$i/libpq.dylib" || -f "$i/libpq.a" ]; then POSTGRES_PATH="$i" fi fi @@ -464,10 +464,10 @@ if [ "X" != "X$DEBUG" ]; then echo DEBUG: POSTGRES_PATH=$POSTGRES_PATH/libpq echo DEBUG: POSTGRES_IPATH=$POSTGRES_IPATH/libpq-fe.h fi - if [ -n "$POSTGRES_PATH" -a -n "$POSTGRES_IPATH" ]; then + if [ -n "$POSTGRES_PATH" && -n "$POSTGRES_IPATH" ]; then echo " ... found" fi - if [ "X" = "X$POSTGRES_PATH" -o "X" = "X$POSTGRES_IPATH" ]; then + if [ "X" = "X$POSTGRES_PATH" || "X" = "X$POSTGRES_IPATH" ]; then echo " ... NOT found, module postgres disabled" POSTGRES_PATH="" POSTGRES_IPATH="" @@ -482,7 +482,7 @@ for i in $LIBDIRS ; do fi fi if [ "X" = "X$APR_PATH" ]; then - if [ -f "$i/libapr-1.so" -a -f "$i/libaprutil-1.so" ]; then + if [ -f "$i/libapr-1.so" && -f "$i/libaprutil-1.so" ]; then APR_PATH="$i" fi fi @@ -492,7 +492,7 @@ for i in $LIBDIRS ; do fi fi if [ "X" = "X$APR_PATH" ]; then - if [ -f "$i/libapr-1.dll.a" -a -f "$i/libaprutil-1.dll.a" ]; then + if [ -f "$i/libapr-1.dll.a" && -f "$i/libaprutil-1.dll.a" ]; then APR_PATH="$i" fi fi @@ -502,7 +502,7 @@ for i in $LIBDIRS ; do fi fi if [ "X" = "X$APR_PATH" ]; then - if [ -f "$i/libapr-1.dylib" -a -f "$i/libaprutil-1.dylib" ]; then + if [ -f "$i/libapr-1.dylib" && -f "$i/libaprutil-1.dylib" ]; then APR_PATH="$i" fi fi @@ -512,7 +512,7 @@ for i in $LIBDIRS ; do fi fi if [ "X" = "X$APR_PATH" ]; then - if [ -f "$i/libapr-1.a" -a -f "$i/libaprutil-1.a" ]; then + if [ -f "$i/libapr-1.a" && -f "$i/libaprutil-1.a" ]; then APR_PATH="$i" fi fi @@ -522,7 +522,7 @@ for i in $LIBDIRS ; do fi fi if [ "X" = "X$APR_PATH" ]; then - if [ -f "$i/libapr-1.0.dylib" -a -f "$i/libaprutil-1.0.dylib" ]; then + if [ -f "$i/libapr-1.0.dylib" && -f "$i/libaprutil-1.0.dylib" ]; then APR_PATH="$i" fi fi @@ -535,7 +535,7 @@ for i in $LIBDIRS ; do if [ "X" = "X$APR_PATH" ]; then TMP_LIB2=`/bin/ls $i/libapr-1*.so* 2> /dev/null | grep libsvn_client.` TMP_LIB3=`/bin/ls $i/libaprutil-1*.so* 2> /dev/null | grep libsvn_client.` - if [ -n "$TMP_LIB2" -a -n "$TMP_LIB3" ]; then + if [ -n "$TMP_LIB2" && -n "$TMP_LIB3" ]; then APR_PATH="$i" fi fi @@ -548,7 +548,7 @@ for i in $LIBDIRS ; do if [ "X" = "X$APR_PATH" ]; then TMP_LIB2=`/bin/ls $i/libapr-1*.dll* 2> /dev/null | grep libsvn_client.` TMP_LIB3=`/bin/ls $i/libaprutil-1*.dll* 2> /dev/null | grep libsvn_client.` - if [ -n "$TMP_LIB2" -a -n "$TMP_LIB3" ]; then + if [ -n "$TMP_LIB2" && -n "$TMP_LIB3" ]; then APR_PATH="$i" fi fi @@ -585,7 +585,7 @@ if [ "X" != "X$DEBUG" ]; then echo DEBUG: APR_IPATH=$APR_IPATH/ fi -if [ "X" = "X$SVN_PATH" -o "X" = "X$SVN_IPATH" -o "X" = "X$APR_IPATH" ]; then +if [ "X" = "X$SVN_PATH" || "X" = "X$SVN_IPATH" || "X" = "X$APR_IPATH" ]; then SVN_PATH="" SVN_IPATH="" APR_IPATH="" @@ -597,17 +597,17 @@ if [ "$APR_IPATH" = "/usr/include" ]; then APR_IPATH="" fi -if [ -n "$SVN_PATH" -a -n "$APR_PATH" ]; then +if [ -n "$SVN_PATH" && -n "$APR_PATH" ]; then echo " ... found" fi -if [ "X" = "X$SVN_PATH" -o "X" = "X$APR_PATH" ]; then +if [ "X" = "X$SVN_PATH" || "X" = "X$APR_PATH" ]; then echo " ... NOT found, module svn disabled" fi echo "Checking for firebird (libfbclient.so) ..." for i in $LIBDIRS ; do if [ "X" = "X$FIREBIRD_PATH" ]; then - if [ -f "$i/libfbclient.so" -o -f "$i/libfbclient.dylib" -o -f "$i/libfbclient.a" ]; then + if [ -f "$i/libfbclient.so" || -f "$i/libfbclient.dylib" || -f "$i/libfbclient.a" ]; then FIREBIRD_PATH="$i" fi fi @@ -638,10 +638,10 @@ if [ "X" != "X$DEBUG" ]; then echo DEBUG: FIREBIRD_PATH=$FIREBIRD_PATH/libfbclient echo DEBUG: FIREBIRD_IPATH=$FIREBIRD_IPATH/ibase.h fi -if [ -n "$FIREBIRD_PATH" -a -n "$FIREBIRD_IPATH" ]; then +if [ -n "$FIREBIRD_PATH" && -n "$FIREBIRD_IPATH" ]; then echo " ... found" fi -if [ "X" = "X$FIREBIRD_PATH" -o "X" = "X$FIREBIRD_IPATH" ]; then +if [ "X" = "X$FIREBIRD_PATH" || "X" = "X$FIREBIRD_IPATH" ]; then echo " ... NOT found, module firebird disabled" FIREBIRD_PATH="" FIREBIRD_IPATH="" @@ -650,7 +650,7 @@ fi echo "Checking for MYSQL client (libmysqlclient.so, math.h) ..." for i in $LIBDIRS ; do if [ "X" = "X$MYSQL_PATH" ]; then - if [ -f "$i/libmysqlclient.so" -o -f "$i/libmysqlclient.dylib" -o -f "$i/libmysqlclient.a" ]; then + if [ -f "$i/libmysqlclient.so" || -f "$i/libmysqlclient.dylib" || -f "$i/libmysqlclient.a" ]; then MYSQL_PATH="$i" fi fi @@ -686,7 +686,7 @@ fi MATH="" if [ -f "$SDK_PATH/usr/include/math.h" ]; then MATH="-DHAVE_MATH_H" - if [ -n "$MYSQL_PATH" -a -n "$MYSQL_IPATH" -a -n "$MATH" ]; then + if [ -n "$MYSQL_PATH" && -n "$MYSQL_IPATH" && -n "$MATH" ]; then echo " ... found" else echo " ... NOT found, module Mysql will not support version > 4.x" @@ -699,7 +699,7 @@ fi echo "Checking for AFP (libafpclient.so) ..." for i in $LIBDIRS ; do if [ "X" = "X$AFP_PATH" ]; then - if [ -f "$i/libafpclient.so" -o -f "$i/libafpclient.so" -o -f "$i/libafpclient.a" ]; then + if [ -f "$i/libafpclient.so" || -f "$i/libafpclient.so" || -f "$i/libafpclient.a" ]; then AFP_PATH="$i" fi fi @@ -727,10 +727,10 @@ if [ "X" != "X$DEBUG" ]; then echo DEBUG: AFP_PATH=$AFP_PATH/libafpclient echo DEBUG: AFP_IPATH=$AFP_IPATH/afp.h fi -if [ -n "$AFP_PATH" -a -n "$AFP_IPATH" ]; then +if [ -n "$AFP_PATH" && -n "$AFP_IPATH" ]; then echo " ... found" fi -if [ "X" = "X$AFP_PATH" -o "X" = "X$AFP_IPATH" ]; then +if [ "X" = "X$AFP_PATH" || "X" = "X$AFP_IPATH" ]; then echo " ... NOT found, module Apple Filing Protocol disabled - Apple sucks anyway" AFP_PATH="" AFP_IPATH="" @@ -739,7 +739,7 @@ fi echo "Checking for NCP (libncp.so / nwcalls.h) ..." for i in $LIBDIRS ; do if [ "X" = "X$NCP_PATH" ]; then - if [ -f "$i/libncp.so" -o -f "$i/libncp.dylib" -o -f "$i/libncp.a" ]; then + if [ -f "$i/libncp.so" || -f "$i/libncp.dylib" || -f "$i/libncp.a" ]; then NCP_PATH="$i" fi fi @@ -767,10 +767,10 @@ if [ "X" != "X$DEBUG" ]; then echo DEBUG: NCP_PATH=$NCP_PATH/libncp echo DEBUG: NCP_IPATH=$NCP_IPATH/ncp/nwcalls.h fi -if [ -n "$NCP_PATH" -a -n "$NCP_IPATH" ]; then +if [ -n "$NCP_PATH" && -n "$NCP_IPATH" ]; then echo " ... found" fi -if [ "X" = "X$NCP_PATH" -o "X" = "X$NCP_IPATH" ]; then +if [ "X" = "X$NCP_PATH" || "X" = "X$NCP_IPATH" ]; then echo " ... NOT found, module NCP disabled" NCP_PATH="" NCP_IPATH="" @@ -779,7 +779,7 @@ fi echo "Checking for SAP/R3 (librfc/saprfc.h) ..." for i in $LIBDIRS ; do if [ "X" = "X$SAPR3_PATH" ]; then - if [ -f "$i/librfc.a" -o -f "$i/librfc.dylib" -o "$i/librfc32.dll" ]; then + if [ -f "$i/librfc.a" || -f "$i/librfc.dylib" || "$i/librfc32.dll" ]; then SAPR3_PATH="$i" fi fi @@ -821,7 +821,7 @@ fi echo "Checking for libssh (libssh/libssh.h) ..." for i in $LIBDIRS ; do if [ "X" = "X$SSH_PATH" ]; then - if [ -f "$i/libssh.so" -o -f "$i/libssh.dylib" -o -f "$i/libssh.a" ]; then + if [ -f "$i/libssh.so" || -f "$i/libssh.dylib" || -f "$i/libssh.a" ]; then SSH_PATH="$i" fi fi @@ -882,22 +882,22 @@ fi for i in $LIBDIRS ; do if [ "X" = "X$ORACLE_PATH" ]; then - if [ -f "$i/libocci.so" -a -f "$i/libclntsh.so" ]; then + if [ -f "$i/libocci.so" && -f "$i/libclntsh.so" ]; then ORACLE_PATH="$i" fi fi if [ "X" = "X$ORACLE_PATH" ]; then - if [ -f "$i/libocci.dylib" -a -f "$i/libclntsh.dylib" ]; then + if [ -f "$i/libocci.dylib" && -f "$i/libclntsh.dylib" ]; then ORACLE_PATH="$i" fi fi if [ "X" = "X$ORACLE_PATH" ]; then - if [ -f "$i/libocci.a" -a -f "$i/libclntsh.a" ]; then + if [ -f "$i/libocci.a" && -f "$i/libclntsh.a" ]; then ORACLE_PATH="$i" fi fi if [ "X" = "X$ORACLE_PATH" ]; then - if [ -f "$i/liboci.a" -a -f "$i/oci.dll" ]; then + if [ -f "$i/liboci.a" && -f "$i/oci.dll" ]; then ORACLE_PATH="$i" fi fi @@ -924,11 +924,11 @@ if [ "X" != "X$DEBUG" ]; then echo DEBUG: ORACLE_PATH=$ORACLE_PATH/libocci fi #check for Kernel Asynchronous I/O (AIO) lib support, no need on Cygwin -if [ "X" != "X$ORACLE_PATH" -a "$SYSO" != "Cygwin" ]; then +if [ "X" != "X$ORACLE_PATH" && "$SYSO" != "Cygwin" ]; then LIBAIO="" for i in $LIBDIRS ; do if [ "X" = "X$LIBAIO" ]; then - if [ -f "$i/libaio.so" -o -f "$i/libaio.dylib" -o -f "$i/libaio.a" ]; then + if [ -f "$i/libaio.so" || -f "$i/libaio.dylib" || -f "$i/libaio.a" ]; then LIBAIO="$i" fi fi @@ -959,10 +959,10 @@ done if [ "X" != "X$DEBUG" ]; then echo DEBUG: ORACLE_IPATH=$ORACLE_IPATH/oci.h fi -if [ -n "$ORACLE_PATH" -a -n "$ORACLE_IPATH" ]; then +if [ -n "$ORACLE_PATH" && -n "$ORACLE_IPATH" ]; then echo " ... found" fi -if [ "X" = "X$ORACLE_PATH" -o "X" = "X$ORACLE_IPATH" ]; then +if [ "X" = "X$ORACLE_PATH" || "X" = "X$ORACLE_IPATH" ]; then echo " ... NOT found, module Oracle disabled" echo "Get basic and sdk package from http://www.oracle.com/technetwork/database/features/instant-client/index.html" ORACLE_PATH="" @@ -973,7 +973,7 @@ echo "Checking for Memcached (libmemcached.so, memcached.h) ..." for i in $LIBDIRS ; do if [ "X" = "X$MCACHED_PATH" ]; then - if [ -f "$i/libmemcached.so" -o -f "$i/libmemcached.dylib" -o -f "$i/libmemcached.a" ]; then + if [ -f "$i/libmemcached.so" || -f "$i/libmemcached.dylib" || -f "$i/libmemcached.a" ]; then MCACHED_PATH="$i" fi fi @@ -1010,96 +1010,24 @@ if [ "X" != "X$DEBUG" ]; then echo DEBUG: MCACHED_PATH=$MCACHED_PATH/libmemcached echo DEBUG: MCACHED_IPATH=$MCACHED_IPATH/memcached.h fi - if [ -n "$MCACHED_PATH" -a -n "$MCACHED_IPATH" ]; then + if [ -n "$MCACHED_PATH" && -n "$MCACHED_IPATH" ]; then echo " ... found" fi - if [ "X" = "X$MCACHED_PATH" -o "X" = "X$MCACHED_IPATH" ]; then + if [ "X" = "X$MCACHED_PATH" || "X" = "X$MCACHED_IPATH" ]; then echo " ... NOT found, module memcached disabled" MCACHED_PATH="" MCACHED_IPATH="" fi -echo "Checking for Freerdp2 (libfreerdp2.so, freerdp/*.h, libwinpr2.so, winpr/*.h) ..." - - for i in $LIBDIRS ; do - if [ "X" = "X$FREERDP2_PATH" ]; then - if [ -f "$i/libfreerdp2.so" -o -f "$i/libfreerdp2.dylib" -o -f "$i/libfreerdp2.a" -o -f "$i/libfreerdp2.dll.a" ]; then - FREERDP2_PATH="$i" - fi - fi - if [ "X" = "X$FREERDP2_PATH" ]; then - TMP_LIB=`/bin/ls $i/libfreerdp2*.so* 2> /dev/null | grep libfreerdp2` - if [ -n "$TMP_LIB" ]; then - FREERDP2_PATH="$i" - fi - fi - done - - FREERDP2_IPATH= - for i in $INCDIRS ; do - if [ "X" = "X$FREERDP2_IPATH" ]; then - if [ -f "$i/freerdp/freerdp.h" ]; then - FREERDP2_IPATH="$i/freerdp2" - fi - if [ -f "$i/freerdp2/freerdp/freerdp.h" ]; then - FREERDP2_IPATH="$i/freerdp2" - fi - fi - done - - for i in $LIBDIRS ; do - if [ "X" = "X$WINPR2_PATH" ]; then - if [ -f "$i/libwinpr2.so" -o -f "$i/libwinpr2.dylib" -o -f "$i/libwinpr2.a" ]; then - WINPR2_PATH="$i" - fi - fi - if [ "X" = "X$WINPR2_PATH" ]; then - TMP_LIB=`/bin/ls $i/libwinpr2.dll.a 2> /dev/null | grep winpr` - if [ -n "$TMP_LIB" ]; then - WINPR2_PATH="$i" - fi - fi - done - - WINPR2_IPATH= - for i in $INCDIRS ; do - if [ "X" = "X$WINPR2_IPATH" ]; then - if [ -f "$i/winpr.h" ]; then - WINPR2_IPATH="$i" - fi - if [ -f "$i/winpr2/winpr/winpr.h" ]; then - WINPR2_IPATH="$i/winpr2" - fi - fi - done - -if [ "X" != "X$DEBUG" ]; then - echo DEBUG: FREERDP2_PATH=$FREERDP2_PATH/ - echo DEBUG: FREERDP2_IPATH=$FREERDP2_IPATH/ - echo DEBUG: WINPR2_PATH=$WINPR2_PATH/ - echo DEBUG: WINPR2_IPATH=$WINPR2_IPATH/ -fi - - if [ -n "$FREERDP2_PATH" -a -n "$FREERDP2_IPATH" -a -n "$WINPR2_PATH" -a -n "$WINPR2_IPATH" ]; then - echo " ... found" - fi - if [ "X" = "X$FREERDP2_PATH" -o "X" = "X$FREERDP2_IPATH" -o "X" = "X$WINPR2_PATH" -o "X" = "X$WINPR2_IPATH" ]; then - echo " ... NOT found, checking freerdp3 module next..." - FREERDP2_PATH="" - FREERDP2_IPATH="" - WINPR2_PATH="" - WINPR2_IPATH="" - fi - echo "Checking for Freerdp3 (libfreerdp3.so, freerdp/*.h, libwinpr3.so, winpr/*.h) ..." for i in $LIBDIRS ; do - if [ "X" = "X$FREERDP2_PATH" ] && [ "X" = "X$FREERDP3_PATH" ]; then - if [ -f "$i/libfreerdp3.so" -o -f "$i/libfreerdp3.dylib" -o -f "$i/libfreerdp3.a" -o -f "$i/libfreerdp3.dll.a" ]; then + if [ "X" = "X$FREERDP3_PATH" ]; then + if [ -f "$i/libfreerdp3.so" || -f "$i/libfreerdp3.dylib" || -f "$i/libfreerdp3.a" || -f "$i/libfreerdp3.dll.a" ]; then FREERDP3_PATH="$i" fi fi - if [ "X" = "X$FREERDP2_PATH" ] && [ "X" = "X$FREERDP3_PATH" ]; then + if [ "X" = "X$FREERDP3_PATH" ]; then TMP_LIB=`/bin/ls $i/libfreerdp3*.so* 2> /dev/null | grep libfreerdp3` if [ -n "$TMP_LIB" ]; then FREERDP3_PATH="$i" @@ -1109,7 +1037,7 @@ echo "Checking for Freerdp3 (libfreerdp3.so, freerdp/*.h, libwinpr3.so, winpr/*. FREERDP3_IPATH= for i in $INCDIRS ; do - if [ "X" = "X$FREERDP2_IPATH" ] && [ "X" = "X$FREERDP3_IPATH" ]; then + if [ "X" = "X$FREERDP3_IPATH" ]; then if [ -f "$i/freerdp/freerdp.h" ]; then FREERDP3_IPATH="$i/freerdp3" fi @@ -1120,12 +1048,12 @@ echo "Checking for Freerdp3 (libfreerdp3.so, freerdp/*.h, libwinpr3.so, winpr/*. done for i in $LIBDIRS ; do - if [ "X" = "X$WINPR2_PATH" ] && [ "X" = "X$WINPR3_PATH" ]; then - if [ -f "$i/libwinpr3.so" -o -f "$i/libwinpr3.dylib" -o -f "$i/libwinpr3.a" ]; then + if [ "X" = "X$WINPR3_PATH" ]; then + if [ -f "$i/libwinpr3.so" || -f "$i/libwinpr3.dylib" || -f "$i/libwinpr3.a" ]; then WINPR3_PATH="$i" fi fi - if [ "X" = "X$WINPR2_PATH" ] && [ "X" = "X$WINPR3_PATH" ]; then + if [ "X" = "X$WINPR3_PATH" ]; then TMP_LIB=`/bin/ls $i/libwinpr3.dll.a 2> /dev/null | grep winpr` if [ -n "$TMP_LIB" ]; then WINPR3_PATH="$i" @@ -1135,7 +1063,7 @@ echo "Checking for Freerdp3 (libfreerdp3.so, freerdp/*.h, libwinpr3.so, winpr/*. WINPR3_IPATH= for i in $INCDIRS ; do - if [ "X" = "X$WINPR2_IPATH" ] && [ "X" = "X$WINPR3_IPATH" ]; then + if [ "X" = "X$WINPR3_IPATH" ]; then if [ -f "$i/winpr.h" ]; then WINPR3_IPATH="$i" fi @@ -1152,22 +1080,96 @@ if [ "X" != "X$DEBUG" ]; then echo DEBUG: WINPR3_IPATH=$WINPR3_IPATH/ fi - if [ -n "$FREERDP3_PATH" -a -n "$FREERDP3_IPATH" -a -n "$WINPR3_PATH" -a -n "$WINPR3_IPATH" ]; then + if [ -n "$FREERDP3_PATH" && -n "$FREERDP3_IPATH" && -n "$WINPR3_PATH" && -n "$WINPR3_IPATH" ]; then echo " ... found" fi - if [ "X" = "X$FREERDP3_PATH" -o "X" = "X$FREERDP3_IPATH" -o "X" = "X$WINPR3_PATH" -o "X" = "X$WINPR3_IPATH" ]; then - echo " ... NOT found, module rdp disabled" + if [ "X" = "X$FREERDP3_PATH" || "X" = "X$FREERDP3_IPATH" || "X" = "X$WINPR3_PATH" || "X" = "X$WINPR3_IPATH" ]; then + echo " ... NOT found, checking for freerdp2 module next..." FREERDP3_PATH="" FREERDP3_IPATH="" WINPR3_PATH="" WINPR3_IPATH="" fi +if ["X" != "X$FREERDP3_PATH" || "X" != "X$FREERDP3_IPATH" || "X" != "X$WINPR3_PATH" || "X" != "X$WINPR3_IPATH"]; then + echo "Checking for Freerdp2 (libfreerdp2.so, freerdp/*.h, libwinpr2.so, winpr/*.h) ..." + + for i in $LIBDIRS ; do + if [ "X" = "X$FREERDP2_PATH" ]; then + if [ -f "$i/libfreerdp2.so" || -f "$i/libfreerdp2.dylib" || -f "$i/libfreerdp2.a" || -f "$i/libfreerdp2.dll.a" ]; then + FREERDP2_PATH="$i" + fi + fi + if [ "X" = "X$FREERDP2_PATH" ]; then + TMP_LIB=`/bin/ls $i/libfreerdp2*.so* 2> /dev/null | grep libfreerdp2` + if [ -n "$TMP_LIB" ]; then + FREERDP2_PATH="$i" + fi + fi + done + + FREERDP2_IPATH= + for i in $INCDIRS ; do + if [ "X" = "X$FREERDP2_IPATH" ]; then + if [ -f "$i/freerdp/freerdp.h" ]; then + FREERDP2_IPATH="$i/freerdp2" + fi + if [ -f "$i/freerdp2/freerdp/freerdp.h" ]; then + FREERDP2_IPATH="$i/freerdp2" + fi + fi + done + + for i in $LIBDIRS ; do + if [ "X" = "X$WINPR2_PATH" ]; then + if [ -f "$i/libwinpr2.so" || -f "$i/libwinpr2.dylib" || -f "$i/libwinpr2.a" ]; then + WINPR2_PATH="$i" + fi + fi + if [ "X" = "X$WINPR2_PATH" ]; then + TMP_LIB=`/bin/ls $i/libwinpr2.dll.a 2> /dev/null | grep winpr` + if [ -n "$TMP_LIB" ]; then + WINPR2_PATH="$i" + fi + fi + done + + WINPR2_IPATH= + for i in $INCDIRS ; do + if [ "X" = "X$WINPR2_IPATH" ]; then + if [ -f "$i/winpr.h" ]; then + WINPR2_IPATH="$i" + fi + if [ -f "$i/winpr2/winpr/winpr.h" ]; then + WINPR2_IPATH="$i/winpr2" + fi + fi + done + + if [ "X" != "X$DEBUG" ]; then + echo DEBUG: FREERDP2_PATH=$FREERDP2_PATH/ + echo DEBUG: FREERDP2_IPATH=$FREERDP2_IPATH/ + echo DEBUG: WINPR2_PATH=$WINPR2_PATH/ + echo DEBUG: WINPR2_IPATH=$WINPR2_IPATH/ + fi + + if [ -n "$FREERDP2_PATH" && -n "$FREERDP2_IPATH" && -n "$WINPR2_PATH" && -n "$WINPR2_IPATH" ]; then + echo " ... found" + fi + if [ "X" = "X$FREERDP2_PATH" || "X" = "X$FREERDP2_IPATH" || "X" = "X$WINPR2_PATH" || "X" = "X$WINPR2_IPATH" ]; then + echo " ... NOT found, module rdp disabled" + FREERDP2_PATH="" + FREERDP2_IPATH="" + WINPR2_PATH="" + WINPR2_IPATH="" + fi +fi + echo "Checking for Mongodb (libmongoc-1.0.so, mongoc.h, libbson-1.0.so, bson.h) ..." for i in $LIBDIRS ; do if [ "X" = "X$MONGODB_PATH" ]; then - if [ -f "$i/libmongoc-1.0.so" -o -f "$i/libmongoc-1.0.dylib" -o -f "$i/libmongoc-1.0.a" ]; then + if [ -f "$i/libmongoc-1.0.so" || -f "$i/libmongoc-1.0.dylib" || -f "$i/libmongoc-1.0.a" ]; then MONGODB_PATH="$i" fi fi @@ -1202,7 +1204,7 @@ echo "Checking for Mongodb (libmongoc-1.0.so, mongoc.h, libbson-1.0.so, bson.h) for i in $LIBDIRS ; do if [ "X" = "X$BSON_PATH" ]; then - if [ -f "$i/libbson-1.0.so" -o -f "$i/libbson-1.0.dylib" -o -f "$i/libbson-1.0.a" ]; then + if [ -f "$i/libbson-1.0.so" || -f "$i/libbson-1.0.dylib" || -f "$i/libbson-1.0.a" ]; then BSON_PATH="$i" fi fi @@ -1242,10 +1244,10 @@ if [ "X" != "X$DEBUG" ]; then echo DEBUG: BSON_IPATH=$BSON_IPATH/libbson.h fi - if [ -n "$MONGODB_PATH" -a -n "$MONGODB_IPATH" -a -n "$BSON_PATH" -a -n "$BSON_IPATH" ]; then + if [ -n "$MONGODB_PATH" && -n "$MONGODB_IPATH" && -n "$BSON_PATH" && -n "$BSON_IPATH" ]; then echo " ... found" fi - if [ "X" = "X$MONGODB_PATH" -o "X" = "X$MONGODB_IPATH" -o "X" = "X$BSON_PATH" -o "X" = "X$BSON_IPATH" ]; then + if [ "X" = "X$MONGODB_PATH" || "X" = "X$MONGODB_IPATH" || "X" = "X$BSON_PATH" || "X" = "X$BSON_IPATH" ]; then echo " ... NOT found, module mongodb disabled" MONGODB_PATH="" MONGODB_IPATH="" @@ -1257,7 +1259,7 @@ echo "Checking for smbclient (libsmbclient.so, libsmbclient.h) ..." for i in $LIBDIRS ; do if [ "X" = "X$SMBC_PATH" ]; then - if [ -f "$i/libsmbclient.so" -o -f "$i/libsmbclient.dylib" -o -f "$i/libsmbclient.a" ]; then + if [ -f "$i/libsmbclient.so" || -f "$i/libsmbclient.dylib" || -f "$i/libsmbclient.a" ]; then SMBC_PATH="$i" fi fi @@ -1291,10 +1293,10 @@ echo "Checking for smbclient (libsmbclient.so, libsmbclient.h) ..." echo DEBUG: SMBC_PATH=$SMBC_PATH/libsmbclient echo DEBUG: SMBC_IPATH=$SMBC_IPATH/libsmbclient.h fi - if [ -n "$SMBC_PATH" -a -n "$SMBC_IPATH" ]; then + if [ -n "$SMBC_PATH" && -n "$SMBC_IPATH" ]; then echo " ... found" fi - if [ "X" = "X$SMBC_PATH" -o "X" = "X$SMBC_IPATH" ]; then + if [ "X" = "X$SMBC_PATH" || "X" = "X$SMBC_IPATH" ]; then echo " ... NOT found, module smb2 disabled" SMBC_PATH="" SMBC_IPATH="" @@ -1344,7 +1346,7 @@ if [ "$SYSS" = "SunOS" ]; then if [ "X" = "X$RESOLV_PATH" ]; then echo "Resolv library not found, which is needed on Solaris." fi - if [ -n "$RESOLV_PATH" -a -n "$SOCKET_PATH" -a -n "$RESOLV_PATH" ]; then + if [ -n "$RESOLV_PATH" && -n "$SOCKET_PATH" && -n "$RESOLV_PATH" ]; then echo " ... all found" fi echo @@ -1601,7 +1603,7 @@ fi if [ -n "$MONGODB_IPATH" ]; then XIPATHS="$XIPATHS -I$MONGODB_IPATH -I$BSON_IPATH" fi -if [ -n "$FREERDP3_IPATH" ]; then +if [ -n "$FREERDP2_IPATH" ]; then XIPATHS="$XIPATHS -I$FREERDP2_IPATH -I$WINPR2_IPATH" fi if [ -n "$FREERDP3_IPATH" ]; then @@ -1625,10 +1627,10 @@ fi if [ -n "$NCP_PATH" ]; then XLIBS="$XLIBS -lncp" fi -if [ -n "$ORACLE_PATH" -a "$SYSO" != "Cygwin" ]; then +if [ -n "$ORACLE_PATH" && "$SYSO" != "Cygwin" ]; then XLIBS="$XLIBS -locci -lclntsh" fi -if [ -n "$ORACLE_PATH" -a "$SYSO" = "Cygwin" ]; then +if [ -n "$ORACLE_PATH" && "$SYSO" = "Cygwin" ]; then XLIBS="$XLIBS -loci" fi if [ -n "$FIREBIRD_PATH" ]; then @@ -1708,7 +1710,7 @@ if [ "X" = "X$PREFIX" ]; then PREFIX="/usr/local" fi -if [ "X" = "X$XHYDRA_SUPPORT" -o "Xdisable" = "X$XHYDRA_SUPPORT" ]; then +if [ "X" = "X$XHYDRA_SUPPORT" || "Xdisable" = "X$XHYDRA_SUPPORT" ]; then XHYDRA_SUPPORT="" else XHYDRA_SUPPORT="xhydra"