* Konrad <[EMAIL PROTECTED]> [2008-03-06 21:13]:
> so now I changed the tagging from tcp_output to ip_output.
yes, that is much better I think.
> I also put an pf_tag_unref to so_free and sosetopt (in case that there
> is allready a tag set).
great!
> I couldn't see a reason for a pf_tag_unref in the so_accept because
> the socket could be reused.
don't we need an additional ref (aka tagname2tag or the like), not unref,
since the socket gets cloned?
> So and finally with an cvs diff on current:
few style notes inside
> + if(so->so_pftag != 0)
> + {
> + pf_tag_unref(so->so_pftag);
> + }
no braces in that case, just
+ if(so->so_pftag != 0)
+ pf_tag_unref(so->so_pftag);
> + so->so_pftag = pf_tagname2tag(mtod(m, char *));
> + if(so->so_pftag == 0)
> + {
> + error = EINVAL; /*XXX*/
why XXX?
> Index: netinet/tcp_output.c
> ===================================================================
> RCS file: /cvs/src/sys/netinet/tcp_output.c,v
> retrieving revision 1.81
> diff -u -p -r1.81 tcp_output.c
> --- netinet/tcp_output.c 24 Nov 2007 12:59:28 -0000 1.81
> +++ netinet/tcp_output.c 6 Mar 2008 19:40:48 -0000
> @@ -761,6 +761,7 @@ send:
> error = ENOBUFS;
> goto out;
> }
> +
> m->m_data += max_linkhdr;
> m->m_len = hdrlen;
> }
the above chunk seems to be an accident
nice work! but it'll need soem deeper inspection before we're confident
:)
--
Henning Brauer, [EMAIL PROTECTED], [EMAIL PROTECTED]
BS Web Services, http://bsws.de
Full-Service ISP - Secure Hosting, Mail and DNS Services
Dedicated Servers, Rootservers, Application Hosting - Hamburg & Amsterdam