appletalk: Set error code if register_snap_client failed [Linux 5.1]

appletalk: Set error code if register_snap_client failed [Linux 5.1]

This Linux kernel change "appletalk: Set error code if register_snap_client failed" is included in the Linux 5.1 release. This change is authored by YueHaibing <yuehaibing [at] huawei.com> on Tue Apr 30 19:34:08 2019 +0800. The commit for this change in Linux stable tree is c93ad13 (patch).

appletalk: Set error code if register_snap_client failed

If register_snap_client fails in atalk_init,
error code should be set, otherwise it will
triggers NULL pointer dereference while unloading
module.

Fixes: 9804501fa122 ("appletalk: Fix potential NULL pointer dereference in unregister_snap_client")
Signed-off-by: YueHaibing <[email protected]>
Signed-off-by: David S. Miller <[email protected]>

There is one line of Linux source code added/deleted in this change. Code changes to Linux kernel are as follows.

 net/appletalk/ddp.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/net/appletalk/ddp.c b/net/appletalk/ddp.c
index 709d254..dbe8b19 100644
--- a/net/appletalk/ddp.c
+++ b/net/appletalk/ddp.c
@@ -1920,6 +1920,7 @@ static int __init atalk_init(void)
    ddp_dl = register_snap_client(ddp_snap_id, atalk_rcv);
    if (!ddp_dl) {
        pr_crit("Unable to register DDP with SNAP.\n");
+       rc = -ENOMEM;
        goto out_sock;
    }

Leave a Reply

Your email address will not be published. Required fields are marked *