[DCCP]: Fix checksum routines

Signed-off-by: Yoshifumi Nishida <nishida@csl.sony.co.jp>
Signed-off-by: Arnaldo Carvalho de Melo <acme@ghostprotocols.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
diff --git a/net/dccp/output.c b/net/dccp/output.c
index 22ca291..4945eaa 100644
--- a/net/dccp/output.c
+++ b/net/dccp/output.c
@@ -93,7 +93,8 @@
 			break;
 		}
 
-		dh->dccph_checksum = dccp_v4_checksum(skb);
+		dh->dccph_checksum = dccp_v4_checksum(skb, inet->saddr,
+						      inet->daddr);
 
 		if (dcb->dccpd_type == DCCP_PKT_ACK ||
 		    dcb->dccpd_type == DCCP_PKT_DATAACK)
@@ -193,7 +194,8 @@
 	dccp_hdr_set_seq(dh, dccp_rsk(req)->dreq_iss);
 	dccp_hdr_set_ack(dccp_hdr_ack_bits(skb), dccp_rsk(req)->dreq_isr);
 
-	dh->dccph_checksum = dccp_v4_checksum(skb);
+	dh->dccph_checksum = dccp_v4_checksum(skb, inet_rsk(req)->loc_addr,
+					      inet_rsk(req)->rmt_addr);
 
 	DCCP_INC_STATS(DCCP_MIB_OUTSEGS);
 	return skb;
@@ -242,7 +244,8 @@
 
 	dccp_hdr_reset(skb)->dccph_reset_code = code;
 
-	dh->dccph_checksum = dccp_v4_checksum(skb);
+	dh->dccph_checksum = dccp_v4_checksum(skb, inet_sk(sk)->saddr,
+					      inet_sk(sk)->daddr);
 
 	DCCP_INC_STATS(DCCP_MIB_OUTSEGS);
 	return skb;