Part of twisted.pair.tuntap View Source View In Hierarchy
TODO: Share general start/stop etc implementation details with twisted.internet.udp.Port.
| Method | __init__ | Undocumented |
| Method | __repr__ | Undocumented |
| Method | startListening | Create and bind my socket, and begin listening on it. |
| Method | fileno | File Descriptor number for select(). |
| Method | doRead | Called when my socket is ready for reading. |
| Method | write | Write a datagram. |
| Method | writeSequence | Reliably write a sequence of data. |
| Method | loseConnection | Stop accepting connections on this port. |
| Method | connectionLost | Cleans up my socket. |
| Method | setLogStr | Undocumented |
| Method | logPrefix | Returns the name of my class, to prefix log entries with. |
| Method | getHost | Returns a tuple of ('TUNTAP', interface), indicating the servers address |
| Method | _bindSocket | Undocumented |
| Method | _connectToProtocol | Undocumented |
Inherited from BasePort:
| Method | createInternetSocket | Undocumented |
| Method | doWrite | Raises a RuntimeError |
Inherited from FileDescriptor (via BasePort):
| Method | writeSomeData | Write as much as possible of the given data, immediately. |
| Method | writeConnectionLost | Indicates write connection was lost. |
| Method | readConnectionLost | Indicates read connection was lost. |
| Method | loseWriteConnection | Undocumented |
| Method | stopReading | Stop waiting for read availability. |
| Method | stopWriting | Stop waiting for write availability. |
| Method | startReading | Start waiting for read availability. |
| Method | startWriting | Start waiting for write availability. |
| Method | stopConsuming | Stop consuming data. |
| Method | resumeProducing | Resume producing data. |
| Method | pauseProducing | Pause producing data. |
| Method | stopProducing | Undocumented |
| Method | _postLoseConnection | Called after a loseConnection(), when all data has been written. |
| Method | _closeWriteConnection | Undocumented |
| Method | _isSendBufferFull | Determine whether the user-space send buffer for this transport is full or not. |
| Method | _maybePauseProducer | Possibly pause a producer, if there is one and the send buffer is full. |
Inherited from _ConsumerMixin (via BasePort, FileDescriptor):
| Instance Variable | producer | None if no producer is registered, otherwise the registered
producer. |
| Instance Variable | producerPaused | A flag indicating whether the producer is currently paused. (type: bool or int) |
| Instance Variable | streamingProducer 0 | A flag indicating whether the producer was registered as a streaming (ie
push) producer or not (ie a pull producer). This will determine whether
the consumer may ever need to pause and resume it, or if it can merely call
resumeProducing on it when buffer space is available. |
| Instance Variable | streamingProducer | bool or int |
| Method | registerProducer | Register to receive data from a producer. |
| Method | unregisterProducer | Stop consuming data from a producer, without disconnecting. |
Inherited from _LogOwner (via BasePort, FileDescriptor):
| Method | _getLogPrefix | Determine the log prefix to use for messages related to
applicationObject, which may or may not be an interfaces.ILoggingContext
provider. |
This is called on unserialization, and must be called after creating a server to begin listening on the specified port.
This method must be overridden or assigned in subclasses to indicate a valid file descriptor for the operating system.
Currently, this is a convenience method roughly equivalent to:
for chunk in iovec:
fd.write(chunk)
It may have a more efficient implementation at a later time or in a different reactor.
As with the write() method, if a buffer size limit is
reached and a streaming producer is registered, it will be paused until the
buffered data is written to the underlying file descriptor.
This will shut down my socket and call self.connectionLost().