Differences From Artifact [aece4ad798]:
- File
src/OFStreamObserver.h
— part of check-in
[535c2d5d9b]
at
2011-09-19 16:22:23
on branch trunk
— Make using -[tryReadLine] + OFStreamObserver safe.
This makes it impossible for the developer to accidentally create a DoS.
When data has been received after calling -[tryReadLine] and the string
is still incomplete, -[streamIsReadyForReading:] will not be called
anymore until new data has been received, thus preventing spinning in a
loop. (user: js, size: 5199) [annotate] [blame] [check-ins using]
To Artifact [b87bb931e4]:
- File
src/OFStreamObserver.h
— part of check-in
[47caef4f8a]
at
2011-09-20 18:40:54
on branch trunk
— OFStreamObserver improvements.
* Make it possible to close a stream before the add/remove queue has
been processed.
* The actual implementations don't need to handle OFStreams now, but
get the file descriptor instead.
* Use an OFMutex instead of @synchronized. (user: js, size: 5276) [annotate] [blame] [check-ins using]
︙ | |||
23 24 25 26 27 28 29 30 31 32 33 34 35 36 | 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 | + + | # include <windows.h> # include <ws2tcpip.h> #endif @class OFStream; @class OFMutableArray; @class OFMutableDictionary; @class OFDataArray; @class OFMutex; /** * \brief A protocol that needs to be implemented by delegates for * OFStreamObserver. */ #ifndef OF_STREAM_OBSERVER_M @protocol OFStreamObserverDelegate <OFObject> |
︙ | |||
76 77 78 79 80 81 82 | 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 | - + + + | */ @interface OFStreamObserver: OFObject { OFMutableArray *readStreams; OFMutableArray *writeStreams; OFStream **FDToStream; size_t maxFD; |
︙ |