1What's new in ppp-2.4.9. 2************************ 3 4* Support for new EAP (Extensible Authentication Protocol) methods: 5 - Support for EAP-TLS, from Jan Just Keijser and others 6 - Support for EAP-MSCHAPv2, from Eivind Næss, Thomas Omerzu, Tijs 7 Van Buggenhout and others 8 9* New pppd options: 10 - chap-timeout 11 - chapms-strip-domain 12 - replacedefaultroute 13 - noreplacedefaultroute 14 - ipv6cp-accept-remote 15 - lcp-echo-adaptive 16 - ip-up-script 17 - ip-down-script 18 - ca 19 - capath 20 - cert 21 - key 22 - crl-dir 23 - crl 24 - max-tls-version 25 - need-peer-eap 26 27* Fixes for CVE-2020-8597 and CVE-2015-3310. 28 29* libpcap is now required when compiling on Linux (previously, if 30 libpcap was not present, pppd would be compiled without packet 31 filtering support). 32 33* The rp-pppoe plugin has been renamed to pppoe, to distinguish it 34 from the upstream rp-pppoe code. Its options have changed names, 35 but the old names are kept as aliases. 36 37* The configure script now supports cross-compilation. 38 39* Many bug fixes and cleanups. 40 41 42What was new in ppp-2.4.8. 43************************** 44 45* New pppd options have been added: 46 - ifname, to set the name for the PPP interface device 47 - defaultroute-metric, to set the metric for the default route 48 - defaultroute6, to add an IPv6 default route (with nodefaultroute6 49 to prevent adding an IPv6 default route) 50 - up_sdnotify, to have pppd notify systemd when the link is up. 51 52* The rp-pppoe plugin has new options: 53 - host-uniq, to set the Host-Uniq value to send 54 - pppoe-padi-timeout, to set the timeout for discovery packets 55 - pppoe-padi-attempts, to set the number of discovery attempts. 56 57* Added the CLASS attribute in radius packets. 58 59* Sundry bug fixes. 60 61* Fixed warnings and issues found by static analysis. 62 63* Added Submitting-patches.md. 64 65 66What was new in ppp-2.4.7. 67************************** 68 69* Fixed a potential security issue in parsing option files (CVE-2014-3158). 70 71* There is a new "stop-bits" option, which takes an argument of 1 or 2, 72 indicating the number of stop bits to use for async serial ports. 73 74* Various bug fixes. 75 76 77What was new in ppp-2.4.6. 78************************** 79 80* Man page updates. 81 82* Several bug fixes. 83 84* Options files can now set and unset environment variables for 85 scripts. 86 87* The timeout for chat scripts can now be taken from an environment 88 variable. 89 90* There is a new option, master_detach, which allows pppd to detach 91 from the controlling terminal when it is the multilink bundle master 92 but its own link has terminated, even if the nodetach option has 93 been given. 94 95 96What was new in ppp-2.4.5. 97************************** 98 99* Under Linux, pppd can now operate in a mode where it doesn't request 100 the peer's IP address, as some peers refuse to supply an IP address. 101 Since Linux supports device routes as well as gateway routes, it's 102 possible to have no remote IP address assigned to the ppp interface 103 and still route traffic over it. 104 105* Pppd now works better with 3G modems that do strange things such as 106 sending IPCP Configure-Naks with the same values over and over again. 107 108* The PPP over L2TP plugin is included, which works with the pppol2tp 109 PPP channel code in the Linux kernel. This allows pppd to be used 110 to set up tunnels using the Layer 2 Tunneling Protocol. 111 112* A new 'enable-session' option has been added, which enables session 113 accounting via PAM or wtwp/wtmpx, as appropriate. See the pppd man 114 page for details. 115 116* Several bugs have been fixed. 117 118 119What was new in ppp-2.4.4. 120************************** 121 122* Pppd will now run /etc/ppp/ip-pre-up, if it exists, after creating 123 the ppp interface and configuring its IP addresses but before 124 bringing it up. This can be used, for example, for adding firewall 125 rules for the interface. 126 127* Lots of bugs fixed, particularly in the area of demand-dialled and 128 persistent connections. 129 130* The rp-pppoe plugin now accepts any interface name (that isn't an 131 existing pppd option name) without putting "nic-" on the front of 132 it, not just eth*, nas*, tap* and br*. 133 134 135What was new in ppp-2.4.3. 136************************** 137 138* The configure script now accepts --prefix and --sysconfdir options. 139 These default to /usr/local and /etc. If you want pppd put in 140 /usr/sbin as before, use ./configure --prefix=/usr. 141 142* Doing `make install' no longer puts example configuration files in 143 /etc/ppp. Use `make install-etcppp' if you want that. 144 145* The code has been updated to work with version 0.8.3 of libpcap. 146 Unfortunately the libpcap maintainers removed support for the 147 "inbound" and "outbound" keywords on PPP links, meaning that if you 148 link pppd with libpcap-0.8.3, you can't use those keywords in the 149 active-filter and pass-filter expressions. The support has been 150 reinstated in the CVS version and should be in future libpcap 151 releases. If you need the in/outbound keywords, use a later release 152 than 0.8.3, or get the CVS version from http://www.tcpdump.org. 153 154* There is a new option, child-timeout, which sets the length of time 155 that pppd will wait for child processes (such as the command 156 specified with the pty option) to exit before exiting itself. It 157 defaults to 5 seconds. After the timeout, pppd will send a SIGTERM 158 to any remaining child processes and exit. A value of 0 means no 159 timeout. 160 161* Various bugs have been fixed, including some CBCP packet parsing 162 bugs that could lead to the peer being able to crash pppd if CBCP 163 support is enabled. 164 165* Various fixes and enhancements to the radius and rp-pppoe plugins 166 have been added. 167 168* There is a new winbind plugin, from Andrew Bartlet of the Samba 169 team, which provides the ability to authenticate the peer against an 170 NT domain controller using MS-CHAP or MS-CHAPV2. 171 172* There is a new pppoatm plugin, by various authors, sent in by David 173 Woodhouse. 174 175* The multilink code has been substantially reworked. The first pppd 176 for a bundle still controls the ppp interface, but it doesn't exit 177 until all the links in the bundle have terminated. If the first 178 pppd is signalled to exit, it signals all the other pppds 179 controlling links in the bundle. 180 181* The TDB code has been updated to the latest version. This should 182 eliminate the problem that some people have seen where the database 183 file (/var/run/pppd.tdb) keeps on growing. Unfortunately, however, 184 the new code uses an incompatible database format. For this reason, 185 pppd now uses /var/run/pppd2.tdb as the database filename. 186 187 188What was new in ppp-2.4.2. 189************************** 190 191* The CHAP code has been rewritten. Pppd now has support for MS-CHAP 192 V1 and V2 authentication, both as server and client. The new CHAP 193 code is cleaner than the old code and avoids some copyright problems 194 that existed in the old code. 195 196* MPPE (Microsoft Point-to-Point Encryption) support has been added, 197 although the current implementation shouldn't be considered 198 completely secure. (There is no assurance that the current code 199 won't ever transmit an unencrypted packet.) 200 201* James Carlson's implementation of the Extensible Authentication 202 Protocol (EAP) has been added. 203 204* Support for the Encryption Control Protocol (ECP) has been added. 205 206* Some new plug-ins have been included: 207 - A plug-in for kernel-mode PPPoE (PPP over Ethernet) 208 - A plug-in for supplying the PAP password over a pipe from another 209 process 210 - A plug-in for authenticating using a Radius server. 211 212* Updates and bug-fixes for the Solaris port. 213 214* The CBCP (Call Back Control Protocol) code has been updated. There 215 are new options `remotenumber' and `allow-number'. 216 217* Extra hooks for plugins to use have been added. 218 219* There is now a `maxoctets' option, which causes pppd to terminate 220 the link once the number of bytes passed on the link exceeds a given 221 value. 222 223* There are now options to control whether pppd can use the IPCP 224 IP-Address and IP-Addresses options: `ipcp-no-address' and 225 `ipcp-no-addresses'. 226 227* Fixed several bugs, including potential buffer overflows in chat. 228 229 230What was new in ppp-2.4.1. 231************************** 232 233* Pppd can now print out the set of options that are in effect. The 234 new `dump' option causes pppd to print out the option values after 235 option parsing is complete. The `dryrun' option causes pppd to 236 print the options and then exit. 237 238* The option parsing code has been fixed so that options in the 239 per-tty options file are parsed correctly, and don't override values 240 from the command line in most cases. 241 242* The plugin option now looks in /usr/lib/pppd/<pppd-version> (for 243 example, /usr/lib/pppd/2.4.1b1) for shared objects for plugins if 244 there is no slash in the plugin name. 245 246* When loading a plugin, pppd will now check the version of pppd for 247 which the plugin was compiled, and refuse to load it if it is 248 different to pppd's version string. To enable this, the plugin 249 source needs to #include "pppd.h" and have a line saying: 250 char pppd_version[] = VERSION; 251 252* There is a bug in zlib, discovered by James Carlson, which can cause 253 kernel memory corruption if Deflate is used with the lowest setting, 254 8. As a workaround pppd will now insist on using at least 9. 255 256* Pppd should compile on Solaris and SunOS again. 257 258* Pppd should now set the MTU correctly on demand-dialled interfaces. 259 260 261What was new in ppp-2.4.0. 262************************** 263 264* Multilink: this package now allows you to combine multiple serial 265 links into one logical link or `bundle', for increased bandwidth and 266 reduced latency. This is currently only supported under the 267 2.4.x and later Linux kernels. 268 269* All the pppd processes running on a system now write information 270 into a common database. I used the `tdb' code from samba for this. 271 272* New hooks have been added. 273 274For a list of the changes made during the 2.3 series releases of this 275package, see the Changes-2.3 file. 276