Codebase list libcryptx-perl / 5aa887bf-0536-4899-979c-dc059c974396/main src / ltm / bn_mp_to_signed_bin.c
5aa887bf-0536-4899-979c-dc059c974396/main

Tree @5aa887bf-0536-4899-979c-dc059c974396/main (Download .tar.gz)

bn_mp_to_signed_bin.c @5aa887bf-0536-4899-979c-dc059c974396/mainraw · history · blame

#include "tommath_private.h"
#ifdef BN_MP_TO_SIGNED_BIN_C
/* LibTomMath, multiple-precision integer library -- Tom St Denis
 *
 * LibTomMath is a library that provides multiple-precision
 * integer arithmetic as well as number theoretic functionality.
 *
 * The library was designed directly after the MPI library by
 * Michael Fromberger but has been written from scratch with
 * additional optimizations in place.
 *
 * SPDX-License-Identifier: Unlicense
 */

/* store in signed [big endian] format */
int mp_to_signed_bin(const mp_int *a, unsigned char *b)
{
   int     res;

   if ((res = mp_to_unsigned_bin(a, b + 1)) != MP_OKAY) {
      return res;
   }
   b[0] = (a->sign == MP_ZPOS) ? (unsigned char)0 : (unsigned char)1;
   return MP_OKAY;
}
#endif

/* ref:         $Format:%D$ */
/* git commit:  $Format:%H$ */
/* commit time: $Format:%ai$ */