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

static bool resolve (const KSocketAddress &addr, QString &node, QString &serv, int flags=0)
static 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

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 parent = 0L,
const char *  name = 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 113 of file kreverseresolver.cpp.

KReverseResolver::~KReverseResolver (  )  [virtual]

Destructor.

Definition at line 120 of file kreverseresolver.cpp.


Member Function Documentation

const KSocketAddress & KReverseResolver::address (  )  const

Returns the socket address which was subject to resolution.

Definition at line 151 of file kreverseresolver.cpp.

bool KReverseResolver::event ( QEvent e  )  [virtual]

Overrides event handling.

Reimplemented from QObject.

Definition at line 173 of file kreverseresolver.cpp.

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 136 of file kreverseresolver.cpp.

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
bool KReverseResolver::isRunning (  )  const

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

Definition at line 126 of file kreverseresolver.cpp.

QString KReverseResolver::node (  )  const

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

Definition at line 141 of file kreverseresolver.cpp.

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 206 of file kreverseresolver.cpp.

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 193 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 146 of file kreverseresolver.cpp.

bool KReverseResolver::start (  ) 

Starts the resolution.

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

Definition at line 156 of file kreverseresolver.cpp.

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 131 of file kreverseresolver.cpp.


The documentation for this class was generated from the following files:
KDE Home | KDE Accessibility Home | Description of Access Keys