diff --git a/drivers/net/pptp.c b/drivers/net/pptp.c
index e771e8d27eb72c8a21a3d0884aa6eec06530b34a..1286fe212dc4585af3659ddb066d00e9283f2ce2 100644
--- a/drivers/net/pptp.c
+++ b/drivers/net/pptp.c
@@ -271,8 +271,8 @@ static int pptp_xmit(struct ppp_channel *chan, struct sk_buff *skb)
 		iph->frag_off	=	0;
 	iph->protocol = IPPROTO_GRE;
 	iph->tos      = 0;
-	iph->daddr    = rt->rt_dst;
-	iph->saddr    = rt->rt_src;
+	iph->daddr    = fl4.daddr;
+	iph->saddr    = fl4.saddr;
 	iph->ttl      = ip4_dst_hoplimit(&rt->dst);
 	iph->tot_len  = htons(skb->len);