Re: OpenTransport behaviour under X
Re: OpenTransport behaviour under X
- Subject: Re: OpenTransport behaviour under X
- From: Marc Stibane <email@hidden>
- Date: Mon, 3 Nov 2003 15:04:27 +0100
>
Guys, thanks for the answers. I think I will just replace all calls to
>
OTLook with calls to a function which keeps returning T_DATA (after
>
successfully reading the first bytes of the answer) until the first error.
It gets worse.
Not only does OTLook return 0 (instead of T_DATA which it did under MacOS
9) when there is still unread data in its buffer, it also keeps returning
0 though I've sent another command and my RIP answered with another
packet.
1a. send command to RIP -> RIP answers (8bytes)
1b. OTLook returns T_DATA once
1c. read exactly 8 bytes so ALL bytes have been read from OT buffer
2a. send next command to RIP -> RIP answers
2b. OTLook returns 0 though new data arrived
It seems, I have to insert
1d. try to read from empty buffer (though I know it's empty)
until OTRcv returns kOTNoDataErr
to make OTLook return T_DATA in step 2b.
But the code is running synchronous/blocking. Doesn't OTRcv just block
and wait until new data arrives? I mean, that's exactly why I call OTLook
at all, to find out if it's save to call OTRcv afterwards.
I would call this behaviour a bug. When new data arrives, OTLook should
return T_DATA.
Marc Stibane
Fesh! email@hidden
Kurf|rstenstr. 154 tel +49-30-3990 2690
10785 Berlin, Germany mobil +49-173-6522 422
In a world without walls and fences,
who needs windows and gates?
_______________________________________________
macnetworkprog mailing list | email@hidden
Help/Unsubscribe/Archives:
http://www.lists.apple.com/mailman/listinfo/macnetworkprog
Do not post admin requests to the list. They will be ignored.