.\" Copyright 2002 walter harms (walter.harms@informatik.uni-oldenburg.de)
+.\"
+.\" %%%LICENSE_START(GPL_NOVERSION_ONELINE)
.\" Distributed under GPL
+.\" %%%LICENSE_END
.\"
.\" Corrected, aeb, 2002-05-30
.\"
-.TH A64L 3 2007-07-26 "" "Linux Programmer's Manual"
+.TH A64L 3 2014-05-28 "" "Linux Programmer's Manual"
.SH NAME
a64l, l64a \- convert between long and base-64
.SH SYNOPSIS
.B #include <stdlib.h>
.sp
-.BI "long a64l(char *" str64 );
+.BI "long a64l(const char *" str64 );
.sp
.BI "char *l64a(long " value );
.sp
.sp
.BR a64l (),
.BR l64a ():
-_SVID_SOURCE || _XOPEN_SOURCE\ >=\ 500
+.br
+.RS 4
+.ad l
+_SVID_SOURCE || _XOPEN_SOURCE\ >=\ 500 ||
+_XOPEN_SOURCE\ &&\ _XOPEN_SOURCE_EXTENDED
+.RE
+.ad
.SH DESCRIPTION
These functions provide a conversion between 32-bit long integers
and little-endian base-64 ASCII strings (of length zero to six).
.fi
.RE
So 123 = 59*64^0 + 1*64^1 = "v/".
-.SH "CONFORMING TO"
+.SH ATTRIBUTES
+.SS Multithreading (see pthreads(7))
+The
+.BR l64a ()
+function is not thread-safe.
+.LP
+The
+.BR a64l ()
+function is thread-safe.
+.SH CONFORMING TO
POSIX.1-2001.
.SH NOTES
The value returned by
-.BR a64l ()
+.BR l64a ()
may be a pointer to a static buffer, possibly overwritten
by later calls.
.LP
.LP
This is not the encoding used by
.BR uuencode (1).
-.SH "SEE ALSO"
+.SH SEE ALSO
.BR uuencode (1),
.\" .BR itoa (3),
.BR strtoul (3)
+.SH COLOPHON
+This page is part of release 3.79 of the Linux
+.I man-pages
+project.
+A description of the project,
+information about reporting bugs,
+and the latest version of this page,
+can be found at
+\%http://www.kernel.org/doc/man\-pages/.