diff options
author | Kozlov Dmitry <xeb@mail.ru> | 2013-05-31 16:12:26 +0400 |
---|---|---|
committer | Kozlov Dmitry <xeb@mail.ru> | 2013-05-31 16:12:26 +0400 |
commit | 05bb68599ae85b84bf793bb1600b17555dd0f9d2 (patch) | |
tree | c95487f1ec8d390cf5b671799d24293949a47d9f /accel-pppd/ctrl/pptp | |
parent | 405e580905790f22f17f736e996a4cea3635d800 (diff) | |
download | accel-ppp-05bb68599ae85b84bf793bb1600b17555dd0f9d2.tar.gz accel-ppp-05bb68599ae85b84bf793bb1600b17555dd0f9d2.zip |
pptp,l2tp: bind to port options
Diffstat (limited to 'accel-pppd/ctrl/pptp')
-rw-r--r-- | accel-pppd/ctrl/pptp/pptp.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/accel-pppd/ctrl/pptp/pptp.c b/accel-pppd/ctrl/pptp/pptp.c index e735c72c..d5b96c1e 100644 --- a/accel-pppd/ctrl/pptp/pptp.c +++ b/accel-pppd/ctrl/pptp/pptp.c @@ -778,13 +778,18 @@ static void pptp_init(void) fcntl(serv.hnd.fd, F_SETFD, fcntl(serv.hnd.fd, F_GETFD) | FD_CLOEXEC); addr.sin_family = AF_INET; - addr.sin_port = htons(PPTP_PORT); opt = conf_get_opt("pptp", "bind"); if (opt) addr.sin_addr.s_addr = inet_addr(opt); else addr.sin_addr.s_addr = htonl(INADDR_ANY); + + opt = conf_get_opt("pptp", "port"); + if (opt && atoi(opt) > 0) + addr.sin_port = htons(atoi(opt)); + else + addr.sin_port = htons(PPTP_PORT); setsockopt(serv.hnd.fd, SOL_SOCKET, SO_REUSEADDR, &serv.hnd.fd, 4); if (bind (serv.hnd.fd, (struct sockaddr *) &addr, sizeof (addr)) < 0) { |