This is the mail archive of the ecos-discuss@sources.redhat.com mailing list for the eCos project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: IPV6 Testing


On Wed, Aug 25, 2004 at 10:51:06AM -0700, bhanuprakash kandimalla wrote:
>  
> --- Andrew Lunn <andrew@lunn.ch> wrote:
> 
> > On Tue, Aug 24, 2004 at 07:07:44PM -0700,
> > bhanuprakash kandimalla wrote:
> > > Hello ECOS World:
> > > I am testing ecos for i386pc(with net template). I
> > am
> > > using the test case as mentioned in the ecos
> > document.
> > > When I called the (ping_test.c file) net_test()
> > > function ( I commented the ipv4 part) I am always
> > > getting the following message: "No Router
> > > advertisement received"
> > > Which means that cyg_net_get_ipv6_advrouter() is
> > > returning 0. Can someone suggest me what this
> > > net_test() will test for IPV6. My intention is to
> > > ping6 another IPV6 host. The ping from another
> > ipv6
> > > host to the target is working just fine.
> > 
> > By default, eCos expects an IPv6 router advertisent
> > server, such as
> > radvd, on the network. This allows the IPv6 host to
> > make its own IP
> > address from the network portion advertised in the
> > rputer advert and
> > the MAC address for the lower part of the IP
> > address.
> > 
> > Either starically configure the IPv6 addresses or
> > start a radvd
> > daemon.
> Statically...can this be done in the config tool? In
> the config tool, I already selected
> BasicNetworkingFramework-->INET support-->IPv6
> Support. I disabled the option "Options controlling
> IPv6 routing.
> I am using all static IPv4 and Ipv6 addresses. Ping4
> works fine.
> For ping6, I provide the IPV6 address as following:
> void ping6_start(void)
> {
> 	struct sockaddr_in6 ipv6router;
> 	struct in6_addr in6addr={{{0xfe,0x80, 0, 0, 0, 0, 0,
> 0, 0x2, 0x1, 0x02, 0xff,0xfe, 0x37, 0x2e, 0xa0}}};
> 	
> 	
> 	ipv6router.sin6_len=sizeof(ipv6router);
> 	ipv6router.sin6_family=AF_INET6;
> 	ipv6router.sin6_port=0;
> 	ipv6router.sin6_addr=in6addr;
> 	
>     ping6_test(&ipv6router);
> }
> 
> Am i missing anything here? I am getting the following
> message:
> "PING6 server fe80::201:2ff:fe37:2ea0
> sendto: No route to host". This message will be
> repeated 16 times. 

So you don't have a valid route. 

> This is failing in the get_socket().
> if (!sock->conn) {
>     LWIP_DEBUGF(SOCKETS_DEBUG, ("get_socket(%d): not
> active\n", s));
>     set_errno(EBADF);
> 	diag_printf("\nget_socket : sock=Null\n");
>     return NULL;
>   }
> This is always returning NULL.
> Can someone suggest what I am doing wrong here or how
> to fix this. My intention is just to ping6 from my
> ecos target to another ipv6 host machine connected to
> the target.

Add a call to show_network_tables(). That will print out all the
addresses the interfaces have and the routing table.

        Andrew

-- 
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]