Commit f93355ce authored by rennoch's avatar rennoch
Browse files

CR 0007735: Introduction of additional SIP message header fields and MIME_Encapsulated_Part

Test cases for IMS eCall and MCPTT have been requested by RAN5, which require updates to LibSip and MIME body type definitions by 3GPP TF160

---------------------------------------------------

New eCall TCs require an update of MIME type defs :
- Container for MSD data
- MIME field Content-ID
See R5-174537 based on main eCall RFC 8847

---------------------------------------------------

MCPTT default message contents in R5-173766 (TS 36579-1 v.0.2.0) require following new headers:
- Answer-Mode RFC 5373
- Priv-Answer-Mode RFC 5373
- Resource-Priority RFC 4412
- Target-Dialog RFC 4538
- P-Answer-State RFC 4964
parent 89740a4b
Loading
Loading
Loading
Loading
+4 −1
Original line number Diff line number Diff line
@@ -17,16 +17,19 @@ module LibSip_MessageBodyTypes {
     * */
    //type charstring XmlBody;
    //type charstring SDP_Message;
    type octetstring MsdBody;

    group MIMETypes {
        type union MIME_Encapsulated_Parts {
            SDP_Message sdpMessageBody,
            XmlBody xmlBody // if there is XML body
            XmlBody xmlBody, // if there is XML body
            MsdBody msdBody // RFC 8147: Minimum Set of Data octets
        }

        type record MIME_Encapsulated_Part {
            charstring content_type,
            charstring content_disposition optional,
            charstring content_id optional, // @sic R5-174537 sic@
            MIME_Encapsulated_Parts mime_encapsulated_part
        }

+55 −1
Original line number Diff line number Diff line
@@ -516,7 +516,13 @@ module LibSip_SIPTypesAndValues {
                    RECV_INFO_E,
                    INFO_PACKAGE_E,
                    // 2616
                    HOST_E
                    HOST_E,
                    // 
                    RESOURCE_PRIORITY_E, //4412
                    ANSWER_MODE_E, //5373
                    PRIV_ANSWER_MODE_E, //5373
                    TARGET_DIALOG_E, //4538
                    P_ANSWER_STATE_E //4964
                }

                // [7.1 ]
@@ -1511,6 +1517,49 @@ module LibSip_SIPTypesAndValues {
                    EntityTag entityTag
                }

                // RFC4412
                type record ResourcePriority {
                    FieldName fieldName (RESOURCE_PRIORITY_E) ,
                    ResourcePriority_List resourcePriorityList
                }
                type set of R_Value ResourcePriority_List;
                type record R_Value {
                    charstring namespace,
                    charstring rPriority
                }
                
                // RFC5373
                type record AnswerMode {
                    FieldName fieldName (ANSWER_MODE_E),
                    AnswerMode_Value answerMode_Value,
                    SemicolonParam_List answerModeParams optional
                }
                type record PrivAnswerMode {
                    FieldName fieldName (PRIV_ANSWER_MODE_E),
                    AnswerMode_Value answerMode_Value,
                    SemicolonParam_List answerModeParams optional
                }                
                type charstring AnswerMode_Value;
               
                 // RFC4538
                type record TargetDialog {
                      FieldName fieldName (TARGET_DIALOG_E),
                      CallidString callid,
                      TdParam tdParam optional
                }
                type record TdParam {
                        charstring remoteParam optional,
                        charstring localParam optional,                        
                        SemicolonParam_List genericParams optional
                    }  

                 // RFC4964
                type record PAnswerState {
                      FieldName fieldName (P_ANSWER_STATE_E),
                      charstring answerType,
                      SemicolonParam_List genericParams optional
                }


            } // end group HeaderFieldTypes

@@ -1657,6 +1706,11 @@ module LibSip_SIPTypesAndValues {
                    Warning warning optional,
                    // only in responses
                    WwwAuthenticate wwwAuthenticate optional,
                    ResourcePriority resourcePriority optional, // RFC4412
                    AnswerMode answerMode optional,             // RFC5373
                    PrivAnswerMode privAnswerMode optional,     // RFC5373
                    TargetDialog targetDialog optional,         // RFC4538
                    PAnswerState pAnswerState optional,         // RFC4964
                    // only in responses
                    UndefinedHeader_List undefinedHeader_List optional
                }