diff --git a/src/net/udp/tftp.c b/src/net/udp/tftp.c index f4e9f4c61..7cd211e41 100644 --- a/src/net/udp/tftp.c +++ b/src/net/udp/tftp.c @@ -1245,11 +1245,15 @@ static int tftp_apply_settings ( void ) { * applicators. */ if ( tftp_server.s_addr != last_tftp_server.s_addr ) { - snprintf ( uri_string, sizeof ( uri_string ), - "tftp://%s/", inet_ntoa ( tftp_server ) ); - uri = parse_uri ( uri_string ); - if ( ! uri ) - return -ENOMEM; + if ( tftp_server.s_addr ) { + snprintf ( uri_string, sizeof ( uri_string ), + "tftp://%s/", inet_ntoa ( tftp_server ) ); + uri = parse_uri ( uri_string ); + if ( ! uri ) + return -ENOMEM; + } else { + uri = NULL; + } churi ( uri ); uri_put ( uri ); }