source: trunk/src/gcc/libf2c/libU77/getlog_.c@ 645

Last change on this file since 645 was 2, checked in by bird, 23 years ago

Initial revision

  • Property cvs2svn:cvs-rev set to 1.1
  • Property svn:eol-style set to native
  • Property svn:executable set to *
File size: 1.8 KB
Line 
1/* Copyright (C) 1995 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 HAVE_STDLIB_H
24# include <stdlib.h>
25#else
26# include <stdio.h>
27#endif
28#include <stdio.h>
29#if HAVE_UNISTD_H
30# include <unistd.h>
31#endif
32#if HAVE_STRING_H
33# include <string.h>
34#else
35# include <strings.h>
36#endif
37#include <errno.h> /* for ENOSYS */
38#include "f2c.h"
39
40/* getlogin not in svr1-3 */
41
42/* SGI also has character*(*) function getlog() */
43
44#ifdef KR_headers
45extern VOID s_copy ();
46/* Subroutine */ int G77_getlog_0 (str, Lstr)
47 char *str; ftnlen Lstr;
48#else
49extern void s_copy(register char *a, register char *b, ftnlen la, ftnlen lb);
50/* Subroutine */ int G77_getlog_0 (char *str, const ftnlen Lstr)
51#endif
52{
53 size_t i;
54 char *p;
55 int status;
56
57#if defined (HAVE_GETLOGIN)
58 p = getlogin ();
59 if (p != NULL) {
60 i = strlen (p);
61 s_copy (str, p, Lstr, i);
62 } else {
63 s_copy (str, " ", Lstr, 1);
64 }
65 status = 0;
66#else
67 errno = ENOSYS;
68 status = -1;
69#endif
70 return status;
71}
Note: See TracBrowser for help on using the repository browser.