netdev
[Top] [All Lists]

Re: raw sockets, IP_HDRINCL, and fragmentation

To: Chris Friesen <cfriesen@xxxxxxxxxxxxxxxxxx>
Subject: Re: raw sockets, IP_HDRINCL, and fragmentation
From: "Petr Vandrovec" <VANDROVE@xxxxxxxxxx>
Date: Thu, 7 Mar 2002 22:28:25 +0100
Cc: netdev@xxxxxxxxxxx
Organization: CC CTU Prague
Sender: owner-netdev@xxxxxxxxxxx
On  7 Mar 02 at 15:56, Chris Friesen wrote:
> 
> > > "When  the IP_HDRINCL option is set datagrams will not be fragmented and 
> > > are
> > > limited to the interface MTU.  This is a limitation in Linux 2.2."
> > >
> > > Does 2.4 have this same limitation?
> > 
> > It has.
> 
> Is this a technical difficulty, or just an API issue?  ie, how hard would it 
> be
> to hack it to add fragmentation?  I'm guessing I should be looking at
> ip_output.c, somewhere in the vicinity of ip_build_xmit()?

If you included header, what you would do with fragmentation? Duplicate
provided header to each fragment? Should it look at provided data
and inspect frag_off field to check that you set zero offset and that
you did not set DF or MF? If you want fragmentation, you can set ttl/tos
with IP_TOS, IP_TTL, and I cannot imagine other field you want change.

BTW, should not we clear frag_off if we play with other fields in
raw_getrawfrag()? Tot_len is set by raw_getrawfrag anyway, so you 
cannot reasonably set offset and MF in frag_off and expect target 
do do something meaningful.
                                                Best regards,
                                                    Petr Vandrovec
                                                    vandrove@xxxxxxxxxx
                                                                                
                            

<Prev in Thread] Current Thread [Next in Thread>