dup, dup2

Allocate a new descriptor that refers to a file specified by a file descriptor returned by open, creat, or pipe.

Format

#include  <unistd.h>

int dup  (int file_desc1);

int dup2  (int file_desc1, int file_desc2);

Arguments

file_desc1
The file descriptor being duplicated.
file_desc2
The new file descriptor to be assigned to the file designated by file_desc1.

Description

The dup function causes a previously unallocated descriptor to refer to its argument, while the dup2 function causes its second argument to refer to the same file as its first argument.

The argument file_desc1 is invalid if it does not describe an open file; file_desc2 is invalid if the new file descriptor cannot be allocated. If file_desc2 is connected to an open file, that file is closed.

Return Values
The new file descriptor. 
-1  Indicates that an invalid argument was passed to the function. 


Previous Page | Next Page | Table of Contents | Index