# kdecore Library API Documentation

Overview | Class Hierarchy | Classes | Classes (annotated) | Members | Namespaces | Source Files

# KNetwork::KSocksSocketDevice Class Reference

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

`#include <ksockssocketdevice.h>`

Inheritance diagram for KNetwork::KSocksSocketDevice:

[legend]
Collaboration diagram for KNetwork::KSocksSocketDevice:

[legend]
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 KSocksSocketDevice * | accept ()
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::KSocketDevice::create(), KNetwork::KActiveSocketBase::resetError(), 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::KActiveSocketBase::resetError(), and KNetwork::KActiveSocketBase::setError().

bool KSocksSocketDevice::connect | ( | const KResolverEntry & | address | ) | `[virtual]`

| Overrides connection. Reimplemented from KNetwork::KSocketDevice. Definition at line 114 of file ksockssocketdevice.cpp. References KNetwork::KSocketBase::blocking(), KNetwork::KSocketDevice::create(), KNetwork::KActiveSocketBase::resetError(), KNetwork::KSocketBase::setBlocking(), and KNetwork::KActiveSocketBase::setError().

KSocksSocketDevice * KSocksSocketDevice::accept | ( |  | ) | `[virtual]`

| Overrides accepting. The return type is specialised. Reimplemented from KNetwork::KSocketDevice. Definition at line 164 of file ksockssocketdevice.cpp. References KSocksSocketDevice(), 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.

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::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::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::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::KActiveSocketBase::resetError(), 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(), localAddress(), and KNetwork::KSocketAddress::setLength(). Referenced by localAddress().

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(), peerAddress(), and KNetwork::KSocketAddress::setLength(). Referenced by peerAddress().

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::KActiveSocketBase::resetError(), and KNetwork::KActiveSocketBase::setError().

The documentation for this class was generated from the following files:

- ksockssocketdevice.h
- ksockssocketdevice.cpp

This file is part of the documentation for kdecore Library Version 3.4.1.
Documentation copyright © 1996-2004 the KDE developers.
Generated on Sat Jun 11 20:19:28 2005 by doxygen 1.4.1 written by Dimitri van Heesch, © 1997-2003