NVIDIA DOCA SDK Data Center on a Chip Framework Documentation
packet_parser.h File Reference
#include <stdint.h>
#include <stdbool.h>
#include <unistd.h>
#include <doca_error.h>
Include dependency graph for packet_parser.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  link_parser_ctx
 
struct  network_parser_ctx
 
struct  transport_parser_ctx
 
struct  gtp_parser_ctx
 
struct  conn_parser_ctx
 
struct  tun_parser_ctx
 

Enumerations

enum  parser_pkt_type { PARSER_PKT_TYPE_TUNNELED , PARSER_PKT_TYPE_PLAIN , PARSER_PKT_TYPE_UNKNOWN , PARSER_PKT_TYPE_NUM = PARSER_PKT_TYPE_UNKNOWN }
 

Functions

doca_error_t link_parse (uint8_t *data, uint8_t *data_end, struct link_parser_ctx *ctx)
 
doca_error_t network_parse (uint8_t *data, uint8_t *data_end, uint16_t expected_proto, struct network_parser_ctx *ctx)
 
doca_error_t transport_parse (uint8_t *data, uint8_t *data_end, uint8_t proto, struct transport_parser_ctx *ctx)
 
doca_error_t gtpu_parse (uint8_t *data, uint8_t *data_end, struct gtp_parser_ctx *ctx)
 
doca_error_t conn_parse (uint8_t *data, uint8_t *data_end, struct conn_parser_ctx *ctx)
 
doca_error_t plain_parse (uint8_t *data, uint8_t *data_end, struct conn_parser_ctx *ctx)
 
doca_error_t tunnel_parse (uint8_t *data, uint8_t *data_end, struct tun_parser_ctx *ctx)
 
doca_error_t unknown_parse (uint8_t *data, uint8_t *data_end, struct tun_parser_ctx *ctx, enum parser_pkt_type *parsed_pkt_type)
 

Enumeration Type Documentation

◆ parser_pkt_type

Enumerator
PARSER_PKT_TYPE_TUNNELED 
PARSER_PKT_TYPE_PLAIN 
PARSER_PKT_TYPE_UNKNOWN 
PARSER_PKT_TYPE_NUM 

Definition at line 35 of file packet_parser.h.

Function Documentation

◆ conn_parse()

doca_error_t conn_parse ( uint8_t *  data,
uint8_t *  data_end,
struct conn_parser_ctx ctx 
)

Definition at line 278 of file packet_parser.c.

◆ gtpu_parse()

doca_error_t gtpu_parse ( uint8_t *  data,
uint8_t *  data_end,
struct gtp_parser_ctx ctx 
)

Definition at line 213 of file packet_parser.c.

◆ link_parse()

doca_error_t link_parse ( uint8_t *  data,
uint8_t *  data_end,
struct link_parser_ctx ctx 
)

Definition at line 41 of file packet_parser.c.

◆ network_parse()

doca_error_t network_parse ( uint8_t *  data,
uint8_t *  data_end,
uint16_t  expected_proto,
struct network_parser_ctx ctx 
)

Definition at line 112 of file packet_parser.c.

◆ plain_parse()

doca_error_t plain_parse ( uint8_t *  data,
uint8_t *  data_end,
struct conn_parser_ctx ctx 
)

Definition at line 298 of file packet_parser.c.

◆ transport_parse()

doca_error_t transport_parse ( uint8_t *  data,
uint8_t *  data_end,
uint8_t  proto,
struct transport_parser_ctx ctx 
)

Definition at line 170 of file packet_parser.c.

◆ tunnel_parse()

doca_error_t tunnel_parse ( uint8_t *  data,
uint8_t *  data_end,
struct tun_parser_ctx ctx 
)

Definition at line 310 of file packet_parser.c.

◆ unknown_parse()

doca_error_t unknown_parse ( uint8_t *  data,
uint8_t *  data_end,
struct tun_parser_ctx ctx,
enum parser_pkt_type parsed_pkt_type 
)

Definition at line 343 of file packet_parser.c.