source: trunk/libs/newlib/src/libgloss/mep/read.c @ 555

Last change on this file since 555 was 444, checked in by satin@…, 7 years ago

add newlib,libalmos-mkh, restructure shared_syscalls.h and mini-libc

File size: 1.1 KB
Line 
1/* read.c -- read characters from file, with hook.
2 *
3 * Copyright (c) 2003  Red Hat, Inc. All rights reserved.
4 *
5 * This copyrighted material is made available to anyone wishing to use, modify,
6 * copy, or redistribute it subject to the terms and conditions of the BSD
7 * License.  This program is distributed in the hope that it will be useful,
8 * but WITHOUT ANY WARRANTY expressed or implied, including the implied
9 * warranties of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  A copy
10 * of this license is available at http://www.opensource.org/licenses. Any
11 * Red Hat trademarks that are incorporated in the source code or documentation
12 * are not subject to the BSD License and may only be used or replicated with
13 * the express permission of Red Hat, Inc.
14 */
15
16extern int __mep_read(int, unsigned char *, int);
17extern int _ioIn(void) __attribute__((weak));
18
19int
20read(int fd, unsigned char *buf, int count)
21{
22  if (fd == 0 && &_ioIn)
23    {
24      int c = 0;
25      while (c < count)
26        {
27          int ch = _ioIn();
28          *buf++ = ch;
29          if (ch == -1)
30            break;
31          c ++;
32        }
33      return c;
34    }
35  return __mep_read(fd, buf, count);
36}
Note: See TracBrowser for help on using the repository browser.