From 26f8a6622d8b607bd0edcd769886a2ff37232e6f Mon Sep 17 00:00:00 2001 From: Kozlov Dmitry Date: Fri, 29 Oct 2010 17:30:19 +0400 Subject: ppp: fixed twice ip address configuration --- accel-pptpd/ppp/ipcp_opt_ipaddr.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/accel-pptpd/ppp/ipcp_opt_ipaddr.c b/accel-pptpd/ppp/ipcp_opt_ipaddr.c index b0f662e..d96b6c1 100644 --- a/accel-pptpd/ppp/ipcp_opt_ipaddr.c +++ b/accel-pptpd/ppp/ipcp_opt_ipaddr.c @@ -28,6 +28,7 @@ struct ipaddr_option_t { struct ipcp_option_t opt; struct ipdb_item_t *ip; + int started:1; }; static struct ipcp_option_handler_t ipaddr_opt_hnd= @@ -119,6 +120,11 @@ static int ipaddr_recv_conf_req(struct ppp_ipcp_t *ipcp, struct ipcp_option_t *o return IPCP_OPT_NAK; ack: + if (ipaddr_opt->started) + return IPCP_OPT_ACK; + + ipaddr_opt->started = 1; + ipcp->ppp->ipaddr = ipaddr_opt->ip->addr; ipcp->ppp->peer_ipaddr = ipaddr_opt->ip->peer_addr; -- cgit v1.2.3