From 13585f15c7f7dc28bbbba1661efb280d530d114c Mon Sep 17 00:00:00 2001
From: Thomas Bernard <miniupnp@free.fr>
Date: Tue, 18 Dec 2018 22:54:51 +0100
Subject: [PATCH] GetOutboundPinholeTimeout: check args
---
miniupnpd/upnpsoap.c | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/miniupnpd/upnpsoap.c b/miniupnpd/upnpsoap.c
index e7193c0a..997b3254 100644
--- a/miniupnpd/upnpsoap.c
+++ b/miniupnpd/upnpsoap.c
@@ -1850,6 +1850,13 @@ GetOutboundPinholeTimeout(struct upnphttp * h, const char * action, const char *
rem_port = GetValueFromNameValueList(&data, "RemotePort");
protocol = GetValueFromNameValueList(&data, "Protocol");
+ if (!int_port || !ext_port || !protocol)
+ {
+ ClearNameValueList(&data);
+ SoapError(h, 402, "Invalid Args");
+ return;
+ }
+
rport = (unsigned short)atoi(rem_port);
iport = (unsigned short)atoi(int_port);
/*proto = atoi(protocol);*/