ROHC compression/decompression library
d_tcp_opts_list.h
Go to the documentation of this file.
1 /*
2  * Copyright 2012,2013,2014 Didier Barvaux
3  * Copyright 2013,2014 Viveris Technologies
4  * Copyright 2012 WBX
5  *
6  * This library is free software; you can redistribute it and/or
7  * modify it under the terms of the GNU Lesser General Public
8  * License as published by the Free Software Foundation; either
9  * version 2.1 of the License, or (at your option) any later version.
10  *
11  * This library is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14  * Lesser General Public License for more details.
15  *
16  * You should have received a copy of the GNU Lesser General Public
17  * License along with this library; if not, write to the Free Software
18  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
19  */
20 
21 /**
22  * @file d_tcp_opts_list.h
23  * @brief Handle the list of TCP options for the TCP decompression profile
24  * @author FWX <rohc_team@dialine.fr>
25  * @author Didier Barvaux <didier@barvaux.org>
26  * @author Didier Barvaux <didier.barvaux@toulouse.viveris.com>
27  */
28 
29 #ifndef ROHC_DECOMP_TCP_OPTS_LIST_H
30 #define ROHC_DECOMP_TCP_OPTS_LIST_H
31 
32 #include "rohc_decomp_internals.h"
33 #include "d_tcp_defines.h"
34 
35 #include <stdbool.h>
36 #include <stdint.h>
37 #include <stdlib.h>
38 
39 int d_tcp_parse_tcp_opts_list_item(const struct rohc_decomp_ctxt *const context,
40  const uint8_t *const rohc_packet,
41  const size_t rohc_length,
42  const bool is_dynamic_chain,
43  struct d_tcp_opts_ctxt *const tcp_opts)
44  __attribute__((warn_unused_result, nonnull(1, 2, 5)));
45 
46 int d_tcp_parse_tcp_opts_irreg(const struct rohc_decomp_ctxt *const context,
47  const uint8_t *const rohc_packet,
48  const size_t rohc_length,
49  struct d_tcp_opts_ctxt *const tcp_opts)
50  __attribute__((warn_unused_result, nonnull(1, 2, 4)));
51 
52 bool d_tcp_build_tcp_opts(const struct rohc_decomp_ctxt *const context,
53  const struct rohc_tcp_decoded_values *const decoded,
54  struct rohc_buf *const uncomp_packet,
55  size_t *const opts_len)
56  __attribute__((warn_unused_result, nonnull(1, 2, 3, 4)));
57 
58 #endif /* ROHC_DECOMP_TCP_OPTS_LIST_H */
59 
Definition: d_tcp_defines.h:437
bool d_tcp_build_tcp_opts(const struct rohc_decomp_ctxt *const context, const struct rohc_tcp_decoded_values *const decoded, struct rohc_buf *const uncomp_packet, size_t *const opts_len)
Definition: d_tcp_opts_list.c:1435
Main definitions for the TCP decompression profile.
Internal structures for ROHC decompression.
int d_tcp_parse_tcp_opts_irreg(const struct rohc_decomp_ctxt *const context, const uint8_t *const rohc_packet, const size_t rohc_length, struct d_tcp_opts_ctxt *const tcp_opts)
Definition: d_tcp_opts_list.c:412
A network buffer for the ROHC library.
Definition: rohc_buf.h:104
The ROHC decompression context.
Definition: rohc_decomp_internals.h:274
int d_tcp_parse_tcp_opts_list_item(const struct rohc_decomp_ctxt *const context, const uint8_t *const rohc_packet, const size_t rohc_length, const bool is_dynamic_chain, struct d_tcp_opts_ctxt *const tcp_opts)
Definition: d_tcp_opts_list.c:329
Definition: d_tcp_defines.h:250