authftp: support tls en forçant l'utilisation de lftp

This commit is contained in:
Jephté Clain 2015-07-08 17:05:09 +04:00
parent 58e7f6fbbc
commit 3288999058
1 changed files with 7 additions and 0 deletions

View File

@ -25,6 +25,9 @@ OPTIONS
$scriptname -l -o -e -o 'mirror remote local' host login pass
Dans cet exemple, l'option -e de lftp est utilisée pour faire un miroir
local du répertoire remote.
--tls
Indiquer que la connexion se fera en TLS. Implique --lftp puisque ncftp
ne le supporte pas.
note: A cause d'une limitation de lftp, ce n'est pas possible de se connecter
automatiquement avec lftp si le mot de passe contient une virgule. A cause de la
@ -39,12 +42,14 @@ set_defaults authftp
noproxy="$AUTHFTP_PROXY_DISABLED"
lftp=
options=()
tls=
parse_opts "${PRETTYOPTS[@]}" \
--help '$exit_with display_help' \
-p,--proxy noproxy= \
-n,--noproxy noproxy=1 \
-l,--lftp lftp=1 \
-o:,--option: options \
--tls tls=1 \
@ args -- "$@" && set -- "${args[@]}" || die "$args"
[ -n "$noproxy" -o -n "$AUTHFTP_PROXY_HOST" ] || die "AUTHFTP_PROXY_HOST doit être défini"
@ -57,6 +62,8 @@ read_value -i "Entrez l'identifiant de connexion" login "$2"
read_value -i "Entrez le mot de passe" password "$3"
read_value -i "Entrez le chemin" path "$4" N
[ -n "$tls" ] && lftp=1
if [ -n "$lftp" ]; then
if [ -n "$noproxy" ]; then
exec lftp -u "$login,$password" "${options[@]}" "ftp://$host/$path"