Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package perl-Authen-SASL for 
openSUSE:Factory checked in at 2026-02-12 17:25:46
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/perl-Authen-SASL (Old)
 and      /work/SRC/openSUSE:Factory/.perl-Authen-SASL.new.1977 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "perl-Authen-SASL"

Thu Feb 12 17:25:46 2026 rev:32 rq:1332515 version:2.200.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/perl-Authen-SASL/perl-Authen-SASL.changes        
2025-08-25 20:37:28.198512079 +0200
+++ 
/work/SRC/openSUSE:Factory/.perl-Authen-SASL.new.1977/perl-Authen-SASL.changes  
    2026-02-12 17:26:21.532724433 +0100
@@ -1,0 +2,12 @@
+Thu Jan 29 06:01:08 UTC 2026 - Tina Müller <[email protected]>
+
+- updated to 2.200.0 (2.2000)
+   see /usr/share/doc/packages/perl-Authen-SASL/Changes
+
+  2.2000  2026-01-28
+    [Added]
+       - Documentation for the security layer
+    [Fixed]
+       - Several public functions missing from the API documentation
+
+-------------------------------------------------------------------

Old:
----
  Authen-SASL-2.1900.tar.gz

New:
----
  Authen-SASL-2.2000.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ perl-Authen-SASL.spec ++++++
--- /var/tmp/diff_new_pack.lFEX2c/_old  2026-02-12 17:26:22.052746494 +0100
+++ /var/tmp/diff_new_pack.lFEX2c/_new  2026-02-12 17:26:22.052746494 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package perl-Authen-SASL
 #
-# Copyright (c) 2025 SUSE LLC
+# Copyright (c) 2026 SUSE LLC and contributors
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -18,10 +18,10 @@
 
 %define cpan_name Authen-SASL
 Name:           perl-Authen-SASL
-Version:        2.190.0
+Version:        2.200.0
 Release:        0
-# 2.1900 -> normalize -> 2.190.0
-%define cpan_version 2.1900
+# 2.2000 -> normalize -> 2.200.0
+%define cpan_version 2.2000
 License:        Artistic-1.0 OR GPL-1.0-or-later
 Summary:        SASL Authentication framework
 URL:            https://metacpan.org/release/%{cpan_name}

++++++ Authen-SASL-2.1900.tar.gz -> Authen-SASL-2.2000.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Authen-SASL-2.1900/Changes 
new/Authen-SASL-2.2000/Changes
--- old/Authen-SASL-2.1900/Changes      2025-08-05 15:22:13.000000000 +0200
+++ new/Authen-SASL-2.2000/Changes      2026-01-28 23:00:00.000000000 +0100
@@ -1,4 +1,10 @@
 
+2.2000  2026-01-28
+  [Added]
+     - Documentation for the security layer
+  [Fixed]
+     - Several public functions missing from the API documentation
+
 2.1900  2025-08-05
   [Fixed]
     - CVE-2025-40918 (Insecure source of randomness),
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Authen-SASL-2.1900/LICENSE 
new/Authen-SASL-2.2000/LICENSE
--- old/Authen-SASL-2.1900/LICENSE      2025-08-05 15:22:13.000000000 +0200
+++ new/Authen-SASL-2.2000/LICENSE      2026-01-28 23:00:00.000000000 +0100
@@ -1,4 +1,4 @@
-This software is copyright (c) 2025 by Graham Barr <[email protected]>.
+This software is copyright (c) 2026 by Graham Barr <[email protected]>.
 
 This is free software; you can redistribute it and/or modify it under
 the same terms as the Perl 5 programming language system itself.
@@ -12,7 +12,7 @@
 
 --- The GNU General Public License, Version 1, February 1989 ---
 
-This software is Copyright (c) 2025 by Graham Barr <[email protected]>.
+This software is Copyright (c) 2026 by Graham Barr <[email protected]>.
 
 This is free software, licensed under:
 
@@ -272,7 +272,7 @@
 
 --- The Perl Artistic License 1.0 ---
 
-This software is Copyright (c) 2025 by Graham Barr <[email protected]>.
+This software is Copyright (c) 2026 by Graham Barr <[email protected]>.
 
 This is free software, licensed under:
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Authen-SASL-2.1900/MANIFEST 
new/Authen-SASL-2.2000/MANIFEST
--- old/Authen-SASL-2.1900/MANIFEST     2025-08-05 15:22:13.000000000 +0200
+++ new/Authen-SASL-2.2000/MANIFEST     2026-01-28 23:00:00.000000000 +0100
@@ -1,4 +1,4 @@
-# This file was automatically generated by Dist::Zilla::Plugin::Manifest 
v6.033.
+# This file was automatically generated by Dist::Zilla::Plugin::Manifest v6.037
 Changes
 LICENSE
 MANIFEST
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Authen-SASL-2.1900/META.json 
new/Authen-SASL-2.2000/META.json
--- old/Authen-SASL-2.1900/META.json    2025-08-05 15:22:13.000000000 +0200
+++ new/Authen-SASL-2.2000/META.json    2026-01-28 23:00:00.000000000 +0100
@@ -5,7 +5,7 @@
       "Erik Huelsmann <[email protected]>"
    ],
    "dynamic_config" : 0,
-   "generated_by" : "Dist::Zilla version 6.033, CPAN::Meta::Converter version 
2.150010",
+   "generated_by" : "Dist::Zilla version 6.037, CPAN::Meta::Converter version 
2.150010",
    "license" : [
       "perl_5"
    ],
@@ -48,58 +48,58 @@
    "provides" : {
       "Authen::SASL" : {
          "file" : "lib/Authen/SASL.pm",
-         "version" : "2.1900"
+         "version" : "2.2000"
       },
       "Authen::SASL::CRAM_MD5" : {
          "file" : "lib/Authen/SASL/CRAM_MD5.pm",
-         "version" : "2.1900",
+         "version" : "2.2000",
          "x_deprecated" : 1
       },
       "Authen::SASL::EXTERNAL" : {
          "file" : "lib/Authen/SASL/EXTERNAL.pm",
-         "version" : "2.1900"
+         "version" : "2.2000"
       },
       "Authen::SASL::Perl" : {
          "file" : "lib/Authen/SASL/Perl.pm",
-         "version" : "2.1900"
+         "version" : "2.2000"
       },
       "Authen::SASL::Perl::ANONYMOUS" : {
          "file" : "lib/Authen/SASL/Perl/ANONYMOUS.pm",
-         "version" : "2.1900"
+         "version" : "2.2000"
       },
       "Authen::SASL::Perl::CRAM_MD5" : {
          "file" : "lib/Authen/SASL/Perl/CRAM_MD5.pm",
-         "version" : "2.1900",
+         "version" : "2.2000",
          "x_deprecated" : 1
       },
       "Authen::SASL::Perl::DIGEST_MD5" : {
          "file" : "lib/Authen/SASL/Perl/DIGEST_MD5.pm",
-         "version" : "2.1900",
+         "version" : "2.2000",
          "x_deprecated" : 1
       },
       "Authen::SASL::Perl::EXTERNAL" : {
          "file" : "lib/Authen/SASL/Perl/EXTERNAL.pm",
-         "version" : "2.1900"
+         "version" : "2.2000"
       },
       "Authen::SASL::Perl::GSSAPI" : {
          "file" : "lib/Authen/SASL/Perl/GSSAPI.pm",
-         "version" : "2.1900"
+         "version" : "2.2000"
       },
       "Authen::SASL::Perl::LOGIN" : {
          "file" : "lib/Authen/SASL/Perl/LOGIN.pm",
-         "version" : "2.1900"
+         "version" : "2.2000"
       },
       "Authen::SASL::Perl::OAUTHBEARER" : {
          "file" : "lib/Authen/SASL/Perl/OAUTHBEARER.pm",
-         "version" : "2.1900"
+         "version" : "2.2000"
       },
       "Authen::SASL::Perl::PLAIN" : {
          "file" : "lib/Authen/SASL/Perl/PLAIN.pm",
-         "version" : "2.1900"
+         "version" : "2.2000"
       },
       "Authen::SASL::Perl::XOAUTH2" : {
          "file" : "lib/Authen/SASL/Perl/XOAUTH2.pm",
-         "version" : "2.1900"
+         "version" : "2.2000"
       }
    },
    "release_status" : "stable",
@@ -114,7 +114,7 @@
          "web" : "https://github.com/perl-authen-sasl/perl-authen-sasl/";
       }
    },
-   "version" : "2.1900",
+   "version" : "2.2000",
    "x_contributors" : [
       "Aditya Garg <[email protected]>",
       "Chris Ridd <[email protected]>",
@@ -130,7 +130,7 @@
       "openstrike <[email protected]>"
    ],
    "x_generated_by_perl" : "v5.38.2",
-   "x_serialization_backend" : "Cpanel::JSON::XS version 4.39",
+   "x_serialization_backend" : "Cpanel::JSON::XS version 4.40",
    "x_spdx_expression" : "Artistic-1.0-Perl OR GPL-1.0-or-later"
 }
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Authen-SASL-2.1900/META.yml 
new/Authen-SASL-2.2000/META.yml
--- old/Authen-SASL-2.1900/META.yml     2025-08-05 15:22:13.000000000 +0200
+++ new/Authen-SASL-2.2000/META.yml     2026-01-28 23:00:00.000000000 +0100
@@ -11,7 +11,7 @@
 configure_requires:
   ExtUtils::MakeMaker: '0'
 dynamic_config: 0
-generated_by: 'Dist::Zilla version 6.033, CPAN::Meta::Converter version 
2.150010'
+generated_by: 'Dist::Zilla version 6.037, CPAN::Meta::Converter version 
2.150010'
 license: perl
 meta-spec:
   url: http://module-build.sourceforge.net/META-spec-v1.4.html
@@ -20,46 +20,46 @@
 provides:
   Authen::SASL:
     file: lib/Authen/SASL.pm
-    version: '2.1900'
+    version: '2.2000'
   Authen::SASL::CRAM_MD5:
     file: lib/Authen/SASL/CRAM_MD5.pm
-    version: '2.1900'
+    version: '2.2000'
     x_deprecated: 1
   Authen::SASL::EXTERNAL:
     file: lib/Authen/SASL/EXTERNAL.pm
-    version: '2.1900'
+    version: '2.2000'
   Authen::SASL::Perl:
     file: lib/Authen/SASL/Perl.pm
-    version: '2.1900'
+    version: '2.2000'
   Authen::SASL::Perl::ANONYMOUS:
     file: lib/Authen/SASL/Perl/ANONYMOUS.pm
-    version: '2.1900'
+    version: '2.2000'
   Authen::SASL::Perl::CRAM_MD5:
     file: lib/Authen/SASL/Perl/CRAM_MD5.pm
-    version: '2.1900'
+    version: '2.2000'
     x_deprecated: 1
   Authen::SASL::Perl::DIGEST_MD5:
     file: lib/Authen/SASL/Perl/DIGEST_MD5.pm
-    version: '2.1900'
+    version: '2.2000'
     x_deprecated: 1
   Authen::SASL::Perl::EXTERNAL:
     file: lib/Authen/SASL/Perl/EXTERNAL.pm
-    version: '2.1900'
+    version: '2.2000'
   Authen::SASL::Perl::GSSAPI:
     file: lib/Authen/SASL/Perl/GSSAPI.pm
-    version: '2.1900'
+    version: '2.2000'
   Authen::SASL::Perl::LOGIN:
     file: lib/Authen/SASL/Perl/LOGIN.pm
-    version: '2.1900'
+    version: '2.2000'
   Authen::SASL::Perl::OAUTHBEARER:
     file: lib/Authen/SASL/Perl/OAUTHBEARER.pm
-    version: '2.1900'
+    version: '2.2000'
   Authen::SASL::Perl::PLAIN:
     file: lib/Authen/SASL/Perl/PLAIN.pm
-    version: '2.1900'
+    version: '2.2000'
   Authen::SASL::Perl::XOAUTH2:
     file: lib/Authen/SASL/Perl/XOAUTH2.pm
-    version: '2.1900'
+    version: '2.2000'
 recommends:
   GSSAPI: '0'
 requires:
@@ -70,7 +70,7 @@
   bugtracker: https://github.com/perl-authen-sasl/perl-authen-sasl/issues
   homepage: https://github.com/perl-authen-sasl/perl-authen-sasl/
   repository: git://github.com/perl-authen-sasl/perl-authen-sasl.git
-version: '2.1900'
+version: '2.2000'
 x_contributors:
   - 'Aditya Garg <[email protected]>'
   - 'Chris Ridd <[email protected]>'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Authen-SASL-2.1900/Makefile.PL 
new/Authen-SASL-2.2000/Makefile.PL
--- old/Authen-SASL-2.1900/Makefile.PL  2025-08-05 15:22:13.000000000 +0200
+++ new/Authen-SASL-2.2000/Makefile.PL  2026-01-28 23:00:00.000000000 +0100
@@ -1,4 +1,4 @@
-# This file was automatically generated by Dist::Zilla::Plugin::MakeMaker 
v6.033.
+# This file was automatically generated by Dist::Zilla::Plugin::MakeMaker 
v6.037
 use strict;
 use warnings;
 
@@ -26,7 +26,7 @@
     "Test::Pod" => 0,
     "Test::Pod::Coverage" => 0
   },
-  "VERSION" => "2.1900",
+  "VERSION" => "2.2000",
   "test" => {
     "TESTS" => "t/*.t t/negotiations/*.t t/server/*.t"
   }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Authen-SASL-2.1900/dist.ini 
new/Authen-SASL-2.2000/dist.ini
--- old/Authen-SASL-2.1900/dist.ini     2025-08-05 15:22:13.000000000 +0200
+++ new/Authen-SASL-2.2000/dist.ini     2026-01-28 23:00:00.000000000 +0100
@@ -1,6 +1,6 @@
 name     = Authen-SASL
 abstract = SASL Authentication framework
-version  = 2.1900
+version  = 2.2000
 author   = Graham Barr <[email protected]>
 author   = Erik Huelsmann <[email protected]>
 copyright_holder = Graham Barr <[email protected]>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Authen-SASL-2.1900/lib/Authen/SASL/CRAM_MD5.pm 
new/Authen-SASL-2.2000/lib/Authen/SASL/CRAM_MD5.pm
--- old/Authen-SASL-2.1900/lib/Authen/SASL/CRAM_MD5.pm  2025-08-05 
15:22:13.000000000 +0200
+++ new/Authen-SASL-2.2000/lib/Authen/SASL/CRAM_MD5.pm  2026-01-28 
23:00:00.000000000 +0100
@@ -2,7 +2,7 @@
 # This program is free software; you can redistribute it and/or
 # modify it under the same terms as Perl itself.
 
-package Authen::SASL::CRAM_MD5 2.1900;
+package Authen::SASL::CRAM_MD5 2.2000;
 
 use strict;
 use warnings;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Authen-SASL-2.1900/lib/Authen/SASL/EXTERNAL.pm 
new/Authen-SASL-2.2000/lib/Authen/SASL/EXTERNAL.pm
--- old/Authen-SASL-2.1900/lib/Authen/SASL/EXTERNAL.pm  2025-08-05 
15:22:13.000000000 +0200
+++ new/Authen-SASL-2.2000/lib/Authen/SASL/EXTERNAL.pm  2026-01-28 
23:00:00.000000000 +0100
@@ -2,7 +2,7 @@
 # This program is free software; you can redistribute it and/or
 # modify it under the same terms as Perl itself.
 
-package Authen::SASL::EXTERNAL 2.1900;
+package Authen::SASL::EXTERNAL 2.2000;
 
 use strict;
 use warnings;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Authen-SASL-2.1900/lib/Authen/SASL/Perl/ANONYMOUS.pm 
new/Authen-SASL-2.2000/lib/Authen/SASL/Perl/ANONYMOUS.pm
--- old/Authen-SASL-2.1900/lib/Authen/SASL/Perl/ANONYMOUS.pm    2025-08-05 
15:22:13.000000000 +0200
+++ new/Authen-SASL-2.2000/lib/Authen/SASL/Perl/ANONYMOUS.pm    2026-01-28 
23:00:00.000000000 +0100
@@ -2,7 +2,7 @@
 # This program is free software; you can redistribute it and/or
 # modify it under the same terms as Perl itself.
 
-package Authen::SASL::Perl::ANONYMOUS 2.1900;
+package Authen::SASL::Perl::ANONYMOUS 2.2000;
 
 use strict;
 use warnings;
@@ -40,7 +40,7 @@
 
 =head1 VERSION
 
-version 2.1900
+version 2.2000
 
 =head1 SYNOPSIS
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Authen-SASL-2.1900/lib/Authen/SASL/Perl/CRAM_MD5.pm 
new/Authen-SASL-2.2000/lib/Authen/SASL/Perl/CRAM_MD5.pm
--- old/Authen-SASL-2.1900/lib/Authen/SASL/Perl/CRAM_MD5.pm     2025-08-05 
15:22:13.000000000 +0200
+++ new/Authen-SASL-2.2000/lib/Authen/SASL/Perl/CRAM_MD5.pm     2026-01-28 
23:00:00.000000000 +0100
@@ -2,7 +2,7 @@
 # This program is free software; you can redistribute it and/or
 # modify it under the same terms as Perl itself.
 
-package Authen::SASL::Perl::CRAM_MD5 2.1900;
+package Authen::SASL::Perl::CRAM_MD5 2.2000;
 
 use strict;
 use warnings;
@@ -53,7 +53,7 @@
 
 =head1 VERSION
 
-version 2.1900
+version 2.2000
 
 =head1 SYNOPSIS
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/Authen-SASL-2.1900/lib/Authen/SASL/Perl/DIGEST_MD5.pm 
new/Authen-SASL-2.2000/lib/Authen/SASL/Perl/DIGEST_MD5.pm
--- old/Authen-SASL-2.1900/lib/Authen/SASL/Perl/DIGEST_MD5.pm   2025-08-05 
15:22:13.000000000 +0200
+++ new/Authen-SASL-2.2000/lib/Authen/SASL/Perl/DIGEST_MD5.pm   2026-01-28 
23:00:00.000000000 +0100
@@ -5,7 +5,7 @@
 
 # See http://www.ietf.org/rfc/rfc2831.txt for details
 
-package Authen::SASL::Perl::DIGEST_MD5 2.1900;
+package Authen::SASL::Perl::DIGEST_MD5 2.2000;
 
 use strict;
 use warnings;
@@ -756,7 +756,7 @@
 
 =head1 VERSION
 
-version 2.1900
+version 2.2000
 
 =head1 SYNOPSIS
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Authen-SASL-2.1900/lib/Authen/SASL/Perl/EXTERNAL.pm 
new/Authen-SASL-2.2000/lib/Authen/SASL/Perl/EXTERNAL.pm
--- old/Authen-SASL-2.1900/lib/Authen/SASL/Perl/EXTERNAL.pm     2025-08-05 
15:22:13.000000000 +0200
+++ new/Authen-SASL-2.2000/lib/Authen/SASL/Perl/EXTERNAL.pm     2026-01-28 
23:00:00.000000000 +0100
@@ -3,7 +3,7 @@
 # is free software; you can redistribute it and/or modify it under the
 # same terms as Perl itself.
 
-package Authen::SASL::Perl::EXTERNAL 2.1900;
+package Authen::SASL::Perl::EXTERNAL 2.2000;
 
 use strict;
 use warnings;
@@ -45,7 +45,7 @@
 
 =head1 VERSION
 
-version 2.1900
+version 2.2000
 
 =head1 SYNOPSIS
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Authen-SASL-2.1900/lib/Authen/SASL/Perl/GSSAPI.pm 
new/Authen-SASL-2.2000/lib/Authen/SASL/Perl/GSSAPI.pm
--- old/Authen-SASL-2.1900/lib/Authen/SASL/Perl/GSSAPI.pm       2025-08-05 
15:22:13.000000000 +0200
+++ new/Authen-SASL-2.2000/lib/Authen/SASL/Perl/GSSAPI.pm       2026-01-28 
23:00:00.000000000 +0100
@@ -2,7 +2,7 @@
 # All rights reserved. This program is free software; you can redistribute
 # it and/or modify it under the same terms as Perl itself.
 
-package Authen::SASL::Perl::GSSAPI 2.1900;
+package Authen::SASL::Perl::GSSAPI 2.2000;
 
 use strict;
 use warnings;
@@ -228,7 +228,7 @@
 
 =head1 VERSION
 
-version 2.1900
+version 2.2000
 
 =head1 SYNOPSIS
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Authen-SASL-2.1900/lib/Authen/SASL/Perl/LOGIN.pm 
new/Authen-SASL-2.2000/lib/Authen/SASL/Perl/LOGIN.pm
--- old/Authen-SASL-2.1900/lib/Authen/SASL/Perl/LOGIN.pm        2025-08-05 
15:22:13.000000000 +0200
+++ new/Authen-SASL-2.2000/lib/Authen/SASL/Perl/LOGIN.pm        2026-01-28 
23:00:00.000000000 +0100
@@ -2,7 +2,7 @@
 # This program is free software; you can redistribute it and/or
 # modify it under the same terms as Perl itself.
 
-package Authen::SASL::Perl::LOGIN 2.1900;
+package Authen::SASL::Perl::LOGIN 2.2000;
 
 use strict;
 use warnings;
@@ -137,7 +137,7 @@
 
 =head1 VERSION
 
-version 2.1900
+version 2.2000
 
 =head1 SYNOPSIS
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/Authen-SASL-2.1900/lib/Authen/SASL/Perl/OAUTHBEARER.pm 
new/Authen-SASL-2.2000/lib/Authen/SASL/Perl/OAUTHBEARER.pm
--- old/Authen-SASL-2.1900/lib/Authen/SASL/Perl/OAUTHBEARER.pm  2025-08-05 
15:22:13.000000000 +0200
+++ new/Authen-SASL-2.2000/lib/Authen/SASL/Perl/OAUTHBEARER.pm  2026-01-28 
23:00:00.000000000 +0100
@@ -4,9 +4,10 @@
 # This program is free software; you can redistribute it and/or
 # modify it under the same terms as Perl itself.
 
-package Authen::SASL::Perl::OAUTHBEARER 2.1900;
+package Authen::SASL::Perl::OAUTHBEARER 2.2000;
 
 use strict;
+use warnings;
 use vars qw(@ISA);
 use JSON::PP;
 
@@ -38,13 +39,24 @@
     # * gs2-authzid `a=" {User} "`
     #
     # The second part are key value pairs containing host, port and auth as
-    # described in RFC7628.
+    # described in RFC7628. Host and port are optional and can be omitted.
     #
     # https://datatracker.ietf.org/doc/html/rfc5801
     # https://datatracker.ietf.org/doc/html/rfc7628
     my $username = $self->_call('user');
+    my $host     = $self->_call('host');
+    my $port     = $self->_call('port');
     my $token    = $self->_call('pass'); # OAuth 2.0 access token
-    my $auth_string = "n,a=$username,\001auth=Bearer $token\001\001";
+    my $auth_string;
+    if (defined $host && defined $port) {
+      $auth_string = 
"n,a=$username,\001host=$host\001port=$port\001auth=Bearer $token\001\001";
+    } elsif (defined $host) {
+      $auth_string = "n,a=$username,\001host=$host\001auth=Bearer 
$token\001\001";
+    } elsif (defined $port) {
+      $auth_string = "n,a=$username,\001port=$port\001auth=Bearer 
$token\001\001";
+    } else {
+      $auth_string = "n,a=$username,\001auth=Bearer $token\001\001";
+    }
 
     return $auth_string;
 }
@@ -69,7 +81,7 @@
 
 =head1 VERSION
 
-version 2.1900
+version 2.2000
 
 =head1 SYNOPSIS
 
@@ -79,6 +91,8 @@
     mechanism => 'OAUTHBEARER',
     callback  => {
       user => $user,
+      host => $hostname, #optional
+      port => $port, #optional
       pass => $access_token
     },
   );
@@ -100,6 +114,14 @@
 
 The username to be used for authentication.
 
+=item host
+
+The hostname to which the client will connect to. It is optional and can be 
omitted.
+
+=item port
+
+The destination port that the client will connect to. It should be a decimal 
positive integer string without leading zeros. It is optional and can be 
omitted.
+
 =item pass
 
 The OAuth 2.0 access token to be used for authentication.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Authen-SASL-2.1900/lib/Authen/SASL/Perl/PLAIN.pm 
new/Authen-SASL-2.2000/lib/Authen/SASL/Perl/PLAIN.pm
--- old/Authen-SASL-2.1900/lib/Authen/SASL/Perl/PLAIN.pm        2025-08-05 
15:22:13.000000000 +0200
+++ new/Authen-SASL-2.2000/lib/Authen/SASL/Perl/PLAIN.pm        2026-01-28 
23:00:00.000000000 +0100
@@ -2,7 +2,7 @@
 # This program is free software; you can redistribute it and/or
 # modify it under the same terms as Perl itself.
 
-package Authen::SASL::Perl::PLAIN 2.1900;
+package Authen::SASL::Perl::PLAIN 2.2000;
 
 use strict;
 use warnings;
@@ -104,7 +104,7 @@
 
 =head1 VERSION
 
-version 2.1900
+version 2.2000
 
 =head1 SYNOPSIS
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Authen-SASL-2.1900/lib/Authen/SASL/Perl/XOAUTH2.pm 
new/Authen-SASL-2.2000/lib/Authen/SASL/Perl/XOAUTH2.pm
--- old/Authen-SASL-2.1900/lib/Authen/SASL/Perl/XOAUTH2.pm      2025-08-05 
15:22:13.000000000 +0200
+++ new/Authen-SASL-2.2000/lib/Authen/SASL/Perl/XOAUTH2.pm      2026-01-28 
23:00:00.000000000 +0100
@@ -4,9 +4,10 @@
 # This program is free software; you can redistribute it and/or
 # modify it under the same terms as Perl itself.
 
-package Authen::SASL::Perl::XOAUTH2 2.1900;
+package Authen::SASL::Perl::XOAUTH2 2.2000;
 
 use strict;
+use warnings;
 use vars qw(@ISA);
 use JSON::PP;
 
@@ -57,7 +58,7 @@
 
 =head1 VERSION
 
-version 2.1900
+version 2.2000
 
 =head1 SYNOPSIS
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Authen-SASL-2.1900/lib/Authen/SASL/Perl.pm 
new/Authen-SASL-2.2000/lib/Authen/SASL/Perl.pm
--- old/Authen-SASL-2.1900/lib/Authen/SASL/Perl.pm      2025-08-05 
15:22:13.000000000 +0200
+++ new/Authen-SASL-2.2000/lib/Authen/SASL/Perl.pm      2026-01-28 
23:00:00.000000000 +0100
@@ -2,7 +2,7 @@
 # This program is free software; you can redistribute it and/or
 # modify it under the same terms as Perl itself.
 
-package Authen::SASL::Perl 2.1900;
+package Authen::SASL::Perl 2.2000;
 
 use strict;
 use warnings;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Authen-SASL-2.1900/lib/Authen/SASL/Perl.pod 
new/Authen-SASL-2.2000/lib/Authen/SASL/Perl.pod
--- old/Authen-SASL-2.1900/lib/Authen/SASL/Perl.pod     2025-08-05 
15:22:13.000000000 +0200
+++ new/Authen-SASL-2.2000/lib/Authen/SASL/Perl.pod     2026-01-28 
23:00:00.000000000 +0100
@@ -10,7 +10,7 @@
 
 =head1 VERSION
 
-version 2.1900
+version 2.2000
 
 =head1 SYNOPSIS
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Authen-SASL-2.1900/lib/Authen/SASL.pm 
new/Authen-SASL-2.2000/lib/Authen/SASL.pm
--- old/Authen-SASL-2.1900/lib/Authen/SASL.pm   2025-08-05 15:22:13.000000000 
+0200
+++ new/Authen-SASL-2.2000/lib/Authen/SASL.pm   2026-01-28 23:00:00.000000000 
+0100
@@ -2,7 +2,7 @@
 # This program is free software; you can redistribute it and/or
 # modify it under the same terms as Perl itself.
 
-package Authen::SASL 2.1900;
+package Authen::SASL 2.2000;
 
 use strict;
 use warnings;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Authen-SASL-2.1900/lib/Authen/SASL.pod 
new/Authen-SASL-2.2000/lib/Authen/SASL.pod
--- old/Authen-SASL-2.1900/lib/Authen/SASL.pod  2025-08-05 15:22:13.000000000 
+0200
+++ new/Authen-SASL-2.2000/lib/Authen/SASL.pod  2026-01-28 23:00:00.000000000 
+0100
@@ -4,7 +4,7 @@
 
 =head1 VERSION
 
-version 2.1900
+version 2.2000
 
 =head1 SYNOPSIS
 
@@ -137,6 +137,29 @@
 
 =head1 The Connection Class
 
+The connection class matches the capabilities of the client with those of
+the server; eg., for a client:
+
+  my $sasl->mechanisms( $mechlist );
+  my $conn      = $sasl->client_new( 'smtp', 'smtp.examlpe.com', 'noplaintext 
noanonymous' );
+  my $challenge = $conn->client_start
+    or die "Authentication failure:" . $conn->error;
+
+  # optionally set connection properties
+
+  while ($conn->need_step) {
+     $sock->send( $challenge )
+        or die "I/O error: $!";
+     my $response = $sock->read()
+        or die "I/O error: $!";
+     $challenge = $conn->client_step( $response );
+     die $conn->error if $conn->error;
+  }
+  if (not $conn->success()) {
+    die "Authentication failed";
+  }
+
+
 =over 4
 
 =item server_start ( CHALLENGE )
@@ -224,9 +247,73 @@
 
 =back
 
+=head1 The Security Layer
+
+In addition to negotiating authentication, SASL is also capable of
+negotiating a security layer: encryption for connections that do not
+use eg. TLS for encryption. This is supported by the C<DIGEST-MD5> and
+C<GSSAPI> mechanisms, of which only GSSAPI isn't deprecated.
+
+  # optionally set connection parameters
+  $conn->property( minssf => 56 );
+  $conn->property( maxssf =>  0xFFFF );
+  $conn->property( maxbuf => 0x10000 );
+  # in case of TLS:
+  $conn->property( externalssf => $tls_key_strength_in_bits );
+
+When authentication completes, the C<ssf> property indicates whether
+a security layer has been negotiated or not:
+
+  my $with_sec_layer = defined $conn->property( 'ssf' )
+                           and $conn->property( 'ssf' ) > 0;
+
+
+=over 4
+
+=item encode
+
+  my $len = length( $payload );
+  my $idx = 0;
+  my $bufsize = $conn->property( 'maxbuf' );
+  while ($len > 0) {
+    my $encrypted = $conn->encode( substr( $payload, $idx, $bufsize ), $len );
+    my $output = pack('N', length($encrypted)) . $encrypted;
+    $fh->write( $output, length( $output ) );
+    $idx += $bufsize;
+    $len -= $bufsize;
+  }
+
+Encodes C<$payload>. The maximum size of the data being encoded should be taken
+from C<< $conn->property( 'maxbuf' ) >>. Payloads longer than C<maxbuf> need to
+be split across multiple encoded blocks.
+
+=item decode
+
+  my $buf = '';
+  $fh->read( $buf, 4 );
+  my $encrypted = '';
+  my $len = unpack('N', $buf );
+  $fh->read( $encrypted, $len );
+  my $payload = $conn->decode( $encrypted, $len );
+
+Decodes C<$encrypted>. The encrypted block is preseded by a 4-byte unsigned
+integer in network byte order (C<'N'>). A block of that many bytes must be
+read from the stream and fed to the C<decode> function.
+
+=item securesocket
+
+  my $sec_sock_handle = $conn->securesocket( $sock );
+
+Wraps the C<$sock> handle creating a file handle which encrypts written
+data and decrypts data being read. Wrapping a non-blocking file handle
+will fail to work correctly.
+
+=back
+
 =head1 SEE ALSO
 
-L<Authen::SASL::Perl>, L<Authen::SASL::XS>, L<Authen::SASL::Cyrus>
+L<Authen::SASL::Perl>, L<Authen::SASL::XS>, L<Authen::SASL::Cyrus>,
+L<Authen::SASL::SCRAM>, L<Authen::SASL::Perl::NTLM>
 
 =head1 MAINTAINER
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Authen-SASL-2.1900/t/author-pod-syntax.t 
new/Authen-SASL-2.2000/t/author-pod-syntax.t
--- old/Authen-SASL-2.1900/t/author-pod-syntax.t        2025-08-05 
15:22:13.000000000 +0200
+++ new/Authen-SASL-2.2000/t/author-pod-syntax.t        2026-01-28 
23:00:00.000000000 +0100
@@ -7,7 +7,7 @@
   }
 }
 
-# This file was automatically generated by Dist::Zilla::Plugin::PodSyntaxTests.
+# This file was automatically generated by Dist::Zilla::Plugin::PodSyntaxTests
 use strict; use warnings;
 use Test::More;
 use Test::Pod 1.41;

++++++ _scmsync.obsinfo ++++++
--- /var/tmp/diff_new_pack.lFEX2c/_old  2026-02-12 17:26:22.248754809 +0100
+++ /var/tmp/diff_new_pack.lFEX2c/_new  2026-02-12 17:26:22.252754979 +0100
@@ -1,6 +1,6 @@
-mtime: 1755894506
-commit: 2033caf2d6e537b57cbe0d4f115797febf24fb86f7b3824a083e757a8a4a9324
+mtime: 1769666469
+commit: d168cafaead8dd496f94f9d9340d2f3c2f8430bf4a688f2feebe7f2a8f4e6e76
 url: https://src.opensuse.org/perl/perl-Authen-SASL.git
-revision: 2033caf2d6e537b57cbe0d4f115797febf24fb86f7b3824a083e757a8a4a9324
+revision: d168cafaead8dd496f94f9d9340d2f3c2f8430bf4a688f2feebe7f2a8f4e6e76
 projectscmsync: https://src.opensuse.org/perl/_ObsPrj
 

++++++ build.specials.obscpio ++++++

++++++ build.specials.obscpio ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/.gitignore new/.gitignore
--- old/.gitignore      1970-01-01 01:00:00.000000000 +0100
+++ new/.gitignore      2026-02-08 21:42:45.000000000 +0100
@@ -0,0 +1 @@
+.osc

Reply via email to