Back to home page

Quest Cross Reference

 
 

    


Warning, cross-references for /kernel/include/lwip/ip_frag.h need to be fixed.

0001 /*
0002  * Copyright (c) 2001-2004 Swedish Institute of Computer Science.
0003  * All rights reserved. 
0004  * 
0005  * Redistribution and use in source and binary forms, with or without modification, 
0006  * are permitted provided that the following conditions are met:
0007  *
0008  * 1. Redistributions of source code must retain the above copyright notice,
0009  *    this list of conditions and the following disclaimer.
0010  * 2. Redistributions in binary form must reproduce the above copyright notice,
0011  *    this list of conditions and the following disclaimer in the documentation
0012  *    and/or other materials provided with the distribution.
0013  * 3. The name of the author may not be used to endorse or promote products
0014  *    derived from this software without specific prior written permission. 
0015  *
0016  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED 
0017  * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF 
0018  * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT 
0019  * SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 
0020  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT 
0021  * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 
0022  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 
0023  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING 
0024  * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY 
0025  * OF SUCH DAMAGE.
0026  *
0027  * This file is part of the lwIP TCP/IP stack.
0028  * 
0029  * Author: Jani Monoses <jani@iv.ro>
0030  *
0031  */
0032 
0033 #ifndef __LWIP_IP_FRAG_H__
0034 #define __LWIP_IP_FRAG_H__
0035 
0036 #include "lwip/opt.h"
0037 #include "lwip/err.h"
0038 #include "lwip/pbuf.h"
0039 #include "lwip/netif.h"
0040 #include "lwip/ip_addr.h"
0041 #include "lwip/ip.h"
0042 
0043 #ifdef __cplusplus
0044 extern "C" {
0045 #endif
0046 
0047 #if IP_REASSEMBLY
0048 /* The IP reassembly timer interval in milliseconds. */
0049 #define IP_TMR_INTERVAL 1000
0050 
0051 /* IP reassembly helper struct.
0052  * This is exported because memp needs to know the size.
0053  */
0054 struct ip_reassdata {
0055   struct ip_reassdata *next;
0056   struct pbuf *p;
0057   struct ip_hdr iphdr;
0058   u16_t datagram_len;
0059   u8_t flags;
0060   u8_t timer;
0061 };
0062 
0063 void ip_reass_init(void);
0064 void ip_reass_tmr(void);
0065 struct pbuf * ip_reass(struct pbuf *p);
0066 #endif /* IP_REASSEMBLY */
0067 
0068 #if IP_FRAG
0069 err_t ip_frag(struct pbuf *p, struct netif *netif, struct ip_addr *dest);
0070 #endif /* IP_FRAG */
0071 
0072 #ifdef __cplusplus
0073 }
0074 #endif
0075 
0076 #endif /* __LWIP_IP_FRAG_H__ */