/*
- * Copyright (c) 2008, 2009 Nicira Networks.
+ * Copyright (c) 2008, 2009, 2010 Nicira Networks.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
+
#ifndef PACKETS_H
#define PACKETS_H 1
#include "random.h"
#include "util.h"
+struct ofpbuf;
+
#define ETH_ADDR_LEN 6
static const uint8_t eth_addr_broadcast[ETH_ADDR_LEN] UNUSED
&& (ea[5] & 0xf0) == 0x00);
}
+void compose_benign_packet(struct ofpbuf *, const char *tag,
+ uint16_t snap_type,
+ const uint8_t eth_src[ETH_ADDR_LEN]);
+
/* Example:
*
* uint8_t mac[ETH_ADDR_LEN];
#define IP_IHL(ip_ihl_ver) ((ip_ihl_ver) & 15)
#define IP_IHL_VER(ihl, ver) (((ver) << 4) | (ihl))
+/* TOS fields. */
+#define IP_ECN_MASK 0x03
+#define IP_DSCP_MASK 0xfc
+
#define IP_TYPE_ICMP 1
#define IP_TYPE_TCP 6
#define IP_TYPE_UDP 17