Blame


1 a0d146ed 2005-07-12 devnull #include "stdinc.h"
2 a0d146ed 2005-07-12 devnull #include "dat.h"
3 a0d146ed 2005-07-12 devnull #include "fns.h"
4 a0d146ed 2005-07-12 devnull
5 a0d146ed 2005-07-12 devnull u8int zeroscore[VtScoreSize];
6 a0d146ed 2005-07-12 devnull
7 a0d146ed 2005-07-12 devnull void
8 a0d146ed 2005-07-12 devnull scoremem(u8int *score, u8int *buf, int n)
9 a0d146ed 2005-07-12 devnull {
10 a0d146ed 2005-07-12 devnull DigestState s;
11 a0d146ed 2005-07-12 devnull
12 a0d146ed 2005-07-12 devnull memset(&s, 0, sizeof s);
13 a0d146ed 2005-07-12 devnull sha1(buf, n, score, &s);
14 a0d146ed 2005-07-12 devnull }
15 a0d146ed 2005-07-12 devnull
16 a0d146ed 2005-07-12 devnull static int
17 a0d146ed 2005-07-12 devnull hexv(int c)
18 a0d146ed 2005-07-12 devnull {
19 a0d146ed 2005-07-12 devnull if(c >= '0' && c <= '9')
20 a0d146ed 2005-07-12 devnull return c - '0';
21 a0d146ed 2005-07-12 devnull if(c >= 'a' && c <= 'f')
22 a0d146ed 2005-07-12 devnull return c - 'a' + 10;
23 a0d146ed 2005-07-12 devnull if(c >= 'A' && c <= 'F')
24 a0d146ed 2005-07-12 devnull return c - 'A' + 10;
25 a0d146ed 2005-07-12 devnull return -1;
26 a0d146ed 2005-07-12 devnull }
27 a0d146ed 2005-07-12 devnull
28 a0d146ed 2005-07-12 devnull int
29 a0d146ed 2005-07-12 devnull strscore(char *s, u8int *score)
30 a0d146ed 2005-07-12 devnull {
31 a0d146ed 2005-07-12 devnull int i, c, d;
32 a0d146ed 2005-07-12 devnull
33 a0d146ed 2005-07-12 devnull for(i = 0; i < VtScoreSize; i++){
34 a0d146ed 2005-07-12 devnull c = hexv(s[2 * i]);
35 a0d146ed 2005-07-12 devnull if(c < 0)
36 a0d146ed 2005-07-12 devnull return -1;
37 a0d146ed 2005-07-12 devnull d = hexv(s[2 * i + 1]);
38 a0d146ed 2005-07-12 devnull if(d < 0)
39 a0d146ed 2005-07-12 devnull return -1;
40 a0d146ed 2005-07-12 devnull score[i] = (c << 4) + d;
41 a0d146ed 2005-07-12 devnull }
42 a0d146ed 2005-07-12 devnull return s[2 * i] == '\0';
43 a0d146ed 2005-07-12 devnull }