### 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.
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/3426
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/issues/3426(a)github.com>