]> git.neil.brown.name Git - history.git/commitdiff
Linux 2.2.22 2.2.22
authorAlan Cox <alan@lxorguk.ukuu.org.uk>
Fri, 23 Nov 2007 20:24:26 +0000 (15:24 -0500)
committerAlan Cox <alan@lxorguk.ukuu.org.uk>
Fri, 23 Nov 2007 20:24:26 +0000 (15:24 -0500)
Linux 2.2.22 is primarily an errata release backporting fixes for multiple
small kernel errors found during auditing of the 2.4 code. 2.2 based users who
have untrusted local users should update to this kernel.

In addition the kernel fixes some bugs in the HDLC layer and adds support
for the newest 3ware IDE RAID cards.

Feature Updates
- Support for newest 3ware IDE RAID
- Set accessed time on AF_UNIX sockets

Kernel Bug Fixes
- Fix isofs over loopback in 2.2
- Send SIGIO on socket shutdown
- Correct out of memory socket error reporting
- Fix handling of buffer internal pointers in HDLC
- Correct order of neighbour sending
- Identify VIA C3 processors properly
- Fix netlink/ipfw error handling path
- Fix Alpha ptrace

Security Fixes
- Multiple numbers of potential sign handling, maths overflow and
casting errors were fixed. Some of them are theoretically locally
exploitable. No remote holes were found.

Makefile
drivers/net/hdlc.c
drivers/net/syncppp.c

index 8226e28db811455d764995cdac7761908928c2b7..008a61d089d74b0b3093e50a03c67dc211ddc786 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -1,7 +1,7 @@
 VERSION = 2
 PATCHLEVEL = 2
 SUBLEVEL = 22
-EXTRAVERSION = rc3
+EXTRAVERSION = 
 
 ARCH := $(shell uname -m | sed -e s/i.86/i386/ -e s/sun4u/sparc64/ -e s/arm.*/arm/ -e s/sa110/arm/)
 
index 2ac145a1198e88b379c80a6589157033a259b6ab..75e682be4ed49c095283cd1b8306b2e692796384 100644 (file)
  *
  * Use sethdlc utility to set line parameters, protocol and PVCs
  */
+ /*
+   Patched by Pavel Selivanov. 08 Aug. 2001
+   If we are using dev_queue_xmit, and we have a listeners,
+   we should set skb->nh.raw. If no, we'll get a lot of warnings in 
+   /var/log/debug
+   Look at core/net/dev.c dev_queue_xmit_nit  
+*/
 
 #include <linux/config.h>
 #include <linux/module.h>
@@ -103,6 +110,7 @@ static void cisco_keepalive_send(hdlc_device *hdlc, u32 type,
        skb_put(skb, sizeof(cisco_packet));
        skb->priority=TC_PRIO_CONTROL;
        skb->dev = hdlc_to_dev(hdlc);
+       skb->nh.raw = skb->data;
        
        dev_queue_xmit(skb);
 }
@@ -384,7 +392,8 @@ static void fr_lmi_send(hdlc_device *hdlc, int fullrep)
        skb_put(skb, i);
        skb->priority=TC_PRIO_CONTROL;
        skb->dev = hdlc_to_dev(hdlc);
-
+       skb->nh.raw = skb->data;
+       
        dev_queue_xmit(skb);
 }
 
@@ -820,6 +829,7 @@ static int pvc_xmit(struct sk_buff *skb, struct device *dev)
 {
        pvc_device *pvc=dev_to_pvc(dev);
 
+       skb->nh.raw = skb->data;
        if (pvc->state & PVC_STATE_ACTIVE) {
                skb->dev = hdlc_to_dev(pvc->master);
                pvc->stats.tx_bytes+=skb->len;
index 4b0870e42e9f0806222efcc0242080c7de23225f..1d658ff0994809a94760319ebc4562b0b4f76e0a 100644 (file)
  *
  *     Port for Linux-2.1 by Jan "Yenya" Kasprzak <kas@fi.muni.cz>
  */
-
+ /*
+  Patched by Pavel Selivanov. 08 Aug. 2001
+  If we are using dev_queue_xmit, and we have a listeners,
+  we should set skb->nh.raw. If no, we'll get a lot of warnings in
+  /var/log/debug
+  Look at core/net/dev.c dev_queue_xmit_nit
+*/
+                               
 /*
  * Synchronous PPP/Cisco link level subroutines.
  * Keepalive protocol implemented in both Cisco and PPP modes.
@@ -781,6 +788,8 @@ static void sppp_cp_send (struct sppp *sp, u16 proto, u8 type,
        /* Control is high priority so it doesnt get queued behind data */
        skb->priority=TC_PRIO_CONTROL;
        skb->dev = dev;
+       skb->nh.raw = skb->data;
+       
        dev_queue_xmit(skb);
 }
 
@@ -823,6 +832,8 @@ static void sppp_cisco_send (struct sppp *sp, int type, long par1, long par2)
        sp->obytes += skb->len;
        skb->priority=TC_PRIO_CONTROL;
        skb->dev = dev;
+       skb->nh.raw = skb->data;
+       
        dev_queue_xmit(skb);
 }