• Arnd Bergmann's avatar
    ipvs: initialize returned data in do_ip_vs_get_ctl · b61a602e
    Arnd Bergmann authored
    As reported by a gcc warning, the do_ip_vs_get_ctl does not initalize
    all the members of the ip_vs_timeout_user structure it returns if
    at least one of the TCP or UDP protocols is disabled for ipvs.
    
    This makes sure that the data is always initialized, before it is
    returned as a response to IPVS_CMD_GET_CONFIG or printed as a
    debug message in IPVS_CMD_SET_CONFIG.
    
    Without this patch, building ARM ixp4xx_defconfig results in:
    
    net/netfilter/ipvs/ip_vs_ctl.c: In function 'ip_vs_genl_set_cmd':
    net/netfilter/ipvs/ip_vs_ctl.c:2238:47: warning: 't.udp_timeout' may be used uninitialized in this function [-Wuninitialized]
    net/netfilter/ipvs/ip_vs_ctl.c:3322:28: note: 't.udp_timeout' was declared here
    net/netfilter/ipvs/ip_vs_ctl.c:2238:47: warning: 't.tcp_fin_timeout' may be used uninitialized in this function [-Wuninitialized]
    net/netfilter/ipvs/ip_vs_ctl.c:3322:28: note: 't.tcp_fin_timeout' was declared here
    net/netfilter/ipvs/ip_vs_ctl.c:2238:47: warning: 't.tcp_timeout' may be used uninitialized in this function [-Wuninitialized]
    net/netfilter/ipvs/ip_vs_ctl.c:3322:28: note: 't.tcp_timeout' was declared here
    Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
    Acked-by: default avatarJulian Anastasov <ja@ssi.bg>
    Signed-off-by: default avatarSimon Horman <horms@verge.net.au>
    b61a602e
ip_vs_ctl.c 93.9 KB