| A64L(3) | Library Functions Manual | A64L(3) | 
a64l, l64a,
  l64a_r —
#include <stdlib.h>
long
  
  a64l(const
    char *s);
char *
  
  l64a(long
    int l);
int
  
  l64a_r(long
    int l, char
    *buffer, int
    buflen);
a64l() and l64a() functions
  convert between a long integer and its base-64 ASCII string representation.
The characters used to represent ``digits'' are `.' for 0, `/' for 1, `0' - `9' for 2 - 11, `A' - `Z' for 12 - 37, and `a' - `z' for 38 - 63.
a64l() takes a pointer to a NUL-terminated
    base-64 ASCII string representation, s, and returns
    the corresponding long integer value.
l64a() takes a long integer value,
    l, and returns a pointer to the corresponding
    NUL-terminated base-64 ASCII string representation.
l64a_r() performs a conversion identical
    to that of l64a() and stores the resulting
    representation in the memory area pointed to by
    buffer, consuming at most buflen
    characters including the terminating NUL character.
a64l() returns the long
  integer value corresponding to the input string. If the string pointed to by
  s is an empty string, a64l()
  returns a value of 0L.
l64a() returns a pointer to the base-64
    ASCII string representation corresponding to the input value. If
    l is 0L, l64a() returns a
    pointer to an empty string.
On successful completion, l64a_r() returns
    0; if buffer is of insufficient length, -1 is
    returned.
a64l() and l64a() functions
  conform to X/Open Portability Guide Issue 4,
  Version 2 (“XPG4.2”) and IEEE Std
  1003.1-2004 (“POSIX.1”). The
  l64a_r() function conforms to
  System V Interface Definition, Fourth Edition
  (“SVID4”), Multithreading Extension.
l64a() function is not reentrant. The value returned
  by it points into a static buffer area; subsequent calls to
  la64a() may overwrite this buffer. In multi-threaded
  applications, l64a_r() should be used instead.
| May 6, 2010 | NetBSD 10.0 |