Repository: qpid-proton
Updated Branches:
  refs/heads/master 5e8522fcc -> ed82ea86f


PROTON-1453: properly terminate output string buffer

This closes #101


Project: http://git-wip-us.apache.org/repos/asf/qpid-proton/repo
Commit: http://git-wip-us.apache.org/repos/asf/qpid-proton/commit/ed82ea86
Tree: http://git-wip-us.apache.org/repos/asf/qpid-proton/tree/ed82ea86
Diff: http://git-wip-us.apache.org/repos/asf/qpid-proton/diff/ed82ea86

Branch: refs/heads/master
Commit: ed82ea86f55b273cf5896f8af262e5a3ae14350e
Parents: 5e8522f
Author: Ken Giusti <kgiu...@apache.org>
Authored: Thu Mar 30 13:28:57 2017 -0400
Committer: Ken Giusti <kgiu...@apache.org>
Committed: Fri Mar 31 09:51:07 2017 -0400

----------------------------------------------------------------------
 proton-c/src/ssl/openssl.c  | 1 +
 proton-c/src/ssl/schannel.c | 5 +++--
 proton-c/src/ssl/ssl_stub.c | 3 +++
 3 files changed, 7 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/ed82ea86/proton-c/src/ssl/openssl.c
----------------------------------------------------------------------
diff --git a/proton-c/src/ssl/openssl.c b/proton-c/src/ssl/openssl.c
index 351b0aa..0d7c40b 100644
--- a/proton-c/src/ssl/openssl.c
+++ b/proton-c/src/ssl/openssl.c
@@ -762,6 +762,7 @@ bool pn_ssl_get_protocol_name(pn_ssl_t *ssl0, char *buffer, 
size_t size )
   const SSL_CIPHER *c;
 
   pni_ssl_t *ssl = get_ssl_internal(ssl0);
+  *buffer = '\0';
   if (ssl->ssl && (c = SSL_get_current_cipher( ssl->ssl ))) {
     const char *v = SSL_CIPHER_get_version(c);
     if (v) {

http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/ed82ea86/proton-c/src/ssl/schannel.c
----------------------------------------------------------------------
diff --git a/proton-c/src/ssl/schannel.c b/proton-c/src/ssl/schannel.c
index 420e7c5..9e017d3 100644
--- a/proton-c/src/ssl/schannel.c
+++ b/proton-c/src/ssl/schannel.c
@@ -668,9 +668,9 @@ int pn_ssl_get_ssf(pn_ssl_t *ssl0)
 bool pn_ssl_get_cipher_name(pn_ssl_t *ssl0, char *buffer, size_t size )
 {
   pni_ssl_t *ssl = get_ssl_internal(ssl0);
+  *buffer = '\0';
   if (ssl->state != RUNNING || !SecIsValidHandle(&ssl->ctxt_handle))
     return false;
-  *buffer = '\0';
   SecPkgContext_ConnectionInfo info;
   if (QueryContextAttributes(&ssl->ctxt_handle, SECPKG_ATTR_CONNECTION_INFO, 
&info) == SEC_E_OK) {
     // TODO: come up with string for all permutations?
@@ -686,9 +686,9 @@ bool pn_ssl_get_cipher_name(pn_ssl_t *ssl0, char *buffer, 
size_t size )
 bool pn_ssl_get_protocol_name(pn_ssl_t *ssl0, char *buffer, size_t size )
 {
   pni_ssl_t *ssl = get_ssl_internal(ssl0);
+  *buffer = '\0';
   if (ssl->state != RUNNING || !SecIsValidHandle(&ssl->ctxt_handle))
     return false;
-  *buffer = '\0';
   SecPkgContext_ConnectionInfo info;
   if (QueryContextAttributes(&ssl->ctxt_handle, SECPKG_ATTR_CONNECTION_INFO, 
&info) == SEC_E_OK) {
     if (info.dwProtocol & (SP_PROT_TLS1_CLIENT | SP_PROT_TLS1_SERVER))
@@ -2000,6 +2000,7 @@ int pn_ssl_get_cert_fingerprint(pn_ssl_t *ssl0,
                                           size_t fingerprint_length,
                                           pn_ssl_hash_alg hash_alg)
 {
+    *fingerprint = '\0';
     return -1;
 }
 

http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/ed82ea86/proton-c/src/ssl/ssl_stub.c
----------------------------------------------------------------------
diff --git a/proton-c/src/ssl/ssl_stub.c b/proton-c/src/ssl/ssl_stub.c
index db2d983..2d58a5c 100644
--- a/proton-c/src/ssl/ssl_stub.c
+++ b/proton-c/src/ssl/ssl_stub.c
@@ -75,11 +75,13 @@ const pn_io_layer_t ssl_layer = {
 
 bool pn_ssl_get_cipher_name(pn_ssl_t *ssl, char *buffer, size_t size)
 {
+  *buffer = '\0';
   return false;
 }
 
 bool pn_ssl_get_protocol_name(pn_ssl_t *ssl, char *buffer, size_t size)
 {
+  *buffer = '\0';
   return false;
 }
 
@@ -150,6 +152,7 @@ int pn_ssl_get_ssf(pn_ssl_t *ssl)
 
 int pn_ssl_get_cert_fingerprint(pn_ssl_t *ssl0, char *fingerprint, size_t 
fingerprint_length, pn_ssl_hash_alg hash_alg)
 {
+    *fingerprint = '\0';
     return -1;
 }
 


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org
For additional commands, e-mail: commits-h...@qpid.apache.org

Reply via email to