# kdecore Library API Documentation

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

# KNetwork::KInetSocketAddress Class Reference

an Internet socket address More...

`#include <ksocketaddress.h>`

Inheritance diagram for KNetwork::KInetSocketAddress:

[legend]
Collaboration diagram for KNetwork::KInetSocketAddress:

[legend]
List of all members.

## Public Member Functions

| KInetSocketAddress ()
| KInetSocketAddress (const sockaddr *sa, Q_UINT16 len)
| KInetSocketAddress (const KIpAddress &host, Q_UINT16 port)
| KInetSocketAddress (const KInetSocketAddress &other)
| KInetSocketAddress (const KSocketAddress &other)
virtual | ~KInetSocketAddress ()
KInetSocketAddress & | operator= (const KInetSocketAddress &other)
| operator const sockaddr_in * () const
| operator const sockaddr_in6 * () const
int | ipVersion () const
KIpAddress | ipAddress () const
KInetSocketAddress & | setHost (const KIpAddress &addr)
Q_UINT16 | port () const
KInetSocketAddress & | setPort (Q_UINT16 port)
KInetSocketAddress & | makeIPv4 ()
KInetSocketAddress & | makeIPv6 ()
Q_UINT32 | flowinfo () const
KInetSocketAddress & | setFlowinfo (Q_UINT32 flowinfo)
int | scopeId () const
KInetSocketAddress & | setScopeId (int scopeid)

## Protected Member Functions

| KInetSocketAddress (KSocketAddressData *d)

## Friends

class | KSocketAddress

## Detailed Description

an Internet socket address

An Inet (IPv4 or IPv6) socket address

This is an IPv4 or IPv6 address of the Internet.

Author:
  Thiago Macieira <thiago.macieira@kdemail.net>

Definition at line 641 of file ksocketaddress.h.

## Constructor & Destructor Documentation

KInetSocketAddress::KInetSocketAddress | ( |  | ) |

| Public constructor. Creates an empty object. Definition at line 677 of file ksocketaddress.cpp.

KInetSocketAddress::KInetSocketAddress | ( | const sockaddr * | sa,
|  | Q_UINT16 | len
| ) |

Creates an object from raw data.

Note: if the socket address `sa` does not contain a valid Internet socket (IPv4 or IPv6), this object will be empty.

Parameters:

  | sa | the sockaddr structure
  | len | the structure's length

Definition at line 682 of file ksocketaddress.cpp.

KInetSocketAddress::KInetSocketAddress | ( | const KIpAddress & | host,
|  | Q_UINT16 | port
| ) |

Creates an object from an IP address and port.

Parameters:

  | host | the IP address
  | port | the port number

Definition at line 690 of file ksocketaddress.cpp.

References setHost(), and setPort().

KInetSocketAddress::KInetSocketAddress | ( | const KInetSocketAddress & | other | ) |

Copy constructor.

Data is not shared.

Parameters:

  | other | the other object

Definition at line 697 of file ksocketaddress.cpp.

KInetSocketAddress::KInetSocketAddress | ( | const KSocketAddress & | other | ) |

Copy constructor.

If the other, generic socket address contains an Internet address, it will be copied. Otherwise, this object will be empty.

Parameters:

  | other | the other object

Definition at line 703 of file ksocketaddress.cpp.

KInetSocketAddress::~KInetSocketAddress | ( |  | ) | `[virtual]`

| Destroys this object. Definition at line 717 of file ksocketaddress.cpp.

## Member Function Documentation

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

Copy operator.

Copies the other object into this one.

Parameters:

  | other | the other object

Definition at line 723 of file ksocketaddress.cpp.

KNetwork::KInetSocketAddress::operator const sockaddr_in * | ( |  | ) | const`[inline]`

| Cast operator to sockaddr_in. Definition at line 705 of file ksocketaddress.h. References KSocketAddress::address().

KNetwork::KInetSocketAddress::operator const sockaddr_in6 * | ( |  | ) | const`[inline]`

| Cast operator to sockaddr_in6. Definition at line 711 of file ksocketaddress.h. References KSocketAddress::address().

int KInetSocketAddress::ipVersion | ( |  | ) | const

Returns the IP version of the address this object holds.

Returns:
  4 or 6, if IPv4 or IPv6, respectively; 0 if this object is empty

Definition at line 730 of file ksocketaddress.cpp.

KIpAddress KInetSocketAddress::ipAddress | ( |  | ) | const

| Returns the IP address component. Definition at line 749 of file ksocketaddress.cpp.

KInetSocketAddress & KInetSocketAddress::setHost | ( | const KIpAddress & | addr | ) |

Sets the IP address to the given raw address.

This call will preserve port numbers accross IP versions, but will lose IPv6 specific data if the address is set to IPv4.

Parameters:

  | addr | the address to set to

Returns:
  a reference to itself

Definition at line 767 of file ksocketaddress.cpp.

References makeIPv4(), and makeIPv6().

Referenced by KInetSocketAddress().

Q_UINT16 KInetSocketAddress::port | ( |  | ) | const

Retrieves the port number stored in this object.

Returns:
  a port number in the range 0 to 65535, inclusive. An empty or invalid object will have a port number of 0.

Definition at line 790 of file ksocketaddress.cpp.

KInetSocketAddress & KInetSocketAddress::setPort | ( | Q_UINT16 | port | ) |

Sets the port number.

If this object is empty, this function will default to creating an IPv4 address.

Parameters:

  | port | the port number to set

Returns:
  a reference to itself

Definition at line 809 of file ksocketaddress.cpp.

References makeIPv4().

Referenced by KInetSocketAddress().

KInetSocketAddress & KInetSocketAddress::makeIPv4 | ( |  | ) |

Converts this object to an IPv4 socket address.

It has no effect if the object is already an IPv4 socket address.

If this object is an IPv6 address, the port number is preserved. All other information is lost.

Returns:
  a reference to itself

Definition at line 833 of file ksocketaddress.cpp.

Referenced by setHost(), and setPort().

KInetSocketAddress & KInetSocketAddress::makeIPv6 | ( |  | ) |

Converts this object to an IPv6 socket address.

It has no effect if the object is already an IPv6 socket address.

If this object is an IPv4 address, the port number is preserved.

Returns:
  a reference to itself

Definition at line 839 of file ksocketaddress.cpp.

Referenced by setFlowinfo(), setHost(), and setScopeId().

Q_UINT32 KInetSocketAddress::flowinfo | ( |  | ) | const

Returns the flowinfo information from the IPv6 socket address.

Returns:
  the flowinfo information or 0 if this object is empty or IPv4

Definition at line 845 of file ksocketaddress.cpp.

KInetSocketAddress & KInetSocketAddress::setFlowinfo | ( | Q_UINT32 | flowinfo | ) |

Sets the flowinfo information for an IPv6 socket address.

If this is not an IPv6 socket address, this function converts it to one.

See also:
  makeIPv6.

Parameters:

  | flowinfo | the flowinfo to set

Returns:
  a reference to itself

Definition at line 857 of file ksocketaddress.cpp.

References makeIPv6().

int KInetSocketAddress::scopeId | ( |  | ) | const

Returns the scope id this IPv6 socket is bound to.

Returns:
  the scope id, or 0 if this is not an IPv6 object

Definition at line 864 of file ksocketaddress.cpp.

KInetSocketAddress & KInetSocketAddress::setScopeId | ( | int | scopeid | ) |

Sets the scope id for this IPv6 object.

If this is not an IPv6 socket address, this function converts it to one.

See also:
  makeIPv6

Parameters:

  | scopeid | the scopeid to set

Returns:
  a reference to itself

Definition at line 876 of file ksocketaddress.cpp.

References makeIPv6().

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

- ksocketaddress.h
- ksocketaddress.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:25 2005 by doxygen 1.4.1 written by Dimitri van Heesch, © 1997-2003