aboutsummaryrefslogtreecommitdiffstats
path: root/src/vnet/interface_types_api.c
diff options
context:
space:
mode:
authorNeale Ranns <neale.ranns@cisco.com>2020-12-14 16:50:33 +0000
committerOle Tr�an <otroan@employees.org>2021-02-05 12:00:56 +0000
commit6a999d67d6e41df0fb9f63f0a379ebd389617a7e (patch)
treef8f029fea972508aed622b38682196080a59c8ad /src/vnet/interface_types_api.c
parentadcc0b359605df118b69e05614740570b22c92fb (diff)
interface: RX/TX direction type in API
Type: feature Signed-off-by: Neale Ranns <neale.ranns@cisco.com> Change-Id: I982205b48615395f19cbb36c73854fb5c3db45e8
Diffstat (limited to 'src/vnet/interface_types_api.c')
-rw-r--r--src/vnet/interface_types_api.c49
1 files changed, 49 insertions, 0 deletions
diff --git a/src/vnet/interface_types_api.c b/src/vnet/interface_types_api.c
new file mode 100644
index 00000000000..5aba3d632f3
--- /dev/null
+++ b/src/vnet/interface_types_api.c
@@ -0,0 +1,49 @@
+/* Hey Emacs use -*- mode: C -*- */
+/*
+ * Copyright (c) 2020 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/interface_types_api.h>
+
+STATIC_ASSERT_SIZEOF (vl_api_direction_t, 1);
+
+int
+direction_decode (vl_api_direction_t _dir, vlib_dir_t * out)
+{
+ switch (_dir)
+ {
+ case RX:
+ *out = VLIB_RX;
+ return (0);
+ case TX:
+ *out = VLIB_TX;
+ return (0);
+ }
+ return (VNET_API_ERROR_INVALID_VALUE);
+}
+
+vl_api_direction_t
+direction_encode (vlib_dir_t dir)
+{
+ return (vl_api_direction_t) dir;
+}
+
+/*
+ * fd.io coding-style-patch-verification: ON
+ *
+ * Local Variables:
+ * eval: (c-set-style "gnu")
+ * End:
+ */