-# $Id: config.in,v 1.78 1999/12/20 05:01:36 davem Exp $
+# $Id: config.in,v 1.79 1999/12/23 01:46:00 davem Exp $
# For a description of the syntax of this configuration file,
# see the Configure script.
#
mainmenu_option next_comment
comment 'SCSI low-level drivers'
- bool 'Sparc ESP Scsi Driver' CONFIG_SCSI_SUNESP $CONFIG_SCSI
+ tristate 'Sparc ESP Scsi Driver' CONFIG_SCSI_SUNESP $CONFIG_SCSI
tristate 'PTI Qlogic,ISP Driver' CONFIG_SCSI_QLOGICPTI $CONFIG_SCSI
endmenu
fi
-/* $Id: srmmu.c,v 1.198 1999/11/14 06:15:14 zaitcev Exp $
+/* $Id: srmmu.c,v 1.199 1999/12/23 02:00:51 davem Exp $
* srmmu.c: SRMMU specific routines for memory management.
*
* Copyright (C) 1995 David S. Miller (davem@caip.rutgers.edu)
srmmu_map[srmmu_bank].vbase = vbase;
srmmu_map[srmmu_bank].pbase = sp_banks[sp_entry].base_addr;
srmmu_map[srmmu_bank].size = sp_banks[sp_entry].num_bytes;
- srmmu_bank++;
+ if (srmmu_map[srmmu_bank].size)
+ srmmu_bank++;
map_spbank_last_pa = pstart - SRMMU_PGDIR_SIZE;
return vstart;
}
-# $Id: config.in,v 1.85 1999/12/20 05:01:56 davem Exp $
+# $Id: config.in,v 1.86 1999/12/23 01:46:09 davem Exp $
# For a description of the syntax of this configuration file,
# see the Configure script.
#
mainmenu_option next_comment
comment 'SCSI low-level drivers'
- bool 'Sparc ESP Scsi Driver' CONFIG_SCSI_SUNESP $CONFIG_SCSI
+ tristate 'Sparc ESP Scsi Driver' CONFIG_SCSI_SUNESP $CONFIG_SCSI
tristate 'PTI Qlogic, ISP Driver' CONFIG_SCSI_QLOGICPTI $CONFIG_SCSI
if [ "$CONFIG_PCI" != "n" ]; then
static struct pci_simple_probe_entry controller_list[] = {
{ PCI_VENDOR_ID_TI, PCI_DEVICE_ID_TI_1225, 0, 0, ¥ta_operations },
+ { 0x1180, 0x0475, 0, 0, ¥ta_operations },
{ 0, 0, 0, 0, NULL }
};
static int yenta_inquire(pci_socket_t *socket, socket_cap_t *cap)
{
cap->features = SS_CAP_PAGE_REGS | SS_CAP_PCCARD | SS_CAP_CARDBUS;
- cap->irq_mask = 0;
- cap->map_size = 0;
+ cap->irq_mask = 0xdeb8; /* irq 15,14,12,11,10,9,7,5,4,3 */
+ cap->map_size = 0x1000;
cap->pci_irq = socket->irq;
- cap->cardbus = 1;
+ cap->cardbus = 0;
cap->cb_bus = NULL;
cap->bus = NULL;
}
/*
- * Silly interface. We convert the cardbus status to a internal status,
+ * Silly interface. We convert the cardbus status to a internal status,
* and we probably really should keep it in cardbus status form and
* only convert for old-style 16-bit PCMCIA cards..
*/
mem->speed = (stop & I365_MEM_WS0) ? 1 : 0;
mem->speed += (stop & I365_MEM_WS1) ? 2 : 0;
mem->speed = to_ns(mem->speed);
- stop = ((u_long)(stop & 0x0fff) << 12) + 0x0fff;
+ stop = ((stop & 0x0fff) << 12) + 0x0fff;
offset = exca_readw(socket, I365_MEM(map) + I365_W_OFF);
mem->flags |= (offset & I365_MEM_WRPROT) ? MAP_WRPROT : 0;
static void yenta_interrupt(int irq, void *dev_id, struct pt_regs *regs)
{
- pci_socket_t *sock = (pci_socket_t *) dev_id;
- u32 event = readl(sock->base + CB_SOCKET_EVENT);
+ u8 csc;
+ u32 cb_event;
+ unsigned int events;
+ pci_socket_t *socket = (pci_socket_t *) dev_id;
/* Clear interrupt status for the event */
- writel(event, sock->base +CB_SOCKET_EVENT);
+ cb_event = cb_readl(socket, CB_SOCKET_EVENT);
+ cb_writel(socket, CB_SOCKET_EVENT, cb_event);
- printk("Socket interrupt event %08x\n", event);
+ csc = exca_readb(socket, I365_CSC);
+
+ events = (cb_event & (CB_CD1EVENT | CB_CD2EVENT)) ? SS_DETECT : 0 ;
+ events |= (csc & I365_CSC_DETECT) ? SS_DETECT : 0;
+ if (exca_readb(socket, I365_INTCTL) & I365_PC_IOCARD) {
+ events |= (csc & I365_CSC_STSCHG) ? SS_STSCHG : 0;
+ } else {
+ events |= (csc & I365_CSC_BVD1) ? SS_BATDEAD : 0;
+ events |= (csc & I365_CSC_BVD2) ? SS_BATWARN : 0;
+ events |= (csc & I365_CSC_READY) ? SS_READY : 0;
+ }
+
+ printk("Socket interrupt event %08x (%08x %02x)\n", events, cb_event, csc);
+
+ if (events && socket->handler)
+ socket->handler(socket->info, events);
}
/*
-/* $Id: esp.c,v 1.88 1999/12/21 02:38:07 davem Exp $
+/* $Id: esp.c,v 1.89 1999/12/23 01:46:14 davem Exp $
* esp.c: EnhancedScsiProcessor Sun SCSI driver code.
*
* Copyright (C) 1995, 1998 David S. Miller (davem@caip.rutgers.edu)
#include <asm/irq.h>
#include <asm/idprom.h>
+#include <linux/module.h>
+
#define DEBUG_ESP
/* #define DEBUG_ESP_HME */
/* #define DEBUG_ESP_DATA */
}
spin_unlock_irqrestore(&esp->lock, flags);
}
+
+#ifdef MODULE
+Scsi_Host_Template driver_template = SCSI_SPARC_ESP;
+
+#include "scsi_module.c"
+
+EXPORT_NO_SYMBOLS;
+#endif /* MODULE */
*/
struct qnx4_inode_info {
char i_reserved[16]; /* 16 */
- off_t i_size; /* 4 */
- _xtnt_t i_first_xtnt; /* 8 */
+ qnx4_off_t i_size; /* 4 */
+ qnx4_xtnt_t i_first_xtnt; /* 8 */
long i_xblk; /* 4 */
time_t i_ftime; /* 4 */
time_t i_mtime; /* 4 */
time_t i_atime; /* 4 */
time_t i_ctime; /* 4 */
- _nxtnt_t i_num_xtnts; /* 2 */
+ qnx4_nxtnt_t i_num_xtnts; /* 2 */
mode_t i_mode; /* 2 */
- muid_t i_uid; /* 2 */
- mgid_t i_gid; /* 2 */
- nlink_t i_nlink; /* 2 */
+ qnx4_muid_t i_uid; /* 2 */
+ qnx4_mgid_t i_gid; /* 2 */
+ qnx4_nlink_t i_nlink; /* 2 */
char i_zero[4]; /* 4 */
- _ftype_t i_type; /* 1 */
+ qnx4_ftype_t i_type; /* 1 */
unsigned char i_status; /* 1 */
};
#ifndef _QNX4_FS_SB
#define _QNX4_FS_SB
-#include <linux/qnxtypes.h>
+#include <linux/qnx4_fs.h>
/*
* qnx4 super-block data in memory
#ifndef _QNX4TYPES_H
#define _QNX4TYPES_H
-typedef unsigned short _nxtnt_t;
-typedef unsigned char _ftype_t;
+typedef unsigned short qnx4_nxtnt_t;
+typedef unsigned char qnx4_ftype_t;
typedef struct {
long xtnt_blk;
long xtnt_size;
-} _xtnt_t;
+} qnx4_xtnt_t;
-typedef unsigned short muid_t;
-typedef unsigned short mgid_t;
-typedef unsigned long qnx_off_t;
-typedef unsigned short qnx_nlink_t;
+typedef unsigned short qnx4_muid_t;
+typedef unsigned short qnx4_mgid_t;
+typedef unsigned long qnx4_off_t;
+typedef unsigned short qnx4_nlink_t;
#endif
extern struct sk_buff * dev_alloc_skb(unsigned int size);
extern void kfree_skbmem(struct sk_buff *skb);
extern struct sk_buff * skb_clone(struct sk_buff *skb, int priority);
-extern struct sk_buff * skb_copy(struct sk_buff *skb, int priority);
-extern struct sk_buff * skb_realloc_headroom(struct sk_buff *skb, int newheadroom);
+extern struct sk_buff * skb_copy(const struct sk_buff *skb, int priority);
+extern struct sk_buff * skb_copy_expand(const struct sk_buff *skb,
+ int newheadroom,
+ int newtailroom,
+ int priority);
#define dev_kfree_skb(a) kfree_skb(a)
extern unsigned char * skb_put(struct sk_buff *skb, unsigned int len);
extern unsigned char * skb_push(struct sk_buff *skb, unsigned int len);
extern unsigned char * skb_pull(struct sk_buff *skb, unsigned int len);
-extern int skb_headroom(struct sk_buff *skb);
-extern int skb_tailroom(struct sk_buff *skb);
+extern int skb_headroom(const struct sk_buff *skb);
+extern int skb_tailroom(const struct sk_buff *skb);
extern void skb_reserve(struct sk_buff *skb, unsigned int len);
extern void skb_trim(struct sk_buff *skb, unsigned int len);
extern void skb_over_panic(struct sk_buff *skb, int len, void *here);
extern void skb_under_panic(struct sk_buff *skb, int len, void *here);
+/* Backwards compatibility */
+#define skb_realloc_headroom(skb, nhr) skb_copy_expand(skb, nhr, skb_tailroom(skb), GFP_ATOMIC)
+
/* Internal */
extern __inline__ atomic_t *skb_datarefp(struct sk_buff *skb)
{
return __skb_pull(skb,len);
}
-extern __inline__ int skb_headroom(struct sk_buff *skb)
+extern __inline__ int skb_headroom(const struct sk_buff *skb)
{
return skb->data-skb->head;
}
-extern __inline__ int skb_tailroom(struct sk_buff *skb)
+extern __inline__ int skb_tailroom(const struct sk_buff *skb)
{
return skb->end-skb->tail;
}
* Adam Sulmicki : Bug Fix : Network Device Unload
* A network device unload needs to purge
* the backlog queue.
- * Paul Rusty Russel : SIOCSIFNAME
+ * Paul Rusty Russell : SIOCSIFNAME
*/
#include <asm/uaccess.h>
* Authors: Alan Cox <iiitac@pyr.swan.ac.uk>
* Florian La Roche <rzsfl@rz.uni-sb.de>
*
- * Version: $Id: skbuff.c,v 1.60 1999/08/23 07:02:01 davem Exp $
+ * Version: $Id: skbuff.c,v 1.62 1999/12/23 02:13:42 davem Exp $
*
* Fixes:
* Alan Cox : Fixed the worst of the load balancer bugs.
return n;
}
+static void copy_skb_header(struct sk_buff *new, const struct sk_buff *old)
+{
+ /*
+ * Shift between the two data areas in bytes
+ */
+ unsigned long offset = new->data - old->data;
+
+ new->list=NULL;
+ new->sk=NULL;
+ new->dev=old->dev;
+ new->rx_dev=NULL;
+ new->priority=old->priority;
+ new->protocol=old->protocol;
+ new->dst=dst_clone(old->dst);
+ new->h.raw=old->h.raw+offset;
+ new->nh.raw=old->nh.raw+offset;
+ new->mac.raw=old->mac.raw+offset;
+ memcpy(new->cb, old->cb, sizeof(old->cb));
+ new->used=old->used;
+ new->is_clone=0;
+ atomic_set(&new->users, 1);
+ new->pkt_type=old->pkt_type;
+ new->stamp=old->stamp;
+ new->destructor = NULL;
+ new->security=old->security;
+#ifdef CONFIG_NETFILTER
+ new->nfmark=old->nfmark;
+ new->nfreason=old->nfreason;
+ new->nfcache=old->nfcache;
+#ifdef CONFIG_NETFILTER_DEBUG
+ new->nf_debug=old->nf_debug;
+#endif
+#endif
+}
+
/*
* This is slower, and copies the whole data area
*/
-struct sk_buff *skb_copy(struct sk_buff *skb, int gfp_mask)
+struct sk_buff *skb_copy(const struct sk_buff *skb, int gfp_mask)
{
struct sk_buff *n;
- unsigned long offset;
/*
* Allocate the copy buffer
if(n==NULL)
return NULL;
- /*
- * Shift between the two data areas in bytes
- */
-
- offset=n->head-skb->head;
-
/* Set the data pointer */
skb_reserve(n,skb->data-skb->head);
/* Set the tail pointer and length */
/* Copy the bytes */
memcpy(n->head,skb->head,skb->end-skb->head);
n->csum = skb->csum;
- n->list=NULL;
- n->sk=NULL;
- n->dev=skb->dev;
- n->rx_dev=NULL;
- n->priority=skb->priority;
- n->protocol=skb->protocol;
- n->dst=dst_clone(skb->dst);
- n->h.raw=skb->h.raw+offset;
- n->nh.raw=skb->nh.raw+offset;
- n->mac.raw=skb->mac.raw+offset;
- memcpy(n->cb, skb->cb, sizeof(skb->cb));
- n->used=skb->used;
- n->is_clone=0;
- atomic_set(&n->users, 1);
- n->pkt_type=skb->pkt_type;
- n->stamp=skb->stamp;
- n->destructor = NULL;
- n->security=skb->security;
-#ifdef CONFIG_NETFILTER
- n->nfmark=skb->nfmark;
- n->nfreason=skb->nfreason;
- n->nfcache=skb->nfcache;
-#ifdef CONFIG_NETFILTER_DEBUG
- n->nf_debug=skb->nf_debug;
-#endif
-#endif
+ copy_skb_header(n, skb);
+
return n;
}
-struct sk_buff *skb_realloc_headroom(struct sk_buff *skb, int newheadroom)
+struct sk_buff *skb_copy_expand(const struct sk_buff *skb,
+ int newheadroom,
+ int newtailroom,
+ int gfp_mask)
{
struct sk_buff *n;
- unsigned long offset;
/*
* Allocate the copy buffer
*/
- n=alloc_skb((skb->end-skb->data)+newheadroom, GFP_ATOMIC);
+ n=alloc_skb(newheadroom + (skb->tail - skb->data) + newtailroom,
+ gfp_mask);
if(n==NULL)
return NULL;
skb_reserve(n,newheadroom);
- /*
- * Shift between the two data areas in bytes
- */
-
- offset=n->data-skb->data;
-
/* Set the tail pointer and length */
skb_put(n,skb->len);
- /* Copy the bytes */
- memcpy(n->data,skb->data,skb->len);
- n->list=NULL;
- n->sk=NULL;
- n->priority=skb->priority;
- n->protocol=skb->protocol;
- n->dev=skb->dev;
- n->rx_dev=NULL;
- n->dst=dst_clone(skb->dst);
- n->h.raw=skb->h.raw+offset;
- n->nh.raw=skb->nh.raw+offset;
- n->mac.raw=skb->mac.raw+offset;
- memcpy(n->cb, skb->cb, sizeof(skb->cb));
- n->used=skb->used;
- n->is_clone=0;
- atomic_set(&n->users, 1);
- n->pkt_type=skb->pkt_type;
- n->stamp=skb->stamp;
- n->destructor = NULL;
- n->security=skb->security;
-#ifdef CONFIG_NETFILTER
- n->nfmark=skb->nfmark;
- n->nfreason=skb->nfreason;
- n->nfcache=skb->nfcache;
-#ifdef CONFIG_NETFILTER_DEBUG
- n->nf_debug=skb->nf_debug;
-#endif
-#endif
+ /* Copy the bytes: data pointers must point to same data. */
+ memcpy(n->data - skb_headroom(skb), skb->head, skb->end-skb->head);
+
+ copy_skb_header(n, skb);
return n;
}
* handler for protocols to use and generic option handler.
*
*
- * Version: $Id: sock.c,v 1.86 1999/09/01 08:11:49 davem Exp $
+ * Version: $Id: sock.c,v 1.87 1999/11/23 08:56:59 davem Exp $
*
* Authors: Ross Biro, <bir7@leland.Stanford.Edu>
* Fred N. van Kempen, <waltje@uWalt.NL.Mugnet.ORG>
*
* PF_INET protocol family socket handler.
*
- * Version: $Id: af_inet.c,v 1.97 1999/09/08 03:46:46 davem Exp $
+ * Version: $Id: af_inet.c,v 1.100 1999/12/21 04:05:02 davem Exp $
*
* Authors: Ross Biro, <bir7@leland.Stanford.Edu>
* Fred N. van Kempen, <waltje@uWalt.NL.Mugnet.ORG>
/* linux/net/inet/arp.c
*
- * Version: $Id: arp.c,v 1.81 1999/08/30 10:17:05 davem Exp $
+ * Version: $Id: arp.c,v 1.83 1999/12/15 22:39:03 davem Exp $
*
* Copyright (C) 1994 by Florian La Roche
*
*
* IPv4 Forwarding Information Base: FIB frontend.
*
- * Version: $Id: fib_frontend.c,v 1.19 1999/08/31 07:03:23 davem Exp $
+ * Version: $Id: fib_frontend.c,v 1.21 1999/12/15 22:39:07 davem Exp $
*
* Authors: Alexey Kuznetsov, <kuznet@ms2.inr.ac.ru>
*
*
* Alan Cox, <alan@redhat.com>
*
- * Version: $Id: icmp.c,v 1.61 1999/08/31 07:03:33 davem Exp $
+ * Version: $Id: icmp.c,v 1.62 1999/12/23 01:43:37 davem Exp $
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
unsigned long csum;
if (offset) {
- icmp_param->csum=csum_partial_copy(icmp_param->data_ptr+offset-sizeof(struct icmphdr),
+ icmp_param->csum=csum_partial_copy_nocheck(icmp_param->data_ptr+offset-sizeof(struct icmphdr),
to, fraglen,icmp_param->csum);
return 0;
}
* the other fragments first, so that we get the checksum
* for the whole packet here.
*/
- csum = csum_partial_copy((void *)&icmp_param->icmph,
+ csum = csum_partial_copy_nocheck((void *)&icmp_param->icmph,
to, sizeof(struct icmphdr),
icmp_param->csum);
- csum = csum_partial_copy(icmp_param->data_ptr,
+ csum = csum_partial_copy_nocheck(icmp_param->data_ptr,
to+sizeof(struct icmphdr),
fraglen-sizeof(struct icmphdr), csum);
icmph=(struct icmphdr *)to;
* the older version didn't come out right using gcc 2.5.8, the newer one
* seems to fall out with gcc 2.6.2.
*
- * Version: $Id: igmp.c,v 1.34 1999/08/20 11:05:12 davem Exp $
+ * Version: $Id: igmp.c,v 1.35 1999/12/15 22:39:10 davem Exp $
*
* Authors:
* Alan Cox <Alan.Cox@linux.org>
*
* The Internet Protocol (IP) output module.
*
- * Version: $Id: ip_output.c,v 1.72 1999/09/07 02:31:15 davem Exp $
+ * Version: $Id: ip_output.c,v 1.75 1999/12/21 04:05:04 davem Exp $
*
* Authors: Ross Biro, <bir7@leland.Stanford.Edu>
* Fred N. van Kempen, <waltje@uWalt.NL.Mugnet.ORG>
* as published by the Free Software Foundation; either version
* 2 of the License, or (at your option) any later version.
*
- * Version: $Id: ipmr.c,v 1.46 1999/08/31 07:03:44 davem Exp $
+ * Version: $Id: ipmr.c,v 1.48 1999/12/15 22:39:16 davem Exp $
*
* Fixes:
* Michael Chastain : Incorrect size of copying.
* PROC file system. It is mainly used for debugging and
* statistics.
*
- * Version: $Id: proc.c,v 1.36 1999/07/02 11:26:34 davem Exp $
+ * Version: $Id: proc.c,v 1.37 1999/12/15 22:39:19 davem Exp $
*
* Authors: Fred N. van Kempen, <waltje@uWalt.NL.Mugnet.ORG>
* Gerald J. Heim, <heim@peanuts.informatik.uni-tuebingen.de>
*
* RAW - implementation of IP "raw" sockets.
*
- * Version: $Id: raw.c,v 1.43 1999/08/20 11:05:57 davem Exp $
+ * Version: $Id: raw.c,v 1.44 1999/12/15 22:39:21 davem Exp $
*
* Authors: Ross Biro, <bir7@leland.Stanford.Edu>
* Fred N. van Kempen, <waltje@uWalt.NL.Mugnet.ORG>
*
* ROUTE - implementation of the IP router.
*
- * Version: $Id: route.c,v 1.72 1999/08/30 10:17:12 davem Exp $
+ * Version: $Id: route.c,v 1.75 1999/12/23 01:41:44 davem Exp $
*
* Authors: Ross Biro, <bir7@leland.Stanford.Edu>
* Fred N. van Kempen, <waltje@uWalt.NL.Mugnet.ORG>
goto do_next;
}
- rt_del(hash, rt);
+ rt_del(hash, rth);
if (!rt_intern_hash(hash, rt, &rt))
ip_rt_put(rt);
goto do_next;
*
* Implementation of the Transmission Control Protocol(TCP).
*
- * Version: $Id: tcp.c,v 1.151 1999/09/07 02:31:21 davem Exp $
+ * Version: $Id: tcp.c,v 1.152 1999/11/23 08:57:03 davem Exp $
*
* Authors: Ross Biro, <bir7@leland.Stanford.Edu>
* Fred N. van Kempen, <waltje@uWalt.NL.Mugnet.ORG>
*
* Implementation of the Transmission Control Protocol(TCP).
*
- * Version: $Id: tcp_input.c,v 1.173 1999/09/07 02:31:27 davem Exp $
+ * Version: $Id: tcp_input.c,v 1.176 1999/12/20 05:19:46 davem Exp $
*
* Authors: Ross Biro, <bir7@leland.Stanford.Edu>
* Fred N. van Kempen, <waltje@uWalt.NL.Mugnet.ORG>
*
* Implementation of the Transmission Control Protocol(TCP).
*
- * Version: $Id: tcp_ipv4.c,v 1.189 1999/09/07 02:31:33 davem Exp $
+ * Version: $Id: tcp_ipv4.c,v 1.192 1999/12/23 02:04:50 davem Exp $
*
* IPv4 specific functions
*
read_lock(&tcp_lhash_lock);
sk = tcp_listening_hash[tcp_lhashfn(hnum)];
if (sk) {
- if (sk->num == hnum && sk->next == NULL)
+ if (sk->num == hnum &&
+ sk->next == NULL &&
+ (!sk->rcv_saddr || sk->rcv_saddr == daddr) &&
+ !sk->bound_dev_if)
goto sherry_cache;
sk = __tcp_v4_lookup_listener(sk, daddr, hnum, dif);
}
*
* The User Datagram Protocol (UDP).
*
- * Version: $Id: udp.c,v 1.74 1999/08/20 11:06:12 davem Exp $
+ * Version: $Id: udp.c,v 1.75 1999/12/15 22:39:34 davem Exp $
*
* Authors: Ross Biro, <bir7@leland.Stanford.Edu>
* Fred N. van Kempen, <waltje@uWalt.NL.Mugnet.ORG>
* Pedro Roque <roque@di.fc.ul.pt>
* Alexey Kuznetsov <kuznet@ms2.inr.ac.ru>
*
- * $Id: addrconf.c,v 1.53 1999/08/31 07:03:54 davem Exp $
+ * $Id: addrconf.c,v 1.55 1999/12/15 22:39:40 davem Exp $
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
*
* Adapted from linux/net/ipv4/af_inet.c
*
- * $Id: af_inet6.c,v 1.47 1999/08/31 07:03:58 davem Exp $
+ * $Id: af_inet6.c,v 1.49 1999/12/15 22:39:43 davem Exp $
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* Authors:
* Pedro Roque <roque@di.fc.ul.pt>
*
- * $Id: mcast.c,v 1.26 1999/08/31 07:04:08 davem Exp $
+ * $Id: mcast.c,v 1.27 1999/12/09 00:52:49 davem Exp $
*
* Based on linux/ipv4/igmp.c and linux/ipv4/ip_sockglue.c
*
* PROC file system. This is very similar to the IPv4 version,
* except it reports the sockets in the INET6 address family.
*
- * Version: $Id: proc.c,v 1.11 1999/07/02 11:26:45 davem Exp $
+ * Version: $Id: proc.c,v 1.12 1999/12/15 22:39:48 davem Exp $
*
* Authors: David S. Miller (davem@caip.rutgers.edu)
*
*
* Adapted from linux/net/ipv4/raw.c
*
- * $Id: raw.c,v 1.29 1999/08/20 11:06:26 davem Exp $
+ * $Id: raw.c,v 1.30 1999/12/15 22:39:51 davem Exp $
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* Authors:
* Pedro Roque <roque@di.fc.ul.pt>
*
- * $Id: route.c,v 1.40 1999/08/31 07:04:13 davem Exp $
+ * $Id: route.c,v 1.42 1999/12/15 22:39:53 davem Exp $
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* Authors:
* Pedro Roque <roque@di.fc.ul.pt>
*
- * $Id: tcp_ipv6.c,v 1.112 1999/08/31 07:04:19 davem Exp $
+ * $Id: tcp_ipv6.c,v 1.113 1999/12/15 22:39:58 davem Exp $
*
* Based on:
* linux/net/ipv4/tcp.c
*
* Based on linux/ipv4/udp.c
*
- * $Id: udp.c,v 1.45 1999/08/20 11:06:32 davem Exp $
+ * $Id: udp.c,v 1.46 1999/12/15 22:40:03 davem Exp $
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
EXPORT_SYMBOL(skb_free_datagram);
EXPORT_SYMBOL(skb_copy_datagram);
EXPORT_SYMBOL(skb_copy_datagram_iovec);
-EXPORT_SYMBOL(skb_realloc_headroom);
+EXPORT_SYMBOL(skb_copy_expand);
EXPORT_SYMBOL(datagram_poll);
EXPORT_SYMBOL(put_cmsg);
EXPORT_SYMBOL(sock_kmalloc);
*
* PACKET - implements raw packet sockets.
*
- * Version: $Id: af_packet.c,v 1.24 1999/08/30 12:14:52 davem Exp $
+ * Version: $Id: af_packet.c,v 1.26 1999/12/20 05:20:02 davem Exp $
*
* Authors: Ross Biro, <bir7@leland.Stanford.Edu>
* Fred N. van Kempen, <waltje@uWalt.NL.Mugnet.ORG>
* as published by the Free Software Foundation; either version
* 2 of the License, or (at your option) any later version.
*
- * Version: $Id: af_unix.c,v 1.84 1999/09/08 03:47:18 davem Exp $
+ * Version: $Id: af_unix.c,v 1.87 1999/12/09 00:54:25 davem Exp $
*
* Fixes:
* Linus Torvalds : Assorted bug cures.