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
       ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩   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⟩.