• Skip to content
  • Skip to link menu
Trinity API Reference
  • Trinity API Reference
  • tdecore
 

tdecore

Public Member Functions | Static Public Member Functions | Protected Member Functions | Friends | List of all members
KInetSocketAddress Class Reference

#include <ksockaddr.h>

Inheritance diagram for KInetSocketAddress:
TDESocketAddress

Public Member Functions

 KInetSocketAddress ()
 
 KInetSocketAddress (const KInetSocketAddress &)
 
 KInetSocketAddress (const sockaddr_in *sin, ksocklen_t len)
 
 KInetSocketAddress (const sockaddr_in6 *sin6, ksocklen_t len)
 
 KInetSocketAddress (const in_addr &addr, unsigned short port)
 
 KInetSocketAddress (const in6_addr &addr, unsigned short port)
 
 KInetSocketAddress (const TQString &addr, unsigned short port, int family=-1)
 
virtual ~KInetSocketAddress ()
 
bool setAddress (const KInetSocketAddress &ksa)
 
bool setAddress (const sockaddr_in *sin, ksocklen_t len)
 
bool setAddress (const sockaddr_in6 *sin6, ksocklen_t len)
 
bool setAddress (const in_addr &addr, unsigned short port)
 
bool setAddress (const in6_addr &addr, unsigned short port)
 
bool setAddress (const TQString &addr, unsigned short port, int family=-1)
 
bool setHost (const in_addr &addr)
 
bool setHost (const in6_addr &addr)
 
bool setHost (const TQString &addr, int family=-1)
 
bool setPort (unsigned short port)
 
bool setFamily (int family)
 
bool setFlowinfo (TQ_UINT32 flowinfo)
 
bool setScopeId (int scopeid)
 
virtual TQString pretty () const
 
virtual TQString nodeName () const
 
virtual TQString serviceName () const
 
const sockaddr_in * addressV4 () const
 
const sockaddr_in6 * addressV6 () const
 
in_addr hostV4 () const
 
in6_addr hostV6 () const
 
unsigned short port () const
 
TQ_UINT32 flowinfo () const
 
int scopeId () const
 
virtual ksocklen_t size () const
 
 operator const sockaddr_in * () const
 
 operator const sockaddr_in6 * () const
 
KInetSocketAddress & operator= (const KInetSocketAddress &other)
 
- Public Member Functions inherited from TDESocketAddress
virtual ~TDESocketAddress ()
 
virtual TQString pretty () const
 
const sockaddr * address () const
 
virtual ksocklen_t size () const
 
 operator const sockaddr * () const
 
int family () const
 
int ianaFamily () const
 
virtual bool isEqual (const TDESocketAddress &other) const
 
bool isEqual (const TDESocketAddress *other) const
 
bool operator== (const TDESocketAddress &other) const
 
bool isCoreEqual (const TDESocketAddress &other) const
 
bool isCoreEqual (const TDESocketAddress *other) const
 
virtual TQString nodeName () const
 
virtual TQString serviceName () const
 

Static Public Member Functions

static bool areEqualInet (const TDESocketAddress &s1, const TDESocketAddress &s2, bool coreOnly)
 
static bool areEqualInet6 (const TDESocketAddress &s1, const TDESocketAddress &s2, bool coreOnly)
 
static TQString addrToString (int family, const void *addr)
 
static bool stringToAddr (int family, const char *text, void *dest)
 
- Static Public Member Functions inherited from TDESocketAddress
static TDESocketAddress * newAddress (const struct sockaddr *sa, ksocklen_t size)
 
static int ianaFamily (int af)
 
static int fromIanaFamily (int iana)
 

Protected Member Functions

virtual void virtual_hook (int id, void *data)
 
- Protected Member Functions inherited from TDESocketAddress
 TDESocketAddress ()
 
 TDESocketAddress (const sockaddr *sa, ksocklen_t size)
 
virtual void virtual_hook (int id, void *data)
 

Friends

class KExtendedSocket
 

Additional Inherited Members

- Protected Attributes inherited from TDESocketAddress
sockaddr * data
 
ksocklen_t datasize
 
bool owndata
 

Detailed Description

An Inet (IPv4 or IPv6) socket address.

This is an IPv4 or IPv6 address of the Internet

This class inherits most of the functionality from TDESocketAddress, but is targeted specifically to Internet addresses

Author
Thiago Macieira thiag.nosp@m.o.ma.nosp@m.cieir.nosp@m.a@kd.nosp@m.email.nosp@m..net

an Internet socket address

Definition at line 233 of file ksockaddr.h.

Constructor & Destructor Documentation

◆ KInetSocketAddress() [1/7]

KInetSocketAddress::KInetSocketAddress ( )

Default constructor.

Does nothing

Definition at line 271 of file ksockaddr.cpp.

◆ KInetSocketAddress() [2/7]

KInetSocketAddress::KInetSocketAddress ( const KInetSocketAddress &  other)

Copy constructor.

Definition at line 276 of file ksockaddr.cpp.

◆ KInetSocketAddress() [3/7]

KInetSocketAddress::KInetSocketAddress ( const sockaddr_in *  sin,
ksocklen_t  len 
)

Creates an IPv4 socket from raw sockaddr_in.

Parameters
sina sockaddr_in structure to copy from
lenthe socket address length

Definition at line 282 of file ksockaddr.cpp.

◆ KInetSocketAddress() [4/7]

KInetSocketAddress::KInetSocketAddress ( const sockaddr_in6 *  sin6,
ksocklen_t  len 
)

Creates an IPv6 socket from raw sockaddr_in6.

Parameters
sin6a sockaddr_in6 structure to copy from
lenthe socket address length

Definition at line 288 of file ksockaddr.cpp.

◆ KInetSocketAddress() [5/7]

KInetSocketAddress::KInetSocketAddress ( const in_addr &  addr,
unsigned short  port 
)

Creates a socket from information.

Parameters
addra binary address
porta port number

Definition at line 294 of file ksockaddr.cpp.

◆ KInetSocketAddress() [6/7]

KInetSocketAddress::KInetSocketAddress ( const in6_addr &  addr,
unsigned short  port 
)

Creates a socket from information.

Parameters
addra binary address
porta port number

Definition at line 300 of file ksockaddr.cpp.

◆ KInetSocketAddress() [7/7]

KInetSocketAddress::KInetSocketAddress ( const TQString &  addr,
unsigned short  port,
int  family = -1 
)

Creates a socket from text representation.

Parameters
addra text representation of the address
porta port number
familythe family for this address. Use -1 to guess the family type
See also
setAddress

Definition at line 306 of file ksockaddr.cpp.

◆ ~KInetSocketAddress()

KInetSocketAddress::~KInetSocketAddress ( )
virtual

Destructor.

Definition at line 312 of file ksockaddr.cpp.

Member Function Documentation

◆ addressV4()

const sockaddr_in * KInetSocketAddress::addressV4 ( ) const

Returns the socket address.

This will be NULL if this is a non-convertible v6. This function will return an IPv4 socket if this IPv6 socket is a v4-mapped address. That is, if it's really an IPv4 address, but in v6 disguise.

Returns
the sockaddr_in struct, can be 0.

Definition at line 513 of file ksockaddr.cpp.

◆ addressV6()

const sockaddr_in6 * KInetSocketAddress::addressV6 ( ) const

Returns the socket address in IPv6.

Returns
the sockaddr_in struct, can be 0 if IPv6 is unsupported.

Definition at line 532 of file ksockaddr.cpp.

◆ addrToString()

TQString KInetSocketAddress::addrToString ( int  family,
const void *  addr 
)
static

Convert s the given raw address into text form.

This function returns TQString::null if the address cannot be converted.

Parameters
familythe family of the address
addrthe address, in raw form
Returns
the converted address, or TQString::null if not possible.

Definition at line 716 of file ksockaddr.cpp.

◆ areEqualInet()

bool KInetSocketAddress::areEqualInet ( const TDESocketAddress &  s1,
const TDESocketAddress &  s2,
bool  coreOnly 
)
static

Compares two IPv4 addresses.

Parameters
s1the first address to compare
s2the second address to compare
coreOnlytrue if only core parts should be compared (only the address)
Returns
true if the given addresses are equal.
See also
areEqualInet6()
TDESocketAddress::isEqual()
TDESocketAddress::isCoreEqual()

Definition at line 629 of file ksockaddr.cpp.

◆ areEqualInet6()

bool KInetSocketAddress::areEqualInet6 ( const TDESocketAddress &  s1,
const TDESocketAddress &  s2,
bool  coreOnly 
)
static

Compares two IPv6 addresses.

Parameters
s1the first address to compare
s2the second address to compare
coreOnlytrue if only core parts should be compared (only the address)
Returns
true if the given addresses are equal.
See also
areEqualInet()
TDESocketAddress::isEqual()
TDESocketAddress::isCoreEqual()

Definition at line 646 of file ksockaddr.cpp.

◆ flowinfo()

TQ_UINT32 KInetSocketAddress::flowinfo ( ) const

Returns flowinfo for IPv6 socket.

Returns
the flowinfo, 0 if unsupported

Definition at line 608 of file ksockaddr.cpp.

◆ hostV4()

in_addr KInetSocketAddress::hostV4 ( ) const

Returns the host address.

Might be empty.

Returns
the host address

Definition at line 541 of file ksockaddr.cpp.

◆ hostV6()

in6_addr KInetSocketAddress::hostV6 ( ) const

Returns the host address.

WARNING: this function is not defined if there is no IPv6 support

Returns
the host address

◆ nodeName()

TQString KInetSocketAddress::nodeName ( ) const
virtual

Returns the text representation of the host address.

Returns
a text representation of the host address

Reimplemented from TDESocketAddress.

Definition at line 574 of file ksockaddr.cpp.

◆ operator const sockaddr_in *()

KInetSocketAddress::operator const sockaddr_in * ( ) const
inline

Returns the socket address.

This will be NULL if this is a non-convertible v6.

Returns
the sockaddr_in structure, can be 0 if v6.
See also
addressV4()

Definition at line 514 of file ksockaddr.h.

◆ operator const sockaddr_in6 *()

KInetSocketAddress::operator const sockaddr_in6 * ( ) const
inline

Returns the socket address.

Returns
the sockaddr_in structure, can be 0 if v6 is unsupported.
See also
addressV6()

Definition at line 522 of file ksockaddr.h.

◆ operator=()

KInetSocketAddress & KInetSocketAddress::operator= ( const KInetSocketAddress &  other)
inline

Sets this object to be the same as the other.

Definition at line 528 of file ksockaddr.h.

◆ port()

unsigned short KInetSocketAddress::port ( ) const

Returns the port number.

Returns
the port number

Definition at line 598 of file ksockaddr.cpp.

◆ pretty()

TQString KInetSocketAddress::pretty ( ) const
virtual

Returns a pretty representation of this address.

Returns
a pretty representation

Reimplemented from TDESocketAddress.

Definition at line 559 of file ksockaddr.cpp.

◆ scopeId()

int KInetSocketAddress::scopeId ( ) const

Returns the scope id for this IPv6 socket.

Returns
the scope id

◆ serviceName()

TQString KInetSocketAddress::serviceName ( ) const
virtual

Returns the text representation of the port number.

Returns
the name of the service (a number)

Reimplemented from TDESocketAddress.

Definition at line 593 of file ksockaddr.cpp.

◆ setAddress() [1/6]

bool KInetSocketAddress::setAddress ( const in6_addr &  addr,
unsigned short  port 
)

Sets this socket to raw address and port.

Parameters
addrthe address
portthe port number
Returns
true if successful, false otherwise

Definition at line 375 of file ksockaddr.cpp.

◆ setAddress() [2/6]

bool KInetSocketAddress::setAddress ( const in_addr &  addr,
unsigned short  port 
)

Sets this socket to raw address and port.

Parameters
addrthe address
portthe port number
Returns
true if successful, false otherwise

Definition at line 370 of file ksockaddr.cpp.

◆ setAddress() [3/6]

bool KInetSocketAddress::setAddress ( const KInetSocketAddress &  ksa)

Sets this socket to given socket.

Parameters
ksathe other socket
Returns
true if successful, false otherwise

Definition at line 319 of file ksockaddr.cpp.

◆ setAddress() [4/6]

bool KInetSocketAddress::setAddress ( const sockaddr_in *  sin,
ksocklen_t  len 
)

Sets this socket to given raw socket.

Parameters
sinthe raw socket
lenthe socket address length
Returns
true if successful, false otherwise

Definition at line 330 of file ksockaddr.cpp.

◆ setAddress() [5/6]

bool KInetSocketAddress::setAddress ( const sockaddr_in6 *  sin6,
ksocklen_t  len 
)

Sets this socket to given raw socket.

Note: this function does not clear the scope ID and flow info values

Parameters
sin6the raw socket
lenthe socket address length
Returns
true if successful, false otherwise

Definition at line 342 of file ksockaddr.cpp.

◆ setAddress() [6/6]

bool KInetSocketAddress::setAddress ( const TQString &  addr,
unsigned short  port,
int  family = -1 
)

Sets this socket to text address and port.

You can use the family parameter to specify what kind of socket you want this to be. It could be AF_INET or AF_INET6 or -1.

If the value is -1 (default), this function will make an effort to discover what is the family. That isn't too hard, actually, and it works in all cases. But, if you want to be sure that your socket is of the type you want, use this parameter.

This function returns false if the socket address was not valid.

Parameters
addrthe address
portthe port number
familythe address family, -1 for any
Returns
true if successful, false otherwise

Definition at line 380 of file ksockaddr.cpp.

◆ setFamily()

bool KInetSocketAddress::setFamily ( int  family)

Turns this into an IPv4 or IPv6 address.

Parameters
familythe new address family
Returns
false if this is v6 and information was lost. That doesn't mean the conversion was unsuccessful.

Definition at line 465 of file ksockaddr.cpp.

◆ setFlowinfo()

bool KInetSocketAddress::setFlowinfo ( TQ_UINT32  flowinfo)

Sets flowinfo information for this socket address if this is IPv6.

Parameters
flowinfoflowinfo
Returns
true if successful, false otherwise

Definition at line 488 of file ksockaddr.cpp.

◆ setHost() [1/3]

bool KInetSocketAddress::setHost ( const in6_addr &  addr)

Sets this socket's host address to given raw address.

Parameters
addrthe address
Returns
true if successful, false otherwise

Definition at line 393 of file ksockaddr.cpp.

◆ setHost() [2/3]

bool KInetSocketAddress::setHost ( const in_addr &  addr)

Sets this socket's host address to given raw address.

Parameters
addrthe address
Returns
true if successful, false otherwise

Definition at line 385 of file ksockaddr.cpp.

◆ setHost() [3/3]

bool KInetSocketAddress::setHost ( const TQString &  addr,
int  family = -1 
)

Sets this socket's host address to given text representation.

Parameters
addrthe address
familythe address family, -1 to guess the family
Returns
true if successful, false otherwise

Definition at line 405 of file ksockaddr.cpp.

◆ setPort()

bool KInetSocketAddress::setPort ( unsigned short  port)

Sets this socket's port number to given port number.

Parameters
portthe port number
Returns
true if successful, false otherwise

Definition at line 454 of file ksockaddr.cpp.

◆ setScopeId()

bool KInetSocketAddress::setScopeId ( int  scopeid)

Sets the scope id for this socket if this is IPv6.

Parameters
scopeidthe scope id
Returns
true if successful, false otherwise

Definition at line 500 of file ksockaddr.cpp.

◆ size()

ksocklen_t KInetSocketAddress::size ( ) const
virtual

Returns the socket length.

Will be either sizeof(sockaddr_in) or sizeof(sockaddr_in6)

Returns
the length of the socket

Reimplemented from TDESocketAddress.

Definition at line 617 of file ksockaddr.cpp.

◆ stringToAddr()

bool KInetSocketAddress::stringToAddr ( int  family,
const char *  text,
void *  dest 
)
static

Converts the address given in text form into raw form.

The size of the destination buffer dest is supposed to be large enough to hold the address of the given family.

Parameters
familythe family of the address
textthe text representation of the address
destthe destination buffer of the address
Returns
true if convertion was successful.

Definition at line 723 of file ksockaddr.cpp.

◆ virtual_hook()

void KInetSocketAddress::virtual_hook ( int  id,
void *  data 
)
protectedvirtual

Reimplemented from TDESocketAddress.

Definition at line 887 of file ksockaddr.cpp.

Friends And Related Function Documentation

◆ KExtendedSocket

friend class KExtendedSocket
friend

Definition at line 557 of file ksockaddr.h.


The documentation for this class was generated from the following files:
  • ksockaddr.h
  • ksockaddr.cpp

tdecore

Skip menu "tdecore"
  • Main Page
  • Modules
  • Namespace List
  • Class Hierarchy
  • Alphabetical List
  • Class List
  • File List
  • Namespace Members
  • Class Members
  • Related Pages

tdecore

Skip menu "tdecore"
  • arts
  • dcop
  • dnssd
  • interfaces
  •   kspeech
  •     interface
  •     library
  •   tdetexteditor
  • kate
  • kded
  • kdoctools
  • kimgio
  • kjs
  • libtdemid
  • libtdescreensaver
  • tdeabc
  • tdecmshell
  • tdecore
  • tdefx
  • tdehtml
  • tdeinit
  • tdeio
  •   bookmarks
  •   httpfilter
  •   kpasswdserver
  •   kssl
  •   tdefile
  •   tdeio
  •   tdeioexec
  • tdeioslave
  •   http
  • tdemdi
  •   tdemdi
  • tdenewstuff
  • tdeparts
  • tdeprint
  • tderandr
  • tderesources
  • tdespell2
  • tdesu
  • tdeui
  • tdeunittest
  • tdeutils
  • tdewallet
Generated for tdecore by doxygen 1.9.4
This website is maintained by Timothy Pearson.