Lines Matching +defs:a +defs:mark
63 * - Limit the number of options in a Hop-by-Hop or Destination options
65 * - Limit the byte length of a Hop-by-Hop or Destination options extension
81 * max_*_opts_len is the length limit in bytes of a Destination or
85 * If a limit is exceeded when processing an extension header the packet is
124 #define IPV6_ADDR_MC_SCOPE(a) \
125 ((a)->s6_addr[1] & 0x0f) /* nonstandard */
136 #define IPV6_ADDR_MC_FLAG_TRANSIENT(a) \
137 ((a)->s6_addr[1] & 0x10)
138 #define IPV6_ADDR_MC_FLAG_PREFIX(a) \
139 ((a)->s6_addr[1] & 0x20)
140 #define IPV6_ADDR_MC_FLAG_RENDEZVOUS(a) \
141 ((a)->s6_addr[1] & 0x40)
211 #define IP6_REPLY_MARK(net, mark) \
212 ((net)->ipv6.sysctl.fwmark_reflect ? (mark) : 0)
470 * Returns: 0, or IPPROTO_TCP if a BIG TCP packet is there.
725 static inline bool ipv6_addr_any(const struct in6_addr *a)
728 const unsigned long *ul = (const unsigned long *)a;
732 return (a->s6_addr32[0] | a->s6_addr32[1] |
733 a->s6_addr32[2] | a->s6_addr32[3]) == 0;
737 static inline u32 ipv6_addr_hash(const struct in6_addr *a)
740 const unsigned long *ul = (const unsigned long *)a;
745 return (__force u32)(a->s6_addr32[0] ^ a->s6_addr32[1] ^
746 a->s6_addr32[2] ^ a->s6_addr32[3]);
751 static inline u32 __ipv6_addr_jhash(const struct in6_addr *a, const u32 initval)
753 return jhash2((__force const u32 *)a->s6_addr32,
754 ARRAY_SIZE(a->s6_addr32), initval);
757 static inline bool ipv6_addr_loopback(const struct in6_addr *a)
760 const __be64 *be = (const __be64 *)a;
764 return (a->s6_addr32[0] | a->s6_addr32[1] |
765 a->s6_addr32[2] | (a->s6_addr32[3] ^ cpu_to_be32(1))) == 0;
773 static inline bool ipv6_addr_v4mapped(const struct in6_addr *a)
777 *(unsigned long *)a |
779 (__force unsigned long)(a->s6_addr32[0] | a->s6_addr32[1]) |
781 (__force unsigned long)(a->s6_addr32[2] ^
785 static inline bool ipv6_addr_v4mapped_loopback(const struct in6_addr *a)
787 return ipv6_addr_v4mapped(a) && ipv4_is_loopback(a->s6_addr32[3]);
807 * Check for a RFC 4843 ORCHID address
810 static inline bool ipv6_addr_orchid(const struct in6_addr *a)
812 return (a->s6_addr32[0] & htonl(0xfffffff0)) == htonl(0x20010010);
831 * length of address must be a multiple of 32bits
958 /* @flowlabel may include more than a flow label, eg, the traffic class.
971 /* Since this is being sent on the wire obfuscate hash a bit
1088 __u32 mark, struct ipv6_txoptions *opt, int tclass, u32 priority);