Re: sk_buff

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello Evgeniy Polyakov

First thank you very much for your help.

But unfortunately this does not help.

The goal of my program is to set a new Address for my own interface. For this 
i will call the ndisc_rcv function with an own created sk_buff. 
I think I don't need an ethernet header for this.

My problem is the ICMPv6 header.
After calling the function ndisc_rcv I get the message "the code is not zero" 
or somethink else. I think the ICMPv6 header is not on the right place in the 
sk_buff.
The ndisc_rcv function read the icmp header with
	struct ra_msg *ra_msg = (struct ra_msg *) skb->h.raw

and i write the icmp header in my module with
	struct ra_msg *msg;
	msg = skb_put (skb , msg_len);

Ok I do not realy understand the sk_buff mechanism with tail, headroom and so 
on, but in the other functions like ndisc_send_na it is similar to my program.

Or do you have another idea to set a new interface address in the same way as 
the router advertisement.


Regards Jörg
 


On Wednesday 30 January 2002  4:51 am, Evgeniy Polyakov wrote:
> > It looks like you forgot
> > 	skb_reserve(skb, 16); //14 = size of an ethernet header + 2 to
> > 	align and
>
> eth = (__u8 *) skb_push(skb, 14);
>
> And of cource fill ethernet header fields somewhere before
> hard_start_xmit() with apropriate values.
>
> If you work not in ethernet lan, than all will be something like this.
>
> But you also can simple use ndisc_build_ll_hdr() or look into the
> net/ipv6/ndisc.c file, where function ndisc_send_na() does exactly what
> you want.
>
> Good luck.
>
>
> 	Evgeniy Polyakov ( s0mbre ).
> -
> : send the line "unsubscribe linux-net" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html

-- 
--------------------------------------------------------
Joerg Eggink
Network Laboratories Heidelberg NEC Europe Ltd.
Adenauerplatz 6 
D-69115 Heidelberg, Germany

email: joerg.eggink@ccrle.nec.de
http://www.ccrle.nec.de
-
: send the line "unsubscribe linux-net" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Netdev]     [Ethernet Bridging]     [Linux 802.1Q VLAN]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Git]     [Bugtraq]     [Yosemite News and Information]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux PCI]     [Linux Admin]     [Samba]

  Powered by Linux