Helper Reference Manual 1.7.1
Loading...
Searching...
No Matches
chksum.h
Go to the documentation of this file.
1/* SPDX-License-Identifier: BSD-3-Clause
2 * Copyright (c) 2014-2018 Linaro Limited
3 */
4
10#ifndef ODPH_CHKSUM_H_
11#define ODPH_CHKSUM_H_
12
13#include <odp_api.h>
14
15#ifdef __cplusplus
16extern "C" {
17#endif
18
36
76int odph_udp_tcp_chksum(odp_packet_t odp_pkt,
78 uint16_t *chksum_ptr);
79
99static inline int odph_tcp_chksum_set(odp_packet_t odp_pkt)
100{
101 if (!odp_packet_has_tcp(odp_pkt))
102 return -1;
103
104 return odph_udp_tcp_chksum(odp_pkt, ODPH_CHKSUM_GENERATE, NULL);
105}
106
126static inline int odph_udp_chksum_set(odp_packet_t odp_pkt)
127{
128 if (!odp_packet_has_udp(odp_pkt))
129 return -1;
130
131 return odph_udp_tcp_chksum(odp_pkt, ODPH_CHKSUM_GENERATE, NULL);
132}
133
154static inline int odph_tcp_chksum_verify(odp_packet_t odp_pkt)
155{
156 if (!odp_packet_has_tcp(odp_pkt))
157 return -1;
158
159 return odph_udp_tcp_chksum(odp_pkt, ODPH_CHKSUM_VERIFY, NULL);
160}
161
184static inline int odph_udp_chksum_verify(odp_packet_t odp_pkt)
185{
186 if (!odp_packet_has_udp(odp_pkt))
187 return -1;
188
189 return odph_udp_tcp_chksum(odp_pkt, ODPH_CHKSUM_VERIFY, NULL);
190}
191
212int odph_sctp_chksum_set(odp_packet_t odp_pkt);
213
232int odph_sctp_chksum_verify(odp_packet_t odp_pkt);
233
238#ifdef __cplusplus
239}
240#endif
241
242#endif
static int odph_tcp_chksum_set(odp_packet_t odp_pkt)
Generate TCP checksum.
Definition chksum.h:99
odph_chksum_op_t
Chksum Operation Code.
Definition chksum.h:31
int odph_sctp_chksum_set(odp_packet_t odp_pkt)
Generate SCTP checksum.
static int odph_udp_chksum_verify(odp_packet_t odp_pkt)
Verify UDP checksum.
Definition chksum.h:184
static int odph_udp_chksum_set(odp_packet_t odp_pkt)
Generate UDP checksum.
Definition chksum.h:126
int odph_udp_tcp_chksum(odp_packet_t odp_pkt, odph_chksum_op_t op, uint16_t *chksum_ptr)
General Purpose TCP/UDP checksum function.
int odph_sctp_chksum_verify(odp_packet_t odp_pkt)
Verify SCTP checksum.
static int odph_tcp_chksum_verify(odp_packet_t odp_pkt)
Verify TCP checksum.
Definition chksum.h:154
@ ODPH_CHKSUM_VERIFY
See if TCP/UDP header chksum is correct.
Definition chksum.h:33
@ ODPH_CHKSUM_RETURN
Don't generate or verify chksum.
Definition chksum.h:34
@ ODPH_CHKSUM_GENERATE
Set TCP/UDP header chksum field.
Definition chksum.h:32