SINOPSIS
#define __POSIX_C_SOURCE 2
o
#define _XOPEN_SOURCE
#include <unistd.h>
size_t confstr(int name, char *buf, size_t len);
DESCRIPCIÓN
confstr() obtiene el valor de una variable cadena dependiente de la configuración.El argumento name es la variable del sistema a ser examinada. Se admiten las siguientes variables:
- _CS_PATH
- Un valor para la variable PATH que indica dónde pueden ser encontradas todas las utilidades POSIX.2 estándar.
Si buf no es NULL, y len no es cero, confstr() copia el valor de la cadena a buf truncado a len - 1 caracteres si es necesario, con un caracter NUL como terminación. Esto puede ser detectado al comparar el valor devuelto por confstr() con len.
Si len es cero y buf es NULL, confstr() sólo devuelve el valor como se define más abajo.
VALOR DEVUELTO
Si name no corresponde a una variable de configuración válida, confstr() devuelve 0.EJEMPLOS
El siguiente fragmento de código determina el camino donde se encuentran las utilidades de sistema 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);