File 2516-ssh-Better-error-checking-for-option-auth_methods.patch of Package erlang

From 242dddbc918c87571013e7e0acd29b4abbe12911 Mon Sep 17 00:00:00 2001
From: Hans Nilsson <hans@erlang.org>
Date: Wed, 10 May 2017 11:42:09 +0200
Subject: [PATCH 3/3] ssh: Better error checking for option 'auth_methods'

---
 lib/ssh/src/ssh_options.erl      | 11 ++++++++++-
 lib/ssh/test/ssh_basic_SUITE.erl |  7 ++-----
 2 files changed, 12 insertions(+), 6 deletions(-)

diff --git a/lib/ssh/src/ssh_options.erl b/lib/ssh/src/ssh_options.erl
index f98422c32..78f68dbcb 100644
--- a/lib/ssh/src/ssh_options.erl
+++ b/lib/ssh/src/ssh_options.erl
@@ -578,7 +578,16 @@ default(common) ->
 
       {auth_methods, def} =>
           #{default => ?SUPPORTED_AUTH_METHODS,
-            chk => fun check_string/1,
+            chk => fun(As) ->
+                           try
+                               Sup = string:tokens(?SUPPORTED_AUTH_METHODS, ","),
+                               New = string:tokens(As, ","),
+                               [] == [X || X <- New,
+                                           not lists:member(X,Sup)]
+                           catch
+                               _:_ -> false
+                           end
+                   end,
             class => user_options
            },
 
diff --git a/lib/ssh/test/ssh_basic_SUITE.erl b/lib/ssh/test/ssh_basic_SUITE.erl
index b80c3ed5e..1e591bc29 100644
--- a/lib/ssh/test/ssh_basic_SUITE.erl
+++ b/lib/ssh/test/ssh_basic_SUITE.erl
@@ -1173,13 +1173,10 @@ login_bad_pwd_no_retry3(Config) ->
     login_bad_pwd_no_retry(Config, "password,publickey,keyboard-interactive").
 
 login_bad_pwd_no_retry4(Config) ->
-    login_bad_pwd_no_retry(Config, "password,other,keyboard-interactive").
+    login_bad_pwd_no_retry(Config, "password,keyboard-interactive").
 
 login_bad_pwd_no_retry5(Config) ->
-    login_bad_pwd_no_retry(Config, "password,other,keyboard-interactive,password,password").
-
-
-
+    login_bad_pwd_no_retry(Config, "password,keyboard-interactive,password,password").
 
 
 login_bad_pwd_no_retry(Config, AuthMethods) ->
-- 
2.13.0

openSUSE Build Service is sponsored by