+ /* Parse HMAC list */
+ ret =
+ silc_buffer_unformat(buffer,
+ SILC_STR_UI_XNSTRING_ALLOC(&payload->hmac_alg_list,
+ payload->hmac_alg_len),
+ SILC_STR_UI_SHORT(&payload->comp_alg_len),
+ SILC_STR_END);
+ if (ret == -1) {
+ status = SILC_SKE_STATUS_ERROR;
+ goto err;
+ }
+
+ len2 += len = payload->hmac_alg_len + 2;
+ silc_buffer_pull(buffer, len);
+