void *tail;
/** End of the buffer */
void *end;
+
+ /** The network-layer protocol
+ *
+ * This is the network-layer protocol expressed as an
+ * ETH_P_XXX constant, in network-byte order.
+ */
+ uint16_t net_proto;
+ /** Flags
+ *
+ * Filled in only on outgoing packets. Value is the
+ * bitwise-OR of zero or more PKB_FL_XXX constants.
+ */
+ uint8_t flags;
+ /** Network-layer address length
+ *
+ * Filled in only on outgoing packets.
+ */
+ uint8_t net_addr_len;
+ /** Network-layer address
+ *
+ * Filled in only on outgoing packets.
+ */
+ void *net_addr;
};
+/** Packet is a broadcast packet */
+#define PKB_FL_BROADCAST 0x01
+
+/** Packet is a multicast packet */
+#define PKB_FL_MULTICAST 0x02
+
+/** Network-layer address is a raw hardware address */
+#define PKB_FL_RAW_NET_ADDR 0x04
+
/**
* Add data to start of packet buffer
*