Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ dup(2) — NEWS-os 5.0.1

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

close(2)

creat(2)

exec(2)

fcntl(2)

getrlimit(2)

open(2)

pipe(2)

dup2(3C)

lockf(3C)



dup(2)                    SYSTEM CALLS                     dup(2)



NAME
     dup - duplicate an open file descriptor

SYNOPSIS
     #include <unistd.h>

     int dup(int fildes);

DESCRIPTION
     fildes is a file descriptor obtained  from  a  creat,  open,
     dup,  fcntl,  or  pipe  system call.  dup returns a new file
     descriptor having the following in common with the original:

          Same open file (or pipe).

          Same file pointer (i.e., both  file  descriptors  share
          one file pointer).

          Same access mode (read, write or read/write).

     The new file descriptor is set to remain  open  across  exec
     system calls [see fcntl(2)].

     The file descriptor returned is the lowest one available.

     dup will fail if one or more of the following are true:

     EBADF          fildes is not a valid open file descriptor.

     EINTR          A signal was caught  during  the  dup  system
                    call.

     EMFILE         The process has  too  many  open  files  [see
                    getrlimit(2)].

     ENOLINK        fildes is on a remote machine and the link to
                    that machine is no longer active.

SEE ALSO
     close(2),   creat(2),   exec(2),   fcntl(2),   getrlimit(2),
     open(2), pipe(2), dup2(3C), lockf(3C).

DIAGNOSTICS
     Upon successful completion a  non-negative  integer,  namely
     the  file descriptor, is returned.  Otherwise, a value of -1
     is returned and errno is set to indicate the error.









                                                                1



Typewritten Software • bear@typewritten.org • Edmonds, WA 98026