On Mon Oct 17, 2016 at 09:15:49PM +0200, Rafael Sadowski wrote:
> On Sun Oct 09, 2016 at 03:55:27PM +0200, Remi Pointel wrote:
> > On 10/09/16 10:29, Rafael Sadowski wrote:
> > > Index: pkg/PLIST-main
> > > ===================================================================
> > > RCS file: /cvs/ports/security/hydra/pkg/PLIST-main,v
> > > retrieving revision 1.3
> > > diff -u -p -u -p -r1.3 PLIST-main
> > > --- pkg/PLIST-main 5 Nov 2011 15:24:39 -0000 1.3
> > > +++ pkg/PLIST-main 9 Oct 2016 08:17:22 -0000
> > > @@ -1,8 +1,15 @@
> > > @comment $OpenBSD: PLIST-main,v 1.3 2011/11/05 15:24:39 nigel Exp $
> > > @pkgpath security/hydra
> > > +bin/dpl4hydra.sh
> > > @bin bin/hydra
> > > +bin/hydra-wizard.sh
> > > @bin bin/pw-inspector
> > > +hydra/
> > > +hydra/etc/
> > > +hydra/etc/dpl4hydra_full.csv
> > > +hydra/etc/dpl4hydra_local.csv
> > > @man man/man1/hydra.1
> > > @man man/man1/pw-inspector.1
> > > share/doc/hydra/
> > > +share/doc/hydra/LICENSE
> > > share/doc/hydra/README
> > >
> >
> > Hi,
> >
> > I quickly tested and it sounds good for me.
> > However, I would install dpl4hydra_full.csv and dpl4hydra_local.csv in
> > another path (maybe share/doc/hydra/, but not in ${LOCALBASE}/hydra/etc/.
> >
> > Cheers,
> >
> > Remi.
>
> Updated diff with dpl4hydra_* in "share/doc/hydra/":
>
*ping*, nobody?
>
> Index: Makefile
> ===================================================================
> RCS file: /cvs/ports/security/hydra/Makefile,v
> retrieving revision 1.56
> diff -u -p -u -p -r1.56 Makefile
> --- Makefile 17 Jan 2016 17:29:10 -0000 1.56
> +++ Makefile 17 Oct 2016 19:10:41 -0000
> @@ -3,50 +3,43 @@
> COMMENT-main= parallelized network logon cracker
> COMMENT-gui= GTK frontend for hydra
>
> -VERSION= 8.1
> -REVISION-main= 0
> -DISTNAME= hydra-${VERSION}
> +VERSION= 8.3
> PKGNAME-main= hydra-${VERSION}
> PKGNAME-gui= hydra-gui-${VERSION}
> -CATEGORIES= security
> +CATEGORIES= security
>
> -HOMEPAGE= http://thc.org/thc-hydra/
> +GH_ACCOUNT = vanhauser-thc
> +GH_PROJECT = thc-hydra
> +GH_TAGNAME = 8.3
>
> -#GNU AFFERO GENERAL PUBLIC LICENSE Version 3
> -PERMIT_PACKAGE_CDROM= Yes
> +HOMEPAGE= https://thc.org/thc-hydra/
>
> -WANTLIB= c m
> +# AGPLv3 (GNU Affero Public License)
> +PERMIT_PACKAGE_CDROM= Yes
>
> -MASTER_SITES = http://www.thc.org/releases/
> -MASTER_SITES += ${MASTER_SITE_PACKETSTORM:=groups/thc/}
> +WANTLIB= c z
>
> PSEUDO_FLAVORS= no_x11
> FLAVOR?=
>
> MULTI_PACKAGES= -main
>
> -CONFIGURE_STYLE=gnu dest
> +CONFIGURE_STYLE=gnu
>
> USE_GMAKE= Yes
> NO_TEST= Yes
> MAKE_FLAGS= CC=${CC}
> -CFLAGS += -I${LOCALBASE}/include
> +
> +CONFIGURE_ARGS = --with-ssl=prefix="/usr/include" \
> + --with-ssl-lib=prefix="/usr/lib" \
> + --prefix=${LOCALBASE}
>
> .if ${FLAVOR:Mno_x11}
> ALL_TARGET= hydra pw-inspector
> -
> -do-install:
> - cd ${WRKBUILD}; $(INSTALL_PROGRAM) hydra pw-inspector $(PREFIX)/bin
> .else
> -
> +MODULES= devel/gettext
> MULTI_PACKAGES+=-gui
> -
> ALL_TARGET= all
> -
> -MODULES= devel/gettext
> -
> -post-configure:
> - cd ${WRKSRC}/hydra-gtk && ./configure
> .endif
>
> LIB_DEPENDS-main= databases/mariadb,-main \
> @@ -55,24 +48,24 @@ LIB_DEPENDS-main= databases/mariadb,-mai
> devel/pcre \
> security/libssh
> RUN_DEPENDS-main=
> -WANTLIB-main= ${WANTLIB} curses crypto idn mysqlclient pcre pq
> pthread ssh ssl
> +
> +WANTLIB-main= ${WANTLIB} m crypto curses idn mysqlclient pcre pq ssh
> ssl
> +
> LIB_DEPENDS-gui=x11/gtk+2 \
> ${MODGETTEXT_LIB_DEPENDS}
> +
> RUN_DEPENDS-gui=hydra-${VERSION}:security/hydra,-main \
> ${MODGETTEXT_RUN_DEPENDS}
> -WANTLIB-gui= ${WANTLIB} GL X11 Xcomposite Xcursor Xdamage Xfixes \
> - Xext Xi Xinerama Xrandr Xrender atk-1.0 freetype fontconfig \
> - gdk-x11-2.0 gdk_pixbuf-2.0 gtk-x11-2.0 \
> - gio-2.0 gmodule-2.0 gobject-2.0 glib-2.0 gthread-2.0 png \
> - pango-1.0 pangocairo-1.0 pixman-1 cairo z expat \
> - pangoft2-1.0 pthread pthread-stubs xcb xcb-render \
> - xcb-shm
>
> -post-extract:
> - chmod -R u+w ${WRKDIST}
> +WANTLIB-gui= X11 Xcomposite Xcursor Xdamage Xext Xfixes Xi Xinerama \
> + Xrandr Xrender atk-1.0 cairo fontconfig freetype gdk-x11-2.0 \
> + gdk_pixbuf-2.0 gio-2.0 glib-2.0 gobject-2.0 gtk-x11-2.0 \
> + pango-1.0 pangocairo-1.0 pangoft2-1.0 intl ${WANTLIB}
>
> post-install:
> ${INSTALL_DATA_DIR} ${PREFIX}/share/doc/hydra
> - ${INSTALL_DATA} ${WRKSRC}/README ${PREFIX}/share/doc/hydra
> + ${INSTALL_DATA} ${WRKSRC}/{README,LICENSE} ${PREFIX}/share/doc/hydra
> + ${INSTALL_DATA} ${WRKSRC}/{README,LICENSE} ${PREFIX}/share/doc/hydra
> + mv ${PREFIX}/etc/* ${PREFIX}/share/doc/hydra/ && rm -r ${PREFIX}/etc
>
> .include <bsd.port.mk>
> Index: distinfo
> ===================================================================
> RCS file: /cvs/ports/security/hydra/distinfo,v
> retrieving revision 1.14
> diff -u -p -u -p -r1.14 distinfo
> --- distinfo 21 Nov 2015 14:16:33 -0000 1.14
> +++ distinfo 17 Oct 2016 19:10:41 -0000
> @@ -1,2 +1,2 @@
> -SHA256 (hydra-8.1.tar.gz) = 5Lwv0R+XqNmFo4oxeFyG04zGA4Pkeo9KXENjUeUTXxk=
> -SIZE (hydra-8.1.tar.gz) = 559031
> +SHA256 (thc-hydra-8.3.tar.gz) = Zf7ss5CWutMJleOlJRgxVWV2EFqQdpd7lfCCqx/5CC0=
> +SIZE (thc-hydra-8.3.tar.gz) = 1138650
> Index: patches/patch-Makefile_am
> ===================================================================
> RCS file: patches/patch-Makefile_am
> diff -N patches/patch-Makefile_am
> --- patches/patch-Makefile_am 21 Nov 2015 14:16:33 -0000 1.3
> +++ /dev/null 1 Jan 1970 00:00:00 -0000
> @@ -1,43 +0,0 @@
> -$OpenBSD: patch-Makefile_am,v 1.3 2015/11/21 14:16:33 rpointel Exp $
> ---- Makefile.am.orig Sun Dec 7 15:50:20 2014
> -+++ Makefile.am Wed Nov 18 17:38:00 2015
> -@@ -1,7 +1,7 @@
> - #
> - # Makefile for Hydra - (c) 2001-2014 by van Hauser / THC <[email protected]>
> - #
> --OPTS=-I. -O3
> -+OPTS=-I. $(CFLAGS)
> - # -Wall -g -pedantic
> - LIBS=-lm
> - DIR=/bin
> -@@ -44,7 +44,7 @@ hydra: hydra.c $(OBJ)
> - @echo
> -
> - xhydra:
> -- -cd hydra-gtk && sh ./make_xhydra.sh
> -+ -cd hydra-gtk/src && $(MAKE)
> -
> - pw-inspector: pw-inspector.c
> - -$(CC) $(OPTS) $(SEC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -o pw-inspector
> $(PWI_LOGO) pw-inspector.c
> -@@ -56,16 +56,11 @@ strip: all
> - strip $(BINS)
> - -echo OK > /dev/null && test -x xhydra && strip xhydra || echo OK >
> /dev/null
> -
> --install: strip
> -- -mkdir -p $(PREFIX)$(DIR)
> -- cp -f hydra-wizard.sh $(BINS) $(PREFIX)$(DIR) && cd $(PREFIX)$(DIR) &&
> chmod 755 hydra-wizard.sh $(BINS)
> -- -echo OK > /dev/null && test -x xhydra && cp xhydra $(PREFIX)$(DIR) &&
> cd $(PREFIX)$(DIR) && chmod 755 xhydra || echo OK > /dev/null
> -- -sed -e "s|^INSTALLDIR=.*|INSTALLDIR="$(PREFIX)"|" dpl4hydra.sh >
> $(PREFIX)/bin/dpl4hydra.sh
> -- -chmod 755 $(PREFIX)/bin/dpl4hydra.sh
> -- -mkdir -p $(PREFIX)/etc/
> -- -cp -f *.csv $(PREFIX)/etc/
> -- -mkdir -p $(PREFIX)/man/man1
> -- -cp -f hydra.1 xhydra.1 pw-inspector.1 $(PREFIX)/man/man1
> -+install:
> -+ $(BSD_INSTALL_PROGRAM) $(BINS) $(PREFIX)$(DIR) 2> /dev/null
> -+ $(BSD_INSTALL_MAN_DIR) $(PREFIX)/man/man1 2> /dev/null
> -+ $(BSD_INSTALL_MAN) hydra.1 pw-inspector.1 xhydra.1 $(PREFIX)/man/man1
> 2> /dev/null
> -+ cd hydra-gtk/src && $(BSD_INSTALL_PROGRAM) xhydra $(PREFIX)$(DIR) 2>
> /dev/null
> -
> - 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
> Index: patches/patch-configure
> ===================================================================
> RCS file: /cvs/ports/security/hydra/patches/patch-configure,v
> retrieving revision 1.7
> diff -u -p -u -p -r1.7 patch-configure
> --- patches/patch-configure 21 Nov 2015 14:16:33 -0000 1.7
> +++ patches/patch-configure 17 Oct 2016 19:10:41 -0000
> @@ -1,53 +1,85 @@
> -$OpenBSD: patch-configure,v 1.7 2015/11/21 14:16:33 rpointel Exp $
> -Remove tests for include files and libraries there are no
> -configure options to disable support the build may fail or be altered
> -if added
> ---- configure.orig Sun Dec 7 15:50:24 2014
> -+++ configure Wed Nov 18 16:55:18 2015
> -@@ -306,71 +306,6 @@ echo "Checking for Postgres (libpq.so, libpq-fe.h) ...
> +$OpenBSD$
> +--- configure.orig Thu Aug 11 09:48:55 2016
> ++++ configure Sat Oct 8 19:35:00 2016
> +@@ -423,106 +423,6 @@ fi
> + fi
> #fi
>
> - echo "Checking for SVN (libsvn_client-1 libapr-1.so libaprutil-1.so) ..."
> +-echo "Checking for SVN (libsvn_client-1 libapr-1.so libaprutil-1.so) ..."
> -for i in $LIBDIRS ; do
> - if [ "X" = "X$SVN_PATH" ]; then
> -- if [ -f "$i/libsvn_client-1.so" ]&&[ -f "$i/libapr-1.so" ]&&[ -f
> "$i/libaprutil-1.so" ]; then
> +- if [ -f "$i/libsvn_client-1.so" ]; then
> - SVN_PATH="$i"
> +- fi
> +- fi
> +- if [ "X" = "X$APR_PATH" ]; then
> +- if [ -f "$i/libapr-1.so" -a -f "$i/libaprutil-1.so" ]; then
> - APR_PATH="$i"
> - fi
> - fi
> - if [ "X" = "X$SVN_PATH" ]; then
> -- if [ -f "$i/libsvn_client-1.dll.a" ]&&[ -f "$i/libapr-1.dll.a" ]&&[
> -f "$i/libaprutil-1.dll.a" ]; then
> +- if [ -f "$i/libsvn_client-1.dll.a" ]; then
> - SVN_PATH="$i"
> +- fi
> +- fi
> +- if [ "X" = "X$APR_PATH" ]; then
> +- if [ -f "$i/libapr-1.dll.a" -a -f "$i/libaprutil-1.dll.a" ]; then
> +- APR_PATH="$i"
> +- fi
> +- fi
> +- if [ "X" = "X$SVN_PATH" ]; then
> +- if [ -f "$i/libsvn_client-1.dylib" ]; then
> +- SVN_PATH="$i"
> +- fi
> +- fi
> +- if [ "X" = "X$APR_PATH" ]; then
> +- if [ -f "$i/libapr-1.dylib" -a -f "$i/libaprutil-1.dylib" ]; then
> - APR_PATH="$i"
> - fi
> - fi
> - if [ "X" = "X$SVN_PATH" ]; then
> -- if [ -f "$i/libsvn_client-1.dylib" ]&&[ -f "$i/libapr-1.dylib" ]&&[
> -f "$i/libaprutil-1.dylib" ]; then
> +- if [ -f "$i/libsvn_client-1.a" ]; then
> - SVN_PATH="$i"
> +- fi
> +- fi
> +- if [ "X" = "X$APR_PATH" ]; then
> +- if [ -f "$i/libapr-1.a" -a -f "$i/libaprutil-1.a" ]; then
> - APR_PATH="$i"
> - fi
> - fi
> - if [ "X" = "X$SVN_PATH" ]; then
> -- if [ -f "$i/libsvn_client-1.a" ]&&[ -f "$i/libapr-1.a" ]&&[ -f
> "$i/libaprutil-1.a" ]; then
> +- if [ -f "$i/libsvn_client-1.0.dylib" ]; then
> - SVN_PATH="$i"
> +- fi
> +- fi
> +- if [ "X" = "X$APR_PATH" ]; then
> +- if [ -f "$i/libapr-1.0.dylib" -a -f "$i/libaprutil-1.0.dylib" ];
> then
> - APR_PATH="$i"
> - fi
> - fi
> - if [ "X" = "X$SVN_PATH" ]; then
> - TMP_LIB1=`/bin/ls $i/libsvn_client*.so* 2> /dev/null | grep
> libsvn_client.`
> +- if [ -n "$TMP_LIB1" ]; then
> +- SVN_PATH="$i"
> +- fi
> +- fi
> +- 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_LIB1" -a -n "$TMP_LIB2" -a -n "$TMP_LIB3" ]; then
> -- SVN_PATH="$i"
> +- if [ -n "$TMP_LIB2" -a -n "$TMP_LIB3" ]; then
> - APR_PATH="$i"
> - fi
> - fi
> - if [ "X" = "X$SVN_PATH" ]; then
> - TMP_LIB1=`/bin/ls $i/libsvn_client*.dll* 2> /dev/null | grep
> libsvn_client.`
> +- if [ -n "$TMP_LIB1" ]; then
> +- SVN_PATH="$i"
> +- fi
> +- fi
> +- 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_LIB1" -a -n "$TMP_LIB2" -a -n "$TMP_LIB3" ]; then
> -- SVN_PATH="$i"
> +- if [ -n "$TMP_LIB2" -a -n "$TMP_LIB3" ]; then
> - APR_PATH="$i"
> - fi
> - fi
> @@ -73,13 +105,14 @@ if added
> - fi
> - fi
> -done
> -
> - if [ "X" = "X$SVN_PATH" -o "X" = "X$SVN_IPATH" -o "X" = "X$APR_IPATH" ];
> then
> - SVN_PATH=""
> -@@ -392,32 +327,6 @@ if [ "X" = "X$SVN_PATH" -o "X" = "X$APR_PATH" ]; then
> + if [ "X" != "X$DEBUG" ]; then
> + echo DEBUG: SVN_PATH=$SVN_PATH/libsvn_client-1
> + echo DEBUG: APR_PATH=$APR_PATH/libapr
> +@@ -549,26 +449,6 @@ if [ "X" = "X$SVN_PATH" -o "X" = "X$APR_PATH" ]; then
> + echo "
> ... NOT found, module svn disabled"
> fi
>
> - echo "Checking for firebird (libfbclient.so) ..."
> +-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
> @@ -99,20 +132,14 @@ if added
> - fi
> - fi
> -done
> --for i in $INCDIRS ; do
> -- if [ "X" != "X$FIREBIRD_PATH" ]; then
> -- if [ -f "$i/ibase.h" ]; then
> -- FIREBIRD_IPATH="$i"
> -- fi
> -- fi
> --done
> - if [ -n "$FIREBIRD_PATH" -a -n "$FIREBIRD_IPATH" ]; then
> - echo " ... found"
> - fi
> -@@ -473,32 +382,6 @@ else
> + for i in $INCDIRS ; do
> + if [ "X" != "X$FIREBIRD_PATH" ]; then
> + if [ -f "$i/ibase.h" ]; then
> +@@ -638,26 +518,6 @@ if [ -f "/usr/include/math.h" ]; then
> + else
> echo " ... math.h not found,
> module Mysql disabled"
> fi
> - echo "Checking for AFP (libafpclient.so) ..."
> +-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
> @@ -132,20 +159,14 @@ if added
> - fi
> - fi
> -done
> --for i in $INCDIRS ; do
> -- if [ "X" != "X$AFP_PATH" ]; then
> -- if [ -f "$i/afpfs-ng/afp.h" ]; then
> -- AFP_IPATH="$i/afpfs-ng"
> -- fi
> -- fi
> --done
> - if [ -n "$AFP_PATH" -a -n "$AFP_IPATH" ]; then
> - echo " ... found"
> - fi
> -@@ -509,32 +392,6 @@ if [ "X" = "X$AFP_PATH" -o "X" = "X$AFP_IPATH" ]; then
> + for i in $INCDIRS ; do
> + if [ "X" != "X$AFP_PATH" ]; then
> + if [ -f "$i/afpfs-ng/afp.h" ]; then
> +@@ -678,26 +538,6 @@ if [ "X" = "X$AFP_PATH" -o "X" = "X$AFP_IPATH" ]; then
> + AFP_IPATH=""
> fi
>
> - echo "Checking for NCP (libncp.so / nwcalls.h) ..."
> +-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
> @@ -165,20 +186,14 @@ if added
> - fi
> - fi
> -done
> --for i in $INCDIRS ; do
> -- if [ "X" != "X$NCP_PATH" ]; then
> -- if [ -f "$i/ncp/nwcalls.h" ]; then
> -- NCP_IPATH="$i"
> -- fi
> -- fi
> --done
> - if [ -n "$NCP_PATH" -a -n "$NCP_IPATH" ]; then
> - echo " ... found"
> - fi
> -@@ -545,26 +402,6 @@ if [ "X" = "X$NCP_PATH" -o "X" = "X$NCP_IPATH" ]; then
> + for i in $INCDIRS ; do
> + if [ "X" != "X$NCP_PATH" ]; then
> + if [ -f "$i/ncp/nwcalls.h" ]; then
> +@@ -718,27 +558,6 @@ if [ "X" = "X$NCP_PATH" -o "X" = "X$NCP_IPATH" ]; then
> + NCP_IPATH=""
> fi
>
> - echo "Checking for SAP/R3 (librfc/saprfc.h) ..."
> +-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
> @@ -199,26 +214,26 @@ if added
> - fi
> - fi
> -done
> - if [ "X" = "X$SAPR3_PATH" ]; then
> - SAPR3_IPATH=""
> - fi
> -@@ -673,79 +510,15 @@ if [ "X" != "X$WORACLE_LIB_PATH" ]; then
> - LIBDIRS="$LIBDIRS $WORACLE_LIB_PATH"
> + if [ "X" != "X$DEBUG" ]; then
> + echo DEBUG: SAPR3_PATH=$SAPR3_PATH/librfc
> + echo DEBUG: SAPR3_IPATH=$SAPR3_IPATH/saprfc.h
> +@@ -822,47 +641,6 @@ if [ "X" != "X$DEBUG" ]; then
> + echo DEBUG: ORACLE_INC=$INCDIRS
> fi
>
> -for i in $LIBDIRS ; do
> - if [ "X" = "X$ORACLE_PATH" ]; then
> -- if [ -f "$i/libocci.so" ]&&[ -f "$i/libclntsh.so" ]; then
> +- if [ -f "$i/libocci.so" -a -f "$i/libclntsh.so" ]; then
> - ORACLE_PATH="$i"
> - fi
> - fi
> - if [ "X" = "X$ORACLE_PATH" ]; then
> -- if [ -f "$i/libocci.dylib" ]&&[ -f "$i/libclntsh.dylib" ]; then
> +- if [ -f "$i/libocci.dylib" -a -f "$i/libclntsh.dylib" ]; then
> - ORACLE_PATH="$i"
> - fi
> - fi
> - if [ "X" = "X$ORACLE_PATH" ]; then
> -- if [ -f "$i/libocci.a" ]&&[ -f "$i/libclntsh.a" ]; then
> +- if [ -f "$i/libocci.a" -a -f "$i/libclntsh.a" ]; then
> - ORACLE_PATH="$i"
> - fi
> - fi
> @@ -247,30 +262,11 @@ if added
> - fi
> - fi
> -done
> -+
> - #check for Kernel Asynchronous I/O (AIO) lib support
> - if [ "X" != "X$ORACLE_PATH" ]; 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
> -- LIBAIO="$i"
> -- fi
> -- fi
> -- if [ "X" = "X$LIBAIO" ]; then
> -- TMP_LIB=`/bin/ls $i/libaio.so.* 2> /dev/null | grep aio.`
> -- if [ -n "$TMP_LIB" ]; then
> -- LIBAIO="$i"
> -- fi
> -- TMP_LIB=`/bin/ls $i/libaio.dll* 2> /dev/null | grep aio.`
> -- if [ -n "$TMP_LIB" ]; then
> -- LIBAIO="$i"
> -- fi
> -- fi
> -- done
> - if [ "X" = "X$LIBAIO" ]; then
> - ORACLE_PATH=""
> - fi
> + if [ "X" != "X$DEBUG" ]; then
> + echo DEBUG: ORACLE_PATH=$ORACLE_PATH/libocci
> + fi
> +@@ -894,13 +672,6 @@ if [ "X" != "X$DEBUG" ]; then
> + echo DEBUG: ORACLE_PATH=$ORACLE_PATH/libaio
> fi
>
> -for i in $INCDIRS ; do
> @@ -280,6 +276,15 @@ if added
> - fi
> - fi
> -done
> - if [ -n "$ORACLE_PATH" -a -n "$ORACLE_IPATH" ]; then
> - echo "
> ... found"
> + if [ "X" != "X$DEBUG" ]; then
> + echo DEBUG: ORACLE_IPATH=$ORACLE_IPATH/oci.h
> fi
> +@@ -997,7 +768,7 @@ test -x $TMPC && GCCSEC="yes"
> + grep -q fPI $TMPC.c.err || GCCSECOPT="-pie -fPIE $GCCSECOPT"
> + rm -f "$TMPC"
> + gcc $GCCSECOPT -Wl,-z,now -Wl,-z,relro -o $TMPC $TMPC.c > /dev/null 2>
> $TMPC.c.err
> +-test -x $TMPC && { LDSEC="yes" ; GCCSECOPT="$GCCSECOPT -Wl,-z,now
> -Wl,-z,relro" ; }
> ++test -x $TMPC && { LDSEC="yes" ; GCCSECOPT="$GCCSECOPT" ; }
> + rm -f $TMPC $TMPC.c $TMPC.c.err
> + echo " Compiling...
> $GCCSEC"
> + echo " Linking... $LDSEC"
> Index: patches/patch-hydra-gtk_make_xhydra_sh
> ===================================================================
> RCS file: patches/patch-hydra-gtk_make_xhydra_sh
> diff -N patches/patch-hydra-gtk_make_xhydra_sh
> --- /dev/null 1 Jan 1970 00:00:00 -0000
> +++ patches/patch-hydra-gtk_make_xhydra_sh 17 Oct 2016 19:10:41 -0000
> @@ -0,0 +1,26 @@
> +$OpenBSD$
> +--- hydra-gtk/make_xhydra.sh.orig Thu Aug 11 09:48:55 2016
> ++++ hydra-gtk/make_xhydra.sh Sat Oct 8 19:43:11 2016
> +@@ -2,13 +2,13 @@
> + PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/opt/gnome/lib/pkgconfig
> + export PKG_CONFIG_PATH
> + echo "Trying to compile xhydra now (hydra gtk gui) - dont worry if this
> fails, this is really optional ..."
> +-./configure > /dev/null 2> errors
> ++./configure
> + test -e Makefile || {
> + echo "Error: configure wasnt happy. Analyse this:"
> + cat errors
> + exit 1
> + }
> +-make > /dev/null 2> errors
> ++gmake
> + test -e src/xhydra || {
> + echo "Error: could not compile. Analyse this:"
> + cat errors
> +@@ -16,5 +16,5 @@ test -e src/xhydra || {
> + echo 'Do not worry, as I said, xhydra is really optional. ./hydra is
> ready to go!'
> + exit 0
> + }
> +-cp -v src/xhydra ..
> ++cp src/xhydra ..
> + echo "The GTK GUI is ready, type \"./xhydra\" to start"
> Index: patches/patch-hydra-gtk_src_callbacks_c
> ===================================================================
> RCS file: patches/patch-hydra-gtk_src_callbacks_c
> diff -N patches/patch-hydra-gtk_src_callbacks_c
> --- patches/patch-hydra-gtk_src_callbacks_c 5 Nov 2011 15:24:39 -0000
> 1.4
> +++ /dev/null 1 Jan 1970 00:00:00 -0000
> @@ -1,12 +0,0 @@
> -$OpenBSD: patch-hydra-gtk_src_callbacks_c,v 1.4 2011/11/05 15:24:39 nigel
> Exp $
> ---- hydra-gtk/src/callbacks.c.orig Sun Oct 2 09:06:15 2011
> -+++ hydra-gtk/src/callbacks.c Wed Nov 2 00:36:25 2011
> -@@ -35,7 +35,7 @@ char tasks[10];
> - char timeout[10];
> - char smbparm[12];
> - char snmpparm[4];
> --char sapr3id[4];
> -+char sapr3id[10];
> - char passLoginNull[4];
> -
> -
> Index: patches/patch-hydra-mod_c
> ===================================================================
> RCS file: patches/patch-hydra-mod_c
> diff -N patches/patch-hydra-mod_c
> --- /dev/null 1 Jan 1970 00:00:00 -0000
> +++ patches/patch-hydra-mod_c 17 Oct 2016 19:10:41 -0000
> @@ -0,0 +1,35 @@
> +$OpenBSD$
> +--- hydra-mod.c.orig Thu Aug 11 09:48:55 2016
> ++++ hydra-mod.c Sat Oct 8 19:16:47 2016
> +@@ -438,10 +438,10 @@ int internal__hydra_connect(char *host, int port, int
> + return ret;
> + }
> +
> +-#ifdef LIBOPENSSL
> ++#ifdef LIBOPENSSL && !defined(LIBRESSL_VERSION_NUMBER)
> + RSA *ssl_temp_rsa_cb(SSL * ssl, int export, int keylength) {
> + int ok = 0;
> +-#if OPENSSL_VERSION_NUMBER >= 0x10100000L
> ++#if OPENSSL_VERSION_NUMBER >= 0x10100000L &&
> !defined(LIBRESSL_VERSION_NUMBER)
> + BIGNUM *n;
> + n = BN_new();
> + RSA_get0_key(rsa, &n, NULL, NULL);
> +@@ -451,7 +451,7 @@ RSA *ssl_temp_rsa_cb(SSL * ssl, int export, int keylen
> + ok = 1;
> + #endif
> + if(ok == 0 && RSA_size(rsa)!=(keylength/8)){ // n is not zero
> +-#if OPENSSL_VERSION_NUMBER >= 0x10100000L
> ++#if OPENSSL_VERSION_NUMBER >= 0x10100000L &&
> !defined(LIBRESSL_VERSION_NUMBER)
> + BN_free(n);
> + #endif
> + RSA_free(rsa);
> +@@ -467,7 +467,8 @@ RSA *ssl_temp_rsa_cb(SSL * ssl, int export, int keylen
> + rsa = RSA_generate_key(keylength, RSA_F4, NULL, NULL);
> + #endif
> + }
> +-#if OPENSSL_VERSION_NUMBER >= 0x10100000L
> ++#if OPENSSL_VERSION_NUMBER >= 0x10100000L &&
> !defined(LIBRESSL_VERSION_NUMBER)
> ++
> + BN_free(n);
> + #endif
> + return rsa;
> Index: patches/patch-hydra-oracle-listener_c
> ===================================================================
> RCS file: patches/patch-hydra-oracle-listener_c
> diff -N patches/patch-hydra-oracle-listener_c
> --- patches/patch-hydra-oracle-listener_c 21 Nov 2015 14:16:33 -0000
> 1.2
> +++ /dev/null 1 Jan 1970 00:00:00 -0000
> @@ -1,34 +0,0 @@
> -$OpenBSD: patch-hydra-oracle-listener_c,v 1.2 2015/11/21 14:16:33 rpointel
> Exp $
> ---- hydra-oracle-listener.c.orig Sun Dec 7 15:50:20 2014
> -+++ hydra-oracle-listener.c Thu Nov 19 14:50:52 2015
> -@@ -106,7 +106,7 @@ int convert_byteorder(unsigned char **result, int size
> - int ora_descrypt(unsigned char **rs, unsigned char *result, int siz) {
> - int i = 0;
> - char lastkey[8];
> -- des_key_schedule ks1;
> -+ DES_key_schedule ks1;
> - unsigned char key1[8] = { 0x01, 0x23, 0x45, 0x67, 0x89, 0xAB, 0xCD, 0xEF
> };
> - unsigned char ivec1[] = { 0, 0, 0, 0, 0, 0, 0, 0 };
> - unsigned char *desresult;
> -@@ -116,17 +116,17 @@ int ora_descrypt(unsigned char **rs, unsigned char *re
> - hydra_report(stderr, "[ERROR] Can't allocate memory\n");
> - return 1;
> - }
> -- des_key_sched((C_Block *) key1, ks1);
> -- des_ncbc_encrypt(result, desresult, siz, ks1, &ivec1, DES_ENCRYPT);
> -+ DES_key_sched((DES_cblock *) key1, &ks1);
> -+ DES_ncbc_encrypt(result, desresult, siz, &ks1, &ivec1, DES_ENCRYPT);
> -
> - for (i = 0; i < 8; i++) {
> - lastkey[i] = desresult[siz - 8 + i];
> - }
> -
> -- des_key_sched((C_Block *) lastkey, ks1);
> -+ DES_key_sched((DES_cblock *) lastkey, &ks1);
> - memset(desresult, 0, siz);
> - memset(ivec1, 0, sizeof(ivec1));
> -- des_ncbc_encrypt(result, desresult, siz, ks1, &ivec1, DES_ENCRYPT);
> -+ DES_ncbc_encrypt(result, desresult, siz, &ks1, &ivec1, DES_ENCRYPT);
> -
> - if ((*rs = malloc(siz)) == NULL) {
> - hydra_report(stderr, "[ERROR] Can't allocate memory\n");
> Index: patches/patch-hydra-rdp_c
> ===================================================================
> RCS file: patches/patch-hydra-rdp_c
> diff -N patches/patch-hydra-rdp_c
> --- /dev/null 1 Jan 1970 00:00:00 -0000
> +++ patches/patch-hydra-rdp_c 17 Oct 2016 19:10:41 -0000
> @@ -0,0 +1,37 @@
> +$OpenBSD$
> +--- hydra-rdp.c.orig Thu Aug 11 09:48:55 2016
> ++++ hydra-rdp.c Sat Oct 8 19:16:18 2016
> +@@ -910,13 +910,13 @@ SSL_RKEY *ssl_cert_to_rkey(X509 * cert, uint32 * key_l
> +
> + Kudos to Richard Levitte for the following (. intuitive .)
> + lines of code that resets the OID and let's us extract the key. */
> +-#if OPENSSL_VERSION_NUMBER >= 0x10100000L
> ++#if OPENSSL_VERSION_NUMBER >= 0x10100000L &&
> !defined(LIBRESSL_VERSION_NUMBER)
> + nid = X509_get_signature_nid(cert);
> + #else
> + nid = OBJ_obj2nid(cert->cert_info->key->algor->algorithm);
> + #endif
> + if ((nid == NID_md5WithRSAEncryption) || (nid ==
> NID_shaWithRSAEncryption)) {
> +-#if OPENSSL_VERSION_NUMBER >= 0x10100000L
> ++#if OPENSSL_VERSION_NUMBER >= 0x10100000L &&
> !defined(LIBRESSL_VERSION_NUMBER)
> + // fprintf(stderr, "[ERROR] the current experimental openssl-1.1 support
> in hydra does not support RDP :( \n");
> + // hydra_child_exit(2);
> + X509_ALGOR *algor = X509_get0_tbs_sigalg(cert);
> +@@ -954,7 +954,7 @@ void ssl_rkey_free(SSL_RKEY * rkey) {
> + int ssl_rkey_get_exp_mod(SSL_RKEY * rkey, uint8 * exponent, uint32
> max_exp_len, uint8 * modulus, uint32 max_mod_len) {
> + int len;
> +
> +-#if OPENSSL_VERSION_NUMBER >= 0x10100000L
> ++#if OPENSSL_VERSION_NUMBER >= 0x10100000L &&
> !defined(LIBRESSL_VERSION_NUMBER)
> + BIGNUM *n, *e, *d;
> +
> + n = BN_new();
> +@@ -987,7 +987,7 @@ BOOL ssl_sig_ok(uint8 * exponent, uint32 exp_len, uint
> +
> +
> + void ssl_hmac_md5(const void *key, int key_len, const unsigned char *msg,
> int msg_len, unsigned char *md) {
> +-#if OPENSSL_VERSION_NUMBER >= 0x10100000L
> ++#if OPENSSL_VERSION_NUMBER >= 0x10100000L &&
> !defined(LIBRESSL_VERSION_NUMBER)
> + HMAC_CTX *ctx;
> + ctx = HMAC_CTX_new();
> + HMAC(EVP_md5(), key, key_len, msg, msg_len, md, NULL);
> Index: patches/patch-hydra-smb_c
> ===================================================================
> RCS file: patches/patch-hydra-smb_c
> diff -N patches/patch-hydra-smb_c
> --- patches/patch-hydra-smb_c 21 Nov 2015 14:16:33 -0000 1.2
> +++ /dev/null 1 Jan 1970 00:00:00 -0000
> @@ -1,26 +0,0 @@
> -$OpenBSD: patch-hydra-smb_c,v 1.2 2015/11/21 14:16:33 rpointel Exp $
> ---- hydra-smb.c.orig Sun Dec 7 15:50:24 2014
> -+++ hydra-smb.c Wed Nov 18 17:38:00 2015
> -@@ -176,17 +176,17 @@ static void MakeKey(unsigned char *key, unsigned char
> - des_key[6] = Get7Bits(key, 42);
> - des_key[7] = Get7Bits(key, 49);
> -
> -- des_set_odd_parity((des_cblock *) des_key);
> -+ DES_set_odd_parity((DES_cblock *) des_key);
> - }
> -
> - /* Do the DesEncryption */
> - void DesEncrypt(unsigned char *clear, unsigned char *key, unsigned char
> *cipher) {
> -- des_cblock des_key;
> -- des_key_schedule key_schedule;
> -+ DES_cblock des_key;
> -+ DES_key_schedule key_schedule;
> -
> - MakeKey(key, des_key);
> -- des_set_key(&des_key, key_schedule);
> -- des_ecb_encrypt((des_cblock *) clear, (des_cblock *) cipher,
> key_schedule, 1);
> -+ DES_set_key(&des_key, &key_schedule);
> -+ DES_ecb_encrypt((DES_cblock *) clear, (DES_cblock *) cipher,
> &key_schedule, 1);
> - }
> -
> - /*
> Index: patches/patch-hydra-snmp_c
> ===================================================================
> RCS file: patches/patch-hydra-snmp_c
> diff -N patches/patch-hydra-snmp_c
> --- patches/patch-hydra-snmp_c 21 Nov 2015 14:16:33 -0000 1.1
> +++ /dev/null 1 Jan 1970 00:00:00 -0000
> @@ -1,29 +0,0 @@
> -$OpenBSD: patch-hydra-snmp_c,v 1.1 2015/11/21 14:16:33 rpointel Exp $
> ---- hydra-snmp.c.orig Sun Dec 7 15:50:24 2014
> -+++ hydra-snmp.c Wed Nov 18 17:38:00 2015
> -@@ -335,13 +335,13 @@ int start_snmp(int s, char *ip, int port, unsigned cha
> - // xor initVect with salt
> - for (i = 0; i < 8; i++)
> - initVect[i] ^= privacy_params[i];
> -- des_key_sched((C_Block *) key, symcbc);
> -- des_ncbc_encrypt(snmpv3_get2 + 2, buf, sizeof(snmpv3_get2) - 2,
> symcbc, (C_Block *) (initVect), DES_ENCRYPT);
> -+ DES_key_sched((DES_cblock *) key, &symcbc);
> -+ DES_ncbc_encrypt(snmpv3_get2 + 2, buf, sizeof(snmpv3_get2) - 2,
> &symcbc, (DES_cblock *) (initVect), DES_ENCRYPT);
> -
> - #endif
> -
> - /* for (i = 0; i <= sizeof(snmpv3_get2) - 8; i += 8) {
> -- des_ncbc_encrypt(snmpv3_get2 + i, buf + i, 8, (C_Block*)(initVect),
> DES_ENCRYPT);
> -+ DES_ncbc_encrypt(snmpv3_get2 + i, buf + i, 8, (DES_cblock*)(initVect),
> DES_ENCRYPT);
> - }
> - // last part of buffer
> - if (buffer_len % 8) {
> -@@ -351,7 +351,7 @@ int start_snmp(int s, char *ip, int port, unsigned cha
> - memset(tmp_buf, 0, 8);
> - for (unsigned int l = start; l < buffer_len; l++)
> - *tmp_buf_ptr++ = buffer[l];
> -- des_ncbc_encrypt(tmp_buf, buf + start, 1, symcbc, (C_Block*)(initVect),
> DES_ENCRYPT);
> -+ DES_ncbc_encrypt(tmp_buf, buf + start, 1, &symcbc,
> (DES_cblock*)(initVect), DES_ENCRYPT);
> - *out_buffer_len = buffer_len + 8 - (buffer_len % 8);
> - } else
> - *out_buffer_len = buffer_len;
> Index: pkg/PLIST-main
> ===================================================================
> RCS file: /cvs/ports/security/hydra/pkg/PLIST-main,v
> retrieving revision 1.3
> diff -u -p -u -p -r1.3 PLIST-main
> --- pkg/PLIST-main 5 Nov 2011 15:24:39 -0000 1.3
> +++ pkg/PLIST-main 17 Oct 2016 19:10:41 -0000
> @@ -1,8 +1,13 @@
> @comment $OpenBSD: PLIST-main,v 1.3 2011/11/05 15:24:39 nigel Exp $
> @pkgpath security/hydra
> +bin/dpl4hydra.sh
> @bin bin/hydra
> +bin/hydra-wizard.sh
> @bin bin/pw-inspector
> @man man/man1/hydra.1
> @man man/man1/pw-inspector.1
> share/doc/hydra/
> +share/doc/hydra/LICENSE
> share/doc/hydra/README
> +share/doc/hydra/dpl4hydra_full.csv
> +share/doc/hydra/dpl4hydra_local.csv