diff options
| -rw-r--r-- | security/sshpass/Makefile | 4 | ||||
| -rw-r--r-- | security/sshpass/distinfo | 5 | ||||
| -rw-r--r-- | security/sshpass/files/patch-configure.ac | 14 | ||||
| -rw-r--r-- | security/sshpass/files/patch-main.c | 77 | ||||
| -rw-r--r-- | security/sshpass/files/patch-sshpass.1 | 22 | ||||
| -rw-r--r-- | security/sshpass/pkg-descr | 2 | 
6 files changed, 13 insertions, 111 deletions
| diff --git a/security/sshpass/Makefile b/security/sshpass/Makefile index b9425e7d01a3..79aeefe6c9e5 100644 --- a/security/sshpass/Makefile +++ b/security/sshpass/Makefile @@ -2,8 +2,7 @@  # $FreeBSD$  PORTNAME=	sshpass -PORTVERSION=	1.05 -PORTREVISION=	1 +PORTVERSION=	1.06  CATEGORIES=	security  MASTER_SITES=	SF/${PORTNAME}/sshpass/${PORTVERSION} @@ -11,6 +10,7 @@ MAINTAINER=	gaod@hychen.org  COMMENT=	Non-interactive ssh password auth tool  LICENSE=	GPLv2 +LICENSE_FILE=	${WRKSRC}/COPYING  USES=		autoreconf:env  GNU_CONFIGURE=	yes diff --git a/security/sshpass/distinfo b/security/sshpass/distinfo index 5449f4187041..6f95b60cd61a 100644 --- a/security/sshpass/distinfo +++ b/security/sshpass/distinfo @@ -1,2 +1,3 @@ -SHA256 (sshpass-1.05.tar.gz) = c3f78752a68a0c3f62efb3332cceea0c8a1f04f7cf6b46e00ec0c3000bc8483e -SIZE (sshpass-1.05.tar.gz) = 98362 +TIMESTAMP = 1484941121 +SHA256 (sshpass-1.06.tar.gz) = c6324fcee608b99a58f9870157dfa754837f8c48be3df0f5e2f3accf145dee60 +SIZE (sshpass-1.06.tar.gz) = 112205 diff --git a/security/sshpass/files/patch-configure.ac b/security/sshpass/files/patch-configure.ac deleted file mode 100644 index b6ba1fc401f2..000000000000 --- a/security/sshpass/files/patch-configure.ac +++ /dev/null @@ -1,14 +0,0 @@ ---- configure.ac.orig	2011-08-06 07:03:01 UTC -+++ configure.ac -@@ -32,6 +32,11 @@ AC_FUNC_SELECT_ARGTYPES - AC_TYPE_SIGNAL - AC_CHECK_FUNCS([select posix_openpt strdup]) -  -+AC_ARG_ENABLE([password-prompt], -+        [AS_HELP_STRING([--enable-password-prompt=prompt], [Provide alternative ssh password prompt to look for.])], -+        [AC_DEFINE_UNQUOTED([PASSWORD_PROMPT], ["$enable_password_prompt"], [Password prompt to use])], -+        [AC_DEFINE([PASSWORD_PROMPT], ["assword"])]) -+ - AC_CONFIG_FILES([Makefile]) - AM_CONFIG_HEADER(config.h) - AC_OUTPUT diff --git a/security/sshpass/files/patch-main.c b/security/sshpass/files/patch-main.c index f7aa90f1c241..3e1801e86909 100644 --- a/security/sshpass/files/patch-main.c +++ b/security/sshpass/files/patch-main.c @@ -1,78 +1,15 @@ ---- main.c.orig	2011-08-06 15:04:33.000000000 +0800 -+++ main.c	2016-01-30 22:17:43.489015000 +0800 -@@ -1,5 +1,5 @@ - /*  This file is part of "sshpass", a tool for batch running password ssh authentication -- *  Copyright (C) 2006 Lingnu Open Source Consulting Ltd. -+ *  Copyright (C) 2006, 2015 Lingnu Open Source Consulting Ltd. -  * -  *  This program is free software; you can redistribute it and/or modify -  *  it under the terms of the GNU General Public License as published by -@@ -69,6 +69,8 @@ - 	int fd; - 	const char *password; -     } pwsrc; -+ -+    const char *pwprompt; - } args; -  - static void show_help() -@@ -77,6 +79,7 @@ - 	    "   -f filename   Take password to use from file\n" - 	    "   -d number     Use number as file descriptor for getting password\n" - 	    "   -p password   Provide password as argument (security unwise)\n" -+            "   -P prompt     Which string should sshpass search for to detect a password prompt\n" - 	    "   -e            Password is passed as env-var \"SSHPASS\"\n" - 	    "   With no parameters - password will be taken from stdin\n\n" - 	    "   -h            Show help (this screen)\n" -@@ -99,7 +102,7 @@ -     fprintf(stderr, "Conflicting password source\n"); \ -     error=RETURN_CONFLICTING_ARGUMENTS; } -  --    while( (opt=getopt(argc, argv, "+f:d:p:heV"))!=-1 && error==-1 ) { -+    while( (opt=getopt(argc, argv, "+f:d:p:P:heV"))!=-1 && error==-1 ) { - 	switch( opt ) { - 	case 'f': - 	    // Password should come from a file -@@ -130,6 +133,9 @@ -                     optarg[i]='z'; -             } - 	    break; -+        case 'P': -+            args.pwprompt=optarg; -+            break; - 	case 'e': - 	    VIRGIN_PWTYPE; -  -@@ -265,6 +271,12 @@ +--- main.c.orig	2016-06-30 19:23:33 UTC ++++ main.c +@@ -280,6 +280,12 @@ int runprogram( int argc, char *argv[] )   	setsid();           // This line makes the ptty our controlling tty. We do not otherwise need it open           slavept=open(name, O_RDWR );  +#ifdef __FreeBSD__ -+	if (ioctl(slavept, TIOCSCTTY, NULL) == -1) { -+	    perror("sshpass: Failed to TIOCSCTTY"); -+	    exit(RETURN_RUNTIME_ERROR); -+	} ++        if (ioctl(slavept, TIOCSCTTY, NULL) == -1) { ++            perror("sshpass: Failed to TIOCSCTTY"); ++            exit(RETURN_RUNTIME_ERROR); ++        }  +#endif           close( slavept );   	close( masterpt ); -@@ -359,7 +371,7 @@ -     // We are looking for the string -     static int prevmatch=0; // If the "password" prompt is repeated, we have the wrong password. -     static int state1, state2; --    static const char compare1[]="assword:"; // Asking for a password -+    static const char *compare1=PASSWORD_PROMPT; // Asking for a password -     static const char compare2[]="The authenticity of host "; // Asks to authenticate host -     // static const char compare3[]="WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!"; // Warns about man in the middle attack -     // The remote identification changed error is sent to stderr, not the tty, so we do not handle it. -@@ -367,6 +379,10 @@ -     char buffer[40]; -     int ret=0; -  -+    if( args.pwprompt ) { -+        compare1 = args.pwprompt; -+    } -+ -     int numread=read(fd, buffer, sizeof(buffer) ); -  -     state1=match( compare1, buffer, numread, state1 ); diff --git a/security/sshpass/files/patch-sshpass.1 b/security/sshpass/files/patch-sshpass.1 deleted file mode 100644 index bb94b97ae126..000000000000 --- a/security/sshpass/files/patch-sshpass.1 +++ /dev/null @@ -1,22 +0,0 @@ ---- sshpass.1.orig	2011-08-06 06:58:25 UTC -+++ sshpass.1 -@@ -1,4 +1,4 @@ --.TH SSHPASS 1 "August 6, 2011" "Lingnu Open Source Consulting" "Sshpass User Manual" -+.TH SSHPASS 1 "April 24, 2015" "Lingnu Open Source Consulting" "Sshpass User Manual" - .\" Please adjust this date whenever revising the manpage. - .SH NAME - sshpass \- noninteractive ssh password provider -@@ -37,6 +37,13 @@ password is read from the open file desc - .TP - .B \-e - The password is taken from the environment variable "SSHPASS". -+.TP -+.B \-P -+Set the password prompt. Sshpass searched for this prompt in the program's -+output to the TTY as an indication when to send the password. By default -+sshpass looks for the string "assword:" (which matches both "Password:" and -+"password:"). If your client's prompt does not fall under either of these, -+you can override the default with this option. - .SH SECURITY CONSIDERATIONS - .P - First and foremost, users of sshpass should realize that ssh's insistance on diff --git a/security/sshpass/pkg-descr b/security/sshpass/pkg-descr index 2584e7286111..8c2cdb6eb94b 100644 --- a/security/sshpass/pkg-descr +++ b/security/sshpass/pkg-descr @@ -2,4 +2,4 @@ Sshpass is a tool for non-interactively performing password authentication  with SSH's so called "interactive keyboard password authentication".  Most user should use SSH's more secure public key authentication instead. -WWW: http://sourceforge.net/projects/sshpass/ +WWW: https://sourceforge.net/projects/sshpass/ | 
