/* Avoid casting sip_t to msg_pub_t and sip_header_t to msg_header_t */ #define MSG_PUB_T struct sip_s #define MSG_HDR_T union sip_header_u #include <sofia-sip/sip_parser.h> #include <sofia-sip/sip_extra.h> #include <sofia-sip/msg_mclass.h> #define msg_offsetof(s, f) ((unsigned short)offsetof(s ,f)) static msg_href_t const sip_short_forms[MC_SHORT_SIZE] = { { /* a */ sip_accept_contact_class, msg_offsetof(sip_t, sip_accept_contact), sip_mask_pref }, { /* b */ sip_referred_by_class, msg_offsetof(sip_t, sip_referred_by) }, { /* c */ sip_content_type_class, msg_offsetof(sip_t, sip_content_type), sip_mask_ua }, { /* d */ sip_request_disposition_class, msg_offsetof(sip_t, sip_request_disposition), sip_mask_pref }, { /* e */ sip_content_encoding_class, msg_offsetof(sip_t, sip_content_encoding), sip_mask_ua }, { /* f */ sip_from_class, msg_offsetof(sip_t, sip_from), sip_mask_request | sip_mask_response }, { NULL }, { NULL }, { /* i */ sip_call_id_class, msg_offsetof(sip_t, sip_call_id), sip_mask_request | sip_mask_response }, { /* j */ sip_reject_contact_class, msg_offsetof(sip_t, sip_reject_contact),
#define msg_multipart_update NULL #define MSG_MULTIPART_HCLASS \ MSG_HEADER_CLASS(msg_, multipart, NULL, "", mp_common, append, \ msg_multipart, msg_multipart) #define msg_offsetof(s, f) ((unsigned short)offsetof(s ,f)) static msg_href_t const msg_multipart_short_forms[MC_SHORT_SIZE] = { { NULL }, { NULL }, { /* c */ msg_content_type_class, msg_offsetof(msg_multipart_t, mp_content_type) }, { NULL }, { /* e */ msg_content_encoding_class, msg_offsetof(msg_multipart_t, mp_content_encoding) }, { NULL }, { NULL }, { NULL }, { NULL }, { NULL }, { NULL }, { NULL }, { NULL }, { NULL }, { NULL }, { NULL }, { NULL }, { NULL },