lkml.org 
[lkml]   [2017]   [Nov]   [28]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH net-next 2/3] xfrm: Fix xfrm_dev_state_add to fail for unsupported HW SA option
    Date
    From: Yossef Efraim <yossefe@mellanox.com>

    xfrm_dev_state_add function returns success for unsupported HW SA options.
    Resulting the calling function to create SW SA without corrlating HW SA.
    Desipte IPSec device offloading option was chosen.
    These not supported HW SA options are hard coded within xfrm_dev_state_add
    function.
    SW backward compatibility will break if we add any of these option as old
    HW will fail with new SW.

    This patch changes the behaviour to return -EINVAL in case unsupported
    option is chosen.
    Notifying user application regarding failure and not breaking backward
    compatibility for newly added HW SA options.

    Signed-off-by: Yossef Efraim <yossefe@mellanox.com>
    ---
    net/xfrm/xfrm_device.c | 2 +-
    1 file changed, 1 insertion(+), 1 deletion(-)

    diff --git a/net/xfrm/xfrm_device.c b/net/xfrm/xfrm_device.c
    index 30e5746..dc68d9c 100644
    --- a/net/xfrm/xfrm_device.c
    +++ b/net/xfrm/xfrm_device.c
    @@ -67,7 +67,7 @@ int xfrm_dev_state_add(struct net *net, struct xfrm_state *x,

    /* We don't yet support UDP encapsulation, TFC padding and ESN. */
    if (x->encap || x->tfcpad || (x->props.flags & XFRM_STATE_ESN))
    - return 0;
    + return -EINVAL;

    dev = dev_get_by_index(net, xuo->ifindex);
    if (!dev) {
    --
    2.8.1
    \
     
     \ /
      Last update: 2017-11-28 10:52    [W:4.082 / U:0.020 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site