Sending an IP packet

Rami Rosen roszenrami at gmail.com
Fri Feb 22 08:47:46 EST 2013


Hi, Adel,

You should use
ip_route_output_flow().
For this you should construct a
 flowi4 instance.
ip_route_output_flow() is exported via EXPORT_SYMBOL_GPL.

See for example how this is done in udp_sendmsg().

Good luck!

Rami Rosen
http://ramirose.wix.com/ramirosen

On Fri, Feb 22, 2013 at 2:36 PM, Adel Qodmani <mpcadel at gmail.com> wrote:
> Hey,
>
> My question is quite simple, I have an sk_buff that I want to transmit, the
> sk_buff is an ICMP message and so far, I've built the headers and set up
> everything.
>
> The problem is, when I want to do such a thing, I typically use a function
> called:
> dev_queue_xmit which takes the skb and transmits the packet using the
> net_device specified in the skb; but time time I can't set the net_device, I
> need the packet to go through the routing code and get it sent normally; so
> what function can I use to that?
>
> Some notes:
> *The kernel I am working on is 3.2.0-37
> *I am working using Modules, so symbols that are not exported are
> unreachable for me
> *I set the IP header using htons, so my header data is already in network
> byte-order.
>
> Regards,
> Adel
>
> _______________________________________________
> Kernelnewbies mailing list
> Kernelnewbies at kernelnewbies.org
> http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
>



More information about the Kernelnewbies mailing list