ipv6_pmtu.c File Reference

Path MTU Discovery for IPv6. More...

#include "core/net.h"
#include "core/ip.h"
#include "ipv6/ipv6.h"
#include "ipv6/ipv6_pmtu.h"
#include "ipv6/ndp.h"
#include "ipv6/ndp_cache.h"
#include "debug.h"

Go to the source code of this file.

Macros

#define TRACE_LEVEL   IPV6_TRACE_LEVEL
 

Functions

size_t ipv6GetPathMtu (NetInterface *interface, const Ipv6Addr *destAddr)
 Retrieve the PMTU for the specified path. More...
 
void ipv6UpdatePathMtu (NetInterface *interface, const Ipv6Addr *destAddr, size_t tentativePathMtu)
 Update the PMTU for the specified path. More...
 

Detailed Description

Path MTU Discovery for IPv6.

License

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

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

This file is part of CycloneTCP 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.4

Definition in file ipv6_pmtu.c.

Macro Definition Documentation

◆ TRACE_LEVEL

#define TRACE_LEVEL   IPV6_TRACE_LEVEL

Definition at line 32 of file ipv6_pmtu.c.

Function Documentation

◆ ipv6GetPathMtu()

size_t ipv6GetPathMtu ( NetInterface interface,
const Ipv6Addr destAddr 
)

Retrieve the PMTU for the specified path.

Parameters
[in]interfaceUnderlying network interface
[in]destAddrDestination IPv6 address
Returns
PMTU value

Definition at line 54 of file ipv6_pmtu.c.

◆ ipv6UpdatePathMtu()

void ipv6UpdatePathMtu ( NetInterface interface,
const Ipv6Addr destAddr,
size_t  tentativePathMtu 
)

Update the PMTU for the specified path.

Parameters
[in]interfaceUnderlying network interface
[in]destAddrDestination IPv6 address
[in]tentativePathMtuTentative PMTU value

Definition at line 93 of file ipv6_pmtu.c.