X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=lib%2Fpackets.h;h=7ea462bcf77ae19e68e2961c5aeb7e5aad5d19b3;hb=76f105d9be03588c2d5ec0b94ff769a1d269f2e4;hp=6513f64b951d839e8600afadf010c3ce862e73d3;hpb=70150daf2fd88a84f80044a9589e97942b85c25b;p=openvswitch diff --git a/lib/packets.h b/lib/packets.h index 6513f64b..7ea462bc 100644 --- a/lib/packets.h +++ b/lib/packets.h @@ -1,5 +1,5 @@ /* - * 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. @@ -30,7 +30,7 @@ bool dpid_from_string(const char *s, uint64_t *dpidp); #define ETH_ADDR_LEN 6 -static const uint8_t eth_addr_broadcast[ETH_ADDR_LEN] UNUSED +static const uint8_t eth_addr_broadcast[ETH_ADDR_LEN] OVS_UNUSED = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff }; static inline bool eth_addr_is_broadcast(const uint8_t ea[6]) @@ -190,7 +190,10 @@ struct llc_snap_header { BUILD_ASSERT_DECL(LLC_SNAP_HEADER_LEN == sizeof(struct llc_snap_header)); #define VLAN_VID_MASK 0x0fff +#define VLAN_VID_SHIFT 0 + #define VLAN_PCP_MASK 0xe000 +#define VLAN_PCP_SHIFT 13 #define VLAN_HEADER_LEN 4 struct vlan_header { @@ -224,6 +227,10 @@ BUILD_ASSERT_DECL(VLAN_ETH_HEADER_LEN == sizeof(struct vlan_eth_header)); #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