Part of twisted.pair.tuntap View Source View In Hierarchy
A Port that reads and writes packets from/to a TUN/TAP-device.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||stopProducing||Stop producing data.|
|Method||_postLoseConnection||Called after a loseConnection(), when all data has been written.|
|Method||registerProducer||Register to receive data from a producer.|
|Method||unregisterProducer||Stop consuming data from a producer, without disconnecting.|
Create and bind my socket, and begin listening on it.This is called on unserialization, and must be called after creating a server to begin listening on the specified port.
File Descriptor number for select().This method must be overridden or assigned in subclasses to indicate a valid file descriptor for the operating system.
Reliably write a sequence of data.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.
Stop accepting connections on this port.This will shut down my socket and call self.connectionLost().