diff -Nru libconfig-model-openssh-perl-1.239/Build.PL libconfig-model-openssh-perl-1.241/Build.PL --- libconfig-model-openssh-perl-1.239/Build.PL 2018-05-08 17:21:36.000000000 +0000 +++ libconfig-model-openssh-perl-1.241/Build.PL 2018-12-01 09:44:58.000000000 +0000 @@ -80,7 +80,7 @@ }, 'requires' => { 'Carp' => '0', - 'Config::Model' => '2.123', + 'Config::Model' => '2.128', 'Config::Model::Backend::Any' => '0', 'File::Copy' => '0', 'File::HomeDir' => '0', diff -Nru libconfig-model-openssh-perl-1.239/Changes libconfig-model-openssh-perl-1.241/Changes --- libconfig-model-openssh-perl-1.239/Changes 2018-05-08 17:21:36.000000000 +0000 +++ libconfig-model-openssh-perl-1.241/Changes 2018-12-01 09:44:58.000000000 +0000 @@ -1,3 +1,18 @@ +1.241 2018-12-01 + + * Tests require Config::Model 2.128 (gh #4) + +1.240 2018-11-30 + + Fix behavior of 'cme -force' so user can load ssh config files + containing errors: + * allow force load when Match block contain bad data + * propagate 'check' when setting check_list parameter + (require Config::Model 2.127) + + Model update: + * PortForward parameter: port must be alphanumeric + 1.239 2018-05-08 * OpenSsh backend: fix backend (broke with Config::Model 2.123, diff -Nru libconfig-model-openssh-perl-1.239/debian/changelog libconfig-model-openssh-perl-1.241/debian/changelog --- libconfig-model-openssh-perl-1.239/debian/changelog 2018-05-09 08:10:38.000000000 +0000 +++ libconfig-model-openssh-perl-1.241/debian/changelog 2018-12-09 18:41:00.000000000 +0000 @@ -1,3 +1,18 @@ +libconfig-model-openssh-perl (1.241-1) unstable; urgency=medium + + [ Salvatore Bonaccorso ] + * Update Vcs-* headers for switch to salsa.debian.org + + [ Dominique Dumont ] + * New upstream version 1.241 + * Fix behavior of 'cme -force' so user can load ssh config files + containing errors. + * Model update: PortForward parameter: port must be alphanumeric + * control: depends on libconfig-model-perl >= 2.128 + * control: declare compliance with version 4.2.1 + + -- Dominique Dumont Sun, 09 Dec 2018 19:41:00 +0100 + libconfig-model-openssh-perl (1.239-1) unstable; urgency=medium [ Damyan Ivanov ] diff -Nru libconfig-model-openssh-perl-1.239/debian/control libconfig-model-openssh-perl-1.241/debian/control --- libconfig-model-openssh-perl-1.239/debian/control 2018-05-09 08:10:38.000000000 +0000 +++ libconfig-model-openssh-perl-1.241/debian/control 2018-12-09 18:41:00.000000000 +0000 @@ -8,11 +8,11 @@ Build-Depends: debhelper (>= 9), libmodule-build-perl Build-Depends-Indep: libconfig-model-tester-perl (>= 3.006), - libconfig-model-perl (>= 2.123), + libconfig-model-perl (>= 2.128), libfile-homedir-perl, liblog-log4perl-perl, libmouse-perl -Standards-Version: 4.1.4 +Standards-Version: 4.2.1 Vcs-Browser: https://salsa.debian.org/perl-team/modules/packages/libconfig-model-openssh-perl Vcs-Git: https://salsa.debian.org/perl-team/modules/packages/libconfig-model-openssh-perl.git Homepage: https://metacpan.org/release/Config-Model-OpenSsh @@ -22,7 +22,7 @@ Depends: ${misc:Depends}, ${perl:Depends}, cme, - libconfig-model-perl (>= 2.123), + libconfig-model-perl (>= 2.128), libfile-homedir-perl, liblog-log4perl-perl, libmouse-perl diff -Nru libconfig-model-openssh-perl-1.239/lib/Config/Model/Backend/OpenSsh/Sshd.pm libconfig-model-openssh-perl-1.241/lib/Config/Model/Backend/OpenSsh/Sshd.pm --- libconfig-model-openssh-perl-1.239/lib/Config/Model/Backend/OpenSsh/Sshd.pm 2018-05-08 17:21:36.000000000 +0000 +++ libconfig-model-openssh-perl-1.241/lib/Config/Model/Backend/OpenSsh/Sshd.pm 2018-12-01 09:44:58.000000000 +0000 @@ -8,7 +8,7 @@ # The GNU Lesser General Public License, Version 2.1, February 1999 # package Config::Model::Backend::OpenSsh::Sshd ; -$Config::Model::Backend::OpenSsh::Sshd::VERSION = '1.239'; +$Config::Model::Backend::OpenSsh::Sshd::VERSION = '1.241'; use Mouse ; extends "Config::Model::Backend::OpenSsh" ; @@ -20,54 +20,8 @@ my $logger = Log::Log4perl::get_logger("Backend::OpenSsh"); -sub _host { - my ($self,$root,$patterns,$comment) = @_; - $logger->debug("host: pattern @$patterns # $comment"); - my $hash_obj = $root->fetch_element('Host'); - - $logger->info("ssh: load host patterns '".join("','", @$patterns)."'"); - - $self->current_node = $hash_obj->fetch_with_id("@$patterns"); -} - -sub _forward { - my ($self,$root,$key,$args,$comment) = @_; - $logger->debug("forward: $key @$args # $comment"); - $self->current_node($root) unless defined $self->current_node ; - - my $elt_name = $key =~ /local/i ? 'Localforward' : 'RemoteForward' ; - my $size = $self->current_node->fetch_element($key)->fetch_size; - - $logger->info("ssh: load $key '".join("','", @$args)."'"); - - my $v6 = ($args->[1] =~ m![/\[\]]!) ? 1 : 0; - - # cleanup possible square brackets used for IPv6 - foreach (@$args) { - s/[\[\]]+//g; - } - - # reverse enable to assign string to port even if no bind_adress - # is specified - my $re = $v6 ? qr!/! : qr!:! ; - my ($port,$bind_adr ) = reverse split $re,$args->[0] ; - my ($host,$host_port) = split $re,$args->[1] ; - - my $load_str = ''; - $load_str .= "GatewayPorts=1 " if $bind_adr ; - - $load_str .= "$key:$size "; - - $load_str .= 'ipv6=1 ' if $v6 ; - - $load_str .= "bind_address=$bind_adr " if defined $bind_adr ; - $load_str .= "port=$port host=$host hostport=$host_port"; - - $self->current_node -> load($load_str) ; -} - sub match { - my ($self,$root, $key, $pairs,$comment) = @_ ; + my ($self, $root, $key, $pairs, $comment, $check) = @_ ; $logger->debug("match: @$pairs # $comment"); my $list_obj = $root->fetch_element('Match'); @@ -79,7 +33,10 @@ while (@$pairs) { my $criteria = shift @$pairs; my $pattern = shift @$pairs; - $block_obj->load(qq!Condition $criteria="$pattern"!); + $block_obj->load( + steps => qq!Condition $criteria="$pattern"!, + check => $check, + ); } $self->current_node( $block_obj->fetch_element('Settings') ); @@ -171,7 +128,7 @@ =head1 VERSION -version 1.239 +version 1.241 =head1 SYNOPSIS @@ -179,29 +136,9 @@ =head1 DESCRIPTION -This calls provides a backend to read and write sshd client configuration files. - -=head1 STOP - -The documentation provides on the reader and writer of OpenSsh configuration files. -These details are not needed for the basic usages explained in L. - -=head1 Methods - -These read/write functions are part of C read/write backend. -They are -declared in sshd configuration model and are called back when needed to read the -configuration file and write it back. - -=head2 read (object => , config_dir => ...) - -Read F in C and load the data in the -C configuration tree. - -=head2 write (object => , config_dir => ...) +This class provides a backend to read and write sshd client configuration files. -Write F in C from the data stored in -C configuration tree. +This class is a plugin for L. =head1 SEE ALSO diff -Nru libconfig-model-openssh-perl-1.239/lib/Config/Model/Backend/OpenSsh/Ssh.pm libconfig-model-openssh-perl-1.241/lib/Config/Model/Backend/OpenSsh/Ssh.pm --- libconfig-model-openssh-perl-1.239/lib/Config/Model/Backend/OpenSsh/Ssh.pm 2018-05-08 17:21:36.000000000 +0000 +++ libconfig-model-openssh-perl-1.241/lib/Config/Model/Backend/OpenSsh/Ssh.pm 2018-12-01 09:44:58.000000000 +0000 @@ -8,7 +8,7 @@ # The GNU Lesser General Public License, Version 2.1, February 1999 # package Config::Model::Backend::OpenSsh::Ssh ; -$Config::Model::Backend::OpenSsh::Ssh::VERSION = '1.239'; +$Config::Model::Backend::OpenSsh::Ssh::VERSION = '1.241'; use Mouse ; use 5.10.1; extends "Config::Model::Backend::OpenSsh" ; @@ -41,12 +41,11 @@ } sub forward { - my ($self,$root,$key,$args,$comment) = @_; + my ($self, $root, $key, $args, $comment, $check) = @_; $logger->debug("forward: $key @$args # $comment"); $self->current_node = $root unless defined $self->current_node ; my $elt_name = $key =~ /local/i ? 'Localforward' : 'RemoteForward' ; - my $size = $self->current_node->fetch_element($key)->fetch_size; my $v6 = ($args->[1] =~ m![/\[\]]!) ? 1 : 0; @@ -63,20 +62,22 @@ my ($port,$bind_adr ) = reverse split $re,$args->[0] ; my ($host,$host_port) = split $re,$args->[1] ; - my $load_str = ''; - $load_str .= "GatewayPorts=1 " if $bind_adr ; - my $note = $comment || '' ; - $note =~ s/"/\\"/g; - $note = qq!#"$note"! if $note ; - $load_str .= "$key:$size$note "; + my $fw_list = $self->current_node->fetch_element($key); + my $size = $fw_list->fetch_size; + # this creates a new node in the list + my $fw_obj = $fw_list->fetch_with_id($size); + + # $fw_obj->store_element_value( GatewayPorts => 1 ) if $bind_adr ; + $fw_obj->annotation($comment) if $comment; + + $fw_obj->store_element_value( ipv6 => 1) if $v6 ; + + $fw_obj->store_element_value( check => $check, name => 'bind_address', value => $bind_adr) + if defined $bind_adr ; + $fw_obj->store_element_value( check => $check, name => 'port', value => $port ); + $fw_obj->store_element_value( check => $check, name => 'host', value => $host ); + $fw_obj->store_element_value( check => $check, name => 'hostport', value => $host_port ); - $load_str .= 'ipv6=1 ' if $v6 ; - - $load_str .= "bind_address=$bind_adr " if defined $bind_adr ; - $load_str .= "port=$port host=$host hostport=$host_port"; - - $logger->debug("load string $load_str") ; - $self->current_node -> load($load_str) ; } sub write_all_host_block { @@ -145,7 +146,7 @@ =head1 VERSION -version 1.239 +version 1.241 =head1 SYNOPSIS diff -Nru libconfig-model-openssh-perl-1.239/lib/Config/Model/Backend/OpenSsh.pm libconfig-model-openssh-perl-1.241/lib/Config/Model/Backend/OpenSsh.pm --- libconfig-model-openssh-perl-1.239/lib/Config/Model/Backend/OpenSsh.pm 2018-05-08 17:21:36.000000000 +0000 +++ libconfig-model-openssh-perl-1.241/lib/Config/Model/Backend/OpenSsh.pm 2018-12-01 09:44:58.000000000 +0000 @@ -8,10 +8,10 @@ # The GNU Lesser General Public License, Version 2.1, February 1999 # package Config::Model::Backend::OpenSsh ; -$Config::Model::Backend::OpenSsh::VERSION = '1.239'; +$Config::Model::Backend::OpenSsh::VERSION = '1.241'; use 5.10.1; -use Config::Model 2.123; +use Config::Model 2.128; use Mouse ; extends "Config::Model::Backend::Any" ; @@ -119,19 +119,19 @@ $elt->annotation($comment) if $comment and $type ne 'hash'; if ($type eq 'leaf') { - $elt->store( join(' ',@$arg) ) ; + $elt->store( value => join(' ',@$arg), check => $check ) ; } elsif ($type eq 'list') { - $elt->push ( @$arg ) ; + $elt->push_x ( values => $arg, check => $check ) ; } elsif ($type eq 'hash') { my $hv = $elt->fetch_with_id($arg->[0]); - $hv->store( $arg->[1] ); + $hv->store( value => $arg->[1], check => $check ); $hv->annotation($comment) if $comment; } elsif ($type eq 'check_list') { - my @check = split /,/,$arg->[0] ; - $elt->set_checked_list (@check) ; + my @check = split /\s*,\s*/,$arg->[0] ; + $elt->set_checked_list (\@check, check => 'skip') ; } else { die "OpenSsh::assign did not expect $type for $key\n"; @@ -237,7 +237,7 @@ =head1 VERSION -version 1.239 +version 1.241 =head1 SYNOPSIS diff -Nru libconfig-model-openssh-perl-1.239/lib/Config/Model/models/Ssh/PortForward.pl libconfig-model-openssh-perl-1.241/lib/Config/Model/models/Ssh/PortForward.pl --- libconfig-model-openssh-perl-1.239/lib/Config/Model/models/Ssh/PortForward.pl 2018-05-08 17:21:36.000000000 +0000 +++ libconfig-model-openssh-perl-1.241/lib/Config/Model/models/Ssh/PortForward.pl 2018-12-01 09:44:58.000000000 +0000 @@ -15,7 +15,7 @@ 'class_description' => 'Configuration class that represents the parameters required to specify port forwarding in a ssh configuration.', 'copyright' => [ - '2009-2011 Dominique Dumont' + '2009-2018 Dominique Dumont' ], 'element' => [ 'ipv6', @@ -39,6 +39,7 @@ { 'description' => 'Listening port. Connection made to this port will be forwarded to the other side of the tunnel.', 'mandatory' => '1', + 'match' => '^\\w+$', 'type' => 'leaf', 'value_type' => 'uniline' }, @@ -53,6 +54,7 @@ { 'description' => 'Port number to connect the tunnel to.', 'mandatory' => '1', + 'match' => '^\\w+$', 'summary' => 'destination port', 'type' => 'leaf', 'value_type' => 'uniline' diff -Nru libconfig-model-openssh-perl-1.239/lib/Config/Model/models/Ssh/PortForward.pod libconfig-model-openssh-perl-1.241/lib/Config/Model/models/Ssh/PortForward.pod --- libconfig-model-openssh-perl-1.239/lib/Config/Model/models/Ssh/PortForward.pod 2018-05-08 17:21:36.000000000 +0000 +++ libconfig-model-openssh-perl-1.241/lib/Config/Model/models/Ssh/PortForward.pod 2018-12-01 09:44:58.000000000 +0000 @@ -63,7 +63,7 @@ =over -=item 2009-2011 Dominique Dumont +=item 2009-2018 Dominique Dumont =back diff -Nru libconfig-model-openssh-perl-1.239/lib/Config/Model/OpenSsh.pm libconfig-model-openssh-perl-1.241/lib/Config/Model/OpenSsh.pm --- libconfig-model-openssh-perl-1.239/lib/Config/Model/OpenSsh.pm 2018-05-08 17:21:36.000000000 +0000 +++ libconfig-model-openssh-perl-1.241/lib/Config/Model/OpenSsh.pm 2018-12-01 09:44:58.000000000 +0000 @@ -8,7 +8,7 @@ # The GNU Lesser General Public License, Version 2.1, February 1999 # package Config::Model::OpenSsh ; -$Config::Model::OpenSsh::VERSION = '1.239'; +$Config::Model::OpenSsh::VERSION = '1.241'; use Config::Model 2.111; 1; @@ -27,7 +27,7 @@ =head1 VERSION -version 1.239 +version 1.241 =head1 SYNOPSIS @@ -49,7 +49,6 @@ This code snippet will remove the C section added above: use Config::Model ; - use Log::Log4perl qw(:easy) ; my $model = Config::Model -> new ( ) ; my $inst = $model->instance (root_class_name => 'Ssh'); $inst -> config_root ->load("Host~Foo") ; diff -Nru libconfig-model-openssh-perl-1.239/MANIFEST libconfig-model-openssh-perl-1.241/MANIFEST --- libconfig-model-openssh-perl-1.239/MANIFEST 2018-05-08 17:21:36.000000000 +0000 +++ libconfig-model-openssh-perl-1.241/MANIFEST 2018-12-01 09:44:58.000000000 +0000 @@ -36,11 +36,16 @@ t/README.md t/custom_sshd.t t/custom_sshd_match.t +t/model_tests.d/ssh-examples/bad-forward/system_ssh_config +t/model_tests.d/ssh-examples/bad-forward/user_ssh_config +t/model_tests.d/ssh-examples/bad-pref-auth/system_ssh_config +t/model_tests.d/ssh-examples/bad-pref-auth/user_ssh_config t/model_tests.d/ssh-examples/basic/system_ssh_config t/model_tests.d/ssh-examples/basic/user_ssh_config t/model_tests.d/ssh-examples/legacy/system_ssh_config t/model_tests.d/ssh-examples/legacy/user_ssh_config t/model_tests.d/ssh-test-conf.pl +t/model_tests.d/sshd-examples/bad-password-authentication/system_sshd_config t/model_tests.d/sshd-examples/debian-bug-671367/system_sshd_config t/model_tests.d/sshd-test-conf.pl t/model_tests.d/system-ssh-examples/basic/system_ssh_config diff -Nru libconfig-model-openssh-perl-1.239/META.json libconfig-model-openssh-perl-1.241/META.json --- libconfig-model-openssh-perl-1.239/META.json 2018-05-08 17:21:36.000000000 +0000 +++ libconfig-model-openssh-perl-1.241/META.json 2018-12-01 09:44:58.000000000 +0000 @@ -10,7 +10,7 @@ ], "meta-spec" : { "url" : "http://search.cpan.org/perldoc?CPAN::Meta::Spec", - "version" : "2" + "version" : 2 }, "name" : "Config-Model-OpenSsh", "prereqs" : { @@ -31,7 +31,7 @@ }, "requires" : { "Carp" : "0", - "Config::Model" : "2.123", + "Config::Model" : "2.128", "Config::Model::Backend::Any" : "0", "File::Copy" : "0", "File::HomeDir" : "0", @@ -68,8 +68,8 @@ "web" : "http://github.com/dod38fr/config-model-openssh.git" } }, - "version" : "1.239", - "x_generated_by_perl" : "v5.26.2", - "x_serialization_backend" : "JSON::XS version 3.04" + "version" : "1.241", + "x_generated_by_perl" : "v5.28.0", + "x_serialization_backend" : "Cpanel::JSON::XS version 4.07" } diff -Nru libconfig-model-openssh-perl-1.239/META.yml libconfig-model-openssh-perl-1.241/META.yml --- libconfig-model-openssh-perl-1.239/META.yml 2018-05-08 17:21:36.000000000 +0000 +++ libconfig-model-openssh-perl-1.241/META.yml 2018-12-01 09:44:58.000000000 +0000 @@ -26,7 +26,7 @@ Config::Model::TkUI: '0' requires: Carp: '0' - Config::Model: '2.123' + Config::Model: '2.128' Config::Model::Backend::Any: '0' File::Copy: '0' File::HomeDir: '0' @@ -39,6 +39,6 @@ bugtracker: https://github.com/dod38fr/config-model-openssh/issues homepage: https://github.com/dod38fr/config-model/wiki repository: git://github.com/dod38fr/config-model-openssh.git -version: '1.239' -x_generated_by_perl: v5.26.2 +version: '1.241' +x_generated_by_perl: v5.28.0 x_serialization_backend: 'YAML::Tiny version 1.73' diff -Nru libconfig-model-openssh-perl-1.239/README.pod libconfig-model-openssh-perl-1.241/README.pod --- libconfig-model-openssh-perl-1.239/README.pod 2018-05-08 17:21:36.000000000 +0000 +++ libconfig-model-openssh-perl-1.241/README.pod 2018-12-01 09:44:58.000000000 +0000 @@ -101,10 +101,6 @@ L -=item * - -L - =back =head1 Installation from git diff -Nru libconfig-model-openssh-perl-1.239/t/model_tests.d/sshd-examples/bad-password-authentication/system_sshd_config libconfig-model-openssh-perl-1.241/t/model_tests.d/sshd-examples/bad-password-authentication/system_sshd_config --- libconfig-model-openssh-perl-1.239/t/model_tests.d/sshd-examples/bad-password-authentication/system_sshd_config 1970-01-01 00:00:00.000000000 +0000 +++ libconfig-model-openssh-perl-1.241/t/model_tests.d/sshd-examples/bad-password-authentication/system_sshd_config 2018-12-01 09:44:58.000000000 +0000 @@ -0,0 +1,6 @@ + +# see also https://www.blog-libre.org/2015/11/21/loption-match-de-sshd_config/ + +Match Address 192.168.0.0/24,192.168.1.4 +PasswordAuthentication blork +PermitRootLogin no \ No newline at end of file diff -Nru libconfig-model-openssh-perl-1.239/t/model_tests.d/sshd-test-conf.pl libconfig-model-openssh-perl-1.241/t/model_tests.d/sshd-test-conf.pl --- libconfig-model-openssh-perl-1.239/t/model_tests.d/sshd-test-conf.pl 2018-05-08 17:21:36.000000000 +0000 +++ libconfig-model-openssh-perl-1.241/t/model_tests.d/sshd-test-conf.pl 2018-12-01 09:44:58.000000000 +0000 @@ -31,6 +31,18 @@ $target , qr!/etc/ssh/userkeys/%u /var/lib/misc/userkeys2/%u! , } }, + { + # test that check value is indeed passed when loading Match block + # that contain a bad value. The bad value is skipped. + name => 'bad-password-authentication', + setup => { + 'system_sshd_config' => $map, + }, + load_check => 'skip', + check => { + 'Match:0 Settings PermitRootLogin' => 'no', + } + } ); 1; diff -Nru libconfig-model-openssh-perl-1.239/t/model_tests.d/ssh-examples/bad-forward/system_ssh_config libconfig-model-openssh-perl-1.241/t/model_tests.d/ssh-examples/bad-forward/system_ssh_config --- libconfig-model-openssh-perl-1.239/t/model_tests.d/ssh-examples/bad-forward/system_ssh_config 1970-01-01 00:00:00.000000000 +0000 +++ libconfig-model-openssh-perl-1.241/t/model_tests.d/ssh-examples/bad-forward/system_ssh_config 2018-12-01 09:44:58.000000000 +0000 @@ -0,0 +1,11 @@ +# Site-wide defaults for some commonly used options. For a comprehensive +# list of available options, their meanings and defaults, please see the +# ssh_config(5) man page. + +Host * + Port 22 + Ciphers 3des-cbc + SendEnv LANG LC_* + HashKnownHosts yes + GSSAPIAuthentication yes + GSSAPIDelegateCredentials no diff -Nru libconfig-model-openssh-perl-1.239/t/model_tests.d/ssh-examples/bad-forward/user_ssh_config libconfig-model-openssh-perl-1.241/t/model_tests.d/ssh-examples/bad-forward/user_ssh_config --- libconfig-model-openssh-perl-1.239/t/model_tests.d/ssh-examples/bad-forward/user_ssh_config 1970-01-01 00:00:00.000000000 +0000 +++ libconfig-model-openssh-perl-1.241/t/model_tests.d/ssh-examples/bad-forward/user_ssh_config 2018-12-01 09:44:58.000000000 +0000 @@ -0,0 +1,7 @@ +Host foo.*,*.bar + +# bad value test check propagation in LocalForward or RemoteForward element +LocalForward 20022+ 10.3.244.4:22 + +# IPv6 example +LocalForward all.com/22080 2001:0db8:85a3:0000:0000:8a2e:0370:7334/80 diff -Nru libconfig-model-openssh-perl-1.239/t/model_tests.d/ssh-examples/bad-pref-auth/system_ssh_config libconfig-model-openssh-perl-1.241/t/model_tests.d/ssh-examples/bad-pref-auth/system_ssh_config --- libconfig-model-openssh-perl-1.239/t/model_tests.d/ssh-examples/bad-pref-auth/system_ssh_config 1970-01-01 00:00:00.000000000 +0000 +++ libconfig-model-openssh-perl-1.241/t/model_tests.d/ssh-examples/bad-pref-auth/system_ssh_config 2018-12-01 09:44:58.000000000 +0000 @@ -0,0 +1,11 @@ +# Site-wide defaults for some commonly used options. For a comprehensive +# list of available options, their meanings and defaults, please see the +# ssh_config(5) man page. + +Host * + Port 22 + Ciphers 3des-cbc + SendEnv LANG LC_* + HashKnownHosts yes + GSSAPIAuthentication yes + GSSAPIDelegateCredentials no diff -Nru libconfig-model-openssh-perl-1.239/t/model_tests.d/ssh-examples/bad-pref-auth/user_ssh_config libconfig-model-openssh-perl-1.241/t/model_tests.d/ssh-examples/bad-pref-auth/user_ssh_config --- libconfig-model-openssh-perl-1.239/t/model_tests.d/ssh-examples/bad-pref-auth/user_ssh_config 1970-01-01 00:00:00.000000000 +0000 +++ libconfig-model-openssh-perl-1.241/t/model_tests.d/ssh-examples/bad-pref-auth/user_ssh_config 2018-12-01 09:44:58.000000000 +0000 @@ -0,0 +1,4 @@ +Host foo + +# bad value test check propagation in elements of type check_list +PreferredAuthentications hostbased,publickeys diff -Nru libconfig-model-openssh-perl-1.239/t/model_tests.d/ssh-test-conf.pl libconfig-model-openssh-perl-1.241/t/model_tests.d/ssh-test-conf.pl --- libconfig-model-openssh-perl-1.239/t/model_tests.d/ssh-test-conf.pl 2018-05-08 17:21:36.000000000 +0000 +++ libconfig-model-openssh-perl-1.241/t/model_tests.d/ssh-test-conf.pl 2018-12-01 09:44:58.000000000 +0000 @@ -19,6 +19,7 @@ $model_to_test = "Ssh"; +# Ssh backend excepts both system and user files my @setup = ( setup => { 'system_ssh_config' => { @@ -58,9 +59,24 @@ { name => 'legacy', @setup, - load_check => 'no', - load4perl_load_warnings => [ 'User', ( warn => qr/deprecated/) x 2, ], - } + load_check => 'skip', + log4perl_load_warnings => [ [ 'User', ( warn => qr/deprecated/) x 2, ] ], + }, + { + name => 'bad-forward', + @setup, + load_check => 'skip', + load => 'Host:"foo.*,*.bar" LocalForward:0 port=20022', + log4perl_load_warnings => [ [ 'User', warn => qr/value '20022\+' does not match regexp/ ] ], + }, + { + name => 'bad-pref-auth', + @setup, + load_check => 'skip', + log4perl_load_warnings => [ + [ 'User', ( warn => qr/Unknown check_list item/) , ] + ], + }, ); 1;