X-Git-Url: http://git.silcnet.org/gitweb/?a=blobdiff_plain;f=lib%2Fsilcutil%2Fsilcstrutil.h;h=1fdc0fd16b486c89242d7e91c14d8d17324cbb1a;hb=9905799a86c606304fd7df2cd401de1740a272a1;hp=c223fe6b7c6e3dbf6dcb11c46521f38a6c44a2a3;hpb=6e78c1f7fc6b1b87f70561d447c1520d2b09bbf2;p=silc.git diff --git a/lib/silcutil/silcstrutil.h b/lib/silcutil/silcstrutil.h index c223fe6b..1fdc0fd1 100644 --- a/lib/silcutil/silcstrutil.h +++ b/lib/silcutil/silcstrutil.h @@ -4,7 +4,7 @@ Author: Pekka Riikonen - Copyright (C) 2002 - 2006 Pekka Riikonen + Copyright (C) 2002 - 2007 Pekka Riikonen This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -111,6 +111,26 @@ char *silc_pem_encode_file(unsigned char *data, SilcUInt32 data_len); unsigned char *silc_pem_decode(unsigned char *pem, SilcUInt32 pem_len, SilcUInt32 *ret_len); +/****f* silcutil/SilcStrStrUtilAPI/silc_snprintf + * + * SYNOPSIS + * + * int silc_snprintf(char *str, SilcUInt32 size, const char *format, ...); + * + * DESCRIPTION + * + * Produces output string according to the `format'. The formatting + * is equivalent to silc_snprintf(3) and sprintf(3). Returns the number of + * characters output into `str', at most `size' characters including the + * trailing '\0' character. Returns negative value on error. + * + ***/ +#ifndef SILC_SNPRINTF +int silc_snprintf(char *str, SilcUInt32 size, const char *format, ...); +#else +#define silc_snprintf snprintf +#endif /* SILC_SNPRINTF */ + /****f* silcutil/SilcStrStrUtilAPI/silc_strncat * * SYNOPSIS @@ -190,4 +210,21 @@ int silc_string_match(const char *string1, const char *string2); ***/ int silc_string_compare(char *string1, char *string2); +/****f* silcutil/SilcStrUtilAPI/silc_string_split + * + * SYNOPSIS + * + * char **silc_string_split(const char *string, char ch, int *ret_count); + * + * DESCRIPTION + * + * Splits a `string' that has a separator `ch' into an array of strings + * and returns the array. The `ret_count' will contain the number of + * strings in the array. Caller must free the strings and the array. + * Returns NULL on error. If the string does not have `ch' separator + * this returns the `string' in the array. + * + ***/ +char **silc_string_split(const char *string, char ch, int *ret_count); + #endif /* SILCSTRUTIL_H */