Changeset 214:5a1b93f59f8f in freeDiameter
- Timestamp:
- Feb 18, 2010, 3:20:00 PM (14 years ago)
- Branch:
- default
- Phase:
- public
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
freeDiameter/cnxctx.c
r211 r214 943 943 944 944 /* print the key exchange's algorithm name */ 945 kx = gnutls_kx_get (session);946 tmp = gnutls_kx_get_name (kx);945 GNUTLS_TRACE( kx = gnutls_kx_get (session) ); 946 GNUTLS_TRACE( tmp = gnutls_kx_get_name (kx) ); 947 947 fd_log_debug("\t - Key Exchange: %s\n", tmp); 948 948 949 949 /* Check the authentication type used and switch 950 950 * to the appropriate. */ 951 cred = gnutls_auth_get_type (session);951 GNUTLS_TRACE( cred = gnutls_auth_get_type (session) ); 952 952 switch (cred) 953 953 { … … 1032 1032 return EINVAL; 1033 1033 1034 cert_list = gnutls_certificate_get_peers (session, &cert_list_size);1034 GNUTLS_TRACE( cert_list = gnutls_certificate_get_peers (session, &cert_list_size) ); 1035 1035 if (cert_list == NULL) 1036 1036 return EINVAL; … … 1054 1054 fd_log_debug(" Certificate %d info:\n", i); 1055 1055 1056 expiration_time = gnutls_x509_crt_get_expiration_time (cert);1057 activation_time = gnutls_x509_crt_get_activation_time (cert);1056 GNUTLS_TRACE( expiration_time = gnutls_x509_crt_get_expiration_time (cert) ); 1057 GNUTLS_TRACE( activation_time = gnutls_x509_crt_get_activation_time (cert) ); 1058 1058 1059 1059 fd_log_debug("\t - Certificate is valid since: %s", ctime (&activation_time)); … … 1074 1074 1075 1075 /* Extract some of the public key algorithm's parameters */ 1076 algo = gnutls_x509_crt_get_pk_algorithm (cert, &bits);1076 GNUTLS_TRACE( algo = gnutls_x509_crt_get_pk_algorithm (cert, &bits) ); 1077 1077 fd_log_debug("\t - Certificate public key: %s\n", 1078 1078 gnutls_pk_algorithm_get_name (algo)); … … 1083 1083 1084 1084 size = sizeof (dn); 1085 gnutls_x509_crt_get_dn (cert, dn, &size);1085 GNUTLS_TRACE( gnutls_x509_crt_get_dn (cert, dn, &size) ); 1086 1086 fd_log_debug("\t - DN: %s\n", dn); 1087 1087 1088 1088 size = sizeof (dn); 1089 gnutls_x509_crt_get_issuer_dn (cert, dn, &size);1089 GNUTLS_TRACE( gnutls_x509_crt_get_issuer_dn (cert, dn, &size) ); 1090 1090 fd_log_debug("\t - Issuer's DN: %s\n", dn); 1091 1091 1092 gnutls_x509_crt_deinit (cert);1092 GNUTLS_TRACE( gnutls_x509_crt_deinit (cert) ); 1093 1093 } 1094 1094 } … … 1102 1102 CHECK_GNUTLS_DO( gnutls_x509_crt_import (cert, &cert_list[i], GNUTLS_X509_FMT_DER), return EINVAL); 1103 1103 1104 deadline = gnutls_x509_crt_get_expiration_time(cert);1104 GNUTLS_TRACE( deadline = gnutls_x509_crt_get_expiration_time(cert) ); 1105 1105 if ((deadline != (time_t)-1) && (deadline < now)) { 1106 1106 if (TRACE_BOOL(INFO)) { … … 1111 1111 } 1112 1112 1113 deadline = gnutls_x509_crt_get_activation_time(cert);1113 GNUTLS_TRACE( deadline = gnutls_x509_crt_get_activation_time(cert) ); 1114 1114 if ((deadline != (time_t)-1) && (deadline > now)) { 1115 1115 if (TRACE_BOOL(INFO)) { … … 1130 1130 } 1131 1131 1132 gnutls_x509_crt_deinit (cert);1132 GNUTLS_TRACE( gnutls_x509_crt_deinit (cert) ); 1133 1133 } 1134 1134 … … 1165 1165 } else { 1166 1166 /* Set the transport pointer passed to push & pull callbacks */ 1167 gnutls_transport_set_ptr( conn->cc_tls_para.session, (gnutls_transport_ptr_t) conn);1167 GNUTLS_TRACE( gnutls_transport_set_ptr( conn->cc_tls_para.session, (gnutls_transport_ptr_t) conn ) ); 1168 1168 1169 1169 /* Set the push and pull callbacks */ 1170 gnutls_transport_set_pull_function(conn->cc_tls_para.session, (void *)fd_cnx_s_recv);1171 gnutls_transport_set_push_function(conn->cc_tls_para.session, (void *)fd_cnx_s_send);1170 GNUTLS_TRACE( gnutls_transport_set_pull_function(conn->cc_tls_para.session, (void *)fd_cnx_s_recv) ); 1171 GNUTLS_TRACE( gnutls_transport_set_push_function(conn->cc_tls_para.session, (void *)fd_cnx_s_send) ); 1172 1172 } 1173 1173 … … 1222 1222 CHECK_PARAMS( gnutls_certificate_type_get (conn->cc_tls_para.session) == GNUTLS_CRT_X509 ); 1223 1223 1224 *cert_list = gnutls_certificate_get_peers (conn->cc_tls_para.session, cert_list_size);1224 GNUTLS_TRACE( *cert_list = gnutls_certificate_get_peers (conn->cc_tls_para.session, cert_list_size) ); 1225 1225 if (*cert_list == NULL) { 1226 1226 TRACE_DEBUG(INFO, "No certificate was provided by remote peer / an error occurred."); … … 1407 1407 fd_sctps_gnutls_deinit_others(conn); 1408 1408 if (conn->cc_tls_para.session) { 1409 gnutls_deinit(conn->cc_tls_para.session);1409 GNUTLS_TRACE( gnutls_deinit(conn->cc_tls_para.session) ); 1410 1410 conn->cc_tls_para.session = NULL; 1411 1411 } … … 1435 1435 /* Free the resources of the TLS session */ 1436 1436 if (conn->cc_tls_para.session) { 1437 gnutls_deinit(conn->cc_tls_para.session);1437 GNUTLS_TRACE( gnutls_deinit(conn->cc_tls_para.session) ); 1438 1438 conn->cc_tls_para.session = NULL; 1439 1439 } -
freeDiameter/main.c
r213 r214 75 75 76 76 /* Initialize gcrypt and gnutls */ 77 (void) gcry_control (GCRYCTL_SET_THREAD_CBS, &gcry_threads_pthread);78 (void) gcry_control (GCRYCTL_ENABLE_QUICK_RANDOM, 0);79 (void) gcry_control (GCRYCTL_DISABLE_SECMEM, NULL, 0);77 GNUTLS_TRACE( (void) gcry_control (GCRYCTL_SET_THREAD_CBS, &gcry_threads_pthread) ); 78 GNUTLS_TRACE( (void) gcry_control (GCRYCTL_ENABLE_QUICK_RANDOM, 0) ); 79 GNUTLS_TRACE( (void) gcry_control (GCRYCTL_DISABLE_SECMEM, NULL, 0) ); 80 80 CHECK_GNUTLS_DO( gnutls_global_init(), return EINVAL ); 81 81 if ( ! gnutls_check_version(GNUTLS_VERSION) ) { … … 173 173 CHECK_FCT_DO( fd_thr_term(&sig_th), /* reclaim resources of the signal thread */ ); 174 174 175 gnutls_global_deinit();175 GNUTLS_TRACE( gnutls_global_deinit() ); 176 176 177 177 fd_log_debug(FD_PROJECT_BINARY " daemon is terminated.\n"); -
freeDiameter/sctps.c
r209 r214 212 212 { 213 213 /* Set the transport pointer passed to push & pull callbacks */ 214 gnutls_transport_set_ptr( session, (gnutls_transport_ptr_t) ctx);214 GNUTLS_TRACE( gnutls_transport_set_ptr( session, (gnutls_transport_ptr_t) ctx ) ); 215 215 216 216 /* Reset the low water value, since we don't use sockets */ 217 gnutls_transport_set_lowat( session, 0);217 GNUTLS_TRACE( gnutls_transport_set_lowat( session, 0 ) ); 218 218 219 219 /* Set the push and pull callbacks */ 220 gnutls_transport_set_pull_function(session, sctps_pull);221 gnutls_transport_set_push_function(session, sctps_push);220 GNUTLS_TRACE( gnutls_transport_set_pull_function(session, sctps_pull) ); 221 GNUTLS_TRACE( gnutls_transport_set_push_function(session, sctps_push) ); 222 222 223 223 return; … … 242 242 }; 243 243 244 /* The level at which we debug session resuming */245 #define SR_LEVEL (FULL + 1)246 247 244 /* Initialize the store area for a connection */ 248 245 static int store_init(struct cnxctx * conn) … … 326 323 int ret = 0; 327 324 325 TRACE_DEBUG( GNUTLS_DBG_LEVEL, "Callback: %s", __PRETTY_FUNCTION__ ); 328 326 CHECK_PARAMS_DO( sto && key.data && data.data, return -1 ); 329 327 330 328 CHECK_POSIX_DO( pthread_rwlock_wrlock(&sto->lock), return -1 ); 331 TRACE_DEBUG_BUFFER( SR_LEVEL, "Session store [key ", key.data, key.size, "]");329 TRACE_DEBUG_BUFFER(GNUTLS_DBG_LEVEL, "Session store [key ", key.data, key.size, "]"); 332 330 333 331 li = find_or_next(sto, key, &match); … … 340 338 ret = -1; 341 339 } else { 342 TRACE_DEBUG( SR_LEVEL, "GnuTLS tried to store a session with same key and same data, skipped.");340 TRACE_DEBUG(GNUTLS_DBG_LEVEL, "GnuTLS tried to store a session with same key and same data, skipped."); 343 341 } 344 342 goto out; … … 375 373 int ret = 0; 376 374 375 TRACE_DEBUG( GNUTLS_DBG_LEVEL, "Callback: %s", __PRETTY_FUNCTION__ ); 377 376 CHECK_PARAMS_DO( sto && key.data, return -1 ); 378 377 379 378 CHECK_POSIX_DO( pthread_rwlock_wrlock(&sto->lock), return -1 ); 380 TRACE_DEBUG_BUFFER( SR_LEVEL, "Session delete [key ", key.data, key.size, "]");379 TRACE_DEBUG_BUFFER(GNUTLS_DBG_LEVEL, "Session delete [key ", key.data, key.size, "]"); 381 380 382 381 li = find_or_next(sto, key, &match); … … 407 406 gnutls_datum_t error = { NULL, 0 }; 408 407 408 TRACE_DEBUG( GNUTLS_DBG_LEVEL, "Callback: %s", __PRETTY_FUNCTION__ ); 409 409 CHECK_PARAMS_DO( sto && key.data, return error ); 410 410 411 411 CHECK_POSIX_DO( pthread_rwlock_rdlock(&sto->lock), return error ); 412 TRACE_DEBUG_BUFFER( SR_LEVEL, "Session fetch [key ", key.data, key.size, "]");412 TRACE_DEBUG_BUFFER(GNUTLS_DBG_LEVEL, "Session fetch [key ", key.data, key.size, "]"); 413 413 414 414 li = find_or_next(sto, key, &match); 415 415 if (match) { 416 416 sr = (struct sr_data *)li; 417 CHECK_MALLOC_DO(res.data = gnutls_malloc(sr->data.size), goto out);417 GNUTLS_TRACE( CHECK_MALLOC_DO(res.data = gnutls_malloc(sr->data.size), goto out ) ); 418 418 res.size = sr->data.size; 419 419 memcpy(res.data, sr->data.data, res.size); 420 420 } 421 421 out: 422 TRACE_DEBUG( SR_LEVEL, "Fetched (%p, %d) from store %p", res.data, res.size, sto);422 TRACE_DEBUG(GNUTLS_DBG_LEVEL, "Fetched (%p, %d) from store %p", res.data, res.size, sto); 423 423 CHECK_POSIX_DO( pthread_rwlock_unlock(&sto->lock), return error); 424 424 return res; … … 430 430 TRACE_ENTRY("%p", conn); 431 431 432 gnutls_db_set_retrieve_function(session, sr_fetch);433 gnutls_db_set_remove_function (session, sr_remove);434 gnutls_db_set_store_function (session, sr_store);435 gnutls_db_set_ptr (session, conn->cc_sctps_data.sess_store);432 GNUTLS_TRACE( gnutls_db_set_retrieve_function(session, sr_fetch)); 433 GNUTLS_TRACE( gnutls_db_set_remove_function (session, sr_remove)); 434 GNUTLS_TRACE( gnutls_db_set_store_function (session, sr_store)); 435 GNUTLS_TRACE( gnutls_db_set_ptr (session, conn->cc_sctps_data.sess_store)); 436 436 437 437 return; … … 456 456 CHECK_GNUTLS_DO( gnutls_handshake( ctx->session ), return NULL); 457 457 458 resumed = gnutls_session_is_resumed(ctx->session);458 GNUTLS_TRACE( resumed = gnutls_session_is_resumed(ctx->session) ); 459 459 if (!resumed) { 460 460 /* Check the credentials here also */ … … 530 530 CHECK_GNUTLS_DO( gnutls_session_get_data2(conn->cc_tls_para.session, &master_data), return ENOMEM ); 531 531 /* For debug: */ 532 if (TRACE_BOOL( SR_LEVEL)) {532 if (TRACE_BOOL(GNUTLS_DBG_LEVEL)) { 533 533 uint8_t id[256]; 534 534 size_t ids = sizeof(id); 535 535 CHECK_GNUTLS_DO( gnutls_session_get_id(conn->cc_tls_para.session, id, &ids), /* continue */ ); 536 TRACE_DEBUG_BUFFER( SR_LEVEL, "Master session id: [", id, ids, "]");536 TRACE_DEBUG_BUFFER(GNUTLS_DBG_LEVEL, "Master session id: [", id, ids, "]"); 537 537 } 538 538 } … … 559 559 /* We can now release the memory of master session data if any */ 560 560 if (conn->cc_tls_para.mode == GNUTLS_CLIENT) { 561 gnutls_free(master_data.data);561 GNUTLS_TRACE( gnutls_free(master_data.data) ); 562 562 } 563 563 … … 639 639 for (i = 1; i < conn->cc_sctp_para.pairs; i++) { 640 640 if (conn->cc_sctps_data.array[i].session) { 641 gnutls_deinit(conn->cc_sctps_data.array[i].session);641 GNUTLS_TRACE( gnutls_deinit(conn->cc_sctps_data.array[i].session) ); 642 642 conn->cc_sctps_data.array[i].session = NULL; 643 643 } … … 679 679 free(conn->cc_sctps_data.array[i].partial.buf); 680 680 if (conn->cc_sctps_data.array[i].session) { 681 gnutls_deinit(conn->cc_sctps_data.array[i].session);681 GNUTLS_TRACE( gnutls_deinit(conn->cc_sctps_data.array[i].session) ); 682 682 conn->cc_sctps_data.array[i].session = NULL; 683 683 } -
include/freeDiameter/freeDiameter.h
r162 r214 47 47 #endif /* GNUTLS_VERSION */ 48 48 49 /* GNUTLS calls debug level */ 50 #ifndef GNUTLS_DBG_LEVEL 51 #define GNUTLS_DBG_LEVEL ANNOYING 52 #endif /* GNUTLS_DBG_LEVEL */ 53 49 54 /* Check the return value of a GNUTLS function, log and propagate */ 50 55 #define CHECK_GNUTLS_DO( __call__, __fallback__ ) { \ 51 56 int __ret__; \ 52 TRACE_DEBUG _ALL( "Check FCT: " #__call__ );\57 TRACE_DEBUG(GNUTLS_DBG_LEVEL, "GNUTLS call: " #__call__ ); \ 53 58 __ret__ = (__call__); \ 54 59 if (__ret__ < 0) { \ … … 57 62 } \ 58 63 } 64 65 /* For GNUTLS routines that do not return a value */ 66 #define GNUTLS_TRACE( __call__) { \ 67 TRACE_DEBUG(GNUTLS_DBG_LEVEL, "GNUTLS call: " #__call__ ); \ 68 (__call__); \ 69 } 70 59 71 60 72
Note: See TracChangeset
for help on using the changeset viewer.