Hello everyone, the other day I was having a look at the sources in the pjsip/src/pjsip folder in order to evaluate the Reason: header on an incoming CANCEL. The RFC behind the idea is RFC 3326. To make things clear: we're not talking about the reason string within the status line. RFC 3326 talks about a seperate header line named Reason. Apart from Reason not having a specific handler in sip_parser.c it seems to me, that up to inv_respond_incoming_cancel() in sip_inv.c I have access to the received data through rdata with the Reason header somewhere inside rdata->msg_info. But my on_call_state() handler is called later, after PJSIP has responded to the CANCEL message. As far as I can see, I don't have access to the received headers at that point anymore. I don't have enough insight to provide a patch, so forgive me this shot in the dark: pjsip_endpt_create_response() in sip_util.c does copy some things over from rdata->msg_info to tdata. That might be a starting point to save the received Reason header into the tx_data struct and start to support RFC 3326? That way my on_call_state() callback might have access to the Reason header through the body of the event struct given to it? Or does PJSIP support RFC 3326 already and I was just too ignorant to find the right spots? I'm working with a pretty current (2 weeks old) version of the 1.8.10 branch. Any other thoughts on that matter? Thanks in advance, Sebastian.