revert between 56095 -> 55830 in arch
[AROS.git] / compiler / alib / createextio.c
blobd0d4cac6a5bdf5ec52454af1d734a3e5619b4279
1 /*
2 Copyright © 1995-2014, The AROS Development Team. All rights reserved.
3 $Id$
5 Desc:
6 Lang: english
7 */
9 #include <exec/memory.h>
10 #include <proto/exec.h>
12 /*****************************************************************************
14 NAME */
15 #include <exec/io.h>
16 #include <proto/alib.h>
18 struct IORequest * CreateExtIO(
20 /* SYNOPSIS */
21 struct MsgPort * port,
22 ULONG iosize)
24 /* FUNCTION
25 Create an extended IORequest structure. This structure must be freed
26 with DeleteExtIO().
28 INPUTS
29 port - MsgPort to be signaled on events. May be NULL, in which case
30 no IORequest is allocated.
31 iosize - Size of the structure
33 RESULT
34 A pointer to the new IORequest structure, or NULL.
36 NOTES
38 EXAMPLE
40 BUGS
42 SEE ALSO
43 CreateStdIO(), DeleteExtIO(), DeleteStdIO()
45 INTERNALS
47 ******************************************************************************/
49 struct IORequest *ioreq=NULL;
51 if (port && (ioreq = AllocMem(iosize, MEMF_CLEAR|MEMF_PUBLIC)))
53 /* Initialize the structure */
54 ioreq->io_Message.mn_Node.ln_Type = NT_MESSAGE;
55 ioreq->io_Message.mn_ReplyPort = port;
56 ioreq->io_Message.mn_Length = iosize;
59 return ioreq;