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"
5 a0d146ed 2005-07-12 devnull u8int zeroscore[VtScoreSize];
8 a0d146ed 2005-07-12 devnull scoremem(u8int *score, u8int *buf, int n)
10 a0d146ed 2005-07-12 devnull DigestState s;
12 a0d146ed 2005-07-12 devnull memset(&s, 0, sizeof s);
13 a0d146ed 2005-07-12 devnull sha1(buf, n, score, &s);
16 a0d146ed 2005-07-12 devnull static int
17 a0d146ed 2005-07-12 devnull hexv(int c)
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;
29 a0d146ed 2005-07-12 devnull strscore(char *s, u8int *score)
31 a0d146ed 2005-07-12 devnull int i, c, d;
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;
42 a0d146ed 2005-07-12 devnull return s[2 * i] == '\0';