The following code illustrates the PDD ready to receive an empty buffer from the stream handler.
#include "os2.h" #include "os2me.h" #include "shdd.h" ULONG ulRC; /* Error return code */ HSTREAM hstream; /* Stream handle */ DDCMDREADWRITE ddcmdpb; /* Parameter block */ PDDCMDFN pddcmdfn; /* Pointer to DDCMD entry point */ PVOID pBuffer; /* Pointer to buffer */ . . . /*-------------------------------------------------------------------*/ /* Perform a read from the physical device driver. */ /*-------------------------------------------------------------------*/ ddcmdpb.ulFunction = DDCMD_READ; ddcmdpb.hstream = hstream; ddcmdpb.pBuffer = pBuffer; ddcmdpb.ulBufferSize = 32768; if (ulRC = pddcmdfn (&ddcmdpb)) return (ulRC); /* error!*/