Scroll to navigation

CONFSTR(3) Podręcznik programisty Linuksa CONFSTR(3)

NAZWA

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

SKŁADNIA

#define _POSIX_C_SOURCE 2
lub
#define _XOPEN_SOURCE
#include <unistd.h>

size_t confstr(int name, char *buf, size_t len);

OPIS

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

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

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

Jeśli argument buf buf nie jest równy NULL, a len nie jest zerem, to funkcja confstr() kopiuje wartość zmiennej do łańcucha buf obciętą, jeśli to konieczne, do len - 1 znaków i zakończoną znakiem NUL. Może to zostać wykryte przez porównanie zwracanej przez confstr() wartości z argumentem len. Jeśli len wynosi zero a buf jest równe NULL, funkcja confstr() po prostu zwraca wartość, tak jak podano poniżej.

WARTOŚĆ ZWRACANA

Jeśli name nie określa poprawnej zmiennej konfiguracyjnej, confstr() zwraca 0.

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); if ((pathbuf = malloc(n)) == NULL) abort(); confstr(_CS_PATH, pathbuf, n);

BŁĘDY

Jeśli wartość name jest nieprawidłowa, errno jest ustawiane na EINVAL.

ZGODNE Z

Propozycja POSIX.2

USTERKI

POSIX.2 nie został jeszcze zatwierdzony jako standard, informacja na tej stronie man może ulec zmianie.

ZOBACZ TAKŻE

sh(1), exec(3), system(3)

1993-04-17 GNU