From 1a7dfc6cbda7a2eb39e010d0175d23242ac65ce5 Mon Sep 17 00:00:00 2001
From: Remi Collet <remi@remirepo.net>
Date: Wed, 14 Jun 2017 15:24:28 +0200
Subject: switch the spec

---
 .gitignore                |   7 +
 REFLECTION                |   8 +-
 REFLECTION-PHP7           | 276 ----------------------------------------
 php-pecl-ssh2-0.10-README |  86 -------------
 php-pecl-ssh2-php7.spec   | 316 ----------------------------------------------
 php-pecl-ssh2.spec        | 108 +++++++++-------
 ssh2-php5628.patch        |  49 -------
 7 files changed, 74 insertions(+), 776 deletions(-)
 create mode 100644 .gitignore
 delete mode 100644 REFLECTION-PHP7
 delete mode 100644 php-pecl-ssh2-0.10-README
 delete mode 100644 php-pecl-ssh2-php7.spec
 delete mode 100644 ssh2-php5628.patch

diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..1ab5c4f
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,7 @@
+package-*.xml
+*.tgz
+*.tar.gz
+*.tar.xz
+*.tar.xz.asc
+*.src.rpm
+*/*rpm
diff --git a/REFLECTION b/REFLECTION
index e5b829c..46c5f04 100644
--- a/REFLECTION
+++ b/REFLECTION
@@ -1,4 +1,4 @@
-Extension [ <persistent> extension #161 ssh2 version 0.13 ] {
+Extension [ <persistent> extension #76 ssh2 version 1.0 ] {
 
   - Constants [21] {
     Constant [ integer SSH2_FINGERPRINT_MD5 ] { 0 }
@@ -32,6 +32,12 @@ Extension [ <persistent> extension #161 ssh2 version 0.13 ] {
         Parameter #1 [ <required> $port ]
       }
     }
+    Function [ <internal:ssh2> function ssh2_disconnect ] {
+
+      - Parameters [1] {
+        Parameter #0 [ <required> $resource ]
+      }
+    }
     Function [ <internal:ssh2> function ssh2_methods_negotiated ] {
 
       - Parameters [1] {
diff --git a/REFLECTION-PHP7 b/REFLECTION-PHP7
deleted file mode 100644
index 46c5f04..0000000
--- a/REFLECTION-PHP7
+++ /dev/null
@@ -1,276 +0,0 @@
-Extension [ <persistent> extension #76 ssh2 version 1.0 ] {
-
-  - Constants [21] {
-    Constant [ integer SSH2_FINGERPRINT_MD5 ] { 0 }
-    Constant [ integer SSH2_FINGERPRINT_SHA1 ] { 1 }
-    Constant [ integer SSH2_FINGERPRINT_HEX ] { 0 }
-    Constant [ integer SSH2_FINGERPRINT_RAW ] { 2 }
-    Constant [ integer SSH2_TERM_UNIT_CHARS ] { 0 }
-    Constant [ integer SSH2_TERM_UNIT_PIXELS ] { 1 }
-    Constant [ string SSH2_DEFAULT_TERMINAL ] { vanilla }
-    Constant [ integer SSH2_DEFAULT_TERM_WIDTH ] { 80 }
-    Constant [ integer SSH2_DEFAULT_TERM_HEIGHT ] { 25 }
-    Constant [ integer SSH2_DEFAULT_TERM_UNIT ] { 0 }
-    Constant [ integer SSH2_STREAM_STDIO ] { 0 }
-    Constant [ integer SSH2_STREAM_STDERR ] { 1 }
-    Constant [ integer SSH2_POLLIN ] { 1 }
-    Constant [ integer SSH2_POLLEXT ] { 2 }
-    Constant [ integer SSH2_POLLOUT ] { 4 }
-    Constant [ integer SSH2_POLLERR ] { 8 }
-    Constant [ integer SSH2_POLLHUP ] { 16 }
-    Constant [ integer SSH2_POLLNVAL ] { 32 }
-    Constant [ integer SSH2_POLL_SESSION_CLOSED ] { 16 }
-    Constant [ integer SSH2_POLL_CHANNEL_CLOSED ] { 128 }
-    Constant [ integer SSH2_POLL_LISTENER_CLOSED ] { 128 }
-  }
-
-  - Functions {
-    Function [ <internal:ssh2> function ssh2_connect ] {
-
-      - Parameters [2] {
-        Parameter #0 [ <required> $host ]
-        Parameter #1 [ <required> $port ]
-      }
-    }
-    Function [ <internal:ssh2> function ssh2_disconnect ] {
-
-      - Parameters [1] {
-        Parameter #0 [ <required> $resource ]
-      }
-    }
-    Function [ <internal:ssh2> function ssh2_methods_negotiated ] {
-
-      - Parameters [1] {
-        Parameter #0 [ <required> $resource ]
-      }
-    }
-    Function [ <internal:ssh2> function ssh2_fingerprint ] {
-
-      - Parameters [2] {
-        Parameter #0 [ <required> $resource ]
-        Parameter #1 [ <required> $flags ]
-      }
-    }
-    Function [ <internal:ssh2> function ssh2_auth_none ] {
-
-      - Parameters [2] {
-        Parameter #0 [ <required> $session ]
-        Parameter #1 [ <required> $username ]
-      }
-    }
-    Function [ <internal:ssh2> function ssh2_auth_password ] {
-
-      - Parameters [3] {
-        Parameter #0 [ <required> $session ]
-        Parameter #1 [ <required> $username ]
-        Parameter #2 [ <required> $password ]
-      }
-    }
-    Function [ <internal:ssh2> function ssh2_auth_pubkey_file ] {
-
-      - Parameters [5] {
-        Parameter #0 [ <required> $session ]
-        Parameter #1 [ <required> $username ]
-        Parameter #2 [ <required> $pubkeyfile ]
-        Parameter #3 [ <required> $privkeyfile ]
-        Parameter #4 [ <optional> $passphrase ]
-      }
-    }
-    Function [ <internal:ssh2> function ssh2_auth_hostbased_file ] {
-
-      - Parameters [7] {
-        Parameter #0 [ <required> $session ]
-        Parameter #1 [ <required> $username ]
-        Parameter #2 [ <required> $hostname ]
-        Parameter #3 [ <required> $pubkeyfile ]
-        Parameter #4 [ <required> $privkeyfile ]
-        Parameter #5 [ <optional> $passphrase ]
-        Parameter #6 [ <optional> $local_username ]
-      }
-    }
-    Function [ <internal:ssh2> function ssh2_forward_listen ] {
-    }
-    Function [ <internal:ssh2> function ssh2_forward_accept ] {
-    }
-    Function [ <internal:ssh2> function ssh2_shell ] {
-
-      - Parameters [6] {
-        Parameter #0 [ <required> $session ]
-        Parameter #1 [ <optional> $termtype ]
-        Parameter #2 [ <optional> $env ]
-        Parameter #3 [ <optional> $width ]
-        Parameter #4 [ <optional> $height ]
-        Parameter #5 [ <optional> $width_height_type ]
-      }
-    }
-    Function [ <internal:ssh2> function ssh2_exec ] {
-
-      - Parameters [7] {
-        Parameter #0 [ <required> $session ]
-        Parameter #1 [ <required> $command ]
-        Parameter #2 [ <optional> $pty ]
-        Parameter #3 [ <optional> $env ]
-        Parameter #4 [ <optional> $width ]
-        Parameter #5 [ <optional> $height ]
-        Parameter #6 [ <optional> $width_height_type ]
-      }
-    }
-    Function [ <internal:ssh2> function ssh2_tunnel ] {
-
-      - Parameters [3] {
-        Parameter #0 [ <required> $session ]
-        Parameter #1 [ <required> $host ]
-        Parameter #2 [ <required> $port ]
-      }
-    }
-    Function [ <internal:ssh2> function ssh2_scp_recv ] {
-
-      - Parameters [3] {
-        Parameter #0 [ <required> $session ]
-        Parameter #1 [ <required> $remote_file ]
-        Parameter #2 [ <required> $local_file ]
-      }
-    }
-    Function [ <internal:ssh2> function ssh2_scp_send ] {
-
-      - Parameters [4] {
-        Parameter #0 [ <required> $session ]
-        Parameter #1 [ <required> $remote_file ]
-        Parameter #2 [ <required> $local_file ]
-        Parameter #3 [ <optional> $create_mode ]
-      }
-    }
-    Function [ <internal:ssh2> function ssh2_fetch_stream ] {
-
-      - Parameters [2] {
-        Parameter #0 [ <required> $channel ]
-        Parameter #1 [ <required> $stream_id ]
-      }
-    }
-    Function [ <internal:ssh2> function ssh2_poll ] {
-
-      - Parameters [1] {
-        Parameter #0 [ <required> &$param0 ]
-      }
-    }
-    Function [ <internal:ssh2> function ssh2_sftp ] {
-
-      - Parameters [1] {
-        Parameter #0 [ <required> $session ]
-      }
-    }
-    Function [ <internal:ssh2> function ssh2_sftp_rename ] {
-
-      - Parameters [3] {
-        Parameter #0 [ <required> $sftp ]
-        Parameter #1 [ <required> $from ]
-        Parameter #2 [ <required> $to ]
-      }
-    }
-    Function [ <internal:ssh2> function ssh2_sftp_unlink ] {
-
-      - Parameters [2] {
-        Parameter #0 [ <required> $sftp ]
-        Parameter #1 [ <required> $filename ]
-      }
-    }
-    Function [ <internal:ssh2> function ssh2_sftp_mkdir ] {
-
-      - Parameters [4] {
-        Parameter #0 [ <required> $sftp ]
-        Parameter #1 [ <required> $dirname ]
-        Parameter #2 [ <optional> $mode ]
-        Parameter #3 [ <optional> $recursive ]
-      }
-    }
-    Function [ <internal:ssh2> function ssh2_sftp_rmdir ] {
-
-      - Parameters [2] {
-        Parameter #0 [ <required> $sftp ]
-        Parameter #1 [ <required> $dirname ]
-      }
-    }
-    Function [ <internal:ssh2> function ssh2_sftp_chmod ] {
-
-      - Parameters [3] {
-        Parameter #0 [ <required> $sftp ]
-        Parameter #1 [ <required> $filename ]
-        Parameter #2 [ <required> $mode ]
-      }
-    }
-    Function [ <internal:ssh2> function ssh2_sftp_stat ] {
-
-      - Parameters [2] {
-        Parameter #0 [ <required> $sftp ]
-        Parameter #1 [ <required> $path ]
-      }
-    }
-    Function [ <internal:ssh2> function ssh2_sftp_lstat ] {
-
-      - Parameters [2] {
-        Parameter #0 [ <required> $sftp ]
-        Parameter #1 [ <required> $path ]
-      }
-    }
-    Function [ <internal:ssh2> function ssh2_sftp_symlink ] {
-
-      - Parameters [3] {
-        Parameter #0 [ <required> $sftp ]
-        Parameter #1 [ <required> $target ]
-        Parameter #2 [ <required> $link ]
-      }
-    }
-    Function [ <internal:ssh2> function ssh2_sftp_readlink ] {
-
-      - Parameters [2] {
-        Parameter #0 [ <required> $sftp ]
-        Parameter #1 [ <required> $link ]
-      }
-    }
-    Function [ <internal:ssh2> function ssh2_sftp_realpath ] {
-
-      - Parameters [2] {
-        Parameter #0 [ <required> $sftp ]
-        Parameter #1 [ <required> $filename ]
-      }
-    }
-    Function [ <internal:ssh2> function ssh2_publickey_init ] {
-
-      - Parameters [1] {
-        Parameter #0 [ <required> $session ]
-      }
-    }
-    Function [ <internal:ssh2> function ssh2_publickey_add ] {
-
-      - Parameters [5] {
-        Parameter #0 [ <required> $pkey ]
-        Parameter #1 [ <required> $algoname ]
-        Parameter #2 [ <required> $blob ]
-        Parameter #3 [ <optional> $overwrite ]
-        Parameter #4 [ <optional> $attributes ]
-      }
-    }
-    Function [ <internal:ssh2> function ssh2_publickey_remove ] {
-
-      - Parameters [3] {
-        Parameter #0 [ <required> $pkey ]
-        Parameter #1 [ <required> $algoname ]
-        Parameter #2 [ <required> $blob ]
-      }
-    }
-    Function [ <internal:ssh2> function ssh2_publickey_list ] {
-
-      - Parameters [1] {
-        Parameter #0 [ <required> $pkey ]
-      }
-    }
-    Function [ <internal:ssh2> function ssh2_auth_agent ] {
-
-      - Parameters [2] {
-        Parameter #0 [ <required> $session ]
-        Parameter #1 [ <required> $username ]
-      }
-    }
-  }
-}
-
diff --git a/php-pecl-ssh2-0.10-README b/php-pecl-ssh2-0.10-README
deleted file mode 100644
index 3f59aad..0000000
--- a/php-pecl-ssh2-0.10-README
+++ /dev/null
@@ -1,86 +0,0 @@
-----------------------------------------
-See this link for more documentation:
-http://php.net/ssh2
-----------------------------------------
-
-CLIII. Secure Shell2 Functions
-Introduction
-
-Bindings to the libssh2 library which provide access to resources (shell, remote exec, tunneling, file transfer) on a remote machine using a secure cryptographic transport.
-
-Predefined Constants
-
-The constants below are defined by this extension, and will only be available when the extension has either been compiled into PHP or dynamically loaded at runtime.
-
-SSH2_FINGERPRINT_MD5 (integer)
-
-    Flag to ssh2_fingerprint() requesting hostkey fingerprint as an MD5 hash. 
-SSH2_FINGERPRINT_SHA1 (integer)
-
-    Flag to ssh2_fingerprint() requesting hostkey fingerprint as an SHA1 hash. 
-SSH2_FINGERPRINT_HEX (integer)
-
-    Flag to ssh2_fingerprint() requesting hostkey fingerprint as a string of hexits. 
-SSH2_FINGERPRINT_RAW (integer)
-
-    Flag to ssh2_fingerprint() requesting hostkey fingerprint as a raw string of 8-bit characters. 
-SSH2_TERM_UNIT_CHARS (integer)
-
-    Flag to ssh2_shell() specifying that width and height are provided as character sizes. 
-SSH2_TERM_UNIT_PIXELS (integer)
-
-    Flag to ssh2_shell() specifying that width and height are provided in pixel units. 
-SSH2_DEFAULT_TERM_WIDTH (integer)
-
-    Default terminal width requested by ssh2_shell(). 
-SSH2_DEFAULT_TERM_HEIGHT (integer)
-
-    Default terminal height requested by ssh2_shell(). 
-SSH2_DEFAULT_TERM_UNIT (integer)
-
-    Default terminal units requested by ssh2_shell(). 
-SSH2_STREAM_STDIO (integer)
-
-    Flag to ssh2_fetch_stream() requesting STDIO subchannel. 
-SSH2_STREAM_STDERR (integer)
-
-    Flag to ssh2_fetch_stream() requesting STDERR subchannel. 
-SSH2_DEFAULT_TERMINAL (string)
-
-    Default terminal type (e.g. vt102, ansi, xterm, vanilla) requested by ssh2_shell(). 
-
-
-Table of Contents:
-
-ssh2_auth_hostbased_file --  Authenticate using a public hostkey
-ssh2_auth_none --  Authenticate as "none"
-ssh2_auth_password --  Authenticate over SSH using a plain password
-ssh2_auth_pubkey_file --  Authenticate using a public key
-ssh2_connect --  Connect to an SSH server
-ssh2_exec --  Execute a command on a remote server
-ssh2_fetch_stream --  Fetch an extended data stream
-ssh2_fingerprint --  Retreive fingerprint of remote server
-ssh2_methods_negotiated --  Return list of negotiated methods
-ssh2_publickey_add --  Add an authorized publickey
-ssh2_publickey_init --  Initialize Publickey subsystem
-ssh2_publickey_list --  List currently authorized publickeys
-ssh2_publickey_remove --  Remove an authorized publickey
-ssh2_scp_recv --  Request a file via SCP
-ssh2_scp_send --  Send a file via SCP
-ssh2_sftp_lstat --  Stat a symbolic link
-ssh2_sftp_mkdir --  Create a directory
-ssh2_sftp_readlink --  Return the target of a symbolic link
-ssh2_sftp_realpath --  Resolve the realpath of a provided path string
-ssh2_sftp_rename --  Rename a remote file
-ssh2_sftp_rmdir --  Remove a directory
-ssh2_sftp_stat --  Stat a file on a remote filesystem
-ssh2_sftp_symlink --  Create a symlink
-ssh2_sftp_unlink --  Delete a file
-ssh2_sftp --  Initialize SFTP subsystem
-ssh2_shell --  Request an interactive shell
-ssh2_tunnel --  Open a tunnel through a remote server 
-
-----------------------------------------
-See this link for more documentation:
-http://php.net/ssh2
-----------------------------------------
diff --git a/php-pecl-ssh2-php7.spec b/php-pecl-ssh2-php7.spec
deleted file mode 100644
index a519b6e..0000000
--- a/php-pecl-ssh2-php7.spec
+++ /dev/null
@@ -1,316 +0,0 @@
-# remirepo spec file for php-pecl-ssh2
-# with SCL compatibility
-#
-# Copyright (c) 2011-2017 Remi Collet
-#
-# Fedora spec file for php-pecl-ssh2
-#
-# License: MIT
-#
-# Please, preserve the changelog entries
-#
-%if 0%{?scl:1}
-%global sub_prefix %{scl_prefix}
-%scl_package       php-pecl-ssh2
-%endif
-
-# See https://github.com/php/pecl-networking-ssh2/commits/master
-%global gh_commit  50d97a52c39166d59e59222a20e841f3f3ce594d
-%global gh_short   %(c=%{gh_commit}; echo ${c:0:7})
-#global gh_date    20160113
-%global gh_owner   php
-%global gh_project pecl-networking-ssh2
-%global with_zts   0%{!?_without_zts:%{?__ztsphp:1}}
-%global pecl_name  ssh2
-%global ini_name   40-%{pecl_name}.ini
-
-Name:           %{?sub_prefix}php-pecl-ssh2
-Version:        1.0
-%if 0%{?gh_date}
-Release:        0.2.%{gh_date}git%{gh_short}%{?dist}%{!?scl:%{!?nophptag:%(%{__php} -r 'echo ".".PHP_MAJOR_VERSION.".".PHP_MINOR_VERSION;')}}
-Source0:        https://github.com/%{gh_owner}/%{gh_project}/archive/%{gh_commit}/%{gh_project}-%{version}%{?prever}-%{gh_short}.tar.gz
-%else
-Release:        5%{?dist}%{!?scl:%{!?nophptag:%(%{__php} -r 'echo ".".PHP_MAJOR_VERSION.".".PHP_MINOR_VERSION;')}}
-Source0:        http://pecl.php.net/get/ssh2-%{version}.tgz
-%endif
-Summary:        Bindings for the libssh2 library
-
-%global buildver %(pkg-config --silence-errors --modversion libssh2  2>/dev/null || echo 65536)
-
-Patch0:         %{pecl_name}-php7013.patch
-
-License:        PHP
-Group:          Development/Languages
-URL:            http://pecl.php.net/package/ssh2
-
-BuildRequires:  libssh2-devel >= 1.2
-BuildRequires:  %{?scl_prefix}php-devel > 7
-BuildRequires:  %{?scl_prefix}php-pear
-
-Requires:       %{?scl_prefix}php(zend-abi) = %{php_zend_api}
-Requires:       %{?scl_prefix}php(api) = %{php_core_api}
-Requires:       libssh2%{?_isa}  >= %{buildver}
-%{?_sclreq:Requires: %{?scl_prefix}runtime%{?_sclreq}%{?_isa}}
-
-Provides:       %{?scl_prefix}php-%{pecl_name} = %{version}
-Provides:       %{?scl_prefix}php-%{pecl_name}%{?_isa} = %{version}
-Provides:       %{?scl_prefix}php-pecl(%{pecl_name}) = %{version}
-Provides:       %{?scl_prefix}php-pecl(%{pecl_name})%{?_isa} = %{version}
-%if "%{?scl_prefix}" != "%{?sub_prefix}"
-Provides:       %{?scl_prefix}php-pecl-%{pecl_name}          = %{version}-%{release}
-Provides:       %{?scl_prefix}php-pecl-%{pecl_name}%{?_isa}  = %{version}-%{release}
-%endif
-
-%if "%{?vendor}" == "Remi Collet" && 0%{!?scl:1} && 0%{?rhel}
-# Other third party repo stuff
-Obsoletes:      php53-pecl-%{pecl_name} <= %{version}
-Obsoletes:     php53u-pecl-%{pecl_name} <= %{version}
-Obsoletes:      php54-pecl-%{pecl_name} <= %{version}
-Obsoletes:     php54w-pecl-%{pecl_name} <= %{version}
-Obsoletes:     php55u-pecl-%{pecl_name} <= %{version}
-Obsoletes:     php55w-pecl-%{pecl_name} <= %{version}
-Obsoletes:     php56u-pecl-%{pecl_name} <= %{version}
-Obsoletes:     php56w-pecl-%{pecl_name} <= %{version}
-Obsoletes:     php70u-pecl-%{pecl_name} <= %{version}
-Obsoletes:     php70w-pecl-%{pecl_name} <= %{version}
-%if "%{php_version}" > "7.1"
-Obsoletes:     php71u-pecl-%{pecl_name} <= %{version}
-Obsoletes:     php71w-pecl-%{pecl_name} <= %{version}
-%endif
-%endif
-
-%if 0%{?fedora} < 20 && 0%{?rhel} < 7
-# Filter private shared
-%{?filter_provides_in: %filter_provides_in %{_libdir}/.*\.so$}
-%{?filter_setup}
-%endif
-
-
-%description
-Bindings to the libssh2 library which provide access to resources
-(shell, remote exec, tunneling, file transfer) on a remote machine using
-a secure cryptographic transport.
-
-Documentation: http://php.net/ssh2
-
-Package built for PHP %(%{__php} -r 'echo PHP_MAJOR_VERSION.".".PHP_MINOR_VERSION;')%{?scl: as Software Collection (%{scl} by %{?scl_vendor}%{!?scl_vendor:rh})}.
-
-
-%prep
-%setup -c -q
-%if 0%{?gh_date}
-mv %{gh_project}-%{gh_commit} NTS
-%{__php} -r '
-  $pkg = simplexml_load_file("NTS/package.xml");
-  $pkg->date = substr("%{gh_date}",0,4)."-".substr("%{gh_date}",4,2)."-".substr("%{gh_date}",6,2);
-  $pkg->version->release = "%{version}dev";
-  $pkg->stability->release = "devel";
-  $pkg->asXML("package.xml");
-'
-%else
-mv %{pecl_name}-%{version} NTS
-%endif
-
-# Don't install/register tests
-sed -e 's/role="test"/role="src"/' \
-    %{?_licensedir:-e '/LICENSE/s/role="doc"/role="src"/' } \
-    -i package.xml
-
-cd NTS
-%patch0 -p1 -b .php7013
-
-extver=$(sed -n '/#define PHP_SSH2_VERSION/{s/.* "//;s/".*$//;p}' php_ssh2.h)
-if test "x${extver}" != "x%{version}%{?gh_date:-dev}"; then
-   : Error: Upstream version is now ${extver}, expecting %{version}%{?gh_date:-dev}.
-   : Update the pdover macro and rebuild.
-   exit 1
-fi
-cd ..
-
-cat > %{ini_name} << 'EOF'
-; Enable ssh2 extension module
-extension=ssh2.so
-EOF
-
-%if %{with_zts}
-: Duplicate source tree for NTS / ZTS build
-cp -pr NTS ZTS
-%endif
-
-
-%build
-cd NTS
-%{_bindir}/phpize
-%configure  --with-php-config=%{_bindir}/php-config
-make %{?_smp_mflags}
-
-%if %{with_zts}
-cd ../ZTS
-%{_bindir}/zts-phpize
-%configure  --with-php-config=%{_bindir}/zts-php-config
-make %{?_smp_mflags}
-%endif
-
-
-%install
-make -C NTS install INSTALL_ROOT=%{buildroot}
-
-# Install XML package description
-install -Dpm 644 package.xml %{buildroot}%{pecl_xmldir}/%{name}.xml
-
-# install config file
-install -Dpm644 %{ini_name} %{buildroot}%{php_inidir}/%{ini_name}
-
-%if %{with_zts}
-make -C ZTS install INSTALL_ROOT=%{buildroot}
-install -Dpm644 %{ini_name} %{buildroot}%{php_ztsinidir}/%{ini_name}
-%endif
-
-# Documentation
-for i in $(grep 'role="doc"' package.xml | sed -e 's/^.*name="//;s/".*$//')
-do install -Dpm 644 NTS/$i %{buildroot}%{pecl_docdir}/%{pecl_name}/$i
-done
-
-
-
-%check
-: Minimal load test for NTS extension
-%{__php} --no-php-ini \
-    --define extension_dir=%{buildroot}%{php_extdir} \
-    --define extension=%{pecl_name}.so \
-    --modules | grep %{pecl_name}
-
-%if %{with_zts}
-: Minimal load test for ZTS extension
-%{__ztsphp} --no-php-ini \
-    --define extension_dir=%{buildroot}%{php_ztsextdir} \
-    --define extension=%{pecl_name}.so \
-    --modules | grep %{pecl_name}
-%endif
-
-
-%if 0%{?fedora} < 24
-# when pear installed alone, after us
-%triggerin -- %{?scl_prefix}php-pear
-if [ -x %{__pecl} ] ; then
-    %{pecl_install} %{pecl_xmldir}/%{name}.xml >/dev/null || :
-fi
-
-# posttrans as pear can be installed after us
-%posttrans
-%if 0%{?gh_date}
-echo -e "\n** %{name} is an experimental package, built from a development sources snapshot **\n"
-%endif
-if [ -x %{__pecl} ] ; then
-    %{pecl_install} %{pecl_xmldir}/%{name}.xml >/dev/null || :
-fi
-
-%postun
-if [ $1 -eq 0 -a -x %{__pecl} ] ; then
-    %{pecl_uninstall} %{pecl_name} >/dev/null || :
-fi
-%endif
-
-
-%files
-%{?_licensedir:%license NTS/LICENSE}
-%{!?_licensedir:%doc %{pecl_docdir}/%{pecl_name}}
-%{pecl_xmldir}/%{name}.xml
-
-%config(noreplace) %{php_inidir}/%{ini_name}
-%{php_extdir}/ssh2.so
-
-%if %{with_zts}
-%config(noreplace) %{php_ztsinidir}/%{ini_name}
-%{php_ztsextdir}/ssh2.so
-%endif
-
-
-%changelog
-* Thu Dec  1 2016 Remi Collet <remi@fedoraproject.org> - 1.0-5
-- rebuild with PHP 7.1.0 GA
-
-* Thu Nov 10 2016 Remi Collet <remi@fedoraproject.org> - 1.0-4
-- add patch for parse_url change in PHP 7.0.13
-
-* Wed Sep 14 2016 Remi Collet <remi@fedoraproject.org> - 1.0-2
-- rebuild for PHP 7.1 new API version
-
-* Sun Jun 12 2016 Remi Collet <remi@fedoraproject.org> - 1.0-1
-- update to 1.0
-
-* Wed Jan 13 2016 Remi Collet <remi@fedoraproject.org> - 0.13-0.1.20160113git50d97a5
-- update to 0.13-dev, git snapshot, for PHP 7
-
-* Tue Jun 23 2015 Remi Collet <remi@fedoraproject.org> - 0.12-6
-- allow build against rh-php56 (as more-php56)
-- drop runtime dependency on pear, new scriptlets
-
-* Wed Dec 24 2014 Remi Collet <remi@fedoraproject.org> - 0.12-5.1
-- Fedora 21 SCL mass rebuild
-
-* Sat Dec 20 2014 Remi Collet <remi@fedoraproject.org> - 0.12-5
-- rebuild for new libssh2 in EL-5
-- ensure dependency on libssh2 used at buildtime
-
-* Mon Aug 25 2014 Remi Collet <rcollet@redhat.com> - 0.12-4
-- improve SCL build
-
-* Thu Apr 17 2014 Remi Collet <remi@fedoraproject.org> - 0.12-3
-- add numerical prefix to extension configuration file (php 5.6)
-
-* Sat Nov 30 2013 Remi Collet <RPMS@FamilleCollet.com> - 0.12-2
-- cleanups for Copr
-- adap for SCL
-- install doc in pecl doc_dir
-
-* Fri Nov 30 2012 Remi Collet <RPMS@FamilleCollet.com> - 0.12-1.1
-- also provides php-ssh2
-
-* Thu Oct 18 2012 Remi Collet <RPMS@FamilleCollet.com> - 0.12-1
-- update to 0.12
-- raise dependency on libssh2 >= 1.2
-
-* Sun Nov 13 2011 Remi Collet <remi@fedoraproject.org> - 0.11.3-2
-- build against php 5.4
-
-* Tue Oct 04 2011 Remi Collet <RPMS@FamilleCollet.com> - 0.11.3-1
-- update to 0.11.3
-- zts extension
-
-* Tue Aug 16 2011 Remi Collet <RPMS@FamilleCollet.com> - 0.11.2-1.1
-- EL-5 rebuild for libssh2
-- add filter
-
-* Sat Apr 16 2011 Remi Collet <RPMS@FamilleCollet.com> - 0.11.2-1
-- update to 0.11.2
-- add minimal %%check
-
-* Wed Feb 09 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.11.0-7
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
-
-* Thu Jan 14 2010 Chris Weyl <cweyl@alumni.drew.edu> 0.11.0-6
-- bump for libssh2 rebuild
-
-
-* Mon Sep 21 2009 Chris Weyl <cweyl@alumni.drew.edu> - 0.11.0-5
-- rebuild for libssh2 1.2
-
-* Sun Jul 26 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.11.0-4
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
-
-* Sun Jul 12 2009 Remi Collet <Fedora@FamilleCollet.com> - 0.11.0-3
-- add ssh2-php53.patch
-- rebuild for new PHP 5.3.0 ABI (20090626)
-
-* Thu Feb 26 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.11.0-2
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
-
-* Sat Dec 20 2008 Itamar Reis Peixoto <itamar@ispbrasil.com.br> 0.11.0-1
-- convert package.xml to V2 format, update to 0.11.0 #BZ 476405
-
-* Sat Nov 15 2008 Itamar Reis Peixoto <itamar@ispbrasil.com.br> 0.10-2
-- Install pecl xml, license and readme files
-
-* Wed Jul 16 2008 Itamar Reis Peixoto <itamar@ispbrasil.com.br> 0.10-1
-- Initial release
diff --git a/php-pecl-ssh2.spec b/php-pecl-ssh2.spec
index f9294b7..a519b6e 100644
--- a/php-pecl-ssh2.spec
+++ b/php-pecl-ssh2.spec
@@ -10,40 +10,41 @@
 # Please, preserve the changelog entries
 #
 %if 0%{?scl:1}
-%if "%{scl}" == "rh-php56"
-%global sub_prefix more-php56-
-%else
 %global sub_prefix %{scl_prefix}
-%endif
 %scl_package       php-pecl-ssh2
 %endif
 
-%global with_zts  0%{!?_without_zts:%{?__ztsphp:1}}
-%global pecl_name ssh2
-%if "%{php_version}" < "5.6"
-%global ini_name  %{pecl_name}.ini
-%else
-%global ini_name  40-%{pecl_name}.ini
-%endif
+# See https://github.com/php/pecl-networking-ssh2/commits/master
+%global gh_commit  50d97a52c39166d59e59222a20e841f3f3ce594d
+%global gh_short   %(c=%{gh_commit}; echo ${c:0:7})
+#global gh_date    20160113
+%global gh_owner   php
+%global gh_project pecl-networking-ssh2
+%global with_zts   0%{!?_without_zts:%{?__ztsphp:1}}
+%global pecl_name  ssh2
+%global ini_name   40-%{pecl_name}.ini
 
 Name:           %{?sub_prefix}php-pecl-ssh2
-Version:        0.13
-Release:        3%{?dist}%{!?scl:%{!?nophptag:%(%{__php} -r 'echo ".".PHP_MAJOR_VERSION.".".PHP_MINOR_VERSION;')}}
+Version:        1.0
+%if 0%{?gh_date}
+Release:        0.2.%{gh_date}git%{gh_short}%{?dist}%{!?scl:%{!?nophptag:%(%{__php} -r 'echo ".".PHP_MAJOR_VERSION.".".PHP_MINOR_VERSION;')}}
+Source0:        https://github.com/%{gh_owner}/%{gh_project}/archive/%{gh_commit}/%{gh_project}-%{version}%{?prever}-%{gh_short}.tar.gz
+%else
+Release:        5%{?dist}%{!?scl:%{!?nophptag:%(%{__php} -r 'echo ".".PHP_MAJOR_VERSION.".".PHP_MINOR_VERSION;')}}
+Source0:        http://pecl.php.net/get/ssh2-%{version}.tgz
+%endif
 Summary:        Bindings for the libssh2 library
 
 %global buildver %(pkg-config --silence-errors --modversion libssh2  2>/dev/null || echo 65536)
 
+Patch0:         %{pecl_name}-php7013.patch
+
 License:        PHP
 Group:          Development/Languages
 URL:            http://pecl.php.net/package/ssh2
-Source0:        http://pecl.php.net/get/ssh2-%{version}.tgz
-Source2:        php-pecl-ssh2-0.10-README
 
-Patch0:         %{pecl_name}-php5628.patch
-
-BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
 BuildRequires:  libssh2-devel >= 1.2
-BuildRequires:  %{?scl_prefix}php-devel < 7
+BuildRequires:  %{?scl_prefix}php-devel > 7
 BuildRequires:  %{?scl_prefix}php-pear
 
 Requires:       %{?scl_prefix}php(zend-abi) = %{php_zend_api}
@@ -51,9 +52,9 @@ Requires:       %{?scl_prefix}php(api) = %{php_core_api}
 Requires:       libssh2%{?_isa}  >= %{buildver}
 %{?_sclreq:Requires: %{?scl_prefix}runtime%{?_sclreq}%{?_isa}}
 
-Provides:       %{?scl_prefix}php-%{pecl_name}               = %{version}
-Provides:       %{?scl_prefix}php-%{pecl_name}%{?_isa}       = %{version}
-Provides:       %{?scl_prefix}php-pecl(%{pecl_name})         = %{version}
+Provides:       %{?scl_prefix}php-%{pecl_name} = %{version}
+Provides:       %{?scl_prefix}php-%{pecl_name}%{?_isa} = %{version}
+Provides:       %{?scl_prefix}php-pecl(%{pecl_name}) = %{version}
 Provides:       %{?scl_prefix}php-pecl(%{pecl_name})%{?_isa} = %{version}
 %if "%{?scl_prefix}" != "%{?sub_prefix}"
 Provides:       %{?scl_prefix}php-pecl-%{pecl_name}          = %{version}-%{release}
@@ -62,17 +63,19 @@ Provides:       %{?scl_prefix}php-pecl-%{pecl_name}%{?_isa}  = %{version}-%{rele
 
 %if "%{?vendor}" == "Remi Collet" && 0%{!?scl:1} && 0%{?rhel}
 # Other third party repo stuff
-Obsoletes:     php53-pecl-%{pecl_name}  <= %{version}
+Obsoletes:      php53-pecl-%{pecl_name} <= %{version}
 Obsoletes:     php53u-pecl-%{pecl_name} <= %{version}
-Obsoletes:     php54-pecl-%{pecl_name}  <= %{version}
+Obsoletes:      php54-pecl-%{pecl_name} <= %{version}
 Obsoletes:     php54w-pecl-%{pecl_name} <= %{version}
-%if "%{php_version}" > "5.5"
 Obsoletes:     php55u-pecl-%{pecl_name} <= %{version}
 Obsoletes:     php55w-pecl-%{pecl_name} <= %{version}
-%endif
-%if "%{php_version}" > "5.6"
 Obsoletes:     php56u-pecl-%{pecl_name} <= %{version}
 Obsoletes:     php56w-pecl-%{pecl_name} <= %{version}
+Obsoletes:     php70u-pecl-%{pecl_name} <= %{version}
+Obsoletes:     php70w-pecl-%{pecl_name} <= %{version}
+%if "%{php_version}" > "7.1"
+Obsoletes:     php71u-pecl-%{pecl_name} <= %{version}
+Obsoletes:     php71w-pecl-%{pecl_name} <= %{version}
 %endif
 %endif
 
@@ -95,26 +98,35 @@ Package built for PHP %(%{__php} -r 'echo PHP_MAJOR_VERSION.".".PHP_MINOR_VERSIO
 
 %prep
 %setup -c -q
+%if 0%{?gh_date}
+mv %{gh_project}-%{gh_commit} NTS
+%{__php} -r '
+  $pkg = simplexml_load_file("NTS/package.xml");
+  $pkg->date = substr("%{gh_date}",0,4)."-".substr("%{gh_date}",4,2)."-".substr("%{gh_date}",6,2);
+  $pkg->version->release = "%{version}dev";
+  $pkg->stability->release = "devel";
+  $pkg->asXML("package.xml");
+'
+%else
+mv %{pecl_name}-%{version} NTS
+%endif
 
 # Don't install/register tests
 sed -e 's/role="test"/role="src"/' \
     %{?_licensedir:-e '/LICENSE/s/role="doc"/role="src"/' } \
     -i package.xml
 
-mv %{pecl_name}-%{version} NTS
 cd NTS
 %patch0 -p1 -b .php7013
 
 extver=$(sed -n '/#define PHP_SSH2_VERSION/{s/.* "//;s/".*$//;p}' php_ssh2.h)
-if test "x${extver}" != "x%{version}"; then
-   : Error: Upstream version is now ${extver}, expecting %{version}.
+if test "x${extver}" != "x%{version}%{?gh_date:-dev}"; then
+   : Error: Upstream version is now ${extver}, expecting %{version}%{?gh_date:-dev}.
    : Update the pdover macro and rebuild.
    exit 1
 fi
 cd ..
 
-cp %{SOURCE2} README
-
 cat > %{ini_name} << 'EOF'
 ; Enable ssh2 extension module
 extension=ssh2.so
@@ -141,8 +153,6 @@ make %{?_smp_mflags}
 
 
 %install
-rm -rf %{buildroot}
-
 make -C NTS install INSTALL_ROOT=%{buildroot}
 
 # Install XML package description
@@ -157,8 +167,6 @@ install -Dpm644 %{ini_name} %{buildroot}%{php_ztsinidir}/%{ini_name}
 %endif
 
 # Documentation
-install -Dpm 644 README %{buildroot}%{pecl_docdir}/%{pecl_name}/README
-
 for i in $(grep 'role="doc"' package.xml | sed -e 's/^.*name="//;s/".*$//')
 do install -Dpm 644 NTS/$i %{buildroot}%{pecl_docdir}/%{pecl_name}/$i
 done
@@ -190,6 +198,9 @@ fi
 
 # posttrans as pear can be installed after us
 %posttrans
+%if 0%{?gh_date}
+echo -e "\n** %{name} is an experimental package, built from a development sources snapshot **\n"
+%endif
 if [ -x %{__pecl} ] ; then
     %{pecl_install} %{pecl_xmldir}/%{name}.xml >/dev/null || :
 fi
@@ -201,14 +212,9 @@ fi
 %endif
 
 
-%clean
-rm -rf %{buildroot}
-
-
 %files
-%defattr(-,root,root,-)
 %{?_licensedir:%license NTS/LICENSE}
-%doc %{pecl_docdir}/%{pecl_name}
+%{!?_licensedir:%doc %{pecl_docdir}/%{pecl_name}}
 %{pecl_xmldir}/%{name}.xml
 
 %config(noreplace) %{php_inidir}/%{ini_name}
@@ -221,14 +227,20 @@ rm -rf %{buildroot}
 
 
 %changelog
-* Thu Nov 10 2016 Remi Collet <remi@fedoraproject.org> - 0.13-3
-- add patch for parse_url change in PHP 5.6.28
+* Thu Dec  1 2016 Remi Collet <remi@fedoraproject.org> - 1.0-5
+- rebuild with PHP 7.1.0 GA
+
+* Thu Nov 10 2016 Remi Collet <remi@fedoraproject.org> - 1.0-4
+- add patch for parse_url change in PHP 7.0.13
+
+* Wed Sep 14 2016 Remi Collet <remi@fedoraproject.org> - 1.0-2
+- rebuild for PHP 7.1 new API version
 
-* Sun Jun 12 2016 Remi Collet <remi@fedoraproject.org> - 0.13-1
-- update to 0.13
+* Sun Jun 12 2016 Remi Collet <remi@fedoraproject.org> - 1.0-1
+- update to 1.0
 
-* Tue Mar  8 2016 Remi Collet <remi@fedoraproject.org> - 0.12-7
-- adapt for F24
+* Wed Jan 13 2016 Remi Collet <remi@fedoraproject.org> - 0.13-0.1.20160113git50d97a5
+- update to 0.13-dev, git snapshot, for PHP 7
 
 * Tue Jun 23 2015 Remi Collet <remi@fedoraproject.org> - 0.12-6
 - allow build against rh-php56 (as more-php56)
diff --git a/ssh2-php5628.patch b/ssh2-php5628.patch
deleted file mode 100644
index c9c052f..0000000
--- a/ssh2-php5628.patch
+++ /dev/null
@@ -1,49 +0,0 @@
-From 093906ec1c065e86ad1cd4dabbc89b1ccae11938 Mon Sep 17 00:00:00 2001
-From: Remi Collet <remi@php.net>
-Date: Thu, 10 Nov 2016 09:16:02 +0100
-Subject: [PATCH] fix for PHP 7.0.13 where php_url_parse fails
-
----
- ssh2_fopen_wrappers.c | 17 ++++++++++++-----
- 1 file changed, 12 insertions(+), 5 deletions(-)
-
-diff --git a/ssh2_fopen_wrappers.c b/ssh2_fopen_wrappers.c
-index 8472ddd..89b34eb 100644
---- a/ssh2_fopen_wrappers.c
-+++ b/ssh2_fopen_wrappers.c
-@@ -198,10 +198,20 @@ php_url *php_ssh2_fopen_wraper_parse_path(	char *path, char *type, php_stream_co
- 	php_url *resource;
- 	zval *methods = NULL, *callbacks = NULL, zsession, **tmpzval;
- 	long resource_id;
--	char *s, *username = NULL, *password = NULL, *pubkey_file = NULL, *privkey_file = NULL;
-+	char *h, *s, *username = NULL, *password = NULL, *pubkey_file = NULL, *privkey_file = NULL;
- 	int username_len = 0, password_len = 0;
- 
--	resource = php_url_parse(path);
-+	h = strstr(path, "Resource id #");
-+	if (h) {
-+		/* Starting with 5.6.28, 7.0.13 need to be clean, else php_url_parse will fail */
-+		char *tmp = estrdup(path);
-+
-+		strncpy(tmp + (h-path), h + sizeof("Resource id #")-1, strlen(tmp)-sizeof("Resource id #"));
-+		resource = php_url_parse(tmp);
-+		efree(tmp);
-+	} else {
-+		resource = php_url_parse(path);
-+	}
- 	if (!resource || !resource->path) {
- 		return NULL;
- 	}
-@@ -232,9 +242,6 @@ php_url *php_ssh2_fopen_wraper_parse_path(	char *path, char *type, php_stream_co
- 
- 	/* Look for a resource ID to reuse a session */
- 	s = resource->host;
--	if (strncmp(resource->host, "Resource id #", sizeof("Resource id #") - 1) == 0) {
--		s = resource->host + sizeof("Resource id #") - 1;
--	}
- 	if (is_numeric_string(s, strlen(s), &resource_id, NULL, 0) == IS_LONG) {
- 		php_ssh2_sftp_data *sftp_data;
- 
--- 
-2.1.4
-
-- 
cgit