From d98d2c4c6f4a6a8cafef2a6a2c81de0137a07da0 Mon Sep 17 00:00:00 2001 From: Michael Tuexen Date: Mon, 18 May 2020 14:09:04 +0200 Subject: Check return value of snprintf(). This should fix https://github.com/sctplab/usrsctp/issues/453. --- programs/http_client_upcall.c | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) (limited to 'programs/http_client_upcall.c') diff --git a/programs/http_client_upcall.c b/programs/http_client_upcall.c index 5583b54c..63916266 100644 --- a/programs/http_client_upcall.c +++ b/programs/http_client_upcall.c @@ -276,16 +276,20 @@ main(int argc, char *argv[]) if (argc > 6) { #ifdef _WIN32 - _snprintf(request, sizeof(request), "%s %s %s", request_prefix, argv[6], request_postfix); + if (_snprintf(request, sizeof(request), "%s %s %s", request_prefix, argv[6], request_postfix) < 0) { #else - snprintf(request, sizeof(request), "%s %s %s", request_prefix, argv[6], request_postfix); + if (snprintf(request, sizeof(request), "%s %s %s", request_prefix, argv[6], request_postfix) < 0) { #endif + request[0] = '\0'; + } } else { #ifdef _WIN32 - _snprintf(request, sizeof(request), "%s %s %s", request_prefix, "/", request_postfix); + if (_snprintf(request, sizeof(request), "%s %s %s", request_prefix, "/", request_postfix) < 0) { #else - snprintf(request, sizeof(request), "%s %s %s", request_prefix, "/", request_postfix); + if (snprintf(request, sizeof(request), "%s %s %s", request_prefix, "/", request_postfix) < 0) { #endif + request[0] = '\0'; + } } printf("\nHTTP request:\n%s\n", request); -- cgit v1.2.3