XML Error with CPE

Hi,

We have a router which successfully connects to GenieACS but on the periodic inform things fall apart and GenieACS closes the session (looked in Wireshark).

We can see the following in the GenieACS debug log which indicates a missing quote from the XML. Is this a CPE issue or can we workaround with GenieACS by ignoring it somehow rather than closing the session?

Any help would be appreciated.

event: incoming HTTP request
timestamp: 2021-05-06T14:29:48.159Z
remoteAddress: 127.0.0.1
deviceId: 001E80-Router-4850001620119071
connection: 2021-05-06T14:29:48.159Z
localPort: 7548
method: POST
url: /
headers:
connection: upgrade
host: xxx
x-forwarded-for: xxx
x-real-ip: xxx
content-length: “5674”
user-agent: AVSystem_libcwmp-3.0.12
cookie: session=06bec218b3f238e7
content-type: text/xml;
body: "
… // commented most of the XML out but you can see the missing quote below In bold.
<ParameterValueStruct
Device.WiFi.AccessPoint.3.AssociatedDevice.6.X_001E80_PhyRate<V
alue
xsi:type="xsd:uns80/\0\0\0\0\0\0\0<ParameterV
alueStruct>Device.WiFi.AccessPoint.3.AssociatedDevice.6.X_001E80_Bw</Na
me><Value
xsi:type=“xsd:unsignedInt”><ParameterValueSt
ruct>Device.WiFi.AccessPoint.3.AssociatedDevice.6.Stats.BytesSent</Name
<Value
xsi:type=“xsd:unsignedInt”><ParameterValueSt
ruct>Device.WiFi.AccessPoint.3.AssociatedDevice.6.Stats.BytesReceived</
Name><Value
xsi:type=“xsd:unsignedInt”><ParameterValueSt
ruct>Device.WiFi.AccessPoint.3.AssociatedDevice.6.Stats.PacketsSent</Na
me><Value
xsi:type=“xsd:unsignedInt”><ParameterValueSt
ruct>Device.WiFi.AccessPoint.3.AssociatedDevice.6.Stats.PacketsReceived
<Value
xsi:type=“xsd:unsignedInt”><ParameterValueSt
ruct>Device.WiFi.AccessPoint.3.AssociatedDevice.6.Stats.FailedRetransCo
unt<Value
xsi:type=“xsd:unsignedInt”><ParameterValueSt
ruct>Device.WiFi.AccessPoint.3.AssociatedDevice.6.Stats.X_001E80_curren
tRxRate<Value
xsi:type=“xsd:string”>
Device.WiFi.AccessPoint.3.AssociatedDevice.6.Stats.X_001E80_currentTxRa
te<Value
xsi:type=“xsd:string”>
Device.WiFi.AccessPoint.3.AssociatedDevice.7.Active<Value
xsi:type=“xsd:string”></cwmp
:GetParameterValuesResponse></soap:Body></soap:Envelope>"


event: outgoing HTTP response
timestamp: 2021-05-06T14:29:48.181Z
remoteAddress: 127.0.0.1
deviceId: 001E80-Router-4850001620119071
connection: 2021-05-06T14:29:48.159Z
statusCode: 400
headers:
content-length: 22
connection: close
body: Unclosed token at 5563

I believe there is a config option to be more forgiving of bad XML. I don’t recall what that option is right now.

But working around bad XML at the GenieACS layer is the wrong way to go about this. You need to file defect with the vendor so they can fix the issue correctly.

Hi,

Fully agree but given that I know it will be a slow process for the vendor to fix, I was hoping to make GenieACS more forgiving :slight_smile:

If anyone knows the config for this I would be grateful.