diff options
Diffstat (limited to 'tinyMSRP/src/headers')
-rwxr-xr-x | tinyMSRP/src/headers/tmsrp_header.c | 127 | ||||
-rwxr-xr-x | tinyMSRP/src/headers/tmsrp_header_Authorization.c | 222 | ||||
-rwxr-xr-x | tinyMSRP/src/headers/tmsrp_header_Byte-Range.c | 619 | ||||
-rwxr-xr-x | tinyMSRP/src/headers/tmsrp_header_Content-Type.c | 745 | ||||
-rwxr-xr-x | tinyMSRP/src/headers/tmsrp_header_Dummy.c | 531 | ||||
-rwxr-xr-x | tinyMSRP/src/headers/tmsrp_header_Expires.c | 503 | ||||
-rwxr-xr-x | tinyMSRP/src/headers/tmsrp_header_Failure-Report.c | 585 | ||||
-rwxr-xr-x | tinyMSRP/src/headers/tmsrp_header_From-Path.c | 621 | ||||
-rwxr-xr-x | tinyMSRP/src/headers/tmsrp_header_Max-Expires.c | 521 | ||||
-rwxr-xr-x | tinyMSRP/src/headers/tmsrp_header_Message-ID.c | 726 | ||||
-rwxr-xr-x | tinyMSRP/src/headers/tmsrp_header_Min-Expires.c | 521 | ||||
-rwxr-xr-x | tinyMSRP/src/headers/tmsrp_header_Status.c | 593 | ||||
-rwxr-xr-x | tinyMSRP/src/headers/tmsrp_header_Success-Report.c | 547 | ||||
-rwxr-xr-x | tinyMSRP/src/headers/tmsrp_header_To-Path.c | 609 | ||||
-rwxr-xr-x | tinyMSRP/src/headers/tmsrp_header_Use-Path.c | 581 | ||||
-rwxr-xr-x | tinyMSRP/src/headers/tmsrp_header_WWW-Authenticate.c | 182 |
16 files changed, 4178 insertions, 4055 deletions
diff --git a/tinyMSRP/src/headers/tmsrp_header.c b/tinyMSRP/src/headers/tmsrp_header.c index b7aab62..7564598 100755 --- a/tinyMSRP/src/headers/tmsrp_header.c +++ b/tinyMSRP/src/headers/tmsrp_header.c @@ -2,19 +2,19 @@ * Copyright (C) 2009 Mamadou Diop. * * Contact: Mamadou Diop <diopmamadou(at)doubango.org> -* +* * This file is part of Open Source Doubango Framework. * * DOUBANGO is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. -* +* * DOUBANGO is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. -* +* * You should have received a copy of the GNU General Public License * along with DOUBANGO. * @@ -33,80 +33,95 @@ #include "tsk_string.h" -/** Gets the name of the MSRP header with a type equal to @a type. - * @param type The @a type of the header for which to retrieve the name. +/** Gets the name of the MSRP header with a type equal to @a type. + * @param type The @a type of the header for which to retrieve the name. * * @return The name of the header. **/ const char* tmsrp_header_get_name(tmsrp_header_type_t type) { - switch(type) - { - case tmsrp_htype_Authentication_Info: return "Authentication-Info"; - case tmsrp_htype_Authorization: return "Authorization"; - case tmsrp_htype_Byte_Range: return "Byte-Range"; - case tmsrp_htype_Content_Type: return "Content-Type"; - case tmsrp_htype_Expires: return "Expires"; - case tmsrp_htype_Failure_Report: return "Failure-Report"; - case tmsrp_htype_From_Path: return "From-Path"; - case tmsrp_htype_Max_Expires: return "Max-Expires"; - case tmsrp_htype_Message_ID: return "Message-ID"; - case tmsrp_htype_Min_Expires: return "Min-Expires"; - case tmsrp_htype_Status: return "Status"; - case tmsrp_htype_Success_Report: return "Success-Report"; - case tmsrp_htype_To_Path: return "To-Path"; - case tmsrp_htype_Use_Path: return "Use-Path"; - case tmsrp_htype_WWW_Authenticate: return "WWW-Authenticate"; + switch(type) { + case tmsrp_htype_Authentication_Info: + return "Authentication-Info"; + case tmsrp_htype_Authorization: + return "Authorization"; + case tmsrp_htype_Byte_Range: + return "Byte-Range"; + case tmsrp_htype_Content_Type: + return "Content-Type"; + case tmsrp_htype_Expires: + return "Expires"; + case tmsrp_htype_Failure_Report: + return "Failure-Report"; + case tmsrp_htype_From_Path: + return "From-Path"; + case tmsrp_htype_Max_Expires: + return "Max-Expires"; + case tmsrp_htype_Message_ID: + return "Message-ID"; + case tmsrp_htype_Min_Expires: + return "Min-Expires"; + case tmsrp_htype_Status: + return "Status"; + case tmsrp_htype_Success_Report: + return "Success-Report"; + case tmsrp_htype_To_Path: + return "To-Path"; + case tmsrp_htype_Use_Path: + return "Use-Path"; + case tmsrp_htype_WWW_Authenticate: + return "WWW-Authenticate"; - default: return "unknown-header"; - } + default: + return "unknown-header"; + } } const char* tmsrp_header_get_nameex(const tmsrp_header_t *self) { - if(self){ - if(self->type == tmsrp_htype_Dummy){ - return ((tmsrp_header_Dummy_t*)(self))->name; - } - else{ - return tmsrp_header_get_name(self->type); - } - } - return "unknown-header"; + if(self) { + if(self->type == tmsrp_htype_Dummy) { + return ((tmsrp_header_Dummy_t*)(self))->name; + } + else { + return tmsrp_header_get_name(self->type); + } + } + return "unknown-header"; } int tmsrp_header_serialize(const tmsrp_header_t *self, tsk_buffer_t *output) { - int ret = -1; - if(!self || !output){ - return -1; - } + int ret = -1; + if(!self || !output) { + return -1; + } - /* Name */ - tsk_buffer_append_2(output, "%s: ", tmsrp_header_get_nameex(self)); + /* Name */ + tsk_buffer_append_2(output, "%s: ", tmsrp_header_get_nameex(self)); - /* Value */ - if((ret = self->tostring(self, output))){ - // Abort? - } + /* Value */ + if((ret = self->tostring(self, output))) { + // Abort? + } - /* CRLF*/ - ret = tsk_buffer_append(output, "\r\n", 2); + /* CRLF*/ + ret = tsk_buffer_append(output, "\r\n", 2); - return ret; + return ret; } char* tmsrp_header_tostring(const tmsrp_header_t *self) { - char* ret = tsk_null; - tsk_buffer_t* buffer; - if(self && self->tostring){ - if((buffer = tsk_buffer_create_null())){ - self->tostring(self, buffer); - ret = tsk_strndup(buffer->data, buffer->size); - TSK_OBJECT_SAFE_FREE(buffer); - } - } - return ret; + char* ret = tsk_null; + tsk_buffer_t* buffer; + if(self && self->tostring) { + if((buffer = tsk_buffer_create_null())) { + self->tostring(self, buffer); + ret = tsk_strndup(buffer->data, buffer->size); + TSK_OBJECT_SAFE_FREE(buffer); + } + } + return ret; }
\ No newline at end of file diff --git a/tinyMSRP/src/headers/tmsrp_header_Authorization.c b/tinyMSRP/src/headers/tmsrp_header_Authorization.c index 0b61d02..b8888b9 100755 --- a/tinyMSRP/src/headers/tmsrp_header_Authorization.c +++ b/tinyMSRP/src/headers/tmsrp_header_Authorization.c @@ -4,19 +4,19 @@ * Copyright (C) 2009 Mamadou Diop. * * Contact: Mamadou Diop <diopmamadou(at)doubango.org> -* +* * This file is part of Open Source Doubango Framework. * * DOUBANGO is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. -* +* * DOUBANGO is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. -* +* * You should have received a copy of the GNU General Public License * along with DOUBANGO. * @@ -41,88 +41,85 @@ tmsrp_header_Authorization_t* tmsrp_header_Authorization_create() { - return tsk_object_new(tmsrp_header_Authorization_def_t); + return tsk_object_new(tmsrp_header_Authorization_def_t); } int tmsrp_header_Authorization_tostring(const tmsrp_header_t* header, tsk_buffer_t* output) { - if(header) - { - const tmsrp_header_Authorization_t *Authorization = (const tmsrp_header_Authorization_t *)header; - if(Authorization && Authorization->scheme) - { - return tsk_buffer_append_2(output, "%s %s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s", - Authorization->scheme, - - Authorization->username ? "username=\"" : "", - Authorization->username ? Authorization->username : "", - Authorization->username ? "\"" : "", - - Authorization->realm ? ",realm=\"" : "", - Authorization->realm ? Authorization->realm : "", - Authorization->realm ? "\"" : "", - - Authorization->nonce ? ",nonce=\"" : "", - Authorization->nonce ? Authorization->nonce : "", - Authorization->nonce ? "\"" : "", - - Authorization->uri ? ",uri=\"" : "", - Authorization->uri ? Authorization->uri : "", - Authorization->uri ? "\"" : "", - - Authorization->response ? ",response=\"" : "", - Authorization->response ? Authorization->response : "", - Authorization->response ? "\"" : "", - - Authorization->algorithm ? ",algorithm=" : "", - Authorization->algorithm ? Authorization->algorithm : "", - - Authorization->cnonce ? ",cnonce=\"" : "", - Authorization->cnonce ? Authorization->cnonce : "", - Authorization->cnonce ? "\"" : "", - - Authorization->opaque ? ",opaque=\"" : "", - Authorization->opaque ? Authorization->opaque : "", - Authorization->opaque ? "\"" : "", - - Authorization->qop ? ",qop=" : "", - Authorization->qop ? Authorization->qop : "", - - Authorization->nc ? ",nc=" : "", - Authorization->nc ? Authorization->nc : "" - ); - } - } - return -1; + if(header) { + const tmsrp_header_Authorization_t *Authorization = (const tmsrp_header_Authorization_t *)header; + if(Authorization && Authorization->scheme) { + return tsk_buffer_append_2(output, "%s %s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s", + Authorization->scheme, + + Authorization->username ? "username=\"" : "", + Authorization->username ? Authorization->username : "", + Authorization->username ? "\"" : "", + + Authorization->realm ? ",realm=\"" : "", + Authorization->realm ? Authorization->realm : "", + Authorization->realm ? "\"" : "", + + Authorization->nonce ? ",nonce=\"" : "", + Authorization->nonce ? Authorization->nonce : "", + Authorization->nonce ? "\"" : "", + + Authorization->uri ? ",uri=\"" : "", + Authorization->uri ? Authorization->uri : "", + Authorization->uri ? "\"" : "", + + Authorization->response ? ",response=\"" : "", + Authorization->response ? Authorization->response : "", + Authorization->response ? "\"" : "", + + Authorization->algorithm ? ",algorithm=" : "", + Authorization->algorithm ? Authorization->algorithm : "", + + Authorization->cnonce ? ",cnonce=\"" : "", + Authorization->cnonce ? Authorization->cnonce : "", + Authorization->cnonce ? "\"" : "", + + Authorization->opaque ? ",opaque=\"" : "", + Authorization->opaque ? Authorization->opaque : "", + Authorization->opaque ? "\"" : "", + + Authorization->qop ? ",qop=" : "", + Authorization->qop ? Authorization->qop : "", + + Authorization->nc ? ",nc=" : "", + Authorization->nc ? Authorization->nc : "" + ); + } + } + return -1; } tmsrp_header_Authorization_t *tmsrp_header_Authorization_parse(const char *data, tsk_size_t size) { - tmsrp_header_Authorization_t *hdr_msrp = 0; - thttp_header_Authorization_t* hdr_http; - - if((hdr_http = thttp_header_Authorization_parse(data, size))) - { - hdr_msrp = tmsrp_header_Authorization_create(); - - hdr_msrp->scheme = tsk_strdup(hdr_http->scheme); - hdr_msrp->username = tsk_strdup(hdr_http->username); - hdr_msrp->realm = tsk_strdup(hdr_http->realm); - hdr_msrp->nonce = tsk_strdup(hdr_http->nonce); - hdr_msrp->uri = tsk_strdup(hdr_http->uri); - hdr_msrp->response = tsk_strdup(hdr_http->response); - hdr_msrp->algorithm = tsk_strdup(hdr_http->algorithm); - hdr_msrp->cnonce = tsk_strdup(hdr_http->cnonce); - hdr_msrp->opaque = tsk_strdup(hdr_http->opaque); - hdr_msrp->qop = tsk_strdup(hdr_http->qop); - hdr_msrp->nc = tsk_strdup(hdr_http->nc); - - hdr_msrp->params = tsk_object_ref(THTTP_HEADER(hdr_http)->params); - - TSK_OBJECT_SAFE_FREE(hdr_http); - } - - return hdr_msrp; + tmsrp_header_Authorization_t *hdr_msrp = 0; + thttp_header_Authorization_t* hdr_http; + + if((hdr_http = thttp_header_Authorization_parse(data, size))) { + hdr_msrp = tmsrp_header_Authorization_create(); + + hdr_msrp->scheme = tsk_strdup(hdr_http->scheme); + hdr_msrp->username = tsk_strdup(hdr_http->username); + hdr_msrp->realm = tsk_strdup(hdr_http->realm); + hdr_msrp->nonce = tsk_strdup(hdr_http->nonce); + hdr_msrp->uri = tsk_strdup(hdr_http->uri); + hdr_msrp->response = tsk_strdup(hdr_http->response); + hdr_msrp->algorithm = tsk_strdup(hdr_http->algorithm); + hdr_msrp->cnonce = tsk_strdup(hdr_http->cnonce); + hdr_msrp->opaque = tsk_strdup(hdr_http->opaque); + hdr_msrp->qop = tsk_strdup(hdr_http->qop); + hdr_msrp->nc = tsk_strdup(hdr_http->nc); + + hdr_msrp->params = tsk_object_ref(THTTP_HEADER(hdr_http)->params); + + TSK_OBJECT_SAFE_FREE(hdr_http); + } + + return hdr_msrp; } @@ -135,47 +132,46 @@ tmsrp_header_Authorization_t *tmsrp_header_Authorization_parse(const char *data, static tsk_object_t* tmsrp_header_Authorization_ctor(tsk_object_t *self, va_list * app) { - tmsrp_header_Authorization_t *Authorization = self; - if(Authorization){ - TMSRP_HEADER(Authorization)->type = tmsrp_htype_Authorization; - TMSRP_HEADER(Authorization)->tostring = tmsrp_header_Authorization_tostring; - } - else{ - TSK_DEBUG_ERROR("Failed to create new Authorization header."); - } - return self; + tmsrp_header_Authorization_t *Authorization = self; + if(Authorization) { + TMSRP_HEADER(Authorization)->type = tmsrp_htype_Authorization; + TMSRP_HEADER(Authorization)->tostring = tmsrp_header_Authorization_tostring; + } + else { + TSK_DEBUG_ERROR("Failed to create new Authorization header."); + } + return self; } static tsk_object_t* tmsrp_header_Authorization_dtor(tsk_object_t *self) { - tmsrp_header_Authorization_t *Authorization = self; - if(Authorization){ - TSK_FREE(Authorization->scheme); - TSK_FREE(Authorization->username); - TSK_FREE(Authorization->realm); - TSK_FREE(Authorization->nonce); - TSK_FREE(Authorization->uri); - TSK_FREE(Authorization->response); - TSK_FREE(Authorization->algorithm); - TSK_FREE(Authorization->cnonce); - TSK_FREE(Authorization->opaque); - TSK_FREE(Authorization->qop); - TSK_FREE(Authorization->nc); - - TSK_OBJECT_SAFE_FREE(Authorization->params); - } - else{ - TSK_DEBUG_ERROR("Null Authorization header."); - } - - return self; + tmsrp_header_Authorization_t *Authorization = self; + if(Authorization) { + TSK_FREE(Authorization->scheme); + TSK_FREE(Authorization->username); + TSK_FREE(Authorization->realm); + TSK_FREE(Authorization->nonce); + TSK_FREE(Authorization->uri); + TSK_FREE(Authorization->response); + TSK_FREE(Authorization->algorithm); + TSK_FREE(Authorization->cnonce); + TSK_FREE(Authorization->opaque); + TSK_FREE(Authorization->qop); + TSK_FREE(Authorization->nc); + + TSK_OBJECT_SAFE_FREE(Authorization->params); + } + else { + TSK_DEBUG_ERROR("Null Authorization header."); + } + + return self; } -static const tsk_object_def_t tmsrp_header_Authorization_def_s = -{ - sizeof(tmsrp_header_Authorization_t), - tmsrp_header_Authorization_ctor, - tmsrp_header_Authorization_dtor, - tsk_null +static const tsk_object_def_t tmsrp_header_Authorization_def_s = { + sizeof(tmsrp_header_Authorization_t), + tmsrp_header_Authorization_ctor, + tmsrp_header_Authorization_dtor, + tsk_null }; const tsk_object_def_t *tmsrp_header_Authorization_def_t = &tmsrp_header_Authorization_def_s; diff --git a/tinyMSRP/src/headers/tmsrp_header_Byte-Range.c b/tinyMSRP/src/headers/tmsrp_header_Byte-Range.c index 301b576..3a59024 100755 --- a/tinyMSRP/src/headers/tmsrp_header_Byte-Range.c +++ b/tinyMSRP/src/headers/tmsrp_header_Byte-Range.c @@ -2,19 +2,19 @@ /* #line 1 "./ragel/tmsrp_parser_header_Byte-Range.rl" */ /* * Copyright (C) 2009-2015 Mamadou DIOP. -* +* * This file is part of Open Source Doubango Framework. * * DOUBANGO is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. -* +* * DOUBANGO is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. -* +* * You should have received a copy of the GNU General Public License * along with DOUBANGO. * @@ -40,298 +40,308 @@ tmsrp_header_Byte_Range_t* tmsrp_header_Byte_Range_create(int64_t start, int64_t end, int64_t total) { - return tsk_object_new(TMSRP_HEADER_BYTE_RANGE_VA_ARGS(start, end, total)); + return tsk_object_new(TMSRP_HEADER_BYTE_RANGE_VA_ARGS(start, end, total)); } tmsrp_header_Byte_Range_t* tmsrp_header_Byte_Range_create_null() { - return tmsrp_header_Byte_Range_create(1, -1, -1); + return tmsrp_header_Byte_Range_create(1, -1, -1); } int tmsrp_header_Byte_Range_tostring(const tmsrp_header_t* header, tsk_buffer_t* output) { - if(header){ - const tmsrp_header_Byte_Range_t *Byte_Range = (const tmsrp_header_Byte_Range_t *)header; - tsk_istr_t start, end, total; - - if(Byte_Range->start>=0){ - tsk_itoa(Byte_Range->start, &start); - } - if(Byte_Range->end>=0){ - tsk_itoa(Byte_Range->end, &end); - } - if(Byte_Range->total>=0){ - tsk_itoa(Byte_Range->total, &total); - } - - return tsk_buffer_append_2(output, "%s-%s/%s", - Byte_Range->start>=0 ? start : "*", - Byte_Range->end>=0 ? end : "*", - Byte_Range->total>=0 ? total : "*" - ); - } - - return -1; + if(header) { + const tmsrp_header_Byte_Range_t *Byte_Range = (const tmsrp_header_Byte_Range_t *)header; + tsk_istr_t start, end, total; + + if(Byte_Range->start>=0) { + tsk_itoa(Byte_Range->start, &start); + } + if(Byte_Range->end>=0) { + tsk_itoa(Byte_Range->end, &end); + } + if(Byte_Range->total>=0) { + tsk_itoa(Byte_Range->total, &total); + } + + return tsk_buffer_append_2(output, "%s-%s/%s", + Byte_Range->start>=0 ? start : "*", + Byte_Range->end>=0 ? end : "*", + Byte_Range->total>=0 ? total : "*" + ); + } + + return -1; } tmsrp_header_Byte_Range_t *tmsrp_header_Byte_Range_parse(const char *data, tsk_size_t size) { - int cs = 0; - const char *p = data; - const char *pe = p + size; - const char *eof = pe; - tmsrp_header_Byte_Range_t *hdr_Byte_Range = tmsrp_header_Byte_Range_create_null(); - - const char *tag_start = tsk_null; - - TSK_RAGEL_DISABLE_WARNINGS_BEGIN() - -/* #line 90 "./src/headers/tmsrp_header_Byte-Range.c" */ -static const char _tmsrp_machine_parser_header_Byte_Range_actions[] = { - 0, 1, 0, 1, 1, 1, 2, 1, - 3 -}; - -static const char _tmsrp_machine_parser_header_Byte_Range_key_offsets[] = { - 0, 0, 2, 4, 6, 8, 9, 11, - 13, 15, 17, 19, 20, 21, 23, 26, - 29, 30, 33, 34, 37, 38, 38 -}; - -static const char _tmsrp_machine_parser_header_Byte_Range_trans_keys[] = { - 66, 98, 89, 121, 84, 116, 69, 101, - 45, 82, 114, 65, 97, 78, 110, 71, - 103, 69, 101, 58, 32, 48, 57, 45, - 48, 57, 42, 48, 57, 47, 42, 48, - 57, 10, 47, 48, 57, 13, 13, 48, - 57, 0 -}; - -static const char _tmsrp_machine_parser_header_Byte_Range_single_lengths[] = { - 0, 2, 2, 2, 2, 1, 2, 2, - 2, 2, 2, 1, 1, 0, 1, 1, - 1, 1, 1, 1, 1, 0, 1 -}; - -static const char _tmsrp_machine_parser_header_Byte_Range_range_lengths[] = { - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 1, 1, 1, - 0, 1, 0, 1, 0, 0, 1 -}; - -static const char _tmsrp_machine_parser_header_Byte_Range_index_offsets[] = { - 0, 0, 3, 6, 9, 12, 14, 17, - 20, 23, 26, 29, 31, 33, 35, 38, - 41, 43, 46, 48, 51, 53, 54 -}; - -static const char _tmsrp_machine_parser_header_Byte_Range_indicies[] = { - 0, 0, 1, 2, 2, 1, 3, 3, - 1, 4, 4, 1, 5, 1, 6, 6, - 1, 7, 7, 1, 8, 8, 1, 9, - 9, 1, 10, 10, 1, 11, 1, 12, - 1, 13, 1, 14, 15, 1, 16, 17, - 1, 18, 1, 19, 20, 1, 21, 1, - 18, 22, 1, 23, 1, 1, 23, 24, - 1, 0 -}; - -static const char _tmsrp_machine_parser_header_Byte_Range_trans_targs[] = { - 2, 0, 3, 4, 5, 6, 7, 8, - 9, 10, 11, 12, 13, 14, 15, 14, - 16, 19, 17, 20, 22, 21, 19, 18, - 22 -}; - -static const char _tmsrp_machine_parser_header_Byte_Range_trans_actions[] = { - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 1, 3, 0, - 1, 1, 5, 1, 1, 0, 0, 7, - 0 -}; - -static const char _tmsrp_machine_parser_header_Byte_Range_eof_actions[] = { - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 7, 0, 7 -}; - -static const int tmsrp_machine_parser_header_Byte_Range_start = 1; -static const int tmsrp_machine_parser_header_Byte_Range_first_final = 20; -static const int tmsrp_machine_parser_header_Byte_Range_error = 0; - -static const int tmsrp_machine_parser_header_Byte_Range_en_main = 1; - - -/* #line 126 "./ragel/tmsrp_parser_header_Byte-Range.rl" */ - (void)(eof); - (void)(tmsrp_machine_parser_header_Byte_Range_first_final); - (void)(tmsrp_machine_parser_header_Byte_Range_error); - (void)(tmsrp_machine_parser_header_Byte_Range_en_main); - -/* #line 173 "./src/headers/tmsrp_header_Byte-Range.c" */ - { - cs = tmsrp_machine_parser_header_Byte_Range_start; - } - -/* #line 131 "./ragel/tmsrp_parser_header_Byte-Range.rl" */ - -/* #line 180 "./src/headers/tmsrp_header_Byte-Range.c" */ - { - int _klen; - unsigned int _trans; - const char *_acts; - unsigned int _nacts; - const char *_keys; - - if ( p == pe ) - goto _test_eof; - if ( cs == 0 ) - goto _out; + int cs = 0; + const char *p = data; + const char *pe = p + size; + const char *eof = pe; + tmsrp_header_Byte_Range_t *hdr_Byte_Range = tmsrp_header_Byte_Range_create_null(); + + const char *tag_start = tsk_null; + + TSK_RAGEL_DISABLE_WARNINGS_BEGIN() + + /* #line 90 "./src/headers/tmsrp_header_Byte-Range.c" */ + static const char _tmsrp_machine_parser_header_Byte_Range_actions[] = { + 0, 1, 0, 1, 1, 1, 2, 1, + 3 + }; + + static const char _tmsrp_machine_parser_header_Byte_Range_key_offsets[] = { + 0, 0, 2, 4, 6, 8, 9, 11, + 13, 15, 17, 19, 20, 21, 23, 26, + 29, 30, 33, 34, 37, 38, 38 + }; + + static const char _tmsrp_machine_parser_header_Byte_Range_trans_keys[] = { + 66, 98, 89, 121, 84, 116, 69, 101, + 45, 82, 114, 65, 97, 78, 110, 71, + 103, 69, 101, 58, 32, 48, 57, 45, + 48, 57, 42, 48, 57, 47, 42, 48, + 57, 10, 47, 48, 57, 13, 13, 48, + 57, 0 + }; + + static const char _tmsrp_machine_parser_header_Byte_Range_single_lengths[] = { + 0, 2, 2, 2, 2, 1, 2, 2, + 2, 2, 2, 1, 1, 0, 1, 1, + 1, 1, 1, 1, 1, 0, 1 + }; + + static const char _tmsrp_machine_parser_header_Byte_Range_range_lengths[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1, 1, 1, + 0, 1, 0, 1, 0, 0, 1 + }; + + static const char _tmsrp_machine_parser_header_Byte_Range_index_offsets[] = { + 0, 0, 3, 6, 9, 12, 14, 17, + 20, 23, 26, 29, 31, 33, 35, 38, + 41, 43, 46, 48, 51, 53, 54 + }; + + static const char _tmsrp_machine_parser_header_Byte_Range_indicies[] = { + 0, 0, 1, 2, 2, 1, 3, 3, + 1, 4, 4, 1, 5, 1, 6, 6, + 1, 7, 7, 1, 8, 8, 1, 9, + 9, 1, 10, 10, 1, 11, 1, 12, + 1, 13, 1, 14, 15, 1, 16, 17, + 1, 18, 1, 19, 20, 1, 21, 1, + 18, 22, 1, 23, 1, 1, 23, 24, + 1, 0 + }; + + static const char _tmsrp_machine_parser_header_Byte_Range_trans_targs[] = { + 2, 0, 3, 4, 5, 6, 7, 8, + 9, 10, 11, 12, 13, 14, 15, 14, + 16, 19, 17, 20, 22, 21, 19, 18, + 22 + }; + + static const char _tmsrp_machine_parser_header_Byte_Range_trans_actions[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1, 3, 0, + 1, 1, 5, 1, 1, 0, 0, 7, + 0 + }; + + static const char _tmsrp_machine_parser_header_Byte_Range_eof_actions[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 7, 0, 7 + }; + + static const int tmsrp_machine_parser_header_Byte_Range_start = 1; + static const int tmsrp_machine_parser_header_Byte_Range_first_final = 20; + static const int tmsrp_machine_parser_header_Byte_Range_error = 0; + + static const int tmsrp_machine_parser_header_Byte_Range_en_main = 1; + + + /* #line 126 "./ragel/tmsrp_parser_header_Byte-Range.rl" */ + (void)(eof); + (void)(tmsrp_machine_parser_header_Byte_Range_first_final); + (void)(tmsrp_machine_parser_header_Byte_Range_error); + (void)(tmsrp_machine_parser_header_Byte_Range_en_main); + + /* #line 173 "./src/headers/tmsrp_header_Byte-Range.c" */ + { + cs = tmsrp_machine_parser_header_Byte_Range_start; + } + + /* #line 131 "./ragel/tmsrp_parser_header_Byte-Range.rl" */ + + /* #line 180 "./src/headers/tmsrp_header_Byte-Range.c" */ + { + int _klen; + unsigned int _trans; + const char *_acts; + unsigned int _nacts; + const char *_keys; + + if ( p == pe ) { + goto _test_eof; + } + if ( cs == 0 ) { + goto _out; + } _resume: - _keys = _tmsrp_machine_parser_header_Byte_Range_trans_keys + _tmsrp_machine_parser_header_Byte_Range_key_offsets[cs]; - _trans = _tmsrp_machine_parser_header_Byte_Range_index_offsets[cs]; - - _klen = _tmsrp_machine_parser_header_Byte_Range_single_lengths[cs]; - if ( _klen > 0 ) { - const char *_lower = _keys; - const char *_mid; - const char *_upper = _keys + _klen - 1; - while (1) { - if ( _upper < _lower ) - break; - - _mid = _lower + ((_upper-_lower) >> 1); - if ( (*p) < *_mid ) - _upper = _mid - 1; - else if ( (*p) > *_mid ) - _lower = _mid + 1; - else { - _trans += (_mid - _keys); - goto _match; - } - } - _keys += _klen; - _trans += _klen; - } - - _klen = _tmsrp_machine_parser_header_Byte_Range_range_lengths[cs]; - if ( _klen > 0 ) { - const char *_lower = _keys; - const char *_mid; - const char *_upper = _keys + (_klen<<1) - 2; - while (1) { - if ( _upper < _lower ) - break; - - _mid = _lower + (((_upper-_lower) >> 1) & ~1); - if ( (*p) < _mid[0] ) - _upper = _mid - 2; - else if ( (*p) > _mid[1] ) - _lower = _mid + 2; - else { - _trans += ((_mid - _keys)>>1); - goto _match; - } - } - _trans += _klen; - } + _keys = _tmsrp_machine_parser_header_Byte_Range_trans_keys + _tmsrp_machine_parser_header_Byte_Range_key_offsets[cs]; + _trans = _tmsrp_machine_parser_header_Byte_Range_index_offsets[cs]; + + _klen = _tmsrp_machine_parser_header_Byte_Range_single_lengths[cs]; + if ( _klen > 0 ) { + const char *_lower = _keys; + const char *_mid; + const char *_upper = _keys + _klen - 1; + while (1) { + if ( _upper < _lower ) { + break; + } + + _mid = _lower + ((_upper-_lower) >> 1); + if ( (*p) < *_mid ) { + _upper = _mid - 1; + } + else if ( (*p) > *_mid ) { + _lower = _mid + 1; + } + else { + _trans += (_mid - _keys); + goto _match; + } + } + _keys += _klen; + _trans += _klen; + } + + _klen = _tmsrp_machine_parser_header_Byte_Range_range_lengths[cs]; + if ( _klen > 0 ) { + const char *_lower = _keys; + const char *_mid; + const char *_upper = _keys + (_klen<<1) - 2; + while (1) { + if ( _upper < _lower ) { + break; + } + + _mid = _lower + (((_upper-_lower) >> 1) & ~1); + if ( (*p) < _mid[0] ) { + _upper = _mid - 2; + } + else if ( (*p) > _mid[1] ) { + _lower = _mid + 2; + } + else { + _trans += ((_mid - _keys)>>1); + goto _match; + } + } + _trans += _klen; + } _match: - _trans = _tmsrp_machine_parser_header_Byte_Range_indicies[_trans]; - cs = _tmsrp_machine_parser_header_Byte_Range_trans_targs[_trans]; - - if ( _tmsrp_machine_parser_header_Byte_Range_trans_actions[_trans] == 0 ) - goto _again; - - _acts = _tmsrp_machine_parser_header_Byte_Range_actions + _tmsrp_machine_parser_header_Byte_Range_trans_actions[_trans]; - _nacts = (unsigned int) *_acts++; - while ( _nacts-- > 0 ) - { - switch ( *_acts++ ) - { - case 0: -/* #line 41 "./ragel/tmsrp_parser_header_Byte-Range.rl" */ - { - tag_start = p; - } - break; - case 1: -/* #line 45 "./ragel/tmsrp_parser_header_Byte-Range.rl" */ - { - TSK_PARSER_SET_INTEGER_EX(hdr_Byte_Range->start, int64_t, atoi64); - } - break; - case 2: -/* #line 49 "./ragel/tmsrp_parser_header_Byte-Range.rl" */ - { - if(tag_start && *tag_start == '*'){ - hdr_Byte_Range->end = -1; - } - else{ - TSK_PARSER_SET_INTEGER_EX(hdr_Byte_Range->end, int64_t, atoi64); - } - } - break; - case 3: -/* #line 58 "./ragel/tmsrp_parser_header_Byte-Range.rl" */ - { - if(tag_start && *tag_start == '*'){ - hdr_Byte_Range->total = -1; - } - else{ - TSK_PARSER_SET_INTEGER_EX(hdr_Byte_Range->total, int64_t, atoi64); - } - } - break; -/* #line 288 "./src/headers/tmsrp_header_Byte-Range.c" */ - } - } + _trans = _tmsrp_machine_parser_header_Byte_Range_indicies[_trans]; + cs = _tmsrp_machine_parser_header_Byte_Range_trans_targs[_trans]; + + if ( _tmsrp_machine_parser_header_Byte_Range_trans_actions[_trans] == 0 ) { + goto _again; + } + + _acts = _tmsrp_machine_parser_header_Byte_Range_actions + _tmsrp_machine_parser_header_Byte_Range_trans_actions[_trans]; + _nacts = (unsigned int) *_acts++; + while ( _nacts-- > 0 ) { + switch ( *_acts++ ) { + case 0: + /* #line 41 "./ragel/tmsrp_parser_header_Byte-Range.rl" */ + { + tag_start = p; + } + break; + case 1: + /* #line 45 "./ragel/tmsrp_parser_header_Byte-Range.rl" */ + { + TSK_PARSER_SET_INTEGER_EX(hdr_Byte_Range->start, int64_t, atoi64); + } + break; + case 2: + /* #line 49 "./ragel/tmsrp_parser_header_Byte-Range.rl" */ + { + if(tag_start && *tag_start == '*') { + hdr_Byte_Range->end = -1; + } + else { + TSK_PARSER_SET_INTEGER_EX(hdr_Byte_Range->end, int64_t, atoi64); + } + } + break; + case 3: + /* #line 58 "./ragel/tmsrp_parser_header_Byte-Range.rl" */ + { + if(tag_start && *tag_start == '*') { + hdr_Byte_Range->total = -1; + } + else { + TSK_PARSER_SET_INTEGER_EX(hdr_Byte_Range->total, int64_t, atoi64); + } + } + break; + /* #line 288 "./src/headers/tmsrp_header_Byte-Range.c" */ + } + } _again: - if ( cs == 0 ) - goto _out; - if ( ++p != pe ) - goto _resume; - _test_eof: {} - if ( p == eof ) - { - const char *__acts = _tmsrp_machine_parser_header_Byte_Range_actions + _tmsrp_machine_parser_header_Byte_Range_eof_actions[cs]; - unsigned int __nacts = (unsigned int) *__acts++; - while ( __nacts-- > 0 ) { - switch ( *__acts++ ) { - case 3: -/* #line 58 "./ragel/tmsrp_parser_header_Byte-Range.rl" */ - { - if(tag_start && *tag_start == '*'){ - hdr_Byte_Range->total = -1; - } - else{ - TSK_PARSER_SET_INTEGER_EX(hdr_Byte_Range->total, int64_t, atoi64); - } - } - break; -/* #line 315 "./src/headers/tmsrp_header_Byte-Range.c" */ - } - } - } - - _out: {} - } - -/* #line 132 "./ragel/tmsrp_parser_header_Byte-Range.rl" */ - TSK_RAGEL_DISABLE_WARNINGS_END() - - if( cs < -/* #line 327 "./src/headers/tmsrp_header_Byte-Range.c" */ -20 -/* #line 134 "./ragel/tmsrp_parser_header_Byte-Range.rl" */ - ){ - TSK_DEBUG_ERROR("Failed to parse 'Byte-Range' header."); - TSK_OBJECT_SAFE_FREE(hdr_Byte_Range); - } - - return hdr_Byte_Range; + if ( cs == 0 ) { + goto _out; + } + if ( ++p != pe ) { + goto _resume; + } +_test_eof: { + } + if ( p == eof ) { + const char *__acts = _tmsrp_machine_parser_header_Byte_Range_actions + _tmsrp_machine_parser_header_Byte_Range_eof_actions[cs]; + unsigned int __nacts = (unsigned int) *__acts++; + while ( __nacts-- > 0 ) { + switch ( *__acts++ ) { + case 3: + /* #line 58 "./ragel/tmsrp_parser_header_Byte-Range.rl" */ + { + if(tag_start && *tag_start == '*') { + hdr_Byte_Range->total = -1; + } + else { + TSK_PARSER_SET_INTEGER_EX(hdr_Byte_Range->total, int64_t, atoi64); + } + } + break; + /* #line 315 "./src/headers/tmsrp_header_Byte-Range.c" */ + } + } + } + +_out: { + } + } + + /* #line 132 "./ragel/tmsrp_parser_header_Byte-Range.rl" */ + TSK_RAGEL_DISABLE_WARNINGS_END() + + if( cs < + /* #line 327 "./src/headers/tmsrp_header_Byte-Range.c" */ + 20 + /* #line 134 "./ragel/tmsrp_parser_header_Byte-Range.rl" */ + ) { + TSK_DEBUG_ERROR("Failed to parse 'Byte-Range' header."); + TSK_OBJECT_SAFE_FREE(hdr_Byte_Range); + } + + return hdr_Byte_Range; } @@ -346,39 +356,38 @@ _again: static tsk_object_t* tmsrp_header_Byte_Range_ctor(tsk_object_t *self, va_list * app) { - tmsrp_header_Byte_Range_t *Byte_Range = self; - if(Byte_Range){ - TMSRP_HEADER(Byte_Range)->type = tmsrp_htype_Byte_Range; - TMSRP_HEADER(Byte_Range)->tostring = tmsrp_header_Byte_Range_tostring; - - Byte_Range->start = va_arg(*app, int64_t); - Byte_Range->end = va_arg(*app, int64_t); - Byte_Range->total = va_arg(*app, int64_t); - } - else{ - TSK_DEBUG_ERROR("Failed to create new Byte-Range header."); - } - return self; + tmsrp_header_Byte_Range_t *Byte_Range = self; + if(Byte_Range) { + TMSRP_HEADER(Byte_Range)->type = tmsrp_htype_Byte_Range; + TMSRP_HEADER(Byte_Range)->tostring = tmsrp_header_Byte_Range_tostring; + + Byte_Range->start = va_arg(*app, int64_t); + Byte_Range->end = va_arg(*app, int64_t); + Byte_Range->total = va_arg(*app, int64_t); + } + else { + TSK_DEBUG_ERROR("Failed to create new Byte-Range header."); + } + return self; } static tsk_object_t* tmsrp_header_Byte_Range_dtor(tsk_object_t *self) { - tmsrp_header_Byte_Range_t *Byte_Range = self; - if(Byte_Range){ - } - else{ - TSK_DEBUG_ERROR("Null Byte-Range header."); - } - - return self; + tmsrp_header_Byte_Range_t *Byte_Range = self; + if(Byte_Range) { + } + else { + TSK_DEBUG_ERROR("Null Byte-Range header."); + } + + return self; } -static const tsk_object_def_t tmsrp_header_Byte_Range_def_s = -{ - sizeof(tmsrp_header_Byte_Range_t), - tmsrp_header_Byte_Range_ctor, - tmsrp_header_Byte_Range_dtor, - tsk_null +static const tsk_object_def_t tmsrp_header_Byte_Range_def_s = { + sizeof(tmsrp_header_Byte_Range_t), + tmsrp_header_Byte_Range_ctor, + tmsrp_header_Byte_Range_dtor, + tsk_null }; const tsk_object_def_t *tmsrp_header_Byte_Range_def_t = &tmsrp_header_Byte_Range_def_s; diff --git a/tinyMSRP/src/headers/tmsrp_header_Content-Type.c b/tinyMSRP/src/headers/tmsrp_header_Content-Type.c index 7ec0dd2..b962e68 100755 --- a/tinyMSRP/src/headers/tmsrp_header_Content-Type.c +++ b/tinyMSRP/src/headers/tmsrp_header_Content-Type.c @@ -2,19 +2,19 @@ /* #line 1 "./ragel/tmsrp_parser_header_Content-Type.rl" */ /* * Copyright (C) 2009-2015 Mamadou DIOP. -* +* * This file is part of Open Source Doubango Framework. * * DOUBANGO is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. -* +* * DOUBANGO is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. -* +* * You should have received a copy of the GNU General Public License * along with DOUBANGO. * @@ -44,361 +44,371 @@ tmsrp_header_Content_Type_t* tmsrp_header_Content_Type_create(const char* type) { - return tsk_object_new(TMSRP_HEADER_CONTENT_TYPE_VA_ARGS(type)); + return tsk_object_new(TMSRP_HEADER_CONTENT_TYPE_VA_ARGS(type)); } tmsrp_header_Content_Type_t* tmsrp_header_Content_Type_create_null() { - return tmsrp_header_Content_Type_create(tsk_null); + return tmsrp_header_Content_Type_create(tsk_null); } int tmsrp_header_Content_Type_tostring(const tmsrp_header_t* header, tsk_buffer_t* output) { - if(header){ - const tmsrp_header_Content_Type_t *Content_Type = (const tmsrp_header_Content_Type_t *)header; - const tsk_list_item_t *item; - - if(Content_Type->value){ - tsk_buffer_append(output, Content_Type->value, strlen(Content_Type->value)); - } - // Params - tsk_list_foreach(item, Content_Type->params){ - tsk_buffer_append(output, ";", 1); - tsk_params_tostring(Content_Type->params, ';', output); - } - } - - return -1; + if(header) { + const tmsrp_header_Content_Type_t *Content_Type = (const tmsrp_header_Content_Type_t *)header; + const tsk_list_item_t *item; + + if(Content_Type->value) { + tsk_buffer_append(output, Content_Type->value, strlen(Content_Type->value)); + } + // Params + tsk_list_foreach(item, Content_Type->params) { + tsk_buffer_append(output, ";", 1); + tsk_params_tostring(Content_Type->params, ';', output); + } + } + + return -1; } tmsrp_header_Content_Type_t *tmsrp_header_Content_Type_parse(const char *data, tsk_size_t size) { - int cs = 0; - const char *p = data; - const char *pe = p + size; - const char *eof = pe; - tmsrp_header_Content_Type_t *hdr_ctype = tmsrp_header_Content_Type_create_null(); - - const char *tag_start = tsk_null; - - TSK_RAGEL_DISABLE_WARNINGS_BEGIN() - -/* #line 87 "./src/headers/tmsrp_header_Content-Type.c" */ -static const char _tmsrp_machine_parser_header_Content_Type_actions[] = { - 0, 1, 0, 1, 1, 1, 2 -}; - -static const short _tmsrp_machine_parser_header_Content_Type_key_offsets[] = { - 0, 0, 2, 4, 6, 8, 10, 12, - 14, 15, 17, 19, 21, 23, 26, 43, - 44, 46, 62, 78, 82, 83, 85, 88, - 105, 106, 108, 124, 128, 129, 131, 134, - 150, 151, 153, 168, 173, 174, 176, 180, - 196, 197, 199, 214, 215, 221, 227, 233, - 239, 257, 275, 292 -}; - -static const char _tmsrp_machine_parser_header_Content_Type_trans_keys[] = { - 67, 99, 79, 111, 78, 110, 84, 116, - 69, 101, 78, 110, 84, 116, 45, 84, - 116, 89, 121, 80, 112, 69, 101, 9, - 32, 58, 9, 13, 32, 33, 37, 39, - 126, 42, 43, 45, 46, 48, 57, 65, - 90, 95, 122, 10, 9, 32, 9, 32, - 33, 37, 39, 126, 42, 43, 45, 46, - 48, 57, 65, 90, 95, 122, 9, 13, - 32, 33, 37, 39, 47, 126, 42, 43, - 45, 57, 65, 90, 95, 122, 9, 13, - 32, 47, 10, 9, 32, 9, 32, 47, - 9, 13, 32, 33, 37, 39, 126, 42, - 43, 45, 46, 48, 57, 65, 90, 95, - 122, 10, 9, 32, 9, 32, 33, 37, - 39, 126, 42, 43, 45, 46, 48, 57, - 65, 90, 95, 122, 9, 13, 32, 59, - 10, 9, 32, 9, 32, 59, 9, 13, - 32, 33, 37, 93, 95, 126, 36, 43, - 45, 58, 65, 91, 97, 122, 10, 9, - 32, 9, 32, 33, 37, 93, 95, 126, - 36, 43, 45, 58, 65, 91, 97, 122, - 9, 13, 32, 59, 61, 10, 9, 32, - 9, 32, 59, 61, 9, 13, 32, 33, - 37, 93, 95, 126, 36, 43, 45, 58, - 65, 91, 97, 122, 10, 9, 32, 9, - 32, 33, 37, 93, 95, 126, 36, 43, - 45, 58, 65, 91, 97, 122, 10, 48, - 57, 65, 70, 97, 102, 48, 57, 65, - 70, 97, 102, 48, 57, 65, 70, 97, - 102, 48, 57, 65, 70, 97, 102, 9, - 13, 32, 33, 37, 39, 59, 126, 42, - 43, 45, 46, 48, 57, 65, 90, 95, - 122, 9, 13, 32, 33, 37, 59, 61, - 93, 95, 126, 36, 43, 45, 58, 65, - 91, 97, 122, 9, 13, 32, 33, 37, - 59, 93, 95, 126, 36, 43, 45, 58, - 65, 91, 97, 122, 0 -}; - -static const char _tmsrp_machine_parser_header_Content_Type_single_lengths[] = { - 0, 2, 2, 2, 2, 2, 2, 2, - 1, 2, 2, 2, 2, 3, 7, 1, - 2, 6, 8, 4, 1, 2, 3, 7, - 1, 2, 6, 4, 1, 2, 3, 8, - 1, 2, 7, 5, 1, 2, 4, 8, - 1, 2, 7, 1, 0, 0, 0, 0, - 8, 10, 9, 0 -}; - -static const char _tmsrp_machine_parser_header_Content_Type_range_lengths[] = { - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 5, 0, - 0, 5, 4, 0, 0, 0, 0, 5, - 0, 0, 5, 0, 0, 0, 0, 4, - 0, 0, 4, 0, 0, 0, 0, 4, - 0, 0, 4, 0, 3, 3, 3, 3, - 5, 4, 4, 0 -}; - -static const short _tmsrp_machine_parser_header_Content_Type_index_offsets[] = { - 0, 0, 3, 6, 9, 12, 15, 18, - 21, 23, 26, 29, 32, 35, 39, 52, - 54, 57, 69, 82, 87, 89, 92, 96, - 109, 111, 114, 126, 131, 133, 136, 140, - 153, 155, 158, 170, 176, 178, 181, 186, - 199, 201, 204, 216, 218, 222, 226, 230, - 234, 248, 263, 277 -}; - -static const char _tmsrp_machine_parser_header_Content_Type_indicies[] = { - 0, 0, 1, 2, 2, 1, 3, 3, - 1, 4, 4, 1, 5, 5, 1, 6, - 6, 1, 7, 7, 1, 8, 1, 9, - 9, 1, 10, 10, 1, 11, 11, 1, - 12, 12, 1, 12, 12, 13, 1, 13, - 14, 13, 15, 15, 15, 15, 15, 15, - 15, 15, 15, 1, 16, 1, 17, 17, - 1, 17, 17, 15, 15, 15, 15, 15, - 15, 15, 15, 15, 1, 18, 19, 18, - 20, 20, 20, 21, 20, 20, 20, 20, - 20, 1, 18, 19, 18, 21, 1, 22, - 1, 23, 23, 1, 23, 23, 21, 1, - 21, 24, 21, 25, 25, 25, 25, 25, - 25, 25, 25, 25, 1, 26, 1, 27, - 27, 1, 27, 27, 25, 25, 25, 25, - 25, 25, 25, 25, 25, 1, 28, 29, - 28, 30, 1, 31, 1, 32, 32, 1, - 32, 32, 30, 1, 30, 33, 30, 34, - 35, 34, 34, 34, 34, 34, 34, 34, - 1, 36, 1, 37, 37, 1, 37, 37, - 34, 35, 34, 34, 34, 34, 34, 34, - 34, 1, 38, 39, 38, 30, 40, 1, - 41, 1, 42, 42, 1, 42, 42, 30, - 40, 1, 40, 43, 40, 44, 45, 44, - 44, 44, 44, 44, 44, 44, 1, 46, - 1, 47, 47, 1, 47, 47, 44, 45, - 44, 44, 44, 44, 44, 44, 44, 1, - 48, 1, 49, 49, 49, 1, 44, 44, - 44, 1, 50, 50, 50, 1, 51, 51, - 51, 1, 52, 53, 52, 25, 25, 25, - 54, 25, 25, 25, 25, 25, 25, 1, - 55, 56, 55, 51, 57, 58, 40, 51, - 51, 51, 51, 51, 51, 51, 1, 59, - 56, 59, 44, 45, 58, 44, 44, 44, - 44, 44, 44, 44, 1, 1, 0 -}; - -static const char _tmsrp_machine_parser_header_Content_Type_trans_targs[] = { - 2, 0, 3, 4, 5, 6, 7, 8, - 9, 10, 11, 12, 13, 14, 15, 18, - 16, 17, 19, 20, 18, 23, 21, 22, - 24, 48, 25, 26, 27, 28, 31, 29, - 30, 32, 49, 46, 33, 34, 35, 36, - 39, 37, 38, 40, 50, 44, 41, 42, - 51, 45, 47, 49, 27, 43, 31, 35, - 43, 46, 31, 27 -}; - -static const char _tmsrp_machine_parser_header_Content_Type_trans_actions[] = { - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 1, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 1, 1, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 3, 3, 3, 5, - 5, 0, 5, 5 -}; - -static const char _tmsrp_machine_parser_header_Content_Type_eof_actions[] = { - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 3, 5, 5, 0 -}; - -static const int tmsrp_machine_parser_header_Content_Type_start = 1; -static const int tmsrp_machine_parser_header_Content_Type_first_final = 48; -static const int tmsrp_machine_parser_header_Content_Type_error = 0; - -static const int tmsrp_machine_parser_header_Content_Type_en_main = 1; - - -/* #line 112 "./ragel/tmsrp_parser_header_Content-Type.rl" */ - (void)(eof); - (void)(tmsrp_machine_parser_header_Content_Type_first_final); - (void)(tmsrp_machine_parser_header_Content_Type_error); - (void)(tmsrp_machine_parser_header_Content_Type_en_main); - -/* #line 255 "./src/headers/tmsrp_header_Content-Type.c" */ - { - cs = tmsrp_machine_parser_header_Content_Type_start; - } - -/* #line 117 "./ragel/tmsrp_parser_header_Content-Type.rl" */ - -/* #line 262 "./src/headers/tmsrp_header_Content-Type.c" */ - { - int _klen; - unsigned int _trans; - const char *_acts; - unsigned int _nacts; - const char *_keys; - - if ( p == pe ) - goto _test_eof; - if ( cs == 0 ) - goto _out; + int cs = 0; + const char *p = data; + const char *pe = p + size; + const char *eof = pe; + tmsrp_header_Content_Type_t *hdr_ctype = tmsrp_header_Content_Type_create_null(); + + const char *tag_start = tsk_null; + + TSK_RAGEL_DISABLE_WARNINGS_BEGIN() + + /* #line 87 "./src/headers/tmsrp_header_Content-Type.c" */ + static const char _tmsrp_machine_parser_header_Content_Type_actions[] = { + 0, 1, 0, 1, 1, 1, 2 + }; + + static const short _tmsrp_machine_parser_header_Content_Type_key_offsets[] = { + 0, 0, 2, 4, 6, 8, 10, 12, + 14, 15, 17, 19, 21, 23, 26, 43, + 44, 46, 62, 78, 82, 83, 85, 88, + 105, 106, 108, 124, 128, 129, 131, 134, + 150, 151, 153, 168, 173, 174, 176, 180, + 196, 197, 199, 214, 215, 221, 227, 233, + 239, 257, 275, 292 + }; + + static const char _tmsrp_machine_parser_header_Content_Type_trans_keys[] = { + 67, 99, 79, 111, 78, 110, 84, 116, + 69, 101, 78, 110, 84, 116, 45, 84, + 116, 89, 121, 80, 112, 69, 101, 9, + 32, 58, 9, 13, 32, 33, 37, 39, + 126, 42, 43, 45, 46, 48, 57, 65, + 90, 95, 122, 10, 9, 32, 9, 32, + 33, 37, 39, 126, 42, 43, 45, 46, + 48, 57, 65, 90, 95, 122, 9, 13, + 32, 33, 37, 39, 47, 126, 42, 43, + 45, 57, 65, 90, 95, 122, 9, 13, + 32, 47, 10, 9, 32, 9, 32, 47, + 9, 13, 32, 33, 37, 39, 126, 42, + 43, 45, 46, 48, 57, 65, 90, 95, + 122, 10, 9, 32, 9, 32, 33, 37, + 39, 126, 42, 43, 45, 46, 48, 57, + 65, 90, 95, 122, 9, 13, 32, 59, + 10, 9, 32, 9, 32, 59, 9, 13, + 32, 33, 37, 93, 95, 126, 36, 43, + 45, 58, 65, 91, 97, 122, 10, 9, + 32, 9, 32, 33, 37, 93, 95, 126, + 36, 43, 45, 58, 65, 91, 97, 122, + 9, 13, 32, 59, 61, 10, 9, 32, + 9, 32, 59, 61, 9, 13, 32, 33, + 37, 93, 95, 126, 36, 43, 45, 58, + 65, 91, 97, 122, 10, 9, 32, 9, + 32, 33, 37, 93, 95, 126, 36, 43, + 45, 58, 65, 91, 97, 122, 10, 48, + 57, 65, 70, 97, 102, 48, 57, 65, + 70, 97, 102, 48, 57, 65, 70, 97, + 102, 48, 57, 65, 70, 97, 102, 9, + 13, 32, 33, 37, 39, 59, 126, 42, + 43, 45, 46, 48, 57, 65, 90, 95, + 122, 9, 13, 32, 33, 37, 59, 61, + 93, 95, 126, 36, 43, 45, 58, 65, + 91, 97, 122, 9, 13, 32, 33, 37, + 59, 93, 95, 126, 36, 43, 45, 58, + 65, 91, 97, 122, 0 + }; + + static const char _tmsrp_machine_parser_header_Content_Type_single_lengths[] = { + 0, 2, 2, 2, 2, 2, 2, 2, + 1, 2, 2, 2, 2, 3, 7, 1, + 2, 6, 8, 4, 1, 2, 3, 7, + 1, 2, 6, 4, 1, 2, 3, 8, + 1, 2, 7, 5, 1, 2, 4, 8, + 1, 2, 7, 1, 0, 0, 0, 0, + 8, 10, 9, 0 + }; + + static const char _tmsrp_machine_parser_header_Content_Type_range_lengths[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 5, 0, + 0, 5, 4, 0, 0, 0, 0, 5, + 0, 0, 5, 0, 0, 0, 0, 4, + 0, 0, 4, 0, 0, 0, 0, 4, + 0, 0, 4, 0, 3, 3, 3, 3, + 5, 4, 4, 0 + }; + + static const short _tmsrp_machine_parser_header_Content_Type_index_offsets[] = { + 0, 0, 3, 6, 9, 12, 15, 18, + 21, 23, 26, 29, 32, 35, 39, 52, + 54, 57, 69, 82, 87, 89, 92, 96, + 109, 111, 114, 126, 131, 133, 136, 140, + 153, 155, 158, 170, 176, 178, 181, 186, + 199, 201, 204, 216, 218, 222, 226, 230, + 234, 248, 263, 277 + }; + + static const char _tmsrp_machine_parser_header_Content_Type_indicies[] = { + 0, 0, 1, 2, 2, 1, 3, 3, + 1, 4, 4, 1, 5, 5, 1, 6, + 6, 1, 7, 7, 1, 8, 1, 9, + 9, 1, 10, 10, 1, 11, 11, 1, + 12, 12, 1, 12, 12, 13, 1, 13, + 14, 13, 15, 15, 15, 15, 15, 15, + 15, 15, 15, 1, 16, 1, 17, 17, + 1, 17, 17, 15, 15, 15, 15, 15, + 15, 15, 15, 15, 1, 18, 19, 18, + 20, 20, 20, 21, 20, 20, 20, 20, + 20, 1, 18, 19, 18, 21, 1, 22, + 1, 23, 23, 1, 23, 23, 21, 1, + 21, 24, 21, 25, 25, 25, 25, 25, + 25, 25, 25, 25, 1, 26, 1, 27, + 27, 1, 27, 27, 25, 25, 25, 25, + 25, 25, 25, 25, 25, 1, 28, 29, + 28, 30, 1, 31, 1, 32, 32, 1, + 32, 32, 30, 1, 30, 33, 30, 34, + 35, 34, 34, 34, 34, 34, 34, 34, + 1, 36, 1, 37, 37, 1, 37, 37, + 34, 35, 34, 34, 34, 34, 34, 34, + 34, 1, 38, 39, 38, 30, 40, 1, + 41, 1, 42, 42, 1, 42, 42, 30, + 40, 1, 40, 43, 40, 44, 45, 44, + 44, 44, 44, 44, 44, 44, 1, 46, + 1, 47, 47, 1, 47, 47, 44, 45, + 44, 44, 44, 44, 44, 44, 44, 1, + 48, 1, 49, 49, 49, 1, 44, 44, + 44, 1, 50, 50, 50, 1, 51, 51, + 51, 1, 52, 53, 52, 25, 25, 25, + 54, 25, 25, 25, 25, 25, 25, 1, + 55, 56, 55, 51, 57, 58, 40, 51, + 51, 51, 51, 51, 51, 51, 1, 59, + 56, 59, 44, 45, 58, 44, 44, 44, + 44, 44, 44, 44, 1, 1, 0 + }; + + static const char _tmsrp_machine_parser_header_Content_Type_trans_targs[] = { + 2, 0, 3, 4, 5, 6, 7, 8, + 9, 10, 11, 12, 13, 14, 15, 18, + 16, 17, 19, 20, 18, 23, 21, 22, + 24, 48, 25, 26, 27, 28, 31, 29, + 30, 32, 49, 46, 33, 34, 35, 36, + 39, 37, 38, 40, 50, 44, 41, 42, + 51, 45, 47, 49, 27, 43, 31, 35, + 43, 46, 31, 27 + }; + + static const char _tmsrp_machine_parser_header_Content_Type_trans_actions[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 1, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 1, 1, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 3, 3, 3, 5, + 5, 0, 5, 5 + }; + + static const char _tmsrp_machine_parser_header_Content_Type_eof_actions[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 3, 5, 5, 0 + }; + + static const int tmsrp_machine_parser_header_Content_Type_start = 1; + static const int tmsrp_machine_parser_header_Content_Type_first_final = 48; + static const int tmsrp_machine_parser_header_Content_Type_error = 0; + + static const int tmsrp_machine_parser_header_Content_Type_en_main = 1; + + + /* #line 112 "./ragel/tmsrp_parser_header_Content-Type.rl" */ + (void)(eof); + (void)(tmsrp_machine_parser_header_Content_Type_first_final); + (void)(tmsrp_machine_parser_header_Content_Type_error); + (void)(tmsrp_machine_parser_header_Content_Type_en_main); + + /* #line 255 "./src/headers/tmsrp_header_Content-Type.c" */ + { + cs = tmsrp_machine_parser_header_Content_Type_start; + } + + /* #line 117 "./ragel/tmsrp_parser_header_Content-Type.rl" */ + + /* #line 262 "./src/headers/tmsrp_header_Content-Type.c" */ + { + int _klen; + unsigned int _trans; + const char *_acts; + unsigned int _nacts; + const char *_keys; + + if ( p == pe ) { + goto _test_eof; + } + if ( cs == 0 ) { + goto _out; + } _resume: - _keys = _tmsrp_machine_parser_header_Content_Type_trans_keys + _tmsrp_machine_parser_header_Content_Type_key_offsets[cs]; - _trans = _tmsrp_machine_parser_header_Content_Type_index_offsets[cs]; - - _klen = _tmsrp_machine_parser_header_Content_Type_single_lengths[cs]; - if ( _klen > 0 ) { - const char *_lower = _keys; - const char *_mid; - const char *_upper = _keys + _klen - 1; - while (1) { - if ( _upper < _lower ) - break; - - _mid = _lower + ((_upper-_lower) >> 1); - if ( (*p) < *_mid ) - _upper = _mid - 1; - else if ( (*p) > *_mid ) - _lower = _mid + 1; - else { - _trans += (_mid - _keys); - goto _match; - } - } - _keys += _klen; - _trans += _klen; - } - - _klen = _tmsrp_machine_parser_header_Content_Type_range_lengths[cs]; - if ( _klen > 0 ) { - const char *_lower = _keys; - const char *_mid; - const char *_upper = _keys + (_klen<<1) - 2; - while (1) { - if ( _upper < _lower ) - break; - - _mid = _lower + (((_upper-_lower) >> 1) & ~1); - if ( (*p) < _mid[0] ) - _upper = _mid - 2; - else if ( (*p) > _mid[1] ) - _lower = _mid + 2; - else { - _trans += ((_mid - _keys)>>1); - goto _match; - } - } - _trans += _klen; - } + _keys = _tmsrp_machine_parser_header_Content_Type_trans_keys + _tmsrp_machine_parser_header_Content_Type_key_offsets[cs]; + _trans = _tmsrp_machine_parser_header_Content_Type_index_offsets[cs]; + + _klen = _tmsrp_machine_parser_header_Content_Type_single_lengths[cs]; + if ( _klen > 0 ) { + const char *_lower = _keys; + const char *_mid; + const char *_upper = _keys + _klen - 1; + while (1) { + if ( _upper < _lower ) { + break; + } + + _mid = _lower + ((_upper-_lower) >> 1); + if ( (*p) < *_mid ) { + _upper = _mid - 1; + } + else if ( (*p) > *_mid ) { + _lower = _mid + 1; + } + else { + _trans += (_mid - _keys); + goto _match; + } + } + _keys += _klen; + _trans += _klen; + } + + _klen = _tmsrp_machine_parser_header_Content_Type_range_lengths[cs]; + if ( _klen > 0 ) { + const char *_lower = _keys; + const char *_mid; + const char *_upper = _keys + (_klen<<1) - 2; + while (1) { + if ( _upper < _lower ) { + break; + } + + _mid = _lower + (((_upper-_lower) >> 1) & ~1); + if ( (*p) < _mid[0] ) { + _upper = _mid - 2; + } + else if ( (*p) > _mid[1] ) { + _lower = _mid + 2; + } + else { + _trans += ((_mid - _keys)>>1); + goto _match; + } + } + _trans += _klen; + } _match: - _trans = _tmsrp_machine_parser_header_Content_Type_indicies[_trans]; - cs = _tmsrp_machine_parser_header_Content_Type_trans_targs[_trans]; - - if ( _tmsrp_machine_parser_header_Content_Type_trans_actions[_trans] == 0 ) - goto _again; - - _acts = _tmsrp_machine_parser_header_Content_Type_actions + _tmsrp_machine_parser_header_Content_Type_trans_actions[_trans]; - _nacts = (unsigned int) *_acts++; - while ( _nacts-- > 0 ) - { - switch ( *_acts++ ) - { - case 0: -/* #line 44 "./ragel/tmsrp_parser_header_Content-Type.rl" */ - { - tag_start = p; - } - break; - case 1: -/* #line 48 "./ragel/tmsrp_parser_header_Content-Type.rl" */ - { - TSK_PARSER_SET_STRING(hdr_ctype->value); - } - break; - case 2: -/* #line 52 "./ragel/tmsrp_parser_header_Content-Type.rl" */ - { - TSK_PARSER_ADD_PARAM(hdr_ctype->params); - } - break; -/* #line 354 "./src/headers/tmsrp_header_Content-Type.c" */ - } - } + _trans = _tmsrp_machine_parser_header_Content_Type_indicies[_trans]; + cs = _tmsrp_machine_parser_header_Content_Type_trans_targs[_trans]; + + if ( _tmsrp_machine_parser_header_Content_Type_trans_actions[_trans] == 0 ) { + goto _again; + } + + _acts = _tmsrp_machine_parser_header_Content_Type_actions + _tmsrp_machine_parser_header_Content_Type_trans_actions[_trans]; + _nacts = (unsigned int) *_acts++; + while ( _nacts-- > 0 ) { + switch ( *_acts++ ) { + case 0: + /* #line 44 "./ragel/tmsrp_parser_header_Content-Type.rl" */ + { + tag_start = p; + } + break; + case 1: + /* #line 48 "./ragel/tmsrp_parser_header_Content-Type.rl" */ + { + TSK_PARSER_SET_STRING(hdr_ctype->value); + } + break; + case 2: + /* #line 52 "./ragel/tmsrp_parser_header_Content-Type.rl" */ + { + TSK_PARSER_ADD_PARAM(hdr_ctype->params); + } + break; + /* #line 354 "./src/headers/tmsrp_header_Content-Type.c" */ + } + } _again: - if ( cs == 0 ) - goto _out; - if ( ++p != pe ) - goto _resume; - _test_eof: {} - if ( p == eof ) - { - const char *__acts = _tmsrp_machine_parser_header_Content_Type_actions + _tmsrp_machine_parser_header_Content_Type_eof_actions[cs]; - unsigned int __nacts = (unsigned int) *__acts++; - while ( __nacts-- > 0 ) { - switch ( *__acts++ ) { - case 1: -/* #line 48 "./ragel/tmsrp_parser_header_Content-Type.rl" */ - { - TSK_PARSER_SET_STRING(hdr_ctype->value); - } - break; - case 2: -/* #line 52 "./ragel/tmsrp_parser_header_Content-Type.rl" */ - { - TSK_PARSER_ADD_PARAM(hdr_ctype->params); - } - break; -/* #line 382 "./src/headers/tmsrp_header_Content-Type.c" */ - } - } - } - - _out: {} - } - -/* #line 118 "./ragel/tmsrp_parser_header_Content-Type.rl" */ - TSK_RAGEL_DISABLE_WARNINGS_END() - - if( cs < -/* #line 394 "./src/headers/tmsrp_header_Content-Type.c" */ -48 -/* #line 120 "./ragel/tmsrp_parser_header_Content-Type.rl" */ - ){ - TSK_DEBUG_ERROR("Failed to parse 'Content-Type' header."); - TSK_OBJECT_SAFE_FREE(hdr_ctype); - } - - return hdr_ctype; + if ( cs == 0 ) { + goto _out; + } + if ( ++p != pe ) { + goto _resume; + } +_test_eof: { + } + if ( p == eof ) { + const char *__acts = _tmsrp_machine_parser_header_Content_Type_actions + _tmsrp_machine_parser_header_Content_Type_eof_actions[cs]; + unsigned int __nacts = (unsigned int) *__acts++; + while ( __nacts-- > 0 ) { + switch ( *__acts++ ) { + case 1: + /* #line 48 "./ragel/tmsrp_parser_header_Content-Type.rl" */ + { + TSK_PARSER_SET_STRING(hdr_ctype->value); + } + break; + case 2: + /* #line 52 "./ragel/tmsrp_parser_header_Content-Type.rl" */ + { + TSK_PARSER_ADD_PARAM(hdr_ctype->params); + } + break; + /* #line 382 "./src/headers/tmsrp_header_Content-Type.c" */ + } + } + } + +_out: { + } + } + + /* #line 118 "./ragel/tmsrp_parser_header_Content-Type.rl" */ + TSK_RAGEL_DISABLE_WARNINGS_END() + + if( cs < + /* #line 394 "./src/headers/tmsrp_header_Content-Type.c" */ + 48 + /* #line 120 "./ragel/tmsrp_parser_header_Content-Type.rl" */ + ) { + TSK_DEBUG_ERROR("Failed to parse 'Content-Type' header."); + TSK_OBJECT_SAFE_FREE(hdr_ctype); + } + + return hdr_ctype; } @@ -415,40 +425,39 @@ _again: */ static tsk_object_t* tmsrp_header_Content_Type_ctor(tsk_object_t *self, va_list * app) { - tmsrp_header_Content_Type_t *Content_Type = self; - if(Content_Type){ - TMSRP_HEADER(Content_Type)->type = tmsrp_htype_Content_Type; - TMSRP_HEADER(Content_Type)->tostring = tmsrp_header_Content_Type_tostring; - - Content_Type->value = tsk_strdup( va_arg(*app, const char*) ); - } - else{ - TSK_DEBUG_ERROR("Failed to create new Content_Type header."); - } - return self; + tmsrp_header_Content_Type_t *Content_Type = self; + if(Content_Type) { + TMSRP_HEADER(Content_Type)->type = tmsrp_htype_Content_Type; + TMSRP_HEADER(Content_Type)->tostring = tmsrp_header_Content_Type_tostring; + + Content_Type->value = tsk_strdup( va_arg(*app, const char*) ); + } + else { + TSK_DEBUG_ERROR("Failed to create new Content_Type header."); + } + return self; } /**@ingroup tmsrp_header_Content_Type_group */ static tsk_object_t* tmsrp_header_Content_Type_dtor(tsk_object_t *self) { - tmsrp_header_Content_Type_t *Content_Type = self; - if(Content_Type){ - TSK_FREE(Content_Type->value); - TSK_OBJECT_SAFE_FREE(Content_Type->params); - } - else{ - TSK_DEBUG_ERROR("Null Content-Type header."); - } - - return self; + tmsrp_header_Content_Type_t *Content_Type = self; + if(Content_Type) { + TSK_FREE(Content_Type->value); + TSK_OBJECT_SAFE_FREE(Content_Type->params); + } + else { + TSK_DEBUG_ERROR("Null Content-Type header."); + } + + return self; } -static const tsk_object_def_t tmsrp_header_Content_Type_def_s = -{ - sizeof(tmsrp_header_Content_Type_t), - tmsrp_header_Content_Type_ctor, - tmsrp_header_Content_Type_dtor, - tsk_null +static const tsk_object_def_t tmsrp_header_Content_Type_def_s = { + sizeof(tmsrp_header_Content_Type_t), + tmsrp_header_Content_Type_ctor, + tmsrp_header_Content_Type_dtor, + tsk_null }; const tsk_object_def_t *tmsrp_header_Content_Type_def_t = &tmsrp_header_Content_Type_def_s;
\ No newline at end of file diff --git a/tinyMSRP/src/headers/tmsrp_header_Dummy.c b/tinyMSRP/src/headers/tmsrp_header_Dummy.c index 09cfbe2..70af7e1 100755 --- a/tinyMSRP/src/headers/tmsrp_header_Dummy.c +++ b/tinyMSRP/src/headers/tmsrp_header_Dummy.c @@ -2,19 +2,19 @@ /* #line 1 "./ragel/tmsrp_parser_header_Dummy.rl" */ /* * Copyright (C) 2009-2015 Mamadou DIOP. -* +* * This file is part of Open Source Doubango Framework. * * DOUBANGO is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. -* +* * DOUBANGO is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. -* +* * You should have received a copy of the GNU General Public License * along with DOUBANGO. * @@ -41,253 +41,263 @@ tmsrp_header_Dummy_t* tmsrp_header_Dummy_create(const char* name, const char* value) { - return tsk_object_new(TMSRP_HEADER_DUMMY_VA_ARGS(name, value)); + return tsk_object_new(TMSRP_HEADER_DUMMY_VA_ARGS(name, value)); } tmsrp_header_Dummy_t* tmsrp_header_Dummy_create_null() { - return tmsrp_header_Dummy_create(tsk_null, tsk_null); + return tmsrp_header_Dummy_create(tsk_null, tsk_null); } int tmsrp_header_Dummy_tostring(const tmsrp_header_t* header, tsk_buffer_t* output) { - if(header){ - const tmsrp_header_Dummy_t *Dummy = (const tmsrp_header_Dummy_t *)header; - if(Dummy->value){ - return tsk_buffer_append(output, Dummy->value, strlen(Dummy->value)); - } - return 0; - } - - return -1; + if(header) { + const tmsrp_header_Dummy_t *Dummy = (const tmsrp_header_Dummy_t *)header; + if(Dummy->value) { + return tsk_buffer_append(output, Dummy->value, strlen(Dummy->value)); + } + return 0; + } + + return -1; } tmsrp_header_Dummy_t *tmsrp_header_Dummy_parse(const char *data, tsk_size_t size) { - int cs = 0; - const char *p = data; - const char *pe = p + size; - const char *eof = pe; - tmsrp_header_Dummy_t *hdr_Dummy = tmsrp_header_Dummy_create_null(); - - const char *tag_start = tsk_null; - - TSK_RAGEL_DISABLE_WARNINGS_BEGIN() - -/* #line 78 "./src/headers/tmsrp_header_Dummy.c" */ -static const char _tmsrp_machine_parser_header_Dummy_actions[] = { - 0, 1, 0, 1, 1, 1, 2, 2, - 0, 2 -}; - -static const char _tmsrp_machine_parser_header_Dummy_key_offsets[] = { - 0, 0, 14, 30, 32, 33, 40, 46 -}; - -static const char _tmsrp_machine_parser_header_Dummy_trans_keys[] = { - 33, 37, 39, 126, 42, 43, 45, 46, - 48, 57, 65, 90, 95, 122, 32, 33, - 37, 39, 58, 126, 42, 43, 45, 46, - 48, 57, 65, 90, 95, 122, 32, 58, - 10, 13, 32, 127, 0, 8, 10, 31, - 13, 127, 0, 8, 10, 31, 0 -}; - -static const char _tmsrp_machine_parser_header_Dummy_single_lengths[] = { - 0, 4, 6, 2, 1, 3, 2, 0 -}; - -static const char _tmsrp_machine_parser_header_Dummy_range_lengths[] = { - 0, 5, 5, 0, 0, 2, 2, 0 -}; - -static const char _tmsrp_machine_parser_header_Dummy_index_offsets[] = { - 0, 0, 10, 22, 25, 27, 33, 38 -}; - -static const char _tmsrp_machine_parser_header_Dummy_indicies[] = { - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 1, 2, 3, 3, 3, 4, 3, - 3, 3, 3, 3, 3, 1, 5, 6, - 1, 7, 1, 9, 6, 1, 1, 1, - 8, 11, 1, 1, 1, 10, 1, 0 -}; - -static const char _tmsrp_machine_parser_header_Dummy_trans_targs[] = { - 2, 0, 3, 2, 5, 3, 5, 7, - 6, 4, 6, 4 -}; - -static const char _tmsrp_machine_parser_header_Dummy_trans_actions[] = { - 1, 0, 3, 0, 3, 0, 0, 0, - 1, 7, 0, 5 -}; - -static const char _tmsrp_machine_parser_header_Dummy_eof_actions[] = { - 0, 0, 0, 0, 0, 7, 5, 0 -}; - -static const int tmsrp_machine_parser_header_Dummy_start = 1; -static const int tmsrp_machine_parser_header_Dummy_first_final = 5; -static const int tmsrp_machine_parser_header_Dummy_error = 0; - -static const int tmsrp_machine_parser_header_Dummy_en_main = 1; - - -/* #line 97 "./ragel/tmsrp_parser_header_Dummy.rl" */ - (void)(eof); - (void)(tmsrp_machine_parser_header_Dummy_first_final); - (void)(tmsrp_machine_parser_header_Dummy_error); - (void)(tmsrp_machine_parser_header_Dummy_en_main); - -/* #line 144 "./src/headers/tmsrp_header_Dummy.c" */ - { - cs = tmsrp_machine_parser_header_Dummy_start; - } - -/* #line 102 "./ragel/tmsrp_parser_header_Dummy.rl" */ - -/* #line 151 "./src/headers/tmsrp_header_Dummy.c" */ - { - int _klen; - unsigned int _trans; - const char *_acts; - unsigned int _nacts; - const char *_keys; - - if ( p == pe ) - goto _test_eof; - if ( cs == 0 ) - goto _out; + int cs = 0; + const char *p = data; + const char *pe = p + size; + const char *eof = pe; + tmsrp_header_Dummy_t *hdr_Dummy = tmsrp_header_Dummy_create_null(); + + const char *tag_start = tsk_null; + + TSK_RAGEL_DISABLE_WARNINGS_BEGIN() + + /* #line 78 "./src/headers/tmsrp_header_Dummy.c" */ + static const char _tmsrp_machine_parser_header_Dummy_actions[] = { + 0, 1, 0, 1, 1, 1, 2, 2, + 0, 2 + }; + + static const char _tmsrp_machine_parser_header_Dummy_key_offsets[] = { + 0, 0, 14, 30, 32, 33, 40, 46 + }; + + static const char _tmsrp_machine_parser_header_Dummy_trans_keys[] = { + 33, 37, 39, 126, 42, 43, 45, 46, + 48, 57, 65, 90, 95, 122, 32, 33, + 37, 39, 58, 126, 42, 43, 45, 46, + 48, 57, 65, 90, 95, 122, 32, 58, + 10, 13, 32, 127, 0, 8, 10, 31, + 13, 127, 0, 8, 10, 31, 0 + }; + + static const char _tmsrp_machine_parser_header_Dummy_single_lengths[] = { + 0, 4, 6, 2, 1, 3, 2, 0 + }; + + static const char _tmsrp_machine_parser_header_Dummy_range_lengths[] = { + 0, 5, 5, 0, 0, 2, 2, 0 + }; + + static const char _tmsrp_machine_parser_header_Dummy_index_offsets[] = { + 0, 0, 10, 22, 25, 27, 33, 38 + }; + + static const char _tmsrp_machine_parser_header_Dummy_indicies[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 1, 2, 3, 3, 3, 4, 3, + 3, 3, 3, 3, 3, 1, 5, 6, + 1, 7, 1, 9, 6, 1, 1, 1, + 8, 11, 1, 1, 1, 10, 1, 0 + }; + + static const char _tmsrp_machine_parser_header_Dummy_trans_targs[] = { + 2, 0, 3, 2, 5, 3, 5, 7, + 6, 4, 6, 4 + }; + + static const char _tmsrp_machine_parser_header_Dummy_trans_actions[] = { + 1, 0, 3, 0, 3, 0, 0, 0, + 1, 7, 0, 5 + }; + + static const char _tmsrp_machine_parser_header_Dummy_eof_actions[] = { + 0, 0, 0, 0, 0, 7, 5, 0 + }; + + static const int tmsrp_machine_parser_header_Dummy_start = 1; + static const int tmsrp_machine_parser_header_Dummy_first_final = 5; + static const int tmsrp_machine_parser_header_Dummy_error = 0; + + static const int tmsrp_machine_parser_header_Dummy_en_main = 1; + + + /* #line 97 "./ragel/tmsrp_parser_header_Dummy.rl" */ + (void)(eof); + (void)(tmsrp_machine_parser_header_Dummy_first_final); + (void)(tmsrp_machine_parser_header_Dummy_error); + (void)(tmsrp_machine_parser_header_Dummy_en_main); + + /* #line 144 "./src/headers/tmsrp_header_Dummy.c" */ + { + cs = tmsrp_machine_parser_header_Dummy_start; + } + + /* #line 102 "./ragel/tmsrp_parser_header_Dummy.rl" */ + + /* #line 151 "./src/headers/tmsrp_header_Dummy.c" */ + { + int _klen; + unsigned int _trans; + const char *_acts; + unsigned int _nacts; + const char *_keys; + + if ( p == pe ) { + goto _test_eof; + } + if ( cs == 0 ) { + goto _out; + } _resume: - _keys = _tmsrp_machine_parser_header_Dummy_trans_keys + _tmsrp_machine_parser_header_Dummy_key_offsets[cs]; - _trans = _tmsrp_machine_parser_header_Dummy_index_offsets[cs]; - - _klen = _tmsrp_machine_parser_header_Dummy_single_lengths[cs]; - if ( _klen > 0 ) { - const char *_lower = _keys; - const char *_mid; - const char *_upper = _keys + _klen - 1; - while (1) { - if ( _upper < _lower ) - break; - - _mid = _lower + ((_upper-_lower) >> 1); - if ( (*p) < *_mid ) - _upper = _mid - 1; - else if ( (*p) > *_mid ) - _lower = _mid + 1; - else { - _trans += (_mid - _keys); - goto _match; - } - } - _keys += _klen; - _trans += _klen; - } - - _klen = _tmsrp_machine_parser_header_Dummy_range_lengths[cs]; - if ( _klen > 0 ) { - const char *_lower = _keys; - const char *_mid; - const char *_upper = _keys + (_klen<<1) - 2; - while (1) { - if ( _upper < _lower ) - break; - - _mid = _lower + (((_upper-_lower) >> 1) & ~1); - if ( (*p) < _mid[0] ) - _upper = _mid - 2; - else if ( (*p) > _mid[1] ) - _lower = _mid + 2; - else { - _trans += ((_mid - _keys)>>1); - goto _match; - } - } - _trans += _klen; - } + _keys = _tmsrp_machine_parser_header_Dummy_trans_keys + _tmsrp_machine_parser_header_Dummy_key_offsets[cs]; + _trans = _tmsrp_machine_parser_header_Dummy_index_offsets[cs]; + + _klen = _tmsrp_machine_parser_header_Dummy_single_lengths[cs]; + if ( _klen > 0 ) { + const char *_lower = _keys; + const char *_mid; + const char *_upper = _keys + _klen - 1; + while (1) { + if ( _upper < _lower ) { + break; + } + + _mid = _lower + ((_upper-_lower) >> 1); + if ( (*p) < *_mid ) { + _upper = _mid - 1; + } + else if ( (*p) > *_mid ) { + _lower = _mid + 1; + } + else { + _trans += (_mid - _keys); + goto _match; + } + } + _keys += _klen; + _trans += _klen; + } + + _klen = _tmsrp_machine_parser_header_Dummy_range_lengths[cs]; + if ( _klen > 0 ) { + const char *_lower = _keys; + const char *_mid; + const char *_upper = _keys + (_klen<<1) - 2; + while (1) { + if ( _upper < _lower ) { + break; + } + + _mid = _lower + (((_upper-_lower) >> 1) & ~1); + if ( (*p) < _mid[0] ) { + _upper = _mid - 2; + } + else if ( (*p) > _mid[1] ) { + _lower = _mid + 2; + } + else { + _trans += ((_mid - _keys)>>1); + goto _match; + } + } + _trans += _klen; + } _match: - _trans = _tmsrp_machine_parser_header_Dummy_indicies[_trans]; - cs = _tmsrp_machine_parser_header_Dummy_trans_targs[_trans]; - - if ( _tmsrp_machine_parser_header_Dummy_trans_actions[_trans] == 0 ) - goto _again; - - _acts = _tmsrp_machine_parser_header_Dummy_actions + _tmsrp_machine_parser_header_Dummy_trans_actions[_trans]; - _nacts = (unsigned int) *_acts++; - while ( _nacts-- > 0 ) - { - switch ( *_acts++ ) - { - case 0: -/* #line 41 "./ragel/tmsrp_parser_header_Dummy.rl" */ - { - tag_start = p; - } - break; - case 1: -/* #line 45 "./ragel/tmsrp_parser_header_Dummy.rl" */ - { - TSK_PARSER_SET_STRING(hdr_Dummy->name); - } - break; - case 2: -/* #line 49 "./ragel/tmsrp_parser_header_Dummy.rl" */ - { - TSK_PARSER_SET_STRING(hdr_Dummy->value); - } - break; -/* #line 243 "./src/headers/tmsrp_header_Dummy.c" */ - } - } + _trans = _tmsrp_machine_parser_header_Dummy_indicies[_trans]; + cs = _tmsrp_machine_parser_header_Dummy_trans_targs[_trans]; + + if ( _tmsrp_machine_parser_header_Dummy_trans_actions[_trans] == 0 ) { + goto _again; + } + + _acts = _tmsrp_machine_parser_header_Dummy_actions + _tmsrp_machine_parser_header_Dummy_trans_actions[_trans]; + _nacts = (unsigned int) *_acts++; + while ( _nacts-- > 0 ) { + switch ( *_acts++ ) { + case 0: + /* #line 41 "./ragel/tmsrp_parser_header_Dummy.rl" */ + { + tag_start = p; + } + break; + case 1: + /* #line 45 "./ragel/tmsrp_parser_header_Dummy.rl" */ + { + TSK_PARSER_SET_STRING(hdr_Dummy->name); + } + break; + case 2: + /* #line 49 "./ragel/tmsrp_parser_header_Dummy.rl" */ + { + TSK_PARSER_SET_STRING(hdr_Dummy->value); + } + break; + /* #line 243 "./src/headers/tmsrp_header_Dummy.c" */ + } + } _again: - if ( cs == 0 ) - goto _out; - if ( ++p != pe ) - goto _resume; - _test_eof: {} - if ( p == eof ) - { - const char *__acts = _tmsrp_machine_parser_header_Dummy_actions + _tmsrp_machine_parser_header_Dummy_eof_actions[cs]; - unsigned int __nacts = (unsigned int) *__acts++; - while ( __nacts-- > 0 ) { - switch ( *__acts++ ) { - case 0: -/* #line 41 "./ragel/tmsrp_parser_header_Dummy.rl" */ - { - tag_start = p; - } - break; - case 2: -/* #line 49 "./ragel/tmsrp_parser_header_Dummy.rl" */ - { - TSK_PARSER_SET_STRING(hdr_Dummy->value); - } - break; -/* #line 271 "./src/headers/tmsrp_header_Dummy.c" */ - } - } - } - - _out: {} - } - -/* #line 103 "./ragel/tmsrp_parser_header_Dummy.rl" */ - TSK_RAGEL_DISABLE_WARNINGS_END() - - if( cs < -/* #line 283 "./src/headers/tmsrp_header_Dummy.c" */ -5 -/* #line 105 "./ragel/tmsrp_parser_header_Dummy.rl" */ - ){ - TSK_DEBUG_ERROR("Failed to parse Dummy header."); - TSK_OBJECT_SAFE_FREE(hdr_Dummy); - } - - return hdr_Dummy; + if ( cs == 0 ) { + goto _out; + } + if ( ++p != pe ) { + goto _resume; + } +_test_eof: { + } + if ( p == eof ) { + const char *__acts = _tmsrp_machine_parser_header_Dummy_actions + _tmsrp_machine_parser_header_Dummy_eof_actions[cs]; + unsigned int __nacts = (unsigned int) *__acts++; + while ( __nacts-- > 0 ) { + switch ( *__acts++ ) { + case 0: + /* #line 41 "./ragel/tmsrp_parser_header_Dummy.rl" */ + { + tag_start = p; + } + break; + case 2: + /* #line 49 "./ragel/tmsrp_parser_header_Dummy.rl" */ + { + TSK_PARSER_SET_STRING(hdr_Dummy->value); + } + break; + /* #line 271 "./src/headers/tmsrp_header_Dummy.c" */ + } + } + } + +_out: { + } + } + + /* #line 103 "./ragel/tmsrp_parser_header_Dummy.rl" */ + TSK_RAGEL_DISABLE_WARNINGS_END() + + if( cs < + /* #line 283 "./src/headers/tmsrp_header_Dummy.c" */ + 5 + /* #line 105 "./ragel/tmsrp_parser_header_Dummy.rl" */ + ) { + TSK_DEBUG_ERROR("Failed to parse Dummy header."); + TSK_OBJECT_SAFE_FREE(hdr_Dummy); + } + + return hdr_Dummy; } @@ -302,40 +312,39 @@ _again: static tsk_object_t* tmsrp_header_Dummy_ctor(tsk_object_t *self, va_list * app) { - tmsrp_header_Dummy_t *Dummy = self; - if(Dummy){ - TMSRP_HEADER(Dummy)->type = tmsrp_htype_Dummy; - TMSRP_HEADER(Dummy)->tostring = tmsrp_header_Dummy_tostring; - - Dummy->name = tsk_strdup(va_arg(*app, const char*)); - Dummy->value = tsk_strdup(va_arg(*app, const char*)); - } - else{ - TSK_DEBUG_ERROR("Failed to create new Dummy header."); - } - return self; + tmsrp_header_Dummy_t *Dummy = self; + if(Dummy) { + TMSRP_HEADER(Dummy)->type = tmsrp_htype_Dummy; + TMSRP_HEADER(Dummy)->tostring = tmsrp_header_Dummy_tostring; + + Dummy->name = tsk_strdup(va_arg(*app, const char*)); + Dummy->value = tsk_strdup(va_arg(*app, const char*)); + } + else { + TSK_DEBUG_ERROR("Failed to create new Dummy header."); + } + return self; } static tsk_object_t* tmsrp_header_Dummy_dtor(tsk_object_t *self) { - tmsrp_header_Dummy_t *Dummy = self; - if(Dummy){ - TSK_FREE(Dummy->name); - TSK_FREE(Dummy->value); - } - else{ - TSK_DEBUG_ERROR("Null Dummy header."); - } - - return self; + tmsrp_header_Dummy_t *Dummy = self; + if(Dummy) { + TSK_FREE(Dummy->name); + TSK_FREE(Dummy->value); + } + else { + TSK_DEBUG_ERROR("Null Dummy header."); + } + + return self; } -static const tsk_object_def_t tmsrp_header_Dummy_def_s = -{ - sizeof(tmsrp_header_Dummy_t), - tmsrp_header_Dummy_ctor, - tmsrp_header_Dummy_dtor, - tsk_null +static const tsk_object_def_t tmsrp_header_Dummy_def_s = { + sizeof(tmsrp_header_Dummy_t), + tmsrp_header_Dummy_ctor, + tmsrp_header_Dummy_dtor, + tsk_null }; const tsk_object_def_t *tmsrp_header_Dummy_def_t = &tmsrp_header_Dummy_def_s; diff --git a/tinyMSRP/src/headers/tmsrp_header_Expires.c b/tinyMSRP/src/headers/tmsrp_header_Expires.c index 7d5c299..e77b9ba 100755 --- a/tinyMSRP/src/headers/tmsrp_header_Expires.c +++ b/tinyMSRP/src/headers/tmsrp_header_Expires.c @@ -2,19 +2,19 @@ /* #line 1 "./ragel/tmsrp_parser_header_Expires.rl" */ /* * Copyright (C) 2009-2015 Mamadou DIOP. -* +* * This file is part of Open Source Doubango Framework. * * DOUBANGO is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. -* +* * DOUBANGO is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. -* +* * You should have received a copy of the GNU General Public License * along with DOUBANGO. * @@ -41,242 +41,252 @@ tmsrp_header_Expires_t* tmsrp_header_Expires_create(int64_t value) { - return tsk_object_new(TMSRP_HEADER_EXPIRES_VA_ARGS(value)); + return tsk_object_new(TMSRP_HEADER_EXPIRES_VA_ARGS(value)); } tmsrp_header_Expires_t* tmsrp_header_Expires_create_null() { - return tmsrp_header_Expires_create(-1); + return tmsrp_header_Expires_create(-1); } int tmsrp_header_Expires_tostring(const tmsrp_header_t* header, tsk_buffer_t* output) { - if(header){ - const tmsrp_header_Expires_t *Expires = (const tmsrp_header_Expires_t *)header; - if(Expires->value>=0){ - return tsk_buffer_append_2(output, "%lld", Expires->value); - } - return 0; - } - - return -1; + if(header) { + const tmsrp_header_Expires_t *Expires = (const tmsrp_header_Expires_t *)header; + if(Expires->value>=0) { + return tsk_buffer_append_2(output, "%lld", Expires->value); + } + return 0; + } + + return -1; } tmsrp_header_Expires_t *tmsrp_header_Expires_parse(const char *data, tsk_size_t size) { - int cs = 0; - const char *p = data; - const char *pe = p + size; - const char *eof = pe; - tmsrp_header_Expires_t *hdr_Expires = tmsrp_header_Expires_create_null(); - - const char *tag_start = tsk_null; - - TSK_RAGEL_DISABLE_WARNINGS_BEGIN() - -/* #line 78 "./src/headers/tmsrp_header_Expires.c" */ -static const char _tmsrp_machine_parser_header_Expires_actions[] = { - 0, 1, 0, 1, 1 -}; - -static const char _tmsrp_machine_parser_header_Expires_key_offsets[] = { - 0, 0, 2, 4, 6, 8, 10, 12, - 14, 15, 16, 18, 19, 22 -}; - -static const char _tmsrp_machine_parser_header_Expires_trans_keys[] = { - 69, 101, 88, 120, 80, 112, 73, 105, - 82, 114, 69, 101, 83, 115, 58, 32, - 48, 57, 10, 13, 48, 57, 0 -}; - -static const char _tmsrp_machine_parser_header_Expires_single_lengths[] = { - 0, 2, 2, 2, 2, 2, 2, 2, - 1, 1, 0, 1, 1, 0 -}; - -static const char _tmsrp_machine_parser_header_Expires_range_lengths[] = { - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 1, 0, 1, 0 -}; - -static const char _tmsrp_machine_parser_header_Expires_index_offsets[] = { - 0, 0, 3, 6, 9, 12, 15, 18, - 21, 23, 25, 27, 29, 32 -}; - -static const char _tmsrp_machine_parser_header_Expires_indicies[] = { - 0, 0, 1, 2, 2, 1, 3, 3, - 1, 4, 4, 1, 5, 5, 1, 6, - 6, 1, 7, 7, 1, 8, 1, 9, - 1, 10, 1, 11, 1, 12, 13, 1, - 1, 0 -}; - -static const char _tmsrp_machine_parser_header_Expires_trans_targs[] = { - 2, 0, 3, 4, 5, 6, 7, 8, - 9, 10, 12, 13, 11, 12 -}; - -static const char _tmsrp_machine_parser_header_Expires_trans_actions[] = { - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 1, 0, 3, 0 -}; - -static const char _tmsrp_machine_parser_header_Expires_eof_actions[] = { - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 3, 0 -}; - -static const int tmsrp_machine_parser_header_Expires_start = 1; -static const int tmsrp_machine_parser_header_Expires_first_final = 12; -static const int tmsrp_machine_parser_header_Expires_error = 0; - -static const int tmsrp_machine_parser_header_Expires_en_main = 1; - - -/* #line 93 "./ragel/tmsrp_parser_header_Expires.rl" */ - (void)(eof); - (void)(tmsrp_machine_parser_header_Expires_first_final); - (void)(tmsrp_machine_parser_header_Expires_error); - (void)(tmsrp_machine_parser_header_Expires_en_main); - -/* #line 145 "./src/headers/tmsrp_header_Expires.c" */ - { - cs = tmsrp_machine_parser_header_Expires_start; - } - -/* #line 98 "./ragel/tmsrp_parser_header_Expires.rl" */ - -/* #line 152 "./src/headers/tmsrp_header_Expires.c" */ - { - int _klen; - unsigned int _trans; - const char *_acts; - unsigned int _nacts; - const char *_keys; - - if ( p == pe ) - goto _test_eof; - if ( cs == 0 ) - goto _out; + int cs = 0; + const char *p = data; + const char *pe = p + size; + const char *eof = pe; + tmsrp_header_Expires_t *hdr_Expires = tmsrp_header_Expires_create_null(); + + const char *tag_start = tsk_null; + + TSK_RAGEL_DISABLE_WARNINGS_BEGIN() + + /* #line 78 "./src/headers/tmsrp_header_Expires.c" */ + static const char _tmsrp_machine_parser_header_Expires_actions[] = { + 0, 1, 0, 1, 1 + }; + + static const char _tmsrp_machine_parser_header_Expires_key_offsets[] = { + 0, 0, 2, 4, 6, 8, 10, 12, + 14, 15, 16, 18, 19, 22 + }; + + static const char _tmsrp_machine_parser_header_Expires_trans_keys[] = { + 69, 101, 88, 120, 80, 112, 73, 105, + 82, 114, 69, 101, 83, 115, 58, 32, + 48, 57, 10, 13, 48, 57, 0 + }; + + static const char _tmsrp_machine_parser_header_Expires_single_lengths[] = { + 0, 2, 2, 2, 2, 2, 2, 2, + 1, 1, 0, 1, 1, 0 + }; + + static const char _tmsrp_machine_parser_header_Expires_range_lengths[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 1, 0, 1, 0 + }; + + static const char _tmsrp_machine_parser_header_Expires_index_offsets[] = { + 0, 0, 3, 6, 9, 12, 15, 18, + 21, 23, 25, 27, 29, 32 + }; + + static const char _tmsrp_machine_parser_header_Expires_indicies[] = { + 0, 0, 1, 2, 2, 1, 3, 3, + 1, 4, 4, 1, 5, 5, 1, 6, + 6, 1, 7, 7, 1, 8, 1, 9, + 1, 10, 1, 11, 1, 12, 13, 1, + 1, 0 + }; + + static const char _tmsrp_machine_parser_header_Expires_trans_targs[] = { + 2, 0, 3, 4, 5, 6, 7, 8, + 9, 10, 12, 13, 11, 12 + }; + + static const char _tmsrp_machine_parser_header_Expires_trans_actions[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 1, 0, 3, 0 + }; + + static const char _tmsrp_machine_parser_header_Expires_eof_actions[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 3, 0 + }; + + static const int tmsrp_machine_parser_header_Expires_start = 1; + static const int tmsrp_machine_parser_header_Expires_first_final = 12; + static const int tmsrp_machine_parser_header_Expires_error = 0; + + static const int tmsrp_machine_parser_header_Expires_en_main = 1; + + + /* #line 93 "./ragel/tmsrp_parser_header_Expires.rl" */ + (void)(eof); + (void)(tmsrp_machine_parser_header_Expires_first_final); + (void)(tmsrp_machine_parser_header_Expires_error); + (void)(tmsrp_machine_parser_header_Expires_en_main); + + /* #line 145 "./src/headers/tmsrp_header_Expires.c" */ + { + cs = tmsrp_machine_parser_header_Expires_start; + } + + /* #line 98 "./ragel/tmsrp_parser_header_Expires.rl" */ + + /* #line 152 "./src/headers/tmsrp_header_Expires.c" */ + { + int _klen; + unsigned int _trans; + const char *_acts; + unsigned int _nacts; + const char *_keys; + + if ( p == pe ) { + goto _test_eof; + } + if ( cs == 0 ) { + goto _out; + } _resume: - _keys = _tmsrp_machine_parser_header_Expires_trans_keys + _tmsrp_machine_parser_header_Expires_key_offsets[cs]; - _trans = _tmsrp_machine_parser_header_Expires_index_offsets[cs]; - - _klen = _tmsrp_machine_parser_header_Expires_single_lengths[cs]; - if ( _klen > 0 ) { - const char *_lower = _keys; - const char *_mid; - const char *_upper = _keys + _klen - 1; - while (1) { - if ( _upper < _lower ) - break; - - _mid = _lower + ((_upper-_lower) >> 1); - if ( (*p) < *_mid ) - _upper = _mid - 1; - else if ( (*p) > *_mid ) - _lower = _mid + 1; - else { - _trans += (_mid - _keys); - goto _match; - } - } - _keys += _klen; - _trans += _klen; - } - - _klen = _tmsrp_machine_parser_header_Expires_range_lengths[cs]; - if ( _klen > 0 ) { - const char *_lower = _keys; - const char *_mid; - const char *_upper = _keys + (_klen<<1) - 2; - while (1) { - if ( _upper < _lower ) - break; - - _mid = _lower + (((_upper-_lower) >> 1) & ~1); - if ( (*p) < _mid[0] ) - _upper = _mid - 2; - else if ( (*p) > _mid[1] ) - _lower = _mid + 2; - else { - _trans += ((_mid - _keys)>>1); - goto _match; - } - } - _trans += _klen; - } + _keys = _tmsrp_machine_parser_header_Expires_trans_keys + _tmsrp_machine_parser_header_Expires_key_offsets[cs]; + _trans = _tmsrp_machine_parser_header_Expires_index_offsets[cs]; + + _klen = _tmsrp_machine_parser_header_Expires_single_lengths[cs]; + if ( _klen > 0 ) { + const char *_lower = _keys; + const char *_mid; + const char *_upper = _keys + _klen - 1; + while (1) { + if ( _upper < _lower ) { + break; + } + + _mid = _lower + ((_upper-_lower) >> 1); + if ( (*p) < *_mid ) { + _upper = _mid - 1; + } + else if ( (*p) > *_mid ) { + _lower = _mid + 1; + } + else { + _trans += (_mid - _keys); + goto _match; + } + } + _keys += _klen; + _trans += _klen; + } + + _klen = _tmsrp_machine_parser_header_Expires_range_lengths[cs]; + if ( _klen > 0 ) { + const char *_lower = _keys; + const char *_mid; + const char *_upper = _keys + (_klen<<1) - 2; + while (1) { + if ( _upper < _lower ) { + break; + } + + _mid = _lower + (((_upper-_lower) >> 1) & ~1); + if ( (*p) < _mid[0] ) { + _upper = _mid - 2; + } + else if ( (*p) > _mid[1] ) { + _lower = _mid + 2; + } + else { + _trans += ((_mid - _keys)>>1); + goto _match; + } + } + _trans += _klen; + } _match: - _trans = _tmsrp_machine_parser_header_Expires_indicies[_trans]; - cs = _tmsrp_machine_parser_header_Expires_trans_targs[_trans]; - - if ( _tmsrp_machine_parser_header_Expires_trans_actions[_trans] == 0 ) - goto _again; - - _acts = _tmsrp_machine_parser_header_Expires_actions + _tmsrp_machine_parser_header_Expires_trans_actions[_trans]; - _nacts = (unsigned int) *_acts++; - while ( _nacts-- > 0 ) - { - switch ( *_acts++ ) - { - case 0: -/* #line 41 "./ragel/tmsrp_parser_header_Expires.rl" */ - { - tag_start = p; - } - break; - case 1: -/* #line 45 "./ragel/tmsrp_parser_header_Expires.rl" */ - { - TSK_PARSER_SET_INTEGER_EX(hdr_Expires->value, int64_t, atoi64) - } - break; -/* #line 238 "./src/headers/tmsrp_header_Expires.c" */ - } - } + _trans = _tmsrp_machine_parser_header_Expires_indicies[_trans]; + cs = _tmsrp_machine_parser_header_Expires_trans_targs[_trans]; + + if ( _tmsrp_machine_parser_header_Expires_trans_actions[_trans] == 0 ) { + goto _again; + } + + _acts = _tmsrp_machine_parser_header_Expires_actions + _tmsrp_machine_parser_header_Expires_trans_actions[_trans]; + _nacts = (unsigned int) *_acts++; + while ( _nacts-- > 0 ) { + switch ( *_acts++ ) { + case 0: + /* #line 41 "./ragel/tmsrp_parser_header_Expires.rl" */ + { + tag_start = p; + } + break; + case 1: + /* #line 45 "./ragel/tmsrp_parser_header_Expires.rl" */ + { + TSK_PARSER_SET_INTEGER_EX(hdr_Expires->value, int64_t, atoi64) + } + break; + /* #line 238 "./src/headers/tmsrp_header_Expires.c" */ + } + } _again: - if ( cs == 0 ) - goto _out; - if ( ++p != pe ) - goto _resume; - _test_eof: {} - if ( p == eof ) - { - const char *__acts = _tmsrp_machine_parser_header_Expires_actions + _tmsrp_machine_parser_header_Expires_eof_actions[cs]; - unsigned int __nacts = (unsigned int) *__acts++; - while ( __nacts-- > 0 ) { - switch ( *__acts++ ) { - case 1: -/* #line 45 "./ragel/tmsrp_parser_header_Expires.rl" */ - { - TSK_PARSER_SET_INTEGER_EX(hdr_Expires->value, int64_t, atoi64) - } - break; -/* #line 260 "./src/headers/tmsrp_header_Expires.c" */ - } - } - } - - _out: {} - } - -/* #line 99 "./ragel/tmsrp_parser_header_Expires.rl" */ - TSK_RAGEL_DISABLE_WARNINGS_END() - - if( cs < -/* #line 272 "./src/headers/tmsrp_header_Expires.c" */ -12 -/* #line 101 "./ragel/tmsrp_parser_header_Expires.rl" */ - ){ - TSK_DEBUG_ERROR("Failed to parse 'Expires' header."); - TSK_OBJECT_SAFE_FREE(hdr_Expires); - } - - return hdr_Expires; + if ( cs == 0 ) { + goto _out; + } + if ( ++p != pe ) { + goto _resume; + } +_test_eof: { + } + if ( p == eof ) { + const char *__acts = _tmsrp_machine_parser_header_Expires_actions + _tmsrp_machine_parser_header_Expires_eof_actions[cs]; + unsigned int __nacts = (unsigned int) *__acts++; + while ( __nacts-- > 0 ) { + switch ( *__acts++ ) { + case 1: + /* #line 45 "./ragel/tmsrp_parser_header_Expires.rl" */ + { + TSK_PARSER_SET_INTEGER_EX(hdr_Expires->value, int64_t, atoi64) + } + break; + /* #line 260 "./src/headers/tmsrp_header_Expires.c" */ + } + } + } + +_out: { + } + } + + /* #line 99 "./ragel/tmsrp_parser_header_Expires.rl" */ + TSK_RAGEL_DISABLE_WARNINGS_END() + + if( cs < + /* #line 272 "./src/headers/tmsrp_header_Expires.c" */ + 12 + /* #line 101 "./ragel/tmsrp_parser_header_Expires.rl" */ + ) { + TSK_DEBUG_ERROR("Failed to parse 'Expires' header."); + TSK_OBJECT_SAFE_FREE(hdr_Expires); + } + + return hdr_Expires; } @@ -291,37 +301,36 @@ _again: static tsk_object_t* tmsrp_header_Expires_ctor(tsk_object_t *self, va_list * app) { - tmsrp_header_Expires_t *Expires = self; - if(Expires){ - TMSRP_HEADER(Expires)->type = tmsrp_htype_Message_ID; - TMSRP_HEADER(Expires)->tostring = tmsrp_header_Expires_tostring; - - Expires->value = va_arg(*app, int64_t); - } - else{ - TSK_DEBUG_ERROR("Failed to create new Expires header."); - } - return self; + tmsrp_header_Expires_t *Expires = self; + if(Expires) { + TMSRP_HEADER(Expires)->type = tmsrp_htype_Message_ID; + TMSRP_HEADER(Expires)->tostring = tmsrp_header_Expires_tostring; + + Expires->value = va_arg(*app, int64_t); + } + else { + TSK_DEBUG_ERROR("Failed to create new Expires header."); + } + return self; } static tsk_object_t* tmsrp_header_Expires_dtor(tsk_object_t *self) { - tmsrp_header_Expires_t *Expires = self; - if(Expires){ - } - else{ - TSK_DEBUG_ERROR("Null Expires header."); - } - - return self; + tmsrp_header_Expires_t *Expires = self; + if(Expires) { + } + else { + TSK_DEBUG_ERROR("Null Expires header."); + } + + return self; } -static const tsk_object_def_t tmsrp_header_Expires_def_s = -{ - sizeof(tmsrp_header_Expires_t), - tmsrp_header_Expires_ctor, - tmsrp_header_Expires_dtor, - tsk_null +static const tsk_object_def_t tmsrp_header_Expires_def_s = { + sizeof(tmsrp_header_Expires_t), + tmsrp_header_Expires_ctor, + tmsrp_header_Expires_dtor, + tsk_null }; const tsk_object_def_t *tmsrp_header_Expires_def_t = &tmsrp_header_Expires_def_s; diff --git a/tinyMSRP/src/headers/tmsrp_header_Failure-Report.c b/tinyMSRP/src/headers/tmsrp_header_Failure-Report.c index 3f45636..01f4687 100755 --- a/tinyMSRP/src/headers/tmsrp_header_Failure-Report.c +++ b/tinyMSRP/src/headers/tmsrp_header_Failure-Report.c @@ -2,19 +2,19 @@ /* #line 1 "./ragel/tmsrp_parser_header_Failure-Report.rl" */ /* * Copyright (C) 2009-2015 Mamadou DIOP. -* +* * This file is part of Open Source Doubango Framework. * * DOUBANGO is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. -* +* * DOUBANGO is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. -* +* * You should have received a copy of the GNU General Public License * along with DOUBANGO. * @@ -41,284 +41,294 @@ tmsrp_header_Failure_Report_t* tmsrp_header_Failure_Report_create(tmsrp_freport_type_t freport_type) { - return tsk_object_new(TMSRP_HEADER_FAILURE_REPORT_VA_ARGS(freport_type)); + return tsk_object_new(TMSRP_HEADER_FAILURE_REPORT_VA_ARGS(freport_type)); } tmsrp_header_Failure_Report_t* tmsrp_header_Failure_Report_create_null() { - return tmsrp_header_Failure_Report_create(freport_yes); + return tmsrp_header_Failure_Report_create(freport_yes); } int tmsrp_header_Failure_Report_tostring(const tmsrp_header_t* header, tsk_buffer_t* output) { - if(header){ - const tmsrp_header_Failure_Report_t *Failure_Report = (const tmsrp_header_Failure_Report_t *)header; - const char* value = (Failure_Report->type == freport_yes) ? "yes" : (Failure_Report->type == freport_no ? "no" : "partial"); - return tsk_buffer_append(output, value, strlen(value)); - } + if(header) { + const tmsrp_header_Failure_Report_t *Failure_Report = (const tmsrp_header_Failure_Report_t *)header; + const char* value = (Failure_Report->type == freport_yes) ? "yes" : (Failure_Report->type == freport_no ? "no" : "partial"); + return tsk_buffer_append(output, value, strlen(value)); + } - return -1; + return -1; } tmsrp_header_Failure_Report_t *tmsrp_header_Failure_Report_parse(const char *data, tsk_size_t size) { - int cs = 0; - const char *p = data; - const char *pe = p + size; - const char *eof = pe; - tmsrp_header_Failure_Report_t *hdr_Failure_Report = tmsrp_header_Failure_Report_create_null(); - - TSK_RAGEL_DISABLE_WARNINGS_BEGIN() - -/* #line 74 "./src/headers/tmsrp_header_Failure-Report.c" */ -static const char _tmsrp_machine_parser_header_Failure_Report_actions[] = { - 0, 1, 0, 1, 1, 1, 2 -}; - -static const char _tmsrp_machine_parser_header_Failure_Report_key_offsets[] = { - 0, 0, 2, 4, 6, 8, 10, 12, - 14, 15, 17, 19, 21, 23, 25, 27, - 28, 29, 35, 37, 38, 40, 42, 44, - 46, 48, 50, 52, 54, 55, 55, 56 -}; - -static const char _tmsrp_machine_parser_header_Failure_Report_trans_keys[] = { - 70, 102, 65, 97, 73, 105, 76, 108, - 85, 117, 82, 114, 69, 101, 45, 82, - 114, 69, 101, 80, 112, 79, 111, 82, - 114, 84, 116, 58, 32, 78, 80, 89, - 110, 112, 121, 79, 111, 10, 65, 97, - 82, 114, 84, 116, 73, 105, 65, 97, - 76, 108, 69, 101, 83, 115, 13, 13, - 13, 0 -}; - -static const char _tmsrp_machine_parser_header_Failure_Report_single_lengths[] = { - 0, 2, 2, 2, 2, 2, 2, 2, - 1, 2, 2, 2, 2, 2, 2, 1, - 1, 6, 2, 1, 2, 2, 2, 2, - 2, 2, 2, 2, 1, 0, 1, 1 -}; - -static const char _tmsrp_machine_parser_header_Failure_Report_range_lengths[] = { - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0 -}; - -static const char _tmsrp_machine_parser_header_Failure_Report_index_offsets[] = { - 0, 0, 3, 6, 9, 12, 15, 18, - 21, 23, 26, 29, 32, 35, 38, 41, - 43, 45, 52, 55, 57, 60, 63, 66, - 69, 72, 75, 78, 81, 83, 84, 86 -}; - -static const char _tmsrp_machine_parser_header_Failure_Report_indicies[] = { - 0, 0, 1, 2, 2, 1, 3, 3, - 1, 4, 4, 1, 5, 5, 1, 6, - 6, 1, 7, 7, 1, 8, 1, 9, - 9, 1, 10, 10, 1, 11, 11, 1, - 12, 12, 1, 13, 13, 1, 14, 14, - 1, 15, 1, 16, 1, 17, 18, 19, - 17, 18, 19, 1, 20, 20, 1, 21, - 1, 22, 22, 1, 23, 23, 1, 24, - 24, 1, 25, 25, 1, 26, 26, 1, - 27, 27, 1, 28, 28, 1, 29, 29, - 1, 30, 1, 1, 31, 1, 32, 1, - 0 -}; - -static const char _tmsrp_machine_parser_header_Failure_Report_trans_targs[] = { - 2, 0, 3, 4, 5, 6, 7, 8, - 9, 10, 11, 12, 13, 14, 15, 16, - 17, 18, 20, 26, 28, 29, 21, 22, - 23, 24, 25, 30, 27, 31, 19, 19, - 19 -}; - -static const char _tmsrp_machine_parser_header_Failure_Report_trans_actions[] = { - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 3, 5, - 1 -}; - -static const char _tmsrp_machine_parser_header_Failure_Report_eof_actions[] = { - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 3, 0, 5, 1 -}; - -static const int tmsrp_machine_parser_header_Failure_Report_start = 1; -static const int tmsrp_machine_parser_header_Failure_Report_first_final = 28; -static const int tmsrp_machine_parser_header_Failure_Report_error = 0; - -static const int tmsrp_machine_parser_header_Failure_Report_en_main = 1; - - -/* #line 93 "./ragel/tmsrp_parser_header_Failure-Report.rl" */ - (void)(eof); - (void)(tmsrp_machine_parser_header_Failure_Report_first_final); - (void)(tmsrp_machine_parser_header_Failure_Report_error); - (void)(tmsrp_machine_parser_header_Failure_Report_en_main); - -/* #line 169 "./src/headers/tmsrp_header_Failure-Report.c" */ - { - cs = tmsrp_machine_parser_header_Failure_Report_start; - } - -/* #line 98 "./ragel/tmsrp_parser_header_Failure-Report.rl" */ - -/* #line 176 "./src/headers/tmsrp_header_Failure-Report.c" */ - { - int _klen; - unsigned int _trans; - const char *_acts; - unsigned int _nacts; - const char *_keys; - - if ( p == pe ) - goto _test_eof; - if ( cs == 0 ) - goto _out; + int cs = 0; + const char *p = data; + const char *pe = p + size; + const char *eof = pe; + tmsrp_header_Failure_Report_t *hdr_Failure_Report = tmsrp_header_Failure_Report_create_null(); + + TSK_RAGEL_DISABLE_WARNINGS_BEGIN() + + /* #line 74 "./src/headers/tmsrp_header_Failure-Report.c" */ + static const char _tmsrp_machine_parser_header_Failure_Report_actions[] = { + 0, 1, 0, 1, 1, 1, 2 + }; + + static const char _tmsrp_machine_parser_header_Failure_Report_key_offsets[] = { + 0, 0, 2, 4, 6, 8, 10, 12, + 14, 15, 17, 19, 21, 23, 25, 27, + 28, 29, 35, 37, 38, 40, 42, 44, + 46, 48, 50, 52, 54, 55, 55, 56 + }; + + static const char _tmsrp_machine_parser_header_Failure_Report_trans_keys[] = { + 70, 102, 65, 97, 73, 105, 76, 108, + 85, 117, 82, 114, 69, 101, 45, 82, + 114, 69, 101, 80, 112, 79, 111, 82, + 114, 84, 116, 58, 32, 78, 80, 89, + 110, 112, 121, 79, 111, 10, 65, 97, + 82, 114, 84, 116, 73, 105, 65, 97, + 76, 108, 69, 101, 83, 115, 13, 13, + 13, 0 + }; + + static const char _tmsrp_machine_parser_header_Failure_Report_single_lengths[] = { + 0, 2, 2, 2, 2, 2, 2, 2, + 1, 2, 2, 2, 2, 2, 2, 1, + 1, 6, 2, 1, 2, 2, 2, 2, + 2, 2, 2, 2, 1, 0, 1, 1 + }; + + static const char _tmsrp_machine_parser_header_Failure_Report_range_lengths[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0 + }; + + static const char _tmsrp_machine_parser_header_Failure_Report_index_offsets[] = { + 0, 0, 3, 6, 9, 12, 15, 18, + 21, 23, 26, 29, 32, 35, 38, 41, + 43, 45, 52, 55, 57, 60, 63, 66, + 69, 72, 75, 78, 81, 83, 84, 86 + }; + + static const char _tmsrp_machine_parser_header_Failure_Report_indicies[] = { + 0, 0, 1, 2, 2, 1, 3, 3, + 1, 4, 4, 1, 5, 5, 1, 6, + 6, 1, 7, 7, 1, 8, 1, 9, + 9, 1, 10, 10, 1, 11, 11, 1, + 12, 12, 1, 13, 13, 1, 14, 14, + 1, 15, 1, 16, 1, 17, 18, 19, + 17, 18, 19, 1, 20, 20, 1, 21, + 1, 22, 22, 1, 23, 23, 1, 24, + 24, 1, 25, 25, 1, 26, 26, 1, + 27, 27, 1, 28, 28, 1, 29, 29, + 1, 30, 1, 1, 31, 1, 32, 1, + 0 + }; + + static const char _tmsrp_machine_parser_header_Failure_Report_trans_targs[] = { + 2, 0, 3, 4, 5, 6, 7, 8, + 9, 10, 11, 12, 13, 14, 15, 16, + 17, 18, 20, 26, 28, 29, 21, 22, + 23, 24, 25, 30, 27, 31, 19, 19, + 19 + }; + + static const char _tmsrp_machine_parser_header_Failure_Report_trans_actions[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 3, 5, + 1 + }; + + static const char _tmsrp_machine_parser_header_Failure_Report_eof_actions[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 3, 0, 5, 1 + }; + + static const int tmsrp_machine_parser_header_Failure_Report_start = 1; + static const int tmsrp_machine_parser_header_Failure_Report_first_final = 28; + static const int tmsrp_machine_parser_header_Failure_Report_error = 0; + + static const int tmsrp_machine_parser_header_Failure_Report_en_main = 1; + + + /* #line 93 "./ragel/tmsrp_parser_header_Failure-Report.rl" */ + (void)(eof); + (void)(tmsrp_machine_parser_header_Failure_Report_first_final); + (void)(tmsrp_machine_parser_header_Failure_Report_error); + (void)(tmsrp_machine_parser_header_Failure_Report_en_main); + + /* #line 169 "./src/headers/tmsrp_header_Failure-Report.c" */ + { + cs = tmsrp_machine_parser_header_Failure_Report_start; + } + + /* #line 98 "./ragel/tmsrp_parser_header_Failure-Report.rl" */ + + /* #line 176 "./src/headers/tmsrp_header_Failure-Report.c" */ + { + int _klen; + unsigned int _trans; + const char *_acts; + unsigned int _nacts; + const char *_keys; + + if ( p == pe ) { + goto _test_eof; + } + if ( cs == 0 ) { + goto _out; + } _resume: - _keys = _tmsrp_machine_parser_header_Failure_Report_trans_keys + _tmsrp_machine_parser_header_Failure_Report_key_offsets[cs]; - _trans = _tmsrp_machine_parser_header_Failure_Report_index_offsets[cs]; - - _klen = _tmsrp_machine_parser_header_Failure_Report_single_lengths[cs]; - if ( _klen > 0 ) { - const char *_lower = _keys; - const char *_mid; - const char *_upper = _keys + _klen - 1; - while (1) { - if ( _upper < _lower ) - break; - - _mid = _lower + ((_upper-_lower) >> 1); - if ( (*p) < *_mid ) - _upper = _mid - 1; - else if ( (*p) > *_mid ) - _lower = _mid + 1; - else { - _trans += (_mid - _keys); - goto _match; - } - } - _keys += _klen; - _trans += _klen; - } - - _klen = _tmsrp_machine_parser_header_Failure_Report_range_lengths[cs]; - if ( _klen > 0 ) { - const char *_lower = _keys; - const char *_mid; - const char *_upper = _keys + (_klen<<1) - 2; - while (1) { - if ( _upper < _lower ) - break; - - _mid = _lower + (((_upper-_lower) >> 1) & ~1); - if ( (*p) < _mid[0] ) - _upper = _mid - 2; - else if ( (*p) > _mid[1] ) - _lower = _mid + 2; - else { - _trans += ((_mid - _keys)>>1); - goto _match; - } - } - _trans += _klen; - } + _keys = _tmsrp_machine_parser_header_Failure_Report_trans_keys + _tmsrp_machine_parser_header_Failure_Report_key_offsets[cs]; + _trans = _tmsrp_machine_parser_header_Failure_Report_index_offsets[cs]; + + _klen = _tmsrp_machine_parser_header_Failure_Report_single_lengths[cs]; + if ( _klen > 0 ) { + const char *_lower = _keys; + const char *_mid; + const char *_upper = _keys + _klen - 1; + while (1) { + if ( _upper < _lower ) { + break; + } + + _mid = _lower + ((_upper-_lower) >> 1); + if ( (*p) < *_mid ) { + _upper = _mid - 1; + } + else if ( (*p) > *_mid ) { + _lower = _mid + 1; + } + else { + _trans += (_mid - _keys); + goto _match; + } + } + _keys += _klen; + _trans += _klen; + } + + _klen = _tmsrp_machine_parser_header_Failure_Report_range_lengths[cs]; + if ( _klen > 0 ) { + const char *_lower = _keys; + const char *_mid; + const char *_upper = _keys + (_klen<<1) - 2; + while (1) { + if ( _upper < _lower ) { + break; + } + + _mid = _lower + (((_upper-_lower) >> 1) & ~1); + if ( (*p) < _mid[0] ) { + _upper = _mid - 2; + } + else if ( (*p) > _mid[1] ) { + _lower = _mid + 2; + } + else { + _trans += ((_mid - _keys)>>1); + goto _match; + } + } + _trans += _klen; + } _match: - _trans = _tmsrp_machine_parser_header_Failure_Report_indicies[_trans]; - cs = _tmsrp_machine_parser_header_Failure_Report_trans_targs[_trans]; - - if ( _tmsrp_machine_parser_header_Failure_Report_trans_actions[_trans] == 0 ) - goto _again; - - _acts = _tmsrp_machine_parser_header_Failure_Report_actions + _tmsrp_machine_parser_header_Failure_Report_trans_actions[_trans]; - _nacts = (unsigned int) *_acts++; - while ( _nacts-- > 0 ) - { - switch ( *_acts++ ) - { - case 0: -/* #line 41 "./ragel/tmsrp_parser_header_Failure-Report.rl" */ - { - hdr_Failure_Report->type = freport_yes; - } - break; - case 1: -/* #line 45 "./ragel/tmsrp_parser_header_Failure-Report.rl" */ - { - hdr_Failure_Report->type = freport_no; - } - break; - case 2: -/* #line 49 "./ragel/tmsrp_parser_header_Failure-Report.rl" */ - { - hdr_Failure_Report->type = freport_partial; - } - break; -/* #line 268 "./src/headers/tmsrp_header_Failure-Report.c" */ - } - } + _trans = _tmsrp_machine_parser_header_Failure_Report_indicies[_trans]; + cs = _tmsrp_machine_parser_header_Failure_Report_trans_targs[_trans]; + + if ( _tmsrp_machine_parser_header_Failure_Report_trans_actions[_trans] == 0 ) { + goto _again; + } + + _acts = _tmsrp_machine_parser_header_Failure_Report_actions + _tmsrp_machine_parser_header_Failure_Report_trans_actions[_trans]; + _nacts = (unsigned int) *_acts++; + while ( _nacts-- > 0 ) { + switch ( *_acts++ ) { + case 0: + /* #line 41 "./ragel/tmsrp_parser_header_Failure-Report.rl" */ + { + hdr_Failure_Report->type = freport_yes; + } + break; + case 1: + /* #line 45 "./ragel/tmsrp_parser_header_Failure-Report.rl" */ + { + hdr_Failure_Report->type = freport_no; + } + break; + case 2: + /* #line 49 "./ragel/tmsrp_parser_header_Failure-Report.rl" */ + { + hdr_Failure_Report->type = freport_partial; + } + break; + /* #line 268 "./src/headers/tmsrp_header_Failure-Report.c" */ + } + } _again: - if ( cs == 0 ) - goto _out; - if ( ++p != pe ) - goto _resume; - _test_eof: {} - if ( p == eof ) - { - const char *__acts = _tmsrp_machine_parser_header_Failure_Report_actions + _tmsrp_machine_parser_header_Failure_Report_eof_actions[cs]; - unsigned int __nacts = (unsigned int) *__acts++; - while ( __nacts-- > 0 ) { - switch ( *__acts++ ) { - case 0: -/* #line 41 "./ragel/tmsrp_parser_header_Failure-Report.rl" */ - { - hdr_Failure_Report->type = freport_yes; - } - break; - case 1: -/* #line 45 "./ragel/tmsrp_parser_header_Failure-Report.rl" */ - { - hdr_Failure_Report->type = freport_no; - } - break; - case 2: -/* #line 49 "./ragel/tmsrp_parser_header_Failure-Report.rl" */ - { - hdr_Failure_Report->type = freport_partial; - } - break; -/* #line 302 "./src/headers/tmsrp_header_Failure-Report.c" */ - } - } - } - - _out: {} - } - -/* #line 99 "./ragel/tmsrp_parser_header_Failure-Report.rl" */ - TSK_RAGEL_DISABLE_WARNINGS_END() - - if( cs < -/* #line 314 "./src/headers/tmsrp_header_Failure-Report.c" */ -28 -/* #line 101 "./ragel/tmsrp_parser_header_Failure-Report.rl" */ - ){ - TSK_DEBUG_ERROR("Failed to parse 'Failure-Report' header."); - TSK_OBJECT_SAFE_FREE(hdr_Failure_Report); - } - - return hdr_Failure_Report; + if ( cs == 0 ) { + goto _out; + } + if ( ++p != pe ) { + goto _resume; + } +_test_eof: { + } + if ( p == eof ) { + const char *__acts = _tmsrp_machine_parser_header_Failure_Report_actions + _tmsrp_machine_parser_header_Failure_Report_eof_actions[cs]; + unsigned int __nacts = (unsigned int) *__acts++; + while ( __nacts-- > 0 ) { + switch ( *__acts++ ) { + case 0: + /* #line 41 "./ragel/tmsrp_parser_header_Failure-Report.rl" */ + { + hdr_Failure_Report->type = freport_yes; + } + break; + case 1: + /* #line 45 "./ragel/tmsrp_parser_header_Failure-Report.rl" */ + { + hdr_Failure_Report->type = freport_no; + } + break; + case 2: + /* #line 49 "./ragel/tmsrp_parser_header_Failure-Report.rl" */ + { + hdr_Failure_Report->type = freport_partial; + } + break; + /* #line 302 "./src/headers/tmsrp_header_Failure-Report.c" */ + } + } + } + +_out: { + } + } + + /* #line 99 "./ragel/tmsrp_parser_header_Failure-Report.rl" */ + TSK_RAGEL_DISABLE_WARNINGS_END() + + if( cs < + /* #line 314 "./src/headers/tmsrp_header_Failure-Report.c" */ + 28 + /* #line 101 "./ragel/tmsrp_parser_header_Failure-Report.rl" */ + ) { + TSK_DEBUG_ERROR("Failed to parse 'Failure-Report' header."); + TSK_OBJECT_SAFE_FREE(hdr_Failure_Report); + } + + return hdr_Failure_Report; } @@ -333,37 +343,36 @@ _again: static tsk_object_t* tmsrp_header_Failure_Report_ctor(tsk_object_t *self, va_list * app) { - tmsrp_header_Failure_Report_t *Failure_Report = self; - if(Failure_Report){ - TMSRP_HEADER(Failure_Report)->type = tmsrp_htype_Failure_Report; - TMSRP_HEADER(Failure_Report)->tostring = tmsrp_header_Failure_Report_tostring; - - Failure_Report->type = va_arg(*app, tmsrp_freport_type_t); - } - else{ - TSK_DEBUG_ERROR("Failed to create new Failure-Report header."); - } - return self; + tmsrp_header_Failure_Report_t *Failure_Report = self; + if(Failure_Report) { + TMSRP_HEADER(Failure_Report)->type = tmsrp_htype_Failure_Report; + TMSRP_HEADER(Failure_Report)->tostring = tmsrp_header_Failure_Report_tostring; + + Failure_Report->type = va_arg(*app, tmsrp_freport_type_t); + } + else { + TSK_DEBUG_ERROR("Failed to create new Failure-Report header."); + } + return self; } static tsk_object_t* tmsrp_header_Failure_Report_dtor(tsk_object_t *self) { - tmsrp_header_Failure_Report_t *Failure_Report = self; - if(Failure_Report){ - } - else{ - TSK_DEBUG_ERROR("Null Failure-Report header."); - } - - return self; + tmsrp_header_Failure_Report_t *Failure_Report = self; + if(Failure_Report) { + } + else { + TSK_DEBUG_ERROR("Null Failure-Report header."); + } + + return self; } -static const tsk_object_def_t tmsrp_header_Failure_Report_def_s = -{ - sizeof(tmsrp_header_Failure_Report_t), - tmsrp_header_Failure_Report_ctor, - tmsrp_header_Failure_Report_dtor, - tsk_null +static const tsk_object_def_t tmsrp_header_Failure_Report_def_s = { + sizeof(tmsrp_header_Failure_Report_t), + tmsrp_header_Failure_Report_ctor, + tmsrp_header_Failure_Report_dtor, + tsk_null }; const tsk_object_def_t *tmsrp_header_Failure_Report_def_t = &tmsrp_header_Failure_Report_def_s; diff --git a/tinyMSRP/src/headers/tmsrp_header_From-Path.c b/tinyMSRP/src/headers/tmsrp_header_From-Path.c index 660b33f..32b79f9 100755 --- a/tinyMSRP/src/headers/tmsrp_header_From-Path.c +++ b/tinyMSRP/src/headers/tmsrp_header_From-Path.c @@ -2,19 +2,19 @@ /* #line 1 "./ragel/tmsrp_parser_header_From-Path.rl" */ /* * Copyright (C) 2009-2015 Mamadou DIOP. -* +* * This file is part of Open Source Doubango Framework. * * DOUBANGO is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. -* +* * DOUBANGO is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. -* +* * You should have received a copy of the GNU General Public License * along with DOUBANGO. * @@ -41,306 +41,316 @@ tmsrp_header_From_Path_t* tmsrp_header_From_Path_create(const tmsrp_uri_t* uri) { - return tsk_object_new(TMSRP_HEADER_FROM_PATH_VA_ARGS(uri)); + return tsk_object_new(TMSRP_HEADER_FROM_PATH_VA_ARGS(uri)); } tmsrp_header_From_Path_t* tmsrp_header_From_Path_create_null() { - return tmsrp_header_From_Path_create(tsk_null); + return tmsrp_header_From_Path_create(tsk_null); } int tmsrp_header_From_Path_tostring(const tmsrp_header_t* header, tsk_buffer_t* output) { - if(header){ - const tmsrp_header_From_Path_t *From_Path = (const tmsrp_header_From_Path_t *)header; - const tsk_list_item_t *item; - - if(From_Path->uri){ - tmsrp_uri_serialize(From_Path->uri, output); - } - tsk_list_foreach(item, From_Path->otherURIs){ - tsk_buffer_append(output, " ", 1); - tmsrp_uri_serialize(TMSRP_URI(item->data), output); - } - } - - return -1; + if(header) { + const tmsrp_header_From_Path_t *From_Path = (const tmsrp_header_From_Path_t *)header; + const tsk_list_item_t *item; + + if(From_Path->uri) { + tmsrp_uri_serialize(From_Path->uri, output); + } + tsk_list_foreach(item, From_Path->otherURIs) { + tsk_buffer_append(output, " ", 1); + tmsrp_uri_serialize(TMSRP_URI(item->data), output); + } + } + + return -1; } tmsrp_header_From_Path_t *tmsrp_header_From_Path_parse(const char *data, tsk_size_t size) { - int cs = 0; - const char *p = data; - const char *pe = p + size; - const char *eof = pe; - tmsrp_header_From_Path_t *header = tmsrp_header_From_Path_create_null(); - - const char *tag_start = tsk_null; - - TSK_RAGEL_DISABLE_WARNINGS_BEGIN() - -/* #line 83 "./src/headers/tmsrp_header_From-Path.c" */ -static const char _tmsrp_machine_parser_header_From_Path_actions[] = { - 0, 1, 0, 1, 1, 2, 0, 1 - -}; - -static const char _tmsrp_machine_parser_header_From_Path_key_offsets[] = { - 0, 0, 2, 4, 6, 8, 9, 11, - 13, 15, 17, 18, 19, 20, 22, 24 -}; - -static const char _tmsrp_machine_parser_header_From_Path_trans_keys[] = { - 70, 102, 82, 114, 79, 111, 77, 109, - 45, 80, 112, 65, 97, 84, 116, 72, - 104, 58, 32, 10, 13, 32, 13, 32, - 0 -}; - -static const char _tmsrp_machine_parser_header_From_Path_single_lengths[] = { - 0, 2, 2, 2, 2, 1, 2, 2, - 2, 2, 1, 1, 1, 2, 2, 0 -}; - -static const char _tmsrp_machine_parser_header_From_Path_range_lengths[] = { - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0 -}; - -static const char _tmsrp_machine_parser_header_From_Path_index_offsets[] = { - 0, 0, 3, 6, 9, 12, 14, 17, - 20, 23, 26, 28, 30, 32, 35, 38 -}; - -static const char _tmsrp_machine_parser_header_From_Path_indicies[] = { - 0, 0, 1, 2, 2, 1, 3, 3, - 1, 4, 4, 1, 5, 1, 6, 6, - 1, 7, 7, 1, 8, 8, 1, 9, - 9, 1, 10, 1, 11, 1, 12, 1, - 14, 15, 13, 17, 18, 16, 1, 0 -}; - -static const char _tmsrp_machine_parser_header_From_Path_trans_targs[] = { - 2, 0, 3, 4, 5, 6, 7, 8, - 9, 10, 11, 13, 15, 14, 12, 13, - 14, 12, 13 -}; - -static const char _tmsrp_machine_parser_header_From_Path_trans_actions[] = { - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 1, 5, 5, - 0, 3, 3 -}; - -static const char _tmsrp_machine_parser_header_From_Path_eof_actions[] = { - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 5, 3, 0 -}; - -static const int tmsrp_machine_parser_header_From_Path_start = 1; -static const int tmsrp_machine_parser_header_From_Path_first_final = 13; -static const int tmsrp_machine_parser_header_From_Path_error = 0; - -static const int tmsrp_machine_parser_header_From_Path_en_main = 1; - - -/* #line 112 "./ragel/tmsrp_parser_header_From-Path.rl" */ - (void)(eof); - (void)(tmsrp_machine_parser_header_From_Path_first_final); - (void)(tmsrp_machine_parser_header_From_Path_error); - (void)(tmsrp_machine_parser_header_From_Path_en_main); - -/* #line 154 "./src/headers/tmsrp_header_From-Path.c" */ - { - cs = tmsrp_machine_parser_header_From_Path_start; - } - -/* #line 117 "./ragel/tmsrp_parser_header_From-Path.rl" */ - -/* #line 161 "./src/headers/tmsrp_header_From-Path.c" */ - { - int _klen; - unsigned int _trans; - const char *_acts; - unsigned int _nacts; - const char *_keys; - - if ( p == pe ) - goto _test_eof; - if ( cs == 0 ) - goto _out; + int cs = 0; + const char *p = data; + const char *pe = p + size; + const char *eof = pe; + tmsrp_header_From_Path_t *header = tmsrp_header_From_Path_create_null(); + + const char *tag_start = tsk_null; + + TSK_RAGEL_DISABLE_WARNINGS_BEGIN() + + /* #line 83 "./src/headers/tmsrp_header_From-Path.c" */ + static const char _tmsrp_machine_parser_header_From_Path_actions[] = { + 0, 1, 0, 1, 1, 2, 0, 1 + + }; + + static const char _tmsrp_machine_parser_header_From_Path_key_offsets[] = { + 0, 0, 2, 4, 6, 8, 9, 11, + 13, 15, 17, 18, 19, 20, 22, 24 + }; + + static const char _tmsrp_machine_parser_header_From_Path_trans_keys[] = { + 70, 102, 82, 114, 79, 111, 77, 109, + 45, 80, 112, 65, 97, 84, 116, 72, + 104, 58, 32, 10, 13, 32, 13, 32, + 0 + }; + + static const char _tmsrp_machine_parser_header_From_Path_single_lengths[] = { + 0, 2, 2, 2, 2, 1, 2, 2, + 2, 2, 1, 1, 1, 2, 2, 0 + }; + + static const char _tmsrp_machine_parser_header_From_Path_range_lengths[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0 + }; + + static const char _tmsrp_machine_parser_header_From_Path_index_offsets[] = { + 0, 0, 3, 6, 9, 12, 14, 17, + 20, 23, 26, 28, 30, 32, 35, 38 + }; + + static const char _tmsrp_machine_parser_header_From_Path_indicies[] = { + 0, 0, 1, 2, 2, 1, 3, 3, + 1, 4, 4, 1, 5, 1, 6, 6, + 1, 7, 7, 1, 8, 8, 1, 9, + 9, 1, 10, 1, 11, 1, 12, 1, + 14, 15, 13, 17, 18, 16, 1, 0 + }; + + static const char _tmsrp_machine_parser_header_From_Path_trans_targs[] = { + 2, 0, 3, 4, 5, 6, 7, 8, + 9, 10, 11, 13, 15, 14, 12, 13, + 14, 12, 13 + }; + + static const char _tmsrp_machine_parser_header_From_Path_trans_actions[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1, 5, 5, + 0, 3, 3 + }; + + static const char _tmsrp_machine_parser_header_From_Path_eof_actions[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 5, 3, 0 + }; + + static const int tmsrp_machine_parser_header_From_Path_start = 1; + static const int tmsrp_machine_parser_header_From_Path_first_final = 13; + static const int tmsrp_machine_parser_header_From_Path_error = 0; + + static const int tmsrp_machine_parser_header_From_Path_en_main = 1; + + + /* #line 112 "./ragel/tmsrp_parser_header_From-Path.rl" */ + (void)(eof); + (void)(tmsrp_machine_parser_header_From_Path_first_final); + (void)(tmsrp_machine_parser_header_From_Path_error); + (void)(tmsrp_machine_parser_header_From_Path_en_main); + + /* #line 154 "./src/headers/tmsrp_header_From-Path.c" */ + { + cs = tmsrp_machine_parser_header_From_Path_start; + } + + /* #line 117 "./ragel/tmsrp_parser_header_From-Path.rl" */ + + /* #line 161 "./src/headers/tmsrp_header_From-Path.c" */ + { + int _klen; + unsigned int _trans; + const char *_acts; + unsigned int _nacts; + const char *_keys; + + if ( p == pe ) { + goto _test_eof; + } + if ( cs == 0 ) { + goto _out; + } _resume: - _keys = _tmsrp_machine_parser_header_From_Path_trans_keys + _tmsrp_machine_parser_header_From_Path_key_offsets[cs]; - _trans = _tmsrp_machine_parser_header_From_Path_index_offsets[cs]; - - _klen = _tmsrp_machine_parser_header_From_Path_single_lengths[cs]; - if ( _klen > 0 ) { - const char *_lower = _keys; - const char *_mid; - const char *_upper = _keys + _klen - 1; - while (1) { - if ( _upper < _lower ) - break; - - _mid = _lower + ((_upper-_lower) >> 1); - if ( (*p) < *_mid ) - _upper = _mid - 1; - else if ( (*p) > *_mid ) - _lower = _mid + 1; - else { - _trans += (_mid - _keys); - goto _match; - } - } - _keys += _klen; - _trans += _klen; - } - - _klen = _tmsrp_machine_parser_header_From_Path_range_lengths[cs]; - if ( _klen > 0 ) { - const char *_lower = _keys; - const char *_mid; - const char *_upper = _keys + (_klen<<1) - 2; - while (1) { - if ( _upper < _lower ) - break; - - _mid = _lower + (((_upper-_lower) >> 1) & ~1); - if ( (*p) < _mid[0] ) - _upper = _mid - 2; - else if ( (*p) > _mid[1] ) - _lower = _mid + 2; - else { - _trans += ((_mid - _keys)>>1); - goto _match; - } - } - _trans += _klen; - } + _keys = _tmsrp_machine_parser_header_From_Path_trans_keys + _tmsrp_machine_parser_header_From_Path_key_offsets[cs]; + _trans = _tmsrp_machine_parser_header_From_Path_index_offsets[cs]; + + _klen = _tmsrp_machine_parser_header_From_Path_single_lengths[cs]; + if ( _klen > 0 ) { + const char *_lower = _keys; + const char *_mid; + const char *_upper = _keys + _klen - 1; + while (1) { + if ( _upper < _lower ) { + break; + } + + _mid = _lower + ((_upper-_lower) >> 1); + if ( (*p) < *_mid ) { + _upper = _mid - 1; + } + else if ( (*p) > *_mid ) { + _lower = _mid + 1; + } + else { + _trans += (_mid - _keys); + goto _match; + } + } + _keys += _klen; + _trans += _klen; + } + + _klen = _tmsrp_machine_parser_header_From_Path_range_lengths[cs]; + if ( _klen > 0 ) { + const char *_lower = _keys; + const char *_mid; + const char *_upper = _keys + (_klen<<1) - 2; + while (1) { + if ( _upper < _lower ) { + break; + } + + _mid = _lower + (((_upper-_lower) >> 1) & ~1); + if ( (*p) < _mid[0] ) { + _upper = _mid - 2; + } + else if ( (*p) > _mid[1] ) { + _lower = _mid + 2; + } + else { + _trans += ((_mid - _keys)>>1); + goto _match; + } + } + _trans += _klen; + } _match: - _trans = _tmsrp_machine_parser_header_From_Path_indicies[_trans]; - cs = _tmsrp_machine_parser_header_From_Path_trans_targs[_trans]; - - if ( _tmsrp_machine_parser_header_From_Path_trans_actions[_trans] == 0 ) - goto _again; - - _acts = _tmsrp_machine_parser_header_From_Path_actions + _tmsrp_machine_parser_header_From_Path_trans_actions[_trans]; - _nacts = (unsigned int) *_acts++; - while ( _nacts-- > 0 ) - { - switch ( *_acts++ ) - { - case 0: -/* #line 41 "./ragel/tmsrp_parser_header_From-Path.rl" */ - { - tag_start = p; - } - break; - case 1: -/* #line 45 "./ragel/tmsrp_parser_header_From-Path.rl" */ - { - int len = (int)(p - tag_start); - tmsrp_uri_t* uri; - if((uri = tmsrp_uri_parse(tag_start, (tsk_size_t)len))){ - if(!header->uri){ - header->uri = uri; - } - else{ - if(!header->otherURIs){ - header->otherURIs = tsk_list_create(); - } - tsk_list_push_back_data(header->otherURIs, ((void**) &uri)); - } - } - } - break; -/* #line 259 "./src/headers/tmsrp_header_From-Path.c" */ - } - } + _trans = _tmsrp_machine_parser_header_From_Path_indicies[_trans]; + cs = _tmsrp_machine_parser_header_From_Path_trans_targs[_trans]; + + if ( _tmsrp_machine_parser_header_From_Path_trans_actions[_trans] == 0 ) { + goto _again; + } + + _acts = _tmsrp_machine_parser_header_From_Path_actions + _tmsrp_machine_parser_header_From_Path_trans_actions[_trans]; + _nacts = (unsigned int) *_acts++; + while ( _nacts-- > 0 ) { + switch ( *_acts++ ) { + case 0: + /* #line 41 "./ragel/tmsrp_parser_header_From-Path.rl" */ + { + tag_start = p; + } + break; + case 1: + /* #line 45 "./ragel/tmsrp_parser_header_From-Path.rl" */ + { + int len = (int)(p - tag_start); + tmsrp_uri_t* uri; + if((uri = tmsrp_uri_parse(tag_start, (tsk_size_t)len))) { + if(!header->uri) { + header->uri = uri; + } + else { + if(!header->otherURIs) { + header->otherURIs = tsk_list_create(); + } + tsk_list_push_back_data(header->otherURIs, ((void**) &uri)); + } + } + } + break; + /* #line 259 "./src/headers/tmsrp_header_From-Path.c" */ + } + } _again: - if ( cs == 0 ) - goto _out; - if ( ++p != pe ) - goto _resume; - _test_eof: {} - if ( p == eof ) - { - const char *__acts = _tmsrp_machine_parser_header_From_Path_actions + _tmsrp_machine_parser_header_From_Path_eof_actions[cs]; - unsigned int __nacts = (unsigned int) *__acts++; - while ( __nacts-- > 0 ) { - switch ( *__acts++ ) { - case 0: -/* #line 41 "./ragel/tmsrp_parser_header_From-Path.rl" */ - { - tag_start = p; - } - break; - case 1: -/* #line 45 "./ragel/tmsrp_parser_header_From-Path.rl" */ - { - int len = (int)(p - tag_start); - tmsrp_uri_t* uri; - if((uri = tmsrp_uri_parse(tag_start, (tsk_size_t)len))){ - if(!header->uri){ - header->uri = uri; - } - else{ - if(!header->otherURIs){ - header->otherURIs = tsk_list_create(); - } - tsk_list_push_back_data(header->otherURIs, ((void**) &uri)); - } - } - } - break; -/* #line 299 "./src/headers/tmsrp_header_From-Path.c" */ - } - } - } - - _out: {} - } - -/* #line 118 "./ragel/tmsrp_parser_header_From-Path.rl" */ - TSK_RAGEL_DISABLE_WARNINGS_END() - - if( cs < -/* #line 311 "./src/headers/tmsrp_header_From-Path.c" */ -13 -/* #line 120 "./ragel/tmsrp_parser_header_From-Path.rl" */ - ){ - TSK_DEBUG_ERROR("Failed to parse 'From-Path' header."); - TSK_OBJECT_SAFE_FREE(header); - } - - return header; + if ( cs == 0 ) { + goto _out; + } + if ( ++p != pe ) { + goto _resume; + } +_test_eof: { + } + if ( p == eof ) { + const char *__acts = _tmsrp_machine_parser_header_From_Path_actions + _tmsrp_machine_parser_header_From_Path_eof_actions[cs]; + unsigned int __nacts = (unsigned int) *__acts++; + while ( __nacts-- > 0 ) { + switch ( *__acts++ ) { + case 0: + /* #line 41 "./ragel/tmsrp_parser_header_From-Path.rl" */ + { + tag_start = p; + } + break; + case 1: + /* #line 45 "./ragel/tmsrp_parser_header_From-Path.rl" */ + { + int len = (int)(p - tag_start); + tmsrp_uri_t* uri; + if((uri = tmsrp_uri_parse(tag_start, (tsk_size_t)len))) { + if(!header->uri) { + header->uri = uri; + } + else { + if(!header->otherURIs) { + header->otherURIs = tsk_list_create(); + } + tsk_list_push_back_data(header->otherURIs, ((void**) &uri)); + } + } + } + break; + /* #line 299 "./src/headers/tmsrp_header_From-Path.c" */ + } + } + } + +_out: { + } + } + + /* #line 118 "./ragel/tmsrp_parser_header_From-Path.rl" */ + TSK_RAGEL_DISABLE_WARNINGS_END() + + if( cs < + /* #line 311 "./src/headers/tmsrp_header_From-Path.c" */ + 13 + /* #line 120 "./ragel/tmsrp_parser_header_From-Path.rl" */ + ) { + TSK_DEBUG_ERROR("Failed to parse 'From-Path' header."); + TSK_OBJECT_SAFE_FREE(header); + } + + return header; } tmsrp_header_From_Path_t *tmsrp_header_From_Path_clone(const tmsrp_header_From_Path_t* From_Path) { - tmsrp_header_From_Path_t* clone = tsk_null; - - if(!From_Path){ - goto bail; - } - - clone = tmsrp_header_From_Path_create_null(); - clone->uri = tmsrp_uri_clone(From_Path->uri); - if(From_Path->otherURIs){ - tsk_list_item_t *item; - clone->otherURIs = tsk_list_create(); - - tsk_list_foreach(item, From_Path->otherURIs){ - tmsrp_uri_t *uri = tmsrp_uri_clone(TMSRP_URI(item->data)); - tsk_list_push_back_data(clone->otherURIs, (void**)&uri); - } - } + tmsrp_header_From_Path_t* clone = tsk_null; + + if(!From_Path) { + goto bail; + } + + clone = tmsrp_header_From_Path_create_null(); + clone->uri = tmsrp_uri_clone(From_Path->uri); + if(From_Path->otherURIs) { + tsk_list_item_t *item; + clone->otherURIs = tsk_list_create(); + + tsk_list_foreach(item, From_Path->otherURIs) { + tmsrp_uri_t *uri = tmsrp_uri_clone(TMSRP_URI(item->data)); + tsk_list_push_back_data(clone->otherURIs, (void**)&uri); + } + } bail: - return clone; + return clone; } @@ -352,39 +362,38 @@ bail: static tsk_object_t* tmsrp_header_From_Path_ctor(tsk_object_t *self, va_list * app) { - tmsrp_header_From_Path_t *From_Path = self; - if(From_Path){ - TMSRP_HEADER(From_Path)->type = tmsrp_htype_From_Path; - TMSRP_HEADER(From_Path)->tostring = tmsrp_header_From_Path_tostring; - - From_Path->uri = tsk_object_ref((void*)va_arg(*app, const tmsrp_uri_t*)); - } - else{ - TSK_DEBUG_ERROR("Failed to create new From-Path header."); - } - return self; + tmsrp_header_From_Path_t *From_Path = self; + if(From_Path) { + TMSRP_HEADER(From_Path)->type = tmsrp_htype_From_Path; + TMSRP_HEADER(From_Path)->tostring = tmsrp_header_From_Path_tostring; + + From_Path->uri = tsk_object_ref((void*)va_arg(*app, const tmsrp_uri_t*)); + } + else { + TSK_DEBUG_ERROR("Failed to create new From-Path header."); + } + return self; } static tsk_object_t* tmsrp_header_From_Path_dtor(tsk_object_t *self) { - tmsrp_header_From_Path_t *From_Path = self; - if(From_Path){ - TSK_OBJECT_SAFE_FREE(From_Path->uri); - TSK_OBJECT_SAFE_FREE(From_Path->otherURIs); - } - else{ - TSK_DEBUG_ERROR("Null From-Path header."); - } - - return self; + tmsrp_header_From_Path_t *From_Path = self; + if(From_Path) { + TSK_OBJECT_SAFE_FREE(From_Path->uri); + TSK_OBJECT_SAFE_FREE(From_Path->otherURIs); + } + else { + TSK_DEBUG_ERROR("Null From-Path header."); + } + + return self; } -static const tsk_object_def_t tmsrp_header_From_Path_def_s = -{ - sizeof(tmsrp_header_From_Path_t), - tmsrp_header_From_Path_ctor, - tmsrp_header_From_Path_dtor, - tsk_null +static const tsk_object_def_t tmsrp_header_From_Path_def_s = { + sizeof(tmsrp_header_From_Path_t), + tmsrp_header_From_Path_ctor, + tmsrp_header_From_Path_dtor, + tsk_null }; const tsk_object_def_t *tmsrp_header_From_Path_def_t = &tmsrp_header_From_Path_def_s; diff --git a/tinyMSRP/src/headers/tmsrp_header_Max-Expires.c b/tinyMSRP/src/headers/tmsrp_header_Max-Expires.c index f23f26f..01c1d03 100755 --- a/tinyMSRP/src/headers/tmsrp_header_Max-Expires.c +++ b/tinyMSRP/src/headers/tmsrp_header_Max-Expires.c @@ -2,19 +2,19 @@ /* #line 1 "./ragel/tmsrp_parser_header_Max-Expires.rl" */ /* * Copyright (C) 2009-2015 Mamadou DIOP. -* +* * This file is part of Open Source Doubango Framework. * * DOUBANGO is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. -* +* * DOUBANGO is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. -* +* * You should have received a copy of the GNU General Public License * along with DOUBANGO. * @@ -41,251 +41,261 @@ tmsrp_header_Max_Expires_t* tmsrp_header_Max_Expires_create(int64_t value) { - return tsk_object_new(TMSRP_HEADER_MAX_EXPIRES_VA_ARGS(value)); + return tsk_object_new(TMSRP_HEADER_MAX_EXPIRES_VA_ARGS(value)); } tmsrp_header_Max_Expires_t* tmsrp_header_Max_Expires_create_null() { - return tmsrp_header_Max_Expires_create(-1); + return tmsrp_header_Max_Expires_create(-1); } int tmsrp_header_Max_Expires_tostring(const tmsrp_header_t* header, tsk_buffer_t* output) { - if(header){ - const tmsrp_header_Max_Expires_t *Max_Expires = (const tmsrp_header_Max_Expires_t *)header; - if(Max_Expires->value>=0){ - return tsk_buffer_append_2(output, "%lld", Max_Expires->value); - } - return 0; - } - - return -1; + if(header) { + const tmsrp_header_Max_Expires_t *Max_Expires = (const tmsrp_header_Max_Expires_t *)header; + if(Max_Expires->value>=0) { + return tsk_buffer_append_2(output, "%lld", Max_Expires->value); + } + return 0; + } + + return -1; } tmsrp_header_Max_Expires_t *tmsrp_header_Max_Expires_parse(const char *data, tsk_size_t size) { - int cs = 0; - const char *p = data; - const char *pe = p + size; - const char *eof = pe; - tmsrp_header_Max_Expires_t *hdr_Max_Expires = tmsrp_header_Max_Expires_create_null(); - - const char *tag_start = tsk_null; - - TSK_RAGEL_DISABLE_WARNINGS_BEGIN() - -/* #line 78 "./src/headers/tmsrp_header_Max-Expires.c" */ -static const char _tmsrp_machine_parser_header_Max_Expires_actions[] = { - 0, 1, 0, 1, 1 -}; - -static const char _tmsrp_machine_parser_header_Max_Expires_key_offsets[] = { - 0, 0, 2, 4, 6, 7, 9, 11, - 13, 15, 17, 19, 21, 22, 23, 25, - 26, 29 -}; - -static const char _tmsrp_machine_parser_header_Max_Expires_trans_keys[] = { - 77, 109, 65, 97, 88, 120, 45, 69, - 101, 88, 120, 80, 112, 73, 105, 82, - 114, 69, 101, 83, 115, 58, 32, 48, - 57, 10, 13, 48, 57, 0 -}; - -static const char _tmsrp_machine_parser_header_Max_Expires_single_lengths[] = { - 0, 2, 2, 2, 1, 2, 2, 2, - 2, 2, 2, 2, 1, 1, 0, 1, - 1, 0 -}; - -static const char _tmsrp_machine_parser_header_Max_Expires_range_lengths[] = { - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 1, 0, - 1, 0 -}; - -static const char _tmsrp_machine_parser_header_Max_Expires_index_offsets[] = { - 0, 0, 3, 6, 9, 11, 14, 17, - 20, 23, 26, 29, 32, 34, 36, 38, - 40, 43 -}; - -static const char _tmsrp_machine_parser_header_Max_Expires_indicies[] = { - 0, 0, 1, 2, 2, 1, 3, 3, - 1, 4, 1, 5, 5, 1, 6, 6, - 1, 7, 7, 1, 8, 8, 1, 9, - 9, 1, 10, 10, 1, 11, 11, 1, - 12, 1, 13, 1, 14, 1, 15, 1, - 16, 17, 1, 1, 0 -}; - -static const char _tmsrp_machine_parser_header_Max_Expires_trans_targs[] = { - 2, 0, 3, 4, 5, 6, 7, 8, - 9, 10, 11, 12, 13, 14, 16, 17, - 15, 16 -}; - -static const char _tmsrp_machine_parser_header_Max_Expires_trans_actions[] = { - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 1, 0, - 3, 0 -}; - -static const char _tmsrp_machine_parser_header_Max_Expires_eof_actions[] = { - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 3, 0 -}; - -static const int tmsrp_machine_parser_header_Max_Expires_start = 1; -static const int tmsrp_machine_parser_header_Max_Expires_first_final = 16; -static const int tmsrp_machine_parser_header_Max_Expires_error = 0; - -static const int tmsrp_machine_parser_header_Max_Expires_en_main = 1; - - -/* #line 93 "./ragel/tmsrp_parser_header_Max-Expires.rl" */ - (void)(eof); - (void)(tmsrp_machine_parser_header_Max_Expires_first_final); - (void)(tmsrp_machine_parser_header_Max_Expires_error); - (void)(tmsrp_machine_parser_header_Max_Expires_en_main); - -/* #line 154 "./src/headers/tmsrp_header_Max-Expires.c" */ - { - cs = tmsrp_machine_parser_header_Max_Expires_start; - } - -/* #line 98 "./ragel/tmsrp_parser_header_Max-Expires.rl" */ - -/* #line 161 "./src/headers/tmsrp_header_Max-Expires.c" */ - { - int _klen; - unsigned int _trans; - const char *_acts; - unsigned int _nacts; - const char *_keys; - - if ( p == pe ) - goto _test_eof; - if ( cs == 0 ) - goto _out; + int cs = 0; + const char *p = data; + const char *pe = p + size; + const char *eof = pe; + tmsrp_header_Max_Expires_t *hdr_Max_Expires = tmsrp_header_Max_Expires_create_null(); + + const char *tag_start = tsk_null; + + TSK_RAGEL_DISABLE_WARNINGS_BEGIN() + + /* #line 78 "./src/headers/tmsrp_header_Max-Expires.c" */ + static const char _tmsrp_machine_parser_header_Max_Expires_actions[] = { + 0, 1, 0, 1, 1 + }; + + static const char _tmsrp_machine_parser_header_Max_Expires_key_offsets[] = { + 0, 0, 2, 4, 6, 7, 9, 11, + 13, 15, 17, 19, 21, 22, 23, 25, + 26, 29 + }; + + static const char _tmsrp_machine_parser_header_Max_Expires_trans_keys[] = { + 77, 109, 65, 97, 88, 120, 45, 69, + 101, 88, 120, 80, 112, 73, 105, 82, + 114, 69, 101, 83, 115, 58, 32, 48, + 57, 10, 13, 48, 57, 0 + }; + + static const char _tmsrp_machine_parser_header_Max_Expires_single_lengths[] = { + 0, 2, 2, 2, 1, 2, 2, 2, + 2, 2, 2, 2, 1, 1, 0, 1, + 1, 0 + }; + + static const char _tmsrp_machine_parser_header_Max_Expires_range_lengths[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 1, 0, + 1, 0 + }; + + static const char _tmsrp_machine_parser_header_Max_Expires_index_offsets[] = { + 0, 0, 3, 6, 9, 11, 14, 17, + 20, 23, 26, 29, 32, 34, 36, 38, + 40, 43 + }; + + static const char _tmsrp_machine_parser_header_Max_Expires_indicies[] = { + 0, 0, 1, 2, 2, 1, 3, 3, + 1, 4, 1, 5, 5, 1, 6, 6, + 1, 7, 7, 1, 8, 8, 1, 9, + 9, 1, 10, 10, 1, 11, 11, 1, + 12, 1, 13, 1, 14, 1, 15, 1, + 16, 17, 1, 1, 0 + }; + + static const char _tmsrp_machine_parser_header_Max_Expires_trans_targs[] = { + 2, 0, 3, 4, 5, 6, 7, 8, + 9, 10, 11, 12, 13, 14, 16, 17, + 15, 16 + }; + + static const char _tmsrp_machine_parser_header_Max_Expires_trans_actions[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 1, 0, + 3, 0 + }; + + static const char _tmsrp_machine_parser_header_Max_Expires_eof_actions[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 3, 0 + }; + + static const int tmsrp_machine_parser_header_Max_Expires_start = 1; + static const int tmsrp_machine_parser_header_Max_Expires_first_final = 16; + static const int tmsrp_machine_parser_header_Max_Expires_error = 0; + + static const int tmsrp_machine_parser_header_Max_Expires_en_main = 1; + + + /* #line 93 "./ragel/tmsrp_parser_header_Max-Expires.rl" */ + (void)(eof); + (void)(tmsrp_machine_parser_header_Max_Expires_first_final); + (void)(tmsrp_machine_parser_header_Max_Expires_error); + (void)(tmsrp_machine_parser_header_Max_Expires_en_main); + + /* #line 154 "./src/headers/tmsrp_header_Max-Expires.c" */ + { + cs = tmsrp_machine_parser_header_Max_Expires_start; + } + + /* #line 98 "./ragel/tmsrp_parser_header_Max-Expires.rl" */ + + /* #line 161 "./src/headers/tmsrp_header_Max-Expires.c" */ + { + int _klen; + unsigned int _trans; + const char *_acts; + unsigned int _nacts; + const char *_keys; + + if ( p == pe ) { + goto _test_eof; + } + if ( cs == 0 ) { + goto _out; + } _resume: - _keys = _tmsrp_machine_parser_header_Max_Expires_trans_keys + _tmsrp_machine_parser_header_Max_Expires_key_offsets[cs]; - _trans = _tmsrp_machine_parser_header_Max_Expires_index_offsets[cs]; - - _klen = _tmsrp_machine_parser_header_Max_Expires_single_lengths[cs]; - if ( _klen > 0 ) { - const char *_lower = _keys; - const char *_mid; - const char *_upper = _keys + _klen - 1; - while (1) { - if ( _upper < _lower ) - break; - - _mid = _lower + ((_upper-_lower) >> 1); - if ( (*p) < *_mid ) - _upper = _mid - 1; - else if ( (*p) > *_mid ) - _lower = _mid + 1; - else { - _trans += (_mid - _keys); - goto _match; - } - } - _keys += _klen; - _trans += _klen; - } - - _klen = _tmsrp_machine_parser_header_Max_Expires_range_lengths[cs]; - if ( _klen > 0 ) { - const char *_lower = _keys; - const char *_mid; - const char *_upper = _keys + (_klen<<1) - 2; - while (1) { - if ( _upper < _lower ) - break; - - _mid = _lower + (((_upper-_lower) >> 1) & ~1); - if ( (*p) < _mid[0] ) - _upper = _mid - 2; - else if ( (*p) > _mid[1] ) - _lower = _mid + 2; - else { - _trans += ((_mid - _keys)>>1); - goto _match; - } - } - _trans += _klen; - } + _keys = _tmsrp_machine_parser_header_Max_Expires_trans_keys + _tmsrp_machine_parser_header_Max_Expires_key_offsets[cs]; + _trans = _tmsrp_machine_parser_header_Max_Expires_index_offsets[cs]; + + _klen = _tmsrp_machine_parser_header_Max_Expires_single_lengths[cs]; + if ( _klen > 0 ) { + const char *_lower = _keys; + const char *_mid; + const char *_upper = _keys + _klen - 1; + while (1) { + if ( _upper < _lower ) { + break; + } + + _mid = _lower + ((_upper-_lower) >> 1); + if ( (*p) < *_mid ) { + _upper = _mid - 1; + } + else if ( (*p) > *_mid ) { + _lower = _mid + 1; + } + else { + _trans += (_mid - _keys); + goto _match; + } + } + _keys += _klen; + _trans += _klen; + } + + _klen = _tmsrp_machine_parser_header_Max_Expires_range_lengths[cs]; + if ( _klen > 0 ) { + const char *_lower = _keys; + const char *_mid; + const char *_upper = _keys + (_klen<<1) - 2; + while (1) { + if ( _upper < _lower ) { + break; + } + + _mid = _lower + (((_upper-_lower) >> 1) & ~1); + if ( (*p) < _mid[0] ) { + _upper = _mid - 2; + } + else if ( (*p) > _mid[1] ) { + _lower = _mid + 2; + } + else { + _trans += ((_mid - _keys)>>1); + goto _match; + } + } + _trans += _klen; + } _match: - _trans = _tmsrp_machine_parser_header_Max_Expires_indicies[_trans]; - cs = _tmsrp_machine_parser_header_Max_Expires_trans_targs[_trans]; - - if ( _tmsrp_machine_parser_header_Max_Expires_trans_actions[_trans] == 0 ) - goto _again; - - _acts = _tmsrp_machine_parser_header_Max_Expires_actions + _tmsrp_machine_parser_header_Max_Expires_trans_actions[_trans]; - _nacts = (unsigned int) *_acts++; - while ( _nacts-- > 0 ) - { - switch ( *_acts++ ) - { - case 0: -/* #line 41 "./ragel/tmsrp_parser_header_Max-Expires.rl" */ - { - tag_start = p; - } - break; - case 1: -/* #line 45 "./ragel/tmsrp_parser_header_Max-Expires.rl" */ - { - TSK_PARSER_SET_INTEGER_EX(hdr_Max_Expires->value, int64_t, atoi64) - } - break; -/* #line 247 "./src/headers/tmsrp_header_Max-Expires.c" */ - } - } + _trans = _tmsrp_machine_parser_header_Max_Expires_indicies[_trans]; + cs = _tmsrp_machine_parser_header_Max_Expires_trans_targs[_trans]; + + if ( _tmsrp_machine_parser_header_Max_Expires_trans_actions[_trans] == 0 ) { + goto _again; + } + + _acts = _tmsrp_machine_parser_header_Max_Expires_actions + _tmsrp_machine_parser_header_Max_Expires_trans_actions[_trans]; + _nacts = (unsigned int) *_acts++; + while ( _nacts-- > 0 ) { + switch ( *_acts++ ) { + case 0: + /* #line 41 "./ragel/tmsrp_parser_header_Max-Expires.rl" */ + { + tag_start = p; + } + break; + case 1: + /* #line 45 "./ragel/tmsrp_parser_header_Max-Expires.rl" */ + { + TSK_PARSER_SET_INTEGER_EX(hdr_Max_Expires->value, int64_t, atoi64) + } + break; + /* #line 247 "./src/headers/tmsrp_header_Max-Expires.c" */ + } + } _again: - if ( cs == 0 ) - goto _out; - if ( ++p != pe ) - goto _resume; - _test_eof: {} - if ( p == eof ) - { - const char *__acts = _tmsrp_machine_parser_header_Max_Expires_actions + _tmsrp_machine_parser_header_Max_Expires_eof_actions[cs]; - unsigned int __nacts = (unsigned int) *__acts++; - while ( __nacts-- > 0 ) { - switch ( *__acts++ ) { - case 1: -/* #line 45 "./ragel/tmsrp_parser_header_Max-Expires.rl" */ - { - TSK_PARSER_SET_INTEGER_EX(hdr_Max_Expires->value, int64_t, atoi64) - } - break; -/* #line 269 "./src/headers/tmsrp_header_Max-Expires.c" */ - } - } - } - - _out: {} - } - -/* #line 99 "./ragel/tmsrp_parser_header_Max-Expires.rl" */ - TSK_RAGEL_DISABLE_WARNINGS_END() - - if( cs < -/* #line 281 "./src/headers/tmsrp_header_Max-Expires.c" */ -16 -/* #line 101 "./ragel/tmsrp_parser_header_Max-Expires.rl" */ - ){ - TSK_DEBUG_ERROR("Failed to parse 'Max-Expires' header."); - TSK_OBJECT_SAFE_FREE(hdr_Max_Expires); - } - - return hdr_Max_Expires; + if ( cs == 0 ) { + goto _out; + } + if ( ++p != pe ) { + goto _resume; + } +_test_eof: { + } + if ( p == eof ) { + const char *__acts = _tmsrp_machine_parser_header_Max_Expires_actions + _tmsrp_machine_parser_header_Max_Expires_eof_actions[cs]; + unsigned int __nacts = (unsigned int) *__acts++; + while ( __nacts-- > 0 ) { + switch ( *__acts++ ) { + case 1: + /* #line 45 "./ragel/tmsrp_parser_header_Max-Expires.rl" */ + { + TSK_PARSER_SET_INTEGER_EX(hdr_Max_Expires->value, int64_t, atoi64) + } + break; + /* #line 269 "./src/headers/tmsrp_header_Max-Expires.c" */ + } + } + } + +_out: { + } + } + + /* #line 99 "./ragel/tmsrp_parser_header_Max-Expires.rl" */ + TSK_RAGEL_DISABLE_WARNINGS_END() + + if( cs < + /* #line 281 "./src/headers/tmsrp_header_Max-Expires.c" */ + 16 + /* #line 101 "./ragel/tmsrp_parser_header_Max-Expires.rl" */ + ) { + TSK_DEBUG_ERROR("Failed to parse 'Max-Expires' header."); + TSK_OBJECT_SAFE_FREE(hdr_Max_Expires); + } + + return hdr_Max_Expires; } @@ -300,37 +310,36 @@ _again: static tsk_object_t* tmsrp_header_Max_Expires_ctor(tsk_object_t *self, va_list * app) { - tmsrp_header_Max_Expires_t *Max_Expires = self; - if(Max_Expires){ - TMSRP_HEADER(Max_Expires)->type = tmsrp_htype_Max_Expires; - TMSRP_HEADER(Max_Expires)->tostring = tmsrp_header_Max_Expires_tostring; - - Max_Expires->value = va_arg(*app, int64_t); - } - else{ - TSK_DEBUG_ERROR("Failed to create new Max-Expires header."); - } - return self; + tmsrp_header_Max_Expires_t *Max_Expires = self; + if(Max_Expires) { + TMSRP_HEADER(Max_Expires)->type = tmsrp_htype_Max_Expires; + TMSRP_HEADER(Max_Expires)->tostring = tmsrp_header_Max_Expires_tostring; + + Max_Expires->value = va_arg(*app, int64_t); + } + else { + TSK_DEBUG_ERROR("Failed to create new Max-Expires header."); + } + return self; } static tsk_object_t* tmsrp_header_Max_Expires_dtor(tsk_object_t *self) { - tmsrp_header_Max_Expires_t *Max_Expires = self; - if(Max_Expires){ - } - else{ - TSK_DEBUG_ERROR("Null Max-Expires header."); - } - - return self; + tmsrp_header_Max_Expires_t *Max_Expires = self; + if(Max_Expires) { + } + else { + TSK_DEBUG_ERROR("Null Max-Expires header."); + } + + return self; } -static const tsk_object_def_t tmsrp_header_Max_Expires_def_s = -{ - sizeof(tmsrp_header_Max_Expires_t), - tmsrp_header_Max_Expires_ctor, - tmsrp_header_Max_Expires_dtor, - tsk_null +static const tsk_object_def_t tmsrp_header_Max_Expires_def_s = { + sizeof(tmsrp_header_Max_Expires_t), + tmsrp_header_Max_Expires_ctor, + tmsrp_header_Max_Expires_dtor, + tsk_null }; const tsk_object_def_t *tmsrp_header_Max_Expires_def_t = &tmsrp_header_Max_Expires_def_s; diff --git a/tinyMSRP/src/headers/tmsrp_header_Message-ID.c b/tinyMSRP/src/headers/tmsrp_header_Message-ID.c index 8c1f946..c542b44 100755 --- a/tinyMSRP/src/headers/tmsrp_header_Message-ID.c +++ b/tinyMSRP/src/headers/tmsrp_header_Message-ID.c @@ -2,19 +2,19 @@ /* #line 1 "./ragel/tmsrp_parser_header_Message-ID.rl" */ /* * Copyright (C) 2009-2015 Mamadou DIOP. -* +* * This file is part of Open Source Doubango Framework. * * DOUBANGO is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. -* +* * DOUBANGO is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. -* +* * You should have received a copy of the GNU General Public License * along with DOUBANGO. * @@ -42,354 +42,363 @@ tmsrp_header_Message_ID_t* tmsrp_header_Message_ID_create(const char* value) { - return tsk_object_new(TMSRP_HEADER_MESSAGE_ID_VA_ARGS(value)); + return tsk_object_new(TMSRP_HEADER_MESSAGE_ID_VA_ARGS(value)); } tmsrp_header_Message_ID_t* tmsrp_header_Message_ID_create_null() { - return tmsrp_header_Message_ID_create(tsk_null); + return tmsrp_header_Message_ID_create(tsk_null); } int tmsrp_header_Message_ID_tostring(const tmsrp_header_t* header, tsk_buffer_t* output) { - if(header) - { - const tmsrp_header_Message_ID_t *Message_Id = (const tmsrp_header_Message_ID_t *)header; - if(Message_Id->value){ - return tsk_buffer_append(output, Message_Id->value, strlen(Message_Id->value)); - } - return 0; - } - - return -1; + if(header) { + const tmsrp_header_Message_ID_t *Message_Id = (const tmsrp_header_Message_ID_t *)header; + if(Message_Id->value) { + return tsk_buffer_append(output, Message_Id->value, strlen(Message_Id->value)); + } + return 0; + } + + return -1; } tmsrp_header_Message_ID_t *tmsrp_header_Message_ID_parse(const char *data, tsk_size_t size) { - int cs = 0; - const char *p = data; - const char *pe = p + size; - const char *eof = pe; - tmsrp_header_Message_ID_t *hdr_Message_Id = tmsrp_header_Message_ID_create_null(); - - const char *tag_start = tsk_null; - - TSK_RAGEL_DISABLE_WARNINGS_BEGIN() - -/* #line 81 "./src/headers/tmsrp_header_Message-ID.c" */ -static const char _tmsrp_machine_parser_header_Message_Id_actions[] = { - 0, 1, 0, 1, 1 -}; - -static const short _tmsrp_machine_parser_header_Message_Id_key_offsets[] = { - 0, 0, 2, 4, 6, 8, 10, 12, - 14, 15, 17, 19, 20, 21, 27, 38, - 49, 60, 61, 73, 73, 85, 97, 109, - 121, 133, 145, 157, 169, 181, 193, 205, - 217, 229, 241, 253, 265, 277, 289, 301, - 313, 325, 337, 349, 361, 373, 385, 397 -}; - -static const char _tmsrp_machine_parser_header_Message_Id_trans_keys[] = { - 77, 109, 69, 101, 83, 115, 83, 115, - 65, 97, 71, 103, 69, 101, 45, 73, - 105, 68, 100, 58, 32, 48, 57, 65, - 90, 97, 122, 37, 43, 61, 45, 46, - 48, 57, 65, 90, 97, 122, 37, 43, - 61, 45, 46, 48, 57, 65, 90, 97, - 122, 37, 43, 61, 45, 46, 48, 57, - 65, 90, 97, 122, 10, 13, 37, 43, - 61, 45, 46, 48, 57, 65, 90, 97, - 122, 13, 37, 43, 61, 45, 46, 48, - 57, 65, 90, 97, 122, 13, 37, 43, - 61, 45, 46, 48, 57, 65, 90, 97, - 122, 13, 37, 43, 61, 45, 46, 48, - 57, 65, 90, 97, 122, 13, 37, 43, - 61, 45, 46, 48, 57, 65, 90, 97, - 122, 13, 37, 43, 61, 45, 46, 48, - 57, 65, 90, 97, 122, 13, 37, 43, - 61, 45, 46, 48, 57, 65, 90, 97, - 122, 13, 37, 43, 61, 45, 46, 48, - 57, 65, 90, 97, 122, 13, 37, 43, - 61, 45, 46, 48, 57, 65, 90, 97, - 122, 13, 37, 43, 61, 45, 46, 48, - 57, 65, 90, 97, 122, 13, 37, 43, - 61, 45, 46, 48, 57, 65, 90, 97, - 122, 13, 37, 43, 61, 45, 46, 48, - 57, 65, 90, 97, 122, 13, 37, 43, - 61, 45, 46, 48, 57, 65, 90, 97, - 122, 13, 37, 43, 61, 45, 46, 48, - 57, 65, 90, 97, 122, 13, 37, 43, - 61, 45, 46, 48, 57, 65, 90, 97, - 122, 13, 37, 43, 61, 45, 46, 48, - 57, 65, 90, 97, 122, 13, 37, 43, - 61, 45, 46, 48, 57, 65, 90, 97, - 122, 13, 37, 43, 61, 45, 46, 48, - 57, 65, 90, 97, 122, 13, 37, 43, - 61, 45, 46, 48, 57, 65, 90, 97, - 122, 13, 37, 43, 61, 45, 46, 48, - 57, 65, 90, 97, 122, 13, 37, 43, - 61, 45, 46, 48, 57, 65, 90, 97, - 122, 13, 37, 43, 61, 45, 46, 48, - 57, 65, 90, 97, 122, 13, 37, 43, - 61, 45, 46, 48, 57, 65, 90, 97, - 122, 13, 37, 43, 61, 45, 46, 48, - 57, 65, 90, 97, 122, 13, 37, 43, - 61, 45, 46, 48, 57, 65, 90, 97, - 122, 13, 37, 43, 61, 45, 46, 48, - 57, 65, 90, 97, 122, 13, 37, 43, - 61, 45, 46, 48, 57, 65, 90, 97, - 122, 13, 37, 43, 61, 45, 46, 48, - 57, 65, 90, 97, 122, 13, 0 -}; - -static const char _tmsrp_machine_parser_header_Message_Id_single_lengths[] = { - 0, 2, 2, 2, 2, 2, 2, 2, - 1, 2, 2, 1, 1, 0, 3, 3, - 3, 1, 4, 0, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 1 -}; - -static const char _tmsrp_machine_parser_header_Message_Id_range_lengths[] = { - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 3, 4, 4, - 4, 0, 4, 0, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 0 -}; - -static const short _tmsrp_machine_parser_header_Message_Id_index_offsets[] = { - 0, 0, 3, 6, 9, 12, 15, 18, - 21, 23, 26, 29, 31, 33, 37, 45, - 53, 61, 63, 72, 73, 82, 91, 100, - 109, 118, 127, 136, 145, 154, 163, 172, - 181, 190, 199, 208, 217, 226, 235, 244, - 253, 262, 271, 280, 289, 298, 307, 316 -}; - -static const char _tmsrp_machine_parser_header_Message_Id_indicies[] = { - 0, 0, 1, 2, 2, 1, 3, 3, - 1, 4, 4, 1, 5, 5, 1, 6, - 6, 1, 7, 7, 1, 8, 1, 9, - 9, 1, 10, 10, 1, 11, 1, 12, - 1, 13, 13, 13, 1, 14, 14, 14, - 14, 14, 14, 14, 1, 15, 15, 15, - 15, 15, 15, 15, 1, 16, 16, 16, - 16, 16, 16, 16, 1, 17, 1, 18, - 19, 19, 19, 19, 19, 19, 19, 1, - 1, 18, 20, 20, 20, 20, 20, 20, - 20, 1, 18, 21, 21, 21, 21, 21, - 21, 21, 1, 18, 22, 22, 22, 22, - 22, 22, 22, 1, 18, 23, 23, 23, - 23, 23, 23, 23, 1, 18, 24, 24, - 24, 24, 24, 24, 24, 1, 18, 25, - 25, 25, 25, 25, 25, 25, 1, 18, - 26, 26, 26, 26, 26, 26, 26, 1, - 18, 27, 27, 27, 27, 27, 27, 27, - 1, 18, 28, 28, 28, 28, 28, 28, - 28, 1, 18, 29, 29, 29, 29, 29, - 29, 29, 1, 18, 30, 30, 30, 30, - 30, 30, 30, 1, 18, 31, 31, 31, - 31, 31, 31, 31, 1, 18, 32, 32, - 32, 32, 32, 32, 32, 1, 18, 33, - 33, 33, 33, 33, 33, 33, 1, 18, - 34, 34, 34, 34, 34, 34, 34, 1, - 18, 35, 35, 35, 35, 35, 35, 35, - 1, 18, 36, 36, 36, 36, 36, 36, - 36, 1, 18, 37, 37, 37, 37, 37, - 37, 37, 1, 18, 38, 38, 38, 38, - 38, 38, 38, 1, 18, 39, 39, 39, - 39, 39, 39, 39, 1, 18, 40, 40, - 40, 40, 40, 40, 40, 1, 18, 41, - 41, 41, 41, 41, 41, 41, 1, 18, - 42, 42, 42, 42, 42, 42, 42, 1, - 18, 43, 43, 43, 43, 43, 43, 43, - 1, 18, 44, 44, 44, 44, 44, 44, - 44, 1, 18, 45, 45, 45, 45, 45, - 45, 45, 1, 18, 46, 46, 46, 46, - 46, 46, 46, 1, 18, 1, 0 -}; - -static const char _tmsrp_machine_parser_header_Message_Id_trans_targs[] = { - 2, 0, 3, 4, 5, 6, 7, 8, - 9, 10, 11, 12, 13, 14, 15, 16, - 18, 19, 17, 20, 21, 22, 23, 24, - 25, 26, 27, 28, 29, 30, 31, 32, - 33, 34, 35, 36, 37, 38, 39, 40, - 41, 42, 43, 44, 45, 46, 47 -}; - -static const char _tmsrp_machine_parser_header_Message_Id_trans_actions[] = { - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 1, 0, 0, - 0, 0, 3, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0 -}; - -static const char _tmsrp_machine_parser_header_Message_Id_eof_actions[] = { - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 3, 0, 3, 3, 3, 3, - 3, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 3, 3, 3, 3 -}; - -static const int tmsrp_machine_parser_header_Message_Id_start = 1; -static const int tmsrp_machine_parser_header_Message_Id_first_final = 18; -static const int tmsrp_machine_parser_header_Message_Id_error = 0; - -static const int tmsrp_machine_parser_header_Message_Id_en_main = 1; - - -/* #line 96 "./ragel/tmsrp_parser_header_Message-ID.rl" */ - (void)(eof); - (void)(tmsrp_machine_parser_header_Message_Id_first_final); - (void)(tmsrp_machine_parser_header_Message_Id_error); - (void)(tmsrp_machine_parser_header_Message_Id_en_main); - -/* #line 258 "./src/headers/tmsrp_header_Message-ID.c" */ - { - cs = tmsrp_machine_parser_header_Message_Id_start; - } - -/* #line 101 "./ragel/tmsrp_parser_header_Message-ID.rl" */ - -/* #line 265 "./src/headers/tmsrp_header_Message-ID.c" */ - { - int _klen; - unsigned int _trans; - const char *_acts; - unsigned int _nacts; - const char *_keys; - - if ( p == pe ) - goto _test_eof; - if ( cs == 0 ) - goto _out; + int cs = 0; + const char *p = data; + const char *pe = p + size; + const char *eof = pe; + tmsrp_header_Message_ID_t *hdr_Message_Id = tmsrp_header_Message_ID_create_null(); + + const char *tag_start = tsk_null; + + TSK_RAGEL_DISABLE_WARNINGS_BEGIN() + + /* #line 81 "./src/headers/tmsrp_header_Message-ID.c" */ + static const char _tmsrp_machine_parser_header_Message_Id_actions[] = { + 0, 1, 0, 1, 1 + }; + + static const short _tmsrp_machine_parser_header_Message_Id_key_offsets[] = { + 0, 0, 2, 4, 6, 8, 10, 12, + 14, 15, 17, 19, 20, 21, 27, 38, + 49, 60, 61, 73, 73, 85, 97, 109, + 121, 133, 145, 157, 169, 181, 193, 205, + 217, 229, 241, 253, 265, 277, 289, 301, + 313, 325, 337, 349, 361, 373, 385, 397 + }; + + static const char _tmsrp_machine_parser_header_Message_Id_trans_keys[] = { + 77, 109, 69, 101, 83, 115, 83, 115, + 65, 97, 71, 103, 69, 101, 45, 73, + 105, 68, 100, 58, 32, 48, 57, 65, + 90, 97, 122, 37, 43, 61, 45, 46, + 48, 57, 65, 90, 97, 122, 37, 43, + 61, 45, 46, 48, 57, 65, 90, 97, + 122, 37, 43, 61, 45, 46, 48, 57, + 65, 90, 97, 122, 10, 13, 37, 43, + 61, 45, 46, 48, 57, 65, 90, 97, + 122, 13, 37, 43, 61, 45, 46, 48, + 57, 65, 90, 97, 122, 13, 37, 43, + 61, 45, 46, 48, 57, 65, 90, 97, + 122, 13, 37, 43, 61, 45, 46, 48, + 57, 65, 90, 97, 122, 13, 37, 43, + 61, 45, 46, 48, 57, 65, 90, 97, + 122, 13, 37, 43, 61, 45, 46, 48, + 57, 65, 90, 97, 122, 13, 37, 43, + 61, 45, 46, 48, 57, 65, 90, 97, + 122, 13, 37, 43, 61, 45, 46, 48, + 57, 65, 90, 97, 122, 13, 37, 43, + 61, 45, 46, 48, 57, 65, 90, 97, + 122, 13, 37, 43, 61, 45, 46, 48, + 57, 65, 90, 97, 122, 13, 37, 43, + 61, 45, 46, 48, 57, 65, 90, 97, + 122, 13, 37, 43, 61, 45, 46, 48, + 57, 65, 90, 97, 122, 13, 37, 43, + 61, 45, 46, 48, 57, 65, 90, 97, + 122, 13, 37, 43, 61, 45, 46, 48, + 57, 65, 90, 97, 122, 13, 37, 43, + 61, 45, 46, 48, 57, 65, 90, 97, + 122, 13, 37, 43, 61, 45, 46, 48, + 57, 65, 90, 97, 122, 13, 37, 43, + 61, 45, 46, 48, 57, 65, 90, 97, + 122, 13, 37, 43, 61, 45, 46, 48, + 57, 65, 90, 97, 122, 13, 37, 43, + 61, 45, 46, 48, 57, 65, 90, 97, + 122, 13, 37, 43, 61, 45, 46, 48, + 57, 65, 90, 97, 122, 13, 37, 43, + 61, 45, 46, 48, 57, 65, 90, 97, + 122, 13, 37, 43, 61, 45, 46, 48, + 57, 65, 90, 97, 122, 13, 37, 43, + 61, 45, 46, 48, 57, 65, 90, 97, + 122, 13, 37, 43, 61, 45, 46, 48, + 57, 65, 90, 97, 122, 13, 37, 43, + 61, 45, 46, 48, 57, 65, 90, 97, + 122, 13, 37, 43, 61, 45, 46, 48, + 57, 65, 90, 97, 122, 13, 37, 43, + 61, 45, 46, 48, 57, 65, 90, 97, + 122, 13, 37, 43, 61, 45, 46, 48, + 57, 65, 90, 97, 122, 13, 0 + }; + + static const char _tmsrp_machine_parser_header_Message_Id_single_lengths[] = { + 0, 2, 2, 2, 2, 2, 2, 2, + 1, 2, 2, 1, 1, 0, 3, 3, + 3, 1, 4, 0, 4, 4, 4, 4, + 4, 4, 4, 4, 4, 4, 4, 4, + 4, 4, 4, 4, 4, 4, 4, 4, + 4, 4, 4, 4, 4, 4, 4, 1 + }; + + static const char _tmsrp_machine_parser_header_Message_Id_range_lengths[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 3, 4, 4, + 4, 0, 4, 0, 4, 4, 4, 4, + 4, 4, 4, 4, 4, 4, 4, 4, + 4, 4, 4, 4, 4, 4, 4, 4, + 4, 4, 4, 4, 4, 4, 4, 0 + }; + + static const short _tmsrp_machine_parser_header_Message_Id_index_offsets[] = { + 0, 0, 3, 6, 9, 12, 15, 18, + 21, 23, 26, 29, 31, 33, 37, 45, + 53, 61, 63, 72, 73, 82, 91, 100, + 109, 118, 127, 136, 145, 154, 163, 172, + 181, 190, 199, 208, 217, 226, 235, 244, + 253, 262, 271, 280, 289, 298, 307, 316 + }; + + static const char _tmsrp_machine_parser_header_Message_Id_indicies[] = { + 0, 0, 1, 2, 2, 1, 3, 3, + 1, 4, 4, 1, 5, 5, 1, 6, + 6, 1, 7, 7, 1, 8, 1, 9, + 9, 1, 10, 10, 1, 11, 1, 12, + 1, 13, 13, 13, 1, 14, 14, 14, + 14, 14, 14, 14, 1, 15, 15, 15, + 15, 15, 15, 15, 1, 16, 16, 16, + 16, 16, 16, 16, 1, 17, 1, 18, + 19, 19, 19, 19, 19, 19, 19, 1, + 1, 18, 20, 20, 20, 20, 20, 20, + 20, 1, 18, 21, 21, 21, 21, 21, + 21, 21, 1, 18, 22, 22, 22, 22, + 22, 22, 22, 1, 18, 23, 23, 23, + 23, 23, 23, 23, 1, 18, 24, 24, + 24, 24, 24, 24, 24, 1, 18, 25, + 25, 25, 25, 25, 25, 25, 1, 18, + 26, 26, 26, 26, 26, 26, 26, 1, + 18, 27, 27, 27, 27, 27, 27, 27, + 1, 18, 28, 28, 28, 28, 28, 28, + 28, 1, 18, 29, 29, 29, 29, 29, + 29, 29, 1, 18, 30, 30, 30, 30, + 30, 30, 30, 1, 18, 31, 31, 31, + 31, 31, 31, 31, 1, 18, 32, 32, + 32, 32, 32, 32, 32, 1, 18, 33, + 33, 33, 33, 33, 33, 33, 1, 18, + 34, 34, 34, 34, 34, 34, 34, 1, + 18, 35, 35, 35, 35, 35, 35, 35, + 1, 18, 36, 36, 36, 36, 36, 36, + 36, 1, 18, 37, 37, 37, 37, 37, + 37, 37, 1, 18, 38, 38, 38, 38, + 38, 38, 38, 1, 18, 39, 39, 39, + 39, 39, 39, 39, 1, 18, 40, 40, + 40, 40, 40, 40, 40, 1, 18, 41, + 41, 41, 41, 41, 41, 41, 1, 18, + 42, 42, 42, 42, 42, 42, 42, 1, + 18, 43, 43, 43, 43, 43, 43, 43, + 1, 18, 44, 44, 44, 44, 44, 44, + 44, 1, 18, 45, 45, 45, 45, 45, + 45, 45, 1, 18, 46, 46, 46, 46, + 46, 46, 46, 1, 18, 1, 0 + }; + + static const char _tmsrp_machine_parser_header_Message_Id_trans_targs[] = { + 2, 0, 3, 4, 5, 6, 7, 8, + 9, 10, 11, 12, 13, 14, 15, 16, + 18, 19, 17, 20, 21, 22, 23, 24, + 25, 26, 27, 28, 29, 30, 31, 32, + 33, 34, 35, 36, 37, 38, 39, 40, + 41, 42, 43, 44, 45, 46, 47 + }; + + static const char _tmsrp_machine_parser_header_Message_Id_trans_actions[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1, 0, 0, + 0, 0, 3, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0 + }; + + static const char _tmsrp_machine_parser_header_Message_Id_eof_actions[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 3, 0, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3 + }; + + static const int tmsrp_machine_parser_header_Message_Id_start = 1; + static const int tmsrp_machine_parser_header_Message_Id_first_final = 18; + static const int tmsrp_machine_parser_header_Message_Id_error = 0; + + static const int tmsrp_machine_parser_header_Message_Id_en_main = 1; + + + /* #line 96 "./ragel/tmsrp_parser_header_Message-ID.rl" */ + (void)(eof); + (void)(tmsrp_machine_parser_header_Message_Id_first_final); + (void)(tmsrp_machine_parser_header_Message_Id_error); + (void)(tmsrp_machine_parser_header_Message_Id_en_main); + + /* #line 258 "./src/headers/tmsrp_header_Message-ID.c" */ + { + cs = tmsrp_machine_parser_header_Message_Id_start; + } + + /* #line 101 "./ragel/tmsrp_parser_header_Message-ID.rl" */ + + /* #line 265 "./src/headers/tmsrp_header_Message-ID.c" */ + { + int _klen; + unsigned int _trans; + const char *_acts; + unsigned int _nacts; + const char *_keys; + + if ( p == pe ) { + goto _test_eof; + } + if ( cs == 0 ) { + goto _out; + } _resume: - _keys = _tmsrp_machine_parser_header_Message_Id_trans_keys + _tmsrp_machine_parser_header_Message_Id_key_offsets[cs]; - _trans = _tmsrp_machine_parser_header_Message_Id_index_offsets[cs]; - - _klen = _tmsrp_machine_parser_header_Message_Id_single_lengths[cs]; - if ( _klen > 0 ) { - const char *_lower = _keys; - const char *_mid; - const char *_upper = _keys + _klen - 1; - while (1) { - if ( _upper < _lower ) - break; - - _mid = _lower + ((_upper-_lower) >> 1); - if ( (*p) < *_mid ) - _upper = _mid - 1; - else if ( (*p) > *_mid ) - _lower = _mid + 1; - else { - _trans += (_mid - _keys); - goto _match; - } - } - _keys += _klen; - _trans += _klen; - } - - _klen = _tmsrp_machine_parser_header_Message_Id_range_lengths[cs]; - if ( _klen > 0 ) { - const char *_lower = _keys; - const char *_mid; - const char *_upper = _keys + (_klen<<1) - 2; - while (1) { - if ( _upper < _lower ) - break; - - _mid = _lower + (((_upper-_lower) >> 1) & ~1); - if ( (*p) < _mid[0] ) - _upper = _mid - 2; - else if ( (*p) > _mid[1] ) - _lower = _mid + 2; - else { - _trans += ((_mid - _keys)>>1); - goto _match; - } - } - _trans += _klen; - } + _keys = _tmsrp_machine_parser_header_Message_Id_trans_keys + _tmsrp_machine_parser_header_Message_Id_key_offsets[cs]; + _trans = _tmsrp_machine_parser_header_Message_Id_index_offsets[cs]; + + _klen = _tmsrp_machine_parser_header_Message_Id_single_lengths[cs]; + if ( _klen > 0 ) { + const char *_lower = _keys; + const char *_mid; + const char *_upper = _keys + _klen - 1; + while (1) { + if ( _upper < _lower ) { + break; + } + + _mid = _lower + ((_upper-_lower) >> 1); + if ( (*p) < *_mid ) { + _upper = _mid - 1; + } + else if ( (*p) > *_mid ) { + _lower = _mid + 1; + } + else { + _trans += (_mid - _keys); + goto _match; + } + } + _keys += _klen; + _trans += _klen; + } + + _klen = _tmsrp_machine_parser_header_Message_Id_range_lengths[cs]; + if ( _klen > 0 ) { + const char *_lower = _keys; + const char *_mid; + const char *_upper = _keys + (_klen<<1) - 2; + while (1) { + if ( _upper < _lower ) { + break; + } + + _mid = _lower + (((_upper-_lower) >> 1) & ~1); + if ( (*p) < _mid[0] ) { + _upper = _mid - 2; + } + else if ( (*p) > _mid[1] ) { + _lower = _mid + 2; + } + else { + _trans += ((_mid - _keys)>>1); + goto _match; + } + } + _trans += _klen; + } _match: - _trans = _tmsrp_machine_parser_header_Message_Id_indicies[_trans]; - cs = _tmsrp_machine_parser_header_Message_Id_trans_targs[_trans]; - - if ( _tmsrp_machine_parser_header_Message_Id_trans_actions[_trans] == 0 ) - goto _again; - - _acts = _tmsrp_machine_parser_header_Message_Id_actions + _tmsrp_machine_parser_header_Message_Id_trans_actions[_trans]; - _nacts = (unsigned int) *_acts++; - while ( _nacts-- > 0 ) - { - switch ( *_acts++ ) - { - case 0: -/* #line 42 "./ragel/tmsrp_parser_header_Message-ID.rl" */ - { - tag_start = p; - } - break; - case 1: -/* #line 46 "./ragel/tmsrp_parser_header_Message-ID.rl" */ - { - TSK_PARSER_SET_STRING(hdr_Message_Id->value); - } - break; -/* #line 351 "./src/headers/tmsrp_header_Message-ID.c" */ - } - } + _trans = _tmsrp_machine_parser_header_Message_Id_indicies[_trans]; + cs = _tmsrp_machine_parser_header_Message_Id_trans_targs[_trans]; + + if ( _tmsrp_machine_parser_header_Message_Id_trans_actions[_trans] == 0 ) { + goto _again; + } + + _acts = _tmsrp_machine_parser_header_Message_Id_actions + _tmsrp_machine_parser_header_Message_Id_trans_actions[_trans]; + _nacts = (unsigned int) *_acts++; + while ( _nacts-- > 0 ) { + switch ( *_acts++ ) { + case 0: + /* #line 42 "./ragel/tmsrp_parser_header_Message-ID.rl" */ + { + tag_start = p; + } + break; + case 1: + /* #line 46 "./ragel/tmsrp_parser_header_Message-ID.rl" */ + { + TSK_PARSER_SET_STRING(hdr_Message_Id->value); + } + break; + /* #line 351 "./src/headers/tmsrp_header_Message-ID.c" */ + } + } _again: - if ( cs == 0 ) - goto _out; - if ( ++p != pe ) - goto _resume; - _test_eof: {} - if ( p == eof ) - { - const char *__acts = _tmsrp_machine_parser_header_Message_Id_actions + _tmsrp_machine_parser_header_Message_Id_eof_actions[cs]; - unsigned int __nacts = (unsigned int) *__acts++; - while ( __nacts-- > 0 ) { - switch ( *__acts++ ) { - case 1: -/* #line 46 "./ragel/tmsrp_parser_header_Message-ID.rl" */ - { - TSK_PARSER_SET_STRING(hdr_Message_Id->value); - } - break; -/* #line 373 "./src/headers/tmsrp_header_Message-ID.c" */ - } - } - } - - _out: {} - } - -/* #line 102 "./ragel/tmsrp_parser_header_Message-ID.rl" */ - TSK_RAGEL_DISABLE_WARNINGS_END() - - if( cs < -/* #line 385 "./src/headers/tmsrp_header_Message-ID.c" */ -18 -/* #line 104 "./ragel/tmsrp_parser_header_Message-ID.rl" */ - ){ - TSK_DEBUG_ERROR("Failed to parse 'Message-Id' header."); - TSK_OBJECT_SAFE_FREE(hdr_Message_Id); - } - - return hdr_Message_Id; + if ( cs == 0 ) { + goto _out; + } + if ( ++p != pe ) { + goto _resume; + } +_test_eof: { + } + if ( p == eof ) { + const char *__acts = _tmsrp_machine_parser_header_Message_Id_actions + _tmsrp_machine_parser_header_Message_Id_eof_actions[cs]; + unsigned int __nacts = (unsigned int) *__acts++; + while ( __nacts-- > 0 ) { + switch ( *__acts++ ) { + case 1: + /* #line 46 "./ragel/tmsrp_parser_header_Message-ID.rl" */ + { + TSK_PARSER_SET_STRING(hdr_Message_Id->value); + } + break; + /* #line 373 "./src/headers/tmsrp_header_Message-ID.c" */ + } + } + } + +_out: { + } + } + + /* #line 102 "./ragel/tmsrp_parser_header_Message-ID.rl" */ + TSK_RAGEL_DISABLE_WARNINGS_END() + + if( cs < + /* #line 385 "./src/headers/tmsrp_header_Message-ID.c" */ + 18 + /* #line 104 "./ragel/tmsrp_parser_header_Message-ID.rl" */ + ) { + TSK_DEBUG_ERROR("Failed to parse 'Message-Id' header."); + TSK_OBJECT_SAFE_FREE(hdr_Message_Id); + } + + return hdr_Message_Id; } @@ -404,38 +413,37 @@ _again: static tsk_object_t* tmsrp_header_Message_ID_ctor(tsk_object_t *self, va_list * app) { - tmsrp_header_Message_ID_t *Message_Id = self; - if(Message_Id){ - TMSRP_HEADER(Message_Id)->type = tmsrp_htype_Message_ID; - TMSRP_HEADER(Message_Id)->tostring = tmsrp_header_Message_ID_tostring; - - Message_Id->value = tsk_strdup(va_arg(*app, const char*)); - } - else{ - TSK_DEBUG_ERROR("Failed to create new Message-Id header."); - } - return self; + tmsrp_header_Message_ID_t *Message_Id = self; + if(Message_Id) { + TMSRP_HEADER(Message_Id)->type = tmsrp_htype_Message_ID; + TMSRP_HEADER(Message_Id)->tostring = tmsrp_header_Message_ID_tostring; + + Message_Id->value = tsk_strdup(va_arg(*app, const char*)); + } + else { + TSK_DEBUG_ERROR("Failed to create new Message-Id header."); + } + return self; } static tsk_object_t* tmsrp_header_Message_ID_dtor(tsk_object_t *self) { - tmsrp_header_Message_ID_t *Message_Id = self; - if(Message_Id){ - TSK_FREE(Message_Id->value); - } - else{ - TSK_DEBUG_ERROR("Null Message-Id header."); - } - - return self; + tmsrp_header_Message_ID_t *Message_Id = self; + if(Message_Id) { + TSK_FREE(Message_Id->value); + } + else { + TSK_DEBUG_ERROR("Null Message-Id header."); + } + + return self; } -static const tsk_object_def_t tmsrp_header_Message_ID_def_s = -{ - sizeof(tmsrp_header_Message_ID_t), - tmsrp_header_Message_ID_ctor, - tmsrp_header_Message_ID_dtor, - tsk_null +static const tsk_object_def_t tmsrp_header_Message_ID_def_s = { + sizeof(tmsrp_header_Message_ID_t), + tmsrp_header_Message_ID_ctor, + tmsrp_header_Message_ID_dtor, + tsk_null }; const tsk_object_def_t *tmsrp_header_Message_ID_def_t = &tmsrp_header_Message_ID_def_s; diff --git a/tinyMSRP/src/headers/tmsrp_header_Min-Expires.c b/tinyMSRP/src/headers/tmsrp_header_Min-Expires.c index f45795d..f64681e 100755 --- a/tinyMSRP/src/headers/tmsrp_header_Min-Expires.c +++ b/tinyMSRP/src/headers/tmsrp_header_Min-Expires.c @@ -2,19 +2,19 @@ /* #line 1 "./ragel/tmsrp_parser_header_Min-Expires.rl" */ /* * Copyright (C) 2009-2015 Mamadou DIOP. -* +* * This file is part of Open Source Doubango Framework. * * DOUBANGO is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. -* +* * DOUBANGO is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. -* +* * You should have received a copy of the GNU General Public License * along with DOUBANGO. * @@ -41,251 +41,261 @@ tmsrp_header_Min_Expires_t* tmsrp_header_Min_Expires_create(int64_t value) { - return tsk_object_new(TMSRP_HEADER_MIN_EXPIRES_VA_ARGS(value)); + return tsk_object_new(TMSRP_HEADER_MIN_EXPIRES_VA_ARGS(value)); } tmsrp_header_Min_Expires_t* tmsrp_header_Min_Expires_create_null() { - return tmsrp_header_Min_Expires_create(-1); + return tmsrp_header_Min_Expires_create(-1); } int tmsrp_header_Min_Expires_tostring(const tmsrp_header_t* header, tsk_buffer_t* output) { - if(header){ - const tmsrp_header_Min_Expires_t *Min_Expires = (const tmsrp_header_Min_Expires_t *)header; - if(Min_Expires->value>=0){ - return tsk_buffer_append_2(output, "%lld", Min_Expires->value); - } - return 0; - } - - return -1; + if(header) { + const tmsrp_header_Min_Expires_t *Min_Expires = (const tmsrp_header_Min_Expires_t *)header; + if(Min_Expires->value>=0) { + return tsk_buffer_append_2(output, "%lld", Min_Expires->value); + } + return 0; + } + + return -1; } tmsrp_header_Min_Expires_t *tmsrp_header_Min_Expires_parse(const char *data, tsk_size_t size) { - int cs = 0; - const char *p = data; - const char *pe = p + size; - const char *eof = pe; - tmsrp_header_Min_Expires_t *hdr_Min_Expires = tmsrp_header_Min_Expires_create_null(); - - const char *tag_start = tsk_null; - - TSK_RAGEL_DISABLE_WARNINGS_BEGIN() - -/* #line 78 "./src/headers/tmsrp_header_Min-Expires.c" */ -static const char _tmsrp_machine_parser_header_Min_Expires_actions[] = { - 0, 1, 0, 1, 1 -}; - -static const char _tmsrp_machine_parser_header_Min_Expires_key_offsets[] = { - 0, 0, 2, 4, 6, 7, 9, 11, - 13, 15, 17, 19, 21, 22, 23, 25, - 26, 29 -}; - -static const char _tmsrp_machine_parser_header_Min_Expires_trans_keys[] = { - 77, 109, 73, 105, 78, 110, 45, 69, - 101, 88, 120, 80, 112, 73, 105, 82, - 114, 69, 101, 83, 115, 58, 32, 48, - 57, 10, 13, 48, 57, 0 -}; - -static const char _tmsrp_machine_parser_header_Min_Expires_single_lengths[] = { - 0, 2, 2, 2, 1, 2, 2, 2, - 2, 2, 2, 2, 1, 1, 0, 1, - 1, 0 -}; - -static const char _tmsrp_machine_parser_header_Min_Expires_range_lengths[] = { - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 1, 0, - 1, 0 -}; - -static const char _tmsrp_machine_parser_header_Min_Expires_index_offsets[] = { - 0, 0, 3, 6, 9, 11, 14, 17, - 20, 23, 26, 29, 32, 34, 36, 38, - 40, 43 -}; - -static const char _tmsrp_machine_parser_header_Min_Expires_indicies[] = { - 0, 0, 1, 2, 2, 1, 3, 3, - 1, 4, 1, 5, 5, 1, 6, 6, - 1, 7, 7, 1, 8, 8, 1, 9, - 9, 1, 10, 10, 1, 11, 11, 1, - 12, 1, 13, 1, 14, 1, 15, 1, - 16, 17, 1, 1, 0 -}; - -static const char _tmsrp_machine_parser_header_Min_Expires_trans_targs[] = { - 2, 0, 3, 4, 5, 6, 7, 8, - 9, 10, 11, 12, 13, 14, 16, 17, - 15, 16 -}; - -static const char _tmsrp_machine_parser_header_Min_Expires_trans_actions[] = { - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 1, 0, - 3, 0 -}; - -static const char _tmsrp_machine_parser_header_Min_Expires_eof_actions[] = { - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 3, 0 -}; - -static const int tmsrp_machine_parser_header_Min_Expires_start = 1; -static const int tmsrp_machine_parser_header_Min_Expires_first_final = 16; -static const int tmsrp_machine_parser_header_Min_Expires_error = 0; - -static const int tmsrp_machine_parser_header_Min_Expires_en_main = 1; - - -/* #line 93 "./ragel/tmsrp_parser_header_Min-Expires.rl" */ - (void)(eof); - (void)(tmsrp_machine_parser_header_Min_Expires_first_final); - (void)(tmsrp_machine_parser_header_Min_Expires_error); - (void)(tmsrp_machine_parser_header_Min_Expires_en_main); - -/* #line 154 "./src/headers/tmsrp_header_Min-Expires.c" */ - { - cs = tmsrp_machine_parser_header_Min_Expires_start; - } - -/* #line 98 "./ragel/tmsrp_parser_header_Min-Expires.rl" */ - -/* #line 161 "./src/headers/tmsrp_header_Min-Expires.c" */ - { - int _klen; - unsigned int _trans; - const char *_acts; - unsigned int _nacts; - const char *_keys; - - if ( p == pe ) - goto _test_eof; - if ( cs == 0 ) - goto _out; + int cs = 0; + const char *p = data; + const char *pe = p + size; + const char *eof = pe; + tmsrp_header_Min_Expires_t *hdr_Min_Expires = tmsrp_header_Min_Expires_create_null(); + + const char *tag_start = tsk_null; + + TSK_RAGEL_DISABLE_WARNINGS_BEGIN() + + /* #line 78 "./src/headers/tmsrp_header_Min-Expires.c" */ + static const char _tmsrp_machine_parser_header_Min_Expires_actions[] = { + 0, 1, 0, 1, 1 + }; + + static const char _tmsrp_machine_parser_header_Min_Expires_key_offsets[] = { + 0, 0, 2, 4, 6, 7, 9, 11, + 13, 15, 17, 19, 21, 22, 23, 25, + 26, 29 + }; + + static const char _tmsrp_machine_parser_header_Min_Expires_trans_keys[] = { + 77, 109, 73, 105, 78, 110, 45, 69, + 101, 88, 120, 80, 112, 73, 105, 82, + 114, 69, 101, 83, 115, 58, 32, 48, + 57, 10, 13, 48, 57, 0 + }; + + static const char _tmsrp_machine_parser_header_Min_Expires_single_lengths[] = { + 0, 2, 2, 2, 1, 2, 2, 2, + 2, 2, 2, 2, 1, 1, 0, 1, + 1, 0 + }; + + static const char _tmsrp_machine_parser_header_Min_Expires_range_lengths[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 1, 0, + 1, 0 + }; + + static const char _tmsrp_machine_parser_header_Min_Expires_index_offsets[] = { + 0, 0, 3, 6, 9, 11, 14, 17, + 20, 23, 26, 29, 32, 34, 36, 38, + 40, 43 + }; + + static const char _tmsrp_machine_parser_header_Min_Expires_indicies[] = { + 0, 0, 1, 2, 2, 1, 3, 3, + 1, 4, 1, 5, 5, 1, 6, 6, + 1, 7, 7, 1, 8, 8, 1, 9, + 9, 1, 10, 10, 1, 11, 11, 1, + 12, 1, 13, 1, 14, 1, 15, 1, + 16, 17, 1, 1, 0 + }; + + static const char _tmsrp_machine_parser_header_Min_Expires_trans_targs[] = { + 2, 0, 3, 4, 5, 6, 7, 8, + 9, 10, 11, 12, 13, 14, 16, 17, + 15, 16 + }; + + static const char _tmsrp_machine_parser_header_Min_Expires_trans_actions[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 1, 0, + 3, 0 + }; + + static const char _tmsrp_machine_parser_header_Min_Expires_eof_actions[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 3, 0 + }; + + static const int tmsrp_machine_parser_header_Min_Expires_start = 1; + static const int tmsrp_machine_parser_header_Min_Expires_first_final = 16; + static const int tmsrp_machine_parser_header_Min_Expires_error = 0; + + static const int tmsrp_machine_parser_header_Min_Expires_en_main = 1; + + + /* #line 93 "./ragel/tmsrp_parser_header_Min-Expires.rl" */ + (void)(eof); + (void)(tmsrp_machine_parser_header_Min_Expires_first_final); + (void)(tmsrp_machine_parser_header_Min_Expires_error); + (void)(tmsrp_machine_parser_header_Min_Expires_en_main); + + /* #line 154 "./src/headers/tmsrp_header_Min-Expires.c" */ + { + cs = tmsrp_machine_parser_header_Min_Expires_start; + } + + /* #line 98 "./ragel/tmsrp_parser_header_Min-Expires.rl" */ + + /* #line 161 "./src/headers/tmsrp_header_Min-Expires.c" */ + { + int _klen; + unsigned int _trans; + const char *_acts; + unsigned int _nacts; + const char *_keys; + + if ( p == pe ) { + goto _test_eof; + } + if ( cs == 0 ) { + goto _out; + } _resume: - _keys = _tmsrp_machine_parser_header_Min_Expires_trans_keys + _tmsrp_machine_parser_header_Min_Expires_key_offsets[cs]; - _trans = _tmsrp_machine_parser_header_Min_Expires_index_offsets[cs]; - - _klen = _tmsrp_machine_parser_header_Min_Expires_single_lengths[cs]; - if ( _klen > 0 ) { - const char *_lower = _keys; - const char *_mid; - const char *_upper = _keys + _klen - 1; - while (1) { - if ( _upper < _lower ) - break; - - _mid = _lower + ((_upper-_lower) >> 1); - if ( (*p) < *_mid ) - _upper = _mid - 1; - else if ( (*p) > *_mid ) - _lower = _mid + 1; - else { - _trans += (_mid - _keys); - goto _match; - } - } - _keys += _klen; - _trans += _klen; - } - - _klen = _tmsrp_machine_parser_header_Min_Expires_range_lengths[cs]; - if ( _klen > 0 ) { - const char *_lower = _keys; - const char *_mid; - const char *_upper = _keys + (_klen<<1) - 2; - while (1) { - if ( _upper < _lower ) - break; - - _mid = _lower + (((_upper-_lower) >> 1) & ~1); - if ( (*p) < _mid[0] ) - _upper = _mid - 2; - else if ( (*p) > _mid[1] ) - _lower = _mid + 2; - else { - _trans += ((_mid - _keys)>>1); - goto _match; - } - } - _trans += _klen; - } + _keys = _tmsrp_machine_parser_header_Min_Expires_trans_keys + _tmsrp_machine_parser_header_Min_Expires_key_offsets[cs]; + _trans = _tmsrp_machine_parser_header_Min_Expires_index_offsets[cs]; + + _klen = _tmsrp_machine_parser_header_Min_Expires_single_lengths[cs]; + if ( _klen > 0 ) { + const char *_lower = _keys; + const char *_mid; + const char *_upper = _keys + _klen - 1; + while (1) { + if ( _upper < _lower ) { + break; + } + + _mid = _lower + ((_upper-_lower) >> 1); + if ( (*p) < *_mid ) { + _upper = _mid - 1; + } + else if ( (*p) > *_mid ) { + _lower = _mid + 1; + } + else { + _trans += (_mid - _keys); + goto _match; + } + } + _keys += _klen; + _trans += _klen; + } + + _klen = _tmsrp_machine_parser_header_Min_Expires_range_lengths[cs]; + if ( _klen > 0 ) { + const char *_lower = _keys; + const char *_mid; + const char *_upper = _keys + (_klen<<1) - 2; + while (1) { + if ( _upper < _lower ) { + break; + } + + _mid = _lower + (((_upper-_lower) >> 1) & ~1); + if ( (*p) < _mid[0] ) { + _upper = _mid - 2; + } + else if ( (*p) > _mid[1] ) { + _lower = _mid + 2; + } + else { + _trans += ((_mid - _keys)>>1); + goto _match; + } + } + _trans += _klen; + } _match: - _trans = _tmsrp_machine_parser_header_Min_Expires_indicies[_trans]; - cs = _tmsrp_machine_parser_header_Min_Expires_trans_targs[_trans]; - - if ( _tmsrp_machine_parser_header_Min_Expires_trans_actions[_trans] == 0 ) - goto _again; - - _acts = _tmsrp_machine_parser_header_Min_Expires_actions + _tmsrp_machine_parser_header_Min_Expires_trans_actions[_trans]; - _nacts = (unsigned int) *_acts++; - while ( _nacts-- > 0 ) - { - switch ( *_acts++ ) - { - case 0: -/* #line 41 "./ragel/tmsrp_parser_header_Min-Expires.rl" */ - { - tag_start = p; - } - break; - case 1: -/* #line 45 "./ragel/tmsrp_parser_header_Min-Expires.rl" */ - { - TSK_PARSER_SET_INTEGER_EX(hdr_Min_Expires->value, int64_t, atoi64) - } - break; -/* #line 247 "./src/headers/tmsrp_header_Min-Expires.c" */ - } - } + _trans = _tmsrp_machine_parser_header_Min_Expires_indicies[_trans]; + cs = _tmsrp_machine_parser_header_Min_Expires_trans_targs[_trans]; + + if ( _tmsrp_machine_parser_header_Min_Expires_trans_actions[_trans] == 0 ) { + goto _again; + } + + _acts = _tmsrp_machine_parser_header_Min_Expires_actions + _tmsrp_machine_parser_header_Min_Expires_trans_actions[_trans]; + _nacts = (unsigned int) *_acts++; + while ( _nacts-- > 0 ) { + switch ( *_acts++ ) { + case 0: + /* #line 41 "./ragel/tmsrp_parser_header_Min-Expires.rl" */ + { + tag_start = p; + } + break; + case 1: + /* #line 45 "./ragel/tmsrp_parser_header_Min-Expires.rl" */ + { + TSK_PARSER_SET_INTEGER_EX(hdr_Min_Expires->value, int64_t, atoi64) + } + break; + /* #line 247 "./src/headers/tmsrp_header_Min-Expires.c" */ + } + } _again: - if ( cs == 0 ) - goto _out; - if ( ++p != pe ) - goto _resume; - _test_eof: {} - if ( p == eof ) - { - const char *__acts = _tmsrp_machine_parser_header_Min_Expires_actions + _tmsrp_machine_parser_header_Min_Expires_eof_actions[cs]; - unsigned int __nacts = (unsigned int) *__acts++; - while ( __nacts-- > 0 ) { - switch ( *__acts++ ) { - case 1: -/* #line 45 "./ragel/tmsrp_parser_header_Min-Expires.rl" */ - { - TSK_PARSER_SET_INTEGER_EX(hdr_Min_Expires->value, int64_t, atoi64) - } - break; -/* #line 269 "./src/headers/tmsrp_header_Min-Expires.c" */ - } - } - } - - _out: {} - } - -/* #line 99 "./ragel/tmsrp_parser_header_Min-Expires.rl" */ - TSK_RAGEL_DISABLE_WARNINGS_END() - - if( cs < -/* #line 281 "./src/headers/tmsrp_header_Min-Expires.c" */ -16 -/* #line 101 "./ragel/tmsrp_parser_header_Min-Expires.rl" */ - ){ - TSK_DEBUG_ERROR("Failed to parse 'Min-Expires' header."); - TSK_OBJECT_SAFE_FREE(hdr_Min_Expires); - } - - return hdr_Min_Expires; + if ( cs == 0 ) { + goto _out; + } + if ( ++p != pe ) { + goto _resume; + } +_test_eof: { + } + if ( p == eof ) { + const char *__acts = _tmsrp_machine_parser_header_Min_Expires_actions + _tmsrp_machine_parser_header_Min_Expires_eof_actions[cs]; + unsigned int __nacts = (unsigned int) *__acts++; + while ( __nacts-- > 0 ) { + switch ( *__acts++ ) { + case 1: + /* #line 45 "./ragel/tmsrp_parser_header_Min-Expires.rl" */ + { + TSK_PARSER_SET_INTEGER_EX(hdr_Min_Expires->value, int64_t, atoi64) + } + break; + /* #line 269 "./src/headers/tmsrp_header_Min-Expires.c" */ + } + } + } + +_out: { + } + } + + /* #line 99 "./ragel/tmsrp_parser_header_Min-Expires.rl" */ + TSK_RAGEL_DISABLE_WARNINGS_END() + + if( cs < + /* #line 281 "./src/headers/tmsrp_header_Min-Expires.c" */ + 16 + /* #line 101 "./ragel/tmsrp_parser_header_Min-Expires.rl" */ + ) { + TSK_DEBUG_ERROR("Failed to parse 'Min-Expires' header."); + TSK_OBJECT_SAFE_FREE(hdr_Min_Expires); + } + + return hdr_Min_Expires; } @@ -300,37 +310,36 @@ _again: static tsk_object_t* tmsrp_header_Min_Expires_ctor(tsk_object_t *self, va_list * app) { - tmsrp_header_Min_Expires_t *Min_Expires = self; - if(Min_Expires){ - TMSRP_HEADER(Min_Expires)->type = tmsrp_htype_Min_Expires; - TMSRP_HEADER(Min_Expires)->tostring = tmsrp_header_Min_Expires_tostring; - - Min_Expires->value = va_arg(*app, int64_t); - } - else{ - TSK_DEBUG_ERROR("Failed to create new Min-Expires header."); - } - return self; + tmsrp_header_Min_Expires_t *Min_Expires = self; + if(Min_Expires) { + TMSRP_HEADER(Min_Expires)->type = tmsrp_htype_Min_Expires; + TMSRP_HEADER(Min_Expires)->tostring = tmsrp_header_Min_Expires_tostring; + + Min_Expires->value = va_arg(*app, int64_t); + } + else { + TSK_DEBUG_ERROR("Failed to create new Min-Expires header."); + } + return self; } static tsk_object_t* tmsrp_header_Min_Expires_dtor(tsk_object_t *self) { - tmsrp_header_Min_Expires_t *Min_Expires = self; - if(Min_Expires){ - } - else{ - TSK_DEBUG_ERROR("Null Min-Expires header."); - } - - return self; + tmsrp_header_Min_Expires_t *Min_Expires = self; + if(Min_Expires) { + } + else { + TSK_DEBUG_ERROR("Null Min-Expires header."); + } + + return self; } -static const tsk_object_def_t tmsrp_header_Min_Expires_def_s = -{ - sizeof(tmsrp_header_Min_Expires_t), - tmsrp_header_Min_Expires_ctor, - tmsrp_header_Min_Expires_dtor, - tsk_null +static const tsk_object_def_t tmsrp_header_Min_Expires_def_s = { + sizeof(tmsrp_header_Min_Expires_t), + tmsrp_header_Min_Expires_ctor, + tmsrp_header_Min_Expires_dtor, + tsk_null }; const tsk_object_def_t *tmsrp_header_Min_Expires_def_t = &tmsrp_header_Min_Expires_def_s; diff --git a/tinyMSRP/src/headers/tmsrp_header_Status.c b/tinyMSRP/src/headers/tmsrp_header_Status.c index dd1bafe..7948b49 100755 --- a/tinyMSRP/src/headers/tmsrp_header_Status.c +++ b/tinyMSRP/src/headers/tmsrp_header_Status.c @@ -2,19 +2,19 @@ /* #line 1 "./ragel/tmsrp_parser_header_Status.rl" */ /* * Copyright (C) 2009-2015 Mamadou DIOP. -* +* * This file is part of Open Source Doubango Framework. * * DOUBANGO is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. -* +* * DOUBANGO is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. -* +* * You should have received a copy of the GNU General Public License * along with DOUBANGO. * @@ -42,284 +42,294 @@ tmsrp_header_Status_t* tmsrp_header_Status_create(short _namespace, short code, const char* reason) { - return tsk_object_new(TMSRP_HEADER_STATUS_VA_ARGS(_namespace, code, reason)); + return tsk_object_new(TMSRP_HEADER_STATUS_VA_ARGS(_namespace, code, reason)); } tmsrp_header_Status_t* tmsrp_header_Status_create_null() { - return tmsrp_header_Status_create(0, 200, tsk_null); + return tmsrp_header_Status_create(0, 200, tsk_null); } int tmsrp_header_Status_tostring(const tmsrp_header_t* header, tsk_buffer_t* output) { - if(header){ - const tmsrp_header_Status_t *Status = (const tmsrp_header_Status_t *)header; - - // Status: 000 200 OK - return tsk_buffer_append_2(output, "%.3hi %.3hi%s%s", - Status->_namespace, - Status->code, - Status->reason ? " " : "", - Status->reason ? Status->reason : "" - ); - } - - return -1; + if(header) { + const tmsrp_header_Status_t *Status = (const tmsrp_header_Status_t *)header; + + // Status: 000 200 OK + return tsk_buffer_append_2(output, "%.3hi %.3hi%s%s", + Status->_namespace, + Status->code, + Status->reason ? " " : "", + Status->reason ? Status->reason : "" + ); + } + + return -1; } tmsrp_header_Status_t *tmsrp_header_Status_parse(const char *data, tsk_size_t size) { - int cs = 0; - const char *p = data; - const char *pe = p + size; - const char *eof = pe; - tmsrp_header_Status_t *hdr_Status = tmsrp_header_Status_create_null(); - - const char *tag_start = tsk_null; - - TSK_RAGEL_DISABLE_WARNINGS_BEGIN() - -/* #line 84 "./src/headers/tmsrp_header_Status.c" */ -static const char _tmsrp_machine_parser_header_Status_actions[] = { - 0, 1, 0, 1, 1, 1, 2, 1, - 3, 2, 0, 3 -}; - -static const char _tmsrp_machine_parser_header_Status_key_offsets[] = { - 0, 0, 2, 4, 6, 8, 10, 12, - 13, 14, 16, 18, 20, 21, 23, 25, - 27, 28, 30, 30, 36 -}; - -static const char _tmsrp_machine_parser_header_Status_trans_keys[] = { - 83, 115, 84, 116, 65, 97, 84, 116, - 85, 117, 83, 115, 58, 32, 48, 57, - 48, 57, 48, 57, 32, 48, 57, 48, - 57, 48, 57, 10, 13, 32, 13, 127, - 0, 8, 10, 31, 13, 127, 0, 8, - 10, 31, 0 -}; - -static const char _tmsrp_machine_parser_header_Status_single_lengths[] = { - 0, 2, 2, 2, 2, 2, 2, 1, - 1, 0, 0, 0, 1, 0, 0, 0, - 1, 2, 0, 2, 2 -}; - -static const char _tmsrp_machine_parser_header_Status_range_lengths[] = { - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 1, 1, 1, 0, 1, 1, 1, - 0, 0, 0, 2, 2 -}; - -static const char _tmsrp_machine_parser_header_Status_index_offsets[] = { - 0, 0, 3, 6, 9, 12, 15, 18, - 20, 22, 24, 26, 28, 30, 32, 34, - 36, 38, 41, 42, 47 -}; - -static const char _tmsrp_machine_parser_header_Status_indicies[] = { - 0, 0, 1, 2, 2, 1, 3, 3, - 1, 4, 4, 1, 5, 5, 1, 6, - 6, 1, 7, 1, 8, 1, 9, 1, - 10, 1, 11, 1, 12, 1, 13, 1, - 14, 1, 15, 1, 16, 1, 17, 18, - 1, 1, 20, 1, 1, 1, 19, 22, - 1, 1, 1, 21, 0 -}; - -static const char _tmsrp_machine_parser_header_Status_trans_targs[] = { - 2, 0, 3, 4, 5, 6, 7, 8, - 9, 10, 11, 12, 13, 14, 15, 17, - 18, 16, 19, 20, 16, 20, 16 -}; - -static const char _tmsrp_machine_parser_header_Status_trans_actions[] = { - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 1, 0, 0, 3, 1, 0, 0, - 0, 5, 5, 1, 9, 0, 7 -}; - -static const char _tmsrp_machine_parser_header_Status_eof_actions[] = { - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 5, 0, 9, 7 -}; - -static const int tmsrp_machine_parser_header_Status_start = 1; -static const int tmsrp_machine_parser_header_Status_first_final = 17; -static const int tmsrp_machine_parser_header_Status_error = 0; - -static const int tmsrp_machine_parser_header_Status_en_main = 1; - - -/* #line 109 "./ragel/tmsrp_parser_header_Status.rl" */ - (void)(eof); - (void)(tmsrp_machine_parser_header_Status_first_final); - (void)(tmsrp_machine_parser_header_Status_error); - (void)(tmsrp_machine_parser_header_Status_en_main); - -/* #line 164 "./src/headers/tmsrp_header_Status.c" */ - { - cs = tmsrp_machine_parser_header_Status_start; - } - -/* #line 114 "./ragel/tmsrp_parser_header_Status.rl" */ - -/* #line 171 "./src/headers/tmsrp_header_Status.c" */ - { - int _klen; - unsigned int _trans; - const char *_acts; - unsigned int _nacts; - const char *_keys; - - if ( p == pe ) - goto _test_eof; - if ( cs == 0 ) - goto _out; + int cs = 0; + const char *p = data; + const char *pe = p + size; + const char *eof = pe; + tmsrp_header_Status_t *hdr_Status = tmsrp_header_Status_create_null(); + + const char *tag_start = tsk_null; + + TSK_RAGEL_DISABLE_WARNINGS_BEGIN() + + /* #line 84 "./src/headers/tmsrp_header_Status.c" */ + static const char _tmsrp_machine_parser_header_Status_actions[] = { + 0, 1, 0, 1, 1, 1, 2, 1, + 3, 2, 0, 3 + }; + + static const char _tmsrp_machine_parser_header_Status_key_offsets[] = { + 0, 0, 2, 4, 6, 8, 10, 12, + 13, 14, 16, 18, 20, 21, 23, 25, + 27, 28, 30, 30, 36 + }; + + static const char _tmsrp_machine_parser_header_Status_trans_keys[] = { + 83, 115, 84, 116, 65, 97, 84, 116, + 85, 117, 83, 115, 58, 32, 48, 57, + 48, 57, 48, 57, 32, 48, 57, 48, + 57, 48, 57, 10, 13, 32, 13, 127, + 0, 8, 10, 31, 13, 127, 0, 8, + 10, 31, 0 + }; + + static const char _tmsrp_machine_parser_header_Status_single_lengths[] = { + 0, 2, 2, 2, 2, 2, 2, 1, + 1, 0, 0, 0, 1, 0, 0, 0, + 1, 2, 0, 2, 2 + }; + + static const char _tmsrp_machine_parser_header_Status_range_lengths[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 1, 1, 1, 0, 1, 1, 1, + 0, 0, 0, 2, 2 + }; + + static const char _tmsrp_machine_parser_header_Status_index_offsets[] = { + 0, 0, 3, 6, 9, 12, 15, 18, + 20, 22, 24, 26, 28, 30, 32, 34, + 36, 38, 41, 42, 47 + }; + + static const char _tmsrp_machine_parser_header_Status_indicies[] = { + 0, 0, 1, 2, 2, 1, 3, 3, + 1, 4, 4, 1, 5, 5, 1, 6, + 6, 1, 7, 1, 8, 1, 9, 1, + 10, 1, 11, 1, 12, 1, 13, 1, + 14, 1, 15, 1, 16, 1, 17, 18, + 1, 1, 20, 1, 1, 1, 19, 22, + 1, 1, 1, 21, 0 + }; + + static const char _tmsrp_machine_parser_header_Status_trans_targs[] = { + 2, 0, 3, 4, 5, 6, 7, 8, + 9, 10, 11, 12, 13, 14, 15, 17, + 18, 16, 19, 20, 16, 20, 16 + }; + + static const char _tmsrp_machine_parser_header_Status_trans_actions[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 1, 0, 0, 3, 1, 0, 0, + 0, 5, 5, 1, 9, 0, 7 + }; + + static const char _tmsrp_machine_parser_header_Status_eof_actions[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 5, 0, 9, 7 + }; + + static const int tmsrp_machine_parser_header_Status_start = 1; + static const int tmsrp_machine_parser_header_Status_first_final = 17; + static const int tmsrp_machine_parser_header_Status_error = 0; + + static const int tmsrp_machine_parser_header_Status_en_main = 1; + + + /* #line 109 "./ragel/tmsrp_parser_header_Status.rl" */ + (void)(eof); + (void)(tmsrp_machine_parser_header_Status_first_final); + (void)(tmsrp_machine_parser_header_Status_error); + (void)(tmsrp_machine_parser_header_Status_en_main); + + /* #line 164 "./src/headers/tmsrp_header_Status.c" */ + { + cs = tmsrp_machine_parser_header_Status_start; + } + + /* #line 114 "./ragel/tmsrp_parser_header_Status.rl" */ + + /* #line 171 "./src/headers/tmsrp_header_Status.c" */ + { + int _klen; + unsigned int _trans; + const char *_acts; + unsigned int _nacts; + const char *_keys; + + if ( p == pe ) { + goto _test_eof; + } + if ( cs == 0 ) { + goto _out; + } _resume: - _keys = _tmsrp_machine_parser_header_Status_trans_keys + _tmsrp_machine_parser_header_Status_key_offsets[cs]; - _trans = _tmsrp_machine_parser_header_Status_index_offsets[cs]; - - _klen = _tmsrp_machine_parser_header_Status_single_lengths[cs]; - if ( _klen > 0 ) { - const char *_lower = _keys; - const char *_mid; - const char *_upper = _keys + _klen - 1; - while (1) { - if ( _upper < _lower ) - break; - - _mid = _lower + ((_upper-_lower) >> 1); - if ( (*p) < *_mid ) - _upper = _mid - 1; - else if ( (*p) > *_mid ) - _lower = _mid + 1; - else { - _trans += (_mid - _keys); - goto _match; - } - } - _keys += _klen; - _trans += _klen; - } - - _klen = _tmsrp_machine_parser_header_Status_range_lengths[cs]; - if ( _klen > 0 ) { - const char *_lower = _keys; - const char *_mid; - const char *_upper = _keys + (_klen<<1) - 2; - while (1) { - if ( _upper < _lower ) - break; - - _mid = _lower + (((_upper-_lower) >> 1) & ~1); - if ( (*p) < _mid[0] ) - _upper = _mid - 2; - else if ( (*p) > _mid[1] ) - _lower = _mid + 2; - else { - _trans += ((_mid - _keys)>>1); - goto _match; - } - } - _trans += _klen; - } + _keys = _tmsrp_machine_parser_header_Status_trans_keys + _tmsrp_machine_parser_header_Status_key_offsets[cs]; + _trans = _tmsrp_machine_parser_header_Status_index_offsets[cs]; + + _klen = _tmsrp_machine_parser_header_Status_single_lengths[cs]; + if ( _klen > 0 ) { + const char *_lower = _keys; + const char *_mid; + const char *_upper = _keys + _klen - 1; + while (1) { + if ( _upper < _lower ) { + break; + } + + _mid = _lower + ((_upper-_lower) >> 1); + if ( (*p) < *_mid ) { + _upper = _mid - 1; + } + else if ( (*p) > *_mid ) { + _lower = _mid + 1; + } + else { + _trans += (_mid - _keys); + goto _match; + } + } + _keys += _klen; + _trans += _klen; + } + + _klen = _tmsrp_machine_parser_header_Status_range_lengths[cs]; + if ( _klen > 0 ) { + const char *_lower = _keys; + const char *_mid; + const char *_upper = _keys + (_klen<<1) - 2; + while (1) { + if ( _upper < _lower ) { + break; + } + + _mid = _lower + (((_upper-_lower) >> 1) & ~1); + if ( (*p) < _mid[0] ) { + _upper = _mid - 2; + } + else if ( (*p) > _mid[1] ) { + _lower = _mid + 2; + } + else { + _trans += ((_mid - _keys)>>1); + goto _match; + } + } + _trans += _klen; + } _match: - _trans = _tmsrp_machine_parser_header_Status_indicies[_trans]; - cs = _tmsrp_machine_parser_header_Status_trans_targs[_trans]; - - if ( _tmsrp_machine_parser_header_Status_trans_actions[_trans] == 0 ) - goto _again; - - _acts = _tmsrp_machine_parser_header_Status_actions + _tmsrp_machine_parser_header_Status_trans_actions[_trans]; - _nacts = (unsigned int) *_acts++; - while ( _nacts-- > 0 ) - { - switch ( *_acts++ ) - { - case 0: -/* #line 41 "./ragel/tmsrp_parser_header_Status.rl" */ - { - tag_start = p; - } - break; - case 1: -/* #line 45 "./ragel/tmsrp_parser_header_Status.rl" */ - { - TSK_PARSER_SET_INT(hdr_Status->_namespace); - } - break; - case 2: -/* #line 49 "./ragel/tmsrp_parser_header_Status.rl" */ - { - TSK_PARSER_SET_INT(hdr_Status->code); - } - break; - case 3: -/* #line 53 "./ragel/tmsrp_parser_header_Status.rl" */ - { - TSK_PARSER_SET_STRING(hdr_Status->reason); - } - break; -/* #line 269 "./src/headers/tmsrp_header_Status.c" */ - } - } + _trans = _tmsrp_machine_parser_header_Status_indicies[_trans]; + cs = _tmsrp_machine_parser_header_Status_trans_targs[_trans]; + + if ( _tmsrp_machine_parser_header_Status_trans_actions[_trans] == 0 ) { + goto _again; + } + + _acts = _tmsrp_machine_parser_header_Status_actions + _tmsrp_machine_parser_header_Status_trans_actions[_trans]; + _nacts = (unsigned int) *_acts++; + while ( _nacts-- > 0 ) { + switch ( *_acts++ ) { + case 0: + /* #line 41 "./ragel/tmsrp_parser_header_Status.rl" */ + { + tag_start = p; + } + break; + case 1: + /* #line 45 "./ragel/tmsrp_parser_header_Status.rl" */ + { + TSK_PARSER_SET_INT(hdr_Status->_namespace); + } + break; + case 2: + /* #line 49 "./ragel/tmsrp_parser_header_Status.rl" */ + { + TSK_PARSER_SET_INT(hdr_Status->code); + } + break; + case 3: + /* #line 53 "./ragel/tmsrp_parser_header_Status.rl" */ + { + TSK_PARSER_SET_STRING(hdr_Status->reason); + } + break; + /* #line 269 "./src/headers/tmsrp_header_Status.c" */ + } + } _again: - if ( cs == 0 ) - goto _out; - if ( ++p != pe ) - goto _resume; - _test_eof: {} - if ( p == eof ) - { - const char *__acts = _tmsrp_machine_parser_header_Status_actions + _tmsrp_machine_parser_header_Status_eof_actions[cs]; - unsigned int __nacts = (unsigned int) *__acts++; - while ( __nacts-- > 0 ) { - switch ( *__acts++ ) { - case 0: -/* #line 41 "./ragel/tmsrp_parser_header_Status.rl" */ - { - tag_start = p; - } - break; - case 2: -/* #line 49 "./ragel/tmsrp_parser_header_Status.rl" */ - { - TSK_PARSER_SET_INT(hdr_Status->code); - } - break; - case 3: -/* #line 53 "./ragel/tmsrp_parser_header_Status.rl" */ - { - TSK_PARSER_SET_STRING(hdr_Status->reason); - } - break; -/* #line 303 "./src/headers/tmsrp_header_Status.c" */ - } - } - } - - _out: {} - } - -/* #line 115 "./ragel/tmsrp_parser_header_Status.rl" */ - TSK_RAGEL_DISABLE_WARNINGS_END() - - if( cs < -/* #line 315 "./src/headers/tmsrp_header_Status.c" */ -17 -/* #line 117 "./ragel/tmsrp_parser_header_Status.rl" */ - ){ - TSK_DEBUG_ERROR("Failed to parse 'Status' header."); - TSK_OBJECT_SAFE_FREE(hdr_Status); - } - - return hdr_Status; + if ( cs == 0 ) { + goto _out; + } + if ( ++p != pe ) { + goto _resume; + } +_test_eof: { + } + if ( p == eof ) { + const char *__acts = _tmsrp_machine_parser_header_Status_actions + _tmsrp_machine_parser_header_Status_eof_actions[cs]; + unsigned int __nacts = (unsigned int) *__acts++; + while ( __nacts-- > 0 ) { + switch ( *__acts++ ) { + case 0: + /* #line 41 "./ragel/tmsrp_parser_header_Status.rl" */ + { + tag_start = p; + } + break; + case 2: + /* #line 49 "./ragel/tmsrp_parser_header_Status.rl" */ + { + TSK_PARSER_SET_INT(hdr_Status->code); + } + break; + case 3: + /* #line 53 "./ragel/tmsrp_parser_header_Status.rl" */ + { + TSK_PARSER_SET_STRING(hdr_Status->reason); + } + break; + /* #line 303 "./src/headers/tmsrp_header_Status.c" */ + } + } + } + +_out: { + } + } + + /* #line 115 "./ragel/tmsrp_parser_header_Status.rl" */ + TSK_RAGEL_DISABLE_WARNINGS_END() + + if( cs < + /* #line 315 "./src/headers/tmsrp_header_Status.c" */ + 17 + /* #line 117 "./ragel/tmsrp_parser_header_Status.rl" */ + ) { + TSK_DEBUG_ERROR("Failed to parse 'Status' header."); + TSK_OBJECT_SAFE_FREE(hdr_Status); + } + + return hdr_Status; } @@ -334,44 +344,43 @@ _again: static tsk_object_t* tmsrp_header_Status_ctor(tsk_object_t *self, va_list * app) { - tmsrp_header_Status_t *Status = self; - if(Status){ - TMSRP_HEADER(Status)->type = tmsrp_htype_Status; - TMSRP_HEADER(Status)->tostring = tmsrp_header_Status_tostring; + tmsrp_header_Status_t *Status = self; + if(Status) { + TMSRP_HEADER(Status)->type = tmsrp_htype_Status; + TMSRP_HEADER(Status)->tostring = tmsrp_header_Status_tostring; #if defined(__GNUC__) - Status->_namespace = (short)va_arg(*app, int); - Status->code = (short)va_arg(*app, int); + Status->_namespace = (short)va_arg(*app, int); + Status->code = (short)va_arg(*app, int); #else - Status->_namespace = va_arg(*app, short); - Status->code = va_arg(*app, short); + Status->_namespace = va_arg(*app, short); + Status->code = va_arg(*app, short); #endif - Status->reason = tsk_strdup( va_arg(*app, const char*) ); - } - else{ - TSK_DEBUG_ERROR("Failed to create new Status header."); - } - return self; + Status->reason = tsk_strdup( va_arg(*app, const char*) ); + } + else { + TSK_DEBUG_ERROR("Failed to create new Status header."); + } + return self; } static tsk_object_t* tmsrp_header_Status_dtor(tsk_object_t *self) { - tmsrp_header_Status_t *Status = self; - if(Status){ - TSK_FREE(Status->reason); - } - else{ - TSK_DEBUG_ERROR("Null Status header."); - } - - return self; + tmsrp_header_Status_t *Status = self; + if(Status) { + TSK_FREE(Status->reason); + } + else { + TSK_DEBUG_ERROR("Null Status header."); + } + + return self; } -static const tsk_object_def_t tmsrp_header_Status_def_s = -{ - sizeof(tmsrp_header_Status_t), - tmsrp_header_Status_ctor, - tmsrp_header_Status_dtor, - tsk_null +static const tsk_object_def_t tmsrp_header_Status_def_s = { + sizeof(tmsrp_header_Status_t), + tmsrp_header_Status_ctor, + tmsrp_header_Status_dtor, + tsk_null }; const tsk_object_def_t *tmsrp_header_Status_def_t = &tmsrp_header_Status_def_s; diff --git a/tinyMSRP/src/headers/tmsrp_header_Success-Report.c b/tinyMSRP/src/headers/tmsrp_header_Success-Report.c index bb19c9e..afd046b 100755 --- a/tinyMSRP/src/headers/tmsrp_header_Success-Report.c +++ b/tinyMSRP/src/headers/tmsrp_header_Success-Report.c @@ -2,19 +2,19 @@ /* #line 1 "./ragel/tmsrp_parser_header_Success-Report.rl" */ /* * Copyright (C) 2009-2015 Mamadou DIOP. -* +* * This file is part of Open Source Doubango Framework. * * DOUBANGO is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. -* +* * DOUBANGO is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. -* +* * You should have received a copy of the GNU General Public License * along with DOUBANGO. * @@ -40,265 +40,275 @@ tmsrp_header_Success_Report_t* tmsrp_header_Success_Report_create(tsk_bool_t isSuccess) { - return tsk_object_new(TMSRP_HEADER_SUCCESS_REPORT_VA_ARGS(isSuccess)); + return tsk_object_new(TMSRP_HEADER_SUCCESS_REPORT_VA_ARGS(isSuccess)); } tmsrp_header_Success_Report_t* tmsrp_header_Success_Report_create_null() { - return tmsrp_header_Success_Report_create(tsk_false); + return tmsrp_header_Success_Report_create(tsk_false); } int tmsrp_header_Success_Report_tostring(const tmsrp_header_t* header, tsk_buffer_t* output) { - if(header){ - const tmsrp_header_Success_Report_t *Success_Report = (const tmsrp_header_Success_Report_t *)header; - const char* value = Success_Report->yes ? "yes" : "no"; - return tsk_buffer_append(output, value, strlen(value)); - } + if(header) { + const tmsrp_header_Success_Report_t *Success_Report = (const tmsrp_header_Success_Report_t *)header; + const char* value = Success_Report->yes ? "yes" : "no"; + return tsk_buffer_append(output, value, strlen(value)); + } - return -1; + return -1; } tmsrp_header_Success_Report_t *tmsrp_header_Success_Report_parse(const char *data, tsk_size_t size) { - int cs = 0; - const char *p = data; - const char *pe = p + size; - const char *eof = pe; - tmsrp_header_Success_Report_t *hdr_Success_Report = tmsrp_header_Success_Report_create_null(); - - TSK_RAGEL_DISABLE_WARNINGS_BEGIN() - -/* #line 73 "./src/headers/tmsrp_header_Success-Report.c" */ -static const char _tmsrp_machine_parser_header_Success_Report_actions[] = { - 0, 1, 0, 1, 1 -}; - -static const char _tmsrp_machine_parser_header_Success_Report_key_offsets[] = { - 0, 0, 2, 4, 6, 8, 10, 12, - 14, 15, 17, 19, 21, 23, 25, 27, - 28, 29, 33, 35, 36, 38, 40, 41, - 41 -}; - -static const char _tmsrp_machine_parser_header_Success_Report_trans_keys[] = { - 83, 115, 85, 117, 67, 99, 67, 99, - 69, 101, 83, 115, 83, 115, 45, 82, - 114, 69, 101, 80, 112, 79, 111, 82, - 114, 84, 116, 58, 32, 78, 89, 110, - 121, 79, 111, 10, 69, 101, 83, 115, - 13, 13, 0 -}; - -static const char _tmsrp_machine_parser_header_Success_Report_single_lengths[] = { - 0, 2, 2, 2, 2, 2, 2, 2, - 1, 2, 2, 2, 2, 2, 2, 1, - 1, 4, 2, 1, 2, 2, 1, 0, - 1 -}; - -static const char _tmsrp_machine_parser_header_Success_Report_range_lengths[] = { - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0 -}; - -static const char _tmsrp_machine_parser_header_Success_Report_index_offsets[] = { - 0, 0, 3, 6, 9, 12, 15, 18, - 21, 23, 26, 29, 32, 35, 38, 41, - 43, 45, 50, 53, 55, 58, 61, 63, - 64 -}; - -static const char _tmsrp_machine_parser_header_Success_Report_indicies[] = { - 0, 0, 1, 2, 2, 1, 3, 3, - 1, 4, 4, 1, 5, 5, 1, 6, - 6, 1, 7, 7, 1, 8, 1, 9, - 9, 1, 10, 10, 1, 11, 11, 1, - 12, 12, 1, 13, 13, 1, 14, 14, - 1, 15, 1, 16, 1, 17, 18, 17, - 18, 1, 19, 19, 1, 20, 1, 21, - 21, 1, 22, 22, 1, 23, 1, 1, - 24, 1, 0 -}; - -static const char _tmsrp_machine_parser_header_Success_Report_trans_targs[] = { - 2, 0, 3, 4, 5, 6, 7, 8, - 9, 10, 11, 12, 13, 14, 15, 16, - 17, 18, 20, 22, 23, 21, 24, 19, - 19 -}; - -static const char _tmsrp_machine_parser_header_Success_Report_trans_actions[] = { - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 3, - 1 -}; - -static const char _tmsrp_machine_parser_header_Success_Report_eof_actions[] = { - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 3, 0, - 1 -}; - -static const int tmsrp_machine_parser_header_Success_Report_start = 1; -static const int tmsrp_machine_parser_header_Success_Report_first_final = 22; -static const int tmsrp_machine_parser_header_Success_Report_error = 0; - -static const int tmsrp_machine_parser_header_Success_Report_en_main = 1; - - -/* #line 88 "./ragel/tmsrp_parser_header_Success-Report.rl" */ - (void)(eof); - (void)(tmsrp_machine_parser_header_Success_Report_first_final); - (void)(tmsrp_machine_parser_header_Success_Report_error); - (void)(tmsrp_machine_parser_header_Success_Report_en_main); - -/* #line 161 "./src/headers/tmsrp_header_Success-Report.c" */ - { - cs = tmsrp_machine_parser_header_Success_Report_start; - } - -/* #line 93 "./ragel/tmsrp_parser_header_Success-Report.rl" */ - -/* #line 168 "./src/headers/tmsrp_header_Success-Report.c" */ - { - int _klen; - unsigned int _trans; - const char *_acts; - unsigned int _nacts; - const char *_keys; - - if ( p == pe ) - goto _test_eof; - if ( cs == 0 ) - goto _out; + int cs = 0; + const char *p = data; + const char *pe = p + size; + const char *eof = pe; + tmsrp_header_Success_Report_t *hdr_Success_Report = tmsrp_header_Success_Report_create_null(); + + TSK_RAGEL_DISABLE_WARNINGS_BEGIN() + + /* #line 73 "./src/headers/tmsrp_header_Success-Report.c" */ + static const char _tmsrp_machine_parser_header_Success_Report_actions[] = { + 0, 1, 0, 1, 1 + }; + + static const char _tmsrp_machine_parser_header_Success_Report_key_offsets[] = { + 0, 0, 2, 4, 6, 8, 10, 12, + 14, 15, 17, 19, 21, 23, 25, 27, + 28, 29, 33, 35, 36, 38, 40, 41, + 41 + }; + + static const char _tmsrp_machine_parser_header_Success_Report_trans_keys[] = { + 83, 115, 85, 117, 67, 99, 67, 99, + 69, 101, 83, 115, 83, 115, 45, 82, + 114, 69, 101, 80, 112, 79, 111, 82, + 114, 84, 116, 58, 32, 78, 89, 110, + 121, 79, 111, 10, 69, 101, 83, 115, + 13, 13, 0 + }; + + static const char _tmsrp_machine_parser_header_Success_Report_single_lengths[] = { + 0, 2, 2, 2, 2, 2, 2, 2, + 1, 2, 2, 2, 2, 2, 2, 1, + 1, 4, 2, 1, 2, 2, 1, 0, + 1 + }; + + static const char _tmsrp_machine_parser_header_Success_Report_range_lengths[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0 + }; + + static const char _tmsrp_machine_parser_header_Success_Report_index_offsets[] = { + 0, 0, 3, 6, 9, 12, 15, 18, + 21, 23, 26, 29, 32, 35, 38, 41, + 43, 45, 50, 53, 55, 58, 61, 63, + 64 + }; + + static const char _tmsrp_machine_parser_header_Success_Report_indicies[] = { + 0, 0, 1, 2, 2, 1, 3, 3, + 1, 4, 4, 1, 5, 5, 1, 6, + 6, 1, 7, 7, 1, 8, 1, 9, + 9, 1, 10, 10, 1, 11, 11, 1, + 12, 12, 1, 13, 13, 1, 14, 14, + 1, 15, 1, 16, 1, 17, 18, 17, + 18, 1, 19, 19, 1, 20, 1, 21, + 21, 1, 22, 22, 1, 23, 1, 1, + 24, 1, 0 + }; + + static const char _tmsrp_machine_parser_header_Success_Report_trans_targs[] = { + 2, 0, 3, 4, 5, 6, 7, 8, + 9, 10, 11, 12, 13, 14, 15, 16, + 17, 18, 20, 22, 23, 21, 24, 19, + 19 + }; + + static const char _tmsrp_machine_parser_header_Success_Report_trans_actions[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 3, + 1 + }; + + static const char _tmsrp_machine_parser_header_Success_Report_eof_actions[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 3, 0, + 1 + }; + + static const int tmsrp_machine_parser_header_Success_Report_start = 1; + static const int tmsrp_machine_parser_header_Success_Report_first_final = 22; + static const int tmsrp_machine_parser_header_Success_Report_error = 0; + + static const int tmsrp_machine_parser_header_Success_Report_en_main = 1; + + + /* #line 88 "./ragel/tmsrp_parser_header_Success-Report.rl" */ + (void)(eof); + (void)(tmsrp_machine_parser_header_Success_Report_first_final); + (void)(tmsrp_machine_parser_header_Success_Report_error); + (void)(tmsrp_machine_parser_header_Success_Report_en_main); + + /* #line 161 "./src/headers/tmsrp_header_Success-Report.c" */ + { + cs = tmsrp_machine_parser_header_Success_Report_start; + } + + /* #line 93 "./ragel/tmsrp_parser_header_Success-Report.rl" */ + + /* #line 168 "./src/headers/tmsrp_header_Success-Report.c" */ + { + int _klen; + unsigned int _trans; + const char *_acts; + unsigned int _nacts; + const char *_keys; + + if ( p == pe ) { + goto _test_eof; + } + if ( cs == 0 ) { + goto _out; + } _resume: - _keys = _tmsrp_machine_parser_header_Success_Report_trans_keys + _tmsrp_machine_parser_header_Success_Report_key_offsets[cs]; - _trans = _tmsrp_machine_parser_header_Success_Report_index_offsets[cs]; - - _klen = _tmsrp_machine_parser_header_Success_Report_single_lengths[cs]; - if ( _klen > 0 ) { - const char *_lower = _keys; - const char *_mid; - const char *_upper = _keys + _klen - 1; - while (1) { - if ( _upper < _lower ) - break; - - _mid = _lower + ((_upper-_lower) >> 1); - if ( (*p) < *_mid ) - _upper = _mid - 1; - else if ( (*p) > *_mid ) - _lower = _mid + 1; - else { - _trans += (_mid - _keys); - goto _match; - } - } - _keys += _klen; - _trans += _klen; - } - - _klen = _tmsrp_machine_parser_header_Success_Report_range_lengths[cs]; - if ( _klen > 0 ) { - const char *_lower = _keys; - const char *_mid; - const char *_upper = _keys + (_klen<<1) - 2; - while (1) { - if ( _upper < _lower ) - break; - - _mid = _lower + (((_upper-_lower) >> 1) & ~1); - if ( (*p) < _mid[0] ) - _upper = _mid - 2; - else if ( (*p) > _mid[1] ) - _lower = _mid + 2; - else { - _trans += ((_mid - _keys)>>1); - goto _match; - } - } - _trans += _klen; - } + _keys = _tmsrp_machine_parser_header_Success_Report_trans_keys + _tmsrp_machine_parser_header_Success_Report_key_offsets[cs]; + _trans = _tmsrp_machine_parser_header_Success_Report_index_offsets[cs]; + + _klen = _tmsrp_machine_parser_header_Success_Report_single_lengths[cs]; + if ( _klen > 0 ) { + const char *_lower = _keys; + const char *_mid; + const char *_upper = _keys + _klen - 1; + while (1) { + if ( _upper < _lower ) { + break; + } + + _mid = _lower + ((_upper-_lower) >> 1); + if ( (*p) < *_mid ) { + _upper = _mid - 1; + } + else if ( (*p) > *_mid ) { + _lower = _mid + 1; + } + else { + _trans += (_mid - _keys); + goto _match; + } + } + _keys += _klen; + _trans += _klen; + } + + _klen = _tmsrp_machine_parser_header_Success_Report_range_lengths[cs]; + if ( _klen > 0 ) { + const char *_lower = _keys; + const char *_mid; + const char *_upper = _keys + (_klen<<1) - 2; + while (1) { + if ( _upper < _lower ) { + break; + } + + _mid = _lower + (((_upper-_lower) >> 1) & ~1); + if ( (*p) < _mid[0] ) { + _upper = _mid - 2; + } + else if ( (*p) > _mid[1] ) { + _lower = _mid + 2; + } + else { + _trans += ((_mid - _keys)>>1); + goto _match; + } + } + _trans += _klen; + } _match: - _trans = _tmsrp_machine_parser_header_Success_Report_indicies[_trans]; - cs = _tmsrp_machine_parser_header_Success_Report_trans_targs[_trans]; - - if ( _tmsrp_machine_parser_header_Success_Report_trans_actions[_trans] == 0 ) - goto _again; - - _acts = _tmsrp_machine_parser_header_Success_Report_actions + _tmsrp_machine_parser_header_Success_Report_trans_actions[_trans]; - _nacts = (unsigned int) *_acts++; - while ( _nacts-- > 0 ) - { - switch ( *_acts++ ) - { - case 0: -/* #line 41 "./ragel/tmsrp_parser_header_Success-Report.rl" */ - { - hdr_Success_Report->yes = 1; - } - break; - case 1: -/* #line 45 "./ragel/tmsrp_parser_header_Success-Report.rl" */ - { - hdr_Success_Report->yes = 0; - } - break; -/* #line 254 "./src/headers/tmsrp_header_Success-Report.c" */ - } - } + _trans = _tmsrp_machine_parser_header_Success_Report_indicies[_trans]; + cs = _tmsrp_machine_parser_header_Success_Report_trans_targs[_trans]; + + if ( _tmsrp_machine_parser_header_Success_Report_trans_actions[_trans] == 0 ) { + goto _again; + } + + _acts = _tmsrp_machine_parser_header_Success_Report_actions + _tmsrp_machine_parser_header_Success_Report_trans_actions[_trans]; + _nacts = (unsigned int) *_acts++; + while ( _nacts-- > 0 ) { + switch ( *_acts++ ) { + case 0: + /* #line 41 "./ragel/tmsrp_parser_header_Success-Report.rl" */ + { + hdr_Success_Report->yes = 1; + } + break; + case 1: + /* #line 45 "./ragel/tmsrp_parser_header_Success-Report.rl" */ + { + hdr_Success_Report->yes = 0; + } + break; + /* #line 254 "./src/headers/tmsrp_header_Success-Report.c" */ + } + } _again: - if ( cs == 0 ) - goto _out; - if ( ++p != pe ) - goto _resume; - _test_eof: {} - if ( p == eof ) - { - const char *__acts = _tmsrp_machine_parser_header_Success_Report_actions + _tmsrp_machine_parser_header_Success_Report_eof_actions[cs]; - unsigned int __nacts = (unsigned int) *__acts++; - while ( __nacts-- > 0 ) { - switch ( *__acts++ ) { - case 0: -/* #line 41 "./ragel/tmsrp_parser_header_Success-Report.rl" */ - { - hdr_Success_Report->yes = 1; - } - break; - case 1: -/* #line 45 "./ragel/tmsrp_parser_header_Success-Report.rl" */ - { - hdr_Success_Report->yes = 0; - } - break; -/* #line 282 "./src/headers/tmsrp_header_Success-Report.c" */ - } - } - } - - _out: {} - } - -/* #line 94 "./ragel/tmsrp_parser_header_Success-Report.rl" */ - TSK_RAGEL_DISABLE_WARNINGS_END() - - if( cs < -/* #line 294 "./src/headers/tmsrp_header_Success-Report.c" */ -22 -/* #line 96 "./ragel/tmsrp_parser_header_Success-Report.rl" */ - ){ - TSK_DEBUG_ERROR("Failed to parse 'Success-Report' header."); - TSK_OBJECT_SAFE_FREE(hdr_Success_Report); - } - - return hdr_Success_Report; + if ( cs == 0 ) { + goto _out; + } + if ( ++p != pe ) { + goto _resume; + } +_test_eof: { + } + if ( p == eof ) { + const char *__acts = _tmsrp_machine_parser_header_Success_Report_actions + _tmsrp_machine_parser_header_Success_Report_eof_actions[cs]; + unsigned int __nacts = (unsigned int) *__acts++; + while ( __nacts-- > 0 ) { + switch ( *__acts++ ) { + case 0: + /* #line 41 "./ragel/tmsrp_parser_header_Success-Report.rl" */ + { + hdr_Success_Report->yes = 1; + } + break; + case 1: + /* #line 45 "./ragel/tmsrp_parser_header_Success-Report.rl" */ + { + hdr_Success_Report->yes = 0; + } + break; + /* #line 282 "./src/headers/tmsrp_header_Success-Report.c" */ + } + } + } + +_out: { + } + } + + /* #line 94 "./ragel/tmsrp_parser_header_Success-Report.rl" */ + TSK_RAGEL_DISABLE_WARNINGS_END() + + if( cs < + /* #line 294 "./src/headers/tmsrp_header_Success-Report.c" */ + 22 + /* #line 96 "./ragel/tmsrp_parser_header_Success-Report.rl" */ + ) { + TSK_DEBUG_ERROR("Failed to parse 'Success-Report' header."); + TSK_OBJECT_SAFE_FREE(hdr_Success_Report); + } + + return hdr_Success_Report; } @@ -313,37 +323,36 @@ _again: static tsk_object_t* tmsrp_header_Success_Report_ctor(tsk_object_t *self, va_list * app) { - tmsrp_header_Success_Report_t *Success_Report = self; - if(Success_Report){ - TMSRP_HEADER(Success_Report)->type = tmsrp_htype_Success_Report; - TMSRP_HEADER(Success_Report)->tostring = tmsrp_header_Success_Report_tostring; - - Success_Report->yes = va_arg(*app, tsk_bool_t) ? 1 : 0; - } - else{ - TSK_DEBUG_ERROR("Failed to create new Success-Report header."); - } - return self; + tmsrp_header_Success_Report_t *Success_Report = self; + if(Success_Report) { + TMSRP_HEADER(Success_Report)->type = tmsrp_htype_Success_Report; + TMSRP_HEADER(Success_Report)->tostring = tmsrp_header_Success_Report_tostring; + + Success_Report->yes = va_arg(*app, tsk_bool_t) ? 1 : 0; + } + else { + TSK_DEBUG_ERROR("Failed to create new Success-Report header."); + } + return self; } static tsk_object_t* tmsrp_header_Success_Report_dtor(tsk_object_t *self) { - tmsrp_header_Success_Report_t *Success_Report = self; - if(Success_Report){ - } - else{ - TSK_DEBUG_ERROR("Null Success-Report header."); - } - - return self; + tmsrp_header_Success_Report_t *Success_Report = self; + if(Success_Report) { + } + else { + TSK_DEBUG_ERROR("Null Success-Report header."); + } + + return self; } -static const tsk_object_def_t tmsrp_header_Success_Report_def_s = -{ - sizeof(tmsrp_header_Success_Report_t), - tmsrp_header_Success_Report_ctor, - tmsrp_header_Success_Report_dtor, - tsk_null +static const tsk_object_def_t tmsrp_header_Success_Report_def_s = { + sizeof(tmsrp_header_Success_Report_t), + tmsrp_header_Success_Report_ctor, + tmsrp_header_Success_Report_dtor, + tsk_null }; const tsk_object_def_t *tmsrp_header_Success_Report_def_t = &tmsrp_header_Success_Report_def_s; diff --git a/tinyMSRP/src/headers/tmsrp_header_To-Path.c b/tinyMSRP/src/headers/tmsrp_header_To-Path.c index 3346311..3473209 100755 --- a/tinyMSRP/src/headers/tmsrp_header_To-Path.c +++ b/tinyMSRP/src/headers/tmsrp_header_To-Path.c @@ -2,19 +2,19 @@ /* #line 1 "./ragel/tmsrp_parser_header_To-Path.rl" */ /* * Copyright (C) 2009-2015 Mamadou DIOP. -* +* * This file is part of Open Source Doubango Framework. * * DOUBANGO is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. -* +* * DOUBANGO is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. -* +* * You should have received a copy of the GNU General Public License * along with DOUBANGO. * @@ -40,299 +40,309 @@ tmsrp_header_To_Path_t* tmsrp_header_To_Path_create(const tmsrp_uri_t* uri) { - return tsk_object_new(TMSRP_HEADER_TO_PATH_VA_ARGS(uri)); + return tsk_object_new(TMSRP_HEADER_TO_PATH_VA_ARGS(uri)); } tmsrp_header_To_Path_t* tmsrp_header_To_Path_create_null() { - return tmsrp_header_To_Path_create(tsk_null); + return tmsrp_header_To_Path_create(tsk_null); } int tmsrp_header_To_Path_tostring(const tmsrp_header_t* header, tsk_buffer_t* output) { - if(header){ - const tmsrp_header_To_Path_t *To_Path = (const tmsrp_header_To_Path_t *)header; - const tsk_list_item_t *item; - - if(To_Path->uri){ - tmsrp_uri_serialize(To_Path->uri, output); - } - tsk_list_foreach(item, To_Path->otherURIs){ - tsk_buffer_append(output, " ", 1); - tmsrp_uri_serialize(TMSRP_URI(item->data), output); - } - } - - return -1; + if(header) { + const tmsrp_header_To_Path_t *To_Path = (const tmsrp_header_To_Path_t *)header; + const tsk_list_item_t *item; + + if(To_Path->uri) { + tmsrp_uri_serialize(To_Path->uri, output); + } + tsk_list_foreach(item, To_Path->otherURIs) { + tsk_buffer_append(output, " ", 1); + tmsrp_uri_serialize(TMSRP_URI(item->data), output); + } + } + + return -1; } tmsrp_header_To_Path_t *tmsrp_header_To_Path_parse(const char *data, tsk_size_t size) { - int cs = 0; - const char *p = data; - const char *pe = p + size; - const char *eof = pe; - tmsrp_header_To_Path_t *header = tmsrp_header_To_Path_create_null(); - - const char *tag_start = tsk_null; - - TSK_RAGEL_DISABLE_WARNINGS_BEGIN() - -/* #line 82 "./src/headers/tmsrp_header_To-Path.c" */ -static const char _tmsrp_machine_parser_header_To_Path_actions[] = { - 0, 1, 0, 1, 1, 2, 0, 1 - -}; - -static const char _tmsrp_machine_parser_header_To_Path_key_offsets[] = { - 0, 0, 2, 4, 5, 7, 9, 11, - 13, 14, 15, 16, 18, 20 -}; - -static const char _tmsrp_machine_parser_header_To_Path_trans_keys[] = { - 84, 116, 79, 111, 45, 80, 112, 65, - 97, 84, 116, 72, 104, 58, 32, 10, - 13, 32, 13, 32, 0 -}; - -static const char _tmsrp_machine_parser_header_To_Path_single_lengths[] = { - 0, 2, 2, 1, 2, 2, 2, 2, - 1, 1, 1, 2, 2, 0 -}; - -static const char _tmsrp_machine_parser_header_To_Path_range_lengths[] = { - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0 -}; - -static const char _tmsrp_machine_parser_header_To_Path_index_offsets[] = { - 0, 0, 3, 6, 8, 11, 14, 17, - 20, 22, 24, 26, 29, 32 -}; - -static const char _tmsrp_machine_parser_header_To_Path_trans_targs[] = { - 2, 2, 0, 3, 3, 0, 4, 0, - 5, 5, 0, 6, 6, 0, 7, 7, - 0, 8, 8, 0, 9, 0, 11, 0, - 13, 0, 10, 11, 12, 10, 11, 12, - 0, 0 -}; - -static const char _tmsrp_machine_parser_header_To_Path_trans_actions[] = { - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 5, 5, 1, 3, 3, 0, - 0, 0 -}; - -static const char _tmsrp_machine_parser_header_To_Path_eof_actions[] = { - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 5, 3, 0 -}; - -static const int tmsrp_machine_parser_header_To_Path_start = 1; -static const int tmsrp_machine_parser_header_To_Path_first_final = 11; -static const int tmsrp_machine_parser_header_To_Path_error = 0; - -static const int tmsrp_machine_parser_header_To_Path_en_main = 1; - - -/* #line 111 "./ragel/tmsrp_parser_header_To-Path.rl" */ - (void)(eof); - (void)(tmsrp_machine_parser_header_To_Path_first_final); - (void)(tmsrp_machine_parser_header_To_Path_error); - (void)(tmsrp_machine_parser_header_To_Path_en_main); - -/* #line 148 "./src/headers/tmsrp_header_To-Path.c" */ - { - cs = tmsrp_machine_parser_header_To_Path_start; - } - -/* #line 116 "./ragel/tmsrp_parser_header_To-Path.rl" */ - -/* #line 155 "./src/headers/tmsrp_header_To-Path.c" */ - { - int _klen; - unsigned int _trans; - const char *_acts; - unsigned int _nacts; - const char *_keys; - - if ( p == pe ) - goto _test_eof; - if ( cs == 0 ) - goto _out; + int cs = 0; + const char *p = data; + const char *pe = p + size; + const char *eof = pe; + tmsrp_header_To_Path_t *header = tmsrp_header_To_Path_create_null(); + + const char *tag_start = tsk_null; + + TSK_RAGEL_DISABLE_WARNINGS_BEGIN() + + /* #line 82 "./src/headers/tmsrp_header_To-Path.c" */ + static const char _tmsrp_machine_parser_header_To_Path_actions[] = { + 0, 1, 0, 1, 1, 2, 0, 1 + + }; + + static const char _tmsrp_machine_parser_header_To_Path_key_offsets[] = { + 0, 0, 2, 4, 5, 7, 9, 11, + 13, 14, 15, 16, 18, 20 + }; + + static const char _tmsrp_machine_parser_header_To_Path_trans_keys[] = { + 84, 116, 79, 111, 45, 80, 112, 65, + 97, 84, 116, 72, 104, 58, 32, 10, + 13, 32, 13, 32, 0 + }; + + static const char _tmsrp_machine_parser_header_To_Path_single_lengths[] = { + 0, 2, 2, 1, 2, 2, 2, 2, + 1, 1, 1, 2, 2, 0 + }; + + static const char _tmsrp_machine_parser_header_To_Path_range_lengths[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0 + }; + + static const char _tmsrp_machine_parser_header_To_Path_index_offsets[] = { + 0, 0, 3, 6, 8, 11, 14, 17, + 20, 22, 24, 26, 29, 32 + }; + + static const char _tmsrp_machine_parser_header_To_Path_trans_targs[] = { + 2, 2, 0, 3, 3, 0, 4, 0, + 5, 5, 0, 6, 6, 0, 7, 7, + 0, 8, 8, 0, 9, 0, 11, 0, + 13, 0, 10, 11, 12, 10, 11, 12, + 0, 0 + }; + + static const char _tmsrp_machine_parser_header_To_Path_trans_actions[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 5, 5, 1, 3, 3, 0, + 0, 0 + }; + + static const char _tmsrp_machine_parser_header_To_Path_eof_actions[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 5, 3, 0 + }; + + static const int tmsrp_machine_parser_header_To_Path_start = 1; + static const int tmsrp_machine_parser_header_To_Path_first_final = 11; + static const int tmsrp_machine_parser_header_To_Path_error = 0; + + static const int tmsrp_machine_parser_header_To_Path_en_main = 1; + + + /* #line 111 "./ragel/tmsrp_parser_header_To-Path.rl" */ + (void)(eof); + (void)(tmsrp_machine_parser_header_To_Path_first_final); + (void)(tmsrp_machine_parser_header_To_Path_error); + (void)(tmsrp_machine_parser_header_To_Path_en_main); + + /* #line 148 "./src/headers/tmsrp_header_To-Path.c" */ + { + cs = tmsrp_machine_parser_header_To_Path_start; + } + + /* #line 116 "./ragel/tmsrp_parser_header_To-Path.rl" */ + + /* #line 155 "./src/headers/tmsrp_header_To-Path.c" */ + { + int _klen; + unsigned int _trans; + const char *_acts; + unsigned int _nacts; + const char *_keys; + + if ( p == pe ) { + goto _test_eof; + } + if ( cs == 0 ) { + goto _out; + } _resume: - _keys = _tmsrp_machine_parser_header_To_Path_trans_keys + _tmsrp_machine_parser_header_To_Path_key_offsets[cs]; - _trans = _tmsrp_machine_parser_header_To_Path_index_offsets[cs]; - - _klen = _tmsrp_machine_parser_header_To_Path_single_lengths[cs]; - if ( _klen > 0 ) { - const char *_lower = _keys; - const char *_mid; - const char *_upper = _keys + _klen - 1; - while (1) { - if ( _upper < _lower ) - break; - - _mid = _lower + ((_upper-_lower) >> 1); - if ( (*p) < *_mid ) - _upper = _mid - 1; - else if ( (*p) > *_mid ) - _lower = _mid + 1; - else { - _trans += (_mid - _keys); - goto _match; - } - } - _keys += _klen; - _trans += _klen; - } - - _klen = _tmsrp_machine_parser_header_To_Path_range_lengths[cs]; - if ( _klen > 0 ) { - const char *_lower = _keys; - const char *_mid; - const char *_upper = _keys + (_klen<<1) - 2; - while (1) { - if ( _upper < _lower ) - break; - - _mid = _lower + (((_upper-_lower) >> 1) & ~1); - if ( (*p) < _mid[0] ) - _upper = _mid - 2; - else if ( (*p) > _mid[1] ) - _lower = _mid + 2; - else { - _trans += ((_mid - _keys)>>1); - goto _match; - } - } - _trans += _klen; - } + _keys = _tmsrp_machine_parser_header_To_Path_trans_keys + _tmsrp_machine_parser_header_To_Path_key_offsets[cs]; + _trans = _tmsrp_machine_parser_header_To_Path_index_offsets[cs]; + + _klen = _tmsrp_machine_parser_header_To_Path_single_lengths[cs]; + if ( _klen > 0 ) { + const char *_lower = _keys; + const char *_mid; + const char *_upper = _keys + _klen - 1; + while (1) { + if ( _upper < _lower ) { + break; + } + + _mid = _lower + ((_upper-_lower) >> 1); + if ( (*p) < *_mid ) { + _upper = _mid - 1; + } + else if ( (*p) > *_mid ) { + _lower = _mid + 1; + } + else { + _trans += (_mid - _keys); + goto _match; + } + } + _keys += _klen; + _trans += _klen; + } + + _klen = _tmsrp_machine_parser_header_To_Path_range_lengths[cs]; + if ( _klen > 0 ) { + const char *_lower = _keys; + const char *_mid; + const char *_upper = _keys + (_klen<<1) - 2; + while (1) { + if ( _upper < _lower ) { + break; + } + + _mid = _lower + (((_upper-_lower) >> 1) & ~1); + if ( (*p) < _mid[0] ) { + _upper = _mid - 2; + } + else if ( (*p) > _mid[1] ) { + _lower = _mid + 2; + } + else { + _trans += ((_mid - _keys)>>1); + goto _match; + } + } + _trans += _klen; + } _match: - cs = _tmsrp_machine_parser_header_To_Path_trans_targs[_trans]; - - if ( _tmsrp_machine_parser_header_To_Path_trans_actions[_trans] == 0 ) - goto _again; - - _acts = _tmsrp_machine_parser_header_To_Path_actions + _tmsrp_machine_parser_header_To_Path_trans_actions[_trans]; - _nacts = (unsigned int) *_acts++; - while ( _nacts-- > 0 ) - { - switch ( *_acts++ ) - { - case 0: -/* #line 41 "./ragel/tmsrp_parser_header_To-Path.rl" */ - { - tag_start = p; - } - break; - case 1: -/* #line 45 "./ragel/tmsrp_parser_header_To-Path.rl" */ - { - int len = (int)(p - tag_start); - tmsrp_uri_t* uri; - if((uri = tmsrp_uri_parse(tag_start, (tsk_size_t)len))){ - if(!header->uri){ - header->uri = uri; - } - else{ - if(!header->otherURIs){ - header->otherURIs = tsk_list_create(); - } - tsk_list_push_back_data(header->otherURIs, ((void**) &uri)); - } - } - } - break; -/* #line 252 "./src/headers/tmsrp_header_To-Path.c" */ - } - } + cs = _tmsrp_machine_parser_header_To_Path_trans_targs[_trans]; + + if ( _tmsrp_machine_parser_header_To_Path_trans_actions[_trans] == 0 ) { + goto _again; + } + + _acts = _tmsrp_machine_parser_header_To_Path_actions + _tmsrp_machine_parser_header_To_Path_trans_actions[_trans]; + _nacts = (unsigned int) *_acts++; + while ( _nacts-- > 0 ) { + switch ( *_acts++ ) { + case 0: + /* #line 41 "./ragel/tmsrp_parser_header_To-Path.rl" */ + { + tag_start = p; + } + break; + case 1: + /* #line 45 "./ragel/tmsrp_parser_header_To-Path.rl" */ + { + int len = (int)(p - tag_start); + tmsrp_uri_t* uri; + if((uri = tmsrp_uri_parse(tag_start, (tsk_size_t)len))) { + if(!header->uri) { + header->uri = uri; + } + else { + if(!header->otherURIs) { + header->otherURIs = tsk_list_create(); + } + tsk_list_push_back_data(header->otherURIs, ((void**) &uri)); + } + } + } + break; + /* #line 252 "./src/headers/tmsrp_header_To-Path.c" */ + } + } _again: - if ( cs == 0 ) - goto _out; - if ( ++p != pe ) - goto _resume; - _test_eof: {} - if ( p == eof ) - { - const char *__acts = _tmsrp_machine_parser_header_To_Path_actions + _tmsrp_machine_parser_header_To_Path_eof_actions[cs]; - unsigned int __nacts = (unsigned int) *__acts++; - while ( __nacts-- > 0 ) { - switch ( *__acts++ ) { - case 0: -/* #line 41 "./ragel/tmsrp_parser_header_To-Path.rl" */ - { - tag_start = p; - } - break; - case 1: -/* #line 45 "./ragel/tmsrp_parser_header_To-Path.rl" */ - { - int len = (int)(p - tag_start); - tmsrp_uri_t* uri; - if((uri = tmsrp_uri_parse(tag_start, (tsk_size_t)len))){ - if(!header->uri){ - header->uri = uri; - } - else{ - if(!header->otherURIs){ - header->otherURIs = tsk_list_create(); - } - tsk_list_push_back_data(header->otherURIs, ((void**) &uri)); - } - } - } - break; -/* #line 292 "./src/headers/tmsrp_header_To-Path.c" */ - } - } - } - - _out: {} - } - -/* #line 117 "./ragel/tmsrp_parser_header_To-Path.rl" */ - TSK_RAGEL_DISABLE_WARNINGS_END() - - if( cs < -/* #line 304 "./src/headers/tmsrp_header_To-Path.c" */ -11 -/* #line 119 "./ragel/tmsrp_parser_header_To-Path.rl" */ - ){ - TSK_DEBUG_ERROR("Failed to parse 'To-Path' header."); - TSK_OBJECT_SAFE_FREE(header); - } - - return header; + if ( cs == 0 ) { + goto _out; + } + if ( ++p != pe ) { + goto _resume; + } +_test_eof: { + } + if ( p == eof ) { + const char *__acts = _tmsrp_machine_parser_header_To_Path_actions + _tmsrp_machine_parser_header_To_Path_eof_actions[cs]; + unsigned int __nacts = (unsigned int) *__acts++; + while ( __nacts-- > 0 ) { + switch ( *__acts++ ) { + case 0: + /* #line 41 "./ragel/tmsrp_parser_header_To-Path.rl" */ + { + tag_start = p; + } + break; + case 1: + /* #line 45 "./ragel/tmsrp_parser_header_To-Path.rl" */ + { + int len = (int)(p - tag_start); + tmsrp_uri_t* uri; + if((uri = tmsrp_uri_parse(tag_start, (tsk_size_t)len))) { + if(!header->uri) { + header->uri = uri; + } + else { + if(!header->otherURIs) { + header->otherURIs = tsk_list_create(); + } + tsk_list_push_back_data(header->otherURIs, ((void**) &uri)); + } + } + } + break; + /* #line 292 "./src/headers/tmsrp_header_To-Path.c" */ + } + } + } + +_out: { + } + } + + /* #line 117 "./ragel/tmsrp_parser_header_To-Path.rl" */ + TSK_RAGEL_DISABLE_WARNINGS_END() + + if( cs < + /* #line 304 "./src/headers/tmsrp_header_To-Path.c" */ + 11 + /* #line 119 "./ragel/tmsrp_parser_header_To-Path.rl" */ + ) { + TSK_DEBUG_ERROR("Failed to parse 'To-Path' header."); + TSK_OBJECT_SAFE_FREE(header); + } + + return header; } tmsrp_header_To_Path_t *tmsrp_header_To_Path_clone(const tmsrp_header_To_Path_t* To_Path) { - tmsrp_header_To_Path_t* clone = tsk_null; - - if(!To_Path){ - goto bail; - } - - clone = tmsrp_header_To_Path_create_null(); - clone->uri = tmsrp_uri_clone(To_Path->uri); - if(To_Path->otherURIs){ - tsk_list_item_t *item; - clone->otherURIs = tsk_list_create(); - - tsk_list_foreach(item, To_Path->otherURIs){ - tmsrp_uri_t *uri = tmsrp_uri_clone(TMSRP_URI(item->data)); - tsk_list_push_back_data(clone->otherURIs, (void**)&uri); - } - } + tmsrp_header_To_Path_t* clone = tsk_null; + + if(!To_Path) { + goto bail; + } + + clone = tmsrp_header_To_Path_create_null(); + clone->uri = tmsrp_uri_clone(To_Path->uri); + if(To_Path->otherURIs) { + tsk_list_item_t *item; + clone->otherURIs = tsk_list_create(); + + tsk_list_foreach(item, To_Path->otherURIs) { + tmsrp_uri_t *uri = tmsrp_uri_clone(TMSRP_URI(item->data)); + tsk_list_push_back_data(clone->otherURIs, (void**)&uri); + } + } bail: - return clone; + return clone; } @@ -345,39 +355,38 @@ bail: static tsk_object_t* tmsrp_header_To_Path_ctor(tsk_object_t *self, va_list * app) { - tmsrp_header_To_Path_t *To_Path = self; - if(To_Path){ - TMSRP_HEADER(To_Path)->type = tmsrp_htype_To_Path; - TMSRP_HEADER(To_Path)->tostring = tmsrp_header_To_Path_tostring; - - To_Path->uri = tsk_object_ref((void*)va_arg(*app, const tmsrp_uri_t*)); - } - else{ - TSK_DEBUG_ERROR("Failed to create new To-Path header."); - } - return self; + tmsrp_header_To_Path_t *To_Path = self; + if(To_Path) { + TMSRP_HEADER(To_Path)->type = tmsrp_htype_To_Path; + TMSRP_HEADER(To_Path)->tostring = tmsrp_header_To_Path_tostring; + + To_Path->uri = tsk_object_ref((void*)va_arg(*app, const tmsrp_uri_t*)); + } + else { + TSK_DEBUG_ERROR("Failed to create new To-Path header."); + } + return self; } static tsk_object_t* tmsrp_header_To_Path_dtor(tsk_object_t *self) { - tmsrp_header_To_Path_t *To_Path = self; - if(To_Path){ - TSK_OBJECT_SAFE_FREE(To_Path->uri); - TSK_OBJECT_SAFE_FREE(To_Path->otherURIs); - } - else{ - TSK_DEBUG_ERROR("Null To-Path header."); - } - - return self; + tmsrp_header_To_Path_t *To_Path = self; + if(To_Path) { + TSK_OBJECT_SAFE_FREE(To_Path->uri); + TSK_OBJECT_SAFE_FREE(To_Path->otherURIs); + } + else { + TSK_DEBUG_ERROR("Null To-Path header."); + } + + return self; } -static const tsk_object_def_t tmsrp_header_To_Path_def_s = -{ - sizeof(tmsrp_header_To_Path_t), - tmsrp_header_To_Path_ctor, - tmsrp_header_To_Path_dtor, - tsk_null +static const tsk_object_def_t tmsrp_header_To_Path_def_s = { + sizeof(tmsrp_header_To_Path_t), + tmsrp_header_To_Path_ctor, + tmsrp_header_To_Path_dtor, + tsk_null }; const tsk_object_def_t *tmsrp_header_To_Path_def_t = &tmsrp_header_To_Path_def_s; diff --git a/tinyMSRP/src/headers/tmsrp_header_Use-Path.c b/tinyMSRP/src/headers/tmsrp_header_Use-Path.c index 8415867..dc787f8 100755 --- a/tinyMSRP/src/headers/tmsrp_header_Use-Path.c +++ b/tinyMSRP/src/headers/tmsrp_header_Use-Path.c @@ -2,19 +2,19 @@ /* #line 1 "./ragel/tmsrp_parser_header_Use-Path.rl" */ /* * Copyright (C) 2009-2015 Mamadou DIOP. -* +* * This file is part of Open Source Doubango Framework. * * DOUBANGO is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. -* +* * DOUBANGO is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. -* +* * You should have received a copy of the GNU General Public License * along with DOUBANGO. * @@ -42,275 +42,285 @@ tmsrp_header_Use_Path_t* tmsrp_header_Use_Path_create(const tmsrp_uri_t* uri) { - return tsk_object_new(TMSRP_HEADER_USE_PATH_VA_ARGS(uri)); + return tsk_object_new(TMSRP_HEADER_USE_PATH_VA_ARGS(uri)); } tmsrp_header_Use_Path_t* tmsrp_header_Use_Path_create_null() { - return tmsrp_header_Use_Path_create(tsk_null); + return tmsrp_header_Use_Path_create(tsk_null); } int tmsrp_header_Use_Path_tostring(const tmsrp_header_t* header, tsk_buffer_t* output) { - if(header){ - const tmsrp_header_Use_Path_t *Use_Path = (const tmsrp_header_Use_Path_t *)header; - const tsk_list_item_t *item; - - if(Use_Path->uri){ - tmsrp_uri_serialize(Use_Path->uri, output); - } - tsk_list_foreach(item, Use_Path->otherURIs){ - tsk_buffer_append(output, " ", 1); - tmsrp_uri_serialize(TMSRP_URI(item->data), output); - } - } - - return -1; + if(header) { + const tmsrp_header_Use_Path_t *Use_Path = (const tmsrp_header_Use_Path_t *)header; + const tsk_list_item_t *item; + + if(Use_Path->uri) { + tmsrp_uri_serialize(Use_Path->uri, output); + } + tsk_list_foreach(item, Use_Path->otherURIs) { + tsk_buffer_append(output, " ", 1); + tmsrp_uri_serialize(TMSRP_URI(item->data), output); + } + } + + return -1; } tmsrp_header_Use_Path_t *tmsrp_header_Use_Path_parse(const char *data, tsk_size_t size) { - int cs = 0; - const char *p = data; - const char *pe = p + size; - const char *eof = pe; - tmsrp_header_Use_Path_t *header = tmsrp_header_Use_Path_create_null(); - - const char *tag_start = tsk_null; - - TSK_RAGEL_DISABLE_WARNINGS_BEGIN() - -/* #line 84 "./src/headers/tmsrp_header_Use-Path.c" */ -static const char _tmsrp_machine_parser_header_Use_Path_actions[] = { - 0, 1, 0, 1, 1, 2, 0, 1 - -}; - -static const char _tmsrp_machine_parser_header_Use_Path_key_offsets[] = { - 0, 0, 2, 4, 6, 7, 9, 11, - 13, 15, 16, 17, 18, 20, 22 -}; - -static const char _tmsrp_machine_parser_header_Use_Path_trans_keys[] = { - 85, 117, 83, 115, 69, 101, 45, 80, - 112, 65, 97, 84, 116, 72, 104, 58, - 32, 10, 13, 32, 13, 32, 0 -}; - -static const char _tmsrp_machine_parser_header_Use_Path_single_lengths[] = { - 0, 2, 2, 2, 1, 2, 2, 2, - 2, 1, 1, 1, 2, 2, 0 -}; - -static const char _tmsrp_machine_parser_header_Use_Path_range_lengths[] = { - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0 -}; - -static const char _tmsrp_machine_parser_header_Use_Path_index_offsets[] = { - 0, 0, 3, 6, 9, 11, 14, 17, - 20, 23, 25, 27, 29, 32, 35 -}; - -static const char _tmsrp_machine_parser_header_Use_Path_trans_targs[] = { - 2, 2, 0, 3, 3, 0, 4, 4, - 0, 5, 0, 6, 6, 0, 7, 7, - 0, 8, 8, 0, 9, 9, 0, 10, - 0, 12, 0, 14, 0, 11, 12, 13, - 11, 12, 13, 0, 0 -}; - -static const char _tmsrp_machine_parser_header_Use_Path_trans_actions[] = { - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 5, 5, 1, - 3, 3, 0, 0, 0 -}; - -static const char _tmsrp_machine_parser_header_Use_Path_eof_actions[] = { - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 5, 3, 0 -}; - -static const int tmsrp_machine_parser_header_Use_Path_start = 1; -static const int tmsrp_machine_parser_header_Use_Path_first_final = 12; -static const int tmsrp_machine_parser_header_Use_Path_error = 0; - -static const int tmsrp_machine_parser_header_Use_Path_en_main = 1; - - -/* #line 113 "./ragel/tmsrp_parser_header_Use-Path.rl" */ - (void)(eof); - (void)(tmsrp_machine_parser_header_Use_Path_first_final); - (void)(tmsrp_machine_parser_header_Use_Path_error); - (void)(tmsrp_machine_parser_header_Use_Path_en_main); - -/* #line 150 "./src/headers/tmsrp_header_Use-Path.c" */ - { - cs = tmsrp_machine_parser_header_Use_Path_start; - } - -/* #line 118 "./ragel/tmsrp_parser_header_Use-Path.rl" */ - -/* #line 157 "./src/headers/tmsrp_header_Use-Path.c" */ - { - int _klen; - unsigned int _trans; - const char *_acts; - unsigned int _nacts; - const char *_keys; - - if ( p == pe ) - goto _test_eof; - if ( cs == 0 ) - goto _out; + int cs = 0; + const char *p = data; + const char *pe = p + size; + const char *eof = pe; + tmsrp_header_Use_Path_t *header = tmsrp_header_Use_Path_create_null(); + + const char *tag_start = tsk_null; + + TSK_RAGEL_DISABLE_WARNINGS_BEGIN() + + /* #line 84 "./src/headers/tmsrp_header_Use-Path.c" */ + static const char _tmsrp_machine_parser_header_Use_Path_actions[] = { + 0, 1, 0, 1, 1, 2, 0, 1 + + }; + + static const char _tmsrp_machine_parser_header_Use_Path_key_offsets[] = { + 0, 0, 2, 4, 6, 7, 9, 11, + 13, 15, 16, 17, 18, 20, 22 + }; + + static const char _tmsrp_machine_parser_header_Use_Path_trans_keys[] = { + 85, 117, 83, 115, 69, 101, 45, 80, + 112, 65, 97, 84, 116, 72, 104, 58, + 32, 10, 13, 32, 13, 32, 0 + }; + + static const char _tmsrp_machine_parser_header_Use_Path_single_lengths[] = { + 0, 2, 2, 2, 1, 2, 2, 2, + 2, 1, 1, 1, 2, 2, 0 + }; + + static const char _tmsrp_machine_parser_header_Use_Path_range_lengths[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0 + }; + + static const char _tmsrp_machine_parser_header_Use_Path_index_offsets[] = { + 0, 0, 3, 6, 9, 11, 14, 17, + 20, 23, 25, 27, 29, 32, 35 + }; + + static const char _tmsrp_machine_parser_header_Use_Path_trans_targs[] = { + 2, 2, 0, 3, 3, 0, 4, 4, + 0, 5, 0, 6, 6, 0, 7, 7, + 0, 8, 8, 0, 9, 9, 0, 10, + 0, 12, 0, 14, 0, 11, 12, 13, + 11, 12, 13, 0, 0 + }; + + static const char _tmsrp_machine_parser_header_Use_Path_trans_actions[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 5, 5, 1, + 3, 3, 0, 0, 0 + }; + + static const char _tmsrp_machine_parser_header_Use_Path_eof_actions[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 5, 3, 0 + }; + + static const int tmsrp_machine_parser_header_Use_Path_start = 1; + static const int tmsrp_machine_parser_header_Use_Path_first_final = 12; + static const int tmsrp_machine_parser_header_Use_Path_error = 0; + + static const int tmsrp_machine_parser_header_Use_Path_en_main = 1; + + + /* #line 113 "./ragel/tmsrp_parser_header_Use-Path.rl" */ + (void)(eof); + (void)(tmsrp_machine_parser_header_Use_Path_first_final); + (void)(tmsrp_machine_parser_header_Use_Path_error); + (void)(tmsrp_machine_parser_header_Use_Path_en_main); + + /* #line 150 "./src/headers/tmsrp_header_Use-Path.c" */ + { + cs = tmsrp_machine_parser_header_Use_Path_start; + } + + /* #line 118 "./ragel/tmsrp_parser_header_Use-Path.rl" */ + + /* #line 157 "./src/headers/tmsrp_header_Use-Path.c" */ + { + int _klen; + unsigned int _trans; + const char *_acts; + unsigned int _nacts; + const char *_keys; + + if ( p == pe ) { + goto _test_eof; + } + if ( cs == 0 ) { + goto _out; + } _resume: - _keys = _tmsrp_machine_parser_header_Use_Path_trans_keys + _tmsrp_machine_parser_header_Use_Path_key_offsets[cs]; - _trans = _tmsrp_machine_parser_header_Use_Path_index_offsets[cs]; - - _klen = _tmsrp_machine_parser_header_Use_Path_single_lengths[cs]; - if ( _klen > 0 ) { - const char *_lower = _keys; - const char *_mid; - const char *_upper = _keys + _klen - 1; - while (1) { - if ( _upper < _lower ) - break; - - _mid = _lower + ((_upper-_lower) >> 1); - if ( (*p) < *_mid ) - _upper = _mid - 1; - else if ( (*p) > *_mid ) - _lower = _mid + 1; - else { - _trans += (_mid - _keys); - goto _match; - } - } - _keys += _klen; - _trans += _klen; - } - - _klen = _tmsrp_machine_parser_header_Use_Path_range_lengths[cs]; - if ( _klen > 0 ) { - const char *_lower = _keys; - const char *_mid; - const char *_upper = _keys + (_klen<<1) - 2; - while (1) { - if ( _upper < _lower ) - break; - - _mid = _lower + (((_upper-_lower) >> 1) & ~1); - if ( (*p) < _mid[0] ) - _upper = _mid - 2; - else if ( (*p) > _mid[1] ) - _lower = _mid + 2; - else { - _trans += ((_mid - _keys)>>1); - goto _match; - } - } - _trans += _klen; - } + _keys = _tmsrp_machine_parser_header_Use_Path_trans_keys + _tmsrp_machine_parser_header_Use_Path_key_offsets[cs]; + _trans = _tmsrp_machine_parser_header_Use_Path_index_offsets[cs]; + + _klen = _tmsrp_machine_parser_header_Use_Path_single_lengths[cs]; + if ( _klen > 0 ) { + const char *_lower = _keys; + const char *_mid; + const char *_upper = _keys + _klen - 1; + while (1) { + if ( _upper < _lower ) { + break; + } + + _mid = _lower + ((_upper-_lower) >> 1); + if ( (*p) < *_mid ) { + _upper = _mid - 1; + } + else if ( (*p) > *_mid ) { + _lower = _mid + 1; + } + else { + _trans += (_mid - _keys); + goto _match; + } + } + _keys += _klen; + _trans += _klen; + } + + _klen = _tmsrp_machine_parser_header_Use_Path_range_lengths[cs]; + if ( _klen > 0 ) { + const char *_lower = _keys; + const char *_mid; + const char *_upper = _keys + (_klen<<1) - 2; + while (1) { + if ( _upper < _lower ) { + break; + } + + _mid = _lower + (((_upper-_lower) >> 1) & ~1); + if ( (*p) < _mid[0] ) { + _upper = _mid - 2; + } + else if ( (*p) > _mid[1] ) { + _lower = _mid + 2; + } + else { + _trans += ((_mid - _keys)>>1); + goto _match; + } + } + _trans += _klen; + } _match: - cs = _tmsrp_machine_parser_header_Use_Path_trans_targs[_trans]; - - if ( _tmsrp_machine_parser_header_Use_Path_trans_actions[_trans] == 0 ) - goto _again; - - _acts = _tmsrp_machine_parser_header_Use_Path_actions + _tmsrp_machine_parser_header_Use_Path_trans_actions[_trans]; - _nacts = (unsigned int) *_acts++; - while ( _nacts-- > 0 ) - { - switch ( *_acts++ ) - { - case 0: -/* #line 41 "./ragel/tmsrp_parser_header_Use-Path.rl" */ - { - tag_start = p; - } - break; - case 1: -/* #line 45 "./ragel/tmsrp_parser_header_Use-Path.rl" */ - { - int len = (int)(p - tag_start); - tmsrp_uri_t* uri; - if((uri = tmsrp_uri_parse(tag_start, (tsk_size_t)len))){ - if(!header->uri){ - header->uri = uri; - } - else{ - if(!header->otherURIs){ - header->otherURIs = tsk_list_create(); - } - tsk_list_push_back_data(header->otherURIs, ((void**) &uri)); - } - } - } - break; -/* #line 254 "./src/headers/tmsrp_header_Use-Path.c" */ - } - } + cs = _tmsrp_machine_parser_header_Use_Path_trans_targs[_trans]; + + if ( _tmsrp_machine_parser_header_Use_Path_trans_actions[_trans] == 0 ) { + goto _again; + } + + _acts = _tmsrp_machine_parser_header_Use_Path_actions + _tmsrp_machine_parser_header_Use_Path_trans_actions[_trans]; + _nacts = (unsigned int) *_acts++; + while ( _nacts-- > 0 ) { + switch ( *_acts++ ) { + case 0: + /* #line 41 "./ragel/tmsrp_parser_header_Use-Path.rl" */ + { + tag_start = p; + } + break; + case 1: + /* #line 45 "./ragel/tmsrp_parser_header_Use-Path.rl" */ + { + int len = (int)(p - tag_start); + tmsrp_uri_t* uri; + if((uri = tmsrp_uri_parse(tag_start, (tsk_size_t)len))) { + if(!header->uri) { + header->uri = uri; + } + else { + if(!header->otherURIs) { + header->otherURIs = tsk_list_create(); + } + tsk_list_push_back_data(header->otherURIs, ((void**) &uri)); + } + } + } + break; + /* #line 254 "./src/headers/tmsrp_header_Use-Path.c" */ + } + } _again: - if ( cs == 0 ) - goto _out; - if ( ++p != pe ) - goto _resume; - _test_eof: {} - if ( p == eof ) - { - const char *__acts = _tmsrp_machine_parser_header_Use_Path_actions + _tmsrp_machine_parser_header_Use_Path_eof_actions[cs]; - unsigned int __nacts = (unsigned int) *__acts++; - while ( __nacts-- > 0 ) { - switch ( *__acts++ ) { - case 0: -/* #line 41 "./ragel/tmsrp_parser_header_Use-Path.rl" */ - { - tag_start = p; - } - break; - case 1: -/* #line 45 "./ragel/tmsrp_parser_header_Use-Path.rl" */ - { - int len = (int)(p - tag_start); - tmsrp_uri_t* uri; - if((uri = tmsrp_uri_parse(tag_start, (tsk_size_t)len))){ - if(!header->uri){ - header->uri = uri; - } - else{ - if(!header->otherURIs){ - header->otherURIs = tsk_list_create(); - } - tsk_list_push_back_data(header->otherURIs, ((void**) &uri)); - } - } - } - break; -/* #line 294 "./src/headers/tmsrp_header_Use-Path.c" */ - } - } - } - - _out: {} - } - -/* #line 119 "./ragel/tmsrp_parser_header_Use-Path.rl" */ - TSK_RAGEL_DISABLE_WARNINGS_END() - - if( cs < -/* #line 306 "./src/headers/tmsrp_header_Use-Path.c" */ -12 -/* #line 121 "./ragel/tmsrp_parser_header_Use-Path.rl" */ - ){ - TSK_DEBUG_ERROR("Failed to parse 'Use-Path' header."); - TSK_OBJECT_SAFE_FREE(header); - } - - return header; + if ( cs == 0 ) { + goto _out; + } + if ( ++p != pe ) { + goto _resume; + } +_test_eof: { + } + if ( p == eof ) { + const char *__acts = _tmsrp_machine_parser_header_Use_Path_actions + _tmsrp_machine_parser_header_Use_Path_eof_actions[cs]; + unsigned int __nacts = (unsigned int) *__acts++; + while ( __nacts-- > 0 ) { + switch ( *__acts++ ) { + case 0: + /* #line 41 "./ragel/tmsrp_parser_header_Use-Path.rl" */ + { + tag_start = p; + } + break; + case 1: + /* #line 45 "./ragel/tmsrp_parser_header_Use-Path.rl" */ + { + int len = (int)(p - tag_start); + tmsrp_uri_t* uri; + if((uri = tmsrp_uri_parse(tag_start, (tsk_size_t)len))) { + if(!header->uri) { + header->uri = uri; + } + else { + if(!header->otherURIs) { + header->otherURIs = tsk_list_create(); + } + tsk_list_push_back_data(header->otherURIs, ((void**) &uri)); + } + } + } + break; + /* #line 294 "./src/headers/tmsrp_header_Use-Path.c" */ + } + } + } + +_out: { + } + } + + /* #line 119 "./ragel/tmsrp_parser_header_Use-Path.rl" */ + TSK_RAGEL_DISABLE_WARNINGS_END() + + if( cs < + /* #line 306 "./src/headers/tmsrp_header_Use-Path.c" */ + 12 + /* #line 121 "./ragel/tmsrp_parser_header_Use-Path.rl" */ + ) { + TSK_DEBUG_ERROR("Failed to parse 'Use-Path' header."); + TSK_OBJECT_SAFE_FREE(header); + } + + return header; } @@ -325,43 +335,42 @@ _again: static tsk_object_t* tmsrp_header_Use_Path_ctor(tsk_object_t *self, va_list * app) { - tmsrp_header_Use_Path_t *Use_Path = self; - if(Use_Path){ - const tmsrp_uri_t* uri = va_arg(*app, const tmsrp_uri_t*); - - TMSRP_HEADER(Use_Path)->type = tmsrp_htype_Use_Path; - TMSRP_HEADER(Use_Path)->tostring = tmsrp_header_Use_Path_tostring; - - if(uri){ - Use_Path->uri = tsk_object_ref((void*)uri); - } - } - else{ - TSK_DEBUG_ERROR("Failed to create new Use-Path header."); - } - return self; + tmsrp_header_Use_Path_t *Use_Path = self; + if(Use_Path) { + const tmsrp_uri_t* uri = va_arg(*app, const tmsrp_uri_t*); + + TMSRP_HEADER(Use_Path)->type = tmsrp_htype_Use_Path; + TMSRP_HEADER(Use_Path)->tostring = tmsrp_header_Use_Path_tostring; + + if(uri) { + Use_Path->uri = tsk_object_ref((void*)uri); + } + } + else { + TSK_DEBUG_ERROR("Failed to create new Use-Path header."); + } + return self; } static tsk_object_t* tmsrp_header_Use_Path_dtor(tsk_object_t *self) { - tmsrp_header_Use_Path_t *Use_Path = self; - if(Use_Path){ - TSK_OBJECT_SAFE_FREE(Use_Path->uri); - TSK_OBJECT_SAFE_FREE(Use_Path->otherURIs); - } - else{ - TSK_DEBUG_ERROR("Null Use-Path header."); - } - - return self; + tmsrp_header_Use_Path_t *Use_Path = self; + if(Use_Path) { + TSK_OBJECT_SAFE_FREE(Use_Path->uri); + TSK_OBJECT_SAFE_FREE(Use_Path->otherURIs); + } + else { + TSK_DEBUG_ERROR("Null Use-Path header."); + } + + return self; } -static const tsk_object_def_t tmsrp_header_Use_Path_def_s = -{ - sizeof(tmsrp_header_Use_Path_t), - tmsrp_header_Use_Path_ctor, - tmsrp_header_Use_Path_dtor, - tsk_null +static const tsk_object_def_t tmsrp_header_Use_Path_def_s = { + sizeof(tmsrp_header_Use_Path_t), + tmsrp_header_Use_Path_ctor, + tmsrp_header_Use_Path_dtor, + tsk_null }; const tsk_object_def_t *tmsrp_header_Use_Path_def_t = &tmsrp_header_Use_Path_def_s; diff --git a/tinyMSRP/src/headers/tmsrp_header_WWW-Authenticate.c b/tinyMSRP/src/headers/tmsrp_header_WWW-Authenticate.c index 90ec0f7..3096eef 100755 --- a/tinyMSRP/src/headers/tmsrp_header_WWW-Authenticate.c +++ b/tinyMSRP/src/headers/tmsrp_header_WWW-Authenticate.c @@ -4,19 +4,19 @@ * Copyright (C) 2009 Mamadou Diop. * * Contact: Mamadou Diop <diopmamadou(at)doubango.org> -* +* * This file is part of Open Source Doubango Framework. * * DOUBANGO is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. -* +* * DOUBANGO is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. -* +* * You should have received a copy of the GNU General Public License * along with DOUBANGO. * @@ -41,72 +41,69 @@ tmsrp_header_WWW_Authenticate_t* thttp_header_WWW_Authenticate_create() { - return tsk_object_new(tmsrp_header_WWW_Authenticate_def_t); + return tsk_object_new(tmsrp_header_WWW_Authenticate_def_t); } int tmsrp_header_WWW_Authenticate_tostring(const tmsrp_header_t* header, tsk_buffer_t* output) { - if(header) - { - const tmsrp_header_WWW_Authenticate_t *WWW_Authenticate = (const tmsrp_header_WWW_Authenticate_t *)header; - if(WWW_Authenticate && WWW_Authenticate->scheme) - { - return tsk_buffer_append_2(output, "%s realm=\"%s\"%s%s%s%s%s%s%s%s%s%s%s%s,stale=%s%s%s", - WWW_Authenticate->scheme, - WWW_Authenticate->realm ? WWW_Authenticate->realm : "", - - WWW_Authenticate->domain ? ",domain=\"" : "", - WWW_Authenticate->domain ? WWW_Authenticate->domain : "", - WWW_Authenticate->domain ? "\"" : "", - - - WWW_Authenticate->qop ? ",qop=\"" : "", - WWW_Authenticate->qop ? WWW_Authenticate->qop : "", - WWW_Authenticate->qop ? "\"" : "", - - - WWW_Authenticate->nonce ? ",nonce=\"" : "", - WWW_Authenticate->nonce ? WWW_Authenticate->nonce : "", - WWW_Authenticate->nonce ? "\"" : "", - - WWW_Authenticate->opaque ? ",opaque=\"" : "", - WWW_Authenticate->opaque ? WWW_Authenticate->opaque : "", - WWW_Authenticate->opaque ? "\"" : "", - - WWW_Authenticate->stale ? "TRUE" : "FALSE", - - WWW_Authenticate->algorithm ? ",algorithm=" : "", - WWW_Authenticate->algorithm ? WWW_Authenticate->algorithm : "" - ); - } - } - return -1; + if(header) { + const tmsrp_header_WWW_Authenticate_t *WWW_Authenticate = (const tmsrp_header_WWW_Authenticate_t *)header; + if(WWW_Authenticate && WWW_Authenticate->scheme) { + return tsk_buffer_append_2(output, "%s realm=\"%s\"%s%s%s%s%s%s%s%s%s%s%s%s,stale=%s%s%s", + WWW_Authenticate->scheme, + WWW_Authenticate->realm ? WWW_Authenticate->realm : "", + + WWW_Authenticate->domain ? ",domain=\"" : "", + WWW_Authenticate->domain ? WWW_Authenticate->domain : "", + WWW_Authenticate->domain ? "\"" : "", + + + WWW_Authenticate->qop ? ",qop=\"" : "", + WWW_Authenticate->qop ? WWW_Authenticate->qop : "", + WWW_Authenticate->qop ? "\"" : "", + + + WWW_Authenticate->nonce ? ",nonce=\"" : "", + WWW_Authenticate->nonce ? WWW_Authenticate->nonce : "", + WWW_Authenticate->nonce ? "\"" : "", + + WWW_Authenticate->opaque ? ",opaque=\"" : "", + WWW_Authenticate->opaque ? WWW_Authenticate->opaque : "", + WWW_Authenticate->opaque ? "\"" : "", + + WWW_Authenticate->stale ? "TRUE" : "FALSE", + + WWW_Authenticate->algorithm ? ",algorithm=" : "", + WWW_Authenticate->algorithm ? WWW_Authenticate->algorithm : "" + ); + } + } + return -1; } tmsrp_header_WWW_Authenticate_t *tmsrp_header_WWW_Authenticate_parse(const char *data, tsk_size_t size) { - tmsrp_header_WWW_Authenticate_t *msrp_hdr = 0; - thttp_header_WWW_Authenticate_t* http_hdr; - - if((http_hdr = thttp_header_WWW_Authenticate_parse(data, size))) - { - msrp_hdr = thttp_header_WWW_Authenticate_create(); - - msrp_hdr->scheme = tsk_strdup(http_hdr->scheme); - msrp_hdr->realm = tsk_strdup(http_hdr->realm); - msrp_hdr->domain = tsk_strdup(http_hdr->domain); - msrp_hdr->nonce = tsk_strdup(http_hdr->nonce); - msrp_hdr->opaque = tsk_strdup(http_hdr->opaque); - msrp_hdr->algorithm = tsk_strdup(http_hdr->algorithm); - msrp_hdr->qop = tsk_strdup(http_hdr->qop); - msrp_hdr->stale = http_hdr->stale; - - msrp_hdr->params = tsk_object_ref(THTTP_HEADER(http_hdr)->params); - - TSK_OBJECT_SAFE_FREE(http_hdr); - } - - return msrp_hdr; + tmsrp_header_WWW_Authenticate_t *msrp_hdr = 0; + thttp_header_WWW_Authenticate_t* http_hdr; + + if((http_hdr = thttp_header_WWW_Authenticate_parse(data, size))) { + msrp_hdr = thttp_header_WWW_Authenticate_create(); + + msrp_hdr->scheme = tsk_strdup(http_hdr->scheme); + msrp_hdr->realm = tsk_strdup(http_hdr->realm); + msrp_hdr->domain = tsk_strdup(http_hdr->domain); + msrp_hdr->nonce = tsk_strdup(http_hdr->nonce); + msrp_hdr->opaque = tsk_strdup(http_hdr->opaque); + msrp_hdr->algorithm = tsk_strdup(http_hdr->algorithm); + msrp_hdr->qop = tsk_strdup(http_hdr->qop); + msrp_hdr->stale = http_hdr->stale; + + msrp_hdr->params = tsk_object_ref(THTTP_HEADER(http_hdr)->params); + + TSK_OBJECT_SAFE_FREE(http_hdr); + } + + return msrp_hdr; } @@ -121,43 +118,42 @@ tmsrp_header_WWW_Authenticate_t *tmsrp_header_WWW_Authenticate_parse(const char static tsk_object_t* tmsrp_header_WWW_Authenticate_ctor(tsk_object_t *self, va_list * app) { - tmsrp_header_WWW_Authenticate_t *WWW_Authenticate = self; - if(WWW_Authenticate){ - TMSRP_HEADER(WWW_Authenticate)->type = tmsrp_htype_WWW_Authenticate; - TMSRP_HEADER(WWW_Authenticate)->tostring = tmsrp_header_WWW_Authenticate_tostring; - } - else{ - TSK_DEBUG_ERROR("Failed to create new WWW_Authenticate header."); - } - return self; + tmsrp_header_WWW_Authenticate_t *WWW_Authenticate = self; + if(WWW_Authenticate) { + TMSRP_HEADER(WWW_Authenticate)->type = tmsrp_htype_WWW_Authenticate; + TMSRP_HEADER(WWW_Authenticate)->tostring = tmsrp_header_WWW_Authenticate_tostring; + } + else { + TSK_DEBUG_ERROR("Failed to create new WWW_Authenticate header."); + } + return self; } static tsk_object_t* tmsrp_header_WWW_Authenticate_dtor(tsk_object_t *self) { - tmsrp_header_WWW_Authenticate_t *WWW_Authenticate = self; - if(WWW_Authenticate){ - TSK_FREE(WWW_Authenticate->scheme); - TSK_FREE(WWW_Authenticate->realm); - TSK_FREE(WWW_Authenticate->domain); - TSK_FREE(WWW_Authenticate->nonce); - TSK_FREE(WWW_Authenticate->opaque); - TSK_FREE(WWW_Authenticate->algorithm); - TSK_FREE(WWW_Authenticate->qop); - - TSK_OBJECT_SAFE_FREE(WWW_Authenticate->params); - } - else{ - TSK_DEBUG_ERROR("Null WWW-Authenticate header."); - } - - return self; + tmsrp_header_WWW_Authenticate_t *WWW_Authenticate = self; + if(WWW_Authenticate) { + TSK_FREE(WWW_Authenticate->scheme); + TSK_FREE(WWW_Authenticate->realm); + TSK_FREE(WWW_Authenticate->domain); + TSK_FREE(WWW_Authenticate->nonce); + TSK_FREE(WWW_Authenticate->opaque); + TSK_FREE(WWW_Authenticate->algorithm); + TSK_FREE(WWW_Authenticate->qop); + + TSK_OBJECT_SAFE_FREE(WWW_Authenticate->params); + } + else { + TSK_DEBUG_ERROR("Null WWW-Authenticate header."); + } + + return self; } -static const tsk_object_def_t tmsrp_header_WWW_Authenticate_def_s = -{ - sizeof(tmsrp_header_WWW_Authenticate_t), - tmsrp_header_WWW_Authenticate_ctor, - tmsrp_header_WWW_Authenticate_dtor, - tsk_null +static const tsk_object_def_t tmsrp_header_WWW_Authenticate_def_s = { + sizeof(tmsrp_header_WWW_Authenticate_t), + tmsrp_header_WWW_Authenticate_ctor, + tmsrp_header_WWW_Authenticate_dtor, + tsk_null }; const tsk_object_def_t *tmsrp_header_WWW_Authenticate_def_t = &tmsrp_header_WWW_Authenticate_def_s; |