1 /* SPDX-License-Identifier: Apache-2.0
2 * Copyright(c) 2022 Cisco Systems, Inc.
5 #include <vppinfra/error.h>
6 #include <vnet/api_errno.h>
8 static char *error_strings[] = {
9 #define _(a, b, c) [-(b)] = c,
15 vnet_error (vnet_error_t rv, char *fmt, ...)
17 clib_error_t *e, *err = 0;
20 e->what = format (e->what, "%s", error_strings[-rv]);
24 vec_add1 (e->what, ' ');
25 vec_add1 (e->what, '(');
27 e->what = va_format (e->what, fmt, &va);
28 vec_add1 (e->what, ')');
37 format_vnet_api_errno (u8 *s, va_list *args)
39 vnet_api_error_t api_error = va_arg (*args, vnet_api_error_t);
45 s = format (s, "%s", c); \
49 foreach_vnet_error default : s = format (s, "UNKNOWN");