Remove unnecessary parens in return statements

This commit is contained in:
William Robinet 2023-08-16 15:40:29 +02:00
parent f395a3a3ce
commit ba9410dac5
No known key found for this signature in database
GPG key ID: 003FA3DF74C7A949
25 changed files with 263 additions and 263 deletions

View file

@ -84,20 +84,20 @@ abort:
if(_status) { if(_status) {
network_handler_destroy(mod, &handler); network_handler_destroy(mod, &handler);
} }
return (_status); return _status;
} }
int network_handler_destroy(proto_mod *mod, n_handler **handlerp) { int network_handler_destroy(proto_mod *mod, n_handler **handlerp) {
n_handler *handler = 0; n_handler *handler = 0;
if(!handlerp || !*handlerp) if(!handlerp || !*handlerp)
return (0); return 0;
handler = *handlerp; handler = *handlerp;
mod->vtbl->destroy_ctx(mod->handle, &handler->ctx); mod->vtbl->destroy_ctx(mod->handle, &handler->ctx);
free(*handlerp); free(*handlerp);
*handlerp = 0; *handlerp = 0;
return (0); return 0;
} }
int network_process_packet(n_handler *handler, int network_process_packet(n_handler *handler,
@ -124,7 +124,7 @@ int network_process_packet(n_handler *handler,
printf( printf(
"Malformed packet, packet too small to contain IP header, skipping " "Malformed packet, packet too small to contain IP header, skipping "
"...\n"); "...\n");
return (0); return 0;
} }
memset(&p.i_addr.so_st, 0x0, sizeof(struct sockaddr_storage)); memset(&p.i_addr.so_st, 0x0, sizeof(struct sockaddr_storage));
@ -145,7 +145,7 @@ int network_process_packet(n_handler *handler,
if((off & 0x1fff) || /*Later fragment*/ if((off & 0x1fff) || /*Later fragment*/
(off & 0x2000)) { /*More fragments*/ (off & 0x2000)) { /*More fragments*/
/* fprintf(stderr,"Fragmented packet! rejecting\n"); */ /* fprintf(stderr,"Fragmented packet! rejecting\n"); */
return (0); return 0;
} }
hlen = p.l3_hdr.ip->ip_hl * 4; hlen = p.l3_hdr.ip->ip_hl * 4;
@ -157,7 +157,7 @@ int network_process_packet(n_handler *handler,
printf( printf(
"Malformed packet, size from IP header is larger than size " "Malformed packet, size from IP header is larger than size "
"reported by libpcap, skipping ...\n"); "reported by libpcap, skipping ...\n");
return (0); return 0;
} }
if(p.len == 0) { if(p.len == 0) {
@ -190,7 +190,7 @@ int network_process_packet(n_handler *handler,
printf( printf(
"Malformed packet, size from IP header is larger than size " "Malformed packet, size from IP header is larger than size "
"reported by libpcap, skipping ...\n"); "reported by libpcap, skipping ...\n");
return (0); return 0;
} }
if(p.len == 0) { if(p.len == 0) {
@ -210,7 +210,7 @@ int network_process_packet(n_handler *handler,
break; break;
} }
return (0); return 0;
} }
int packet_copy(packet *in, packet **out) { int packet_copy(packet *in, packet **out) {
@ -239,16 +239,16 @@ abort:
if(_status) { if(_status) {
packet_destroy(p); packet_destroy(p);
} }
return (_status); return _status;
} }
int packet_destroy(packet *p) { int packet_destroy(packet *p) {
if(!p) if(!p)
return (0); return 0;
FREE(p->base); FREE(p->base);
FREE(p); FREE(p);
return (0); return 0;
} }
int timestamp_diff(struct timeval *t1, int timestamp_diff(struct timeval *t1,
@ -263,7 +263,7 @@ int timestamp_diff(struct timeval *t1,
if(t0->tv_usec <= t1->tv_usec) { if(t0->tv_usec <= t1->tv_usec) {
diff->tv_sec = t1->tv_sec - t0->tv_sec; diff->tv_sec = t1->tv_sec - t0->tv_sec;
diff->tv_usec = t1->tv_usec - t0->tv_usec; diff->tv_usec = t1->tv_usec - t0->tv_usec;
return (0); return 0;
} }
/*Hard case*/ /*Hard case*/
@ -273,7 +273,7 @@ int timestamp_diff(struct timeval *t1,
diff->tv_sec = t1->tv_sec - (t0->tv_sec + 1); diff->tv_sec = t1->tv_sec - (t0->tv_sec + 1);
diff->tv_usec = 1000000 - d; diff->tv_usec = 1000000 - d;
return (0); return 0;
} }
int lookuphostname(struct sockaddr_storage *so_st, char **namep) { int lookuphostname(struct sockaddr_storage *so_st, char **namep) {
@ -295,7 +295,7 @@ int lookuphostname(struct sockaddr_storage *so_st, char **namep) {
inet_ntop(so_st->ss_family, addr, *namep, INET6_ADDRSTRLEN); inet_ntop(so_st->ss_family, addr, *namep, INET6_ADDRSTRLEN);
} }
return (0); return 0;
} }
int addrtotext(struct sockaddr_storage *so_st, char **namep) { int addrtotext(struct sockaddr_storage *so_st, char **namep) {
@ -309,5 +309,5 @@ int addrtotext(struct sockaddr_storage *so_st, char **namep) {
} }
inet_ntop(so_st->ss_family, addr, *namep, INET6_ADDRSTRLEN); inet_ntop(so_st->ss_family, addr, *namep, INET6_ADDRSTRLEN);
return (0); return 0;
} }

View file

@ -546,7 +546,7 @@ char *collapse_args(int argc, char **argv) {
char *ret; char *ret;
if(!argc) if(!argc)
return (0); return 0;
for(i = 0; i < argc; i++) { for(i = 0; i < argc; i++) {
len += strlen(argv[i]) + 1; len += strlen(argv[i]) + 1;
@ -564,5 +564,5 @@ char *collapse_args(int argc, char **argv) {
ret[len++] = ' '; ret[len++] = ' ';
} }
return (ret); return ret;
} }

View file

@ -53,7 +53,7 @@ int explain(char *format, ...) {
vprintf(format, ap); vprintf(format, ap);
va_end(ap); va_end(ap);
return (0); return 0;
} }
int exdump(name, data) char *name; int exdump(name, data) char *name;
@ -82,5 +82,5 @@ Data *data;
INDENT_POP; INDENT_POP;
if(data->len > 8 && i % 12) if(data->len > 8 && i % 12)
LF; LF;
return (0); return 0;
} }

View file

@ -69,15 +69,15 @@ abort:
if(_status) { if(_status) {
destroy_proto_handler(&handler); destroy_proto_handler(&handler);
} }
return (_status); return _status;
} }
int destroy_proto_handler(proto_handler **handlerp) { int destroy_proto_handler(proto_handler **handlerp) {
if(!handlerp || !*handlerp) if(!handlerp || !*handlerp)
return (0); return 0;
(*handlerp)->vtbl->destroy(&(*handlerp)->obj); (*handlerp)->vtbl->destroy(&(*handlerp)->obj);
free(*handlerp); free(*handlerp);
*handlerp = 0; *handlerp = 0;
return (0); return 0;
} }

View file

@ -64,7 +64,7 @@ static int zero_conn PROTO_LIST((tcp_conn * conn));
static int zero_conn(tcp_conn *conn) { static int zero_conn(tcp_conn *conn) {
memset(conn, 0, sizeof(tcp_conn)); memset(conn, 0, sizeof(tcp_conn));
return (0); return 0;
} }
int tcp_find_conn(tcp_conn **connp, int tcp_find_conn(tcp_conn **connp,
@ -81,7 +81,7 @@ int tcp_find_conn(tcp_conn **connp,
!memcmp(daddr, &conn->conn.r_addr, sizeof(struct sockaddr_storage))) { !memcmp(daddr, &conn->conn.r_addr, sizeof(struct sockaddr_storage))) {
*directionp = DIR_I2R; *directionp = DIR_I2R;
*connp = &(conn->conn); *connp = &(conn->conn);
return (0); return 0;
} }
} }
@ -90,12 +90,12 @@ int tcp_find_conn(tcp_conn **connp,
!memcmp(daddr, &conn->conn.i_addr, sizeof(struct sockaddr_storage))) { !memcmp(daddr, &conn->conn.i_addr, sizeof(struct sockaddr_storage))) {
*directionp = DIR_R2I; *directionp = DIR_R2I;
*connp = &(conn->conn); *connp = &(conn->conn);
return (0); return 0;
} }
} }
} }
return (R_NOT_FOUND); return R_NOT_FOUND;
} }
int tcp_create_conn(tcp_conn **connp, int tcp_create_conn(tcp_conn **connp,
@ -106,7 +106,7 @@ int tcp_create_conn(tcp_conn **connp,
conn_struct *conn = 0; conn_struct *conn = 0;
if(!(conn = (conn_struct *)malloc(sizeof(conn_struct)))) if(!(conn = (conn_struct *)malloc(sizeof(conn_struct))))
return (R_NO_MEMORY); return R_NO_MEMORY;
conn->prev = 0; conn->prev = 0;
@ -126,7 +126,7 @@ int tcp_create_conn(tcp_conn **connp,
first_conn->prev = conn; first_conn->prev = conn;
first_conn = conn; first_conn = conn;
return (0); return 0;
} }
int tcp_destroy_conn(tcp_conn *conn) { int tcp_destroy_conn(tcp_conn *conn) {
@ -153,7 +153,7 @@ int tcp_destroy_conn(tcp_conn *conn) {
free(conn->backptr); free(conn->backptr);
free(conn); free(conn);
return (0); return 0;
} }
int clean_old_conn(void) { int clean_old_conn(void) {
@ -198,7 +198,7 @@ int free_tcp_segment_queue(segment *seg) {
seg = tmp; seg = tmp;
} }
return (0); return 0;
} }
int copy_tcp_segment_queue(segment **out, segment *in) { int copy_tcp_segment_queue(segment **out, segment *in) {
@ -221,5 +221,5 @@ abort:
if(_status) { if(_status) {
free_tcp_segment_queue(base); free_tcp_segment_queue(base);
} }
return (_status); return _status;
} }

View file

@ -94,12 +94,12 @@ int process_tcp_packet(proto_mod *handler, proto_ctx *ctx, packet *p) {
if((p->tcp->th_flags & TH_SYN) != TH_SYN) { if((p->tcp->th_flags & TH_SYN) != TH_SYN) {
DBG((0, "TCP: rejecting packet from unknown connection, seq: %u\n", DBG((0, "TCP: rejecting packet from unknown connection, seq: %u\n",
ntohl(p->tcp->th_seq))); ntohl(p->tcp->th_seq)));
return (0); return 0;
} }
if((r = new_connection(handler, ctx, p, &conn))) if((r = new_connection(handler, ctx, p, &conn)))
ABORT(r); ABORT(r);
return (0); return 0;
} }
stream = direction == DIR_R2I ? &conn->r2i : &conn->i2r; stream = direction == DIR_R2I ? &conn->r2i : &conn->i2r;
@ -155,7 +155,7 @@ int process_tcp_packet(proto_mod *handler, proto_ctx *ctx, packet *p) {
_status = 0; _status = 0;
abort: abort:
return (_status); return _status;
} }
static int new_connection(proto_mod *handler, static int new_connection(proto_mod *handler,
@ -194,7 +194,7 @@ static int new_connection(proto_mod *handler,
*connp = conn; *connp = conn;
_status = 0; _status = 0;
abort: abort:
return (_status); return _status;
} }
/*#define STRIM(_seq,s) { \ /*#define STRIM(_seq,s) { \
@ -235,13 +235,13 @@ static int process_data_segment(tcp_conn *conn,
fprintf(stderr, fprintf(stderr,
"Malformed packet, computed TCP segment size is negative, skipping " "Malformed packet, computed TCP segment size is negative, skipping "
"...\n"); "...\n");
return (0); return 0;
} }
if(stream->close) { if(stream->close) {
DBG((0, "Rejecting packet received after FIN: %u:%u(%u)", DBG((0, "Rejecting packet received after FIN: %u:%u(%u)",
ntohl(p->tcp->th_seq), ntohl(p->tcp->th_seq + l), l)); ntohl(p->tcp->th_seq), ntohl(p->tcp->th_seq + l), l));
return (0); return 0;
} }
/*The idea here is to pass all available segments /*The idea here is to pass all available segments
@ -278,7 +278,7 @@ static int process_data_segment(tcp_conn *conn,
/* Check to see if this packet has been processed already */ /* Check to see if this packet has been processed already */
right_edge = seq + (p->len - (p->tcp->th_off) * 4); right_edge = seq + (p->len - (p->tcp->th_off) * 4);
if(!(p->tcp->th_flags & (TH_RST)) && SEQ_LT(right_edge, stream->seq)) if(!(p->tcp->th_flags & (TH_RST)) && SEQ_LT(right_edge, stream->seq))
return (0); return 0;
if(SEQ_LT(stream->seq, seq)) { if(SEQ_LT(stream->seq, seq)) {
/* Out of order segment */ /* Out of order segment */
@ -380,7 +380,7 @@ static int process_data_segment(tcp_conn *conn,
_status = 0; _status = 0;
abort: abort:
return (_status); return _status;
} }
static int print_tcp_packet(packet *p) { static int print_tcp_packet(packet *p) {
@ -389,7 +389,7 @@ static int print_tcp_packet(packet *p) {
struct timeval *ts = &p->ts; struct timeval *ts = &p->ts;
if(!(NET_print_flags & NET_PRINT_TCP_HDR)) if(!(NET_print_flags & NET_PRINT_TCP_HDR))
return (0); return 0;
lookuphostname(&p->i_addr.so_st, &src); lookuphostname(&p->i_addr.so_st, &src);
lookuphostname(&p->r_addr.so_st, &dst); lookuphostname(&p->r_addr.so_st, &dst);
@ -422,7 +422,7 @@ static int print_tcp_packet(packet *p) {
} }
free(src); free(src);
free(dst); free(dst);
return (0); return 0;
} }
int STRIM(UINT4 _seq, segment *s) { int STRIM(UINT4 _seq, segment *s) {
@ -457,5 +457,5 @@ int STRIM(UINT4 _seq, segment *s) {
} }
} }
return (0); return 0;
} }

View file

@ -72,7 +72,7 @@
if(!_r) \ if(!_r) \
_r = -1; \ _r = -1; \
REPORT_ERROR_("ERETURN", _r); \ REPORT_ERROR_("ERETURN", _r); \
return (_r); \ return _r; \
} while(0) } while(0)
#endif #endif

View file

@ -56,7 +56,7 @@ int debug(int class, char *format, ...) {
vfprintf(stderr, format, ap); vfprintf(stderr, format, ap);
fprintf(stderr, "\n"); fprintf(stderr, "\n");
va_end(ap); va_end(ap);
return (0); return 0;
} }
int xdump(char *name, UCHAR *data, int len) { int xdump(char *name, UCHAR *data, int len) {
@ -73,5 +73,5 @@ int xdump(char *name, UCHAR *data, int len) {
} }
if(i % 12) if(i % 12)
printf("\n"); printf("\n");
return (0); return 0;
} }

View file

@ -102,7 +102,7 @@ abort:
if(_status) { if(_status) {
r_assoc_destroy(&assoc); r_assoc_destroy(&assoc);
} }
return (_status); return _status;
} }
int r_assoc_destroy(r_assoc **assocp) { int r_assoc_destroy(r_assoc **assocp) {
@ -110,7 +110,7 @@ int r_assoc_destroy(r_assoc **assocp) {
int i; int i;
if(!assocp || !*assocp) if(!assocp || !*assocp)
return (0); return 0;
assoc = *assocp; assoc = *assocp;
for(i = 0; i < assoc->size; i++) for(i = 0; i < assoc->size; i++)
@ -119,7 +119,7 @@ int r_assoc_destroy(r_assoc **assocp) {
free(assoc->chains); free(assoc->chains);
free(assoc); free(assoc);
return (0); return 0;
} }
static int destroy_assoc_chain(r_assoc_el *chain) { static int destroy_assoc_chain(r_assoc_el *chain) {
@ -137,7 +137,7 @@ static int destroy_assoc_chain(r_assoc_el *chain) {
chain = nxt; chain = nxt;
} }
return (0); return 0;
} }
static int copy_assoc_chain(r_assoc_el **newp, r_assoc_el *old) { static int copy_assoc_chain(r_assoc_el **newp, r_assoc_el *old) {
@ -146,7 +146,7 @@ static int copy_assoc_chain(r_assoc_el **newp, r_assoc_el *old) {
if(!old) { if(!old) {
*newp = 0; *newp = 0;
return (0); return 0;
} }
for(; old; old = old->next) { for(; old; old = old->next) {
if(!(tmp = (r_assoc_el *)calloc(sizeof(r_assoc_el), 1))) if(!(tmp = (r_assoc_el *)calloc(sizeof(r_assoc_el), 1)))
@ -182,7 +182,7 @@ abort:
if(_status) { if(_status) {
destroy_assoc_chain(new); destroy_assoc_chain(new);
} }
return (_status); return _status;
} }
static int r_assoc_fetch_bucket(r_assoc *assoc, static int r_assoc_fetch_bucket(r_assoc *assoc,
@ -197,11 +197,11 @@ static int r_assoc_fetch_bucket(r_assoc *assoc,
for(bucket = assoc->chains[hash_value]; bucket; bucket = bucket->next) { for(bucket = assoc->chains[hash_value]; bucket; bucket = bucket->next) {
if(bucket->key_len == len && !memcmp(bucket->key, key, len)) { if(bucket->key_len == len && !memcmp(bucket->key, key, len)) {
*bucketp = bucket; *bucketp = bucket;
return (0); return 0;
} }
} }
return (R_NOT_FOUND); return R_NOT_FOUND;
} }
int r_assoc_fetch(r_assoc *assoc, char *key, int len, void **datap) { int r_assoc_fetch(r_assoc *assoc, char *key, int len, void **datap) {
@ -211,11 +211,11 @@ int r_assoc_fetch(r_assoc *assoc, char *key, int len, void **datap) {
if((r = r_assoc_fetch_bucket(assoc, key, len, &bucket))) { if((r = r_assoc_fetch_bucket(assoc, key, len, &bucket))) {
if(r != R_NOT_FOUND) if(r != R_NOT_FOUND)
ERETURN(r); ERETURN(r);
return (r); return r;
} }
*datap = bucket->data; *datap = bucket->data;
return (0); return 0;
} }
int r_assoc_insert(r_assoc *assoc, int r_assoc_insert(r_assoc *assoc,
@ -267,7 +267,7 @@ abort:
free(new_bucket->key); free(new_bucket->key);
free(new_bucket); free(new_bucket);
} }
return (_status); return _status;
} }
int r_assoc_copy(r_assoc **newp, r_assoc *old) { int r_assoc_copy(r_assoc **newp, r_assoc *old) {
@ -292,7 +292,7 @@ abort:
if(_status) { if(_status) {
r_assoc_destroy(&new); r_assoc_destroy(&new);
} }
return (_status); return _status;
} }
int r_assoc_init_iter(r_assoc *assoc, r_assoc_iterator *iter) { int r_assoc_init_iter(r_assoc *assoc, r_assoc_iterator *iter) {
@ -313,7 +313,7 @@ int r_assoc_init_iter(r_assoc *assoc, r_assoc_iterator *iter) {
} }
} }
return (0); return 0;
} }
int r_assoc_iter(r_assoc_iterator *iter, void **key, int *keyl, void **val) { int r_assoc_iter(r_assoc_iterator *iter, void **key, int *keyl, void **val) {
@ -321,7 +321,7 @@ int r_assoc_iter(r_assoc_iterator *iter, void **key, int *keyl, void **val) {
r_assoc_el *ret; r_assoc_el *ret;
if(!iter->next) if(!iter->next)
return (R_EOD); return R_EOD;
ret = iter->next; ret = iter->next;
*key = ret->key; *key = ret->key;
@ -348,7 +348,7 @@ int r_assoc_iter(r_assoc_iterator *iter, void **key, int *keyl, void **val) {
} }
} }
return (0); return 0;
} }
/* Delete the last returned value*/ /* Delete the last returned value*/
@ -368,7 +368,7 @@ int r_assoc_iter_delete(r_assoc_iterator *iter) {
iter->prev->destroy(iter->prev->data); iter->prev->destroy(iter->prev->data);
free(iter->prev->data); free(iter->prev->data);
free(iter->prev); free(iter->prev);
return (0); return 0;
} }
/*This is a hack from AMS. Supposedly, it's pretty good for strings, even /*This is a hack from AMS. Supposedly, it's pretty good for strings, even
@ -381,5 +381,5 @@ hash_compute(char *key, int len, int bits) {
h &= (1 << bits) - 1; h &= (1 << bits) - 1;
return (h); return h;
} }

View file

@ -124,5 +124,5 @@ int fetch_test(r_assoc *assoc) {
exit(1); exit(1);
} }
} }
return (0); return 0;
} }

View file

@ -32,14 +32,14 @@ abort:
if(_status) { if(_status) {
r_bitfield_destroy(&set); r_bitfield_destroy(&set);
} }
return (_status); return _status;
} }
int r_bitfield_destroy(r_bitfield **setp) { int r_bitfield_destroy(r_bitfield **setp) {
r_bitfield *set; r_bitfield *set;
if(!setp || !*setp) if(!setp || !*setp)
return (0); return 0;
set = *setp; set = *setp;
@ -47,7 +47,7 @@ int r_bitfield_destroy(r_bitfield **setp) {
RFREE(set); RFREE(set);
*setp = 0; *setp = 0;
return (0); return 0;
} }
int r_bitfield_set(r_bitfield *set, int bit) { int r_bitfield_set(r_bitfield *set, int bit) {
@ -77,7 +77,7 @@ int r_bitfield_set(r_bitfield *set, int bit) {
_status = 0; _status = 0;
abort: abort:
return (_status); return _status;
} }
int r_bitfield_isset(r_bitfield *set, int bit) { int r_bitfield_isset(r_bitfield *set, int bit) {
@ -86,11 +86,11 @@ int r_bitfield_isset(r_bitfield *set, int bit) {
int _status; int _status;
if(bit < set->base) if(bit < set->base)
return (0); return 0;
/* Resize? */ /* Resize? */
if(word > set->len) if(word > set->len)
return (0); return 0;
return (set->data[word] & (1 << bbit)); return set->data[word] & (1 << bbit);
} }

View file

@ -66,7 +66,7 @@ abort:
if(_status) if(_status)
r_data_destroy(&d_); r_data_destroy(&d_);
return (_status); return _status;
} }
int r_data_alloc(Data **dp, int l) { int r_data_alloc(Data **dp, int l) {
@ -86,7 +86,7 @@ abort:
if(_status) if(_status)
r_data_destroy(&d_); r_data_destroy(&d_);
return (_status); return _status;
} }
int r_data_make(Data *dp, UCHAR *d, int l) { int r_data_make(Data *dp, UCHAR *d, int l) {
@ -96,12 +96,12 @@ int r_data_make(Data *dp, UCHAR *d, int l) {
memcpy(dp->data, d, l); memcpy(dp->data, d, l);
dp->len = l; dp->len = l;
return (0); return 0;
} }
int r_data_destroy(Data **dp) { int r_data_destroy(Data **dp) {
if(!dp || !*dp) if(!dp || !*dp)
return (0); return 0;
if((*dp)->data) if((*dp)->data)
free((*dp)->data); free((*dp)->data);
@ -109,30 +109,30 @@ int r_data_destroy(Data **dp) {
free(*dp); free(*dp);
*dp = 0; *dp = 0;
return (0); return 0;
} }
int r_data_copy(Data *dst, Data *src) { int r_data_copy(Data *dst, Data *src) {
if(!(dst->data = (UCHAR *)malloc(src->len))) if(!(dst->data = (UCHAR *)malloc(src->len)))
ERETURN(R_NO_MEMORY); ERETURN(R_NO_MEMORY);
memcpy(dst->data, src->data, dst->len = src->len); memcpy(dst->data, src->data, dst->len = src->len);
return (0); return 0;
} }
int r_data_zfree(Data *d) { int r_data_zfree(Data *d) {
if(!d) if(!d)
return (0); return 0;
if(!d->data) if(!d->data)
return (0); return 0;
memset(d->data, 0, d->len); memset(d->data, 0, d->len);
free(d->data); free(d->data);
return (0); return 0;
} }
int r_data_compare(Data *d1, Data *d2) { int r_data_compare(Data *d1, Data *d2) {
if(d1->len < d2->len) if(d1->len < d2->len)
return (-1); return -1;
if(d2->len < d1->len) if(d2->len < d1->len)
return (-1); return -1;
return (memcmp(d1->data, d2->data, d1->len)); return memcmp(d1->data, d2->data, d1->len);
} }

View file

@ -73,7 +73,7 @@ int r_list_create(r_list **listp) {
_status = 0; _status = 0;
abort: abort:
return (_status); return _status;
} }
int r_list_destroy(r_list **listp) { int r_list_destroy(r_list **listp) {
@ -81,7 +81,7 @@ int r_list_destroy(r_list **listp) {
r_list_el *el; r_list_el *el;
if(!listp || !*listp) if(!listp || !*listp)
return (0); return 0;
list = *listp; list = *listp;
el = list->first; el = list->first;
@ -99,7 +99,7 @@ int r_list_destroy(r_list **listp) {
free(list); free(list);
*listp = 0; *listp = 0;
return (0); return 0;
} }
int r_list_copy(r_list **outp, r_list *in) { int r_list_copy(r_list **outp, r_list *in) {
@ -138,7 +138,7 @@ int r_list_copy(r_list **outp, r_list *in) {
abort: abort:
if(_status) if(_status)
r_list_destroy(&out); r_list_destroy(&out);
return (_status); return _status;
} }
int r_list_insert(list, value, copy, destroy) r_list *list; int r_list_insert(list, value, copy, destroy) r_list *list;
@ -164,7 +164,7 @@ int(*destroy) PROTO_LIST((void **val));
_status = 0; _status = 0;
abort: abort:
return (_status); return _status;
} }
int r_list_append(list, value, copy, destroy) r_list *list; int r_list_append(list, value, copy, destroy) r_list *list;
@ -193,22 +193,22 @@ int(*destroy) PROTO_LIST((void **val));
_status = 0; _status = 0;
abort: abort:
return (_status); return _status;
} }
int r_list_init_iter(r_list *list, r_list_iterator *iter) { int r_list_init_iter(r_list *list, r_list_iterator *iter) {
iter->list = list; iter->list = list;
iter->ptr = list->first; iter->ptr = list->first;
return (0); return 0;
} }
int r_list_iter(r_list_iterator *iter, void **val) { int r_list_iter(r_list_iterator *iter, void **val) {
if(!iter->ptr) if(!iter->ptr)
return (R_EOD); return R_EOD;
*val = iter->ptr->data; *val = iter->ptr->data;
iter->ptr = iter->ptr->next; iter->ptr = iter->ptr->next;
return (0); return 0;
} }

View file

@ -53,10 +53,10 @@ char *strdup(char *str) {
char *n; char *n;
if(!(n = (char *)malloc(len + 1))) if(!(n = (char *)malloc(len + 1)))
return (0); return 0;
memcpy(n, str, len + 1); memcpy(n, str, len + 1);
return (n); return n;
} }
#endif #endif

View file

@ -94,7 +94,7 @@ int r_timeval_diff(struct timeval *t1,
if(t0->tv_usec <= t1->tv_usec) { if(t0->tv_usec <= t1->tv_usec) {
diff->tv_sec = t1->tv_sec - t0->tv_sec; diff->tv_sec = t1->tv_sec - t0->tv_sec;
diff->tv_usec = t1->tv_usec - t0->tv_usec; diff->tv_usec = t1->tv_usec - t0->tv_usec;
return (0); return 0;
} }
/*Hard case*/ /*Hard case*/
@ -104,7 +104,7 @@ int r_timeval_diff(struct timeval *t1,
diff->tv_sec = t1->tv_sec - (t0->tv_sec + 1); diff->tv_sec = t1->tv_sec - (t0->tv_sec + 1);
diff->tv_usec = 1000000 - d; diff->tv_usec = 1000000 - d;
return (0); return 0;
} }
int r_timeval_add(struct timeval *t1, struct timeval *t2, struct timeval *sum) { int r_timeval_add(struct timeval *t1, struct timeval *t2, struct timeval *sum) {
@ -123,7 +123,7 @@ int r_timeval_add(struct timeval *t1, struct timeval *t2, struct timeval *sum) {
sum->tv_sec = tv_sec; sum->tv_sec = tv_sec;
sum->tv_usec = tv_usec; sum->tv_usec = tv_usec;
return (0); return 0;
} }
UINT8 UINT8

View file

@ -31,7 +31,7 @@ static void *r_thread_real_create(void *arg) {
thread_count--; thread_count--;
free(h); free(h);
return (0); return 0;
} }
int r_thread_fork(func, arg, id) void(*func) PROTO_LIST((void *)); int r_thread_fork(func, arg, id) void(*func) PROTO_LIST((void *));
@ -52,7 +52,7 @@ r_thread *id;
_status = 0; _status = 0;
abort: abort:
return (_status); return _status;
} }
int r_thread_yield(void) { int r_thread_yield(void) {
@ -62,7 +62,7 @@ int r_thread_yield(void) {
int r_thread_exit(void) { int r_thread_exit(void) {
thread_count--; thread_count--;
pthread_exit(0); pthread_exit(0);
return (0); return 0;
} }
int r_thread_wait_last(void) { int r_thread_wait_last(void) {
@ -72,7 +72,7 @@ int r_thread_wait_last(void) {
DBG((0, "%d threads left", thread_count)); DBG((0, "%d threads left", thread_count));
} while(thread_count); } while(thread_count);
return (0); return 0;
} }
int r_rwlock_create(r_rwlock **lockp) { int r_rwlock_create(r_rwlock **lockp) {
@ -86,20 +86,20 @@ int r_rwlock_create(r_rwlock **lockp) {
ERETURN(R_INTERNAL); ERETURN(R_INTERNAL);
*lockp = (void *)lock; *lockp = (void *)lock;
return (0); return 0;
} }
int r_rwlock_destroy(r_rwlock **lock) { int r_rwlock_destroy(r_rwlock **lock) {
pthread_rwlock_t *plock; pthread_rwlock_t *plock;
if(!lock || !*lock) if(!lock || !*lock)
return (0); return 0;
plock = (pthread_rwlock_t *)(*lock); plock = (pthread_rwlock_t *)(*lock);
pthread_rwlock_destroy(plock); pthread_rwlock_destroy(plock);
return (0); return 0;
} }
int r_rwlock_lock(r_rwlock *lock, int action) { int r_rwlock_lock(r_rwlock *lock, int action) {
@ -127,5 +127,5 @@ int r_rwlock_lock(r_rwlock *lock, int action) {
_status = 0; _status = 0;
abort: abort:
return (_status); return _status;
} }

View file

@ -83,7 +83,7 @@ static int create_null_analyzer(void *handle,
DBG((0, "Creating analyzer for connection %d\n", obj->num)); DBG((0, "Creating analyzer for connection %d\n", obj->num));
*objp = (proto_obj *)obj; *objp = (proto_obj *)obj;
return (0); return 0;
} }
int destroy_null_analyzer(proto_obj **objp) { int destroy_null_analyzer(proto_obj **objp) {
@ -92,7 +92,7 @@ int destroy_null_analyzer(proto_obj **objp) {
#endif #endif
if(!objp || !*objp) if(!objp || !*objp)
return (0); return 0;
#ifdef DEBUG #ifdef DEBUG
obj = (null_analyzer *)*objp; obj = (null_analyzer *)*objp;
@ -102,7 +102,7 @@ int destroy_null_analyzer(proto_obj **objp) {
free(*objp); free(*objp);
*objp = 0; *objp = 0;
return (0); return 0;
} }
int data_null_analyzer(proto_obj *_obj, segment *seg, int direction) { int data_null_analyzer(proto_obj *_obj, segment *seg, int direction) {
@ -127,7 +127,7 @@ int data_null_analyzer(proto_obj *_obj, segment *seg, int direction) {
printf("====\n"); printf("====\n");
} }
return (0); return 0;
} }
int fin_null_analyzer(proto_obj *_obj, packet *p, int direction) { int fin_null_analyzer(proto_obj *_obj, packet *p, int direction) {
@ -135,7 +135,7 @@ int fin_null_analyzer(proto_obj *_obj, packet *p, int direction) {
null_analyzer *obj = (null_analyzer *)_obj; null_analyzer *obj = (null_analyzer *)_obj;
#endif #endif
DBG((0, "Received FIN on connection %d\n", obj->num)); DBG((0, "Received FIN on connection %d\n", obj->num));
return (0); return 0;
} }
static struct proto_mod_vtbl_ null_vtbl = { static struct proto_mod_vtbl_ null_vtbl = {

View file

@ -92,21 +92,21 @@ abort:
if(_status) { if(_status) {
destroy_pcap_logger((proto_obj **)&pcap_obj); destroy_pcap_logger((proto_obj **)&pcap_obj);
} }
return (_status); return _status;
} }
static int destroy_pcap_logger(proto_obj **objp) { static int destroy_pcap_logger(proto_obj **objp) {
logpkt_ctx_t *pcap_obj; logpkt_ctx_t *pcap_obj;
if(!objp || !*objp) if(!objp || !*objp)
return (0); return 0;
pcap_obj = (logpkt_ctx_t *)*objp; pcap_obj = (logpkt_ctx_t *)*objp;
free(pcap_obj); free(pcap_obj);
*objp = 0; *objp = 0;
return (0); return 0;
} }
static int data_pcap_logger(proto_obj *_obj, static int data_pcap_logger(proto_obj *_obj,

View file

@ -238,7 +238,7 @@ int ssl_find_cipher(int num, SSL_CipherSuite **cs) {
for(c = CipherSuites; c->number != -1; c++) { for(c = CipherSuites; c->number != -1; c++) {
if(c->number == num) { if(c->number == num) {
*cs = c; *cs = c;
return (0); return 0;
} }
} }

View file

@ -29,7 +29,7 @@ static int decode_ContentType_ChangeCipherSpec(ssl_obj *ssl,
} }
LF; LF;
return (0); return 0;
} }
static int decode_ContentType_Alert(ssl_obj *ssl, static int decode_ContentType_Alert(ssl_obj *ssl,
int dir, int dir,
@ -40,7 +40,7 @@ static int decode_ContentType_Alert(ssl_obj *ssl,
if(ssl->record_encryption == REC_CIPHERTEXT) { if(ssl->record_encryption == REC_CIPHERTEXT) {
LF; LF;
return (0); return 0;
} }
if(data->len != 2) { if(data->len != 2) {
@ -64,7 +64,7 @@ static int decode_ContentType_Alert(ssl_obj *ssl,
0); 0);
LF; LF;
} }
return (0); return 0;
} }
static int decode_ContentType_Handshake(ssl_obj *ssl, static int decode_ContentType_Handshake(ssl_obj *ssl,
int dir, int dir,
@ -79,7 +79,7 @@ static int decode_ContentType_Handshake(ssl_obj *ssl,
if(ssl->record_encryption == REC_CIPHERTEXT) { if(ssl->record_encryption == REC_CIPHERTEXT) {
LF; LF;
return (0); return 0;
} }
while(data->len > 0) { while(data->len > 0) {
@ -108,7 +108,7 @@ static int decode_ContentType_Handshake(ssl_obj *ssl,
} }
ssl_decode_switch(ssl, HandshakeType_decoder, t, dir, seg, &d); ssl_decode_switch(ssl, HandshakeType_decoder, t, dir, seg, &d);
} }
return (0); return 0;
} }
static int decode_ContentType_application_data(ssl_obj *ssl, static int decode_ContentType_application_data(ssl_obj *ssl,
int dir, int dir,
@ -131,7 +131,7 @@ static int decode_ContentType_application_data(ssl_obj *ssl,
else { else {
LF; LF;
} }
return (0); return 0;
} }
decoder ContentType_decoder[] = { decoder ContentType_decoder[] = {
{20, "ChangeCipherSpec", decode_ContentType_ChangeCipherSpec}, {20, "ChangeCipherSpec", decode_ContentType_ChangeCipherSpec},
@ -150,7 +150,7 @@ static int decode_HandshakeType_HelloRequest(ssl_obj *ssl,
json_object_new_string("HelloRequest")); json_object_new_string("HelloRequest"));
LF; LF;
return (0); return 0;
} }
static int decode_HandshakeType_ClientHello(ssl_obj *ssl, static int decode_HandshakeType_ClientHello(ssl_obj *ssl,
int dir, int dir,
@ -218,7 +218,7 @@ static int decode_HandshakeType_ClientHello(ssl_obj *ssl,
for(; cslen; cslen -= 2) { for(; cslen; cslen -= 2) {
if(ssl_decode_enum(ssl, 0, 2, cipher_suite_decoder, 0, data, &cs)) if(ssl_decode_enum(ssl, 0, 2, cipher_suite_decoder, 0, data, &cs))
return (1); return 1;
ssl_print_cipher_suite(ssl, (vj << 8) | vn, P_HL, cs); ssl_print_cipher_suite(ssl, (vj << 8) | vn, P_HL, cs);
if(!ja3_cs_str) if(!ja3_cs_str)
ja3_cs_str = calloc(7, 1); ja3_cs_str = calloc(7, 1);
@ -335,7 +335,7 @@ static int decode_HandshakeType_ClientHello(ssl_obj *ssl,
free(ja3_ec_str); free(ja3_ec_str);
free(ja3_ecp_str); free(ja3_ecp_str);
return (0); return 0;
} }
static int decode_HandshakeType_ServerHello(ssl_obj *ssl, static int decode_HandshakeType_ServerHello(ssl_obj *ssl,
int dir, int dir,
@ -477,7 +477,7 @@ static int decode_HandshakeType_ServerHello(ssl_obj *ssl,
free(ja3s_c_str); free(ja3s_c_str);
free(ja3s_ex_str); free(ja3s_ex_str);
return (0); return 0;
} }
static int decode_HandshakeType_Certificate(ssl_obj *ssl, static int decode_HandshakeType_Certificate(ssl_obj *ssl,
int dir, int dir,
@ -528,7 +528,7 @@ static int decode_HandshakeType_Certificate(ssl_obj *ssl,
} }
} }
return (0); return 0;
} }
static int decode_HandshakeType_SessionTicket(ssl_obj *ssl, static int decode_HandshakeType_SessionTicket(ssl_obj *ssl,
@ -630,7 +630,7 @@ static int decode_HandshakeType_ServerKeyExchange(ssl_obj *ssl,
SSL_DECODE_OPAQUE_ARRAY(ssl, "signature", -((1 << 15) - 1), P_ND, data, 0); SSL_DECODE_OPAQUE_ARRAY(ssl, "signature", -((1 << 15) - 1), P_ND, data, 0);
} }
return (0); return 0;
} }
static int decode_HandshakeType_CertificateRequest(ssl_obj *ssl, static int decode_HandshakeType_CertificateRequest(ssl_obj *ssl,
int dir, int dir,
@ -664,7 +664,7 @@ static int decode_HandshakeType_CertificateRequest(ssl_obj *ssl,
INDENT_POP; INDENT_POP;
len -= (ca.len + 2); len -= (ca.len + 2);
} }
return (0); return 0;
} }
static int decode_HandshakeType_ServerHelloDone(ssl_obj *ssl, static int decode_HandshakeType_ServerHelloDone(ssl_obj *ssl,
int dir, int dir,
@ -677,7 +677,7 @@ static int decode_HandshakeType_ServerHelloDone(ssl_obj *ssl,
LF; LF;
ssl_update_handshake_messages(ssl, data); ssl_update_handshake_messages(ssl, data);
return (0); return 0;
} }
static int decode_HandshakeType_CertificateVerify(ssl_obj *ssl, static int decode_HandshakeType_CertificateVerify(ssl_obj *ssl,
int dir, int dir,
@ -697,7 +697,7 @@ static int decode_HandshakeType_CertificateVerify(ssl_obj *ssl,
SSL_DECODE_UINT16(ssl, "signature_type", P_HL, data, &signature_type); SSL_DECODE_UINT16(ssl, "signature_type", P_HL, data, &signature_type);
} }
SSL_DECODE_OPAQUE_ARRAY(ssl, "Signature", -((1 << 15) - 1), P_HL, data, 0); SSL_DECODE_OPAQUE_ARRAY(ssl, "Signature", -((1 << 15) - 1), P_HL, data, 0);
return (0); return 0;
} }
static int decode_HandshakeType_ClientKeyExchange(ssl_obj *ssl, static int decode_HandshakeType_ClientKeyExchange(ssl_obj *ssl,
int dir, int dir,
@ -733,7 +733,7 @@ static int decode_HandshakeType_ClientKeyExchange(ssl_obj *ssl,
ssl_process_client_key_exchange(ssl, ssl->decoder, NULL, 0); ssl_process_client_key_exchange(ssl, ssl->decoder, NULL, 0);
} }
} }
return (0); return 0;
} }
static int decode_HandshakeType_Finished(ssl_obj *ssl, static int decode_HandshakeType_Finished(ssl_obj *ssl,
int dir, int dir,
@ -761,7 +761,7 @@ static int decode_HandshakeType_Finished(ssl_obj *ssl,
} }
ssl_process_handshake_finished(ssl, ssl->decoder, data); ssl_process_handshake_finished(ssl, ssl->decoder, data);
return (0); return 0;
} }
static int decode_HandshakeType_KeyUpdate(ssl_obj *ssl, static int decode_HandshakeType_KeyUpdate(ssl_obj *ssl,
@ -1193,7 +1193,7 @@ static int decode_AlertLevel_warning(ssl_obj *ssl,
jobj = ssl->cur_json_st; jobj = ssl->cur_json_st;
json_object_object_add(jobj, "alert_level", json_object_object_add(jobj, "alert_level",
json_object_new_string("warning")); json_object_new_string("warning"));
return (0); return 0;
} }
static int decode_AlertLevel_fatal(ssl_obj *ssl, static int decode_AlertLevel_fatal(ssl_obj *ssl,
int dir, int dir,
@ -1202,7 +1202,7 @@ static int decode_AlertLevel_fatal(ssl_obj *ssl,
struct json_object *jobj; struct json_object *jobj;
jobj = ssl->cur_json_st; jobj = ssl->cur_json_st;
json_object_object_add(jobj, "alert_level", json_object_new_string("fatal")); json_object_object_add(jobj, "alert_level", json_object_new_string("fatal"));
return (0); return 0;
} }
decoder AlertLevel_decoder[] = {{1, "warning", decode_AlertLevel_warning}, decoder AlertLevel_decoder[] = {{1, "warning", decode_AlertLevel_warning},
{2, "fatal", decode_AlertLevel_fatal}, {2, "fatal", decode_AlertLevel_fatal},
@ -1212,139 +1212,139 @@ static int decode_AlertDescription_close_notify(ssl_obj *ssl,
int dir, int dir,
segment *seg, segment *seg,
Data *data) { Data *data) {
return (0); return 0;
} }
static int decode_AlertDescription_unexpected_message(ssl_obj *ssl, static int decode_AlertDescription_unexpected_message(ssl_obj *ssl,
int dir, int dir,
segment *seg, segment *seg,
Data *data) { Data *data) {
return (0); return 0;
} }
static int decode_AlertDescription_bad_record_mac(ssl_obj *ssl, static int decode_AlertDescription_bad_record_mac(ssl_obj *ssl,
int dir, int dir,
segment *seg, segment *seg,
Data *data) { Data *data) {
return (0); return 0;
} }
static int decode_AlertDescription_decryption_failed(ssl_obj *ssl, static int decode_AlertDescription_decryption_failed(ssl_obj *ssl,
int dir, int dir,
segment *seg, segment *seg,
Data *data) { Data *data) {
return (0); return 0;
} }
static int decode_AlertDescription_record_overflow(ssl_obj *ssl, static int decode_AlertDescription_record_overflow(ssl_obj *ssl,
int dir, int dir,
segment *seg, segment *seg,
Data *data) { Data *data) {
return (0); return 0;
} }
static int decode_AlertDescription_decompression_failure(ssl_obj *ssl, static int decode_AlertDescription_decompression_failure(ssl_obj *ssl,
int dir, int dir,
segment *seg, segment *seg,
Data *data) { Data *data) {
return (0); return 0;
} }
static int decode_AlertDescription_handshake_failure(ssl_obj *ssl, static int decode_AlertDescription_handshake_failure(ssl_obj *ssl,
int dir, int dir,
segment *seg, segment *seg,
Data *data) { Data *data) {
return (0); return 0;
} }
static int decode_AlertDescription_bad_certificate(ssl_obj *ssl, static int decode_AlertDescription_bad_certificate(ssl_obj *ssl,
int dir, int dir,
segment *seg, segment *seg,
Data *data) { Data *data) {
return (0); return 0;
} }
static int decode_AlertDescription_unsupported_certificate(ssl_obj *ssl, static int decode_AlertDescription_unsupported_certificate(ssl_obj *ssl,
int dir, int dir,
segment *seg, segment *seg,
Data *data) { Data *data) {
return (0); return 0;
} }
static int decode_AlertDescription_certificate_revoked(ssl_obj *ssl, static int decode_AlertDescription_certificate_revoked(ssl_obj *ssl,
int dir, int dir,
segment *seg, segment *seg,
Data *data) { Data *data) {
return (0); return 0;
} }
static int decode_AlertDescription_certificate_expired(ssl_obj *ssl, static int decode_AlertDescription_certificate_expired(ssl_obj *ssl,
int dir, int dir,
segment *seg, segment *seg,
Data *data) { Data *data) {
return (0); return 0;
} }
static int decode_AlertDescription_certificate_unknown(ssl_obj *ssl, static int decode_AlertDescription_certificate_unknown(ssl_obj *ssl,
int dir, int dir,
segment *seg, segment *seg,
Data *data) { Data *data) {
return (0); return 0;
} }
static int decode_AlertDescription_illegal_parameter(ssl_obj *ssl, static int decode_AlertDescription_illegal_parameter(ssl_obj *ssl,
int dir, int dir,
segment *seg, segment *seg,
Data *data) { Data *data) {
return (0); return 0;
} }
static int decode_AlertDescription_unknown_ca(ssl_obj *ssl, static int decode_AlertDescription_unknown_ca(ssl_obj *ssl,
int dir, int dir,
segment *seg, segment *seg,
Data *data) { Data *data) {
return (0); return 0;
} }
static int decode_AlertDescription_access_denied(ssl_obj *ssl, static int decode_AlertDescription_access_denied(ssl_obj *ssl,
int dir, int dir,
segment *seg, segment *seg,
Data *data) { Data *data) {
return (0); return 0;
} }
static int decode_AlertDescription_decode_error(ssl_obj *ssl, static int decode_AlertDescription_decode_error(ssl_obj *ssl,
int dir, int dir,
segment *seg, segment *seg,
Data *data) { Data *data) {
return (0); return 0;
} }
static int decode_AlertDescription_decrypt_error(ssl_obj *ssl, static int decode_AlertDescription_decrypt_error(ssl_obj *ssl,
int dir, int dir,
segment *seg, segment *seg,
Data *data) { Data *data) {
return (0); return 0;
} }
static int decode_AlertDescription_export_restriction(ssl_obj *ssl, static int decode_AlertDescription_export_restriction(ssl_obj *ssl,
int dir, int dir,
segment *seg, segment *seg,
Data *data) { Data *data) {
return (0); return 0;
} }
static int decode_AlertDescription_protocol_version(ssl_obj *ssl, static int decode_AlertDescription_protocol_version(ssl_obj *ssl,
int dir, int dir,
segment *seg, segment *seg,
Data *data) { Data *data) {
return (0); return 0;
} }
static int decode_AlertDescription_insufficient_security(ssl_obj *ssl, static int decode_AlertDescription_insufficient_security(ssl_obj *ssl,
int dir, int dir,
segment *seg, segment *seg,
Data *data) { Data *data) {
return (0); return 0;
} }
static int decode_AlertDescription_internal_error(ssl_obj *ssl, static int decode_AlertDescription_internal_error(ssl_obj *ssl,
int dir, int dir,
segment *seg, segment *seg,
Data *data) { Data *data) {
return (0); return 0;
} }
static int decode_AlertDescription_user_canceled(ssl_obj *ssl, static int decode_AlertDescription_user_canceled(ssl_obj *ssl,
int dir, int dir,
segment *seg, segment *seg,
Data *data) { Data *data) {
return (0); return 0;
} }
static int decode_AlertDescription_no_renegotiation(ssl_obj *ssl, static int decode_AlertDescription_no_renegotiation(ssl_obj *ssl,
int dir, int dir,
segment *seg, segment *seg,
Data *data) { Data *data) {
return (0); return 0;
} }
decoder AlertDescription_decoder[] = { decoder AlertDescription_decoder[] = {
{0, "close_notify", decode_AlertDescription_close_notify}, {0, "close_notify", decode_AlertDescription_close_notify},
@ -1381,25 +1381,25 @@ static int decode_client_certificate_type_rsa_sign(ssl_obj *ssl,
int dir, int dir,
segment *seg, segment *seg,
Data *data) { Data *data) {
return (0); return 0;
} }
static int decode_client_certificate_type_dss_sign(ssl_obj *ssl, static int decode_client_certificate_type_dss_sign(ssl_obj *ssl,
int dir, int dir,
segment *seg, segment *seg,
Data *data) { Data *data) {
return (0); return 0;
} }
static int decode_client_certificate_type_rsa_fixed_dh(ssl_obj *ssl, static int decode_client_certificate_type_rsa_fixed_dh(ssl_obj *ssl,
int dir, int dir,
segment *seg, segment *seg,
Data *data) { Data *data) {
return (0); return 0;
} }
static int decode_client_certificate_type_dss_fixed_dh(ssl_obj *ssl, static int decode_client_certificate_type_dss_fixed_dh(ssl_obj *ssl,
int dir, int dir,
segment *seg, segment *seg,
Data *data) { Data *data) {
return (0); return 0;
} }
decoder client_certificate_type_decoder[] = { decoder client_certificate_type_decoder[] = {
{1, "rsa_sign", decode_client_certificate_type_rsa_sign}, {1, "rsa_sign", decode_client_certificate_type_rsa_sign},
@ -1441,7 +1441,7 @@ static int decode_extension_server_name(ssl_obj *ssl,
data->len -= l; data->len -= l;
data->data += l; data->data += l;
} }
return (0); return 0;
} }
static int decode_extension_encrypt_then_mac(ssl_obj *ssl, static int decode_extension_encrypt_then_mac(ssl_obj *ssl,
int dir, int dir,
@ -1457,7 +1457,7 @@ static int decode_extension_encrypt_then_mac(ssl_obj *ssl,
data->data += l; data->data += l;
dir == DIR_I2R ? *etm = 1 : ++*etm; dir == DIR_I2R ? *etm = 1 : ++*etm;
return (0); return 0;
} }
static int decode_extension_extended_master_secret(ssl_obj *ssl, static int decode_extension_extended_master_secret(ssl_obj *ssl,
int dir, int dir,
@ -1473,7 +1473,7 @@ static int decode_extension_extended_master_secret(ssl_obj *ssl,
data->data += l; data->data += l;
dir == DIR_I2R ? *ems = 1 : ++*ems; dir == DIR_I2R ? *ems = 1 : ++*ems;
return (0); return 0;
} }
static int decode_extension(ssl_obj *ssl, int dir, segment *seg, Data *data) { static int decode_extension(ssl_obj *ssl, int dir, segment *seg, Data *data) {
int r; int r;
@ -1481,7 +1481,7 @@ static int decode_extension(ssl_obj *ssl, int dir, segment *seg, Data *data) {
SSL_DECODE_UINT16(ssl, "extension length", 0, data, &l); SSL_DECODE_UINT16(ssl, "extension length", 0, data, &l);
data->len -= l; data->len -= l;
data->data += l; data->data += l;
return (0); return 0;
} }
decoder supported_groups_decoder[] = { decoder supported_groups_decoder[] = {
@ -1523,7 +1523,7 @@ static int decode_extension_supported_groups(ssl_obj *ssl,
data->data += l; data->data += l;
} }
ssl->cur_ja3_ec_str = ja3_ec_str; ssl->cur_ja3_ec_str = ja3_ec_str;
return (0); return 0;
} }
decoder ec_point_formats_decoder[] = {{ decoder ec_point_formats_decoder[] = {{
@ -1574,7 +1574,7 @@ static int decode_extension_ec_point_formats(ssl_obj *ssl,
} }
ssl->cur_ja3_ecp_str = ja3_ecp_str; ssl->cur_ja3_ecp_str = ja3_ecp_str;
return (0); return 0;
} }
static int decode_extension_supported_versions(ssl_obj *ssl, static int decode_extension_supported_versions(ssl_obj *ssl,
@ -1743,7 +1743,7 @@ static int decode_server_name_type_host_name(ssl_obj *ssl,
data->len -= l; data->len -= l;
data->data += l; data->data += l;
return (0); return 0;
} }
static int decode_server_name(ssl_obj *ssl, int dir, segment *seg, Data *data) { static int decode_server_name(ssl_obj *ssl, int dir, segment *seg, Data *data) {
int r; int r;
@ -1751,7 +1751,7 @@ static int decode_server_name(ssl_obj *ssl, int dir, segment *seg, Data *data) {
SSL_DECODE_UINT16(ssl, "server name length", 0, data, &l); SSL_DECODE_UINT16(ssl, "server name length", 0, data, &l);
data->len -= l; data->len -= l;
data->data += l; data->data += l;
return (0); return 0;
} }
decoder server_name_type_decoder[] = { decoder server_name_type_decoder[] = {

View file

@ -133,7 +133,7 @@ int parse_ssl_flag(int flag) {
} }
} }
return (0); return 0;
} }
static int parse_ssl_flags(char *str) { static int parse_ssl_flags(char *str) {
@ -165,7 +165,7 @@ static int parse_ssl_flags(char *str) {
} }
} }
return (0); return 0;
} }
static int create_ssl_ctx(void *handle, proto_ctx **ctxp) { static int create_ssl_ctx(void *handle, proto_ctx **ctxp) {
@ -179,7 +179,7 @@ static int create_ssl_ctx(void *handle, proto_ctx **ctxp) {
*ctxp = (proto_ctx *)ctx; *ctxp = (proto_ctx *)ctx;
_status = 0; _status = 0;
abort: abort:
return (_status); return _status;
} }
static int destroy_ssl_ctx(void *handle, proto_ctx **ctxp) { static int destroy_ssl_ctx(void *handle, proto_ctx **ctxp) {
@ -245,14 +245,14 @@ abort:
if(_status) { if(_status) {
destroy_ssl_analyzer((proto_obj **)&obj); destroy_ssl_analyzer((proto_obj **)&obj);
} }
return (_status); return _status;
} }
static int destroy_ssl_analyzer(proto_obj **objp) { static int destroy_ssl_analyzer(proto_obj **objp) {
ssl_obj *obj; ssl_obj *obj;
if(!objp || !*objp) if(!objp || !*objp)
return (0); return 0;
obj = (ssl_obj *)*objp; obj = (ssl_obj *)*objp;
DBG((0, "Destroying SSL analyzer")); DBG((0, "Destroying SSL analyzer"));
@ -272,7 +272,7 @@ static int destroy_ssl_analyzer(proto_obj **objp) {
free(*objp); free(*objp);
*objp = 0; *objp = 0;
return (0); return 0;
} }
static int free_r_queue(r_queue *q) { static int free_r_queue(r_queue *q) {
@ -280,7 +280,7 @@ static int free_r_queue(r_queue *q) {
if(q->q) if(q->q)
free_tcp_segment_queue(q->q); free_tcp_segment_queue(q->q);
free(q); free(q);
return (0); return 0;
} }
static int create_r_queue(r_queue **qp) { static int create_r_queue(r_queue **qp) {
@ -303,7 +303,7 @@ abort:
if(_status) { if(_status) {
free_r_queue(q); free_r_queue(q);
} }
return (_status); return _status;
} }
static int read_ssl_record(ssl_obj *obj, static int read_ssl_record(ssl_obj *obj,
@ -368,7 +368,7 @@ static int read_ssl_record(ssl_obj *obj,
_status = 0; _status = 0;
abort: abort:
return (_status); return _status;
} }
static int read_data(r_queue *q, static int read_data(r_queue *q,
@ -403,7 +403,7 @@ static int read_data(r_queue *q,
if(q->read_left) { if(q->read_left) {
if((r = copy_tcp_segment_queue(&q->q, seg))) if((r = copy_tcp_segment_queue(&q->q, seg)))
ABORT(r); ABORT(r);
return (SSL_NO_DATA); return SSL_NO_DATA;
} }
if(seg && tocpy == (seg->len - offset)) { if(seg && tocpy == (seg->len - offset)) {
@ -422,7 +422,7 @@ static int read_data(r_queue *q,
_status = 0; _status = 0;
abort: abort:
return (_status); return _status;
} }
static int data_ssl_analyzer(proto_obj *_obj, segment *seg, int direction) { static int data_ssl_analyzer(proto_obj *_obj, segment *seg, int direction) {
@ -443,19 +443,19 @@ static int data_ssl_analyzer(proto_obj *_obj, segment *seg, int direction) {
r = process_v2_hello(ssl, seg); r = process_v2_hello(ssl, seg);
if(r == SSL_NO_DATA) if(r == SSL_NO_DATA)
return (0); return 0;
if(r == 0) if(r == 0)
return (0); return 0;
} }
if(ssl->i_state == SSL_ST_SENT_NOTHING) { if(ssl->i_state == SSL_ST_SENT_NOTHING) {
r = process_beginning_plaintext(ssl, seg, direction); r = process_beginning_plaintext(ssl, seg, direction);
if(r == SSL_NO_DATA) if(r == SSL_NO_DATA)
return (0); return 0;
if(r == 0) if(r == 0)
return (0); return 0;
} }
while(!(r = read_ssl_record(ssl, q, seg, offset, &last, &offset))) { while(!(r = read_ssl_record(ssl, q, seg, offset, &last, &offset))) {
@ -499,7 +499,7 @@ static int data_ssl_analyzer(proto_obj *_obj, segment *seg, int direction) {
_status = 0; _status = 0;
abort: abort:
return (_status); return _status;
} }
static int print_ssl_header(ssl_obj *obj, static int print_ssl_header(ssl_obj *obj,
@ -526,7 +526,7 @@ static int print_ssl_header(ssl_obj *obj,
ssl_print_direction_indicator(obj, direction); ssl_print_direction_indicator(obj, direction);
return (0); return 0;
} }
static int print_ssl_record(ssl_obj *obj, static int print_ssl_record(ssl_obj *obj,
@ -556,7 +556,7 @@ static int print_ssl_record(ssl_obj *obj,
json_object_put(obj->cur_json_st); json_object_put(obj->cur_json_st);
obj->cur_json_st = NULL; obj->cur_json_st = NULL;
return (0); return 0;
} }
int close_ssl_analyzer(proto_obj *_obj, packet *p, int dir) { int close_ssl_analyzer(proto_obj *_obj, packet *p, int dir) {
@ -577,7 +577,7 @@ int close_ssl_analyzer(proto_obj *_obj, packet *p, int dir) {
ssl_print_direction_indicator(ssl, dir); ssl_print_direction_indicator(ssl, dir);
explain(ssl, " TCP %s", what); explain(ssl, " TCP %s", what);
LF; LF;
return (0); return 0;
} }
static struct proto_mod_vtbl_ ssl_vtbl = { static struct proto_mod_vtbl_ ssl_vtbl = {

View file

@ -149,14 +149,14 @@ abort:
if(_status) { if(_status) {
ssl_destroy_rec_decoder(&dec); ssl_destroy_rec_decoder(&dec);
} }
return (_status); return _status;
} }
int ssl_destroy_rec_decoder(ssl_rec_decoder **dp) { int ssl_destroy_rec_decoder(ssl_rec_decoder **dp) {
ssl_rec_decoder *d; ssl_rec_decoder *d;
if(!dp || !*dp) if(!dp || !*dp)
return (0); return 0;
d = *dp; d = *dp;
r_data_destroy(&d->mac_key); r_data_destroy(&d->mac_key);
@ -170,7 +170,7 @@ int ssl_destroy_rec_decoder(ssl_rec_decoder **dp) {
#endif #endif
*dp = 0; *dp = 0;
return (0); return 0;
} }
#define MSB(a) ((a >> 8) & 0xff) #define MSB(a) ((a >> 8) & 0xff)
@ -387,7 +387,7 @@ int ssl_decode_rec_data(ssl_obj *ssl,
} }
} }
#endif #endif
return (0); return 0;
} }
#ifdef OPENSSL #ifdef OPENSSL
@ -401,7 +401,7 @@ static int fmt_seq(UINT4 num, UCHAR *buf) {
netnum = htonl(num); netnum = htonl(num);
memcpy(buf + 4, &netnum, 4); memcpy(buf + 4, &netnum, 4);
return (0); return 0;
} }
static int tls_check_mac(ssl_rec_decoder *d, static int tls_check_mac(ssl_rec_decoder *d,
@ -448,7 +448,7 @@ static int tls_check_mac(ssl_rec_decoder *d,
ERETURN(SSL_BAD_MAC); ERETURN(SSL_BAD_MAC);
HMAC_CTX_free(hm); HMAC_CTX_free(hm);
return (0); return 0;
} }
int ssl3_check_mac(ssl_rec_decoder *d, int ssl3_check_mac(ssl_rec_decoder *d,
@ -504,7 +504,7 @@ int ssl3_check_mac(ssl_rec_decoder *d,
EVP_MD_CTX_free(mc); EVP_MD_CTX_free(mc);
return (0); return 0;
} }
#endif #endif

View file

@ -144,10 +144,10 @@ int ssl_restore_session PROTO_LIST((ssl_obj * ssl, ssl_decoder *d));
/*The password code is not thread safe*/ /*The password code is not thread safe*/
static int password_cb(char *buf, int num, int rwflag, void *userdata) { static int password_cb(char *buf, int num, int rwflag, void *userdata) {
if(num < strlen(ssl_password) + 1) if(num < strlen(ssl_password) + 1)
return (0); return 0;
strcpy(buf, ssl_password); strcpy(buf, ssl_password);
return (strlen(ssl_password)); return strlen(ssl_password);
} }
int ssl_decode_ctx_create(ssl_decode_ctx **dp, int ssl_decode_ctx_create(ssl_decode_ctx **dp,
@ -201,9 +201,9 @@ int ssl_decode_ctx_create(ssl_decode_ctx **dp,
*dp = d; *dp = d;
_status = 0; _status = 0;
abort: abort:
return (_status); return _status;
#else #else
return (0); return 0;
#endif #endif
} }
@ -222,7 +222,7 @@ int ssl_decode_ctx_destroy(ssl_decode_ctx **dp) {
SSL_free(d->ssl); SSL_free(d->ssl);
free(d); free(d);
#endif #endif
return (0); return 0;
} }
int ssl_decoder_create(ssl_decoder **dp, ssl_decode_ctx *ctx) { int ssl_decoder_create(ssl_decoder **dp, ssl_decode_ctx *ctx) {
@ -240,7 +240,7 @@ int ssl_decoder_create(ssl_decoder **dp, ssl_decode_ctx *ctx) {
abort: abort:
if(_status) if(_status)
ssl_decoder_destroy(&d); ssl_decoder_destroy(&d);
return (_status); return _status;
#else #else
return 0; return 0;
#endif #endif
@ -251,7 +251,7 @@ int ssl_decoder_destroy(ssl_decoder **dp) {
ssl_decoder *d; ssl_decoder *d;
if(!dp || !*dp) if(!dp || !*dp)
return (0); return 0;
d = *dp; d = *dp;
r_data_destroy(&d->client_random); r_data_destroy(&d->client_random);
r_data_destroy(&d->server_random); r_data_destroy(&d->server_random);
@ -267,7 +267,7 @@ int ssl_decoder_destroy(ssl_decoder **dp) {
free(d); free(d);
*dp = 0; *dp = 0;
#endif #endif
return (0); return 0;
} }
int ssl_set_client_random(ssl_decoder *d, UCHAR *msg, int len) { int ssl_set_client_random(ssl_decoder *d, UCHAR *msg, int len) {
@ -278,7 +278,7 @@ int ssl_set_client_random(ssl_decoder *d, UCHAR *msg, int len) {
if((r = r_data_create(&d->client_random, msg, len))) if((r = r_data_create(&d->client_random, msg, len)))
ERETURN(r); ERETURN(r);
#endif #endif
return (0); return 0;
} }
int ssl_set_server_random(ssl_decoder *d, UCHAR *msg, int len) { int ssl_set_server_random(ssl_decoder *d, UCHAR *msg, int len) {
@ -289,7 +289,7 @@ int ssl_set_server_random(ssl_decoder *d, UCHAR *msg, int len) {
if((r = r_data_create(&d->server_random, msg, len))) if((r = r_data_create(&d->server_random, msg, len)))
ERETURN(r); ERETURN(r);
#endif #endif
return (0); return 0;
} }
int ssl_set_client_session_id(ssl_decoder *d, UCHAR *msg, int len) { int ssl_set_client_session_id(ssl_decoder *d, UCHAR *msg, int len) {
@ -302,7 +302,7 @@ int ssl_set_client_session_id(ssl_decoder *d, UCHAR *msg, int len) {
ERETURN(r); ERETURN(r);
} }
#endif #endif
return (0); return 0;
} }
int ssl_process_server_session_id(ssl_obj *ssl, int ssl_process_server_session_id(ssl_obj *ssl,
@ -343,9 +343,9 @@ abort:
r_data_destroy(&d->session_id); r_data_destroy(&d->session_id);
r_data_create(&d->session_id, msg, len); r_data_create(&d->session_id, msg, len);
} }
return (_status); return _status;
#else #else
return (0); return 0;
#endif #endif
} }
@ -376,9 +376,9 @@ int ssl_process_client_session_id(ssl_obj *ssl,
} else { } else {
_status = -1; _status = -1;
} }
return (_status); return _status;
#else #else
return (0); return 0;
#endif #endif
} }
@ -414,7 +414,7 @@ int ssl_process_change_cipher_spec(ssl_obj *ssl,
} }
} }
#endif #endif
return (0); return 0;
} }
int ssl_decode_record(ssl_obj *ssl, int ssl_decode_record(ssl_obj *ssl,
ssl_decoder *dec, ssl_decoder *dec,
@ -441,10 +441,10 @@ int ssl_decode_record(ssl_obj *ssl,
} else if(!rd) { } else if(!rd) {
if(state & SSL_ST_SENT_CHANGE_CIPHER_SPEC) { if(state & SSL_ST_SENT_CHANGE_CIPHER_SPEC) {
ssl->record_encryption = REC_CIPHERTEXT; ssl->record_encryption = REC_CIPHERTEXT;
return (SSL_NO_DECRYPT); return SSL_NO_DECRYPT;
} else { } else {
ssl->record_encryption = REC_PLAINTEXT; ssl->record_encryption = REC_PLAINTEXT;
return (0); return 0;
} }
} }
@ -471,9 +471,9 @@ int ssl_decode_record(ssl_obj *ssl,
_status = 0; _status = 0;
abort: abort:
FREE(out); FREE(out);
return (_status); return _status;
#else #else
return (0); return 0;
#endif #endif
} }
@ -499,7 +499,7 @@ int ssl_update_handshake_messages(ssl_obj *ssl, Data *data) {
ssl->decoder->handshake_messages = hms; ssl->decoder->handshake_messages = hms;
} }
#endif #endif
return (0); return 0;
} }
static int ssl_create_session_lookup_key(ssl_obj *ssl, static int ssl_create_session_lookup_key(ssl_obj *ssl,
@ -526,7 +526,7 @@ static int ssl_create_session_lookup_key(ssl_obj *ssl,
_status = 0; _status = 0;
abort: abort:
return (_status); return _status;
} }
/* Look up the session id in the session cache and generate /* Look up the session id in the session cache and generate
@ -565,9 +565,9 @@ int ssl_restore_session(ssl_obj *ssl, ssl_decoder *d) {
_status = 0; _status = 0;
abort: abort:
FREE(lookup_key); FREE(lookup_key);
return (_status); return _status;
#else #else
return (0); return 0;
#endif #endif
} }
@ -598,9 +598,9 @@ abort:
r_data_zfree(msd); r_data_zfree(msd);
} }
FREE(lookup_key); FREE(lookup_key);
return (_status); return _status;
#else #else
return (0); return 0;
#endif #endif
} }
@ -623,17 +623,17 @@ int ssl_process_client_key_exchange(ssl_obj *ssl,
if(!d->ctx->ssl_key_log_file || ssl_read_key_log_file(ssl, d) || !d->MS) { if(!d->ctx->ssl_key_log_file || ssl_read_key_log_file(ssl, d) || !d->MS) {
if(ssl->cs->kex != KEX_RSA) if(ssl->cs->kex != KEX_RSA)
return (-1); return -1;
if(d->ephemeral_rsa) if(d->ephemeral_rsa)
return (-1); return -1;
pk = SSL_get_privatekey(d->ctx->ssl); pk = SSL_get_privatekey(d->ctx->ssl);
if(!pk) if(!pk)
return (-1); return -1;
if(EVP_PKEY_id(pk) != EVP_PKEY_RSA) if(EVP_PKEY_id(pk) != EVP_PKEY_RSA)
return (-1); return -1;
RSA_get0_key(EVP_PKEY_get0_RSA(pk), &n, NULL, NULL); RSA_get0_key(EVP_PKEY_get0_RSA(pk), &n, NULL, NULL);
if((r = r_data_alloc(&d->PMS, BN_num_bytes(n)))) if((r = r_data_alloc(&d->PMS, BN_num_bytes(n))))
@ -668,7 +668,7 @@ int ssl_process_client_key_exchange(ssl_obj *ssl,
_status = 0; _status = 0;
abort: abort:
return (_status); return _status;
#else #else
return 0; return 0;
#endif #endif
@ -714,7 +714,7 @@ static int tls_P_hash(ssl_obj *ssl,
HMAC_CTX_free(hm); HMAC_CTX_free(hm);
CRDUMPD("P_hash out", out); CRDUMPD("P_hash out", out);
return (0); return 0;
} }
static int tls_prf(ssl_obj *ssl, static int tls_prf(ssl_obj *ssl,
@ -770,7 +770,7 @@ abort:
r_data_destroy(&seed); r_data_destroy(&seed);
r_data_destroy(&S1); r_data_destroy(&S1);
r_data_destroy(&S2); r_data_destroy(&S2);
return (_status); return _status;
} }
static int tls12_prf(ssl_obj *ssl, static int tls12_prf(ssl_obj *ssl,
@ -819,7 +819,7 @@ static int tls12_prf(ssl_obj *ssl,
abort: abort:
r_data_destroy(&sha_out); r_data_destroy(&sha_out);
r_data_destroy(&seed); r_data_destroy(&seed);
return (_status); return _status;
} }
static int ssl3_generate_export_iv(ssl_obj *ssl, static int ssl3_generate_export_iv(ssl_obj *ssl,
@ -836,7 +836,7 @@ static int ssl3_generate_export_iv(ssl_obj *ssl,
memcpy(out->data, tmp, out->len); memcpy(out->data, tmp, out->len);
return (0); return 0;
} }
static int ssl3_prf(ssl_obj *ssl, static int ssl3_prf(ssl_obj *ssl,
@ -907,7 +907,7 @@ static int ssl3_prf(ssl_obj *ssl,
MD5_Init(&md5); MD5_Init(&md5);
} }
return (0); return 0;
} }
static int ssl_generate_keying_material(ssl_obj *ssl, ssl_decoder *d) { static int ssl_generate_keying_material(ssl_obj *ssl, ssl_decoder *d) {
@ -1071,7 +1071,7 @@ abort:
r_data_zfree(key_block); r_data_zfree(key_block);
free(key_block); free(key_block);
} }
return (_status); return _status;
} }
static int hkdf_expand_label(ssl_obj *ssl, static int hkdf_expand_label(ssl_obj *ssl,
@ -1285,7 +1285,7 @@ static int ssl_generate_session_hash(ssl_obj *ssl, ssl_decoder *d) {
_status = 0; _status = 0;
abort: abort:
return (_status); return _status;
} }
static int read_hex_string(char *str, UCHAR *buf, int n) { static int read_hex_string(char *str, UCHAR *buf, int n) {
@ -1364,6 +1364,6 @@ static int ssl_read_key_log_file(ssl_obj *ssl, ssl_decoder *d) {
abort: abort:
if(d->ctx->ssl_key_log_file != NULL) if(d->ctx->ssl_key_log_file != NULL)
fseek(d->ctx->ssl_key_log_file, 0, SEEK_SET); fseek(d->ctx->ssl_key_log_file, 0, SEEK_SET);
return (_status); return _status;
} }
#endif #endif

View file

@ -62,14 +62,14 @@ extern decoder HandshakeType_decoder[];
int process_beginning_plaintext(ssl_obj *ssl, segment *seg, int direction) { int process_beginning_plaintext(ssl_obj *ssl, segment *seg, int direction) {
Data d; Data d;
if(seg->len == 0) if(seg->len == 0)
return (SSL_NO_DATA); return SSL_NO_DATA;
d.data = seg->data; d.data = seg->data;
d.len = seg->len; d.len = seg->len;
/* this looks like SSL data. Ignore it*/ /* this looks like SSL data. Ignore it*/
if(d.data[0] == 0x16) if(d.data[0] == 0x16)
return (SSL_BAD_CONTENT_TYPE); return SSL_BAD_CONTENT_TYPE;
if(logger) if(logger)
logger->vtbl->data(ssl->logger_obj, d.data, d.len, direction); logger->vtbl->data(ssl->logger_obj, d.data, d.len, direction);
@ -83,7 +83,7 @@ int process_beginning_plaintext(ssl_obj *ssl, segment *seg, int direction) {
LF; LF;
} }
return (0); return 0;
} }
int process_v2_hello(ssl_obj *ssl, segment *seg) { int process_v2_hello(ssl_obj *ssl, segment *seg) {
@ -200,7 +200,7 @@ abort:
ssl->cur_json_st = NULL; ssl->cur_json_st = NULL;
} }
return (_status); return _status;
} }
int ssl_decode_switch(ssl_obj *ssl, int ssl_decode_switch(ssl_obj *ssl,
@ -219,7 +219,7 @@ int ssl_decode_switch(ssl_obj *ssl,
INDENT_POP; INDENT_POP;
} }
INDENT_POP; INDENT_POP;
return (0); return 0;
} }
dtable++; dtable++;
} }
@ -253,7 +253,7 @@ int ssl_expand_record(ssl_obj *ssl,
if(d.len != length) { if(d.len != length) {
explain(ssl, " Short record: %u bytes available (expecting: %u)\n", length, explain(ssl, " Short record: %u bytes available (expecting: %u)\n", length,
d.len); d.len);
return (0); return 0;
} }
version = ssl->version ? ssl->version : (vermaj * 256 + vermin); version = ssl->version ? ssl->version : (vermaj * 256 + vermin);
@ -267,7 +267,7 @@ int ssl_expand_record(ssl_obj *ssl,
r = ssl_decode_record(ssl, ssl->decoder, direction, ct, version, &d); r = ssl_decode_record(ssl, ssl->decoder, direction, ct, version, &d);
if(r == SSL_BAD_MAC) { if(r == SSL_BAD_MAC) {
explain(ssl, " bad MAC\n"); explain(ssl, " bad MAC\n");
return (0); return 0;
} }
if(r) { if(r) {
@ -305,7 +305,7 @@ int ssl_expand_record(ssl_obj *ssl,
} }
} }
return (0); return 0;
} }
int ssl_decode_uintX(ssl_obj *ssl, int ssl_decode_uintX(ssl_obj *ssl,
@ -334,7 +334,7 @@ int ssl_decode_uintX(ssl_obj *ssl,
P_(p) { explain(ssl, "%s = %d\n", name, *x); } P_(p) { explain(ssl, "%s = %d\n", name, *x); }
*x = v; *x = v;
return (0); return 0;
} }
int ssl_decode_opaque_array(ssl_obj *ssl, int ssl_decode_opaque_array(ssl_obj *ssl,
@ -373,19 +373,19 @@ int ssl_decode_opaque_array(ssl_obj *ssl,
P_(p) { exdump(ssl, name, x); } P_(p) { exdump(ssl, name, x); }
return (0); return 0;
} }
int ssl_lookup_enum(ssl_obj *ssl, decoder *dtable, UINT4 val, char **ptr) { int ssl_lookup_enum(ssl_obj *ssl, decoder *dtable, UINT4 val, char **ptr) {
while(dtable && dtable->type != -1) { while(dtable && dtable->type != -1) {
if(dtable->type == val) { if(dtable->type == val) {
*ptr = dtable->name; *ptr = dtable->name;
return (0); return 0;
} }
dtable++; dtable++;
} }
return (R_NOT_FOUND); return R_NOT_FOUND;
} }
int ssl_decode_enum(ssl_obj *ssl, int ssl_decode_enum(ssl_obj *ssl,
@ -410,7 +410,7 @@ int ssl_decode_enum(ssl_obj *ssl,
ERETURN(r); ERETURN(r);
} }
return (0); return 0;
} }
int ssl_print_enum(ssl_obj *ssl, char *name, decoder *dtable, UINT4 value) { int ssl_print_enum(ssl_obj *ssl, char *name, decoder *dtable, UINT4 value) {
@ -423,23 +423,23 @@ int ssl_print_enum(ssl_obj *ssl, char *name, decoder *dtable, UINT4 value) {
INDENT_INCR; INDENT_INCR;
explain(ssl, "%s", dtable->name); explain(ssl, "%s", dtable->name);
INDENT_POP; INDENT_POP;
return (0); return 0;
} }
dtable++; dtable++;
} }
LF; LF;
return (R_NOT_FOUND); return R_NOT_FOUND;
} }
int ssl_get_enum_str(ssl_obj *ssl, char *outstr, decoder *dtable, UINT4 value) { int ssl_get_enum_str(ssl_obj *ssl, char *outstr, decoder *dtable, UINT4 value) {
while(dtable && dtable->type != -1) { while(dtable && dtable->type != -1) {
if(dtable->type == value) { if(dtable->type == value) {
strncpy(outstr, dtable->name, 20); strncpy(outstr, dtable->name, 20);
return (0); return 0;
} }
dtable++; dtable++;
} }
return (R_NOT_FOUND); return R_NOT_FOUND;
} }
int explain(ssl_obj *ssl, char *format, ...) { int explain(ssl_obj *ssl, char *format, ...) {
@ -458,7 +458,7 @@ int explain(ssl_obj *ssl, char *format, ...) {
vprintf(format, ap); vprintf(format, ap);
va_end(ap); va_end(ap);
} }
return (0); return 0;
} }
int exdump(ssl_obj *ssl, char *name, Data *data) { int exdump(ssl_obj *ssl, char *name, Data *data) {
@ -484,7 +484,7 @@ int exdump(ssl_obj *ssl, char *name, Data *data) {
INDENT_POP; INDENT_POP;
LF; LF;
} }
return (0); return 0;
} }
int exstr(ssl_obj *ssl, char *outstr, Data *data) { int exstr(ssl_obj *ssl, char *outstr, Data *data) {
@ -500,7 +500,7 @@ int exstr(ssl_obj *ssl, char *outstr, Data *data) {
} }
} }
return (0); return 0;
} }
int combodump(ssl_obj *ssl, char *name, Data *data) { int combodump(ssl_obj *ssl, char *name, Data *data) {
@ -552,7 +552,7 @@ int combodump(ssl_obj *ssl, char *name, Data *data) {
P_(P_NR) { printf("\\fR"); } P_(P_NR) { printf("\\fR"); }
if(name) if(name)
INDENT_POP; INDENT_POP;
return (0); return 0;
} }
int print_data(ssl_obj *ssl, Data *d) { int print_data(ssl_obj *ssl, Data *d) {
@ -607,7 +607,7 @@ int print_data(ssl_obj *ssl, Data *d) {
} }
} }
return (0); return 0;
} }
int ssl_print_direction_indicator(ssl_obj *ssl, int dir) { int ssl_print_direction_indicator(ssl_obj *ssl, int dir) {
struct json_object *jobj; struct json_object *jobj;
@ -659,7 +659,7 @@ int ssl_print_direction_indicator(ssl_obj *ssl, int dir) {
} }
#endif #endif
return (0); return 0;
} }
int ssl_print_timestamp(ssl_obj *ssl, struct timeval *ts) { int ssl_print_timestamp(ssl_obj *ssl, struct timeval *ts) {
@ -697,7 +697,7 @@ int ssl_print_timestamp(ssl_obj *ssl, struct timeval *ts) {
memcpy(&ssl->time_last, ts, sizeof(struct timeval)); memcpy(&ssl->time_last, ts, sizeof(struct timeval));
return (0); return 0;
} }
int ssl_print_record_num(ssl_obj *ssl) { int ssl_print_record_num(ssl_obj *ssl) {
@ -719,7 +719,7 @@ int ssl_print_record_num(ssl_obj *ssl) {
json_object_object_add(jobj, "record_count", json_object_object_add(jobj, "record_count",
json_object_new_int(ssl->record_count)); json_object_new_int(ssl->record_count));
return (0); return 0;
} }
int ssl_print_cipher_suite(ssl_obj *ssl, int version, int p, UINT4 val) { int ssl_print_cipher_suite(ssl_obj *ssl, int version, int p, UINT4 val) {
@ -730,7 +730,7 @@ int ssl_print_cipher_suite(ssl_obj *ssl, int version, int p, UINT4 val) {
P_(p) { P_(p) {
if((r = ssl_lookup_enum(ssl, cipher_suite_decoder, val, &str))) { if((r = ssl_lookup_enum(ssl, cipher_suite_decoder, val, &str))) {
explain(ssl, "Unknown value 0x%x", val); explain(ssl, "Unknown value 0x%x", val);
return (0); return 0;
} }
/* Now the tricky bit. If the cipher suite begins with TLS_ /* Now the tricky bit. If the cipher suite begins with TLS_
@ -741,5 +741,5 @@ int ssl_print_cipher_suite(ssl_obj *ssl, int version, int p, UINT4 val) {
explain(ssl, "%s", str); explain(ssl, "%s", str);
} }
} }
return (0); return 0;
} }

View file

@ -183,7 +183,7 @@ abort:
#endif #endif
if(_status && cert_obj) if(_status && cert_obj)
json_object_put(cert_obj); json_object_put(cert_obj);
return (_status); return _status;
} }
int sslx_print_dn(ssl_obj *ssl, Data *data, int pf) { int sslx_print_dn(ssl_obj *ssl, Data *data, int pf) {
@ -214,7 +214,7 @@ abort :
#ifdef OPENSSL #ifdef OPENSSL
if(n) X509_NAME_free(n); if(n) X509_NAME_free(n);
#endif #endif
return (_status); return _status;
} }
static int sslx__print_dn(ssl_obj *ssl, char *x) { static int sslx__print_dn(ssl_obj *ssl, char *x) {
@ -233,7 +233,7 @@ static int sslx__print_dn(ssl_obj *ssl, char *x) {
x = slash ? slash + 1 : 0; x = slash ? slash + 1 : 0;
}; };
return (0); return 0;
} }
#ifdef OPENSSL #ifdef OPENSSL
@ -246,6 +246,6 @@ static int sslx__print_serial(ssl_obj *ssl, ASN1_INTEGER *a) {
INIT_DATA(d, a->data, a->length); INIT_DATA(d, a->data, a->length);
exdump(ssl, 0, &d); exdump(ssl, 0, &d);
return (0); return 0;
} }
#endif #endif