KNetwork::KReverseResolver Class Reference

#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:
addrthe address to resolve
flagsthe flags to use, see Flags

Definition at line 113 of file kreverseresolver.cpp.

Destructor.

Definition at line 120 of file kreverseresolver.cpp.


Member Function Documentation

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.

This signal is emitted when the resolution has finished.

Parameters:
objthis class, which contains the results

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

Definition at line 126 of file kreverseresolver.cpp.

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 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:
addrthe socket address to be resolved
nodethe QString where we will store the resolved node
servthe QString where we will store the resolved service
flagsflags 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.

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:
sathe sockaddr structure containing the address to be resolved
salenthe length of the sockaddr structure
nodethe QString where we will store the resolved node
servthe QString where we will store the resolved service
flagsflags 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.

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

Definition at line 146 of file kreverseresolver.cpp.

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