浏览代码

[snmp patch]fix

balbekova 5 年之前
父节点
当前提交
e969687e26
共有 1 个文件被更改,包括 15 次插入6 次删除
  1. 15 6
      patches/snmp_mib2_system_patch.diff

+ 15 - 6
patches/snmp_mib2_system_patch.diff

@@ -1,5 +1,5 @@
 diff --git a/thirdparty/lwip/src/apps/snmp/snmp_mib2_system.c b/thirdparty/lwip/src/apps/snmp/snmp_mib2_system.c
-index 4aa2926..0ff8c76 100755
+index 4aa2926..89f5d92 100755
 --- a/thirdparty/lwip/src/apps/snmp/snmp_mib2_system.c
 +++ b/thirdparty/lwip/src/apps/snmp/snmp_mib2_system.c
 @@ -43,6 +43,10 @@
@@ -13,15 +13,17 @@ index 4aa2926..0ff8c76 100755
  #if LWIP_SNMP && SNMP_LWIP_MIB2
  
  #if SNMP_USE_NETCONN
-@@ -284,6 +288,7 @@ system_set_test(const struct snmp_scalar_array_node_def *node, u16_t len, void *
+@@ -284,6 +288,9 @@ system_set_test(const struct snmp_scalar_array_node_def *node, u16_t len, void *
    snmp_err_t ret = SNMP_ERR_WRONGVALUE;
    const u16_t* var_bufsize  = NULL;
    const u16_t* var_wr_len;
++#ifdef SNMP_SYS_PARAM_FILENAME
 +  bool check_flag = true;
++#endif
  
    LWIP_UNUSED_ARG(value);
  
-@@ -307,13 +312,16 @@ system_set_test(const struct snmp_scalar_array_node_def *node, u16_t len, void *
+@@ -307,13 +314,24 @@ system_set_test(const struct snmp_scalar_array_node_def *node, u16_t len, void *
  
    /* check if value is writable at all */
    if (*var_bufsize > 0) {
@@ -31,16 +33,23 @@ index 4aa2926..0ff8c76 100755
      if (var_wr_len == NULL) {
        /* we have to take the terminating 0 into account */
 -      if (len < *var_bufsize) {
-+      if (len < *var_bufsize && check_flag) {
++#ifdef SNMP_SYS_PARAM_CHECK
++      if (len <= *var_bufsize && check_flag) {
++#else
++      if (len <= *var_bufsize) {
++#endif
          ret = SNMP_ERR_NOERROR;
        }
      } else {
--      if (len <= *var_bufsize) {
++#ifdef SNMP_SYS_PARAM_CHECK
 +      if (len <= *var_bufsize && check_flag) {
++#else
+       if (len <= *var_bufsize) {
++#endif
          ret = SNMP_ERR_NOERROR;
        }
      }
-@@ -358,6 +366,9 @@ system_set_value(const struct snmp_scalar_array_node_def *node, u16_t len, void
+@@ -358,6 +376,9 @@ system_set_value(const struct snmp_scalar_array_node_def *node, u16_t len, void
    } else {
      *var_wr_len = len;
    }