### Description Kamailio sending HELD request with broken sip uri when the INVITE message contains a display name or display name with special character "&". ``` P-Asserted-Identity: "User &" sip:+12001112233@206.147.236.78:5060 ``` or ``` P-Asserted-Identity: "User" sip:+12001112233@206.147.236.78:5060 ``` For the first case, HELD request body looks like ```xml <?xml version="1.0" encoding="UTF-8"?> <locationRequest xmlns="urn:ietf:params:xml:ns:geopriv:held" responseTime="5000"> <locationType exact="true">geodetic locationURI</locationType> <device xmlns="urn:ietf:params:xml:ns:geopriv:held:id"> <uri /> </device> </locationRequest> ``` Here `uri` element is empty.
For the second case, HELD request body looks like (ident formatted) ``` <?xml version="1.0" encoding="UTF-8"?> <locationRequest xmlns="urn:ietf:params:xml:ns:geopriv:held" responseTime="5000"> <locationType exact="true">geodetic locationURI</locationType> <device xmlns="urn:ietf:params:xml:ns:geopriv:held:id"> <uri>"User" <sip:+12001112233@206.147.236.78:5060></uri> </device> </locationRequest> ``` In [HELD schema](https://datatracker.ietf.org/doc/html/rfc6155#section-6) the 'uri' element specified as ``` <xs:element name="uri" type="xs:anyURI"/> ``` For me looks like here `display name` cannot be used. Moreover, if an inbound call does not contain `P-Asserted-Identity` header then `lost` properly extracts uri from the `From` header. For me look like need to improve `P-Asserted-Identity` parsing in the `lost` module and properly extract uri from header value.