Hi.

  I've sent these patches to fix an ipset bug some time ago but didn't get
any feedback. Could you please let me know if something is wrong with the
patch or format I've used to send it so I could fix that.

Thanks!


2013/10/31 Nikolay Martynov <mar.ko...@gmail.com>

> Fixes #14325
>
> Signed-off-by: Nikolay Martynov <mar.ko...@gmail.com>
> ---
>  .../utils/ipset/patches/001-timeout-size.patch     | 28
> ++++++++++++++++++++++
>  1 file changed, 28 insertions(+)
>  create mode 100644
> package/network/utils/ipset/patches/001-timeout-size.patch
>
> diff --git a/package/network/utils/ipset/patches/001-timeout-size.patch
> b/package/network/utils/ipset/patches/001-timeout-size.patch
> new file mode 100644
> index 0000000..b9ff4e2
> --- /dev/null
> +++ b/package/network/utils/ipset/patches/001-timeout-size.patch
> @@ -0,0 +1,28 @@
> +diff --git a/lib/parse.c b/lib/parse.c
> +index 8ea8542..440ef8f 100644
> +--- a/lib/parse.c
> ++++ b/lib/parse.c
> +@@ -1292,15 +1292,20 @@ ipset_parse_timeout(struct ipset_session *session,
> +                   enum ipset_opt opt, const char *str)
> + {
> +       int err;
> +-      unsigned long long num = 0;
> ++      unsigned long long llnum = 0;
> ++      uint32_t num = 0;
> +
> +       assert(session);
> +       assert(opt == IPSET_OPT_TIMEOUT);
> +       assert(str);
> +
> +-      err = string_to_number_ll(session, str, 0, UINT_MAX/1000, &num);
> +-      if (err == 0)
> ++      err = string_to_number_ll(session, str, 0, UINT_MAX/1000, &llnum);
> ++      if (err == 0) {
> ++              /* Timeout is expected to be 32bits wide, so we have
> ++                 to convert it here */
> ++              num = llnum;
> +               return ipset_session_data_set(session, opt, &num);
> ++      }
> +
> +       return err;
> + }
> --
> Thanks.
> Nikolay.
>
>


-- 
Martynov Nikolay.
Email: mar.ko...@gmail.com
_______________________________________________
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel

Reply via email to