]> gcc.gnu.org Git - gcc.git/blame - libf2c/libU77/ttynam_.c
fix ttynam for no-ttynam case
[gcc.git] / libf2c / libU77 / ttynam_.c
CommitLineData
81fea2b1
JL
1/* Copyright (C) 1995, 1996 Free Software Foundation, Inc.
2This file is part of GNU Fortran libU77 library.
3
4This library is free software; you can redistribute it and/or modify it
5under the terms of the GNU Library General Public License as published
6by the Free Software Foundation; either version 2 of the License, or
7(at your option) any later version.
8
9GNU Fortran is distributed in the hope that it will be useful,
10but WITHOUT ANY WARRANTY; without even the implied warranty of
11MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12Library General Public License for more details.
13
14You should have received a copy of the GNU Library General Public
15License along with GNU Fortran; see the file COPYING.LIB. If
16not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
17Boston, MA 02111-1307, USA. */
18
19#ifdef HAVE_CONFIG_H
20#include "config.h"
21#endif
22#include <sys/types.h>
23#if STDC_HEADERS
24# include <stdlib.h>
25#endif
26#if HAVE_UNISTD_H
27# include <unistd.h> /* POSIX for ttyname */
28#endif
29#include <stdio.h>
30#if HAVE_STRING_H
31# include <string.h>
32#else
33# include <strings.h>
34#endif
35#include <errno.h> /* for ENOSYS */
36#include "f2c.h"
37
38#ifdef KR_headers
39extern void s_copy ();
40extern integer G77_fnum_0 ();
41/* Character */ void G77_ttynam_0 (ret_val, ret_val_len, lunit)
42 char *ret_val; ftnlen ret_val_len; integer *lunit
43#else
44extern integer G77_fnum_0 (integer *lunit);
45extern void s_copy(register char *a, register char *b, ftnlen la, ftnlen lb);
46/* Character */ void G77_ttynam_0 (char *ret_val, ftnlen ret_val_len, integer *lunit)
47#endif
48{
49#if defined (HAVE_TTYNAME)
50 size_t i;
51 char *p;
52
53 p = ttyname (G77_fnum_0 (lunit));
54 if (p != NULL) {
55 i = strlen (p);
56 s_copy (ret_val, p, ret_val_len, i);
57 } else {
58 s_copy (ret_val, " ", ret_val_len, 1);
59 }
60#else
61 errno = ENOSYS;
749f840d 62 s_copy (ret_val, " ", ret_val_len, 1);
81fea2b1
JL
63#endif
64}
This page took 0.099155 seconds and 5 git commands to generate.