kdecore Library API Documentation

KNetwork::KReverseResolver Class Reference

Run a reverse-resolution on a socket address. More...

#include <kreverseresolver.h>

Inheritance diagram for KNetwork::KReverseResolver:

QObject List of all members.

Public Types

enum  Flags {
  NumericHost = 0x01, NumericService = 0x02, NodeNameOnly = 0x04, Datagram = 0x08,
  NumericScope = 0x10, ResolutionRequired = 0x20
}

Signals

void finished (const KReverseResolver &obj)

Public Member Functions

 KReverseResolver (const KSocketAddress &addr, int flags=0, QObject *=0L, const char *=0L)
virtual ~KReverseResolver ()
bool isRunning () const
bool success () const
bool failure () const
QString node () const
QString service () const
const KSocketAddressaddress () const
bool start ()
virtual bool event (QEvent *)

Static Public Member Functions

bool resolve (const KSocketAddress &addr, QString &node, QString &serv, int flags=0)
bool resolve (const struct sockaddr *sa, Q_UINT16 salen, QString &node, QString &serv, int flags=0)

Detailed Description

Run a reverse-resolution on a socket address.

This class is provided as a counterpart to KResolver in such a way as it produces a reverse resolution: it resolves a socket address from its binary representations into a textual representation.

Most users will use the static functions resolve, which work both synchronously (blocking) and asynchronously (non-blocking).

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

Definition at line 50 of file kreverseresolver.h.


Member Enumeration Documentation

enum KNetwork::KReverseResolver::Flags
 

Flags for the reverse resolution.

These flags are used by the reverse resolution functions for setting resolution parameters. The possible values are:

  • NumericHost: don't try to resolve the host address to a text form. Instead, convert the address to its numeric textual representation.
  • NumericService: the same as NumericHost, but for the service name
  • NodeNameOnly: returns the node name only (i.e., not the Fully Qualified Domain Name)
  • Datagram: in case of ambiguity in the service name, prefer the name associated with the datagram protocol
  • NumericScope: for those addresses which have the concept of scope, resolve using the numeric value instead of the proper scope name.
  • ResolutionRequired: normally, when resolving, if the name resolution fails, the process normally converts the numeric address into its presentation forms. This flag causes the function to return with error instead.

Definition at line 74 of file kreverseresolver.h.


Constructor & Destructor Documentation

KReverseResolver::KReverseResolver const KSocketAddress addr,
int  flags = 0,
QObject = 0L,
const char *  = 0L
 

Constructs this object to resolve the given socket address.

Parameters:
addr the address to resolve
flags the flags to use, see Flags

Definition at line 107 of file kreverseresolver.cpp.

KReverseResolver::~KReverseResolver  )  [virtual]
 

Destructor.

Definition at line 114 of file kreverseresolver.cpp.


Member Function Documentation

bool KReverseResolver::isRunning  )  const
 

This function returns 'true' if the processing is still running.

Definition at line 120 of file kreverseresolver.cpp.

Referenced by failure(), and success().

bool KReverseResolver::success  )  const
 

This function returns true if the processing has finished with success, false if it's still running or failed.

Definition at line 125 of file kreverseresolver.cpp.

References isRunning().

bool KReverseResolver::failure  )  const
 

This function returns true if the processing has finished with failure, false if it's still running or succeeded.

Definition at line 130 of file kreverseresolver.cpp.

References isRunning().

QString KReverseResolver::node  )  const
 

Returns the resolved node name, if the resolution has finished successfully, or QString::null otherwise.

Definition at line 135 of file kreverseresolver.cpp.

QString KReverseResolver::service  )  const
 

Returns the resolved service name, if the resolution has finished successfully, or QString::null otherwise.

Definition at line 140 of file kreverseresolver.cpp.

const KSocketAddress & KReverseResolver::address  )  const
 

Returns the socket address which was subject to resolution.

Definition at line 145 of file kreverseresolver.cpp.

bool KReverseResolver::start  ) 
 

Starts the resolution.

This function returns 'true' if the resolution has started successfully.

Definition at line 150 of file kreverseresolver.cpp.

bool KReverseResolver::event QEvent  )  [virtual]
 

Overrides event handling.

Definition at line 167 of file kreverseresolver.cpp.

References finished().

void KNetwork::KReverseResolver::finished const KReverseResolver obj  )  [signal]
 

This signal is emitted when the resolution has finished.

Parameters:
obj this class, which contains the results

Referenced by event().

bool KReverseResolver::resolve const KSocketAddress addr,
QString node,
QString serv,
int  flags = 0
[static]
 

Resolves a socket address to its textual representation.

FIXME!! How can we do this in a non-blocking manner!?

This function is used to resolve a socket address from its binary representation to a textual form, even if numeric only.

Parameters:
addr the socket address to be resolved
node the QString where we will store the resolved node
serv the QString where we will store the resolved service
flags flags to be used for this resolution.
Returns:
true if the resolution succeeded, false if not
See also:
ReverseFlags for the possible values for flags

Definition at line 187 of file kreverseresolver.cpp.

Referenced by resolve().

bool KReverseResolver::resolve const struct sockaddr *  sa,
Q_UINT16  salen,
QString node,
QString serv,
int  flags = 0
[static]
 

Resolves a socket address to its textual representation.

FIXME!! How can we do this in a non-blocking manner!?

This function behaves just like the above one, except it takes a sockaddr structure and its size as parameters.

Parameters:
sa the sockaddr structure containing the address to be resolved
salen the length of the sockaddr structure
node the QString where we will store the resolved node
serv the QString where we will store the resolved service
flags flags to be used for this resolution.
Returns:
true if the resolution succeeded, false if not
See also:
ReverseFlags for the possible values for flags

Definition at line 200 of file kreverseresolver.cpp.

References resolve().


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.3.1.
Documentation copyright © 1996-2004 the KDE developers.
Generated on Fri Feb 18 15:10:06 2005 by doxygen 1.3.9.1 written by Dimitri van Heesch, © 1997-2003