diff --git a/Platform/user/configm/config-server/netconfig/ipconfig/ipconfig.c b/Platform/user/configm/config-server/netconfig/ipconfig/ipconfig.c index 61d0c08f6..b717884a8 100644 --- a/Platform/user/configm/config-server/netconfig/ipconfig/ipconfig.c +++ b/Platform/user/configm/config-server/netconfig/ipconfig/ipconfig.c @@ -144,7 +144,8 @@ ret_code ip_config_json_parse(pointer input, uint *conf_type, ip_config_t *confi goto exit; } - s2j_struct_get_string_element(ip_config, json_obj, ifname, INTERFACE_NAMSIZ); + s2j_struct_get_string_element(ip_config, json_obj, ifname, INTERFACE_NAMSIZ); + strncpy(config_buff->ifname, ip_config->ifname, INTERFACE_NAMSIZ - 1); if(ip_config->config_type == CM_CONFIG_GET) { goto exit; @@ -153,9 +154,7 @@ ret_code ip_config_json_parse(pointer input, uint *conf_type, ip_config_t *confi s2j_struct_get_basic_element(ip_config, json_obj, int, family); s2j_struct_get_string_element(ip_config, json_obj, ipaddr, DOT_IPV6_STR); s2j_struct_get_string_element(ip_config, json_obj, prefixlen, DOT_IPV6_STR); - - strncpy(config_buff->ifname, ip_config->ifname, INTERFACE_NAMSIZ - 1); - + config_buff->family = (uchar)ip_config->family; if(config_buff->family == AF_INET)