read.c (165906) | read.c (276079) |
---|---|
1/* $NetBSD: read.c,v 1.8 1997/01/22 00:38:12 cgd Exp $ */ 2 3/*- 4 * Copyright (c) 1993 5 * The Regents of the University of California. All rights reserved. 6 * 7 * This code is derived from software contributed to Berkeley by 8 * The Mach Operating System project at Carnegie-Mellon University. --- 47 unchanged lines hidden (view full) --- 56 * Carnegie Mellon University 57 * Pittsburgh PA 15213-3890 58 * 59 * any improvements or extensions that they make and grant Carnegie the 60 * rights to redistribute these changes. 61 */ 62 63#include <sys/cdefs.h> | 1/* $NetBSD: read.c,v 1.8 1997/01/22 00:38:12 cgd Exp $ */ 2 3/*- 4 * Copyright (c) 1993 5 * The Regents of the University of California. All rights reserved. 6 * 7 * This code is derived from software contributed to Berkeley by 8 * The Mach Operating System project at Carnegie-Mellon University. --- 47 unchanged lines hidden (view full) --- 56 * Carnegie Mellon University 57 * Pittsburgh PA 15213-3890 58 * 59 * any improvements or extensions that they make and grant Carnegie the 60 * rights to redistribute these changes. 61 */ 62 63#include <sys/cdefs.h> |
64__FBSDID("$FreeBSD: head/lib/libstand/read.c 165906 2007-01-09 01:02:06Z imp $"); | 64__FBSDID("$FreeBSD: head/lib/libstand/read.c 276079 2014-12-22 20:42:36Z ian $"); |
65 66#include <sys/param.h> 67#include "stand.h" 68 69ssize_t 70read(int fd, void *dest, size_t bcount) 71{ 72 struct open_file *f = &files[fd]; 73 size_t resid; 74 75 if ((unsigned)fd >= SOPEN_MAX || !(f->f_flags & F_READ)) { 76 errno = EBADF; 77 return (-1); 78 } 79 if (f->f_flags & F_RAW) { | 65 66#include <sys/param.h> 67#include "stand.h" 68 69ssize_t 70read(int fd, void *dest, size_t bcount) 71{ 72 struct open_file *f = &files[fd]; 73 size_t resid; 74 75 if ((unsigned)fd >= SOPEN_MAX || !(f->f_flags & F_READ)) { 76 errno = EBADF; 77 return (-1); 78 } 79 if (f->f_flags & F_RAW) { |
80 twiddle(); | 80 twiddle(4); |
81 errno = (f->f_dev->dv_strategy)(f->f_devdata, F_READ, 82 btodb(f->f_offset), bcount, dest, &resid); 83 if (errno) 84 return (-1); 85 f->f_offset += resid; 86 return (resid); 87 } 88 --- 39 unchanged lines hidden --- | 81 errno = (f->f_dev->dv_strategy)(f->f_devdata, F_READ, 82 btodb(f->f_offset), bcount, dest, &resid); 83 if (errno) 84 return (-1); 85 f->f_offset += resid; 86 return (resid); 87 } 88 --- 39 unchanged lines hidden --- |