diff options
Diffstat (limited to 'VNFs')
-rw-r--r-- | VNFs/UDP_Replay/Makefile | 1 | ||||
-rw-r--r-- | VNFs/UDP_Replay/main.c | 2 | ||||
-rw-r--r-- | VNFs/UDP_Replay/parse_obj_list.c | 149 | ||||
-rw-r--r-- | VNFs/UDP_Replay/parse_obj_list.h | 95 |
4 files changed, 0 insertions, 247 deletions
diff --git a/VNFs/UDP_Replay/Makefile b/VNFs/UDP_Replay/Makefile index 08fcbba4..34426581 100644 --- a/VNFs/UDP_Replay/Makefile +++ b/VNFs/UDP_Replay/Makefile @@ -60,7 +60,6 @@ CFLAGS += -I$(VNF_CORE)/common/VIL/gateway # all source are stored in SRCS-y SRCS-y := main.c -SRCS-y += parse_obj_list.c SRCS-y += config_parse.c SRCS-y += config_parse_tm.c SRCS-y += config_check.c diff --git a/VNFs/UDP_Replay/main.c b/VNFs/UDP_Replay/main.c index 920dcbf6..65370326 100644 --- a/VNFs/UDP_Replay/main.c +++ b/VNFs/UDP_Replay/main.c @@ -83,8 +83,6 @@ performance of the solution should be sufficient for testing the UDP NAT perform #include <rte_errno.h> #include <rte_cfgfile.h> -#include "parse_obj_list.h" - #include <lib_arp.h> #include "l2_proto.h" #include "interface.h" diff --git a/VNFs/UDP_Replay/parse_obj_list.c b/VNFs/UDP_Replay/parse_obj_list.c deleted file mode 100644 index a8100d19..00000000 --- a/VNFs/UDP_Replay/parse_obj_list.c +++ /dev/null @@ -1,149 +0,0 @@ -/* -// Copyright (c) 2016-2017 Intel Corporation -// -// 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. -*/ - -/* - * Copyright (c) 2009, Olivier MATZ <zer0@droids-corp.org> - * All rights reserved. - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * * Neither the name of the University of California, Berkeley nor the - * names of its contributors may be used to endorse or promote products - * derived from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE REGENTS AND CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#include <stdio.h> -#include <inttypes.h> -#include <stdarg.h> -#include <errno.h> -#include <ctype.h> -#include <string.h> -#include <netinet/in.h> - -#include <cmdline_parse.h> -#include <cmdline_parse_ipaddr.h> - -#include <rte_string_fns.h> - -#include "parse_obj_list.h" - -/* This file is an example of extension of libcmdline. It provides an - * example of objects stored in a list. */ - -struct cmdline_token_ops token_obj_list_ops = { - .parse = parse_obj_list, - .complete_get_nb = complete_get_nb_obj_list, - .complete_get_elt = complete_get_elt_obj_list, - .get_help = get_help_obj_list, -}; - -int -parse_obj_list(cmdline_parse_token_hdr_t *tk, const char *buf, void *res, - unsigned ressize) -{ - struct token_obj_list *tk2 = (struct token_obj_list *)tk; - struct token_obj_list_data *tkd = &tk2->obj_list_data; - struct object *o; - unsigned int token_len = 0; - - if (*buf == 0) - return -1; - - if (res && ressize < sizeof(struct object *)) - return -1; - - while(!cmdline_isendoftoken(buf[token_len])) - token_len++; - - SLIST_FOREACH(o, tkd->list, next) { - if (token_len != strnlen(o->name, OBJ_NAME_LEN_MAX)) - continue; - if (strncmp(buf, o->name, token_len)) - continue; - break; - } - if (!o) /* not found */ - return -1; - - /* store the address of object in structure */ - if (res) - *(struct object **)res = o; - - return token_len; -} - -int complete_get_nb_obj_list(cmdline_parse_token_hdr_t *tk) -{ - struct token_obj_list *tk2 = (struct token_obj_list *)tk; - struct token_obj_list_data *tkd = &tk2->obj_list_data; - struct object *o; - int ret = 0; - - SLIST_FOREACH(o, tkd->list, next) { - ret ++; - } - return ret; -} - -int complete_get_elt_obj_list(cmdline_parse_token_hdr_t *tk, - int idx, char *dstbuf, unsigned int size) -{ - struct token_obj_list *tk2 = (struct token_obj_list *)tk; - struct token_obj_list_data *tkd = &tk2->obj_list_data; - struct object *o; - int i = 0; - unsigned len; - - SLIST_FOREACH(o, tkd->list, next) { - if (i++ == idx) - break; - } - if (!o) - return -1; - - len = strnlen(o->name, OBJ_NAME_LEN_MAX); - if ((len + 1) > size) - return -1; - - if (dstbuf) - snprintf(dstbuf, size, "%s", o->name); - - return 0; -} - - -int get_help_obj_list(__attribute__((unused)) cmdline_parse_token_hdr_t *tk, - char *dstbuf, unsigned int size) -{ - snprintf(dstbuf, size, "Obj-List"); - return 0; -} diff --git a/VNFs/UDP_Replay/parse_obj_list.h b/VNFs/UDP_Replay/parse_obj_list.h deleted file mode 100644 index 6b492e0f..00000000 --- a/VNFs/UDP_Replay/parse_obj_list.h +++ /dev/null @@ -1,95 +0,0 @@ -/* -// Copyright (c) 2016-2017 Intel Corporation -// -// 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. -*/ - -/* - * Copyright (c) 2009, Olivier MATZ <zer0@droids-corp.org> - * All rights reserved. - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * * Neither the name of the University of California, Berkeley nor the - * names of its contributors may be used to endorse or promote products - * derived from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE REGENTS AND CONTRIBUTORS BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#ifndef _PARSE_OBJ_LIST_H_ -#define _PARSE_OBJ_LIST_H_ - -/* This file is an example of extension of libcmdline. It provides an - * example of objects stored in a list. */ - -#include <sys/queue.h> -#include <cmdline_parse.h> - -#define OBJ_NAME_LEN_MAX 64 - -struct object { - SLIST_ENTRY(object) next; - char name[OBJ_NAME_LEN_MAX]; - cmdline_ipaddr_t ip; -}; - -/* define struct object_list */ -SLIST_HEAD(object_list, object); - -/* data is a pointer to a list */ -struct token_obj_list_data { - struct object_list *list; -}; - -struct token_obj_list { - struct cmdline_token_hdr hdr; - struct token_obj_list_data obj_list_data; -}; -typedef struct token_obj_list parse_token_obj_list_t; - -extern struct cmdline_token_ops token_obj_list_ops; - -int parse_obj_list(cmdline_parse_token_hdr_t *tk, const char *srcbuf, void *res, - unsigned ressize); -int complete_get_nb_obj_list(cmdline_parse_token_hdr_t *tk); -int complete_get_elt_obj_list(cmdline_parse_token_hdr_t *tk, int idx, - char *dstbuf, unsigned int size); -int get_help_obj_list(cmdline_parse_token_hdr_t *tk, char *dstbuf, unsigned int size); - -#define TOKEN_OBJ_LIST_INITIALIZER(structure, field, obj_list_ptr) \ -{ \ - .hdr = { \ - .ops = &token_obj_list_ops, \ - .offset = offsetof(structure, field), \ - }, \ - .obj_list_data = { \ - .list = obj_list_ptr, \ - }, \ -} - -#endif /* _PARSE_OBJ_LIST_H_ */ |