esp.c File Reference

ESP (IP Encapsulating Security Payload) More...

#include "ipsec/ipsec.h"
#include "ipsec/ipsec_inbound.h"
#include "ipsec/ipsec_anti_replay.h"
#include "ipsec/ipsec_misc.h"
#include "esp/esp.h"
#include "esp/esp_packet_decrypt.h"
#include "core/tcp_fsm.h"
#include "core/raw_socket.h"
#include "ipv4/icmp.h"
#include "debug.h"

Go to the source code of this file.

Macros

#define TRACE_LEVEL   ESP_TRACE_LEVEL
 

Functions

error_t ipv4ProcessEspHeader (NetInterface *interface, const Ipv4Header *ipv4Header, const NetBuffer *buffer, size_t offset, NetRxAncillary *ancillary)
 Process ESP protected packet. More...
 
void espDumpHeader (const EspHeader *espHeader)
 Dump ESP header for debugging purpose. More...
 

Detailed Description

ESP (IP Encapsulating Security Payload)

License

SPDX-License-Identifier: GPL-2.0-or-later

Copyright (C) 2022-2024 Oryx Embedded SARL. All rights reserved.

This file is part of CycloneIPSEC Open.

This program 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 2 of the License, or (at your option) any later version.

This program 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 this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.

Author
Oryx Embedded SARL (www.oryx-embedded.com)
Version
2.4.0

Definition in file esp.c.

Macro Definition Documentation

◆ TRACE_LEVEL

#define TRACE_LEVEL   ESP_TRACE_LEVEL

Definition at line 32 of file esp.c.

Function Documentation

◆ espDumpHeader()

void espDumpHeader ( const EspHeader espHeader)

Dump ESP header for debugging purpose.

Parameters
[in]espHeaderPointer to the ESP header

Definition at line 301 of file esp.c.

◆ ipv4ProcessEspHeader()

error_t ipv4ProcessEspHeader ( NetInterface interface,
const Ipv4Header ipv4Header,
const NetBuffer buffer,
size_t  offset,
NetRxAncillary ancillary 
)

Process ESP protected packet.

Parameters
[in]interfaceUnderlying network interface
[in]ipv4HeaderPointer to the IPv4 header
[in]bufferMulti-part buffer containing the ESP protected packet
[in]offsetOffset to the first byte of the ESP header
[in]ancillaryAdditional options passed to the stack along with the packet
Returns
Error code

Definition at line 61 of file esp.c.