diff --git a/test-server/test-server.c b/test-server/test-server.c index 8acf62a2..b4352f78 100644 --- a/test-server/test-server.c +++ b/test-server/test-server.c @@ -732,8 +732,18 @@ int main(int argc, char **argv) info.ssl_cert_filepath = NULL; info.ssl_private_key_filepath = NULL; } else { - snprintf(cert_path, sizeof(cert_path), "%s/libwebsockets-test-server.pem", resource_path); - snprintf(key_path, sizeof(cert_path), "%s/libwebsockets-test-server.key.pem", resource_path); + if (strlen(resource_path) > sizeof(cert_path) - 32) { + lwsl_err("resource path too long\n"); + return -1; + } + sprintf(cert_path, "%s/libwebsockets-test-server.pem", + resource_path); + if (strlen(resource_path) > sizeof(key_path) - 32) { + lwsl_err("resource path too long\n"); + return -1; + } + sprintf(key_path, "%s/libwebsockets-test-server.key.pem", + resource_path); info.ssl_cert_filepath = cert_path; info.ssl_private_key_filepath = key_path;