source: rtems/cpukit/libcsupport/src/dup2.c @ 9b4422a2

4.115
Last change on this file since 9b4422a2 was 9b4422a2, checked in by Joel Sherrill <joel.sherrill@…>, on 05/03/12 at 15:09:24

Remove All CVS Id Strings Possible Using a Script

Script does what is expected and tries to do it as
smartly as possible.

+ remove occurrences of two blank comment lines

next to each other after Id string line removed.

+ remove entire comment blocks which only exited to

contain CVS Ids

+ If the processing left a blank line at the top of

a file, it was removed.

  • Property mode set to 100644
File size: 925 bytes
Line 
1/*
2 *  dup2() - POSIX 1003.1b 6.2.1 Duplicate an Open File Descriptor
3 *
4 *  COPYRIGHT (c) 1989-1999.
5 *  On-Line Applications Research Corporation (OAR).
6 *
7 *  The license and distribution terms for this file may be
8 *  found in the file LICENSE in this distribution or at
9 *  http://www.rtems.com/license/LICENSE.
10 */
11
12#if HAVE_CONFIG_H
13#include "config.h"
14#endif
15
16#include <unistd.h>
17#include <fcntl.h>
18
19#include <rtems/libio_.h>
20
21int dup2(
22  int fildes,
23  int fildes2
24)
25{
26  int          status;
27  struct stat  buf;
28
29  /*
30   *  If fildes is not valid, then fildes2 should not be closed.
31   */
32
33  status = fstat( fildes, &buf );
34  if ( status == -1 )
35    return -1;
36
37  /*
38   *  If fildes2 is not valid, then we should not do anything either.
39   */
40
41  status = fstat( fildes2, &buf );
42  if ( status == -1 )
43    return -1;
44
45  /*
46   *  This fcntl handles everything else.
47   */
48
49  return fcntl( fildes, F_DUPFD, fildes2 );
50}
Note: See TracBrowser for help on using the repository browser.