2007-06-07 12:50:20

by kernel coder

[permalink] [raw]
Subject: tcp/ip stack question

hi,
I am recieveing the packet on eth1 and want to send it through eth2.

I've written code in netif_recieve_skb function .This code changes the
mac header in sk_buff structure so that it can be send through other
interface card.But when i call ip_dev_find fucntion to get the second
interface structure ,NULL is returned.I checked the ip of second
ethernet card and it was similar to one passed to ip_dev_find
fucntion,then why NULL is being returned?


Actually if i get the correct dev structure from ip_dev_find fucntion
then i'll assign that dev structure to current skbuff->dev and call
dev_queue_xmit fucntion,so that it transmitted through second
interface card.Is mine approach correct?


shahzad


2007-06-07 19:01:59

by Lee Revell

[permalink] [raw]
Subject: Re: tcp/ip stack question

On 6/7/07, kernel coder <[email protected]> wrote:
> hi,
> I am recieveing the packet on eth1 and want to send it through eth2.
>
> I've written code in netif_recieve_skb function .This code changes the
> mac header in sk_buff structure so that it can be send through other
> interface card.But when i call ip_dev_find fucntion to get the second
> interface structure ,NULL is returned.I checked the ip of second
> ethernet card and it was similar to one passed to ip_dev_find
> fucntion,then why NULL is being returned?
>

Um... why would you need to modify kernel code to do this? Try "man route".

Lee