~ubuntu-branches/ubuntu/utopic/dropbear/utopic-proposed

« back to all changes in this revision

Viewing changes to libtommath/bn_mp_karatsuba_sqr.c

  • Committer: Bazaar Package Importer
  • Author(s): Gerrit Pape, Matt Johnston, Gerrit Pape
  • Date: 2008-03-27 20:08:06 UTC
  • mfrom: (1.4.1 upstream) (9 hardy)
  • mto: This revision was merged to the branch mainline in revision 10.
  • Revision ID: james.westby@ubuntu.com-20080327200806-c1hhdgt3ht2gk496
Tags: 0.51-1
[ Matt Johnston ]
* New upstream release.
  - Wait until a process exits before the server closes a connection,
    so that an exit code can be sent. This fixes problems with exit
    codes not being returned, which could cause scp to fail (closes:
    #448397, #472483).

[ Gerrit Pape ]
* debian/dropbear.postinst: don't print an error message if the
  update-service program is not installed (thx Matt).

Show diffs side-by-side

added added

removed removed

Lines of Context:
12
12
 * The library is free for all purposes without any express
13
13
 * guarantee it works.
14
14
 *
15
 
 * Tom St Denis, tomstdenis@iahu.ca, http://math.libtomcrypt.org
 
15
 * Tom St Denis, tomstdenis@gmail.com, http://math.libtomcrypt.com
16
16
 */
17
17
 
18
18
/* Karatsuba squaring, computes b = a*a using three 
80
80
  if (mp_sqr (&x1, &x1x1) != MP_OKAY)
81
81
    goto X1X1;           /* x1x1 = x1*x1 */
82
82
 
83
 
  /* now calc (x1-x0)**2 */
84
 
  if (mp_sub (&x1, &x0, &t1) != MP_OKAY)
 
83
  /* now calc (x1+x0)**2 */
 
84
  if (s_mp_add (&x1, &x0, &t1) != MP_OKAY)
85
85
    goto X1X1;           /* t1 = x1 - x0 */
86
86
  if (mp_sqr (&t1, &t1) != MP_OKAY)
87
87
    goto X1X1;           /* t1 = (x1 - x0) * (x1 - x0) */
89
89
  /* add x0y0 */
90
90
  if (s_mp_add (&x0x0, &x1x1, &t2) != MP_OKAY)
91
91
    goto X1X1;           /* t2 = x0x0 + x1x1 */
92
 
  if (mp_sub (&t2, &t1, &t1) != MP_OKAY)
93
 
    goto X1X1;           /* t1 = x0x0 + x1x1 - (x1-x0)*(x1-x0) */
 
92
  if (s_mp_sub (&t1, &t2, &t1) != MP_OKAY)
 
93
    goto X1X1;           /* t1 = (x1+x0)**2 - (x0x0 + x1x1) */
94
94
 
95
95
  /* shift by B */
96
96
  if (mp_lshd (&t1, B) != MP_OKAY)
115
115
  return err;
116
116
}
117
117
#endif
 
118
 
 
119
/* $Source: /cvs/libtom/libtommath/bn_mp_karatsuba_sqr.c,v $ */
 
120
/* $Revision: 1.5 $ */
 
121
/* $Date: 2006/03/31 14:18:44 $ */