netfilter-devel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* TCP proto info
@ 2010-09-01 13:45 rui.sousa
  2010-09-02  8:57 ` Pablo Neira Ayuso
  0 siblings, 1 reply; 5+ messages in thread
From: rui.sousa @ 2010-09-01 13:45 UTC (permalink / raw)
  To: pablo; +Cc: netfilter-devel

Hi,

I have an application using libnetfilter_conntrack-0.100 that started 
reporting errors after the commit: 

1c450e1595afdc8d1bfabb4f640c9251808426eb.

I've checked that the error happens because the kernel sees an empty 
CTA_PROTOINFO attribute when parsing a conntrack update.
In the case of my application I was just trying to update the timeout of a 
TCP conntrack and so I didn't specify any of the TCP protoinfo attributes. 
With the previous library version no CTA_PROTOINFO attribute was set in 
the conntrack and no error was seen (this is valid from the point of view 
of the kernel). Now, an error is reported and the netlink command ignored.
What do you think would be the right fix? Should the commit be reverted? 
Or is the application obliged to specify attributes which it doesn't want 
to modify (and introduce possible race conditions since it's usually a 
read/write/modify)?

Br,
Rui


^ permalink raw reply	[flat|nested] 5+ messages in thread
* Re: TCP proto info
@ 2010-09-06 16:10 rui.sousa
  0 siblings, 0 replies; 5+ messages in thread
From: rui.sousa @ 2010-09-06 16:10 UTC (permalink / raw)
  To: Pablo Neira Ayuso; +Cc: netfilter-devel


-----Pablo Neira Ayuso <pablo@netfilter.org> wrote: -----

>On 02/09/10 11:21, rui.sousa@mindspeed.com wrote:
>> Pablo Neira Ayuso  wrote on 09/02/2010
>10:57:39 AM:
>>
>>> Hi Rui,
>>
>> Hi Pablo,
>>
>>> On 01/09/10 15:45, rui.sousa@mindspeed.com wrote:
>>>> Hi,
>>>>
>>>> I have an application using libnetfilter_conntrack-0.100 that
>started
>>>> reporting errors after the commit:
>>>>
>>>> 1c450e1595afdc8d1bfabb4f640c9251808426eb.
>>>
>>> Looking at the source code, this seems to be already fixed in
>>> libnetfilter_conntrack 0.0.102, please upgrade to latest.
>>
>> Hmm... looking at the git tree I see that the __build_conntrack()
>code is
>> still calling __build_protoinfo() unconditionally and inside the
>function
>> we always do:
>>
>> nest = nfnl_nest(&req->nlh, size, CTA_PROTOINFO);
>> nest_proto = nfnl_nest(&req->nlh, size, CTA_PROTOINFO_TCP);
>> ...
>> nfnl_nest_end(&req->nlh, nest_proto);
>> nfnl_nest_end(&req->nlh, nest);
>>
>> even if none of the ATTR_TCP_xxx bits are set. This is what causes
>the
>> kernel to return -EINVAL
>> and ignore the conntrack update. Or am I missing something?
>
>I see, I guess that you're using a Linux kernel <= 2.6.25

Correct. It's an ARM based embedded linux system still running 2.6.21.

> since I
>couldn't reproduce it with recent kernels. Please, could you give a
>try
>to the following patch?

This patch fixed my problem.

Thanks,
Rui

--
To unsubscribe from this list: send the line "unsubscribe netfilter-devel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2010-09-06 16:12 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-09-01 13:45 TCP proto info rui.sousa
2010-09-02  8:57 ` Pablo Neira Ayuso
2010-09-02  9:21   ` rui.sousa
2010-09-03 11:33     ` Pablo Neira Ayuso
  -- strict thread matches above, loose matches on Subject: below --
2010-09-06 16:10 rui.sousa

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).