X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;f=lib%2Flibrte_eal%2Fcommon%2Finclude%2Frte_string_fns.h;h=b93378425ce44bbbd581bcb9ab777ddf55ef93ca;hb=3031749c2df04a63cdcef186dcce3781e61436e8;hp=d8fde148e6b009d0c1ec51500283b1d150033609;hpb=9b226335bb0357b0152c68fa57d1bc335ac1626c;p=dpdk.git diff --git a/lib/librte_eal/common/include/rte_string_fns.h b/lib/librte_eal/common/include/rte_string_fns.h index d8fde148e6..b93378425c 100644 --- a/lib/librte_eal/common/include/rte_string_fns.h +++ b/lib/librte_eal/common/include/rte_string_fns.h @@ -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 @@ -44,11 +44,6 @@ extern "C" { #endif -#include -#include -#include -#include - /** * Safer version of snprintf that writes up to buflen characters to * the output buffer and ensures that the resultant string is null-terminated, @@ -72,33 +67,8 @@ extern "C" { * buffer been sufficiently big. * */ -static inline int -rte_snprintf(char *buffer, int buflen, const char *format, ...) -{ - int len; - va_list ap; - - if (buffer == NULL && buflen != 0) - goto einval_error; - if (format == NULL) { - if (buflen > 0) - buffer[0] = '\0'; - goto einval_error; - } - - va_start(ap, format); - len = vsnprintf(buffer, buflen, format, ap); - va_end(ap); - if (len >= buflen && buflen > 0) - buffer[buflen - 1] = '\0'; - - return len; - -einval_error: - errno = EINVAL; - return -1; -} - +int +rte_snprintf(char *buffer, int buflen, const char *format, ...); /** * Takes string "string" parameter and splits it at character "delim" @@ -126,38 +96,12 @@ einval_error: * @return * The number of tokens in the tokens array. */ -static inline int +int rte_strsplit(char *string, int stringlen, - char **tokens, int maxtokens, char delim) -{ - int i, tok = 0; - int tokstart = 1; /* first token is right at start of string */ - - if (string == NULL || tokens == NULL) - goto einval_error; - - for (i = 0; i < stringlen; i++) { - if (string[i] == '\0' || tok >= maxtokens) - break; - if (tokstart) { - tokstart = 0; - tokens[tok++] = &string[i]; - } - if (string[i] == delim) { - string[i] = '\0'; - tokstart = 1; - } - } - return tok; - -einval_error: - errno = EINVAL; - return -1; -} + char **tokens, int maxtokens, char delim); #ifdef __cplusplus } #endif - #endif /* RTE_STRING_FNS_H */