1*bf2f9846Snonaka /* $NetBSD: unixdev.h,v 1.3 2012/01/18 23:12:21 nonaka Exp $ */ 2af901e68Snonaka /* $OpenBSD: unixdev.h,v 1.1 2005/05/24 20:38:20 uwe Exp $ */ 3af901e68Snonaka 4af901e68Snonaka /* 5af901e68Snonaka * Copyright (c) 1996 Michael Shalayeff 6af901e68Snonaka * All rights reserved. 7af901e68Snonaka * 8af901e68Snonaka * Redistribution and use in source and binary forms, with or without 9af901e68Snonaka * modification, are permitted provided that the following conditions 10af901e68Snonaka * are met: 11af901e68Snonaka * 1. Redistributions of source code must retain the above copyright 12af901e68Snonaka * notice, this list of conditions and the following disclaimer. 13af901e68Snonaka * 2. Redistributions in binary form must reproduce the above copyright 14af901e68Snonaka * notice, this list of conditions and the following disclaimer in the 15af901e68Snonaka * documentation and/or other materials provided with the distribution. 16af901e68Snonaka * 17af901e68Snonaka * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR 18af901e68Snonaka * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 19af901e68Snonaka * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 20af901e68Snonaka * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 21af901e68Snonaka * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 22af901e68Snonaka * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 23af901e68Snonaka * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 24af901e68Snonaka * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 25af901e68Snonaka * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 26af901e68Snonaka * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 27af901e68Snonaka * SUCH DAMAGE. 28af901e68Snonaka * 29af901e68Snonaka */ 30af901e68Snonaka 31af901e68Snonaka #ifndef _STAND_UNIXDEV_H_ 32af901e68Snonaka #define _STAND_UNIXDEV_H_ 33af901e68Snonaka 34af901e68Snonaka struct linux_timeval; 35af901e68Snonaka struct linux_stat; 36af901e68Snonaka 37af901e68Snonaka /* unixcons.c */ 38af901e68Snonaka #define CONSDEV_GLASS 0 39af901e68Snonaka #define CONSDEV_COM0 1 40af901e68Snonaka 41af901e68Snonaka void consinit(int, int); 42af901e68Snonaka int awaitkey(int, int); 43af901e68Snonaka 44af901e68Snonaka /* unixdev.c */ 45af901e68Snonaka int unixopen(struct open_file *, ...); 46*bf2f9846Snonaka int unixpathopen(struct open_file *, ...); 47af901e68Snonaka int unixclose(struct open_file *); 48af901e68Snonaka int unixioctl(struct open_file *, u_long, void *); 49af901e68Snonaka int unixstrategy(void *, int, daddr_t, size_t, void *, size_t *); 50af901e68Snonaka int sleep(int seconds); 51af901e68Snonaka 52af901e68Snonaka /* unixsys.S */ 53af901e68Snonaka extern int errno; 54af901e68Snonaka int uopen(const char *, int, ...); 55af901e68Snonaka int uread(int, void *, size_t); 56af901e68Snonaka int uwrite(int, void *, size_t); 57af901e68Snonaka int uioctl(int, u_long, void *); 58af901e68Snonaka int uclose(int); 59af901e68Snonaka off_t ulseek(int, off_t, int); 60af901e68Snonaka void uexit(int) __attribute__((noreturn)); 61af901e68Snonaka int uselect(int, fd_set *, fd_set *, fd_set *, struct linux_timeval *); 62af901e68Snonaka int ustat(const char *, struct linux_stat *); 63a612f0b6Snonaka int ufstat(int, struct linux_stat *); 64af901e68Snonaka int syscall(int, ...); 65af901e68Snonaka int __syscall(quad_t, ...); 66af901e68Snonaka 67af901e68Snonaka #endif /* _STAND_UNIXDEV_H_ */ 68