.\" -*- coding: UTF-8 -*-
'\" t
.\" Copyright (c) 1993 by Thomas Koenig (ig25@rz.uni-karlsruhe.de)
.\"
.\" SPDX-License-Identifier: Linux-man-pages-copyleft
.\"
.\" 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 libc 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()
.\"
.\"*******************************************************************
.\"
.\" This file was generated with po4a. Translate the source file.
.\"
.\"*******************************************************************
.TH confstr 3 "5 lutego 2023 r." "Linux man\-pages 6.03" 
.SH NAZWA
confstr \- pobranie zmiennych łańcuchowych zależnych od konfiguracji
.SH BIBLIOTEKA
Standardowa biblioteka C (\fIlibc\fP, \fI\-lc\fP)
.SH SKŁADNIA
.nf
\fB#include <unistd.h>\fP
.PP
\fBsize_t confstr(int \fP\fIname\fP\fB, char \fP\fIbuf\fP\fB[.\fP\fIsize\fP\fB], size_t \fP\fIsize\fP\fB);\fP
.fi
.PP
.RS -4
Wymagane ustawienia makr biblioteki glibc (patrz \fBfeature_test_macros\fP(7)):
.RE
.PP
\fBconfstr\fP():
.nf
    _POSIX_C_SOURCE >= 2 || _XOPEN_SOURCE
.fi
.SH OPIS
Funkcja \fBconfstr\fP() pobiera wartość zależnych od konfiguracji zmiennych
systemowych.
.PP
Argument \fIname\fP wyznacza pobieraną zmienną systemową.  Dostępne są zmienne:
.TP 
\fB_CS_GNU_LIBC_VERSION\fP (tylko biblioteka GNU C; od glibc 2.3.2)
Łańcuch znaków identyfikujący wersję biblioteki GNU C w systemie (np. "glibc
2.3.4").
.TP 
\fB_CS_GNU_LIBPTHREAD_VERSION\fP (tylko biblioteka GNU C; od glibc 2.3.2)
Łańcuch znaków identyfikujący wersję POSIX\-owej implementacji wątków
dostarczaną przez bibliotekę  C (np. "NPTL 2.3.4" lub "linuxthreads\-0.10").
.TP 
\fB_CS_PATH\fP
Wartość zmiennej \fBPATH\fP zawierającej ścieżkę, w której znaleźć można
wszystkie standardowe programy narzędziowe POSIX.2.
.PP
If \fIbuf\fP is not NULL and \fIsize\fP is not zero, \fBconfstr\fP()  copies the
value of the string to \fIbuf\fP truncated to \fIsize \- 1\fP bytes if necessary,
with a null byte (\[aq]\e0\[aq]) as terminator.  This can be detected by
comparing the return value of \fBconfstr\fP()  against \fIsize\fP.
.PP
If \fIsize\fP is zero and \fIbuf\fP is NULL, \fBconfstr\fP()  just returns the value
as defined below.
.SH "WARTOŚĆ ZWRACANA"
If \fIname\fP is a valid configuration variable, \fBconfstr\fP()  returns the
number of bytes (including the terminating null byte)  that would be
required to hold the entire value of that variable.  This value may be
greater than \fIsize\fP, which means that the value in \fIbuf\fP is truncated.
.PP
Jeśli \fIname\fP jest poprawną zmienną konfiguracji, ale wartość tej zmiennej
jest pusta, to \fBconfstr\fP() zwraca 0. Jeśli \fIname\fP nie jest nazwą poprawnej
zmiennej konfiguracji, to \fBconfstr\fP() zwraca 0 i ustawia \fIerrno\fP na
\fBEINVAL\fP.
.SH BŁĘDY
.TP 
\fBEINVAL\fP
Wartość \fIname\fP jest nieprawidłowa.
.SH ATRYBUTY
Informacje o pojęciach używanych w tym rozdziale można znaleźć w podręczniku
\fBattributes\fP(7).
.ad l
.nh
.TS
allbox;
lbx lb lb
l l l.
Interfejs	Atrybut	Wartość
T{
\fBconfstr\fP()
T}	Bezpieczeństwo wątkowe	MT\-Safe
.TE
.hy
.ad
.sp 1
.SH STANDARDY
POSIX.1\-2001, POSIX.1\-2008.
.SH PRZYKŁADY
Poniższy fragment kodu podaje ścieżkę, w której znaleźć znaleźć można
programy systemowe POSIX.2:
.PP
.in +4n
.EX
char *pathbuf;
size_t n;

n = confstr(_CS_PATH, NULL, (size_t) 0);
pathbuf = malloc(n);
if (pathbuf == NULL)
    abort();
confstr(_CS_PATH, pathbuf, n);
.EE
.in
.SH "ZOBACZ TAKŻE"
\fBgetconf\fP(1), \fBsh\fP(1), \fBexec\fP(3), \fBfpathconf\fP(3), \fBpathconf\fP(3),
\fBsysconf\fP(3), \fBsystem\fP(3)
.PP
.SH TŁUMACZENIE
Autorami polskiego tłumaczenia niniejszej strony podręcznika są:
Adam Byrtek <alpha@irc.pl>,
Andrzej Krzysztofowicz <ankry@green.mf.pg.gda.pl>,
Robert Luberda <robert@debian.org>
i
Michał Kułach <michal.kulach@gmail.com>
.
.PP
Niniejsze tłumaczenie jest wolną dokumentacją. Bliższe informacje o warunkach
licencji można uzyskać zapoznając się z
.UR https://www.gnu.org/licenses/gpl-3.0.html
GNU General Public License w wersji 3
.UE
lub nowszej. Nie przyjmuje się ŻADNEJ ODPOWIEDZIALNOŚCI.
.PP
Błędy w tłumaczeniu strony podręcznika prosimy zgłaszać na adres listy
dyskusyjnej
.MT manpages-pl-list@lists.sourceforge.net
.ME .
