Hello community,

here is the log from the commit of package php5-pear-Horde_Oauth for 
openSUSE:Factory checked in at 2015-01-20 19:02:43
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/php5-pear-Horde_Oauth (Old)
 and      /work/SRC/openSUSE:Factory/.php5-pear-Horde_Oauth.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "php5-pear-Horde_Oauth"

Changes:
--------
--- 
/work/SRC/openSUSE:Factory/php5-pear-Horde_Oauth/php5-pear-Horde_Oauth.changes  
    2012-11-28 14:54:03.000000000 +0100
+++ 
/work/SRC/openSUSE:Factory/.php5-pear-Horde_Oauth.new/php5-pear-Horde_Oauth.changes
 2015-01-20 19:02:44.000000000 +0100
@@ -1,0 +2,13 @@
+Sun Jan 18 11:40:38 UTC 2015 - Ralf Lang <l...@b1-systems.de>
+
+- Version 2.0.2
+
+- [jan] Add Composer definition.
+
+-------------------------------------------------------------------
+Wed Jan  9 16:40:40 UTC 2013 - Ralf Lang <l...@b1-systems.de>
+
+- Version 2.0.1
+- [jan] Re-packaged 2.0.0 release.
+
+-------------------------------------------------------------------

Old:
----
  Horde_Oauth-2.0.0.tgz

New:
----
  Horde_Oauth-2.0.2.tgz

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

Other differences:
------------------
++++++ php5-pear-Horde_Oauth.spec ++++++
--- /var/tmp/diff_new_pack.528OmT/_old  2015-01-20 19:02:45.000000000 +0100
+++ /var/tmp/diff_new_pack.528OmT/_new  2015-01-20 19:02:45.000000000 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package php5-pear-Horde_Oauth
 #
-# Copyright (c) 2012 SUSE LINUX Products GmbH, Nuernberg, Germany.
+# Copyright (c) 2015 SUSE LINUX Products GmbH, Nuernberg, Germany.
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -24,7 +24,7 @@
 Group:          Development/Libraries/PHP
 
 Name:           php5-pear-Horde_Oauth
-Version:        2.0.0
+Version:        2.0.2
 Release:        0
 Source0:        http://pear.horde.org/get/Horde_Oauth-%{version}.tgz
 BuildRoot:      %{_tmppath}/%{name}-%{version}-build

++++++ Horde_Oauth-2.0.0.tgz -> Horde_Oauth-2.0.2.tgz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Horde_Oauth-2.0.2/doc/Horde/Oauth/COPYING 
new/Horde_Oauth-2.0.2/doc/Horde/Oauth/COPYING
--- old/Horde_Oauth-2.0.2/doc/Horde/Oauth/COPYING       1970-01-01 
01:00:00.000000000 +0100
+++ new/Horde_Oauth-2.0.2/doc/Horde/Oauth/COPYING       2015-01-09 
10:25:19.000000000 +0100
@@ -0,0 +1,24 @@
+        Copyright 1999-2015 Horde LLC.  All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are
+met:
+
+ - Redistributions of source code must retain the above copyright
+   notice, this list of conditions and the following disclaimer.
+
+ - Redistributions in binary form must reproduce the above copyright
+   notice, this list of conditions and the following disclaimer in the
+   documentation and/or other materials provided with the distribution.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+"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 HORDE PROJECT
+OR CONTRIBUTORS 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.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Horde_Oauth-2.0.2/doc/Horde/Oauth/TODO.txt 
new/Horde_Oauth-2.0.2/doc/Horde/Oauth/TODO.txt
--- old/Horde_Oauth-2.0.2/doc/Horde/Oauth/TODO.txt      1970-01-01 
01:00:00.000000000 +0100
+++ new/Horde_Oauth-2.0.2/doc/Horde/Oauth/TODO.txt      2015-01-09 
10:25:19.000000000 +0100
@@ -0,0 +1,3 @@
+http://www.hueniverse.com/hueniverse/2009/03/sunday-morning-homework.html
+http://www.hueniverse.com/hueniverse/2009/04/explaining-the-oauth-session-fixation-attack.html
+http://hasin.wordpress.com/2009/05/02/using-oauth-pecl-extension-to-talk-to-twitter/
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Horde_Oauth-2.0.2/lib/Horde/Oauth/Consumer.php 
new/Horde_Oauth-2.0.2/lib/Horde/Oauth/Consumer.php
--- old/Horde_Oauth-2.0.2/lib/Horde/Oauth/Consumer.php  1970-01-01 
01:00:00.000000000 +0100
+++ new/Horde_Oauth-2.0.2/lib/Horde/Oauth/Consumer.php  2015-01-09 
10:25:19.000000000 +0100
@@ -0,0 +1,127 @@
+<?php
+/**
+ * Copyright 2008-2015 Horde LLC (http://www.horde.org/)
+ *
+ * @author   Chuck Hagenbuch <ch...@horde.org>
+ * @license  http://www.horde.org/licenses/bsd BSD
+ * @category Horde
+ * @package  Oauth
+ */
+
+/**
+ * OAuth consumer class
+ *
+ * @author   Chuck Hagenbuch <ch...@horde.org>
+ * @license  http://www.horde.org/licenses/bsd BSD
+ * @category Horde
+ * @package  Oauth
+ */
+class Horde_Oauth_Consumer
+{
+    protected $_config;
+
+    /**
+     * Const'r for consumer.
+     *
+     * @param array $config  Configuration values:
+     *  <pre>
+     *    'key'               - Consumer key
+     *    'secret'            - Consumer secret
+     *    'requestTokenUrl'   - The request token URL
+     *    'authorizeTokenUrl' - The authorize URL
+     *    'accessTokenUrl'    = To obtain an access token
+     *    'signatureMethod    - Horde_Oauth_SignatureMethod object
+     *  </pre>
+     *
+     * @return Horde_Oauth_Consumer
+     */
+    public function __construct($config)
+    {
+        // Check for required config
+        if (!is_array($config) || empty($config['key']) || 
empty($config['secret']) ||
+            empty($config['requestTokenUrl']) || 
empty($config['authorizeTokenUrl']) ||
+            empty($config['signatureMethod'])) {
+
+            throw new InvalidArgumentException('Missing a required parameter 
in Horde_Oauth_Consumer::__construct');
+        }
+        $this->_config = $config;
+    }
+
+    public function __get($name)
+    {
+        return isset($this->_config[$name]) ? $this->_config[$name] : null;
+    }
+
+    /**
+     * Obtain an unprivileged request token
+     *
+     * @param array $params  Parameter array
+     *
+     * @return Horde_Oauth_Token  The oauth request token
+     */
+    public function getRequestToken($params = array())
+    {
+        $params['oauth_consumer_key'] = $this->key;
+        $params['oauth_callback'] = $this->callbackUrl;
+
+        $request = new Horde_Oauth_Request($this->requestTokenUrl, $params);
+        $request->sign($this->signatureMethod, $this);
+
+        $client = new Horde_Http_Client;
+
+        try {
+            $response = $client->post(
+                $this->requestTokenUrl,
+                $request->buildHttpQuery()
+            );
+        } catch (Horde_Http_Exception $e) {
+            throw new Horde_Oauth_Exception($e->getMessage());
+        }
+
+        return Horde_Oauth_Token::fromString($response->getBody());
+    }
+
+    /**
+     * Get the user authorization url used to request user authorization
+     *
+     * @param Horde_Oauth_Token $token  the oauth request token
+     *
+     * @return string The user authorization url string
+     */
+    public function getUserAuthorizationUrl($token)
+    {
+        return $this->authorizeTokenUrl . '?oauth_token=' . 
urlencode($token->key) . '&oauth_callback=' . urlencode($this->callbackUrl);
+    }
+
+    /**
+     * Obtain an access token from a request token
+     *
+     * @param Horde_Oauth_Token $token Open auth token containing the 
oauth_token
+     *                                 returned from provider after 
authorization
+     *                                 and the token secret returned with the
+     *                                 original request token.
+     * @param array $params           Any additional parameters for this 
request
+     *
+     * @return unknown_type
+     */
+    public function getAccessToken($token, $params = array())
+    {
+        $params['oauth_consumer_key'] = $this->key;
+        $params['oauth_token'] = $token->key;
+
+        $request = new Horde_Oauth_Request($this->accessTokenUrl, $params);
+        $request->sign($this->signatureMethod, $this, $token);
+
+        $client = new Horde_Http_Client;
+        try {
+            $response = $client->post(
+                $this->accessTokenUrl,
+                $request->buildHttpQuery()
+            );
+        } catch (Horde_Http_Exception $e) {
+            throw new Horde_Oauth_Exception($e->getMessage());
+        }
+
+        return Horde_Oauth_Token::fromString($response->getBody());
+    }
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Horde_Oauth-2.0.2/lib/Horde/Oauth/Exception.php 
new/Horde_Oauth-2.0.2/lib/Horde/Oauth/Exception.php
--- old/Horde_Oauth-2.0.2/lib/Horde/Oauth/Exception.php 1970-01-01 
01:00:00.000000000 +0100
+++ new/Horde_Oauth-2.0.2/lib/Horde/Oauth/Exception.php 2015-01-09 
10:25:19.000000000 +0100
@@ -0,0 +1,21 @@
+<?php
+/**
+ * Copyright 2008-2015 Horde LLC (http://www.horde.org/)
+ *
+ * @author   Chuck Hagenbuch <ch...@horde.org>
+ * @license  http://www.horde.org/licenses/bsd BSD
+ * @category Horde
+ * @package  Oauth
+ */
+
+/**
+ * OAuth exception class
+ *
+ * @author   Chuck Hagenbuch <ch...@horde.org>
+ * @license  http://www.horde.org/licenses/bsd BSD
+ * @category Horde
+ * @package  Oauth
+ */
+class Horde_Oauth_Exception extends Horde_Exception_Wrapped
+{
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Horde_Oauth-2.0.2/lib/Horde/Oauth/Request.php 
new/Horde_Oauth-2.0.2/lib/Horde/Oauth/Request.php
--- old/Horde_Oauth-2.0.2/lib/Horde/Oauth/Request.php   1970-01-01 
01:00:00.000000000 +0100
+++ new/Horde_Oauth-2.0.2/lib/Horde/Oauth/Request.php   2015-01-09 
10:25:19.000000000 +0100
@@ -0,0 +1,201 @@
+<?php
+/**
+ * Copyright 2008-2015 Horde LLC (http://www.horde.org/)
+ *
+ * @author   Chuck Hagenbuch <ch...@horde.org>
+ * @license  http://www.horde.org/licenses/bsd BSD
+ * @category Horde
+ * @package  Oauth
+ */
+
+/**
+ * OAuth request class
+ *
+ * @author   Chuck Hagenbuch <ch...@horde.org>
+ * @license  http://www.horde.org/licenses/bsd BSD
+ * @category Horde
+ * @package  Oauth
+ */
+class Horde_Oauth_Request
+{
+    const VERSION = '1.0';
+
+    protected $_params = array();
+    protected $_url;
+    protected $_method;
+
+    function __construct($url, $params = array(), $method = 'POST')
+    {
+        if (!isset($params['oauth_version'])) {
+            $params['oauth_version'] = self::VERSION;
+        }
+        if (!isset($params['oauth_nonce'])) {
+            $params['oauth_nonce'] = self::_generateNonce();
+        }
+        if (!isset($params['oauth_timestamp'])) {
+            $params['oauth_timestamp'] = time();
+        }
+
+        $this->_params = $params;
+        $this->_url = $url;
+        $this->_method = $method;
+    }
+
+    /**
+     * Sign this request in accordance with OAuth
+     *
+     * @param $signatureMethod
+     * @param $consumer
+     * @param $token
+     * @return unknown_type
+     */
+    public function sign($signatureMethod, $consumer, $token = null)
+    {
+        if (empty($this->_params['oauth_consumer_key'])) {
+            $this->_params['oauth_consumer_key'] = $consumer->key;
+        }
+
+        if (empty($this->_params['oauth_token']) && !empty($token)) {
+            $this->_params['oauth_token'] = $token->key;
+        }
+
+        $this->_params['oauth_signature_method'] = $signatureMethod->getName();
+        $this->_params['oauth_signature'] = $signatureMethod->sign($this, 
$consumer, $token);
+
+        return $this->_getNormalizedUrl() . '?' . $this->buildHttpQuery();
+    }
+
+    /**
+     * Returns the signable string of this request
+     *
+     * The base string is defined as the method, the url and the parameters
+     * (normalized), each urlencoded and concatenated with &.
+     */
+    public function getSignatureBaseString()
+    {
+        $parts = array(
+            $this->_getNormalizedHttpMethod(),
+            $this->_getNormalizedUrl(),
+            $this->_getSignableParameters()
+        );
+
+        return implode('&', array_map(array('Horde_Oauth_Utils', 
'urlencodeRfc3986'), $parts));
+    }
+
+    /**
+     * Get a query string suitable for use in a URL or as POST data.
+     */
+    public function buildHttpQuery()
+    {
+        $parts = array();
+        foreach ($this->_params as $k => $v) {
+            $parts[] = Horde_Oauth_Utils::urlencodeRfc3986($k) . '=' . 
Horde_Oauth_Utils::urlencodeRfc3986($v);
+        }
+        return implode('&', $parts);
+    }
+
+    /**
+     */
+    public function buildAuthorizationHeader($realm = '')
+    {
+        $header = '';
+        foreach ($this->_params as $k => $v) {
+            if (strpos($k, 'oauth_') !== false) {
+                $header .= Horde_Oauth_Utils::urlencodeRfc3986($k) . '="' . 
Horde_Oauth_Utils::urlencodeRfc3986($v) . '",';
+            }
+        }
+        $header = substr($header, 0, -1);
+        if (!empty($realm)) {
+            $header .= ',realm="' . 
Horde_Oauth_Utils::urlencodeRfc3986($realm) . '"';
+        }
+        return 'OAuth ' . $header;
+    }
+
+    /**
+     * Generate a nonce.
+     */
+    protected static function _generateNonce()
+    {
+        $mt = microtime();
+        $rand = mt_rand();
+
+        return hash('md5', microtime() . mt_rand());
+    }
+
+    /**
+     * Returns the normalized parameters of the request
+     *
+     * This will be all parameters except oauth_signature, sorted first by key,
+     * and if there are duplicate keys, then by value.
+     *
+     * The returned string will be all the key=value pairs concatenated by &.
+     *
+     * @return string
+     */
+    protected function _getSignableParameters()
+    {
+        // Grab all parameters
+        $params = $this->_params;
+
+        // Remove oauth_signature if present
+        if (isset($params['oauth_signature'])) {
+            unset($params['oauth_signature']);
+        }
+
+        // Urlencode both keys and values
+        $keys = array_map(array('Horde_Oauth_Utils', 'urlencodeRfc3986'), 
array_keys($params));
+        $values = array_map(array('Horde_Oauth_Utils', 'urlencodeRfc3986'), 
array_values($params));
+        $params = array_combine($keys, $values);
+
+        // Sort by keys (natsort)
+        uksort($params, 'strnatcmp');
+
+        // Generate key=value pairs
+        $pairs = array();
+        foreach ($params as $key => $value) {
+            if (is_array($value)) {
+                // If the value is an array, it's because there are multiple 
values
+                // with the same key. Sort them, then add all the pairs.
+                natsort($value);
+                foreach ($value as $v2) {
+                    $pairs[] = $key . '=' . $v2;
+                }
+            } else {
+                $pairs[] = $key . '=' . $value;
+            }
+        }
+
+        // Return the pairs, concatenated with &
+        return implode('&', $pairs);
+    }
+
+    /**
+     * Uppercases the HTTP method
+     */
+    protected function _getNormalizedHttpMethod()
+    {
+        return strtoupper($this->_method);
+    }
+
+    /**
+     * Parse the url and rebuilds it to be scheme://host/path
+     */
+    protected function _getNormalizedUrl()
+    {
+        $parts = parse_url($this->_url);
+        $scheme = $parts['scheme'];
+        $port = !empty($parts['port'])
+            ? $parts['port']
+            : $scheme == 'https' ? '443' : '80';
+
+        $host = $parts['host'];
+        $path = !empty($parts['path']) ? $parts['path'] : '';
+
+        if (($scheme == 'https' && $port != '443') ||
+            ($scheme == 'http' && $port != '80')) {
+            $host = "$host:$port";
+        }
+
+        return "$scheme://$host$path";
+    }
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/Horde_Oauth-2.0.2/lib/Horde/Oauth/SignatureMethod/HmacSha1.php 
new/Horde_Oauth-2.0.2/lib/Horde/Oauth/SignatureMethod/HmacSha1.php
--- old/Horde_Oauth-2.0.2/lib/Horde/Oauth/SignatureMethod/HmacSha1.php  
1970-01-01 01:00:00.000000000 +0100
+++ new/Horde_Oauth-2.0.2/lib/Horde/Oauth/SignatureMethod/HmacSha1.php  
2015-01-09 10:25:19.000000000 +0100
@@ -0,0 +1,40 @@
+<?php
+/**
+ * Copyright 2008-2015 Horde LLC (http://www.horde.org/)
+ *
+ * @author   Chuck Hagenbuch <ch...@horde.org>
+ * @license  http://www.horde.org/licenses/bsd BSD
+ * @category Horde
+ * @package  Oauth
+ */
+
+/**
+ * OAuth HMAC-SHA1 signature method
+ *
+ * @author   Chuck Hagenbuch <ch...@horde.org>
+ * @license  http://www.horde.org/licenses/bsd BSD
+ * @category Horde
+ * @package  Oauth
+ */
+class Horde_Oauth_SignatureMethod_HmacSha1 extends Horde_Oauth_SignatureMethod
+{
+    public function getName()
+    {
+        return 'HMAC-SHA1';
+    }
+
+    public function sign($request, $consumer, $token)
+    {
+        $baseString = $request->getSignatureBaseString();
+
+        $key_parts = array(
+            $consumer->secret,
+            ($token) ? $token->secret : ''
+        );
+
+        $key_parts = array_map(array('Horde_Oauth_Utils','urlencodeRfc3986'), 
$key_parts);
+        $key = implode('&', $key_parts);
+
+        return base64_encode(hash_hmac('sha1', $baseString, $key, true));
+    }
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/Horde_Oauth-2.0.2/lib/Horde/Oauth/SignatureMethod/Plaintext.php 
new/Horde_Oauth-2.0.2/lib/Horde/Oauth/SignatureMethod/Plaintext.php
--- old/Horde_Oauth-2.0.2/lib/Horde/Oauth/SignatureMethod/Plaintext.php 
1970-01-01 01:00:00.000000000 +0100
+++ new/Horde_Oauth-2.0.2/lib/Horde/Oauth/SignatureMethod/Plaintext.php 
2015-01-09 10:25:19.000000000 +0100
@@ -0,0 +1,40 @@
+<?php
+/**
+ * Copyright 2008-2015 Horde LLC (http://www.horde.org/)
+ *
+ * @author   Chuck Hagenbuch <ch...@horde.org>
+ * @license  http://www.horde.org/licenses/bsd BSD
+ * @category Horde
+ * @package  Oauth
+ */
+
+/**
+ * OAuth plaintext signature method
+ *
+ * @author   Chuck Hagenbuch <ch...@horde.org>
+ * @license  http://www.horde.org/licenses/bsd BSD
+ * @category Horde
+ * @package  Oauth
+ */
+class Horde_Oauth_SignatureMethod_Plaintext extends Horde_Oauth_SignatureMethod
+{
+    public function getName()
+    {
+        return 'PLAINTEXT';
+    }
+
+    public function sign($request, $consumer, $token)
+    {
+        $signature = array(
+            Horde_Oauth_Utils::urlencodeRfc3986($consumer->secret),
+        );
+
+        if ($token) {
+            $signature[] = Horde_Oauth_Utils::urlencodeRfc3986($token->secret);
+        } else {
+            $signature[] = '';
+        }
+
+        return Horde_Oauth_Utils::urlencodeRfc3986(implode('&', $signature));
+    }
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/Horde_Oauth-2.0.2/lib/Horde/Oauth/SignatureMethod/RsaSha1.php 
new/Horde_Oauth-2.0.2/lib/Horde/Oauth/SignatureMethod/RsaSha1.php
--- old/Horde_Oauth-2.0.2/lib/Horde/Oauth/SignatureMethod/RsaSha1.php   
1970-01-01 01:00:00.000000000 +0100
+++ new/Horde_Oauth-2.0.2/lib/Horde/Oauth/SignatureMethod/RsaSha1.php   
2015-01-09 10:25:19.000000000 +0100
@@ -0,0 +1,54 @@
+<?php
+/**
+ * Copyright 2008-2015 Horde LLC (http://www.horde.org/)
+ *
+ * @author   Chuck Hagenbuch <ch...@horde.org>
+ * @license  http://www.horde.org/licenses/bsd BSD
+ * @category Horde
+ * @package  Oauth
+ */
+
+/**
+ * OAuth RSA-SHA1 signature method
+ *
+ * @author   Chuck Hagenbuch <ch...@horde.org>
+ * @license  http://www.horde.org/licenses/bsd BSD
+ * @category Horde
+ * @package  Oauth
+ */
+class Horde_Oauth_SignatureMethod_RsaSha1 extends Horde_Oauth_SignatureMethod
+{
+    public function __construct($publicKey = null, $privateKey = null)
+    {
+        $this->_publicKey = $publicKey;
+        $this->_privateKey = $privateKey;
+    }
+
+    public function getName()
+    {
+        return 'RSA-SHA1';
+    }
+
+    public function sign($request, $consumer, $token)
+    {
+        $baseString = $request->getSignatureBaseString();
+
+        $pkeyid = openssl_pkey_get_private($this->_privateKey);
+        $ok = openssl_sign($baseString, $signature, $pkeyid);
+        openssl_free_key($pkeyid);
+
+        return base64_encode($signature);
+    }
+
+    public function verify($signature, $request, $consumer, $token)
+    {
+        $decodedSignature = base64_decode($signature);
+        $baseString = $request->getSignatureBaseString();
+
+        $pubkeyid = openssl_pkey_get_public($this->_publicKey);
+        $result = openssl_verify($baseString, $decodedSignature, $pubkeyid);
+        openssl_free_key($pubkeyid);
+
+        return $result == 1;
+    }
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/Horde_Oauth-2.0.2/lib/Horde/Oauth/SignatureMethod.php 
new/Horde_Oauth-2.0.2/lib/Horde/Oauth/SignatureMethod.php
--- old/Horde_Oauth-2.0.2/lib/Horde/Oauth/SignatureMethod.php   1970-01-01 
01:00:00.000000000 +0100
+++ new/Horde_Oauth-2.0.2/lib/Horde/Oauth/SignatureMethod.php   2015-01-09 
10:25:19.000000000 +0100
@@ -0,0 +1,29 @@
+<?php
+/**
+ * Copyright 2008-2015 Horde LLC (http://www.horde.org/)
+ *
+ * @author   Chuck Hagenbuch <ch...@horde.org>
+ * @license  http://www.horde.org/licenses/bsd BSD
+ * @category Horde
+ * @package  Oauth
+ */
+
+/**
+ * OAuth abstract signature method base class
+ *
+ * @author   Chuck Hagenbuch <ch...@horde.org>
+ * @license  http://www.horde.org/licenses/bsd BSD
+ * @category Horde
+ * @package  Oauth
+ */
+abstract class Horde_Oauth_SignatureMethod
+{
+    abstract public function getName();
+
+    abstract public function sign($request, $consumer, $token);
+
+    public function verify($signature, $request, $consumer, $token)
+    {
+        return $signature == $this->sign($request, $consumer, $token);
+    }
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Horde_Oauth-2.0.2/lib/Horde/Oauth/Token.php 
new/Horde_Oauth-2.0.2/lib/Horde/Oauth/Token.php
--- old/Horde_Oauth-2.0.2/lib/Horde/Oauth/Token.php     1970-01-01 
01:00:00.000000000 +0100
+++ new/Horde_Oauth-2.0.2/lib/Horde/Oauth/Token.php     2015-01-09 
10:25:19.000000000 +0100
@@ -0,0 +1,50 @@
+<?php
+/**
+ * Copyright 2008-2015 Horde LLC (http://www.horde.org/)
+ *
+ * @author   Chuck Hagenbuch <ch...@horde.org>
+ * @license  http://www.horde.org/licenses/bsd BSD
+ * @category Horde
+ * @package  Oauth
+ */
+
+/**
+ * OAuth access tokens and request tokens
+ *
+ * @author   Chuck Hagenbuch <ch...@horde.org>
+ * @license  http://www.horde.org/licenses/bsd BSD
+ * @category Horde
+ * @package  Oauth
+ */
+class Horde_Oauth_Token
+{
+    public $key;
+    public $secret;
+
+    /**
+     * key = the token
+     * secret = the token secret
+     */
+    function __construct($key, $secret)
+    {
+        $this->key = $key;
+        $this->secret = $secret;
+    }
+
+    /**
+     * Generate the basic string serialization of a token that a server would
+     * respond to request_token and access_token calls with.
+     */
+    public function __toString()
+    {
+        return
+            'oauth_token='.Horde_Oauth_Utils::urlencodeRfc3986($this->key).
+            
'&oauth_token_secret='.Horde_Oauth_Utils::urlencodeRfc3986($this->secret);
+    }
+
+    public static function fromString($string)
+    {
+        parse_str($string, $parts);
+        return new self($parts['oauth_token'], $parts['oauth_token_secret']);
+    }
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Horde_Oauth-2.0.2/lib/Horde/Oauth/Utils.php 
new/Horde_Oauth-2.0.2/lib/Horde/Oauth/Utils.php
--- old/Horde_Oauth-2.0.2/lib/Horde/Oauth/Utils.php     1970-01-01 
01:00:00.000000000 +0100
+++ new/Horde_Oauth-2.0.2/lib/Horde/Oauth/Utils.php     2015-01-09 
10:25:19.000000000 +0100
@@ -0,0 +1,28 @@
+<?php
+/**
+ * Copyright 2008-2015 Horde LLC (http://www.horde.org/)
+ *
+ * @author   Chuck Hagenbuch <ch...@horde.org>
+ * @license  http://www.horde.org/licenses/bsd BSD
+ * @category Horde
+ * @package  Oauth
+ */
+
+/**
+ * OAuth utilities
+ *
+ * @author   Chuck Hagenbuch <ch...@horde.org>
+ * @license  http://www.horde.org/licenses/bsd BSD
+ * @category Horde
+ * @package  Oauth
+ */
+class Horde_Oauth_Utils
+{
+    public static function urlencodeRfc3986($string)
+    {
+        return str_replace(array('%7E', '+'),
+                           array('~', '%2B'),
+                           rawurlencode($string));
+    }
+
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/package.xml new/package.xml
--- old/package.xml     2012-10-30 19:41:21.000000000 +0100
+++ new/package.xml     2015-01-09 10:25:19.000000000 +0100
@@ -11,10 +11,10 @@
   <email>ch...@horde.org</email>
   <active>yes</active>
  </lead>
- <date>2012-10-30</date>
- <time>19:41:21</time>
+ <date>2015-01-09</date>
+ <time>10:25:19</time>
  <version>
-  <release>2.0.0</release>
+  <release>2.0.2</release>
   <api>1.0.0</api>
  </version>
  <stability>
@@ -23,27 +23,29 @@
  </stability>
  <license uri="http://www.horde.org/licenses/bsd";>BSD-2-Clause</license>
  <notes>
-* First stable release for Horde 5.
+* [jan] Add Composer definition.
  </notes>
  <contents>
   <dir baseinstalldir="/" name="/">
-   <file baseinstalldir="/" md5sum="03dc05714e363d71bd24f3fae5ed5903" 
name="doc/Horde/Oauth/COPYING" role="doc" />
+   <file baseinstalldir="/" md5sum="5dee577470a920508ad14b3458db79a5" 
name="doc/Horde/Oauth/COPYING" role="doc" />
    <file baseinstalldir="/" md5sum="d0be0449a4c5d44a58edbed8e40e0dc8" 
name="doc/Horde/Oauth/TODO.txt" role="doc" />
-   <file baseinstalldir="/" md5sum="5c18d001c0c79cedeaf44be6136a5817" 
name="lib/Horde/Oauth/SignatureMethod/HmacSha1.php" role="php" />
-   <file baseinstalldir="/" md5sum="261058aa70ef7423bc156c1a9e299476" 
name="lib/Horde/Oauth/SignatureMethod/Plaintext.php" role="php" />
-   <file baseinstalldir="/" md5sum="0645f8f4907ec17d0e752dafd40735b2" 
name="lib/Horde/Oauth/SignatureMethod/RsaSha1.php" role="php" />
-   <file baseinstalldir="/" md5sum="78ebbb1bcf19a9baa1fc1443f5c52a1c" 
name="lib/Horde/Oauth/Consumer.php" role="php" />
-   <file baseinstalldir="/" md5sum="3ce893dc94363da25cab44c2431bf280" 
name="lib/Horde/Oauth/Exception.php" role="php" />
-   <file baseinstalldir="/" md5sum="9884b56a73f66737a9624bd0d77845a9" 
name="lib/Horde/Oauth/Request.php" role="php" />
-   <file baseinstalldir="/" md5sum="c4a62093e3be179419bf1f9c69666d14" 
name="lib/Horde/Oauth/SignatureMethod.php" role="php" />
-   <file baseinstalldir="/" md5sum="b22de14ca699e841911481d970303612" 
name="lib/Horde/Oauth/Token.php" role="php" />
-   <file baseinstalldir="/" md5sum="8bca04f98639cf67d0e9f66415109851" 
name="lib/Horde/Oauth/Utils.php" role="php" />
+   <file baseinstalldir="/" md5sum="4ee76e36fc44baad9982df21ea45969f" 
name="lib/Horde/Oauth/SignatureMethod/HmacSha1.php" role="php" />
+   <file baseinstalldir="/" md5sum="5f349a0b68192b8c5e569be4fbda64cb" 
name="lib/Horde/Oauth/SignatureMethod/Plaintext.php" role="php" />
+   <file baseinstalldir="/" md5sum="8f4f80f1fc34ec6c1b97821ae9878681" 
name="lib/Horde/Oauth/SignatureMethod/RsaSha1.php" role="php" />
+   <file baseinstalldir="/" md5sum="38762a0cb33990c50230005a2769ca93" 
name="lib/Horde/Oauth/Consumer.php" role="php" />
+   <file baseinstalldir="/" md5sum="27dfd9c7ef5eefd83f852ce56b6d4b23" 
name="lib/Horde/Oauth/Exception.php" role="php" />
+   <file baseinstalldir="/" md5sum="0e54a0402c09b543c9857a76d7e91f83" 
name="lib/Horde/Oauth/Request.php" role="php" />
+   <file baseinstalldir="/" md5sum="ea68446167cf2533c2ed38243fda6d0c" 
name="lib/Horde/Oauth/SignatureMethod.php" role="php" />
+   <file baseinstalldir="/" md5sum="a39f8f92e024de4e67982ccd0b5cf2b9" 
name="lib/Horde/Oauth/Token.php" role="php" />
+   <file baseinstalldir="/" md5sum="b7064bb86b54aec6d4fcc3b8f694a33a" 
name="lib/Horde/Oauth/Utils.php" role="php" />
   </dir>
  </contents>
  <dependencies>
   <required>
    <php>
     <min>5.3.0</min>
+    <max>6.0.0alpha1</max>
+    <exclude>6.0.0alpha1</exclude>
    </php>
    <pearinstaller>
     <min>1.7.0</min>
@@ -252,5 +254,35 @@
 * First stable release for Horde 5.
    </notes>
   </release>
+  <release>
+   <version>
+    <release>2.0.1</release>
+    <api>1.0.0</api>
+   </version>
+   <stability>
+    <release>stable</release>
+    <api>stable</api>
+   </stability>
+   <date>2012-11-22</date>
+   <license uri="http://www.horde.org/licenses/bsd";>BSD-2-Clause</license>
+   <notes>
+* [jan] Re-packaged 2.0.0 release.
+   </notes>
+  </release>
+  <release>
+   <version>
+    <release>2.0.2</release>
+    <api>1.0.0</api>
+   </version>
+   <stability>
+    <release>stable</release>
+    <api>stable</api>
+   </stability>
+   <date>2015-01-09</date>
+   <license uri="http://www.horde.org/licenses/bsd";>BSD-2-Clause</license>
+   <notes>
+* [jan] Add Composer definition.
+   </notes>
+  </release>
  </changelog>
 </package>

-- 
To unsubscribe, e-mail: opensuse-commit+unsubscr...@opensuse.org
For additional commands, e-mail: opensuse-commit+h...@opensuse.org

Reply via email to