Documentation

Documentation

Includes

lwip/opt.h

#include "lwip/opt.h"
#include "lwip/opt.h"

lwip/pbuf.h

#include "lwip/pbuf.h"
#include "lwip/pbuf.h"

lwip/def.h

#include "lwip/def.h"
#include "lwip/def.h"

lwip/ip.h

#include "lwip/ip.h"
#include "lwip/ip.h"

lwip/ip_addr.h

#include "lwip/ip_addr.h"
#include "lwip/ip_addr.h"

lwip/ip6_addr.h

#include "lwip/ip6_addr.h"
#include "lwip/ip6_addr.h"

Macros

Marco LWIP_HDR_RAW_H

#define LWIP_HDR_RAW_H


      

Marco RAW_FLAGS_CONNECTED

#define RAW_FLAGS_CONNECTED     0x01U


      

Marco RAW_FLAGS_HDRINCL

#define RAW_FLAGS_HDRINCL       0x02U


      

Marco RAW_FLAGS_MULTICAST_LOOP

#define RAW_FLAGS_MULTICAST_LOOP 0x04U


      

Marco raw_flags(pcb)

#define         raw_flags(pcb) ((pcb)->flags)


      

Marco raw_setflags(pcb,f)

#define         raw_setflags(pcb,f) ((pcb)->flags = (f))


      

Marco raw_set_flags(pcb, set_flags)

#define         raw_set_flags(pcb, set_flags)    do { (pcb)->flags = (u8_t)((pcb)->flags | (set_flags)); } while(0)


      

Marco raw_clear_flags(pcb, clr_flags)

#define         raw_clear_flags(pcb, clr_flags)  do { (pcb)->flags = (u8_t)((pcb)->flags & (u8_t)(~(clr_flags) & 255)); } while(0)


      

Marco raw_is_flag_set(pcb, flag)

#define         raw_is_flag_set(pcb, flag)       (((pcb)->flags & (flag)) != 0)


      

Marco raw_init()

#define raw_init() /* Compatibility define, no init needed. */


      

Marco raw_new_ip6(proto)

#define raw_new_ip6(proto) raw_new_ip_type(IPADDR_TYPE_V6, proto)
/* for compatibility with older implementation */

Marco raw_set_multicast_netif_index(pcb, idx)

#define raw_set_multicast_netif_index(pcb, idx) ((pcb)->mcast_ifindex = (idx))


      

Marco raw_get_multicast_netif_index(pcb)

#define raw_get_multicast_netif_index(pcb)     ((pcb)->mcast_ifindex)


      

Marco raw_set_multicast_ttl(pcb, value)

#define raw_set_multicast_ttl(pcb, value)      ((pcb)->mcast_ttl = (value))


      

Marco raw_get_multicast_ttl(pcb)

#define raw_get_multicast_ttl(pcb)             ((pcb)->mcast_ttl)

      

Functions

Func raw_bind_netif

void            raw_bind_netif (struct raw_pcb *pcb, const struct netif *netif);


      

Func raw_disconnect

void            raw_disconnect (struct raw_pcb *pcb);


      

Func raw_sendto_if_src

err_t           raw_sendto_if_src(struct raw_pcb *pcb, struct pbuf *p, const ip_addr_t *dst_ip, struct netif *netif, const ip_addr_t *src_ip);

      

Vars

Variable raw_pcb

struct raw_pcb;


      

Variable raw_pcb

struct raw_pcb * raw_new       (u8_t proto);
/* The following functions is the application layer interface to the
   RAW code. */

Variable raw_pcb

struct raw_pcb * raw_new_ip_type(u8_t type, u8_t proto);


      

Variable raw_remove

void            raw_remove    (struct raw_pcb *pcb);


      

Variable raw_bind

err_t           raw_bind      (struct raw_pcb *pcb, const ip_addr_t *ipaddr);


      

Variable raw_connect

err_t           raw_connect   (struct raw_pcb *pcb, const ip_addr_t *ipaddr);


      

Variable raw_sendto

err_t           raw_sendto    (struct raw_pcb *pcb, struct pbuf *p, const ip_addr_t *ipaddr);


      

Variable raw_send

err_t           raw_send      (struct raw_pcb *pcb, struct pbuf *p);


      

Variable raw_recv

void            raw_recv      (struct raw_pcb *pcb, raw_recv_fn recv, void *recv_arg);

      

Consts

Types

Typedefs

Typedef raw_recv_fn

typedef u8_t (*raw_recv_fn)(void *arg, struct raw_pcb *pcb, struct pbuf *p,
   const ip_addr_t *addr);
/** Function prototype for raw pcb receive callback functions.
 * @param arg user supplied argument (raw_pcb.recv_arg)
 * @param pcb the raw_pcb which received data
 * @param p the packet buffer that was received
 * @param addr the remote IP address from which the packet was received
 * @return 1 if the packet was 'eaten' (aka. deleted),
 *         0 if the packet lives on
 * If returning 1, the callback is responsible for freeing the pbuf
 * if it's not used any more.
 */