Use to determine whether or not all out-of-band data has been read. (See section Windows Sockets 1.1 Blocking Routines & EINPROGRESS for a discussion on Out of Band (OOB) data.) This applies only to a stream oriented socket (for example, type SOCK_STREAM) that has been configured for in-line reception of any out-of-band data (SO_OOBINLINE). If no out-of-band data is waiting to be read, the operation returns TRUE. Otherwise, it returns FALSE, and the next recv or recvfrom performed on the socket will retrieve some or all of the data preceding the "mark." The application should use the SIOCATMARK operation to determine whether any data remains. If there is any normal data preceding the "urgent" (out of band) data, it will be received in order. (A recv or recvfrom will never mix out-of-band and normal data in the same call.) The argp parameter points to an unsigned long value in which ioctlsocket stores the boolean result.
Const SIOCATMARK = &H40047307