diff options
author | Simon Horman <horms@verge.net.au> | 2008-09-16 20:10:42 -0400 |
---|---|---|
committer | Simon Horman <horms@verge.net.au> | 2008-09-16 20:10:42 -0400 |
commit | dff630ddad3884b99fae3ad92f5eccbf26618679 (patch) | |
tree | d5c324c78b40101273c824f7d9510503421e87e7 | |
parent | 9e691ed68d94ab3047e028736641445b4cf74d67 (diff) |
ipvs: supply a valid 0 address to ip_vs_conn_new()
ip_vs_conn_new expects a union nf_inet_addr as the type for its address
parameters, not a plain integer.
This problem was detected by sparse.
make C=1
CHECK net/ipv4/ipvs/ip_vs_core.c
net/ipv4/ipvs/ip_vs_core.c:469:9: warning: Using plain integer as NULL pointer
Acked-by: Sven Wegener <sven.wegener@stealer.net>
Acked-by: Julius Volz <juliusv@google.com>
Signed-off-by: Simon Horman <horms@verge.net.au>
-rw-r--r-- | net/ipv4/ipvs/ip_vs_core.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/net/ipv4/ipvs/ip_vs_core.c b/net/ipv4/ipvs/ip_vs_core.c index 80a4fcf33a54..ece748dbd0cd 100644 --- a/net/ipv4/ipvs/ip_vs_core.c +++ b/net/ipv4/ipvs/ip_vs_core.c | |||
@@ -457,6 +457,7 @@ int ip_vs_leave(struct ip_vs_service *svc, struct sk_buff *skb, | |||
457 | if (sysctl_ip_vs_cache_bypass && svc->fwmark && unicast) { | 457 | if (sysctl_ip_vs_cache_bypass && svc->fwmark && unicast) { |
458 | int ret, cs; | 458 | int ret, cs; |
459 | struct ip_vs_conn *cp; | 459 | struct ip_vs_conn *cp; |
460 | union nf_inet_addr daddr = { .all = { 0, 0, 0, 0 } }; | ||
460 | 461 | ||
461 | ip_vs_service_put(svc); | 462 | ip_vs_service_put(svc); |
462 | 463 | ||
@@ -465,7 +466,7 @@ int ip_vs_leave(struct ip_vs_service *svc, struct sk_buff *skb, | |||
465 | cp = ip_vs_conn_new(svc->af, iph.protocol, | 466 | cp = ip_vs_conn_new(svc->af, iph.protocol, |
466 | &iph.saddr, pptr[0], | 467 | &iph.saddr, pptr[0], |
467 | &iph.daddr, pptr[1], | 468 | &iph.daddr, pptr[1], |
468 | 0, 0, | 469 | &daddr, 0, |
469 | IP_VS_CONN_F_BYPASS, | 470 | IP_VS_CONN_F_BYPASS, |
470 | NULL); | 471 | NULL); |
471 | if (cp == NULL) | 472 | if (cp == NULL) |