ret =
_gnutls_mpi_print(x, &out->data[1 + (numlen - byte_size)],
&size);
- if (ret < 0)
- return gnutls_assert_val(ret);
+ if (ret < 0) {
+ gnutls_assert();
+ goto cleanup;
+ }
byte_size = (_gnutls_mpi_get_nbits(y) + 7) / 8;
size = out->size - (1 + (numlen + numlen - byte_size));
_gnutls_mpi_print(y,
&out->data[1 + numlen + numlen - byte_size],
&size);
- if (ret < 0)
- return gnutls_assert_val(ret);
+ if (ret < 0) {
+ gnutls_assert();
+ goto cleanup;
+ }
/* pad and store y */
return 0;
+ cleanup:
+ _gnutls_free_datum(out);
+ return ret;
}