kdecore Library API Documentation

KNetwork::KSocksSocketDevice Class Reference

The low-level class for SOCKS proxying. More...

#include <ksockssocketdevice.h>

Inheritance diagram for KNetwork::KSocksSocketDevice:

KNetwork::KSocketDevice KNetwork::KActiveSocketBase KNetwork::KPassiveSocketBase QIODevice KNetwork::KSocketBase KNetwork::KSocketBase List of all members.

Public Member Functions

 KSocksSocketDevice (const KSocketBase *=0L)
 KSocksSocketDevice (int fd)
virtual ~KSocksSocketDevice ()
virtual int capabilities () const
virtual bool bind (const KResolverEntry &address)
virtual bool listen (int backlog)
virtual bool connect (const KResolverEntry &address)
virtual KSocksSocketDeviceaccept ()
virtual Q_LONG readBlock (char *data, Q_ULONG maxlen)
virtual Q_LONG readBlock (char *data, Q_ULONG maxlen, KSocketAddress &from)
virtual Q_LONG peekBlock (char *data, Q_ULONG maxlen)
virtual Q_LONG peekBlock (char *data, Q_ULONG maxlen, KSocketAddress &from)
virtual Q_LONG writeBlock (const char *data, Q_ULONG len)
virtual Q_LONG writeBlock (const char *data, Q_ULONG len, const KSocketAddress &to)
virtual KSocketAddress localAddress () const
virtual KSocketAddress peerAddress () const
virtual KSocketAddress externalAddress () const
virtual bool poll (bool *input, bool *output, bool *exception=0L, int timeout=-1, bool *timedout=0L)

Friends

class KSocketDevice

Detailed Description

The low-level class for SOCKS proxying.

This class reimplements several functions from KSocketDevice in order to implement SOCKS support.

This works by using KSocks.

Author:
Thiago Macieira <thiago.macieira@kdemail.net>
Warning:
This code is untested!

Definition at line 40 of file ksockssocketdevice.h.


Constructor & Destructor Documentation

KSocksSocketDevice::KSocksSocketDevice const KSocketBase = 0L  ) 
 

Constructor.

Definition at line 41 of file ksockssocketdevice.cpp.

Referenced by accept().

KSocksSocketDevice::KSocksSocketDevice int  fd  )  [explicit]
 

Construct from a file descriptor.

Definition at line 48 of file ksockssocketdevice.cpp.

KSocksSocketDevice::~KSocksSocketDevice  )  [virtual]
 

Destructor.

Definition at line 55 of file ksockssocketdevice.cpp.


Member Function Documentation

int KSocksSocketDevice::capabilities  )  const [virtual]
 

Sets our capabilities.

Reimplemented from KNetwork::KSocketDevice.

Definition at line 60 of file ksockssocketdevice.cpp.

bool KSocksSocketDevice::bind const KResolverEntry address  )  [virtual]
 

Overrides binding.

Reimplemented from KNetwork::KSocketDevice.

Definition at line 68 of file ksockssocketdevice.cpp.

References KNetwork::KResolverEntry::address(), KNetwork::KSocketDevice::create(), KNetwork::KResolverEntry::length(), KNetwork::KSocketDevice::m_sockfd, KNetwork::KActiveSocketBase::resetError(), KSocks::self(), and KNetwork::KActiveSocketBase::setError().

bool KSocksSocketDevice::listen int  backlog  )  [virtual]
 

Overrides listening.

Reimplemented from KNetwork::KSocketDevice.

Definition at line 92 of file ksockssocketdevice.cpp.

References KNetwork::KSocketDevice::m_sockfd, KNetwork::KActiveSocketBase::resetError(), KSocks::self(), KNetwork::KActiveSocketBase::setError(), QIODevice::setFlags(), and QIODevice::setState().

bool KSocksSocketDevice::connect const KResolverEntry address  )  [virtual]
 

Overrides connection.

Reimplemented from KNetwork::KSocketDevice.

Definition at line 114 of file ksockssocketdevice.cpp.

References KNetwork::KResolverEntry::address(), KNetwork::KSocketBase::blocking(), KSocks::connect(), KNetwork::KSocketDevice::create(), KNetwork::KResolverEntry::length(), KNetwork::KSocketDevice::m_sockfd, KNetwork::KActiveSocketBase::resetError(), KSocks::self(), KNetwork::KSocketBase::setBlocking(), KNetwork::KActiveSocketBase::setError(), QIODevice::setFlags(), and QIODevice::setState().

KSocksSocketDevice * KSocksSocketDevice::accept  )  [virtual]
 

Overrides accepting.

The return type is specialised.

Reimplemented from KNetwork::KSocketDevice.

Definition at line 164 of file ksockssocketdevice.cpp.

References KSocks::accept(), KSocksSocketDevice(), KNetwork::KSocketDevice::m_sockfd, KSocks::self(), and KNetwork::KActiveSocketBase::setError().

Q_LONG KSocksSocketDevice::readBlock char *  data,
Q_ULONG  maxlen
[virtual]
 

Overrides reading.

Reimplemented from KNetwork::KSocketDevice.

Definition at line 212 of file ksockssocketdevice.cpp.

References KNetwork::KSocketDevice::m_sockfd, KNetwork::KActiveSocketBase::resetError(), and KNetwork::KActiveSocketBase::setError().

Q_LONG KSocksSocketDevice::readBlock char *  data,
Q_ULONG  maxlen,
KSocketAddress from
[virtual]
 

Reads data and the source address from this socket.

Reimplemented from KNetwork::KSocketDevice.

Definition at line 233 of file ksockssocketdevice.cpp.

References KNetwork::KSocketDevice::m_sockfd, KNetwork::KActiveSocketBase::resetError(), and KNetwork::KActiveSocketBase::setError().

Q_LONG KSocksSocketDevice::peekBlock char *  data,
Q_ULONG  maxlen
[virtual]
 

Overrides peeking.

Reimplemented from KNetwork::KSocketDevice.

Definition at line 254 of file ksockssocketdevice.cpp.

References KNetwork::KSocketDevice::m_sockfd, KNetwork::KActiveSocketBase::resetError(), and KNetwork::KActiveSocketBase::setError().

Q_LONG KSocksSocketDevice::peekBlock char *  data,
Q_ULONG  maxlen,
KSocketAddress from
[virtual]
 

Peeks the data in the socket and the source address.

Reimplemented from KNetwork::KSocketDevice.

Definition at line 275 of file ksockssocketdevice.cpp.

References KNetwork::KSocketDevice::m_sockfd, KNetwork::KActiveSocketBase::resetError(), and KNetwork::KActiveSocketBase::setError().

Q_LONG KSocksSocketDevice::writeBlock const char *  data,
Q_ULONG  len
[virtual]
 

Overrides writing.

Reimplemented from KNetwork::KSocketDevice.

Definition at line 296 of file ksockssocketdevice.cpp.

Q_LONG KSocksSocketDevice::writeBlock const char *  data,
Q_ULONG  len,
const KSocketAddress to
[virtual]
 

Writes the given data to the given destination address.

Reimplemented from KNetwork::KSocketDevice.

Definition at line 301 of file ksockssocketdevice.cpp.

References KNetwork::KSocketAddress::address(), KNetwork::KSocketAddress::length(), KNetwork::KSocketDevice::m_sockfd, KNetwork::KActiveSocketBase::resetError(), KSocks::self(), KSocks::sendto(), and KNetwork::KActiveSocketBase::setError().

KSocketAddress KSocksSocketDevice::localAddress  )  const [virtual]
 

Overrides getting socket address.

Reimplemented from KNetwork::KSocketDevice.

Definition at line 323 of file ksockssocketdevice.cpp.

References KNetwork::KSocketAddress::address(), KNetwork::KSocketAddress::length(), KNetwork::KSocketDevice::m_sockfd, KSocks::self(), and KNetwork::KSocketAddress::setLength().

KSocketAddress KSocksSocketDevice::peerAddress  )  const [virtual]
 

Overrides getting peer address.

Reimplemented from KNetwork::KSocketDevice.

Definition at line 352 of file ksockssocketdevice.cpp.

References KNetwork::KSocketAddress::address(), KNetwork::KSocketAddress::length(), KNetwork::KSocketDevice::m_sockfd, KSocks::self(), and KNetwork::KSocketAddress::setLength().

KSocketAddress KSocksSocketDevice::externalAddress  )  const [virtual]
 

Overrides getting external address.

Reimplemented from KNetwork::KSocketDevice.

Definition at line 381 of file ksockssocketdevice.cpp.

bool KSocksSocketDevice::poll bool *  input,
bool *  output,
bool *  exception = 0L,
int  timeout = -1,
bool *  timedout = 0L
[virtual]
 

Overrides polling.

Reimplemented from KNetwork::KSocketDevice.

Definition at line 387 of file ksockssocketdevice.cpp.

References KNetwork::KSocketDevice::m_sockfd, KNetwork::KActiveSocketBase::resetError(), KSocks::select(), KSocks::self(), and KNetwork::KActiveSocketBase::setError().


The documentation for this class was generated from the following files:
KDE Logo
This file is part of the documentation for kdecore Library Version 3.4.2.
Documentation copyright © 1996-2004 the KDE developers.
Generated on Wed Feb 8 06:22:19 2006 by doxygen 1.4.4 written by Dimitri van Heesch, © 1997-2003