[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-core-devel
Subject:    IPv6 classes & API
From:       Thiago Macieira <thiagom () mail ! com>
Date:       2000-12-18 21:28:04
[Download RAW message or body]

To make kdelibs IPv6-ready, my first idea was to rewrite KSocket. But
that proved to be harder than expected to maintain binary
compatibility and still provide the necessary functionality for all
uses.

So I decided to do almost all the work inside one big class, called
KExtendedSocket. This class should allow the caller to control any
aspect of the connection, from the lookup, to socket binding and
connecting, including listening and accepting, as transparently as
possible.

So, we would have, in KExtendedSocket:
- a default contructor, no parameters
- a constructor with hostname and port/service parameters, maybe
address family too
- a member function for: lookup, bind, listen, accept, connect
- read, write and accept events and signals
- connection time out control
- pretty-printing of the address/port/service

that's just a general draft, from the needs of KSocket, which will be
modified to use KExtendedSocket, and the general needs of kio_http and
kio_ftp.

Aside from that, I've written already a class called KSocketAddress,
which is intended as a wrapper around any struct sockaddr*. There are
also there KInetSocketAddress, for Internet sockets (IPv4 and v6), and
KUnixSocketAddress.

These classes are in http://loki.nw.com.br/development/ksockaddr.cpp
and .h
--
  Thiago Macieira - UFOT Registry number: 1001
 thiagom@mail.com talha@geocities.com
   ICQ UIN: 1967141  PGP: 0x8F2978D5 and 0xEA9037A5
     Registered Linux user #65028

209/375. Could a lack of dimension be another dimension in itself? --
Lt. Cmdr. Data, "Where Silence Has Lease"

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic