Hello community,

here is the log from the commit of package perl-IO-Tty for openSUSE:Factory 
checked in at 2020-01-21 21:03:09
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/perl-IO-Tty (Old)
 and      /work/SRC/openSUSE:Factory/.perl-IO-Tty.new.26092 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "perl-IO-Tty"

Tue Jan 21 21:03:09 2020 rev:23 rq:766095 version:1.14

Changes:
--------
--- /work/SRC/openSUSE:Factory/perl-IO-Tty/perl-IO-Tty.changes  2015-04-15 
16:24:00.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.perl-IO-Tty.new.26092/perl-IO-Tty.changes       
2020-01-21 21:03:49.132945544 +0100
@@ -1,0 +2,19 @@
+Mon Jan 20 03:10:17 UTC 2020 -  <timueller+p...@suse.de>
+
+- updated to 1.14
+   see /usr/share/doc/packages/perl-IO-Tty/ChangeLog
+
+  2020-01-18 Todd Rinaldo <to...@cpan.org> 1.14
+      * Add strict/warnings to Tty.pm
+       * Fix pod errors
+       * Typo: s/dependend/dependent/
+       * Prevent spurious warning from get_winsize()
+       * Fix usage of setsid
+       * Github actions testing. Windows is off of course.
+       * Make README.md
+  
+  2014-12-14 Todd Rinaldo <to...@cpan.org> 1.13_01
+       * RT 91590 - Remove MAP_TARGET from Makefile.PL
+       * RT 88271 - Fix for Solaris setuid when root running as other user
+
+-------------------------------------------------------------------

Old:
----
  IO-Tty-1.12.tar.gz

New:
----
  IO-Tty-1.14.tar.gz
  cpanspec.yml

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

Other differences:
------------------
++++++ perl-IO-Tty.spec ++++++
--- /var/tmp/diff_new_pack.m4aoys/_old  2020-01-21 21:03:49.888945896 +0100
+++ /var/tmp/diff_new_pack.m4aoys/_new  2020-01-21 21:03:49.896945901 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package perl-IO-Tty
 #
-# Copyright (c) 2015 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2020 SUSE LINUX GmbH, Nuernberg, Germany.
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -12,19 +12,20 @@
 # license that conforms to the Open Source Definition (Version 1.9)
 # published by the Open Source Initiative.
 
-# Please submit bugfixes or comments via http://bugs.opensuse.org/
+# Please submit bugfixes or comments via https://bugs.opensuse.org/
 #
 
 
 Name:           perl-IO-Tty
-Version:        1.12
+Version:        1.14
 Release:        0
 %define cpan_name IO-Tty
-Summary:        Low-level allocate a pseudo-Tty, import constants.
-License:        Artistic-1.0 or GPL-1.0+
+Summary:        Low-level allocate a pseudo-Tty, import constants
+License:        Artistic-1.0 OR GPL-1.0-or-later
 Group:          Development/Libraries/Perl
-Url:            http://search.cpan.org/dist/IO-Tty/
-Source:         
http://www.cpan.org/authors/id/T/TO/TODDR/%{cpan_name}-%{version}.tar.gz
+Url:            https://metacpan.org/release/%{cpan_name}
+Source0:        
https://cpan.metacpan.org/authors/id/T/TO/TODDR/%{cpan_name}-%{version}.tar.gz
+Source1:        cpanspec.yml
 BuildRoot:      %{_tmppath}/%{name}-%{version}-build
 BuildRequires:  perl
 BuildRequires:  perl-macros
@@ -33,16 +34,16 @@
 %description
 'IO::Tty' is used internally by 'IO::Pty' to create a pseudo-tty. You
 wouldn't want to use it directly except to import constants, use 'IO::Pty'.
-For a list of importable constants, see the IO::Tty::Constant manpage.
+For a list of importable constants, see IO::Tty::Constant.
 
-Windows is now supported, but ONLY under the Cygwin environment, see the
-http://sources.redhat.com/cygwin/ manpage.
+Windows is now supported, but ONLY under the Cygwin environment, see
+http://sources.redhat.com/cygwin/.
 
 Please note that pty creation is very system-dependend. From my experience,
 any modern POSIX system should be fine. Find below a list of systems that
 'IO::Tty' should work on. A more detailed table (which is slowly getting
 out-of-date) is available from the project pages document manager at
-SourceForge the http://sourceforge.net/projects/expectperl/ manpage.
+SourceForge http://sourceforge.net/projects/expectperl/.
 
 If you have problems on your system and your system is listed in the
 "verified" list, you probably have some non-standard setup, e.g. you
@@ -62,13 +63,14 @@
 
 %prep
 %setup -q -n %{cpan_name}-%{version}
+find . -type f ! -path "*/t/*" ! -name "*.pl" ! -path "*/bin/*" ! -path 
"*/script/*" ! -name "configure" -print0 | xargs -0 chmod 644
 
 %build
-%{__perl} Makefile.PL INSTALLDIRS=vendor OPTIMIZE="%{optflags}"
-%{__make} %{?_smp_mflags}
+perl Makefile.PL INSTALLDIRS=vendor OPTIMIZE="%{optflags}"
+make %{?_smp_mflags}
 
 %check
-%{__make} test
+make test
 
 %install
 %perl_make_install
@@ -77,6 +79,6 @@
 
 %files -f %{name}.files
 %defattr(-,root,root,755)
-%doc ChangeLog README try
+%doc ChangeLog README.md try
 
 %changelog

++++++ IO-Tty-1.12.tar.gz -> IO-Tty-1.14.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/IO-Tty-1.12/ChangeLog new/IO-Tty-1.14/ChangeLog
--- old/IO-Tty-1.12/ChangeLog   2014-09-12 18:10:15.000000000 +0200
+++ new/IO-Tty-1.14/ChangeLog   2020-01-19 06:22:23.000000000 +0100
@@ -1,3 +1,16 @@
+2020-01-18 Todd Rinaldo <to...@cpan.org> 1.14
+    * Add strict/warnings to Tty.pm
+       * Fix pod errors
+       * Typo: s/dependend/dependent/
+       * Prevent spurious warning from get_winsize()
+       * Fix usage of setsid
+       * Github actions testing. Windows is off of course.
+       * Make README.md
+
+2014-12-14 Todd Rinaldo <to...@cpan.org> 1.13_01
+       * RT 91590 - Remove MAP_TARGET from Makefile.PL
+       * RT 88271 - Fix for Solaris setuid when root running as other user
+       
 2014-09-12 Todd Rinaldo <to...@cpan.org> 1.12
        * Merge pull request from Chris Williams (bingos) to fix "redefinition 
of typedef" errors with v5.19.4 and above
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/IO-Tty-1.12/MANIFEST new/IO-Tty-1.14/MANIFEST
--- old/IO-Tty-1.12/MANIFEST    2014-09-12 18:14:41.000000000 +0200
+++ new/IO-Tty-1.14/MANIFEST    2020-01-19 06:26:16.000000000 +0100
@@ -1,11 +1,13 @@
 ChangeLog
-MANIFEST
 Makefile.PL
+MANIFEST
+MANIFEST.SKIP
 Pty.pm
-README
+README.md
+t/pty_get_winsize.t
+t/test.t
+try
 Tty.pm
 Tty.xs
-try
-t/test.t
-META.yml                                 Module meta-data (added by MakeMaker)
+META.yml                                 Module YAML meta-data (added by 
MakeMaker)
 META.json                                Module JSON meta-data (added by 
MakeMaker)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/IO-Tty-1.12/MANIFEST.SKIP 
new/IO-Tty-1.14/MANIFEST.SKIP
--- old/IO-Tty-1.12/MANIFEST.SKIP       1970-01-01 01:00:00.000000000 +0100
+++ new/IO-Tty-1.14/MANIFEST.SKIP       2020-01-19 06:02:41.000000000 +0100
@@ -0,0 +1,9 @@
+^.github/
+^.git/.*
+^MYMETA.*
+^MANIFEST.bak
+^.gitignore
+^conf/
+^xssubs.c
+^Tty/Constant.pm
+^Makefile$
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/IO-Tty-1.12/META.json new/IO-Tty-1.14/META.json
--- old/IO-Tty-1.12/META.json   2014-09-12 18:14:41.000000000 +0200
+++ new/IO-Tty-1.14/META.json   2020-01-19 06:26:16.000000000 +0100
@@ -4,13 +4,13 @@
       "Roland Giersig <rgier...@cpan.org>"
    ],
    "dynamic_config" : 1,
-   "generated_by" : "ExtUtils::MakeMaker version 6.68, CPAN::Meta::Converter 
version 2.120921",
+   "generated_by" : "ExtUtils::MakeMaker version 7.34, CPAN::Meta::Converter 
version 2.150010",
    "license" : [
       "perl_5"
    ],
    "meta-spec" : {
       "url" : "http://search.cpan.org/perldoc?CPAN::Meta::Spec";,
-      "version" : "2"
+      "version" : 2
    },
    "name" : "IO-Tty",
    "no_index" : {
@@ -29,9 +29,6 @@
          "requires" : {
             "ExtUtils::MakeMaker" : "0"
          }
-      },
-      "runtime" : {
-         "requires" : {}
       }
    },
    "release_status" : "stable",
@@ -40,5 +37,6 @@
          "url" : "https://github.com/toddr/IO-Tty";
       }
    },
-   "version" : "1.12"
+   "version" : "1.14",
+   "x_serialization_backend" : "JSON::PP version 4.02"
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/IO-Tty-1.12/META.yml new/IO-Tty-1.14/META.yml
--- old/IO-Tty-1.12/META.yml    2014-09-12 18:14:41.000000000 +0200
+++ new/IO-Tty-1.14/META.yml    2020-01-19 06:26:16.000000000 +0100
@@ -7,7 +7,7 @@
 configure_requires:
   ExtUtils::MakeMaker: '0'
 dynamic_config: 1
-generated_by: 'ExtUtils::MakeMaker version 6.68, CPAN::Meta::Converter version 
2.120921'
+generated_by: 'ExtUtils::MakeMaker version 7.34, CPAN::Meta::Converter version 
2.150010'
 license: perl
 meta-spec:
   url: http://module-build.sourceforge.net/META-spec-v1.4.html
@@ -17,7 +17,7 @@
   directory:
     - t
     - inc
-requires: {}
 resources:
   repository: https://github.com/toddr/IO-Tty
-version: '1.12'
+version: '1.14'
+x_serialization_backend: 'CPAN::Meta::YAML version 0.018'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/IO-Tty-1.12/Makefile.PL new/IO-Tty-1.14/Makefile.PL
--- old/IO-Tty-1.12/Makefile.PL 2014-09-12 18:11:33.000000000 +0200
+++ new/IO-Tty-1.14/Makefile.PL 2020-01-19 06:25:11.000000000 +0100
@@ -34,7 +34,7 @@
 
 my %define;
 my @libs;
-my $Package_Version = '1.12';  # keep this consistent with Tty.pm
+my $Package_Version = '1.14';  # keep this consistent with Tty.pm
 my $Is_Beta = ($Package_Version =~ m/_/);
 
 open(SUB, ">xssubs.c") or die "open: $!";
@@ -359,6 +359,8 @@
 
 package IO::Tty::Constant;
 
+our \$VERSION = '$Package_Version';
+
 use vars qw(\@ISA \@EXPORT_OK);
 require Exporter;
 
@@ -386,6 +388,8 @@
 
 =head1 DEFINED CONSTANTS
 
+=over 4
+
 _EOT_
 
 foreach my $s (@ttsyms) {
@@ -401,6 +405,8 @@
 
 print POD <<_EOT_;
 
+=back
+
 =head1 FOR MORE INFO SEE
 
 L<IO::Tty>
@@ -428,7 +434,6 @@
     'LIBS'           => join(" ", @libs),
     'clean'         => {'FILES' => 'xssubs.c conf Tty.exp_old log'},
     'realclean'             => {'FILES' => 'Tty IO-Tty.ppd'},
-    'MAP_TARGET'     => 'perltty',
     'AUTHOR'         => 'Roland Giersig <rgier...@cpan.org>',
     'ABSTRACT'       => 'Pseudo ttys and constants',
     'LICENSE'        => 'perl',
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/IO-Tty-1.12/Pty.pm new/IO-Tty-1.14/Pty.pm
--- old/IO-Tty-1.12/Pty.pm      2014-09-12 18:10:53.000000000 +0200
+++ new/IO-Tty-1.14/Pty.pm      2020-01-19 06:25:11.000000000 +0100
@@ -10,7 +10,7 @@
 
 use vars qw(@ISA $VERSION);
 
-$VERSION = '1.12'; # keep same as in Tty.pm
+$VERSION = '1.14'; # keep same as in Tty.pm
 
 @ISA = qw(IO::Handle);
 eval { local $^W = 0; undef local $SIG{__DIE__}; require IO::Stty };
@@ -93,7 +93,7 @@
   }
 
   # Create a new 'session', lose controlling terminal.
-  if (not POSIX::setsid()) {
+  if (POSIX::setsid() == -1) {
     warn "setsid() failed, strange behavior may result: $!\r\n" if $^W;
   }
 
@@ -155,7 +155,7 @@
 
 =head1 VERSION
 
-1.12
+1.14
 
 =head1 SYNOPSIS
 
@@ -181,7 +181,7 @@
 C<IO::Pty> inherits from C<IO::Handle> and so provide all the methods
 defined by the C<IO::Handle> package.
 
-Please note that pty creation is very system-dependend.  If you have
+Please note that pty creation is very system-dependent.  If you have
 problems, see L<IO::Tty> for help.
 
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/IO-Tty-1.12/README new/IO-Tty-1.14/README
--- old/IO-Tty-1.12/README      2014-05-05 16:45:55.000000000 +0200
+++ new/IO-Tty-1.14/README      1970-01-01 01:00:00.000000000 +0100
@@ -1,46 +0,0 @@
-IO::Tty and IO::Pty provide an interface to pseudo tty's
-
-To build this distribution, run
-
-  perl Makefile.PL
-  make
-  make test
-  make install
-
-This version (v1.08) now adds posix_openpt() as a means of allocating 
-the pty, thanks goes to Ed Schouten who provided a patch.
-
-Please note that pty creation is very system-dependend, and there 
-are a *lot* of different systems out there.  If you have problems 
-on your system, please send me (<rgier...@cpan.org>) the output 
-of a manual installation ('perl Makefile.PL; make; make test;') 
-and I'll see what I can deduce from it.
-
-Supported systems include Linux, Solaris, AIX, OSF, *BSD, IRIX, HP-UX
-and Darwin.
-
-Windows is supported only under the Cygwin environment, see
-http://www.cygwin.com/.
-
-Sorry, ActiveState Perl on Windows is NOT supported, basically 
-because there are no pseudo-terminals under Windows. 
-
-If it's working on your system, please send me a short note with
-details (version number, distribution, etc. 'uname -a' and 'perl -V'
-is a good start; also, the output from "perl Makefile.PL" contains a
-lot of interesting info, so please include that as well) so I can get
-an overview.  Thanks!
-
-See the ChangeLog and the docs for details.
-
-Oh, and many thanks to all testers, without their support this project
-would still be limited to a few systems that I have access to.  Thanks
-also to SourceForge (http://sf.net) who is hosting this and many other
-projects, their services have made development and support a real
-pleasure.  If you intend to donate something to the Open Source cause,
-think about lending them a machine with a commercial OS license for
-their compile farm!
-
-
-Roland <rgier...@cpan.org>
-2009-02-23
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/IO-Tty-1.12/README.md new/IO-Tty-1.14/README.md
--- old/IO-Tty-1.12/README.md   1970-01-01 01:00:00.000000000 +0100
+++ new/IO-Tty-1.14/README.md   2020-01-19 06:25:11.000000000 +0100
@@ -0,0 +1,172 @@
+[![](https://github.com/toddr/IO-Tty/workflows/linux/badge.svg)](https://github.com/toddr/IO-Tty/actions)
 
[![](https://github.com/toddr/IO-Tty/workflows/macos/badge.svg)](https://github.com/toddr/IO-Tty/actions)
+
+# NAME
+
+IO::Tty - Low-level allocate a pseudo-Tty, import constants.
+
+# VERSION
+
+1.13\_01
+
+# SYNOPSIS
+
+    use IO::Tty qw(TIOCNOTTY);
+    ...
+    # use only to import constants, see IO::Pty to create ptys.
+
+# DESCRIPTION
+
+`IO::Tty` is used internally by `IO::Pty` to create a pseudo-tty.
+You wouldn't want to use it directly except to import constants, use
+`IO::Pty`.  For a list of importable constants, see
+[IO::Tty::Constant](https://metacpan.org/pod/IO::Tty::Constant).
+
+Windows is now supported, but ONLY under the Cygwin
+environment, see 
[http://sources.redhat.com/cygwin/](http://sources.redhat.com/cygwin/).
+
+Please note that pty creation is very system-dependend.  From my
+experience, any modern POSIX system should be fine.  Find below a list
+of systems that `IO::Tty` should work on.  A more detailed table
+(which is slowly getting out-of-date) is available from the project
+pages document manager at SourceForge
+[http://sourceforge.net/projects/expectperl/](http://sourceforge.net/projects/expectperl/).
+
+If you have problems on your system and your system is listed in the
+"verified" list, you probably have some non-standard setup, e.g. you
+compiled your Linux-kernel yourself and disabled ptys (bummer!).
+Please ask your friendly sysadmin for help.
+
+If your system is not listed, unpack the latest version of `IO::Tty`,
+do a `'perl Makefile.PL; make; make test; uname -a'` and send me
+(`rgier...@cpan.org`) the results and I'll see what I can deduce from
+that.  There are chances that it will work right out-of-the-box...
+
+If it's working on your system, please send me a short note with
+details (version number, distribution, etc. 'uname -a' and 'perl -V'
+is a good start; also, the output from "perl Makefile.PL" contains a
+lot of interesting info, so please include that as well) so I can get
+an overview.  Thanks!
+
+# VERIFIED SYSTEMS, KNOWN ISSUES
+
+This is a list of systems that `IO::Tty` seems to work on ('make
+test' passes) with comments about "features":
+
+- AIX 4.3
+
+    Returns EIO instead of EOF when the slave is closed.  Benign.
+
+- AIX 5.x
+- FreeBSD 4.4
+
+    EOF on the slave tty is not reported back to the master.
+
+- OpenBSD 2.8
+
+    The ioctl TIOCSCTTY sometimes fails.  This is also known in
+    Tcl/Expect, see http://expect.nist.gov/FAQ.html
+
+    EOF on the slave tty is not reported back to the master.
+
+- Darwin 7.9.0
+- HPUX 10.20 & 11.00
+
+    EOF on the slave tty is not reported back to the master.
+
+- IRIX 6.5
+- Linux 2.2.x & 2.4.x
+
+    Returns EIO instead of EOF when the slave is closed.  Benign.
+
+- OSF 4.0
+
+    EOF on the slave tty is not reported back to the master.
+
+- Solaris 8, 2.7, 2.6
+
+    Has the "feature" of returning EOF just once?!
+
+    EOF on the slave tty is not reported back to the master.
+
+- Windows NT/2k/XP (under Cygwin)
+
+    When you send (print) a too long line (>160 chars) to a non-raw pty,
+    the call just hangs forever and even alarm() cannot get you out.
+    Don't complain to me...
+
+    EOF on the slave tty is not reported back to the master.
+
+- z/OS
+
+The following systems have not been verified yet for this version, but
+a previous version worked on them:
+
+- SCO Unix
+- NetBSD
+
+    probably the same as the other \*BSDs...
+
+If you have additions to these lists, please mail them to
+<`rgier...@cpan.org`>.
+
+# SEE ALSO
+
+[IO::Pty](https://metacpan.org/pod/IO::Pty), 
[IO::Tty::Constant](https://metacpan.org/pod/IO::Tty::Constant)
+
+# MAILING LISTS
+
+As this module is mainly used by Expect, support for it is available
+via the two Expect mailing lists, expectperl-announce and
+expectperl-discuss, at
+
+    http://lists.sourceforge.net/lists/listinfo/expectperl-announce
+
+and
+
+    http://lists.sourceforge.net/lists/listinfo/expectperl-discuss
+
+# AUTHORS
+
+Originally by Graham Barr <`gb...@pobox.com`>, based on the
+Ptty module by Nick Ing-Simmons <`n...@tiuk.ti.com`>.
+
+Now maintained and heavily rewritten by Roland Giersig
+<`rgier...@cpan.org`>.
+
+Contains copyrighted stuff from openssh v3.0p1, authored by Tatu
+Ylonen <y...@cs.hut.fi>, Markus Friedl and Todd C. Miller
+<todd.mil...@courtesan.com>.  I also got a lot of inspiration from
+the pty code in Xemacs.
+
+# COPYRIGHT
+
+Now all code is free software; you can redistribute it and/or modify
+it under the same terms as Perl itself.
+
+Nevertheless the above AUTHORS retain their copyrights to the various
+parts and want to receive credit if their source code is used.
+See the source for details.
+
+# DISCLAIMER
+
+THIS SOFTWARE IS PROVIDED \`\`AS IS'' AND ANY EXPRESS OR IMPLIED
+WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
+OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR
+TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE
+USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+DAMAGE.
+
+In other words: Use at your own risk.  Provided as is.  Your mileage
+may vary.  Read the source, Luke!
+
+And finally, just to be sure:
+
+Any Use of This Product, in Any Manner Whatsoever, Will Increase the
+Amount of Disorder in the Universe. Although No Liability Is Implied
+Herein, the Consumer Is Warned That This Process Will Ultimately Lead
+to the Heat Death of the Universe.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/IO-Tty-1.12/Tty.pm new/IO-Tty-1.14/Tty.pm
--- old/IO-Tty-1.12/Tty.pm      2014-09-12 18:11:16.000000000 +0200
+++ new/IO-Tty-1.14/Tty.pm      2020-01-19 06:25:11.000000000 +0100
@@ -3,6 +3,7 @@
 
 package IO::Tty;
 
+use strict; use warnings;
 use IO::Handle;
 use IO::File;
 use IO::Tty::Constant;
@@ -13,8 +14,8 @@
 
 use vars qw(@ISA $VERSION $XS_VERSION $CONFIG $DEBUG);
 
-$VERSION = '1.12';
-$XS_VERSION = "1.12";
+$VERSION = '1.14';
+$XS_VERSION = "1.14";
 @ISA = qw(IO::Handle);
 
 eval { local $^W = 0; undef local $SIG{__DIE__}; require IO::Stty };
@@ -68,7 +69,7 @@
 
 sub get_winsize {
   my $self = shift;
-  ioctl($self, IO::Tty::Constant::TIOCGWINSZ(), my $winsize)
+  ioctl($self, IO::Tty::Constant::TIOCGWINSZ(), my $winsize = q<>)
     or croak "Cannot TIOCGWINSZ - $!";
   substr($winsize, $SIZEOF_WINSIZE) = "";
   return IO::Tty::unpack_winsize($winsize);
@@ -118,7 +119,7 @@
 
 =head1 VERSION
 
-1.12
+1.14
 
 =head1 SYNOPSIS
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/IO-Tty-1.12/Tty.xs new/IO-Tty-1.14/Tty.xs
--- old/IO-Tty-1.12/Tty.xs      2014-09-12 18:10:15.000000000 +0200
+++ new/IO-Tty-1.14/Tty.xs      2020-01-19 05:49:56.000000000 +0100
@@ -264,6 +264,7 @@
            if (PL_dowarn)
                warn("IO::Tty::pty_allocate(nonfatal): grantpt(): %.100s", 
strerror(errno));
        }
+
 #endif /* HAVE_GRANTPT */
 #if defined(HAVE_UNLOCKPT)
 #if PTY_DEBUG
@@ -320,6 +321,38 @@
     if (namebuf[0] == 0)
        return 0;               /* we failed to get the slave name */
 
+#if defined (__SVR4) && defined (__sun)
+       #include <sys/types.h>
+       #include <unistd.h>
+       {
+           uid_t euid = geteuid();
+           uid_t uid  = getuid();
+
+           /* root running as another user
+            * grantpt() has done the wrong thing
+             */
+           if (euid != uid && uid == 0) {
+#if PTY_DEBUG
+               if (print_debug)
+                   fprintf(stderr, "trying seteuid() from %d to %d...\n",
+                       euid, uid);
+#endif
+               if (setuid(uid)) {
+                   warn("ERROR: IO::Tty::open_slave: couldn't seteuid to root: 
%d", errno);
+                   return 0;
+               }
+               if (chown(namebuf, euid, -1)) {
+                   warn("ERROR: IO::Tty::open_slave: couldn't fchown the pty: 
%d", errno);
+                   return 0;
+               }
+               if (seteuid(euid)) {
+                   warn("ERROR: IO::Tty::open_slave: couldn't seteuid back: 
%d", errno);
+                   return 0;
+               }
+           }
+       }
+#endif
+
     if (*ttyfd >= 0) {
       make_safe_fd(ptyfd);
       make_safe_fd(ttyfd);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/IO-Tty-1.12/t/pty_get_winsize.t 
new/IO-Tty-1.14/t/pty_get_winsize.t
--- old/IO-Tty-1.12/t/pty_get_winsize.t 1970-01-01 01:00:00.000000000 +0100
+++ new/IO-Tty-1.14/t/pty_get_winsize.t 2020-01-19 06:13:06.000000000 +0100
@@ -0,0 +1,22 @@
+#!/usr/bin/env perl -w
+
+use strict;
+use warnings;
+
+use Test::More;
+plan tests => 1;
+
+use IO::Pty ();
+
+my @warnings;
+
+{
+    local $^W = 1;
+
+    local $SIG{'__WARN__'} = sub { push @warnings, @_ };
+
+    my $pty = IO::Pty->new();
+    () = $pty->get_winsize();
+}
+
+is_deeply( \@warnings, [], 'get_winsize() doesn’t warn' );
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/IO-Tty-1.12/t/test.t new/IO-Tty-1.14/t/test.t
--- old/IO-Tty-1.12/t/test.t    2014-05-05 16:45:55.000000000 +0200
+++ new/IO-Tty-1.14/t/test.t    2020-01-19 05:49:56.000000000 +0100
@@ -174,7 +174,6 @@
     # parent sends down some strings and expects to get them back inverted
     my $maxlen = 0;
     foreach my $len ( 1 .. length($randstring) ) {
-        print STDERR "$len\r";
         my $s = substr( $randstring, 0, $len );
         my $buf;
         my $ret = "";

++++++ cpanspec.yml ++++++
---
#description_paragraphs: 3
#description: |-
#  override description from CPAN
#summary: override summary from CPAN
#no_testing: broken upstream
#sources:
#  - source1
#  - source2
#patches:
#  foo.patch: -p1
#  bar.patch:
#preamble: |-
# BuildRequires:  gcc-c++
#post_prep: |-
# hunspell=`pkg-config --libs hunspell | sed -e 's,-l,,; s,  *,,g'`
# sed -i -e "s,hunspell-X,$hunspell," t/00-prereq.t Makefile.PL 
#post_build: |-
# rm unused.files
#post_install: |-
# sed on %{name}.files
#license: SUSE-NonFree
#skip_noarch: 1
#custom_build: |-
#./Build build flags=%{?_smp_mflags} --myflag
#custom_test: |-
#startserver && make test
#ignore_requires: Bizarre::Module

Reply via email to