In this patch we remove reference to OvsNetlink.h. Since we do not refer to lib/netlink-protocol.h anymore, hence removed the WIN_DP based check as well.
Signed-off-by: Ankur Sharma <ankursha...@vmware.com> Reported-at: https://github.com/openvswitch/ovs-issues/issues/18 Acked-by: Nithin Raju <nit...@vmware.com> --- datapath-windows/automake.mk | 3 +- datapath-windows/include/OvsNetlink.h | 174 ---------------------------------- lib/netlink-protocol.h | 6 -- 3 files changed, 1 insertion(+), 182 deletions(-) delete mode 100644 datapath-windows/include/OvsNetlink.h diff --git a/datapath-windows/automake.mk b/datapath-windows/automake.mk index f8c91e9..eef0850 100644 --- a/datapath-windows/automake.mk +++ b/datapath-windows/automake.mk @@ -4,11 +4,10 @@ EXTRA_DIST += \ datapath-windows/Package/package.VcxProj \ datapath-windows/Package/package.VcxProj.user \ datapath-windows/include/OvsDpInterfaceExt.h \ - datapath-windows/include/OvsNetlink.h \ - datapath-windows/include/OvsPub.h\ datapath-windows/ovsext/Netlink.c \ datapath-windows/ovsext/Netlink.h \ datapath-windows/include/NetlinkProto.h \ + datapath-windows/include/OvsPub.h \ datapath-windows/misc/install.cmd \ datapath-windows/misc/uninstall.cmd \ datapath-windows/ovsext.sln \ diff --git a/datapath-windows/include/OvsNetlink.h b/datapath-windows/include/OvsNetlink.h deleted file mode 100644 index 8a9fc55..0000000 --- a/datapath-windows/include/OvsNetlink.h +++ /dev/null @@ -1,174 +0,0 @@ -/* - * Copyright (c) 2008, 2009, 2010, 2011, 2013, 2014 Nicira, Inc. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at: - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#ifndef __OVS_NETLINK_H_ -#define __OVS_NETLINK_H_ 1 - -#include "lib/netlink-protocol.h" - -/* Returns X / Y, rounding up. X must be nonnegative to round correctly. */ -#define DIV_ROUND_UP(X, Y) (((X) + ((Y) - 1)) / (Y)) - -/* Returns X rounded up to the nearest multiple of Y. */ -#define ROUND_UP(X, Y) (DIV_ROUND_UP(X, Y) * (Y)) - -static __inline int -nl_attr_is_valid(const struct nlattr *nla, size_t maxlen) -{ - return (maxlen >= sizeof *nla - && nla->nla_len >= sizeof *nla - && nla->nla_len <= maxlen); -} - -static __inline size_t -nl_attr_len_pad(const struct nlattr *nla, size_t maxlen) -{ - size_t len = NLA_ALIGN(nla->nla_len); - - return len <= maxlen ? len : nla->nla_len; -} - -/* This macro is careful to check for attributes with bad lengths. */ -#define NL_ATTR_FOR_EACH(ITER, LEFT, ATTRS, ATTRS_LEN) \ - for ((ITER) = (ATTRS), (LEFT) = (ATTRS_LEN); \ - nl_attr_is_valid(ITER, LEFT); \ - (LEFT) -= nl_attr_len_pad(ITER, LEFT), (ITER) = nl_attr_next(ITER)) - -/* This macro does not check for attributes with bad lengths. It should only - * be used with messages from trusted sources or with messages that have - * already been validated (e.g. with NL_ATTR_FOR_EACH). */ -#define NL_ATTR_FOR_EACH_UNSAFE(ITER, LEFT, ATTRS, ATTRS_LEN) \ - for ((ITER) = (ATTRS), (LEFT) = (ATTRS_LEN); \ - (LEFT) > 0; \ - (LEFT) -= NLA_ALIGN((ITER)->nla_len), (ITER) = nl_attr_next(ITER)) - -/* These were introduced all together in 2.6.24. */ -#ifndef NLA_TYPE_MASK -#define NLA_F_NESTED (1 << 15) -#define NLA_F_NET_BYTEORDER (1 << 14) -#define NLA_TYPE_MASK ~(NLA_F_NESTED | NLA_F_NET_BYTEORDER) -#endif - -/* Netlink attribute iteration. */ -static __inline struct nlattr * -nl_attr_next(const struct nlattr *nla) -{ - return (struct nlattr *) ((uint8_t *) nla + NLA_ALIGN(nla->nla_len)); -} - - /* Returns the bits of 'nla->nla_type' that are significant for determining - * its type. */ -static __inline int -nl_attr_type(const struct nlattr *nla) -{ - return nla->nla_type & NLA_TYPE_MASK; -} - -static __inline void * -nl_attr_data(const struct nlattr *nla) -{ - return ((char *)nla + NLA_HDRLEN); -} - -/* Returns the number of bytes in the payload of attribute 'nla'. */ -static __inline uint32_t -nl_attr_get_size(const struct nlattr *nla) -{ - return nla->nla_len - NLA_HDRLEN; -} - -/* Returns the first byte in the payload of attribute 'nla'. */ -static __inline const void * -nl_attr_get(const struct nlattr *nla) -{ - ASSERT(nla->nla_len >= NLA_HDRLEN); - return nla + 1; -} - -#define NL_ATTR_GET_AS(NLA, TYPE) \ - (*(TYPE*) nl_attr_get_unspec(nla, sizeof(TYPE))) - -/* Asserts that 'nla''s payload is at least 'size' bytes long, and returns the - * first byte of the payload. */ -static const void * -nl_attr_get_unspec(const struct nlattr *nla, size_t size) -{ - DBG_UNREFERENCED_PARAMETER(size); - ASSERT(nla->nla_len >= NLA_HDRLEN + size); - return nla + 1; -} - -/* Returns the 64-bit network byte order value in 'nla''s payload. - * - * Asserts that 'nla''s payload is at least 8 bytes long. */ -static __inline __be64 -nl_attr_get_be64(const struct nlattr *nla) -{ - return NL_ATTR_GET_AS(nla, __be64); -} - -/* Returns the 32-bit network byte order value in 'nla''s payload. - * - * Asserts that 'nla''s payload is at least 4 bytes long. */ -static __inline __be32 -nl_attr_get_be32(const struct nlattr *nla) -{ - return NL_ATTR_GET_AS(nla, __be32); -} - -/* Returns the 8-bit value in 'nla''s payload. */ -static __inline uint8_t -nl_attr_get_u8(const struct nlattr *nla) -{ - return NL_ATTR_GET_AS(nla, uint8_t); -} - - -/* Returns the 32-bit host byte order value in 'nla''s payload. - * - * Asserts that 'nla''s payload is at least 4 bytes long. */ -static __inline uint32_t -nl_attr_get_u32(const struct nlattr *nla) -{ - return NL_ATTR_GET_AS(nla, uint32_t); -} - - -static __inline const struct nlattr * -nl_attr_find__(const struct nlattr *attrs, size_t size, uint16_t type) -{ - const struct nlattr *nla; - size_t left; - - NL_ATTR_FOR_EACH (nla, left, attrs, size) { - if (nl_attr_type(nla) == type) { - return nla; - } - } - return NULL; -} - -/* Returns the first Netlink attribute within 'nla' with the specified - * 'type'. - * - * This function does not validate the attribute's length. */ -static __inline const struct nlattr * -nl_attr_find_nested(const struct nlattr *nla, uint16_t type) -{ - return nl_attr_find__(nl_attr_get(nla), nl_attr_get_size(nla), type); -} - -#endif /* __OVS_NETLINK_H_ */ diff --git a/lib/netlink-protocol.h b/lib/netlink-protocol.h index 5fbcce1..8938055 100644 --- a/lib/netlink-protocol.h +++ b/lib/netlink-protocol.h @@ -29,15 +29,9 @@ * on other platforms it directly defines the structures and macros itself. */ -/* This file is included by windows driver as well (as of now). - * It does not have access to following header files, - * hence do not include them for windows driver. - */ -#ifndef OVS_WIN_DP #include <stdint.h> #include <sys/socket.h> #include "util.h" -#endif #ifdef HAVE_NETLINK #include <linux/netlink.h> -- 1.9.1 _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev