root/net/tcp/pack_type.c

/* [previous][next][first][last][top][bottom][index][help] */
   1 /* pack_type.c - implements raw packet sockets. */
   2 /*
   3     Copyright (C) 1992  Ross Biro
   4 
   5     This program is free software; you can redistribute it and/or modify
   6     it under the terms of the GNU General Public License as published by
   7     the Free Software Foundation; either version 2, or (at your option)
   8     any later version.
   9 
  10     This program is distributed in the hope that it will be useful,
  11     but WITHOUT ANY WARRANTY; without even the implied warranty of
  12     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  13     GNU General Public License for more details.
  14 
  15     You should have received a copy of the GNU General Public License
  16     along with this program; if not, write to the Free Software
  17     Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. 
  18 
  19     The Author may be reached as bir7@leland.stanford.edu or
  20     C/O Department of Mathematics; Stanford University; Stanford, CA 94305
  21 */
  22 /* $Id: pack_type.c,v 0.8.4.2 1992/11/10 10:38:48 bir7 Exp $ */
  23 /* $Log: pack_type.c,v $
  24  * Revision 0.8.4.2  1992/11/10  10:38:48  bir7
  25  * Change free_s to kfree_s and accidently changed free_skb to kfree_skb.
  26  *
  27  * Revision 0.8.4.1  1992/11/10  00:17:18  bir7
  28  * version change only.
  29  *
  30  * Revision 0.8.3.2  1992/11/10  00:14:47  bir7
  31  * Changed malloc to kmalloc and added $iId$ 
  32  * */
  33 
  34 #include <linux/stddef.h>
  35 #include "dev.h"
  36 #include "eth.h"
  37 
  38 extern int arp_rcv (struct sk_buff *skb, struct device *dev,
  39                     struct packet_type *pt);
  40 
  41 static struct packet_type arp_packet_type=
  42 {
  43    NET16(ETHERTYPE_ARP),
  44    0, /* copy */
  45    arp_rcv,
  46    NULL,
  47    NULL /* next */
  48 };
  49 
  50 extern int ip_rcv (struct sk_buff *skb, struct device *dev,
  51                    struct packet_type *pt);
  52 
  53 static struct packet_type ip_packet_type=
  54 {
  55    NET16(ETHERTYPE_IP),
  56    0, /* copy */
  57    ip_rcv,
  58    NULL,
  59    &arp_packet_type
  60 };
  61    
  62 struct packet_type *ptype_base = &ip_packet_type;
  63 
  64 
  65 
  66 
  67 

/* [previous][next][first][last][top][bottom][index][help] */