Go to the documentation of this file.
106 char b[], isize_t bsiz,
int eos);
123 enum { msg_mclass_copy = 0, msg_mclass_empty = 1 };
126 int newsize,
int empty);
133 unsigned short offset);
138 unsigned short offset,
139 unsigned short mask);
msg_href_t mc_unknown[1]
Reference for unknown headers.
Definition: msg_mclass.h:112
int msg_mclass_insert_header(msg_mclass_t *mc, msg_hclass_t *hc, unsigned short offset)
Add a new header to the message class.
Definition: msg_mclass.c:163
unsigned mc_msize
Size of public message structure.
Definition: msg_mclass.h:103
unsigned short hr_flags
Header flags.
Definition: msg_mclass.h:66
msg_href_t mc_status[1]
Status line reference.
Definition: msg_mclass.h:109
MSG_PUB_T msg_pub_t
Public protocol-specific message structure for accessing the message.
Definition: msg_types.h:81
msg_hclass_t * hr_class
Header class.
Definition: msg_mclass.h:64
msg_href_t mc_separator[1]
Separator line reference.
Definition: msg_mclass.h:110
int msg_mclass_insert(msg_mclass_t *mc, msg_href_t const *hr)
Add a header reference to the message class.
Definition: msg_mclass.c:223
issize_t(* mc_extract_body)(msg_t *msg, msg_pub_t *pub, char b[], isize_t bsiz, int eos)
Function extracting the message contents.
Definition: msg_mclass.h:105
@ MC_HASH_SIZE
Default size of hash table.
Definition: msg_mclass.h:46
msg_href_t mc_request[1]
Request line reference.
Definition: msg_mclass.h:108
short mc_hash_used
Number of headers in parsing table.
Definition: msg_mclass.h:118
Header reference.
Definition: msg_mclass.h:63
struct msg_hclass_s mc_hclass[1]
Recursive header class.
Definition: msg_mclass.h:98
msg_href_t mc_multipart[1]
Multipart body reference.
Definition: msg_mclass.h:114
Factory object for a header.
Definition: msg_types.h:279
Factory object for protocol messages.
Definition: msg_mclass.h:97
int msg_mclass_insert_with_mask(msg_mclass_t *mc, msg_hclass_t *hc, unsigned short offset, unsigned short flags)
Add a new header to the message class.
Definition: msg_mclass.c:187
msg_mclass_t * msg_mclass_clone(msg_mclass_t const *old, int newsize, int empty)
Clone a message class.
Definition: msg_mclass.c:91
void * mc_tag
Protocol-specific tag.
Definition: msg_mclass.h:101
Message object.
Definition: msg_internal.h:59
struct msg_hclass_s const msg_hclass_t
Header class.
Definition: msg_types.h:48
@ MC_SHORT_SIZE
Size of short form table.
Definition: msg_mclass.h:48
msg_href_t mc_payload[1]
Message body reference.
Definition: msg_mclass.h:111
msg_href_t mc_error[1]
Reference for erroneous header.
Definition: msg_mclass.h:113
char const * mc_name
Protocol name, e.g., "SIP/2.0".
Definition: msg_mclass.h:100
msg_href_t const * mc_short
Short forms (or NULL)
Definition: msg_mclass.h:116
unsigned mc_flags
Default flags.
Definition: msg_mclass.h:102
short mc_hash_size
Size of parsing table
Definition: msg_mclass.h:117
msg_mclass_t const * msg_mclass(msg_t const *msg)
Retrieve message class.
Definition: msg.c:251
unsigned short hr_offset
Offset within public message struct.
Definition: msg_mclass.h:65
msg_href_t mc_hash[MC_HASH_SIZE]
Hash table for parsing containing reference for each header.
Definition: msg_mclass.h:120
msg_href_t const * msg_find_hclass(msg_mclass_t const *mc, char const *s, isize_t *return_start_of_content)
Search for a header class.
Definition: msg_mclass.c:298
Sofia-SIP 1.12.11devel -
Copyright (C) 2006 Nokia Corporation. All rights reserved.
Licensed under the terms of the GNU Lesser General Public License.