dup man page on Minix

Man page or keyword search:  
man Server   6208 pages
apropos Keyword Search (all sections)
Output format
Minix logo
[printable version]

DUP(2)									DUP(2)

NAME
       dup, dup2 - duplicate a descriptor

SYNOPSIS
       #include <unistd.h>

       int dup(int oldd)
       int dup2(int oldd, int newd)

DESCRIPTION
       Dup  duplicates	an  existing descriptor.  The argument oldd is a small
       non-negative integer index in the per-process  descriptor  table.   The
       value  must  be	less  than  OPEN_MAX,  the size of the table.  The new
       descriptor returned by the call, let's name it newd, is the lowest num‐
       bered descriptor that is not currently in use by the process.

       The  object  referenced	by the descriptor does not distinguish between
       references using oldd and newd in any way.  Thus if newd and  oldd  are
       duplicate  references  to  an open file, read(2), write(2) and lseek(2)
       calls all move a single pointer into the file, and  append  mode,  non-
       blocking I/O and asynchronous I/O options are shared between the refer‐
       ences.  If a separate pointer into the file  is	desired,  a  different
       object  reference to the file must be obtained by issuing an additional
       open(2) call.  The close-on-exec flag on the  new  file	descriptor  is
       unset.

       In the second form of the call, the value of newd desired is specified.
       If this descriptor is already in use, the descriptor is	first  deallo‐
       cated as if a close(2) call had been done first.	 Newd is not closed if
       it equals oldd.

RETURN VALUE
       The value -1 is returned if an error occurs in either call.  The exter‐
       nal variable errno indicates the cause of the error.

ERRORS
       Dup and dup2 fail if:

       [EBADF]	      Oldd or newd is not a valid active descriptor

       [EMFILE]	      Too many descriptors are active.

NOTES
       Dup  and	 dup2  are  now	 implemented  using  the  F_DUPFD  function of
       fcntl(2), although the old system call interfaces still exist  to  sup‐
       port old programs.

SEE ALSO
       open(2), close(2), fcntl(2), pipe(2).

4th Berkeley Distribution	 May 13, 1986				DUP(2)
[top]

List of man pages available for Minix

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net