Part of twisted.pair.tuntap View Source View In Hierarchy
TODO: Share general start/stop etc implementation details with twisted.internet.udp.Port.
|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||logPrefix||Returns the name of my class, to prefix log entries with.|
|Method||getHost||Returns a tuple of ('TUNTAP', interface), indicating the servers address|
Inherited from BasePort:
|Method||doWrite||Raises a RuntimeError|
|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||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||_postLoseConnection||Called after a loseConnection(), when all data has been written.|
|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.|
|Instance Variable||producerPaused||A flag indicating whether the producer is currently paused. (type:
|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
|Method||registerProducer||Register to receive data from a producer.|
|Method||unregisterProducer||Stop consuming data from a producer, without disconnecting.|
|Method||_getLogPrefix||Determine the log prefix to use for messages related to
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().