diff options
author | Jeremy Kerr <jk@codeconstruct.com.au> | 2025-07-02 14:20:14 +0800 |
---|---|---|
committer | Paolo Abeni <pabeni@redhat.com> | 2025-07-08 12:39:24 +0200 |
commit | 48e1736e5dc1dce875fdaba9b99c01dd4cd226a0 (patch) | |
tree | 26ca5216cfa4c1eb04f10a41bf7242e45dad2733 /net/mctp/test/utils.c | |
parent | ad39c12fcee34b8980a80ad5c803bca9906fbd4e (diff) |
net: mctp: test: Add tests for gateway routes
Add a few kunit tests for the gateway routing. Because we have multiple
route types now (direct and gateway), rename mctp_test_create_route to
mctp_test_create_route_direct, and add a _gateway variant too.
Signed-off-by: Jeremy Kerr <jk@codeconstruct.com.au>
Link: https://patch.msgid.link/20250702-dev-forwarding-v5-14-1468191da8a4@codeconstruct.com.au
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
Diffstat (limited to 'net/mctp/test/utils.c')
-rw-r--r-- | net/mctp/test/utils.c | 33 |
1 files changed, 29 insertions, 4 deletions
diff --git a/net/mctp/test/utils.c b/net/mctp/test/utils.c index 97b05e340586..01f5af416b81 100644 --- a/net/mctp/test/utils.c +++ b/net/mctp/test/utils.c @@ -119,10 +119,10 @@ static struct mctp_test_route *mctp_route_test_alloc(void) return rt; } -struct mctp_test_route *mctp_test_create_route(struct net *net, - struct mctp_dev *dev, - mctp_eid_t eid, - unsigned int mtu) +struct mctp_test_route *mctp_test_create_route_direct(struct net *net, + struct mctp_dev *dev, + mctp_eid_t eid, + unsigned int mtu) { struct mctp_test_route *rt; @@ -144,6 +144,31 @@ struct mctp_test_route *mctp_test_create_route(struct net *net, return rt; } +struct mctp_test_route *mctp_test_create_route_gw(struct net *net, + unsigned int netid, + mctp_eid_t eid, + mctp_eid_t gw, + unsigned int mtu) +{ + struct mctp_test_route *rt; + + rt = mctp_route_test_alloc(); + if (!rt) + return NULL; + + rt->rt.min = eid; + rt->rt.max = eid; + rt->rt.mtu = mtu; + rt->rt.type = RTN_UNSPEC; + rt->rt.dst_type = MCTP_ROUTE_GATEWAY; + rt->rt.gateway.eid = gw; + rt->rt.gateway.net = netid; + + list_add_rcu(&rt->rt.list, &net->mctp.routes); + + return rt; +} + /* Convenience function for our test dst; release with mctp_test_dst_release() */ void mctp_test_dst_setup(struct kunit *test, struct mctp_dst *dst, |