]> CyberLeo.Net >> Repos - FreeBSD/releng/10.0.git/blob - contrib/opie/libopie/btoa8.c
- Copy stable/10 (r259064) to releng/10.0 as part of the
[FreeBSD/releng/10.0.git] / contrib / opie / libopie / btoa8.c
1 /* btoa8.c: The opiebtoa8() library function.
2
3 %%% copyright-cmetz-96
4 This software is Copyright 1996-2001 by Craig Metz, All Rights Reserved.
5 The Inner Net License Version 3 applies to this software.
6 You should have received a copy of the license with this software. If
7 you didn't get a copy, you may request one from <license@inner.net>.
8
9         History:
10
11         Modified by cmetz for OPIE 2.4. Use struct opie_otpkey for binary arg. 
12         Created by cmetz for OPIE 2.3 (quick re-write).
13 */      
14
15 #include "opie_cfg.h"
16 #include "opie.h"
17
18 static char hextochar[16] = 
19 {'0','1','2','3','4','5','6','7','8','9','a','b','c','d','e','f'};
20
21 char *opiebtoa8 FUNCTION((out, in), char *out AND struct opie_otpkey *inkey)
22 {
23   int i;
24   unsigned char *in = (unsigned char *)inkey;
25   char *c = out;
26
27   for (i = 0; i < 8; i++) {
28     *(c++) = hextochar[((*in) >> 4) & 0x0f];
29     *(c++) = hextochar[(*in++) & 0x0f];
30   }
31   *c = 0;
32
33   return out;
34 }