Commit c6ab5b82 authored by Patrick McHardy's avatar Patrick McHardy Committed by Stephen Hemminger

[Fwd: Re: more iproute2 issues (not critical)]

This one also makes sense for the release I guess.

-------- Original Message --------
Subject: 	Re: more iproute2 issues (not critical)
Date: 	Sat, 31 Mar 2007 16:16:56 +0200
From: 	Patrick McHardy <kaber@trash.net>
To: 	Denys <denys@visp.net.lb>
CC: 	Stephen Hemminger <shemminger@linux-foundation.org>,
netdev@vger.kernel.org
References: 	<20070321175951.M73913@visp.net.lb>
<46026717.9060909@trash.net> <20070322124533.M79867@visp.net.lb>
<46027FF2.6020001@trash.net> <20070322101224.3e6bb899@freekitty>
<20070331021401.M17326@visp.net.lb> <20070331023011.M8101@visp.net.lb>

Denys wrote:
> Ooops, sorry, it seems my fault, no library exist on this system.
> But i guess it must not coredump in this case? Is it possible to check if
> library not exist and just print some nice message?
> It is trivial i guess.

The problem is that lib_dir is NULL when calling get_target_names.
This patch fixes it.

[IPROUTE]: m_ipt: fix crash when dumping rules

lib_dir is NULL when calling get_target_name, causing a NULL pointer
dereference in the strlen call.
Signed-off-by: default avatarPatrick McHardy <kaber@trash.net>
parent dcb283c3
...@@ -506,6 +506,10 @@ print_ipt(struct action_util *au,FILE * f, struct rtattr *arg) ...@@ -506,6 +506,10 @@ print_ipt(struct action_util *au,FILE * f, struct rtattr *arg)
if (arg == NULL) if (arg == NULL)
return -1; return -1;
lib_dir = getenv("IPTABLES_LIB_DIR");
if (!lib_dir)
lib_dir = IPT_LIB_DIR;
parse_rtattr_nested(tb, TCA_IPT_MAX, arg); parse_rtattr_nested(tb, TCA_IPT_MAX, arg);
if (tb[TCA_IPT_TABLE] == NULL) { if (tb[TCA_IPT_TABLE] == NULL) {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment