diff options
author | Neale Ranns <nranns@cisco.com> | 2019-11-25 13:04:44 +0000 |
---|---|---|
committer | Ole Trøan <otroan@employees.org> | 2019-12-03 19:36:26 +0000 |
commit | 9534696b4637185c9f296375e63c50d8976d153d (patch) | |
tree | 7e5bce5d492b6b376e42f9df175e18202f93af68 /src/vnet/ipip/ipip_types_api.c | |
parent | c8972fe506c78530a3e4085453e86a0b85b245ef (diff) |
ipip: Tunnel flags controlling copying data to/from payload/encap
Type: feature
Signed-off-by: Neale Ranns <nranns@cisco.com>
Change-Id: I9467f11775936754406892b8e9e275f989ac9b30
Diffstat (limited to 'src/vnet/ipip/ipip_types_api.c')
-rw-r--r-- | src/vnet/ipip/ipip_types_api.c | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/src/vnet/ipip/ipip_types_api.c b/src/vnet/ipip/ipip_types_api.c new file mode 100644 index 00000000000..5625b85af68 --- /dev/null +++ b/src/vnet/ipip/ipip_types_api.c @@ -0,0 +1,53 @@ +/* + * ipip_api.c - ipip api + * + * Copyright (c) 2018 Cisco and/or its affiliates. + * 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. + */ + +#include <vnet/api_errno.h> +#include <vnet/ipip/ipip_types_api.h> + +#include <vnet/ipip/ipip_types.api_enum.h> +#include <vnet/ipip/ipip_types.api_types.h> + + +STATIC_ASSERT (sizeof (vl_api_ipip_tunnel_flags_t) == + sizeof (ipip_tunnel_flags_t), + "IPIP tunnel API and internal flags enum size differ"); + +int +ipip_tunnel_flags_decode (vl_api_ipip_tunnel_flags_t f, + ipip_tunnel_flags_t * o) +{ + if (f & ~IPIP_TUNNEL_FLAG_MASK) + /* unknown flags set */ + return (VNET_API_ERROR_INVALID_VALUE_2); + + *o = (ipip_tunnel_flags_t) f; + return (0); +} + +vl_api_ipip_tunnel_flags_t +ipip_tunnel_flags_encode (ipip_tunnel_flags_t f) +{ + return ((vl_api_ipip_tunnel_flags_t) f); +} + +/* + * fd.io coding-style-patch-verification: ON + * + * Local Variables: + * eval: (c-set-style "gnu") + * End: + */ |