Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(320)

Side by Side Diff: nss/lib/freebl/mpi/mpi-priv.h

Issue 1504923011: Update NSS to 3.21 RTM and NSPR to 4.11 RTM (Closed) Base URL: http://src.chromium.org/svn/trunk/deps/third_party/nss
Patch Set: Created 5 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 /* 1 /*
2 * mpi-priv.h - Private header file for MPI 2 * mpi-priv.h - Private header file for MPI
3 * Arbitrary precision integer arithmetic library 3 * Arbitrary precision integer arithmetic library
4 * 4 *
5 * NOTE WELL: the content of this header file is NOT part of the "public" 5 * NOTE WELL: the content of this header file is NOT part of the "public"
6 * API for the MPI library, and may change at any time. 6 * API for the MPI library, and may change at any time.
7 * Application programs that use libmpi should NOT include this header file. 7 * Application programs that use libmpi should NOT include this header file.
8 * 8 *
9 * This Source Code Form is subject to the terms of the Mozilla Public 9 * This Source Code Form is subject to the terms of the Mozilla Public
10 * License, v. 2.0. If a copy of the MPL was not distributed with this 10 * License, v. 2.0. If a copy of the MPL was not distributed with this
(...skipping 236 matching lines...) Expand 10 before | Expand all | Expand 10 after
247 mp_size a_len, mp_digit b, 247 mp_size a_len, mp_digit b,
248 mp_digit *c); 248 mp_digit *c);
249 void MPI_ASM_DECL s_mpv_sqr_add_prop(const mp_digit *a, 249 void MPI_ASM_DECL s_mpv_sqr_add_prop(const mp_digit *a,
250 mp_size a_len, 250 mp_size a_len,
251 mp_digit *sqrs); 251 mp_digit *sqrs);
252 252
253 mp_err MPI_ASM_DECL s_mpv_div_2dx1d(mp_digit Nhi, mp_digit Nlo, 253 mp_err MPI_ASM_DECL s_mpv_div_2dx1d(mp_digit Nhi, mp_digit Nlo,
254 mp_digit divisor, mp_digit *quot, mp_digit *rem); 254 mp_digit divisor, mp_digit *quot, mp_digit *rem);
255 255
256 /* c += a * b * (MP_RADIX ** offset); */ 256 /* c += a * b * (MP_RADIX ** offset); */
257 /* Callers of this macro should be aware that the return type might vary;
258 * it should be treated as a void function. */
257 #define s_mp_mul_d_add_offset(a, b, c, off) \ 259 #define s_mp_mul_d_add_offset(a, b, c, off) \
258 (s_mpv_mul_d_add_prop(MP_DIGITS(a), MP_USED(a), b, MP_DIGITS(c) + off), MP_OKAY) 260 s_mpv_mul_d_add_prop(MP_DIGITS(a), MP_USED(a), b, MP_DIGITS(c) + off)
259 261
260 typedef struct { 262 typedef struct {
261 mp_int N; /* modulus N */ 263 mp_int N; /* modulus N */
262 mp_digit n0prime; /* n0' = - (n0 ** -1) mod MP_RADIX */ 264 mp_digit n0prime; /* n0' = - (n0 ** -1) mod MP_RADIX */
263 } mp_mont_modulus; 265 } mp_mont_modulus;
264 266
265 mp_err s_mp_mul_mont(const mp_int *a, const mp_int *b, mp_int *c, 267 mp_err s_mp_mul_mont(const mp_int *a, const mp_int *b, mp_int *c,
266 mp_mont_modulus *mmm); 268 mp_mont_modulus *mmm);
267 mp_err s_mp_redc(mp_int *T, mp_mont_modulus *mmm); 269 mp_err s_mp_redc(mp_int *T, mp_mont_modulus *mmm);
268 270
269 /* 271 /*
270 * s_mpi_getProcessorLineSize() returns the size in bytes of the cache line 272 * s_mpi_getProcessorLineSize() returns the size in bytes of the cache line
271 * if a cache exists, or zero if there is no cache. If more than one 273 * if a cache exists, or zero if there is no cache. If more than one
272 * cache line exists, it should return the smallest line size (which is 274 * cache line exists, it should return the smallest line size (which is
273 * usually the L1 cache). 275 * usually the L1 cache).
274 * 276 *
275 * mp_modexp uses this information to make sure that private key information 277 * mp_modexp uses this information to make sure that private key information
276 * isn't being leaked through the cache. 278 * isn't being leaked through the cache.
277 * 279 *
278 * see mpcpucache.c for the implementation. 280 * see mpcpucache.c for the implementation.
279 */ 281 */
280 unsigned long s_mpi_getProcessorLineSize(); 282 unsigned long s_mpi_getProcessorLineSize();
281 283
282 /* }}} */ 284 /* }}} */
283 #endif 285 #endif
284 286
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698