summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorzeshuai007 <51382517@qq.com>2020-09-29 14:43:18 +0800
committerZezeng Wang <51382517@qq.com>2020-10-31 09:13:37 +0800
commit997e2d42db27e606bd67be6c91af5e6ef11434aa (patch)
tree61af23190f684ad687493d15f0730ac5657572ec
parent6762cad25cad7997d09931ba942212d2d0ef61f1 (diff)
downloadthrift-997e2d42db27e606bd67be6c91af5e6ef11434aa.tar.gz
fix warning in c_glib from add max_message_size code
-rw-r--r--lib/c_glib/src/thrift/c_glib/transport/thrift_server_transport.c11
-rw-r--r--lib/c_glib/src/thrift/c_glib/transport/thrift_server_transport.h8
-rw-r--r--lib/c_glib/src/thrift/c_glib/transport/thrift_ssl_socket.c12
-rw-r--r--lib/c_glib/src/thrift/c_glib/transport/thrift_transport.c1
-rwxr-xr-xlib/c_glib/test/testmemorybuffer.c1
-rw-r--r--lib/c_glib/test/testthriftbinaryreadcheck.c4
-rwxr-xr-xlib/c_glib/test/testthriftbufferedreadcheck.c1
-rw-r--r--lib/c_glib/test/testthriftcompactreadcheck.c2
-rw-r--r--lib/c_glib/test/testtransportsslsocket.c29
9 files changed, 35 insertions, 34 deletions
diff --git a/lib/c_glib/src/thrift/c_glib/transport/thrift_server_transport.c b/lib/c_glib/src/thrift/c_glib/transport/thrift_server_transport.c
index 687301194..8354f80ac 100644
--- a/lib/c_glib/src/thrift/c_glib/transport/thrift_server_transport.c
+++ b/lib/c_glib/src/thrift/c_glib/transport/thrift_server_transport.c
@@ -36,7 +36,7 @@ gboolean
thrift_server_transport_updateKnownMessageSize(ThriftServerTransport *transport, glong size, GError **error)
{
gboolean boolean = TRUE;
- ThriftServerTransport *tst = THRIFT_TRANSPORT (transport);
+ ThriftServerTransport *tst = THRIFT_SERVER_TRANSPORT (transport);
ThriftServerTransportClass *tstc = THRIFT_SERVER_TRANSPORT_GET_CLASS (transport);
glong consumed = tst->knowMessageSize_ - tst->remainingMessageSize_;
if(!tstc->resetConsumedMessageSize (transport, size, error))
@@ -176,6 +176,7 @@ static void
thrift_server_transport_class_init (ThriftServerTransportClass *c)
{
GObjectClass *gobject_class = G_OBJECT_CLASS (c);
+ ThriftServerTransportClass *tstc = THRIFT_SERVER_TRANSPORT_CLASS (c);
GParamSpec *param_spec = NULL;
/* setup accessors and mutators */
@@ -216,10 +217,10 @@ thrift_server_transport_class_init (ThriftServerTransportClass *c)
c->listen = thrift_server_transport_listen;
c->accept = thrift_server_transport_accept;
c->close = thrift_server_transport_close;
- c->updateKnownMessageSize = thrift_server_transport_updateKnownMessageSize;
- c->checkReadBytesAvailable = thrift_server_transport_checkReadBytesAvailable;
- c->resetConsumedMessageSize = thrift_server_transport_resetConsumedMessageSize;
- c->countConsumedMessageBytes = thrift_server_transport_countConsumedMessageBytes;
+ tstc->updateKnownMessageSize = thrift_server_transport_updateKnownMessageSize;
+ tstc->checkReadBytesAvailable = thrift_server_transport_checkReadBytesAvailable;
+ tstc->resetConsumedMessageSize = thrift_server_transport_resetConsumedMessageSize;
+ tstc->countConsumedMessageBytes = thrift_server_transport_countConsumedMessageBytes;
}
static void
diff --git a/lib/c_glib/src/thrift/c_glib/transport/thrift_server_transport.h b/lib/c_glib/src/thrift/c_glib/transport/thrift_server_transport.h
index 0fb55c001..9bf790125 100644
--- a/lib/c_glib/src/thrift/c_glib/transport/thrift_server_transport.h
+++ b/lib/c_glib/src/thrift/c_glib/transport/thrift_server_transport.h
@@ -63,10 +63,10 @@ struct _ThriftServerTransportClass
gboolean (*listen) (ThriftServerTransport *transport, GError **error);
ThriftTransport *(*accept) (ThriftServerTransport *transport, GError **error);
gboolean (*close) (ThriftServerTransport *transport, GError **error);
- gboolean (*updateKnownMessageSize) (ThriftTransport *transport, glong size, GError **error);
- gboolean (*checkReadBytesAvailable) (ThriftTransport *transport, glong numBytes, GError **error);
- gboolean (*resetConsumedMessageSize) (ThriftTransport *transport, glong newSize, GError **error);
- gboolean (*countConsumedMessageBytes) (ThriftTransport *transport, glong numBytes, GError **error);
+ gboolean (*updateKnownMessageSize) (ThriftServerTransport *transport, glong size, GError **error);
+ gboolean (*checkReadBytesAvailable) (ThriftServerTransport *transport, glong numBytes, GError **error);
+ gboolean (*resetConsumedMessageSize) (ThriftServerTransport *transport, glong newSize, GError **error);
+ gboolean (*countConsumedMessageBytes) (ThriftServerTransport *transport, glong numBytes, GError **error);
};
/* used by THRIFT_TYPE_SERVER_TRANSPORT */
diff --git a/lib/c_glib/src/thrift/c_glib/transport/thrift_ssl_socket.c b/lib/c_glib/src/thrift/c_glib/transport/thrift_ssl_socket.c
index 3778302c5..0afcb1b8f 100644
--- a/lib/c_glib/src/thrift/c_glib/transport/thrift_ssl_socket.c
+++ b/lib/c_glib/src/thrift/c_glib/transport/thrift_ssl_socket.c
@@ -69,6 +69,8 @@ static gboolean thrift_ssl_socket_openssl_initialized=FALSE;
/* This array will store all of the mutexes available to OpenSSL. */
static MUTEX_TYPE *thrift_ssl_socket_global_mutex_buf=NULL;
+gboolean
+thrift_ssl_socket_authorize(ThriftTransport * transport, GError **error);
/**
* OpenSSL uniq id function.
@@ -245,7 +247,7 @@ thrift_ssl_socket_peek (ThriftTransport *transport, GError **error)
gchar byte;
rc = SSL_peek(ssl_socket->ssl, &byte, 1);
if (rc < 0) {
- thrift_ssl_socket_get_ssl_error(ssl_socket, "Check socket data",
+ thrift_ssl_socket_get_ssl_error(ssl_socket, (const guchar*)"Check socket data",
THRIFT_SSL_SOCKET_ERROR_SSL, rc, error);
}
if (rc == 0) {
@@ -315,7 +317,7 @@ thrift_ssl_socket_read (ThriftTransport *transport, gpointer buf,
continue;
}
}else{
- thrift_ssl_socket_get_ssl_error(ssl_socket, "Receive error",
+ thrift_ssl_socket_get_ssl_error(ssl_socket, (const guchar*)"Receive error",
THRIFT_SSL_SOCKET_ERROR_SSL, bytes, error);
}
@@ -351,7 +353,7 @@ thrift_ssl_socket_write (ThriftTransport *transport, const gpointer buf,
ret = SSL_write (ssl_socket->ssl, (guint8 *)buf + sent, len - sent);
if (ret < 0)
{
- thrift_ssl_socket_get_ssl_error(ssl_socket, "Send error",
+ thrift_ssl_socket_get_ssl_error(ssl_socket, (const guchar*)"Send error",
THRIFT_SSL_SOCKET_ERROR_SSL, ret, error);
return FALSE;
}
@@ -423,7 +425,7 @@ thrift_ssl_socket_handle_handshake(ThriftTransport * transport, GError **error)
rc = SSL_connect(ssl_socket->ssl);
}
if (rc <= 0) {
- thrift_ssl_socket_get_ssl_error(ssl_socket, "Error while connect/bind", THRIFT_SSL_SOCKET_ERROR_CONNECT_BIND, rc, error);
+ thrift_ssl_socket_get_ssl_error(ssl_socket, (const guchar*)"Error while connect/bind", THRIFT_SSL_SOCKET_ERROR_CONNECT_BIND, rc, error);
return FALSE;
}
}else
@@ -851,7 +853,7 @@ thrift_ssl_socket_context_initialize(ThriftSSLSocketProtocol ssl_protocol, GErro
}
if (context == NULL) {
- thrift_ssl_socket_get_error("No cipher overlay", THRIFT_SSL_SOCKET_ERROR_CIPHER_NOT_AVAILABLE, error);
+ thrift_ssl_socket_get_error((const guchar*)"No cipher overlay", THRIFT_SSL_SOCKET_ERROR_CIPHER_NOT_AVAILABLE, error);
return NULL;
}
SSL_CTX_set_mode(context, SSL_MODE_AUTO_RETRY);
diff --git a/lib/c_glib/src/thrift/c_glib/transport/thrift_transport.c b/lib/c_glib/src/thrift/c_glib/transport/thrift_transport.c
index b876b076d..9d3f25e75 100644
--- a/lib/c_glib/src/thrift/c_glib/transport/thrift_transport.c
+++ b/lib/c_glib/src/thrift/c_glib/transport/thrift_transport.c
@@ -309,6 +309,7 @@ thrift_transport_class_init (ThriftTransportClass *cls)
/* setup accessors and mutators */
gobject_class->get_property = thrift_transport_get_property;
gobject_class->set_property = thrift_transport_set_property;
+ gobject_class->dispose = thrift_transport_dispose;
param_spec = g_param_spec_object ("configuration",
"configuration (construct)",
diff --git a/lib/c_glib/test/testmemorybuffer.c b/lib/c_glib/test/testmemorybuffer.c
index 9fb68b93d..cc9c56c12 100755
--- a/lib/c_glib/test/testmemorybuffer.c
+++ b/lib/c_glib/test/testmemorybuffer.c
@@ -186,7 +186,6 @@ static void
test_read_and_write_external (void)
{
ThriftMemoryBuffer *tbuffer = NULL;
- gchar *b;
GError *error = NULL;
GByteArray *buf = g_byte_array_new ();
g_assert (buf != NULL);
diff --git a/lib/c_glib/test/testthriftbinaryreadcheck.c b/lib/c_glib/test/testthriftbinaryreadcheck.c
index 36454ca44..f1caba85f 100644
--- a/lib/c_glib/test/testthriftbinaryreadcheck.c
+++ b/lib/c_glib/test/testthriftbinaryreadcheck.c
@@ -173,7 +173,7 @@ test_read_and_wirte_complex_types (void)
"port", port, "path", NULL,
"configuration", tconfiguration, NULL);
transport = THRIFT_TRANSPORT (tsocket);
- THRIFT_TRANSPORT_GET_CLASS (tsocket)->resetConsumedMessageSize(tsocket, -1, NULL);
+ THRIFT_TRANSPORT_GET_CLASS (tsocket)->resetConsumedMessageSize(THRIFT_TRANSPORT (tsocket), -1, NULL);
thrift_transport_open (transport, NULL);
g_assert (thrift_transport_is_open (transport));
@@ -221,9 +221,7 @@ thrift_server_complex_types (const int port)
ThriftType element_type = T_VOID,
key_type = T_VOID,
value_type = T_VOID;
- gint32 ret = 0;
guint32 size = 0;
- glong tempsize = 0;
ThriftConfiguration *tconfiguration = g_object_new (THRIFT_TYPE_CONFIGURATION,
"max_message_size", MAX_MESSAGE_SIZE,
diff --git a/lib/c_glib/test/testthriftbufferedreadcheck.c b/lib/c_glib/test/testthriftbufferedreadcheck.c
index 147207294..4870ae8cf 100755
--- a/lib/c_glib/test/testthriftbufferedreadcheck.c
+++ b/lib/c_glib/test/testthriftbufferedreadcheck.c
@@ -38,7 +38,6 @@ static void thrift_socket_server_open (const int port, int times);
static void
test_open_and_close(void)
{
- ThriftConfiguration *tconfiguration = NULL;
ThriftSocket *tsocket = NULL;
ThriftTransport *transport = NULL;
GError *err = NULL;
diff --git a/lib/c_glib/test/testthriftcompactreadcheck.c b/lib/c_glib/test/testthriftcompactreadcheck.c
index 03466ae9e..e2547d4fd 100644
--- a/lib/c_glib/test/testthriftcompactreadcheck.c
+++ b/lib/c_glib/test/testthriftcompactreadcheck.c
@@ -217,7 +217,7 @@ thrift_server_complex_types (const int port)
ThriftTransport *client = NULL;
ThriftCompactProtocol *tc = NULL;
ThriftProtocol *protocol = NULL;
- ThriftType element_type, key_type, value_type, field_type;
+ ThriftType element_type, key_type, value_type;
guint32 size = 0;
ThriftConfiguration *tconfiguration = g_object_new (THRIFT_TYPE_CONFIGURATION, "max_message_size", MAX_MESSAGE_SIZE,
diff --git a/lib/c_glib/test/testtransportsslsocket.c b/lib/c_glib/test/testtransportsslsocket.c
index 3c2644d8d..ba9ffdcae 100644
--- a/lib/c_glib/test/testtransportsslsocket.c
+++ b/lib/c_glib/test/testtransportsslsocket.c
@@ -103,7 +103,7 @@ test_ssl_create_and_set_properties(void)
GError *error=NULL;
GObject *object = NULL;
- object = thrift_ssl_socket_new(SSLTLS, &error);
+ object = (GObject *)thrift_ssl_socket_new(SSLTLS, &error);
g_object_get (G_OBJECT(object), "hostname", &hostname, "port", &port, "ssl_context", &ssl_ctx, NULL);
g_assert (ssl_ctx!=NULL);
@@ -180,7 +180,6 @@ test_ssl_write_invalid_socket(void)
ThriftSSLSocket *tSSLSocket = NULL;
ThriftTransport *transport = NULL;
GError *error=NULL;
- char buffer[] = "this must not break";
/* open a connection and close it */
tSSLSocket = thrift_ssl_socket_new_with_host(SSLTLS, "localhost", 51188+1, &error);
@@ -267,13 +266,13 @@ int verify_ip(char * hostname, struct sockaddr_storage *addr)
/* loop through all the results and connect to the first we can */
char dnshost[INET6_ADDRSTRLEN]; /* bigger addr supported IPV6 */
char socket_ip[INET6_ADDRSTRLEN];
- if(inet_ntop(addr->ss_family, get_in_addr(addr), socket_ip, INET6_ADDRSTRLEN)==socket_ip){
+ if(inet_ntop(addr->ss_family, get_in_addr((struct sockaddr*)addr), socket_ip, INET6_ADDRSTRLEN)==socket_ip){
g_debug("We are connected to host %s checking against certificate...", socket_ip);
int sizeip = socket_ip!=NULL ? strlen(socket_ip) : 0;
for(p = addr_info; p != NULL; p = p->ai_next) {
if(inet_ntop(p->ai_family, get_in_addr((struct sockaddr *)p->ai_addr), dnshost, INET6_ADDRSTRLEN)==dnshost){
if(dnshost!=NULL){
- g_info("DNS address [%i -> %s]", p->ai_addr, dnshost);
+ g_info("DNS address [%i -> %s]", ((guint32)(p->ai_addrlen)), dnshost);
if(!strncmp(dnshost, socket_ip, sizeip)){
retval=1;
break; /* if we get here, we must have connected successfully */
@@ -289,7 +288,7 @@ int verify_ip(char * hostname, struct sockaddr_storage *addr)
return retval;
}
-static void
+static void
read_from_file(char *buffer, long size, const char *file_name)
{
char ch;
@@ -330,7 +329,7 @@ gboolean verify_certificate_sn(X509 *cert, const unsigned char *serial_number)
}
char *tmp = BN_bn2dec(bn);
if (!tmp) {
- g_warning(stderr, "unable to convert BN to decimal string.\n");
+ g_warning((const char*)stderr, "unable to convert BN to decimal string.\n");
BN_free(bn);
return EXIT_FAILURE;
}
@@ -342,7 +341,7 @@ gboolean verify_certificate_sn(X509 *cert, const unsigned char *serial_number)
return EXIT_FAILURE;
}
*/
- if(!strncmp(serial_number, tmp, strlen(serial_number))){
+ if(!strncmp((const char*)serial_number, tmp, strlen((const char*)serial_number))){
retval=TRUE;
}else{
g_warning("Serial number is not valid");
@@ -356,6 +355,8 @@ gboolean verify_certificate_sn(X509 *cert, const unsigned char *serial_number)
gboolean my_access_manager(ThriftTransport * transport, X509 *cert, struct sockaddr_storage *addr, GError **error)
{
ThriftSSLSocket *sslSocket = THRIFT_SSL_SOCKET (transport);
+ THRIFT_UNUSED_VAR (error);
+ THRIFT_UNUSED_VAR (sslSocket);
g_info("Processing access to the server");
X509_NAME* iname = cert ? X509_get_issuer_name(cert) : NULL;
@@ -368,11 +369,11 @@ gboolean my_access_manager(ThriftTransport * transport, X509 *cert, struct socka
g_info("Issuer (cn) %s", issuer);
/* Issuer pinning */
- if(strncmp(ISSUER_CN_PINNING, issuer, strlen(ISSUER_CN_PINNING))){
+ if(strncmp(ISSUER_CN_PINNING, (const char*)issuer, strlen(ISSUER_CN_PINNING))){
g_warning("The Issuer of the certificate is not valid");
valid=FALSE;
}
- OPENSSL_free(issuer);
+ OPENSSL_free((void*)issuer);
if(!valid)
return valid;
}
@@ -385,7 +386,7 @@ gboolean my_access_manager(ThriftTransport * transport, X509 *cert, struct socka
gboolean valid = TRUE;
/* Subject pinning */
- if(strncmp(SUBJECT_CN_PINNING, subject, strlen(SUBJECT_CN_PINNING))){
+ if(strncmp(SUBJECT_CN_PINNING, (const char*)subject, strlen(SUBJECT_CN_PINNING))){
g_warning("The subject of the certificate is not valid");
valid=FALSE;
}
@@ -394,19 +395,19 @@ gboolean my_access_manager(ThriftTransport * transport, X509 *cert, struct socka
return valid;
/* Host pinning */
- if(verify_ip(subject, addr)){
+ if(verify_ip((char*)subject, addr)){
g_info("Verified subject");
}else{
g_info("Cannot verify subject");
valid=FALSE;
}
- OPENSSL_free(subject);
+ OPENSSL_free((void*)subject);
if(!valid)
return valid;
}
- if(!verify_certificate_sn(cert, CERT_SERIAL_NUMBER)){
+ if(!verify_certificate_sn(cert, (const unsigned char*)CERT_SERIAL_NUMBER)){
return FALSE;
}else{
g_info("Verified serial number");
@@ -487,7 +488,7 @@ thrift_socket_server (const int port)
ThriftServerTransport *transport = NULL;
ThriftTransport *client = NULL;
guchar buf[10]; /* a buffer */
- guchar match[10] = TEST_DATA;
+ guchar match[] = TEST_DATA;
ThriftServerSocket *tsocket = g_object_new (THRIFT_TYPE_SERVER_SOCKET,
"port", port, NULL);