Provided by: manpages-pl-dev_4.21.0-2_all bug

NAZWA

       confstr - pobranie zmiennych łańcuchowych zależnych od konfiguracji

BIBLIOTEKA

       Standardowa biblioteka C (libc, -lc)

SKŁADNIA

       #include <unistd.h>

       size_t confstr(int name, char buf[.size], size_t size);

   Wymagane ustawienia makr biblioteki glibc (patrz feature_test_macros(7)):

       confstr():
           _POSIX_C_SOURCE >= 2 || _XOPEN_SOURCE

OPIS

       Funkcja confstr() pobiera wartość zależnych od konfiguracji zmiennych systemowych.

       Argument name wyznacza pobieraną zmienną systemową.  Dostępne są zmienne:

       _CS_GNU_LIBC_VERSION (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").

       _CS_GNU_LIBPTHREAD_VERSION (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").

       _CS_PATH
              Wartość zmiennej PATH zawierającej ścieżkę, w której znaleźć można wszystkie standardowe  programy
              narzędziowe POSIX.2.

       If  buf  is  not NULL and size is not zero, confstr()  copies the value of the string to buf truncated to
       size - 1 bytes if necessary, with a null byte ('\0') as terminator.  This can be  detected  by  comparing
       the return value of confstr()  against size.

       If size is zero and buf is NULL, confstr()  just returns the value as defined below.

WARTOŚĆ ZWRACANA

       If  name  is  a  valid  configuration  variable,  confstr()   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 size, which means that the value in buf is truncated.

       Jeśli name jest poprawną zmienną konfiguracji, ale wartość tej zmiennej jest pusta, to  confstr()  zwraca
       0.  Jeśli  name  nie jest nazwą poprawnej zmiennej konfiguracji, to confstr() zwraca 0 i ustawia errno na
       EINVAL.

BŁĘDY

       EINVAL Wartość name jest nieprawidłowa.

ATRYBUTY

       Informacje o pojęciach używanych w tym rozdziale można znaleźć w podręczniku attributes(7).
       ┌────────────────────────────────────────────────────────────────────┬────────────────────────┬─────────┐
       │ InterfejsAtrybutWartość │
       ├────────────────────────────────────────────────────────────────────┼────────────────────────┼─────────┤
       │ confstr()                                                          │ Bezpieczeństwo wątkowe │ MT-Safe │
       └────────────────────────────────────────────────────────────────────┴────────────────────────┴─────────┘

STANDARDY

       POSIX.1-2001, POSIX.1-2008.

PRZYKŁADY

       Poniższy fragment kodu podaje ścieżkę, w której znaleźć znaleźć można programy systemowe POSIX.2:

           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);

ZOBACZ TAKŻE

       getconf(1), sh(1), exec(3), fpathconf(3), pathconf(3), sysconf(3), system(3)

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>

       Niniejsze tłumaczenie jest wolną dokumentacją. Bliższe informacje  o  warunkach  licencji  można  uzyskać
       zapoznając   się   z   GNU General Public License w wersji 3   lub  nowszej.  Nie  przyjmuje  się  ŻADNEJ
       ODPOWIEDZIALNOŚCI.

       Błędy w  tłumaczeniu  strony  podręcznika  prosimy  zgłaszać  na  adres  listy  dyskusyjnej  manpages-pl-
       list@lists.sourceforge.net.

Linux man-pages 6.03                            5 lutego 2023 r.                                      confstr(3)