• Pablo Neira Ayuso's avatar
    netfilter: ctnetlink: fix NULL dereference while trying to change helper · fd7462de
    Pablo Neira Ayuso authored
    The patch 1afc5679: "netfilter: nf_ct_helper: implement variable
    length helper private data" from Jun 7, 2012, leads to the following
    Smatch complaint:
    
    net/netfilter/nf_conntrack_netlink.c:1231 ctnetlink_change_helper()
             error: we previously assumed 'help->helper' could be null (see line 1228)
    
    This NULL dereference can be triggered with the following sequence:
    
    1) attach the helper for first time when the conntrack is created.
    2) remove the helper module or detach the helper from the conntrack
       via ctnetlink.
    3) attach helper again (the same or different one, no matter) to the
       that existing conntrack again via ctnetlink.
    
    This patch fixes the problem by removing the use case that allows you
    to re-assign again a helper for one conntrack entry via ctnetlink since
    I cannot find any practical use for it.
    Reported-by: default avatarDan Carpenter <dan.carpenter@oracle.com>
    Signed-off-by: default avatarPablo Neira Ayuso <pablo@netfilter.org>
    fd7462de
nf_conntrack_netlink.c 62.7 KB