Hi,
I hit another problem with a Cisco PGW in combination with CANCEL, and I'm not sure which fault it is. If I do uac_replace_from in the INVITE, the From-Header is altered somehow and sent to the PGW. So if A calls B where B is a PGW, the From from A to OpenSER is for example sip:a@somedomain and from OpenSER to B it's sip:other-a@somedomain.
If the call is cancelled, the From-header isn't altered, so the From from A to OpenSER is sip:a@somedomain and from OpenSER to B it's sip:a@somedomain as well.
Now the PGW seems to ignore this CANCEL, and I guess it's because of the different From-usernames, since it works if I don't do any uac_replace_from.
RFC3261 says in ยง9.1: The Request-URI, Call-ID, To, the numeric part of CSeq, and From header fields in the CANCEL request MUST be identical to those in the request being cancelled, including tags.
So is it correct behavior of the PGW because the From header in the CANCEL is different from the From header in the INVITE? Should OpenSER alter the From in the CANCEL as well? Or should the PGW just check the From tags, but not the From URI?
Andreas