|
|
1.1 ! root 1: /* arp.h */ ! 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 [email protected] or ! 20: C/O Department of Mathematics; Stanford University; Stanford, CA 94305 ! 21: */ ! 22: #ifndef _TCP_ARP_H ! 23: #define _TCP_ARP_H ! 24: ! 25: struct arp ! 26: { ! 27: unsigned short hrd; ! 28: unsigned short pro; ! 29: unsigned char hlen; ! 30: unsigned char plen; ! 31: unsigned short op; ! 32: }; ! 33: ! 34: ! 35: struct arp_table ! 36: { ! 37: struct arp_table *next; ! 38: unsigned long last_used; ! 39: unsigned long ip; ! 40: unsigned char hlen; ! 41: unsigned char hard[MAX_ADDR_LEN]; ! 42: }; ! 43: ! 44: ! 45: ! 46: int arp_rcv(struct sk_buff *, struct device *, struct packet_type *); ! 47: void arp_snd (unsigned long, struct device *, unsigned long); ! 48: int arp_find (unsigned char *, unsigned long, struct device *dev, ! 49: unsigned long); ! 50: void arp_add_broad (unsigned long, struct device *dev); ! 51: void arp_destroy (unsigned long); ! 52: void arp_add (unsigned long addr, unsigned char *haddr, struct device *dev); ! 53: void arp_queue (struct sk_buff *skb); ! 54: ! 55: #define ARP_TABLE_SIZE 16 ! 56: #define ARP_IP_PROT ETHERTYPE_IP ! 57: #define ARP_REQUEST 1 ! 58: #define ARP_REPLY 2 ! 59: #define ARP_TIMEOUT 8640000 /* about 8 hours. */ ! 60: #define ARP_RES_TIME 250 /* 2.5 seconds. */ ! 61: #endif
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.