diff options
| author | Michael Kerrisk <mtk.manpages@gmail.com> | 2004-11-03 13:51:07 +0000 |
|---|---|---|
| committer | Michael Kerrisk <mtk.manpages@gmail.com> | 2004-11-03 13:51:07 +0000 |
| commit | fea681dafb1363a154b7fc6d59baa83d2a9ebc5c (patch) | |
| tree | 8ea275c0f242af739617d0afc3e1b16c4eff3dc2 /man3/confstr.3 | |
| download | man-pages-fea681dafb1363a154b7fc6d59baa83d2a9ebc5c.tar.gz | |
Import of man-pages 1.70man-pages-1.70
Diffstat (limited to 'man3/confstr.3')
| -rw-r--r-- | man3/confstr.3 | 111 |
1 files changed, 111 insertions, 0 deletions
diff --git a/man3/confstr.3 b/man3/confstr.3 new file mode 100644 index 0000000000..93c8ef6b26 --- /dev/null +++ b/man3/confstr.3 @@ -0,0 +1,111 @@ +.\" (c) 1993 by Thomas Koenig (ig25@rz.uni-karlsruhe.de) +.\" +.\" Permission is granted to make and distribute verbatim copies of this +.\" manual provided the copyright notice and this permission notice are +.\" preserved on all copies. +.\" +.\" Permission is granted to copy and distribute modified versions of this +.\" manual under the conditions for verbatim copying, provided that the +.\" entire resulting derived work is distributed under the terms of a +.\" permission notice identical to this one. +.\" +.\" Since the Linux kernel and libraries are constantly changing, this +.\" manual page may be incorrect or out-of-date. The author(s) assume no +.\" responsibility for errors or omissions, or for damages resulting from +.\" the use of the information contained herein. The author(s) may not +.\" have taken the same level of care in the production of this manual, +.\" which is licensed free of charge, as they might when working +.\" professionally. +.\" +.\" Formatted or processed versions of this manual, if unaccompanied by +.\" the source, must acknowledge the copyright and authors of this work. +.\" License. +.\" Modified Sat Jul 24 19:53:02 1993 by Rik Faith (faith@cs.unc.edu) +.TH CONFSTR 3 1993-04-17 "GNU" "Linux Programmer's Manual" +.SH NAME +confstr \- get configuration dependent string variables +.SH SYNOPSIS +.nf +.B #define _POSIX_C_SOURCE 2 +or +.B #define _XOPEN_SOURCE +.nl +.B #include <unistd.h> +.sp +.BI "size_t confstr(int " "name" ", char *" buf ", size_t " len ); +.fi +.SH DESCRIPTION +.B confstr() +gets the value of configuration-dependent string variables. +.PP +The +.I name +argument is the system variable to be queried. +The following variables are supported: +.TP +.B _CS_PATH +A value for the +.B PATH +variable which indicates where all the POSIX.2 standard utilities can +be found. +.PP +If +.I buf +is not +.BR NULL , +and +.I len +is not zero, +.B confstr() +copies the value of the string to +.I buf +truncated to +.I len \- 1 +characters if necessary, with a null character as termination. +This can be detected by comparing the return value of +.B confstr() +against +.IR len . +.PP +If +.I len +is zero and +.I buf +is +.BR NULL , +.B confstr() +just returns the value as defined below. +.SH "RETURN VALUE" +If +.I name +does not correspond to a valid configuration variable, +.B confstr() +returns 0. +.SH EXAMPLES +The following code fragment determines the path where to find +the POSIX.2 system utilities: +.br +.nf +.in 10 + +char *pathbuf; size_t n; + +n = confstr(_CS_PATH,NULL,(size_t)0); +if ((pathbuf = malloc(n)) == NULL) abort(); +confstr(_CS_PATH, pathbuf, n); +.SH ERRORS +If the value of +.I name +is invalid, +.I errno +is set to +.BR EINVAL . +.SH "CONFORMING TO" +proposed POSIX.2 +.SH BUGS +POSIX.2 is not yet an approved standard; the information in this +manpage is subject to change. +.SH "SEE ALSO" +.BR sh (1), +.BR exec (3), +.BR system (3) |
