X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;ds=sidebyside;f=app%2Ftest%2Ftest_cmdline_ipaddr.c;h=471d2ff140578adb2720609deeb99e06248370bd;hb=f6c6331591e662ab0d1d7a27be000437de50ac51;hp=4c9eb555fd88ecdfe55aded53e40fdda7f2b70b5;hpb=e9d48c0072d36eb6423b45fba4ec49d0def6c36f;p=dpdk.git diff --git a/app/test/test_cmdline_ipaddr.c b/app/test/test_cmdline_ipaddr.c index 4c9eb555fd..471d2ff140 100644 --- a/app/test/test_cmdline_ipaddr.c +++ b/app/test/test_cmdline_ipaddr.c @@ -1,13 +1,13 @@ /*- * BSD LICENSE - * + * * Copyright(c) 2010-2014 Intel Corporation. All rights reserved. * All rights reserved. - * + * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: - * + * * * Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * * Redistributions in binary form must reproduce the above copyright @@ -17,7 +17,7 @@ * * Neither the name of Intel Corporation nor the names of its * contributors may be used to endorse or promote products derived * from this software without specific prior written permission. - * + * * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR @@ -37,7 +37,11 @@ #include #ifndef __linux__ +#ifndef __FreeBSD__ #include +#else +#include +#endif #endif #include @@ -56,13 +60,17 @@ (((x & 0xFF) << 8) | ((x & 0xFF00) >> 8)) /* create IPv6 address, swapping bytes where needed */ +#ifndef s6_addr16 +# define s6_addr16 __u6_addr.__u6_addr16 +#endif #define IP6(a,b,c,d,e,f,g,h) .ipv6 = \ {.s6_addr16 = \ {U16_SWAP(a),U16_SWAP(b),U16_SWAP(c),U16_SWAP(d),\ U16_SWAP(e),U16_SWAP(f),U16_SWAP(g),U16_SWAP(h)}} /** these are defined in netinet/in.h but not present in linux headers */ -#ifdef __linux__ +#ifndef NIPQUAD + #define NIPQUAD_FMT "%u.%u.%u.%u" #define NIPQUAD(addr) \ (unsigned)((unsigned char *)&addr)[0], \ @@ -88,6 +96,7 @@ (unsigned)((addr).s6_addr[13]), \ (unsigned)((addr).s6_addr[14]), \ (unsigned)((addr).s6_addr[15]) + #endif @@ -416,7 +425,8 @@ test_parse_ipaddr_valid(void) buf, sizeof(buf)); ret = cmdline_parse_ipaddr((cmdline_parse_token_hdr_t*)&token, - ipaddr_valid_strs[i].str, (void*)&result); + ipaddr_valid_strs[i].str, (void*)&result, + sizeof(result)); /* if should have passed, or should have failed */ if ((ret < 0) == @@ -465,7 +475,8 @@ test_parse_ipaddr_valid(void) buf, sizeof(buf)); ret = cmdline_parse_ipaddr((cmdline_parse_token_hdr_t*)&token, - ipaddr_garbage_addr4_strs[i], (void*)&result); + ipaddr_garbage_addr4_strs[i], (void*)&result, + sizeof(result)); /* if should have passed, or should have failed */ if ((ret < 0) == @@ -506,7 +517,8 @@ test_parse_ipaddr_valid(void) buf, sizeof(buf)); ret = cmdline_parse_ipaddr((cmdline_parse_token_hdr_t*)&token, - ipaddr_garbage_addr6_strs[i], (void*)&result); + ipaddr_garbage_addr6_strs[i], (void*)&result, + sizeof(result)); /* if should have passed, or should have failed */ if ((ret < 0) == @@ -548,7 +560,8 @@ test_parse_ipaddr_valid(void) buf, sizeof(buf)); ret = cmdline_parse_ipaddr((cmdline_parse_token_hdr_t*)&token, - ipaddr_garbage_network4_strs[i], (void*)&result); + ipaddr_garbage_network4_strs[i], (void*)&result, + sizeof(result)); /* if should have passed, or should have failed */ if ((ret < 0) == @@ -589,7 +602,8 @@ test_parse_ipaddr_valid(void) buf, sizeof(buf)); ret = cmdline_parse_ipaddr((cmdline_parse_token_hdr_t*)&token, - ipaddr_garbage_network6_strs[i], (void*)&result); + ipaddr_garbage_network6_strs[i], (void*)&result, + sizeof(result)); /* if should have passed, or should have failed */ if ((ret < 0) == @@ -621,7 +635,7 @@ test_parse_ipaddr_invalid_data(void) int ret; memset(&result, 0, sizeof(result)); - + /* test invalid strings */ for (i = 0; i < IPADDR_INVALID_STRS_SIZE; i++) { @@ -642,7 +656,8 @@ test_parse_ipaddr_invalid_data(void) buf, sizeof(buf)); ret = cmdline_parse_ipaddr((cmdline_parse_token_hdr_t*)&token, - ipaddr_invalid_strs[i], (void*)&result); + ipaddr_invalid_strs[i], (void*)&result, + sizeof(result)); if (ret != -1) { printf("Error: parsing %s as %s succeeded!\n", @@ -664,29 +679,30 @@ test_parse_ipaddr_invalid_param(void) char buf[CMDLINE_TEST_BUFSIZE]; cmdline_ipaddr_t result; - rte_snprintf(buf, sizeof(buf), "1.2.3.4"); + snprintf(buf, sizeof(buf), "1.2.3.4"); token.ipaddr_data.flags = CMDLINE_IPADDR_V4; /* null token */ - if (cmdline_parse_ipaddr(NULL, buf, (void*)&result) != -1) { + if (cmdline_parse_ipaddr(NULL, buf, (void*)&result, + sizeof(result)) != -1) { printf("Error: parser accepted invalid parameters!\n"); return -1; } /* null buffer */ if (cmdline_parse_ipaddr((cmdline_parse_token_hdr_t*)&token, - NULL, (void*)&result) != -1) { + NULL, (void*)&result, sizeof(result)) != -1) { printf("Error: parser accepted invalid parameters!\n"); return -1; } /* empty buffer */ if (cmdline_parse_ipaddr((cmdline_parse_token_hdr_t*)&token, - "", (void*)&result) != -1) { + "", (void*)&result, sizeof(result)) != -1) { printf("Error: parser accepted invalid parameters!\n"); return -1; } /* null result */ if (cmdline_parse_ipaddr((cmdline_parse_token_hdr_t*)&token, - buf, NULL) == -1) { + buf, NULL, 0) == -1) { printf("Error: parser rejected null result!\n"); return -1; }