int silc_buffer_unformat(SilcBuffer src, ...);
Unformats a buffer from a variable argument list. Returns -1 on error and the length of the unformatted buffer otherwise.
ret = silc_buffer_unformat(buffer, SILC_STR_UI_INT(&intval), SILC_STR_CHAR(&charval), SILC_STR_OFFSET(4), SILC_STR_UI16_NSTRING_ALLOC(&str, &str_len), SILC_STR_END); if (ret < 0) error;