Subversion Repositories planix.SVN

Rev

Rev 26 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
26 7u83 1
#include "os.h"
2
#include <mp.h>
3
#include "dat.h"
4
 
5
void
6
mptober(mpint *b, uchar *p, int n)
7
{
8
	int i, j, m;
9
	mpdigit x;
10
 
11
	memset(p, 0, n);
12
 
13
	p += n;
14
	m = b->top*Dbytes;
15
	if(m < n)
16
		n = m;
17
 
18
	i = 0;
19
	while(n >= Dbytes){
20
		n -= Dbytes;
21
		x = b->p[i++];
22
		for(j = 0; j < Dbytes; j++){
23
			*--p = x;
24
			x >>= 8;
25
		}
26
	}
27
	if(n > 0){
28
		x = b->p[i];
29
		for(j = 0; j < n; j++){
30
			*--p = x;
31
			x >>= 8;
32
		}
33
	}
34
}