Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

uswitch(2) [osf1 man page]

uswitch(2)							System Calls Manual							uswitch(2)

NAME
uswitch - Get or set compatibility environment specific behavior for a calling process through the uswitch value. SYNOPSIS
#include <sys/uswitch.h> long uswitch( long cmd, long mask ); PARAMETERS
Specifies the requested actions. The valid cmd values are: Returns the current uswitch value for the calling process. If mask is non-zero, it returns the status of specific uswitch bit-mask(s). Changes the current uswitch value for the calling process as specified by the mask bit-mask(s). The following bit-masks are valid when specified with either of the values for the cmd parameter: Specifies System V NULL pointer behavior. Specifies process requests enhanced core file naming. DESCRIPTION
The uswitch system call is used to get or change the compatibility environment specific behavior in Tru64 UNIX. Any changes affect the calling process and its children. When the USW_NULLP bit of uswitch is set to 1, the System V method of treating NULL pointers is applied. In this method, references to a NULL pointer always returns zero (0). When this bit-mask is reset to zero (0), subsequent references to a NULL pointer generate a segmen- tation violation signal (SIGSEGV). When the USW_CORE bit of uswitch is set to 1, the process requests enhanced core file naming. The bit-mask, when set, can be inherited when the process forks. The bit-mask is cleared when an exec system call is executed. See core(4) for more information about core files. Any write(2) references to NULL pointers generate a segmentation violation signal (SIGSEGV) regardless of the uswitch value. NOTES
Usage of this system call may make the application non-portable. RETURN VALUES
Upon successful completion, either the current or new uswitch value for mask is returned. Otherwise, a value of -1 is returned and errno is set to indicate the error. ERRORS
If the uswitch system call fails, the uswitch value remains unchanged and errno is set to the following: The mask is greater than USW_MAX or less than USW_MIN. EXAMPLES
The following code sample sets the bit mask for System V NULL pointer behavior: long uswitch_val; ... uswitch_val = uswitch(USC_GET,0); /* Gets current value*/ uswitch(USC_SET, uswitch_val | USW_NULLP); /* Sets USW_NULLP bit */ The following code sample sets the bit mask for enhanced core file names: long uswitch_val; ... uswitch_val = uswitch(USC_GET,0); /* Gets current value*/ uswitch(USC_SET, uswitch_val | USW_CORE); /* Sets USW_CORE bit */ uswitch(2)

Check Out this Related Man Page

string(3)						     Library Functions Manual							 string(3)

NAME
strcat, strcmp, strcpy, strdup - Perform operations on strings LIBRARY
Standard C Library (libc.so, libc.a) SYNOPSIS
#include <string.h> char *strcat( char *s1, const char *s2); int strcmp( const char *s1, const char *s2); char *strcpy( char *s1, const char *s2); char *strdup( const char *s1); STANDARDS
Interfaces documented on this reference page conform to industry standards as follows: strcat(), strcmp(), strcpy(): XSH4.2 strdup(): XSH4.2 Refer to the standards(5) reference page for more information about industry standards and associated tags. PARAMETERS
In strcat(), specifies the destination string for appending; in strcmp(), specifies the first of two strings to compare; in strcpy(), spec- ifies the destination string for the copying; and in strdup(), specifies the string to be duplicated. In strcat(), specifies the string to be appended to s1; in strcmp(), specifies the second of two strings to compare; and in strcpy(), specifies the source string for the copy- ing. Note [Tru64 UNIX] If you pass a NULL pointer as one of the const char * or char * parameters of a string manipulation function, the function generates a segmentation violation. To avoid the segmentation violation and cause the function to return zero, change the NULL pointer treatment for the process before issuing the call to the string manipulation function, as follows: Include the system header file sys/uswitch.h. Call the uswitch function, as described in the uswitch(2) reference page. The following program illustrates this procedure: #include <stdio.h> #include <sys/types.h> #include <sys/uswitch.h> main() { size_t retval; int uswitch_val; uswitch_val = uswitch(USC_GET,0); uswitch(USC_SET, uswitch_val | USW_NULLP); retval = strdup(NULL); DESCRIPTION
The strcat() function appends a copy of the string pointed to by the s2 parameter (including the terminating null byte) to the end of the string pointed to by the s1 parameter. The initial byte of s2 overwrites the null byte at the end of the string pointed to by s1. When operating on overlapping strings, the behavior of this function is unreliable. The strcmp() function compares the string pointed to by the s1 parameter to the string pointed to by the s2 parameter. The sign of a nonzero value returned by strcmp() is determined by the sign of the difference between the values of the first pair of bytes (both inter- preted as unsigned char) that differ in the two compared objects. The strcmp() function compares strings based on the machine collating order. It does not use the locale-dependent sorting order. Use the strcoll() or wcscoll() functions for locale-dependent sorting. The strcpy() function copies the string pointed to by the s2 parameter (including the terminating null byte) to the location pointed to by the s1 parameter. When operating on overlapping strings, the behavior of this function is unreliable. The strdup() function returns a pointer to a new string that is an exact duplicate of the string pointed to by the s1 parameter. The mal- loc() function is used to allocate space for the new string. RETURN VALUES
On successful completion, the strcat(), strcpy(), and strdup() functions return a pointer to the resulting string. Otherwise, these func- tions return a null pointer. The strdup() function sets errno to indicate the error. On successful completion, the strcmp() function returns an integer whose value is greater than, equal to, or less than 0 (zero), according to whether the s1 string is greater than, equal to, or less than the s2 string. ERRORS
If the strdup() function fails, errno may be set to the following value: Insufficient storage space is available. RELATED INFORMATION
Functions: malloc(3), memccpy(3), setlocale(3), strchr(3), strcoll(3), strlen(3), strncasecmp(3), strncat(3), strncmp(3), strncpy(3), strp- brk(3), strspn(3), strtok(3), strstr(3), strxfrm(3), swab(3), uswitch(2), wcscat(3), wcscmp(3), wcscpy(3) Standards: standards(5) delim off string(3)
Man Page