Hello community,
here is the log from the commit of package libssh for openSUSE:Factory checked in at 2015-07-05 17:55:20
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libssh (Old)
and /work/SRC/openSUSE:Factory/.libssh.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libssh"
Changes:
--------
--- /work/SRC/openSUSE:Factory/libssh/libssh.changes 2015-05-19 23:13:34.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.libssh.new/libssh.changes 2015-07-05 17:55:21.000000000 +0200
@@ -1,0 +2,10 @@
+Tue Jun 30 07:36:31 UTC 2015 - asn@cryptomilk.org
+
+- Update to version 0.7.1
+ * Fixed SSH_AUTH_PARTIAL auth with auto public key
+ * Fixed memory leak in session options
+ * Fixed allocation of ed25519 public keys
+ * Fixed channel exit-status and exit-signal
+ * Reintroduce ssh_forward_listen()
+
+-------------------------------------------------------------------
Old:
----
libssh-0.7.0.tar.xz
New:
----
libssh-0.7.1.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ libssh.spec ++++++
--- /var/tmp/diff_new_pack.Wi9vip/_old 2015-07-05 17:55:21.000000000 +0200
+++ /var/tmp/diff_new_pack.Wi9vip/_new 2015-07-05 17:55:21.000000000 +0200
@@ -24,7 +24,7 @@
BuildRequires: xz
Name: libssh
-Version: 0.7.0
+Version: 0.7.1
Release: 0
Summary: The SSH library
++++++ libssh-0.7.0.tar.xz -> libssh-0.7.1.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libssh-0.7.0/CMakeLists.txt new/libssh-0.7.1/CMakeLists.txt
--- old/libssh-0.7.0/CMakeLists.txt 2015-05-08 13:55:13.000000000 +0200
+++ new/libssh-0.7.1/CMakeLists.txt 2015-06-29 11:16:03.000000000 +0200
@@ -8,7 +8,7 @@
set(APPLICATION_VERSION_MAJOR "0")
set(APPLICATION_VERSION_MINOR "7")
-set(APPLICATION_VERSION_PATCH "0")
+set(APPLICATION_VERSION_PATCH "1")
set(APPLICATION_VERSION "${APPLICATION_VERSION_MAJOR}.${APPLICATION_VERSION_MINOR}.${APPLICATION_VERSION_PATCH}")
@@ -24,7 +24,7 @@
# where to look first for cmake modules, before ${CMAKE_ROOT}/Modules/ is checked
set(CMAKE_MODULE_PATH
- ${CMAKE_SOURCE_DIR}/cmake/Modules
+ ${CMAKE_CURRENT_SOURCE_DIR}/cmake/Modules
)
# add definitions
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libssh-0.7.0/CPackConfig.cmake new/libssh-0.7.1/CPackConfig.cmake
--- old/libssh-0.7.0/CPackConfig.cmake 2015-05-08 13:54:56.000000000 +0200
+++ new/libssh-0.7.1/CPackConfig.cmake 2015-06-24 18:36:08.000000000 +0200
@@ -4,10 +4,10 @@
### general settings
set(CPACK_PACKAGE_NAME ${APPLICATION_NAME})
set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "The SSH library")
-set(CPACK_PACKAGE_DESCRIPTION_FILE "${CMAKE_SOURCE_DIR}/README")
+set(CPACK_PACKAGE_DESCRIPTION_FILE "${CMAKE_CURRENT_SOURCE_DIR}/README")
set(CPACK_PACKAGE_VENDOR "The SSH Library Development Team")
set(CPACK_PACKAGE_INSTALL_DIRECTORY ${CPACK_PACKAGE_NAME})
-set(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_SOURCE_DIR}/COPYING")
+set(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_CURRENT_SOURCE_DIR}/COPYING")
### versions
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libssh-0.7.0/ChangeLog new/libssh-0.7.1/ChangeLog
--- old/libssh-0.7.0/ChangeLog 2015-05-11 10:41:55.000000000 +0200
+++ new/libssh-0.7.1/ChangeLog 2015-06-29 11:15:56.000000000 +0200
@@ -1,6 +1,13 @@
ChangeLog
==========
+version 0.7.1 (released 2015-06-30)
+ * Fixed SSH_AUTH_PARTIAL auth with auto public key
+ * Fixed memory leak in session options
+ * Fixed allocation of ed25519 public keys
+ * Fixed channel exit-status and exit-signal
+ * Reintroduce ssh_forward_listen()
+
version 0.7.0 (released 2015-05-11)
* Added support for ed25519 keys
* Added SHA2 algorithms for HMAC
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libssh-0.7.0/doc/command.dox new/libssh-0.7.1/doc/command.dox
--- old/libssh-0.7.0/doc/command.dox 2014-09-15 20:54:34.000000000 +0200
+++ new/libssh-0.7.1/doc/command.dox 2015-06-24 18:36:08.000000000 +0200
@@ -56,7 +56,7 @@
@code
char buffer[256];
- unsigned int nbytes;
+ int nbytes;
nbytes = ssh_channel_read(channel, buffer, sizeof(buffer), 0);
while (nbytes > 0)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libssh-0.7.0/doc/guided_tour.dox new/libssh-0.7.1/doc/guided_tour.dox
--- old/libssh-0.7.0/doc/guided_tour.dox 2015-05-06 11:04:50.000000000 +0200
+++ new/libssh-0.7.1/doc/guided_tour.dox 2015-06-24 18:36:08.000000000 +0200
@@ -367,7 +367,7 @@
ssh_channel channel;
int rc;
char buffer[256];
- unsigned int nbytes;
+ int nbytes;
channel = ssh_channel_new(session);
if (channel == NULL)
@@ -391,7 +391,7 @@
nbytes = ssh_channel_read(channel, buffer, sizeof(buffer), 0);
while (nbytes > 0)
{
- if (write(1, buffer, nbytes) != nbytes)
+ if (write(1, buffer, nbytes) != (unsigned int) nbytes)
{
ssh_channel_close(channel);
ssh_channel_free(channel);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libssh-0.7.0/include/CMakeLists.txt new/libssh-0.7.1/include/CMakeLists.txt
--- old/libssh-0.7.0/include/CMakeLists.txt 2013-02-07 19:23:14.000000000 +0100
+++ new/libssh-0.7.1/include/CMakeLists.txt 2015-06-24 18:36:08.000000000 +0200
@@ -1,3 +1,3 @@
-project(headers C)
+project(libssh-headers-x C)
add_subdirectory(libssh)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libssh-0.7.0/include/libssh/libssh.h new/libssh-0.7.1/include/libssh/libssh.h
--- old/libssh-0.7.0/include/libssh/libssh.h 2015-05-08 13:55:13.000000000 +0200
+++ new/libssh-0.7.1/include/libssh/libssh.h 2015-06-29 11:16:10.000000000 +0200
@@ -78,7 +78,7 @@
/* libssh version */
#define LIBSSH_VERSION_MAJOR 0
#define LIBSSH_VERSION_MINOR 7
-#define LIBSSH_VERSION_MICRO 0
+#define LIBSSH_VERSION_MICRO 1
#define LIBSSH_VERSION_INT SSH_VERSION_INT(LIBSSH_VERSION_MAJOR, \
LIBSSH_VERSION_MINOR, \
@@ -588,6 +588,7 @@
fd_set *readfds, struct timeval *timeout);
LIBSSH_API int ssh_service_request(ssh_session session, const char *service);
LIBSSH_API int ssh_set_agent_channel(ssh_session session, ssh_channel channel);
+LIBSSH_API int ssh_set_agent_socket(ssh_session session, socket_t fd);
LIBSSH_API void ssh_set_blocking(ssh_session session, int blocking);
LIBSSH_API void ssh_set_counters(ssh_session session, ssh_counter scounter,
ssh_counter rcounter);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libssh-0.7.0/include/libssh/priv.h new/libssh-0.7.1/include/libssh/priv.h
--- old/libssh-0.7.0/include/libssh/priv.h 2015-05-08 13:55:13.000000000 +0200
+++ new/libssh-0.7.1/include/libssh/priv.h 2015-06-24 16:24:12.000000000 +0200
@@ -65,6 +65,10 @@
# undef inline
# define inline __inline
+# ifndef va_copy
+# define va_copy(dest, src) (dest = src)
+# endif
+
# define strcasecmp _stricmp
# define strncasecmp _strnicmp
# if ! defined(HAVE_ISBLANK)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libssh-0.7.0/src/CMakeLists.txt new/libssh-0.7.1/src/CMakeLists.txt
--- old/libssh-0.7.0/src/CMakeLists.txt 2015-05-08 13:55:13.000000000 +0200
+++ new/libssh-0.7.1/src/CMakeLists.txt 2015-06-24 18:36:08.000000000 +0200
@@ -1,12 +1,12 @@
project(libssh-library C)
set(LIBSSH_PUBLIC_INCLUDE_DIRS
- ${CMAKE_SOURCE_DIR}/include
+ ${libssh_SOURCE_DIR}/include
CACHE INTERNAL "libssh public include directories"
)
set(LIBSSH_PRIVATE_INCLUDE_DIRS
- ${CMAKE_BINARY_DIR}
+ ${libssh_BINARY_DIR}
)
set(LIBSSH_LINK_LIBRARIES
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libssh-0.7.0/src/agent.c new/libssh-0.7.1/src/agent.c
--- old/libssh-0.7.0/src/agent.c 2015-05-08 13:55:13.000000000 +0200
+++ new/libssh-0.7.1/src/agent.c 2015-06-29 09:47:35.000000000 +0200
@@ -185,15 +185,32 @@
return SSH_OK;
}
+/** @brief sets the SSH agent socket.
+ * The SSH agent will be used to authenticate this client using
+ * the given socket to communicate with the ssh-agent. The caller
+ * is responsible for connecting to the socket prior to calling
+ * this function.
+ * @returns SSH_OK in case of success
+ * SSH_ERROR in case of an error
+ */
+int ssh_set_agent_socket(ssh_session session, socket_t fd){
+ if (!session)
+ return SSH_ERROR;
+ if (!session->agent){
+ ssh_set_error(session, SSH_REQUEST_DENIED, "Session has no active agent");
+ return SSH_ERROR;
+ }
+
+ ssh_socket_set_fd(session->agent->sock, fd);
+ return SSH_OK;
+}
void agent_close(struct ssh_agent_struct *agent) {
if (agent == NULL) {
return;
}
- if (getenv("SSH_AUTH_SOCK")) {
- ssh_socket_close(agent->sock);
- }
+ ssh_socket_close(agent->sock);
}
void agent_free(ssh_agent agent) {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libssh-0.7.0/src/auth.c new/libssh-0.7.1/src/auth.c
--- old/libssh-0.7.0/src/auth.c 2015-05-08 13:55:13.000000000 +0200
+++ new/libssh-0.7.1/src/auth.c 2015-06-29 11:11:26.000000000 +0200
@@ -209,8 +209,8 @@
"Access denied. Authentication that can continue: %s",
auth_methods);
- session->auth_methods = 0;
}
+ session->auth_methods = 0;
if (strstr(auth_methods, "password") != NULL) {
session->auth_methods |= SSH_AUTH_METHOD_PASSWORD;
}
@@ -1045,15 +1045,14 @@
ssh_key_free(state->privkey);
ssh_key_free(state->pubkey);
SAFE_FREE(session->auth_auto_state);
- }
- if (rc == SSH_AUTH_ERROR) {
- return rc;
- } else if (rc == SSH_AUTH_SUCCESS) {
- SSH_LOG(SSH_LOG_INFO,
- "Successfully authenticated using %s",
- privkey_file);
+ if (rc == SSH_AUTH_SUCCESS) {
+ SSH_LOG(SSH_LOG_INFO,
+ "Successfully authenticated using %s",
+ privkey_file);
+ }
return rc;
- } else if (rc == SSH_AUTH_AGAIN){
+ }
+ if (rc == SSH_AUTH_AGAIN){
return rc;
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libssh-0.7.0/src/channels.c new/libssh-0.7.1/src/channels.c
--- old/libssh-0.7.0/src/channels.c 2015-05-08 13:55:13.000000000 +0200
+++ new/libssh-0.7.1/src/channels.c 2015-06-29 09:50:28.000000000 +0200
@@ -664,11 +664,9 @@
}
if (strcmp(request,"exit-status") == 0) {
- uint32_t exit_status = 0;
-
- SAFE_FREE(request);
- rc = ssh_buffer_unpack(packet, "d", &exit_status);
- SSH_LOG(SSH_LOG_PACKET, "received exit-status %d", channel->exit_status);
+ SAFE_FREE(request);
+ rc = ssh_buffer_unpack(packet, "d", &channel->exit_status);
+ SSH_LOG(SSH_LOG_PACKET, "received exit-status %d", channel->exit_status);
if(ssh_callbacks_exists(channel->callbacks, channel_exit_status_function)) {
channel->callbacks->channel_exit_status_function(channel->session,
@@ -714,7 +712,7 @@
SAFE_FREE(request);
- rc = ssh_buffer_unpack(packet, "sbs",
+ rc = ssh_buffer_unpack(packet, "sbss",
&sig, /* signal name */
&core_dumped, /* core dumped */
&errmsg, /* error message */
@@ -2206,6 +2204,11 @@
}
/* DEPRECATED */
+int ssh_forward_listen(ssh_session session, const char *address, int port, int *bound_port) {
+ return ssh_channel_listen_forward(session, address, port, bound_port);
+}
+
+/* DEPRECATED */
ssh_channel ssh_forward_accept(ssh_session session, int timeout_ms) {
return ssh_channel_accept(session, SSH_CHANNEL_FORWARDED_TCPIP, timeout_ms, NULL);
}
@@ -2272,6 +2275,7 @@
return rc;
}
+/* DEPRECATED */
int ssh_forward_cancel(ssh_session session, const char *address, int port) {
return ssh_channel_cancel_forward(session, address, port);
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libssh-0.7.0/src/kex.c new/libssh-0.7.1/src/kex.c
--- old/libssh-0.7.0/src/kex.c 2015-05-08 13:55:13.000000000 +0200
+++ new/libssh-0.7.1/src/kex.c 2015-06-24 16:24:08.000000000 +0200
@@ -42,24 +42,28 @@
# define AES "aes256-ctr,aes192-ctr,aes128-ctr,aes256-cbc,aes192-cbc,aes128-cbc,"
# define DES "3des-cbc"
# define DES_SUPPORTED "3des-cbc,des-cbc-ssh1"
+
#elif defined(HAVE_LIBCRYPTO)
+
# ifdef HAVE_OPENSSL_BLOWFISH_H
# define BLOWFISH "blowfish-cbc,"
-# else
+# else /* HAVE_OPENSSL_BLOWFISH_H */
# define BLOWFISH ""
-# endif
+# endif /* HAVE_OPENSSL_BLOWFISH_H */
+
# ifdef HAVE_OPENSSL_AES_H
# ifdef BROKEN_AES_CTR
# define AES "aes256-cbc,aes192-cbc,aes128-cbc,"
-# else
+# else /* BROKEN_AES_CTR */
# define AES "aes256-ctr,aes192-ctr,aes128-ctr,aes256-cbc,aes192-cbc,aes128-cbc,"
# endif /* BROKEN_AES_CTR */
-# else
+# else /* HAVE_OPENSSL_AES_H */
# define AES ""
-# endif
+# endif /* HAVE_OPENSSL_AES_H */
+
# define DES "3des-cbc"
# define DES_SUPPORTED "3des-cbc,des-cbc-ssh1"
-#endif
+#endif /* HAVE_LIBCRYPTO */
#ifdef WITH_ZLIB
#define ZLIB "none,zlib,zlib@openssh.com"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libssh-0.7.0/src/misc.c new/libssh-0.7.1/src/misc.c
--- old/libssh-0.7.0/src/misc.c 2015-04-23 11:12:36.000000000 +0200
+++ new/libssh-0.7.1/src/misc.c 2015-06-24 18:36:08.000000000 +0200
@@ -33,9 +33,10 @@
#include