diff options
Diffstat (limited to 'src/libhydra/kernel')
-rw-r--r-- | src/libhydra/kernel/kernel_interface.c | 4 | ||||
-rw-r--r-- | src/libhydra/kernel/kernel_interface.h | 5 | ||||
-rw-r--r-- | src/libhydra/kernel/kernel_net.h | 4 |
3 files changed, 9 insertions, 4 deletions
diff --git a/src/libhydra/kernel/kernel_interface.c b/src/libhydra/kernel/kernel_interface.c index c9379dca9..3fa28e054 100644 --- a/src/libhydra/kernel/kernel_interface.c +++ b/src/libhydra/kernel/kernel_interface.c @@ -302,13 +302,13 @@ METHOD(kernel_interface_t, get_source_addr, host_t*, } METHOD(kernel_interface_t, get_nexthop, host_t*, - private_kernel_interface_t *this, host_t *dest, host_t *src) + private_kernel_interface_t *this, host_t *dest, int prefix, host_t *src) { if (!this->net) { return NULL; } - return this->net->get_nexthop(this->net, dest, src); + return this->net->get_nexthop(this->net, dest, prefix, src); } METHOD(kernel_interface_t, get_interface, bool, diff --git a/src/libhydra/kernel/kernel_interface.h b/src/libhydra/kernel/kernel_interface.h index bba6a5898..cd550383c 100644 --- a/src/libhydra/kernel/kernel_interface.h +++ b/src/libhydra/kernel/kernel_interface.h @@ -330,9 +330,12 @@ struct kernel_interface_t { * for the given source to dest. * * @param dest target destination address + * @param prefix prefix length if dest is a subnet, -1 for auto + * @param src source address to check, or NULL * @return next hop address, NULL if unreachable */ - host_t* (*get_nexthop)(kernel_interface_t *this, host_t *dest, host_t *src); + host_t* (*get_nexthop)(kernel_interface_t *this, host_t *dest, + int prefix, host_t *src); /** * Get the interface name of a local address. Interfaces that are down or diff --git a/src/libhydra/kernel/kernel_net.h b/src/libhydra/kernel/kernel_net.h index 8c448ddbc..4312c17d1 100644 --- a/src/libhydra/kernel/kernel_net.h +++ b/src/libhydra/kernel/kernel_net.h @@ -86,10 +86,12 @@ struct kernel_net_t { * for the given source to dest. * * @param dest target destination address + * @param prefix prefix length if dest is a subnet, -1 for auto * @param src source address to check, or NULL * @return next hop address, NULL if unreachable */ - host_t* (*get_nexthop)(kernel_net_t *this, host_t *dest, host_t *src); + host_t* (*get_nexthop)(kernel_net_t *this, host_t *dest, int prefix, + host_t *src); /** * Get the interface name of a local address. Interfaces that are down or |