[insert project logo here (125x200px max)]

Navigator

Mailinglists

Please report any errors or ommissions you find to our `Help' mailinglist, or post a message in the Forums.

Copyright and Licensing Information

Snap is (c) Jonathan T. Moore, 1999-2002 and licensed under the GNU General Public License (GPL).

All other parts of Splash are (c) Willem de Bruijn, 2002-2003 and licensed under the BSD Open Source License.

All sourcecode is made publicly available.

Acknowledgement

Splash and the Splash website are hosted by SourceForge.net

SourceForge.net Logo

osi-open source certified logo

Splash - Documentation

SNMP Plus a Lightweight API for SNAP Handling

Main Page   Alphabetical List   Data Structures   File List   Data Fields   Globals  

snap-1.1-wjdb/lib/snap_kern_iface.h

Go to the documentation of this file.
00001 /* $Id: snap_kern_iface.h,v 1.6 2002/12/22 14:44:55 wdebruij Exp $ */
00002 
00003 #ifndef _SNAP_KERN_IFACE_H
00004 #define _SNAP_KERN_IFACE
00005 
00006 #ifdef CONFIG_IP_SNAP
00007 
00008 #include <asm/types.h>
00009 #include <net/if.h>
00010 #include "packet.h"
00011 #include <netinet/in.h>    /* sockaddr_in */
00012 
00013 #ifdef __KERNEL__
00014 extern int snap_here(__u32 *addr, struct sk_buff *skb);
00015 extern int next_hop(struct rtable **rtp, __u32 daddr, int tos);
00016 extern int ishere(__u32 daddr, struct sk_buff *skb);
00017 extern int getdevindex(struct device *dev_in);
00018 extern int snap_demux_send(__u16 destport, struct sk_buff *skb,
00019               void *s, unsigned int slen);
00020 extern int snap_send_packet(packet_t *p, int stack_amt, __u32 dest,
00021                 unsigned char rb, int ep, short direct);
00022 extern struct sk_buff *skb_grow(struct sk_buff *skb, int newtailroom);
00023 extern packet_t *pkt_dup(packet_t *p);
00024 #else
00025 extern void init_kern_iface(struct sockaddr_in *herehint);
00026 extern int snap_here(__u32 *addr, packet_t *p);
00027 extern int next_hop(__u32 *hop, __u32 daddr, int tos);
00028 extern int next_hop_and_dev(__u32 *hop, int *dev, __u32 daddr);
00029 extern int ishere(__u32 daddr, packet_t *p);
00030 extern int snap_demux_send(__u16 destport, packet_t *p,
00031               void *s, unsigned int slen);
00032 extern int snap_send_packet(packet_t *p, int stack_amt, __u32 dest,
00033                 unsigned char rb, int ep, short direct);
00034 extern packet_t *pkt_dup(packet_t *p);
00035 
00036 struct if_info {
00037   struct if_nameindex ifni;
00038   __u32 addr;
00039   char hwaddr[32];
00040 };
00041 
00042 extern unsigned int numifs;
00043 extern struct if_info *ifs;
00044 extern unsigned int maxifnum;
00045 extern unsigned int ifs_size;
00046 #endif
00047 
00048 #ifdef CONFIG_IP_SNAP_DEBUG
00049 extern int sysctl_snap_debug_level;
00050 #endif /* CONFIG_IP_SNAP_DEBUG */
00051 #endif /* CONFIG_IP_SNAP */
00052 #endif /* !_SNAP_KERN_IFACE_H */