summaryrefslogtreecommitdiffstats
path: root/stacks/lwip_stack/lwip_src/include/ip_module/config_common.h
blob: 3323bd1816796826a6eeb4d3f4297cad6633930c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
/*
*
* Copyright (c) 2018 Huawei Technologies Co.,Ltd.
* 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 _NSTACK_CONFIG_COMMON_H_
#define _NSTACK_CONFIG_COMMON_H_

#include "ip_module_api.h"

#define MAX_IP_MODULE_BUFF_SIZE 1024*1024

/* ip module config types */
#define IP_MODULE_TYPE_IP           "ip"
#define IP_MODULE_TYPE_NETWORK      "network"
#define IP_MODULE_TYPE_PORT         "port"
#define IP_MODULE_TYPE_SETLOG       "setlog"
#define IP_MODULE_TYPE_SNAPSHOT "snapshot"
#define IP_MODULE_TYPE_SETTRACE  "settrace"

#define TCP_MODULE_TYPE_SET_OOS_LEN     "ooslen"

#define IP_MODULE_NAME                 "./nStackCtrl: "
#define IP_MODULE_INVALID_ARGUMENT_S "invalid argument -- \"%s\"\n"
#define IP_MODULE_MORE_OPTION  "need more options -- "
#define IP_MODULE_LESS_OPTION     "no need option -- "

/* Error codes */
#define IP_MODULE_OK             0
#define IP_MODULE_DATA_ERROR     1
#define IP_MODULE_DATA_NOT_EXIST 2

struct config_param
{
    int action;
    char type[IP_MODULE_LENGTH_256];
    char name[IP_MODULE_LENGTH_256];
    char value[IP_MODULE_LENGTH_64];
    char container_id[IP_MODULE_LENGTH_256];
    int error;

    char error_desc[NSCRTL_ERRBUF_LEN];

    u64 traceid;
};

struct config_data
{
    struct config_param param;
    char json_buff[MAX_IP_MODULE_BUFF_SIZE - sizeof(struct config_param)];
};

#endif