• Gerrit Renker's avatar
    net-2.6 [Bug-Fix][dccp]: fix oops caused after failed initialisation · d14a0ebd
    Gerrit Renker authored
    dccp: fix panic caused by failed initialisation
    
    This fixes a kernel panic reported thanks to Andre Noll:
    
    if DCCP is compiled into the kernel and any out of the initialisation
    steps in net/dccp/proto.c:dccp_init() fail, a subsequent attempt to create
    a SOCK_DCCP socket will panic, since inet{,6}_create() are not prevented
    from creating DCCP sockets.
    
    This patch fixes the problem by propagating a failure in dccp_init() to
    dccp_v{4,6}_init_net(), and from there to dccp_v{4,6}_init(), so that the
    DCCP protocol is not made available if its initialisation fails.
    Signed-off-by: default avatarGerrit Renker <gerrit@erg.abdn.ac.uk>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    d14a0ebd
proto.c 27.7 KB