xref: /minix3/lib/libcrypt/util.c (revision ebffaa42502931792cfc7964b581853350489880)
1*ebffaa42SBen Gras #include <sys/cdefs.h>
2*ebffaa42SBen Gras #if !defined(lint)
3*ebffaa42SBen Gras __RCSID("$NetBSD: util.c,v 1.1 2004/07/02 00:05:23 sjg Exp $");
4*ebffaa42SBen Gras #endif /* not lint */
5*ebffaa42SBen Gras 
6*ebffaa42SBen Gras #include <sys/types.h>
7*ebffaa42SBen Gras 
8*ebffaa42SBen Gras #include "crypt.h"
9*ebffaa42SBen Gras 
10*ebffaa42SBen Gras static const unsigned char itoa64[] =		/* 0 ... 63 => ascii - 64 */
11*ebffaa42SBen Gras 	"./0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
12*ebffaa42SBen Gras 
13*ebffaa42SBen Gras void
__crypt_to64(char * s,u_int32_t v,int n)14*ebffaa42SBen Gras __crypt_to64(char *s, u_int32_t v, int n)
15*ebffaa42SBen Gras {
16*ebffaa42SBen Gras 
17*ebffaa42SBen Gras 	while (--n >= 0) {
18*ebffaa42SBen Gras 		*s++ = itoa64[v & 0x3f];
19*ebffaa42SBen Gras 		v >>= 6;
20*ebffaa42SBen Gras 	}
21*ebffaa42SBen Gras }
22