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

spt_dup2x(2) OSS System Calls Ref
erence Manual
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 occur, 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 open le descriptors 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 the backup process took over.
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.
For more information about a specic Guardian le-system error, see the Guardian Procedure
Errors and Messages Manual.
7110 Hewlett-Packard Company 527186-007