📄 todo
字号:
8th April 2005On Thu, Apr 07, 2005 at 07:36:41AM -0700, Roark Hennessy wrote:> I find in order to get the tunnel working I have to do a> route add -host <target_vpn_addr> gateway <my-netgear-wireless-router> dev+ethN> Can this be done automatically in the config somewhere?Not everybody needs this in order to get the tunnel working, it dependson the configuration of the server, and it is problematic calculatingthe correct route to add. However, the GUI PPTP client (pptpconfig)does this automatically, and when done unnecessarily it seems harmless.I'll take a patch that implements the same thing in C within pptp, sothat people who don't use the GUI get it done for them.Here's what the pptpconfig.php program does;- the IP address of the PPTP server is obtained from the name, using gethostbyname(),- the command "ip route get $ip | head -1" is executed, where $ip is the IP address determined above, and the result of the command is stored; it is a route specification of the path to the server before the tunnel is started,- in routing_start(), an "ip route add" command is done using the route specification obtained above,- when the tunnel is shutdown, an "ip route del" command is done using the same route specification.I would prefer that the patch implements this by embedding theequivalent syscalls within the pptp program, rather than use system() orpopen() to execute the /usr/sbin/ip program.I would also prefer that there be a command line option for disablingthe feature.--10th March 2005- call manager is not being reused as it was designed to be; if atunnel is started within a minute of a tunnel being stopped, it doesnot succeed; symptom is LCP ConfReq's without any traffic from theserver.--- finish --max-echo-wait11th August 2004- add two configurable timeouts for echo generation and echo reply timeout, requested by Tobias Brox.- ship .spec with tarball.5th June 2004- command line as shown by ps is corrupted. Reported by Andre Ruiz <andre@ruiz.net>5th June 2004- on Fedora Core 2, after the tunnel is stopped by the GUI, the pptpprocess spins with a select() on FD's 0 and 1 (the control connectionand the UNIX domain socket respectively) and read()'s on FD 0 whichreturn 0. Eventually the process stops because of control connectionping failure. Before that happens, any attempt to start anotherconnection appears to hang; probably because the process already has araw socket open to receive GRE packets from the server.pptp should handle a read() returning zero on the control connectionas a termination.# lsofCOMMAND PID USER FD TYPE DEVICE SIZE NODE NAMEpptp 4082 root 0u IPv4 12307 TCP lenny.lan:ms-sql-s->quozl.lan:1723 (CLOSE_WAIT)pptp 4082 root 1u unix 0x04698380 12308 /var/run/pptp/255.255.255.255pptp 4082 root 2w CHR 1,3 67097 /dev/nullpptp 4082 root 3u unix 0x04698500 12304 socketpptp 4082 root 4u CHR 136,5 7 /dev/pts/5pptp 4082 root 5u CHR 136,5 7 /dev/pts/5pptp 4082 root 6u CHR 136,5 7 /dev/pts/5pptp 4082 root 7r FIFO 0,7 12241 pipepptp 4082 root 8w FIFO 0,7 12241 pipepptp 4082 root 9u raw 12305 0800000A:002F->0500000A:0000 st=01pptp 4082 root 10u unix 0x04698b00 12310 /var/run/pptp/255.255.255.255# straceread(0, "", 512) = 0select(2, [0 1], [], NULL, NULL) = 1 (in [0])read(0, "", 512) = 0select(2, [0 1], [], NULL, NULL) = 1 (in [0])13th February 2004- timeout connect earlier, with option to extend timeout.11th June 2003- support --version [JJ]20th May 2003- GRE stats to a pipe or shared memory, for GUI to use15th February 2003- pptp.8 update man page for new options- pptp.c long_options array should use NULL for second last arg, not 0- pptp.c use getopt_long more simply, e.g. set flags in option array1st May 2002- log failure of write() to raw socket, as Ryan Murray <rmurray@debian.org> has encountered an EPERM situation that was not being logged.12th February 2002- clean up -T errors in pptp-command,23rd December 2000Things to do: Autoconf/automake this beastie. Fix do_gre_copy semantics to properly handle multiple calls. Like the call manager, there should only be one gre-copy process per connection. This process needs to funnel packets to different output tty's, though, depending on the call-id embedded in the GRE encapsulation. pptp.c must then be modified to use an already-existing gre-copy process in the same way it uses an already-existing call manager.$Id: TODO,v 1.23 2005/04/07 23:35:11 quozl Exp $
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -