30#ifndef TINS_ROUTING_UTILS_H
31#define TINS_ROUTING_UTILS_H
35#include <tins/macros.h>
36#include <tins/ip_address.h>
37#include <tins/ipv6_address.h>
110template<
typename ForwardIterator>
118template<
typename ForwardIterator>
174template<
typename ForwardIterator>
177 for (
size_t i = 0; i < entries.size(); ++i) {
178 *output = entries[i];
183template<
typename ForwardIterator>
186 for (
size_t i = 0; i < entries.size(); ++i) {
187 *output = entries[i];
Abstraction of an IPv4 address.
Definition ip_address.h:45
Definition ipv6_address.h:45
TINS_API std::vector< Route6Entry > route6_entries()
Retrieves entries in the routing table.
Definition routing_utils.cpp:360
TINS_API bool gateway_from_ip(IPv4Address ip, IPv4Address &gw_addr)
Finds the gateway's IP address for the given IP address.
Definition routing_utils.cpp:434
TINS_API std::set< std::string > network_interfaces()
List all network interfaces.
Definition routing_utils.cpp:415
void route6_entries(ForwardIterator output)
Retrieves entries in the routing table.
Definition routing_utils.h:184
TINS_API std::vector< RouteEntry > route_entries()
Retrieves entries in the routing table.
Definition routing_utils.cpp:333
void route_entries(ForwardIterator output)
Retrieves entries in the routing table.
Definition routing_utils.h:175
The Tins namespace.
Definition address_range.h:38
Definition routing_utils.h:78
IPv6Address mask
Definition routing_utils.h:92
IPv6Address gateway
Definition routing_utils.h:97
IPv6Address destination
Definition routing_utils.h:87
std::string interface
Definition routing_utils.h:82
int metric
Definition routing_utils.h:102
Definition routing_utils.h:48
IPv4Address gateway
Definition routing_utils.h:62
IPv4Address mask
Definition routing_utils.h:67
int metric
Definition routing_utils.h:72
IPv4Address destination
Definition routing_utils.h:57
std::string interface
Definition routing_utils.h:52