From 9dcd55a84fc82152267ab5df11430cdf1ab0e543 Mon Sep 17 00:00:00 2001 From: Zaid Abdulla Date: Mon, 9 Oct 2017 00:28:02 -0700 Subject: [PATCH] Log XML parse errors --- lib/cwmp.coffee | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/lib/cwmp.coffee b/lib/cwmp.coffee index fbbac5a..720351e 100644 --- a/lib/cwmp.coffee +++ b/lib/cwmp.coffee @@ -889,7 +889,21 @@ listener = (httpRequest, httpResponse) -> return parseWarnings = [] - rpc = soap.request(body, sessionContext?.cwmpVersion, parseWarnings) + try + rpc = soap.request(body, sessionContext?.cwmpVersion, parseWarnings) + catch err + msg = { + message: 'XML parse error' + parseError: err.message.trim() + sessionContext: sessionContext or {} + } + msg.sessionContext.httpRequest = httpRequest + msg.sessionContext.httpResponse = httpResponse + logger.accessError(msg) + httpResponse.writeHead(400, {'Connection': 'close'}) + httpResponse.end(err.message) + stats.concurrentRequests -= 1 + return return parsedRpc(sessionContext, rpc, parseWarnings) if sessionContext