class documentation

class Client(_SendmsgMixin, tcp.BaseClient): (source)

Implements interfaces: twisted.internet.interfaces.IUNIXTransport

View In Hierarchy

A client for Unix sockets.
Method __init__
Method getHost Similar to getPeer, but returns an address describing this side of the connection.
Method getPeer Get the remote address of this connection.
Instance Variable addr Undocumented
Instance Variable connector Undocumented
Instance Variable realAddress Undocumented

Inherited from _SendmsgMixin:

Method doRead Calls {IProtocol.dataReceived} with all available data and IFileDescriptorReceiver.fileDescriptorReceived once for each received file descriptor in ancillary data.
Method sendFileDescriptor Queue the given file descriptor to be sent and start trying to send it.
Method writeSomeData Send as much of data as possible. Also send any pending file descriptors.
Method _ancillaryLevelSOLSOCKETTypeSCMRIGHTS Processes ancillary data with level SOL_SOCKET and type SCM_RIGHTS, indicating that the ancillary data payload holds file descriptors.
Method _isSendBufferFull Determine whether the user-space send buffer for this transport is full or not.
Instance Variable _fileDescriptorBufferSize An int giving the maximum number of file descriptors to accept and queue for sending before pausing the registered producer, if there is one.
Instance Variable _sendmsgQueue A list of int holding file descriptors which are currently buffered before being sent.
Instance Variable _writeSomeDataBase The class which provides the basic implementation of writeSomeData. Ultimately this should be a subclass of twisted.internet.abstract.FileDescriptor. Subclasses which mix in _SendmsgMixin must define this.

Inherited from BaseClient:

Method createInternetSocket (internal) Create a non-blocking socket using self.addressFamily, self.socketType.
Method doConnect Initiate the outgoing connection attempt.
Instance Variable connected Undocumented
Instance Variable logstr Undocumented
Instance Variable protocol Undocumented
Method _collectSocketDetails Clean up references to the socket and its file descriptor.
Method _connectDone This is a hook for when a connection attempt has succeeded.
Method _stopReadingAndWriting Implement the POSIX-ish (i.e. twisted.internet.interfaces.IReactorFDSet) method of detaching this socket from the reactor for _BaseBaseClient.
Instance Variable _base Connection, which is the base class of this class which has all of the useful file descriptor methods. This is used by _TLSServerMixin to call the right methods to directly manipulate the transport, as is necessary for writing TLS-encrypted bytes (whereas those methods on Server will go through another layer of TLS if it has been enabled).

Inherited from _BaseBaseClient (via BaseClient):

Method connectionLost No summary
Method failIfNotConnected Generic method called when the attempts to connect failed. It basically cleans everything it can: call connectionFailed, stop read and write, delete socket related members.
Method resolveAddress No summary
Method stopConnecting If a connection attempt is still outstanding (i.e. no connection is yet established), immediately stop attempting to connect.
Instance Variable addressFamily The address family constant (socket.AF_INET, socket.AF_INET6, socket.AF_UNIX) of the underlying socket of this client connection.
Instance Variable reactor The class pointed to by _commonConnection should set this attribute in its constructor.
Instance Variable socketType The socket type constant (socket.SOCK_STREAM or socket.SOCK_DGRAM) of the underlying socket.
Method _finishInit Called by subclasses to continue to the stage of initialization where the socket connect attempt is made.
Method _setRealAddress Set the resolved address of this _BaseBaseClient and initiate the connection attempt.
Class Variable _commonConnection Subclasses must provide this attribute, which indicates the Connection-alike class to invoke __init__ and connectionLost on.
Instance Variable _closeSocket Subclasses must implement in order to close the socket in response to a terminated connection attempt.
Instance Variable _requiresResolution A flag indicating whether the address of this client will require name resolution. True if the hostname of said address indicates a name that must be resolved by hostname lookup, False if it indicates an IP address literal.

Inherited from Connection (via BaseClient):

Method connectionLost See abstract.FileDescriptor.connectionLost().
Method doRead Calls self.protocol.dataReceived with all available data.
Method getHandle Return the socket for this connection.
Method getTcpKeepAlive Return if SO_KEEPALIVE is enabled.
Method getTcpNoDelay Return if TCP_NODELAY is enabled.
Method logPrefix Return the prefix to log with when I own the logging thread.
Method readConnectionLost Indicates read connection was lost.
Method setTcpKeepAlive Enable/disable SO_KEEPALIVE.
Method setTcpNoDelay Enable/disable TCP_NODELAY.
Method writeSomeData Write as much as possible of the given data to this TCP connection.
Instance Variable socket Undocumented
Method _closeWriteConnection Undocumented
Method _dataReceived Undocumented

Inherited from _TLSConnectionMixin (via BaseClient, Connection):

Class Variable TLS Undocumented

Inherited from FileDescriptor (via BaseClient, Connection):

Method doWrite Called when data can be written.
Method fileno File Descriptor number for select().
Method loseConnection Close the connection at the next available opportunity.
Method loseWriteConnection Undocumented
Method pauseProducing Pause producing data.
Method resumeProducing Resume producing data.
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 stopReading Stop waiting for read availability.
Method stopWriting Stop waiting for write availability.
Method write Reliably write some data.
Method writeConnectionLost Indicates write connection was lost.
Method writeSequence Reliably write a sequence of data.
Class Variable bufferSize Undocumented
Class Variable SEND_LIMIT Undocumented
Instance Variable dataBuffer Undocumented
Instance Variable disconnected Undocumented
Instance Variable disconnecting Undocumented
Instance Variable offset Undocumented
Instance Variable producer Undocumented
Instance Variable producerPaused Undocumented
Instance Variable reactor 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.
Method _postLoseConnection Called after a loseConnection(), when all data has been written.
Instance Variable _tempDataBuffer Undocumented
Instance Variable _tempDataLen Undocumented
Instance Variable _writeDisconnected Undocumented
Instance Variable _writeDisconnecting Undocumented

Inherited from _ConsumerMixin (via BaseClient, Connection, FileDescriptor):

Method registerProducer Register to receive data from a producer.
Method unregisterProducer Stop consuming data from a producer, without disconnecting.
Instance Variable streamingProducer bool or int

Inherited from _LogOwner (via BaseClient, Connection, FileDescriptor):

Method _getLogPrefix Determine the log prefix to use for messages related to applicationObject, which may or may not be an interfaces.ILoggingContext provider.

Inherited from _SocketCloser (via BaseClient, Connection):

Method _closeSocket Undocumented
Instance Variable _shouldShutdown Set to True if shutdown should be called before calling close on the underlying socket.

Inherited from _AbortingMixin (via BaseClient, Connection):

Method abortConnection Aborts the connection immediately, dropping any buffered data.
Instance Variable doWrite Undocumented
Instance Variable _aborting Set to True when abortConnection is called.
def __init__(self, filename, connector, reactor=None, checkPID=0): (source)
reactorAn IReactorFDSet provider which this descriptor will use to get readable and writeable event notifications. If no value is given, the global reactor will be used.
def getHost(self): (source)
Similar to getPeer, but returns an address describing this side of the connection.
An IAddress provider.
def getPeer(self): (source)

Get the remote address of this connection.

Treat this method with caution. It is the unfortunate result of the CGI and Jabber standards, but should not be considered reliable for the usual host of reasons; port forwarding, proxying, firewalls, IP masquerading, etc.

An IAddress provider.
addr = (source)


connector = (source)