Ticket #75: minipatch.diff

File minipatch.diff, 1.8 KB (added by sneves, at 2012-02-06T00:46:05Z)

C99 MSVC fix

  • (a) a/ge25519.c.bak vs. (b) b/ge25519.c

    diff --git a/ge25519.c.bak b/ge25519.c
    index 7bc6c48..0ea7f15 100644
    a b static void setneutral(ge25519 *r) 
    185185/* return 0 on success, -1 otherwise */
    186186int ge25519_unpackneg_vartime(ge25519_p3 *r, const unsigned char p[32])
    187187{
     188  unsigned char par;
    188189  fe25519 t, chk, num, den, den2, den4, den6;
    189190  fe25519_setone(&r->z);
    190   unsigned char par = p[31] >> 7;
     191  par = p[31] >> 7;
    191192  fe25519_unpack(&r->y, p);
    192193  fe25519_square(&num, &r->y); /* x = y^2 */
    193194  fe25519_mul(&den, &num, &ge25519_ecd); /* den = dy^2 */
    void ge25519_double_scalarmult_vartime(ge25519_p3 *r, const ge25519_p3 *p1, cons 
    253254  ge25519_p1p1 tp1p1;
    254255  ge25519_p3 pre[16];
    255256  unsigned char b[127];
     257  int i;
    256258
    257259  /* precomputation                                                        s2 s1 */
    258260  setneutral(pre);                                                      /* 00 00 */
    void ge25519_double_scalarmult_vartime(ge25519_p3 *r, const ge25519_p3 *p1, cons 
    276278
    277279  /* scalar multiplication */
    278280  *r = pre[b[126]];
    279   int i;
    280281  for(i=125;i>=0;i--)
    281282  {
    282283    dbl_p1p1(&tp1p1, (ge25519_p2 *)r);
  • (a) a/fe25519.c.bak vs. (b) b/fe25519.c

    diff --git a/fe25519.c.bak b/fe25519.c
    index b9a1884..b96764c 100644
    a b void fe25519_pack(unsigned char r[32], const fe25519 *x) 
    106106
    107107int fe25519_iszero(const fe25519 *x)
    108108{
    109   int i;
     109  int i, r;
    110110  fe25519 t = *x;
    111111  fe25519_freeze(&t);
    112   int r = equal(t.v[0],0);
     112  r = equal(t.v[0],0);
    113113  for(i=1;i<32;i++)
    114114    r &= equal(t.v[i],0);
    115115  return r;
    int fe25519_iszero(const fe25519 *x) 
    117117
    118118int fe25519_iseq_vartime(const fe25519 *x, const fe25519 *y)
    119119{
     120  int i;
    120121  fe25519 t1 = *x;
    121122  fe25519 t2 = *y;
    122123  fe25519_freeze(&t1);
    123124  fe25519_freeze(&t2);
    124   int i;
    125125  for(i=0;i<32;i++)
    126126    if(t1.v[i] != t2.v[i]) return 0;
    127127  return 1;