#include "vxWorks.h" #include "ioLib.h" #include "logLib.h" #include "memLib.h" #include "socket.h" #include "sockLib.h" #include "stdio.h" #include "stdlib.h" #include "string.h" #include "if6Lib.h" #include "ipcom_sock2.h" void if6Lib_test(char *dev) { char addr[46],dstaddr[46]; int prefix=0,flags=0,total_count=0,failed_count=0; Ip_time_t vltime,pltime; memset(dstaddr,'\0',sizeof(char)*46); memset(addr,'\0',sizeof(char)*46); if(dev == NULL || *dev == '\0') return; if6LibInit(); printf("Beginning if6Lib tests... \n"); total_count++; if(if6AddrGet(dev,addr)!=OK) { failed_count++; printf("if6AddrGet failed for device %s \n",dev); } else printf("if6AddrGet:%s \n",addr); /* total_count++; if(if6DstAddrGet(dev,addr,dstaddr)!=OK) { failed_count++; printf("if6DstAddrGet failed for device %s \n",dev); } else printf("if6DstAddrGet:%s \n",dstaddr); */ total_count++; if(if6PrefixlenGet(dev,addr,&prefix)!=OK) { failed_count++; printf("if6Prefixlen failed for device %s \n",dev); } else printf("if6Prefixlen:%d \n",prefix); total_count++; if(if6FlagGet(dev,addr,&flags)!=OK) { failed_count++; printf("if6FlagGet failed for device %s \n",dev); } else printf("if6FlagGet:%d \n",flags); total_count++; if(if6LifetimeGet(dev,addr,&vltime,&pltime)!=OK) { failed_count++; printf("if6LifetimeGet failed for device %s \n",dev); } else printf("if6LifetimeGet: valid:%x pref:%x \n",vltime,pltime); total_count++; if(if6AddrDelete(dev,addr)!=OK) { failed_count++; printf("if6AddrDelete failed for device %s address %s\n",dev,addr); } else printf("if6Delete: OK dev:%s addr:%s \n",dev,addr); total_count++; if(if6AddrAdd(dev,addr,prefix,flags)!=OK) { failed_count++; printf("if6AddrAdd failed for device %s address %s\n",dev,addr); } else printf("if6AddrAdd: OK dev:%s addr:%s \n",dev,addr); total_count++; if(if6PrefixlenSet(dev,addr,72)!=OK) { failed_count++; printf("if6PrefixlenSet failed for device %s address %s\n len:72",dev,addr); } else printf("if6PrefixlenSet: OK dev:%s addr:%s len:72 \n",dev,addr); total_count++; if(if6FlagSet(dev,addr,IP_IN6_IFF_ANYCAST)!=OK) { failed_count++; printf("if6FlagSet failed for device %s address %s\n flag:0x40",dev,addr); } else printf("if6PrefixlenSet: OK dev:%s addr:%s flag:0x40 \n",dev,addr); total_count++; if(if6FlagChange(dev,addr,IP_IN6_IFF_ANYCAST,0)!=OK) { failed_count++; printf("if6FlagChange to OFF failed for device %s address %s\n flag:0x40",dev,addr); } else printf("if6PrefixlenSet: OK. dev:%s addr:%s flag:0x40:OFF \n",dev,addr); ifconfig(dev); total_count++; if(if6LifetimeSet(dev,addr,20,30)!=OK) { failed_count++; printf("if6Lifetimeset failed for device %s address %s vltime 20s %pltime 30s \n",dev,addr); } else printf("if6Lifetimeset: OK. dev %s address %s vltime 20s %pltime 30s \n",dev,addr); ifconfig(dev); printf(" Total tests: %d \n",total_count); printf(" Failed tests: %d \n",failed_count); printf(" Passed tests: %d \n",total_count-failed_count); }