Jump to content United States-English
HP.com Home Products and Services Support and Drivers Solutions How to Buy
» Contact HP
More options
HP.com home
HP-UX Reference > C

confstr(3C)

HP-UX 11i Version 3: February 2007
» 

Technical documentation

» Feedback
Content starts here

 » Table of Contents

 » Index

NAME

confstr() — get string-valued configuration values

SYNOPSIS

#include <unistd.h>

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

DESCRIPTION

confstr() provides a method for applications to get configuration-defined string values. Its use and purpose are similar to sysconf() (see sysconf(2)), except that it is used where string values rather than numeric values are returned.

The name parameter can take on the following name values, which are defined in <unistd.h>.

_CS_PATH

A default value for the PATH environment variable which can be used to locate commands in Section 1 of the HP-UX Reference and utilities defined in the POSIX.2 standard that are currently implemented in the HP-UX operating system.

_CS_HW_CPU_SUPP_BITS

Which kernel is supported on the hardware. Current values returned include "32", "32/64" or "64".

_CS_KERNEL_BITS

Whether the kernel is 32-bit or 64-bit. Current values returned include "32" or "64".

_CS_MACHINE_MODEL

The hardware model string.

_CS_MACHINE_IDENT

Identifier for each physical machine. Returned as an opaque string of printable ASCII characters. This string has the same value for all partitions in a physical machine. For hardware classes first released with HP-UX 11i or later, this ID is unique across all hardware classes. For earlier hardware classes, the ID number is unique only within the hardware class. A null string is returned if no ID number is available; this is expected to be the case only for prototype machines or other systems improperly configured in manufacturing. Comparisons of this value must be made using the string compare functions, see string(3C).

_CS_PARTITION_IDENT

Identifier for each partition existing on a machine. Returned as an opaque string of printable ASCII characters. For any machine not supporting partitions this value will be the same as _CS_MACHINE_IDENT. Comparisons of this value must be made using the string compare functions, see string(3C).

_CS_MACHINE_SERIAL

Machine serial number as found labeled on the external machine chassis. The value will be a printable ASCII string. This string is not available on all classes of machines; if unavailable, the string will be empty. This string is not a unique identifier of the machine, since machines of different classes can have the same serial number.

If a unique identifier is needed, use _CS_MACHINE_IDENT or _CS_PARTITION_IDENT.

_CS_XBS5_ILP32_OFF32_CFLAGS

The set of initial options to be given to the cc and c89 utilities to build an application using a programming model with 32-bit int, long, pointer, and off_t types.

_CS_XBS5_ILP32_OFF32_LDFLAGS

The set of final options to be given to the cc and c89 utilities to build an application using a programming model with 32-bit int, long, pointer, and off_t types.

_CS_XBS5_ILP32_OFF32_LIBS

The set of libraries to be given to the cc and c89 utilities to build an application using a programming model with 32-bit int, long, pointer, and off_t types.

_CS_XBS5_ILP32_OFF32_LINTFLAGS

The set of options to be given to the lint utility to check application source using a programming model with 32-bit int, long, pointer, and off_t types.

_CS_XBS5_ILP32_OFFBIG_CFLAGS

The set of initial options to be given to the cc and c89 utilities to build an application using a programming model with 32-bit int, long, and pointer types, and an off_t type using at least 64-bits.

_CS_XBS5_ILP32_OFFBIG_LDFLAGS

The set of final options to be given to the cc and c89 utilities to build an application using a programming model with 32-bit int, long, and pointer types, and an off_t type using at least 64-bits.

_CS_XBS5_ILP32_OFFBIG_LIBS

The set of libraries to be given to the cc and c89 utilities to build an application using a programming model with 32-bit int, long, and pointer types, and an off_t type using at least 64-bits.

_CS_XBS5_ILP32_OFFBIG_LINTFLAGS

The set of options to be given to the lint utility to check application source using a programming model with 32-bit int, long, and pointer types, and an off_t type using at least 64-bits.

_CS_XBS5_LP64_OFF64_CFLAGS

The set of initial options to be given to the cc and c89 utilities to build an application using a programming model with 32-bit int, and 64-bit long, pointer, and off_t types.

_CS_XBS5_LP64_OFF64_LDFLAGS

The set of final options to be given to the cc and c89 utilities to build an application using a programming model with 32-bit int, and 64-bit long, pointer, and off_t types.

_CS_XBS5_LP64_OFF64_LIBS

The set of libraries to be given to the cc and c89 utilities to build an application using a programming model with 32-bit int, and 64-bit long, pointer, and off_t types.

_CS_XBS5_LP64_OFF64_LINTFLAGS

The set of options to be given to the lint utility to check application source using a programming model with 32-bit int, and 64-bit long, pointer, and off_t types.

_CS_XBS5_LPBIG_OFFBIG_CFLAGS

The set of initial options to be given to the cc and c89 utilities to build an application using a programming model with an int type using 32 bits and long, pointer, and off_t types using at least 64-bits.

_CS_XBS5_LPBIG_OFFBIG_LDFLAGS

The set of libraries to be given to the cc and c89 utilities to build an application using a programming model with an int type using 32 bits and long, pointer, and off_t types using at least 64-bits.

_CS_XBS5_LPBIG_OFFBIG_LIBS

The set of libraries to be given to the cc and c89 utilities to build an application using a programming model with an int type using 32 bits and long, pointer, and off_t types using at least 64-bits.

_CS_XBS5_LPBIG_OFFBIG_LINTFLAGS

The set of options to be given to the lint utility to check application source using a programming model with an int type using 32 bits and long, pointer, and off_t types using at least 64-bits.

_CS_POSIX_V6_ILP32_OFF32_CFLAGS

The set of initial options to be given to the c99 utility to build an application using a programming model with 32-bit int, long, pointer, and off_t types.

_CS_POSIX_V6_ILP32_OFF32_LDFLAGS

The set of final options to be given to the c99 utility to build an application using a programming model with 32-bit int, long, pointer, and off_t types.

_CS_POSIX_V6_ILP32_OFF32_LIBS

The set of libraries to be given to the c99 utility to build an application using a programming model with 32-bit int, long, pointer, and off_t types.

_CS_POSIX_V6_ILP32_OFFBIG_CFLAGS

The set of initial options to be given to the c99 utility to build an application using a programming model with 32-bit int, long, and pointer types, and an off_t type using at least 64 bits.

_CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS

The set of final options to be given to the c99 utility to build an application using a programming model with 32-bit int, long, and pointer types, and an off_t type using at least 64 bits.

_CS_POSIX_V6_ILP32_OFFBIG_LIBS

The set of libraries to be given to the c99 utility to build an application using a programming model with 32-bit int, long, and pointer types, and an off_t type using at least 64 bits.

.CR_CS_POSIX_V6_LP64_OFF64_CFLAGS

The set of initial options to be given to the c99 utility to build an application using a programming model with 32-bit int and 64-bit long, pointer, and off_t types.

_CS_POSIX_V6_LP64_OFF64_LDFLAGS

The set of final options to be given to the c99 utility to build an application using a programming model with 32-bit int and 64-bit long, pointer, and off_t types.

_CS_POSIX_V6_LP64_OFF64_LIBS

The set of libraries to be given to the c99 utility to build an application using a programming model with 32-bit int and 64-bit long, pointer, and off_t types.

_CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS

The set of initial options to be given to the c99 utility to build an application using a programming model with an int type using at least 32 bits and long, pointer, and off_t types using at least 64 bits.

_CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS

The set of final options to be given to the c99 utility to build an application using a programming model with an int type using at least 32 bits and long, pointer, and off_t types using at least 64 bits.

_CS_POSIX_V6_LPBIG_OFFBIG_LIBS

The set of libraries to be given to the c99 utility to build an application using a programming model with an int type using at least 32 bits and long, pointer, and off_t types using at least 64 bits.

_CS_POSIX_V6_WIDTH_RESTRICTED_ENVS

This value is a <newline>-separated list of names of programming environments supported by the implementation in which the widths of the blksize_t, cc_t, mode_t, nfds_t, pid_t, ptrdiff_t, size_t, speed_t, ssize_t, suseconds_t, tcflag_t, useconds_t, wchar_t, and wint_t types are no greater than the width of type long.

If len is not zero, and if name is known and has a configuration-defined value, confstr() copies that value into the len-byte buffer pointed to by buf. If the string to be returned is longer than len bytes, including the terminating null, confstr() truncates the string to len-1 bytes and null-terminates the result. The application can detect that the string was truncated by comparing the value returned by confstr() with len.

If len is zero and buf is NULL, confstr() returns the integer value as defined below, but does not return a string. If len is zero but buf is not NULL, the result is unspecified.

RETURN VALUE

If name is invalid, confstr() returns zero and sets errno to EINVAL.

If name does not have a configuration-defined value, confstr() returns 0 (zero) and leaves errno unchanged.

If name has a configuration-defined value, confstr() returns the size of buffer that would be needed to hold the entire configuration-defined value. If this return value is less than len, the string returned in buf has been truncated.

EXAMPLES

The following code fragment calls confstr() to determine the correct buffer size for _CS_PATH, allocates space for this buffer, then gets the configuration value for _CS_PATH.

#include <unistd.h> #include <stddef.h> size_t bufsize; char *buffer; bufsize=confstr(_CS_PATH,NULL,(size_t)0); buffer=(char *)malloc(bufsize); confstr(_CS_PATH,buffer,bufsize);

AUTHOR

confstr() was developed by HP.

FILES

/usr/include/unistd.h

symbolic contants and structures used for support of the /usr/group standard

STANDARDS CONFORMANCE

confstr(): XPG4, POSIX.2

Printable version
Privacy statement Using this site means you accept its terms Feedback to webmaster
© 1983-2007 Hewlett-Packard Development Company, L.P.