summaryrefslogtreecommitdiff
path: root/sql/sql_show.cc
diff options
context:
space:
mode:
Diffstat (limited to 'sql/sql_show.cc')
-rw-r--r--sql/sql_show.cc45
1 files changed, 45 insertions, 0 deletions
diff --git a/sql/sql_show.cc b/sql/sql_show.cc
index 67713b85720..28d405690bd 100644
--- a/sql/sql_show.cc
+++ b/sql/sql_show.cc
@@ -1173,18 +1173,46 @@ int mysqld_show(THD *thd, const char *wild, show_var_st *variables)
net_store_data(&packet2,(uint32)
SSL_CTX_sess_accept_good(ssl_acceptor_fd->ssl_context_));
break;
+ case SHOW_SSL_CTX_SESS_CONNECT_GOOD:
+ net_store_data(&packet2,(uint32)
+ SSL_CTX_sess_connect_good(ssl_acceptor_fd->ssl_context_));
+ break;
case SHOW_SSL_CTX_SESS_ACCEPT_RENEGOTIATE:
net_store_data(&packet2,(uint32)
SSL_CTX_sess_accept_renegotiate(ssl_acceptor_fd->ssl_context_));
break;
+ case SHOW_SSL_CTX_SESS_CONNECT_RENEGOTIATE:
+ net_store_data(&packet2,(uint32)
+ SSL_CTX_sess_connect_renegotiate(ssl_acceptor_fd->ssl_context_));
+ break;
case SHOW_SSL_CTX_SESS_CB_HITS:
net_store_data(&packet2,(uint32)
SSL_CTX_sess_cb_hits(ssl_acceptor_fd->ssl_context_));
break;
+ case SHOW_SSL_CTX_SESS_HITS:
+ net_store_data(&packet2,(uint32)
+ SSL_CTX_sess_hits(ssl_acceptor_fd->ssl_context_));
+ break;
+ case SHOW_SSL_CTX_SESS_CACHE_FULL:
+ net_store_data(&packet2,(uint32)
+ SSL_CTX_sess_cache_full(ssl_acceptor_fd->ssl_context_));
+ break;
+ case SHOW_SSL_CTX_SESS_MISSES:
+ net_store_data(&packet2,(uint32)
+ SSL_CTX_sess_misses(ssl_acceptor_fd->ssl_context_));
+ break;
+ case SHOW_SSL_CTX_SESS_TIMEOUTS:
+ net_store_data(&packet2,(uint32)
+ SSL_CTX_sess_timeouts(ssl_acceptor_fd->ssl_context_));
+ break;
case SHOW_SSL_CTX_SESS_NUMBER:
net_store_data(&packet2,(uint32)
SSL_CTX_sess_number(ssl_acceptor_fd->ssl_context_));
break;
+ case SHOW_SSL_CTX_SESS_CONNECT:
+ net_store_data(&packet2,(uint32)
+ SSL_CTX_sess_connect(ssl_acceptor_fd->ssl_context_));
+ break;
case SHOW_SSL_CTX_SESS_GET_CACHE_SIZE:
net_store_data(&packet2,(uint32)
SSL_CTX_sess_get_cache_size(ssl_acceptor_fd->ssl_context_));
@@ -1246,6 +1274,23 @@ int mysqld_show(THD *thd, const char *wild, show_var_st *variables)
break;
case SHOW_SSL_GET_CIPHER:
net_store_data(&packet2, thd->net.vio->ssl_ ? SSL_get_cipher(thd->net.vio->ssl_) : "");
+ case SHOW_SSL_GET_CIPHER_LIST:
+ if(thd->net.vio->ssl_)
+ {
+ char buf[1024]="";
+ for (int i=0; ; i++)
+ {
+ const char *p=SSL_get_cipher_list(thd->net.vio->ssl_,i);
+ if (p == NULL)
+ break;
+ if (i != 0)
+ strcat(buf,":");
+ strcat(buf,p);
+ DBUG_PRINT("info",("cipher to add: %s,%s",p,buf));
+ }
+ net_store_data(&packet2, buf);
+ } else
+ net_store_data(&packet2, "");
break;
#endif /* HAVE_OPENSSL */