.\" %%%LICENSE_END
.\"
.\" Modified Sat Jul 24 19:53:02 1993 by Rik Faith (faith@cs.unc.edu)
+.\"
.\" FIXME Many more values for 'name' are supported, some of which
-.\" are documented under 'info confstr'.
-.\" See <bits/confname.h> for the rest.
-.\" These should all be added to this page.
-.\" See also the POSIX.1-2001 specification of confstr()
+.\" are documented under 'info confstr'.
+.\" See <bits/confname.h> for the rest.
+.\" These should all be added to this page.
+.\" See also the POSIX.1-2001 specification of confstr()
.\"
-.TH CONFSTR 3 2015-08-08 "GNU" "Linux Programmer's Manual"
+.TH CONFSTR 3 2019-03-06 "GNU" "Linux Programmer's Manual"
.SH NAME
confstr \- get configuration dependent string variables
.SH SYNOPSIS
.nf
.B #include <unistd.h>
-.sp
+.PP
.BI "size_t confstr(int " "name" ", char *" buf ", size_t " len );
.fi
-.sp
+.PP
.in -4n
Feature Test Macro Requirements for glibc (see
.BR feature_test_macros (7)):
.in
-.sp
+.PP
.BR confstr ():
_POSIX_C_SOURCE\ >=\ 2 || _XOPEN_SOURCE
.SH DESCRIPTION
.I buf
truncated to
.I len \- 1
-bytes if necessary, with a null byte (\(aq\\0\(aq) as terminator.
+bytes if necessary, with a null byte (\(aq\e0\(aq) as terminator.
This can be detected by comparing the return value of
.BR confstr ()
against
which means that the value in
.I buf
is truncated.
-
+.PP
If
.I name
is a valid configuration variable,
.SH EXAMPLE
The following code fragment determines the path where to find
the POSIX.2 system utilities:
-.br
-.nf
+.PP
.in +4n
-
+.EX
char *pathbuf;
size_t n;
if (pathbuf == NULL)
abort();
confstr(_CS_PATH, pathbuf, n);
+.EE
.in
-.fi
.SH SEE ALSO
.BR getconf (1),
.BR sh (1),