linux-old/net/Changes
<<
>>
Prefs
   1
   2Ongoing things.
   3
   40.0
   5---
   6Initial patches to catch up with things we want to add.
   7
   8o       Merged in the Jorge Cwik fast checksum.         [TESTED]
   9o       Added Arnt Gulbrandsen's fast UDP build.        [TESTED]
  10o       Pauline Middelinks masquerade patch             [TESTED]
  11
  12
  130.1
  14---
  15
  16o       Remove excess transmit request calls.           [TESTED]
  17o       Set type before calling netif_rx()              [TESTED]
  18o       Inline sock_rcv_skb                             [TESTED]
  19o       Cache last socket for UDP                       [TESTED]
  20o       Cache last socket for TCP                       [TESTED]
  21o       Routing cache (only in ip_build_header so far)  [TESTED]
  22------->>>>>  ALPHA 001  <<<<<----------
  23o       eql load balancing driver.                      [TESTED]
  24o       Token ring drivers.                             [TESTED]
  25o       IPIP and tunnels                                [TESTED]
  26o       Fix ethernet/token ring promisc broadcast error [TESTED]
  27        (pkt_type set to OTHERHOST in error).
  28o       Fixed bug in the routing caches                 [TESTED]
  29o       Protocol header cache support                   [TESTED]
  30o       Fixed ip_build_xmit loopback bugs               [TESTED]
  31o       Fixes for SIOCGSTAMP on SOCK_PACKET             [TESTED]
  32o       Perfect hash on net_bh().                       [TESTED]
  33o       Sonix ISDN driver.                              [SEPARATED/SENT]
  34o       Use ip_build_xmit for raw sockets               [TESTED]
  35o       3c501 fixed for speed                           [TESTED]
  36------->>>>>  ALPHA 002  <<<<<--------
  37o       PLIP, PPP and de bugs fixed                     [TESTED]
  38o       Merged in G4KLX AX.25 state machine, with KA9Q
  39        donated headers to get BSD free AX.25 done.     [TESTED]
  40o       Massive loopback device bug fixed               [TESTED]
  41------->>>>> ALPHA 003 <<<<<----------
  42o       Revised code layout                             [TESTED]
  43o       More bug fixes (traceroute etc)                 [TESTED]
  44------->>>>> ALPHA 004 <<<<<----------
  45o       IP build xmit fragment fixes                    [TESTED]
  46o       TCP SWS probe fix                               [TESTED]
  47o       Appletalk DDP                                   [TESTED]
  48o       IP firewall bug fixed                           [TESTED]
  49o       IP masquerade ftp port spoof                    [TESTED]
  50o       gcc 2.6.3 -O3 fix for checksum assembler        [TESTED]
  51o       /proc support shows both timers                 [TESTED]
  52o       TCP irtt support                                [TESTED]
  53o       RTF_REJECT routing support                      [TESTED]
  54o       Fixed 0 length fragment bug                     [TESTED]
  55o       Fixed overlapping reasm bug                     [TESTED]
  56o       Newest AX.25 code from John Naylor              [TESTED]
  57o       NetROM from John Naylor                         [TESTED]
  58o       Routerless DDP fixes from Wesley                [TESTED]
  59
  60------->>>>> ALPHA 005 <<<<<----------
  61
  62o       Several compile and bugfixes from Jakko         [TESTED]
  63o       Connect fix from Matt Day (+ fix to fix)        [TESTED]
  64o       RTT, memory leak and other netrom/ax.25 cures   
  65                        -- John Naylor                  [TESTED]
  66o       IP source route via broadcast now illegal       [TESTED]
  67
  68------->>>>> ALPHA 006 <<<<<----------
  69
  70o       Yet more NetROM/AX.25 improvements              [TESTED]
  71                -- John Naylor
  72o       Fixed a _stupid_ appletalk bug                  [TESTED]
  73o       Missing include                                 [TESTED]
  74                -- Lots of people
  75o       Can drop all source routes                      [TESTED]
  76o       Printing fixes for ip_fw                        [TESTED]
  77o       UDP checksum fix (Gerhard)                      [TESTED]
  78o       Newer 3c505 driver from Juha Laiho              [IN]
  79o       Security fix to axassociate                     [TESTED]
  80o       Loopback driver debugged (fixes named)          [TESTED]
  81o       SCC driver from Joerg Reuter                    [TESTED]
  82o       IP Firewall accounting zero bug                 [TESTED]
  83
  84////////////////////////////1.3.0/////////////////////////// 
  85
  86
  87o       Merged loadable firewall code                   [TESTED]
  88o       New buffers used totally non optimally          [TESTED]
  89o       Fast ip_forwarding (needs changing)             [NOW INCLUDED IN 1.3.15]
  90o       Fixed connection hang bug in new SWS code       [TESTED]
  91o       Buffer management hack putting skbuff control
  92        after data in the frame because kmalloc is
  93        totally cache non-optimal                       [TESTED]
  94o       Faster checksum [Tom May]                       [TESTED]
  95o       Appletalk router fixes [Michael Callahan]       [TESTED]
  96o       TCP state error fixes [Mark Tamsky]             [TESTED]
  97o       Verify area fixes [Heiko Eissfeldt]             [TESTED]
  98o       Routes use metric field [John Naylor]           [TESTED]
  99o       Major AX.25/NetROM fixes [John Nalor]           [TESTED]
 100
 101------->>>>>  NET3 030  <<<<<----------
 102
 103o       Long word align ethernet IP headers (64byte align for pentium) [TESTED]
 104                (less helpful than I'd have liked)
 105o       Fixed variable length header support to really work     [TESTED]
 106o       Mend appletalk/ipx partially                    [TESTED]
 107o       Start playing with input checksum & copy        [TESTED]
 108o       Fixed PPP and other oddments                    [TESTED]
 109o       Mended IPIP                                     [TESTED]
 110
 111------->>>>>    1.3.7   <<<<<----------
 112
 113o       Checksum bug fixed                              [TESTED]
 114o       Lance driver panic cured                        [TESTED]
 115o       DEC ALPHA stuff (Linus)                         [ASK HIM NOT ME]
 116o       Always try to keep output packet order
 117        (eg for vat and BSD fast path tcp)              [TESTED]
 118o       Copy the mac pointer in skb_clone               [TESTED]
 119o       Fix tcpdump panic                               [TESTED]
 120o       Fix dev_alloc_skb NULL deref bug                [TESTED]
 121o       Fix Security error in SIGURG stuff              [TESTED]
 122o       Missing 15 byte slack on ip_loopback            [TESTED]
 123
 124------->>>>>    1.3.8   <<<<<----------
 125
 126o       UDP snmp count fixed                            [TESTED]
 127o       IP snmp out count fixed                         [TESTED]
 128o       First bit of Dave Bonn's fast forwarding        [TESTED/NOW WORKS]
 129o       Fix leaks and double free in firewalling        [TESTED]
 130o       Fix memory scribble in ip_build_xmit            [TESTED]
 131o       Do fast cases of ip_build_xmit first
 132        slows fragmented I/O down, speeds up smaller
 133        packets. UDP send ttcp can now touch 7.5Mbyte/sec
 134        with nothing else going on. UDP recv is slower 8( [TESTED]
 135o       Fixed and enabled ethernet header caches        [TESTED]
 136o       Removed junk from igmp                          [TESTED]
 137o       Obscure UDP/copy&sum bug fix                    [TESTED]
 138o       Fixed multicast                                 [TESTED]
 139o       TCP does rerouting for most cases               [TESTED]
 140
 141------->>>>>    1.3.14  <<<<<----------
 142
 143o       IPX works                                       [TESTED]
 144o       NetROM works                                    [TESTED]
 145o       AX.25 works                                     [TESTED]
 146o       Most modules need recompiling even though they
 147        load OK                                         [BLAME LINUS]
 148o       Appletalk works nicely                          [CHECKED]
 149o       Fast IP forwarding part 1 works                 [CHECKED]
 150
 151------->>>>>   1.3.15  <<<<<---------
 152o       Mike Shaver has started RFC1122 verification    [DONE]
 153o       Minor bug fixes                                 [TESTED]
 154
 155------->>>> 1.3.16 <<<--------
 156
 157o       Missing patches for device change in TCP        [TESTED]
 158o       Device locking                                  [TESTED]
 159o       Infinite slip devices                           [TESTED]
 160o       New AF_UNIX sockets                             [TESTED]
 161o       Sendmsg/recvmsg (for some stuff only)           [TESTED]
 162o       Device unload loopholes fixed                   [TESTED]
 163o       Extra firewall abilities                        [TESTED]
 164o       Appletalk node probe bug fix                    [TESTED]
 165
 166------->>>> 1.3.18 <<<<---------
 167
 168o       AF_UNIX debugging                               [TESTED]
 169o       TCP explode on SWS bug fix                      [TESTED]
 170o       John Naylor's ARP hwtype fix                    [TESTED]
 171o       Datagram select matches BSD semantics           [TESTED]
 172
 173-------->>>>> 1.3.21 <<<<<---------
 174
 175o       AF_UNIX fixes and 4K limiter                    [TESTED]
 176o       Sendmsg/recvmsg for AX.25/Appletalk             [TESTED]
 177o       Datagram generic iovec support                  [TESTED]
 178o       Misc minor bug fixes                            [TESTED]
 179
 180-------->>>>> 1.3.22  <<<<<-------
 181
 182o       Device lock against page fault                  [TESTED]
 183o       IP_HDRINCL                                      [TESTED]
 184o       IP firewalling spoofing protection              [TESTED]
 185o       IGMP bug fixes and workarounds                  [TESTED]
 186o       IFF_ALLMULTI protocol layer support             [TESTED]
 187o       First parts of IP multicast routing code        [TESTED]
 188o       Generate BSD ENETDOWN errors                    [TESTED]
 189o       Clean device unload bug<Walter Wolfgang>        [TESTED]
 190
 191-------->>>>> 1.3.24 <<<<<-------
 192
 193o       Missing IGMP includes fixes                     [TESTED]
 194o       Smarter buffer use options for sockets          [TESTED]
 195o       AF_UNIX smarter buffer driving                  [TESTED]
 196o       AF_UNIX full BSD semantics on STREAM writes     [TESTED]
 197o       IOVEC's support repeated calls to copy more     [TESTED]
 198o       Zero fragment 'solaris nfs' bug fixed <Werner>  [TESTED]
 199o       NetROM supports sendmsg/recvmsg                 [TESTED]
 200o       Sendmsg verify_iovec bugfix                     [TESTED]
 201o       ARP PERM is really permanent now <Craig>        [TESTED]
 202o       IPIP tunnels work fully we hope                 [UMM...]
 203o       Closing socket change (Marc Tamsky)             [TESTED]
 204o       RFC1122 verification of tcp.c <Mike Shaver>     [DONE]
 205
 206-------->>>>> 1.3.26 <<<<<-------
 207
 208o       Rewrote ICMP completely                         [TESTED]
 209o       Moved most IP addresses to __u32                [TESTED]
 210o       Cleaned up ICMP reporting                       [TESTED]
 211o       Tidied remove_sock                              [TESTED]
 212o       Added memory allocation type to ip_build_xmit   [TESTED]
 213o       Cleaned up af_inet to use inet_error            [TESTED]
 214o       Named firewall returns                          [TESTED]
 215o       Added firewall output checks to ip_build_xmit   [TESTED]
 216o       Multicast router downs VIF's when their
 217        physical interface is dropped                   [TESTED]
 218o       Reformatted ipv4/protocol.c, dropped frag field [TESTED]
 219o       Fixed MSS for TCP                               [TESTED]
 220o       Dropped sock_awaitconn                          [TESTED]
 221o       Added ip_forward to ksyms for IPIP etc          [TESTED]
 222o       Appletalk TIOCINQ/TIOCOUTQ bug fix              [TESTED]
 223o       Rewrote the IFF_UP/IFF_DOWN handling code       [TESTED]
 224
 225-------->>>>> 1.3.29 <<<<<-------
 226
 227o       Major AX.25/NetROM fixes [John Naylor]          [TESTED]
 228o       Error in ip_mr ioctls fixed [Michael Chastain]  [TESTED]
 229o       TCP cache zap bugs hopefully fixed              [CLOSE BUT NO COOKIE]
 230o       Length checks in udp/raw sending [Craig Metz]   [TESTED]
 231
 232-------->>>>> 1.3.31 <<<<<<-------
 233
 234o       IP_OPTIONS [A.N.Kuznetsov]                      [TESTED]
 235o       TCP cache zap more fixes                        [TESTED]
 236o       Most of the IP multicast routing cache added    [TESTED - WORK NEEDED]
 237o       Kernel/user communication module (not used yet) [TESTED]
 238
 239-------->>>>> 1.3.31 <<<<<<-------
 240
 241o       IFF_ALLMULTI support for 3c501,3c509,8390 and
 242        tulip(SMC etherpower) boards                    [TESTED]
 243
 244-------->>>>> 1.3.33 <<<<<<--------
 245
 246o       IFF_ALLMULTI causes an address check on ether   [TESTED]
 247o       Added multicast ability readme file             [TESTED]
 248o       Assorted driver/multicast fixes                 [TESTED]
 249o       IP routing change errors resemble BSD more      [TESTED/MORE TO COME]
 250o       IP port masquerading fixes                      [TESTED]
 251
 252-------->>>>> 1.3.35 <<<<<<--------
 253
 254o       Appletalk data now in the protinfo union        [TESTED]
 255o       BSD style bind to broadcast address supported   [TESTED]
 256o       Standard loadable firewall chains               [TESTED]
 257o       IPFW uses the firewall chains for firewall but
 258                not yet acct/masquerade                 [TESTED]
 259o       Firewall chain hooks in all other protocols     [TESTED]
 260o       Sendmsg/recvmsg for IPX.                        [TESTED]
 261o       IPX uses sock_alloc_send_skb                    [TESTED]
 262o       Recvmsg for all IP, sendmsg for TCP             [TESTED]
 263        (nearly ready to go all *msg())
 264
 265-------->>>>> 1.3.42 <<<<<<--------
 266
 267o       ip udp/raw nonblock bug fixed                   [TESTED]
 268o       ICMP lockup fix                                 [TESTED]
 269o       Fundamental operations now only sendmsg/recvmsg [TESTED]
 270o       bind() for SOCK_PACKET                          [IN]
 271o       set_mac_addr fixed up                           [TESTED]
 272o       BSD SIOCSIFADDR, AF_UNSPEC behaviour            [TESTED]
 273o       Updated this list                               [OK]
 274o       Massive ARP/cache/routing rewrite [ANK]         [TESTED]
 275o       AX.25 connect return fixed in using sock_error  [TESTED]
 276o       Proper netlink device major(36)                 [TESTED]
 277o       First parts of the SKIP support                 [IN, not useful]
 278o       TCP ICMP (SOSS should work again)               [TESTED]
 279o       IPFW support for TOS changing (Al Longyear)     [TESTED]
 280o       DECNET PPP test code [Steve]                    [IN]
 281o       NFS root        [Miguel/Gero]                   [TESTED]
 282o       Path MTU discovery [ANK]                        [TESTED]
 283
 284-------->>>>> 1.3.44 <<<<<<--------
 285
 286o       NFS root/ FPU clash fixed                       [TESTED]
 287o       ARP lock bug fixed                              [TESTED]
 288o       SO_BSDCOMPAT option(libbsd/ibcs2 ought to set)  [SEMIDONE]
 289o       Changed to new set_multicast_list()             [TESTED]
 290o       ARP ioctl() call fixes  [Bernd]                 [TESTED]
 291o       Fixes to the name set functions (maybe fixes
 292        netrom)         [Steve]                         [TESTED]
 293o       Packet protocol labelling (not IPX yet)         [TESTED]
 294o       Faster buffer copy/clone [Linus]                [TESTED]
 295
 296-------->>>>> 1.3.46 <<<<<<--------
 297
 298o       AX.25/NetROM fixes/changes [John Naylor]        [TESTED]
 299o       Further attempts to fix the IPX memory bug      [NOW FIXED]
 300o       ARP fixes (Assorted)                            [TESTED]
 301o       Driver fixes for multicast lists                [TESTED]
 302
 303-------->>>>> 1.3.48 <<<<<<--------
 304
 305o       IPalias                                         [TESTED]
 306
 307-------->>>>> 1.3.50 <<<<<<--------
 308
 309o       TCP soft error support                          [TESTED]
 310o       Further 3c501 tweaking                          [TESTED]
 311o       Still trying to make IPX work right             [TESTED]
 312o       Trap faulty boxes sending IGMP using 0.0.0.0    [TESTED]
 313o       Only allow SMBFS selection with IP configured   [TESTED]
 314o       Packetwin driver [Craig]                        [IN]
 315o       Net alias changes [Juan]                        [TESTED]
 316
 317-------->>>>> 1.3.53 <<<<<<--------
 318
 319o       Missing htons() in ip_build_xmit [Mike Kilburn] [TESTED]
 320o       Missing protocol type set in appletalk          [TESTED]
 321o       Net alias changes/documentation [Juan Ciarlante][TESTED]
 322o       Set protocol type on IPX sends [Various]        [TESTED]
 323o       Lance driver packet length sanity check         [TESTED]
 324
 325-------->>>>> 1.3.60 <<<<<<--------
 326
 327o       Fixed NFS notice message                        [IN]
 328o       Extra ETH_P_xx types                            [IN]
 329o       Added skb_copy                                  [IN]
 330o       AX.25 unlock bug fix [Joerg]                    [IN]
 331o       Disabled buggy kerneld support                  [IN]
 332o       Removed dev_rint                                [IN]
 333o       Fixed bind checking                             [IN]
 334o       ARP changes [Bernd]                             [IN]
 335o       IPX memory leak fix [Martin]                    [IN]
 336o       Net builds without /proc [Paul]                 [IN]
 337o       IP multicast races removed                      [IN]
 338o       Device queue length limits and packet discarder [IN]
 339
 340---------- Things I thought Linus had for a while and not merged ----------------
 341
 342
 343---------- Things pending from other people -------------
 344
 345o       Improved IPX support for lwared.
 346o       Decnet pre pre pre pre pre Alpha 0.0.
 347o       Chase Donald for new drivers, get people to sort out what net
 348        drivers should cease to be 'Alpha'.
 349o       IPX PPP support
 350o       IP multicast bug fixes
 351
 352---------- Things pending for me to merge --------------
 353
 354o       AF_UNIX garbage collect code
 355o       Faster closedown option for heavy use sites (me)
 356o       Tom May's insw_and_checksum()                   
 357o       SPARC patches [Dave] [partly in]
 358
 359--------------- Things That Need Doing Before 1.4 ------------------
 360
 361o       Clean up RAW AX.25 sockets.                     [Sorted by skb_clone change]
 362o       Finish IPIP bug fixes                           [Done hopefully]
 363o       Multicast routing                               [Nearly right]
 364o       PPP/IPX
 365o       IPX for Lwared
 366o       SKIP                                            [Available in user mode]
 367o       AX.25/NetROM locking changes
 368o       insw_and_csum
 369o       AF_UNIX fd passing
 370
 371-------------------------- Bugs to fix ------------------------------
 372
 373o       signal interrupting a unix domain connect can occasionally hang the 
 374        machine ??
 375o       TCP socket cache gets things wrong very very occasionally under high 
 376        load.                                           [TRYING THINGS]
 377o       AX.25/NetROM needs more locking.
 378o       NFS flow control is needed with the new multirequest NFS support.
 379o       Need to be able to turn off the intelligent arp refreshing as it's not so
 380        hot over AX.25 and upsets some people with very dumb ISDN bridges.
 381o       Matti Arnio's TCP problem.
 382o       Should unix domain connect never block ?
 383o       Sort out kerneld getting things right.
 384
 3850.2
 386---
 387o       Fast checksum/copy on outgoing TCP
 388o       Add tty support to sonix driver.
 389o       PPP for Sonix ISDN.
 390o       Screend loadable firewall module
 391o       AXIP                                            [AVAILABLE IN USER MODE]
 392o       Finish merging the bridge code                  [LEAVE POST 1.4]
 393o       Finish 802.2 Class I code to be compliant to the oddities of 802.2
 394o       Tidy BPQ support to use a bpqip tunnel device
 395o       Kill off old ip_queue_xmit/ip_send stuff.
 396o       Remove kernel RARP and replace with user mode daemon.
 397o       Throw out existing firewall ioctl()'s and use a single table load.
 398o       SPARC merge
 399
 4000.3
 401---
 402o       802.2 Class 2 services (eg netbios).
 403
 404Possible projects for victim^H^H^H^H^Holunteers
 405
 406
 4072.      Verifying all the error returns match the BSD ones (grotty job I
 408wouldn't wish on anyone).
 409
 4103.      'Fast Retransmit'. This is a TCP algorithm extension BSD uses. If
 411you see about 3 acks in a row that are for the same 'old' value. You resend
 412the frame following the ack. (The assumption being that the acks are
 413because a single frame in the data stream has been lost). Given a 
 414mathematician with some queue theory you can show this allows you to 
 415lose one frame per window full of data without measurable speed loss.
 416[done]
 417
 4184.      RFC1323. These are the extensions for very fast nets.
 419RFC1323 will be useful for Linux talking to systems over 100Mb/sec
 420ethernet and over ATM as it allows large windows and protects from some
 421potential high speed TCP problems.
 422[In progress]
 423
 4246.      Delayed ack. This is mostly supported but not actually set up and
 425used yet. Basically ack frames are held back 1/10th of a second in the hope
 426that two acks can be merged into one or for interactive use the ack can
 427piggyback on the next character typed (great improvement on 2400 baud
 428modems). Johannes Stille did some work on this about 0.99.13 but it never
 429got merged in. [Pedro Roque] [Done, but needs fixing]
 430
 4317.      One on my tempting project list. Add an extra (unofficial - but so
 432is SLIP6) SLIP mode that does packet data compression [maybe use the code
 433from term].
 434
 4359.      Implementing streams. Not as a blind slow SYS5.4 style copy but actually
 436working out how to do it so it runs like greased lightning. Quite a big
 437problem. [See the LiS project]
 438
 43910.     Frame Relay/WAN/ISDN drivers [I'm working on the sonix EuroISDN board
 440driver but that's for an internal project and its general release is still
 441a maybe (so is finishing it ;))][Jim Freeman is working on Frame Relay as is
 442Mike McLagan][Fritz Elfert is doing the isdn4linux kit].
 443 
 44411.     IP over SCSI. [worked on]
 445
 44614.     Bidirectional PLIP. Also PLIP for the newer style parallel ports.
 447
 44815.     802.2LLC and thus Netbeui sockets. Becoming less important since the
 449rumour is microsoft are phasing out netbeui for netbios/IP. Microsoft have
 450gone for netbios/funny-ipx-variant it seems in Win95, but TCP is selectable.
 451
 45216.     X.25. This is one for a real head case with far too much time on 
 453their hands. [Provisionally taken]
 454
 45517.     PPP multilink. Another nasty job.
 456[In progress]
 457
 45818.     Implement swIPe under Linux.
 459[Reportedly in progress]
 460
 46119.     IPv4 IP-AH and IP-ESP.
 462[Taken]
 463
 46420.     SKIP IP security using ENskip-0.10 - started
 465[Abandoned]
 466
 46721.     T/TCP support.
 468
 469BTW: Don't let the magic words 'kernel programming' worry you. Its like DOS
 470- you make a mistake you have to reboot. You do at least get dumps and a
 471kernel logger that is reliable. There is now a loadable module allowing
 472use of gdb on the kernel (no breakpoints though!). No magic involved.
 473
 474Alan
 475
lxr.linux.no kindly hosted by Redpill Linpro AS, provider of Linux consulting and operations services since 1995.