aboutsummaryrefslogtreecommitdiffstats
path: root/src/libhydra/kernel/kernel_interface.h
diff options
context:
space:
mode:
authorTobias Brunner <tobias@strongswan.org>2012-09-18 17:55:38 +0200
committerTobias Brunner <tobias@strongswan.org>2012-09-21 18:16:25 +0200
commitdad6d904ee96a2411c4bfa30cc59f1451f6e13df (patch)
treed8444ca189a4c39d06e3b595d16edd1be3c17b96 /src/libhydra/kernel/kernel_interface.h
parent662534657f4336b220ea10c17e6df2d422970ea3 (diff)
downloadstrongswan-dad6d904ee96a2411c4bfa30cc59f1451f6e13df.tar.bz2
strongswan-dad6d904ee96a2411c4bfa30cc59f1451f6e13df.tar.xz
Use source address in get_nexthop() call
Otherwise the nexthop returned might belong to a different route than the one actually used with the current source address.
Diffstat (limited to 'src/libhydra/kernel/kernel_interface.h')
-rw-r--r--src/libhydra/kernel/kernel_interface.h6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/libhydra/kernel/kernel_interface.h b/src/libhydra/kernel/kernel_interface.h
index a17e8c6bb..338cf39af 100644
--- a/src/libhydra/kernel/kernel_interface.h
+++ b/src/libhydra/kernel/kernel_interface.h
@@ -282,7 +282,7 @@ struct kernel_interface_t {
* Does a route lookup to get the source address used to reach dest.
* The returned host is allocated and must be destroyed.
* An optional src address can be used to check if a route is available
- * for given source to dest.
+ * for the given source to dest.
*
* @param dest target destination address
* @param src source address to check, or NULL
@@ -296,11 +296,13 @@ struct kernel_interface_t {
*
* Does a route lookup to get the next hop used to reach dest.
* The returned host is allocated and must be destroyed.
+ * An optional src address can be used to check if a route is available
+ * for the given source to dest.
*
* @param dest target destination address
* @return next hop address, NULL if unreachable
*/
- host_t* (*get_nexthop)(kernel_interface_t *this, host_t *dest);
+ host_t* (*get_nexthop)(kernel_interface_t *this, host_t *dest, host_t *src);
/**
* Get the interface name of a local address.