Open System Services System Calls Reference Manual (G06.28+)

System Functions (s and S) spt_dup2x(2)
NOTES
The macro to map dup2( ) to spt_dup2x() is available in C applications when
SPT_THREAD_AWARE_NONBLOCK
has been dened in the following manner before
including spthread.h:
#dene SPT_THREAD_AWARE_NONBLOCK
The alias to link dup2( ) to spt_dup2x() is available in C++ applications when
SPT_THREAD_AWARE_PRAGMA_NONBLOCK
has been dened in the following manner
before including spthread.h:
#dene SPT_THREAD_AWARE_PRAGMA_NONBLOCK
The spt_dup2x() function provides an alternative interface to the service provided by the
spt_fcntlx( ) function by using the F_DUPFD value of the request parameter. The call:
fid = spt_dup2x( file1, file2 );
is equivalent to:
close( file2 );
fid = spt_fcntlx( file1, F_DUPFD, file2 );
RETURN VALUES
Upon successful completion, the spt_dup2x( ) function returns a new le descriptor. Otherwise,
the value -1 is returned, and errno is set to indicate the error.
ERRORS
If any of these conditions occurs, the spt_dup2x( ) function sets errno to the corresponding
value:
[EBADF] One of these conditions exists:
The ledes parameter is not a valid open le descriptor.
The new parameter le descriptor is negative or greater than the max-
imum number of opens permitted.
[EISGUARDIAN]
The value used for the ledes parameter is appropriate only in the Guardian
environment.
[EWRONGID] One of these conditions occurred:
The process attempted an operation on an input/output process (such as a
terminal server process) that has failed or is in the down state.
The processor for the disk process of the specied le failed during an
input or output operation, and takeover by the backup process occurred.
The open le descriptor has migrated to a new processor, but the new
processor lacks a resource or system process needed for using the le
descriptor.
The le descriptor specied by the ledes parameter can only be closed.
For all other error conditions, errno is set to the appropriate Guardian le-system error number.
See the Guardian Procedure Errors and Messages Manual for more information about a specic
Guardian le-system error.
527186-005 Hewlett-Packard Company 7107