From b6bd99c766d88ef37c735f5bbd08e621288d955d Mon Sep 17 00:00:00 2001 From: dequis Date: Mon, 27 Oct 2014 03:36:09 -0300 Subject: dcc: Fix some invalid memory accesses reported by ASAN ASAN <3 --- dcc.c | 3 ++- lib/ftutil.c | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/dcc.c b/dcc.c index 794b3613..8fca9ac2 100644 --- a/dcc.c +++ b/dcc.c @@ -384,10 +384,11 @@ gboolean dccs_recv_proto( gpointer data, gint fd, b_input_condition cond ) if( df->watch_out ) b_event_remove( df->watch_out ); + df->watch_in = 0; + if( df->proto_finished ) dcc_finish( ft ); - df->watch_in = 0; return FALSE; } diff --git a/lib/ftutil.c b/lib/ftutil.c index 71c09b50..3b29d2f4 100644 --- a/lib/ftutil.c +++ b/lib/ftutil.c @@ -137,7 +137,7 @@ int ft_listen( struct sockaddr_storage *saddr_ptr, char *host, char *port, int c memcpy( saddr_ptr, saddr, saddrlen ); /* I hate static-length strings.. */ - host[HOST_NAME_MAX] = '\0'; + host[HOST_NAME_MAX-1] = '\0'; port[5] = '\0'; return fd; -- cgit v1.2.3