[comp.os.os2.programmer] DosDevIOCtl call in OS/2

dnater@verity.com (Dan Nater) (03/27/91)

I've set up a program that executes a child process and grabs
its STDIN and STDOUT by using anonymous pipes.  I need to have
NON-BLOCKING reads to make this program usable.  When I try to
use the DosDevIOCtl call to make reads non-blocking I do the
following:


	DosDevIOCtl(&mydcbstruct, 0L, 0x0073, 0x0001, mypipeHandle);

         /* set the appropriate bits in the retreived mydcbstruct */

	DosDevIOCtl(0L, mydcbstruct, 0x0053, 0x0001, mypipeHandle);


Unfortunately, these DosDevIOCtl calls return an error of 1.  Which
implies an INVALID FUNCTION (the function is specified by 0x0073 and
0x0053 respectively).  These values are right out of the OS2 documentation.

I'm using OS/2  version 1.2.  Does anyone know why this is not working?
Are the values listed in the OS/2  manuals incorrect?  Did something 
change to make this call invalid on version 1.2?   Is there an alternative
way to get non-blocking reads? 

Any suggestions would be appreciated.

		Thanks, 
	
		Mike Frumkin (mfrumkin@verity.com)

--
*****************************************
What the fuck is going on here???
*****************************************