2005-03-07 23:57:29

by Josef E. Galea

[permalink] [raw]
Subject: Sending IP datagrams

Hi,

Is there any way, other than socket buffers, to send IP datagrams from a
kernel module? If yes, can you please point me to some good tutorial or
sample code

Thanks
Josef Galea


2005-03-08 00:51:52

by Scott Feldman

[permalink] [raw]
Subject: Re: Sending IP datagrams


On Mar 7, 2005, at 3:48 PM, Josef E. Galea wrote:

> Hi,
>
> Is there any way, other than socket buffers, to send IP datagrams from
> a kernel module? If yes, can you please point me to some good tutorial
> or sample code

See net/core/pktgen.c for an example.

-scott

2005-03-08 00:58:15

by Josef E. Galea

[permalink] [raw]
Subject: Re: Sending IP datagrams

Scott Feldman wrote:

>
> On Mar 7, 2005, at 3:48 PM, Josef E. Galea wrote:
>
>> Hi,
>>
>> Is there any way, other than socket buffers, to send IP datagrams
>> from a kernel module? If yes, can you please point me to some good
>> tutorial or sample code
>
>
> See net/core/pktgen.c for an example.
>
> -scott
>
AFAIK that module uses socket buffers (struct sk_buff) to send the
packets. I was asking whether there was another way to send the IP
datagrams.

Thanks for your reply :)

Josef

2005-03-08 01:17:13

by Scott Feldman

[permalink] [raw]
Subject: Re: Sending IP datagrams


On Mar 7, 2005, at 4:53 PM, Josef E. Galea wrote:

> AFAIK that module uses socket buffers (struct sk_buff) to send the
> packets. I was asking whether there was another way to send the IP
> datagrams.

Well the network device driver wants a sk_buff (hard_start_xmit) so
you'd need to modify the network device driver to accept something else
if you don't want to use sk_buffs. What's wrong with sk_buffs for your
problem?

-scott

2005-03-08 01:31:43

by Ben Greear

[permalink] [raw]
Subject: Re: Sending IP datagrams

Josef E. Galea wrote:
> Scott Feldman wrote:
>
>>
>> On Mar 7, 2005, at 3:48 PM, Josef E. Galea wrote:
>>
>>> Hi,
>>>
>>> Is there any way, other than socket buffers, to send IP datagrams
>>> from a kernel module? If yes, can you please point me to some good
>>> tutorial or sample code
>>
>>
>>
>> See net/core/pktgen.c for an example.
>>
>> -scott
>>
> AFAIK that module uses socket buffers (struct sk_buff) to send the
> packets. I was asking whether there was another way to send the IP
> datagrams.

The sk_buf is the thing you send to network drivers, it doesn't get
any more basic unless you are hacking a particular driver and DMA'ing memory
or something like that...

Maybe you should explain what you are really trying to do?

Ben

--
Ben Greear <[email protected]>
Candela Technologies Inc http://www.candelatech.com