1
0
This repository has been archived on 2024-07-22. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
ZyXEL_PMG5617GA/package/public-zyxel/libzcfg_fe_tr98/patches/260-ENHANCE_AutoSecureDefaultIface.patch
2022-11-27 10:16:14 +00:00

97 lines
5.0 KiB
Diff

Index: libzcfg_fe_tr98-1.0/l3fwd.c
===================================================================
--- libzcfg_fe_tr98-1.0.orig/l3fwd.c 2015-11-26 17:37:25.899726104 +0800
+++ libzcfg_fe_tr98-1.0/l3fwd.c 2015-11-26 17:35:24.153014800 +0800
@@ -58,11 +58,53 @@
*tr98Jobj = json_object_new_object();
json_object_object_add(*tr98Jobj, "DefaultConnectionService", json_object_new_string(tr98ObjName));
json_object_object_add(*tr98Jobj, "ForwardNumberOfEntries", json_object_new_int(routerObj->IPv4ForwardingNumberOfEntries));
+ json_object_object_add(*tr98Jobj, "X_ZYXEL_AutoSecureDefaultIface", json_object_new_boolean(routerObj->X_ZYXEL_AutoSecureDefaultIface));
zcfgFeObjStructFree(routerObj);
return ZCFG_SUCCESS;
}
+
+/*
+ * TR98 Object Name : InternetGatewayDevice.Layer3Forwarding
+ *
+ * Related object in TR181:
+ * Device.Routing.Router.1
+ */
+zcfgRet_t l3fwdObjSet(char *tr98FullPathName, int handler, struct json_object *tr98Jobj, struct json_object *multiJobj, char *paramfault)
+{
+ zcfgRet_t ret = ZCFG_SUCCESS;
+ objIndex_t objIid;
+ char defaultIfaceName[MAX_TR181_PATHNAME] = {0};
+ struct json_object *routerObj = NULL, *paramValue = NULL;
+
+ printf("%s\n", __FUNCTION__);
+
+ /*mapping InternetGatewayDevice.Layer3Forwarding to Device.Routing.Router.1*/
+ IID_INIT(objIid);
+ objIid.level = 1;
+ objIid.idx[0] = 1;
+ if(zcfgFeObjJsonGet(RDM_OID_ROUTING_ROUTER, &objIid, (void **)&routerObj) != ZCFG_SUCCESS ) {
+ printf("%s : Get Routing.Router.1 Fail\n", __FUNCTION__);
+ return ZCFG_INTERNAL_ERROR;
+ }
+
+ if(paramValue = json_object_object_get(tr98Jobj, "X_ZYXEL_AutoSecureDefaultIface"))
+ json_object_object_add(routerObj, "X_ZYXEL_AutoSecureDefaultIface", JSON_OBJ_COPY(paramValue));
+
+ if(multiJobj) {
+ zcfgFeJsonMultiObjAppend(RDM_OID_ROUTING_ROUTER, &objIid, multiJobj, routerObj);
+ }
+ else {
+ if((ret = zcfgFeObjJsonSet(RDM_OID_ROUTING_ROUTER, &objIid, routerObj, NULL)) != ZCFG_SUCCESS ) {
+ json_object_put(routerObj);
+ return ret;
+ }
+ }
+ json_object_put(routerObj);
+
+ return ZCFG_SUCCESS;
+}
#define MAX_IFACE_LENGTH (256+1)
/*
Index: libzcfg_fe_tr98-1.0/l3fwd.h
===================================================================
--- libzcfg_fe_tr98-1.0.orig/l3fwd.h 2015-11-26 17:37:25.551726093 +0800
+++ libzcfg_fe_tr98-1.0/l3fwd.h 2015-11-26 17:35:30.430094200 +0800
@@ -4,7 +4,7 @@
/*Handler Function*/
extern zcfgRet_t l3fwdObjGet(char *, int, struct json_object **, bool);
-
+extern zcfgRet_t l3fwdObjSet(char *tr98FullPathName, int handler, struct json_object *tr98Jobj, struct json_object *multiJobj, char *paramfault);
extern zcfgRet_t l3fwdFwdTbObjGet(char *, int, struct json_object **, bool);
extern zcfgRet_t l3fwdFwdTbObjSet(char *, int, struct json_object *, struct json_object *);
Index: libzcfg_fe_tr98-1.0/l3fwd_parameter.h
===================================================================
--- libzcfg_fe_tr98-1.0.orig/l3fwd_parameter.h 2015-11-26 17:37:25.555726093 +0800
+++ libzcfg_fe_tr98-1.0/l3fwd_parameter.h 2015-11-26 17:35:35.861789800 +0800
@@ -1,6 +1,7 @@
tr98Parameter_t para_L3Fwd[] = {
{ "DefaultConnectionService", PARAMETER_ATTR_WRITE, 257, json_type_string},
{ "ForwardNumberOfEntries", PARAMETER_ATTR_READONLY, 0, json_type_uint32},
+ { "X_ZYXEL_AutoSecureDefaultIface", PARAMETER_ATTR_WRITE, 0, json_type_boolean},
{ NULL, 0, 0, 0}
};
Index: libzcfg_fe_tr98-1.0/zcfg_fe_tr98_handle.h
===================================================================
--- libzcfg_fe_tr98-1.0.orig/zcfg_fe_tr98_handle.h 2015-11-26 17:37:28.399726182 +0800
+++ libzcfg_fe_tr98-1.0/zcfg_fe_tr98_handle.h 2015-11-26 17:35:48.248951600 +0800
@@ -292,7 +292,7 @@
{TR98_TIME, 0, para_Time, timeObjGet, timeObjSet, NULL, NULL, NULL},
//{TR98_USR_INTF, 0, NULL, NULL, NULL, NULL, NULL, NULL},
//{TR98_CAPT_PORTAL, 0, NULL, NULL, NULL, NULL, NULL, NULL},
-{TR98_L3_FWD, 0, para_L3Fwd, l3fwdObjGet, NULL, NULL, NULL, NULL, NULL, NULL},
+{TR98_L3_FWD, 0, para_L3Fwd, l3fwdObjGet, l3fwdObjSet, NULL, NULL, NULL, NULL, NULL},
{TR98_FWD, ATTR_INDEX_CREA,para_Fwd, l3fwdFwdTbObjGet, l3fwdFwdTbObjSet, l3fwdFwdTbObjAdd, l3fwdFwdTbObjDel, NULL, NULL, l3fwdFwdTbObjAttrSet},
{TR98_L2_BR, 0, para_L2Br, l2BridingObjGet, NULL, NULL, NULL, l2BridingObjNotify, l2BridingObjAttrGet, l2BridingObjAttrSet},
{TR98_BR, ATTR_INDEX_CREA, para_Br, l2BrObjGet, l2BrObjSet, l2BrObjAdd, l2BrObjDel, l2BrObjNotify, l2BrObjAttrGet, l2BrObjAttrSet},