Annotation of Gnu-Mach/include/device/device_reply.defs, revision 1.1.1.3

1.1.1.2   root        1: /*
1.1       root        2:  * Mach Operating System
                      3:  * Copyright (c) 1991,1990,1989 Carnegie Mellon University
                      4:  * All Rights Reserved.
1.1.1.2   root        5:  *
1.1       root        6:  * Permission to use, copy, modify and distribute this software and its
                      7:  * documentation is hereby granted, provided that both the copyright
                      8:  * notice and this permission notice appear in all copies of the
                      9:  * software, derivative works or modified versions, and any portions
                     10:  * thereof, and that both notices appear in supporting documentation.
1.1.1.2   root       11:  *
1.1       root       12:  * CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS "AS IS"
                     13:  * CONDITION.  CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND FOR
                     14:  * ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE.
1.1.1.2   root       15:  *
1.1       root       16:  * Carnegie Mellon requests users of this software to return to
1.1.1.2   root       17:  *
1.1       root       18:  *  Software Distribution Coordinator  or  [email protected]
                     19:  *  School of Computer Science
                     20:  *  Carnegie Mellon University
                     21:  *  Pittsburgh PA 15213-3890
1.1.1.2   root       22:  *
1.1       root       23:  * any improvements or extensions that they make and grant Carnegie Mellon
                     24:  * the rights to redistribute these changes.
                     25:  */
                     26: /*
                     27:  *     Author: David B. Golub, Carnegie Mellon University
                     28:  *     Date:   8/89
                     29:  *
                     30:  *     Reply-only side of device interface.
                     31:  */
                     32: 
                     33: subsystem
                     34: #if    KERNEL_USER
                     35:          KernelUser
                     36: #endif
                     37:                     device_reply 2900;
                     38:                                /* to match reply numbers for device.defs */
                     39: 
                     40: /*
                     41:  * Device_write_reply (only user of this data type) deallocates
                     42:  * the data.
                     43:  */
                     44: 
                     45: 
                     46: #include <mach/std_types.defs>
                     47: #include <device/device_types.defs>
                     48: 
                     49: userprefix     ds_;
                     50: 
                     51: #if    SEQNOS
                     52: serverprefix seqnos_;
                     53: serverdemux seqnos_device_reply_server;
1.1.1.2   root       54: #endif /* SEQNOS */
1.1       root       55: 
                     56: type reply_port_t = polymorphic|MACH_MSG_TYPE_PORT_SEND_ONCE
1.1.1.3 ! root       57:        ctype: mach_port_t
        !            58: #ifndef        KERNEL_SERVER
        !            59: #ifdef MACH_PAYLOAD_TO_PORT
        !            60:        intranpayload: mach_port_t MACH_PAYLOAD_TO_PORT
        !            61: #endif /* MACH_PAYLOAD_TO_PORT */
        !            62: #endif /* KERNEL_SERVER */
        !            63: ;
1.1       root       64: 
                     65: simpleroutine  device_open_reply(
                     66:            reply_port          : reply_port_t;
                     67: #if    SEQNOS
                     68:        msgseqno seqno          : mach_port_seqno_t;
1.1.1.2   root       69: #endif /* SEQNOS */
1.1       root       70:        in  return_code         : kern_return_t;
                     71:        in  device_port         : mach_port_make_send_t
                     72:        );
                     73: 
                     74: skip;  /* device_close */
                     75: 
                     76: simpleroutine  device_write_reply(
                     77:            reply_port          : reply_port_t;
                     78: #if    SEQNOS
                     79:        msgseqno seqno          : mach_port_seqno_t;
1.1.1.2   root       80: #endif /* SEQNOS */
1.1       root       81:        in  return_code         : kern_return_t;
                     82:        in  bytes_written       : int
                     83:        );
                     84: 
                     85: simpleroutine  device_write_reply_inband(
                     86:            reply_port          : reply_port_t;
                     87: #if    SEQNOS
                     88:        msgseqno seqno          : mach_port_seqno_t;
1.1.1.2   root       89: #endif /* SEQNOS */
1.1       root       90:        in  return_code         : kern_return_t;
                     91:        in  bytes_written       : int
                     92:        );
                     93: 
                     94: simpleroutine  device_read_reply(
                     95:            reply_port          : reply_port_t;
                     96: #if    SEQNOS
                     97:        msgseqno seqno          : mach_port_seqno_t;
1.1.1.2   root       98: #endif /* SEQNOS */
1.1       root       99:        in  return_code         : kern_return_t;
                    100:        in  data                : io_buf_ptr_t, dealloc
                    101:        );
                    102: 
                    103: simpleroutine  device_read_reply_inband(
                    104:            reply_port          : reply_port_t;
                    105: #if    SEQNOS
                    106:        msgseqno seqno          : mach_port_seqno_t;
1.1.1.2   root      107: #endif /* SEQNOS */
1.1       root      108:        in  return_code         : kern_return_t;
                    109:        in  data                : io_buf_ptr_inband_t
                    110:        );

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.