add siit for stateless ip and icmp translation to ipv6
SVN-Revision: 13729
This commit is contained in:
61
package/siit/src/siit.h
Normal file
61
package/siit/src/siit.h
Normal file
@@ -0,0 +1,61 @@
|
||||
/*
|
||||
* siit.h -- definitions for the SIIT module
|
||||
*
|
||||
*
|
||||
*/
|
||||
|
||||
/*
|
||||
* Constants
|
||||
*/
|
||||
|
||||
/* SIIT_ETH control the name of SIIT interface:
|
||||
* 0 - interface name is siit0,
|
||||
* 1 - interface name is ethX.
|
||||
*/
|
||||
#define SIIT_ETH 0
|
||||
|
||||
#define BUFF_SIZE 4096
|
||||
#define FRAG_BUFF_SIZE 1232 /* IPv6 max fragment size without IPv6 header
|
||||
* to fragmanet IPv4 if result IPv6 packet will be > 1280
|
||||
*/
|
||||
|
||||
#define TRANSLATED_PREFIX 0x0000ffff /* third byte in IPv4-translated addr prefix */
|
||||
#define MAPPED_PREFIX 0x0000ffff /* third byte in IPv4-mapped addr prefix */
|
||||
|
||||
#define IP4_IP6_HDR_DIFF 20 /* diffirence between IPv4 and IPv6 headers */
|
||||
#define IP6_FRAGMENT_SIZE 8 /* size of Fragment Header */
|
||||
|
||||
/* IPv6 header fields masks */
|
||||
#define IP6F_OFF_MASK 0xfff8 /* mask out offset from frag_off */
|
||||
#define IP6F_RESERVED_MASK 0x0006 /* reserved bits in frag_off */
|
||||
#define IP6F_MORE_FRAG 0x0001 /* more-fragments flag */
|
||||
|
||||
|
||||
|
||||
/*
|
||||
* Macros to help debugging
|
||||
*/
|
||||
|
||||
#undef PDEBUG /* undef it, just in case */
|
||||
#ifdef SIIT_DEBUG
|
||||
# ifdef __KERNEL__
|
||||
/* This one if debugging is on, and kernel space */
|
||||
# define PDEBUG(fmt, args...) printk(KERN_DEBUG "siit: " fmt, ## args)
|
||||
# else
|
||||
/* This one for user space */
|
||||
# define PDEBUG(fmt, args...) fprintf(stderr, fmt, ## args)
|
||||
# endif
|
||||
#else
|
||||
# define PDEBUG(fmt, args...) /* not debugging: nothing */
|
||||
#endif
|
||||
|
||||
#undef PDEBUGG
|
||||
#define PDEBUGG(fmt, args...)
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user