1. This is the pptpd project TODO list.
  2. (Note: tasks that are probably easy are marked with a [JJ], which
  3. means Junior Jobs, following the KDE tradition suggested by Adriaan de
  4. Groot in May 2004.)
  5. 20060714-1, 1.3.2, bcrelay is built even if --enable-bcrelay is not used.
  6. 20050105-1, 1.2.1, denial of service, for ten seconds (or --stimeout)
  7. the pptpd will not process further connections while it waits for a
  8. client to send data. The second select() will prevent any further
  9. accept() calls. To be tested.
  10. 20041108-0, 1.2.1, vpnstats does not parse RHEL3 log output
  11. successfully. It also creates a cron.weekly entry that is not removed
  12. when the package is removed. Yet to test if works okay.
  13. [JJ]
  14. 20040811-0, 1.2.1, RFC2637 timers IDLE_WAIT and MAX_ECHO_WAIT, in
  15. pptpdefs.h, make these configurable, requested by Tobias Brox. [JJ]
  16. 20040623-0, 1.2.1, "Plugin /usr/lib/pptpd/ is for pppd
  17. version 2.4.2, this is 2.4.3" happens if pppd 2.4.3 is installed, or
  18. vice versa if 2.4.2 is installed. [JJ] Workaround on common
  19. distributions is to use makepackage instead of "make install".
  20. pptpd.init is also affected, as it has a hardcoded path to pptpd.
  21. Configure script should detect or accept version of pppd to build
  22. against.
  23. 20040521-4, 1.2.0-b3, running on Fedora Core 1, kernel ? , when a
  24. connection arrives a warning is issued by the kernel "application bug:
  25. pptpctrl($PID) has SIGCHLD set to SIG_IGN but calls wait(). (see the
  26. NOTES section of 'man 2 wait'). Workaround activated."
  27. 20040521-0, 1.2.0-b3, write bcrelay man page. (Debian lintian for
  28. pptpd 1.1.4-0b4-1) [JJ]
  29. feature: nuke prior login by user, by writing a new pppd plugin.
  30. feature: prevent login by user if prior login still in progress, using
  31. pppd plugin that captures old hook and re-uses it, during chap auth.
  32. 20040428-7, CVS HEAD, minor, pptpctrl.c refers to hard coded path
  33. /usr/lib/pptpd/ instead of path derived from prefix
  34. given to configure script. also, the rpm build fails if not run in a
  35. fakeroot.
  36. review debian bug reports for pptpd package
  38. 20040426-0 bug: terminating immediately on CALL_CLR_RQST from client
  39. (1.2.0-b3) may violate the RFC, but was done to fix zombie pppd, Bruno
  40. will try older version to gather system state information to see why
  41. it happened, but there is indeed a design defect that doesn't reap
  42. (wait() on the PID of) the pppd it had previously forked. it probably
  43. isn't right to simply kill() the pppd until it has had a chance to
  44. finish up, e.g. ip-down scripts. context is pptpctrl.c. on the other
  45. hand, if a stop control connection request arrives, are the active
  46. connections supposed to be closed; there are reports of pppd living
  47. on.
  48. minor bug: pptpctrl.c:302 (1.11) there is a test for absolute file
  49. descriptor numbers, which is probably not portable.
  50. bug: 1.2.0-b3 configfile.c opens, reads and closes /etc/pptpd.conf as
  51. many times as there are possible option values, and only returns the
  52. first match for a keyword, not the last.
  53. 20030214, ignore EPERM on GRE write for a short time in case netfilter
  54. is being adjusted by ip-up scripts, Bug #181005.
  55. 20030801, 1.1.3, XP seems to need mtu negotiation 4 lower than
  56. serverside. MS PPTP-server handles this correctly.
  57. 20030620, 1.1.3, PPTP daemon waiting for infinite time if the
  58. pptpd.conf file does not have a new line character at the EOF. So we
  59. need a config-check routine. It is allready there, but it seems to
  60. output to stdout.
  61. 20030611, 1.1.3, pptpd incorrectly hides all pppd error output. This
  62. is a defect and should be fixed. It apparently doesn't even wait for
  63. and report the pppd exit status.
  64. 20030526, 1.1.3, Make choice between slirp, pppd and BSD userspace
  65. PPPD a runtime one instead of compile time.
  66. 20030218, 1.1.3, ask IP-info from a real DHCP-server. It is possible
  67. to get a Radius-server to do this.
  68. 20030128, 1.1.3, Make the logentries more verbose, so that they
  69. actually mean something to the admins.
  70. 20021220, 1.1.3, Add a way to define pools for different usergroups.
  71. 19990802, 1.1.3, We don't actually implement any kind of window
  72. protocol, congestion control, etc, etc. Very simple algorithm which
  73. works well on LANs and good performance links but could be improved
  74. for slow distant dialups/bad routing and links.
  75. 19990705, 1.1.3, PNS mode and all things which go with it aren't
  76. supported properly. We're only an IP tunnelling PAC, and our clients
  77. act as a PNS, as per the draft. We may implement PNS mode and related
  78. things like multiple calls from one client IP in the future
  79. (post-1.0).
  80. 19990413, 1.1.3, SET LINK INFO (CTRL Message 15) is not fully
  81. implemented. This doesn't cause any problem with Win95/98/NT or Linux
  82. clients. NT clients send a default set of ACCMs which we validate and
  83. ignore, the others don't send anything. Probably fine for all IP
  84. tunneling clients (post-1.0).