4
0
mirror of https://github.com/QuasarApp/qca.git synced 2025-05-14 19:39:33 +00:00

More updates for API documentation.

We now use \ingroup rather than \addtogroup to
collect the user API.

Also made sure that we have the right #include
magic for all of the user API.

svn path=/trunk/kdesupport/qca/; revision=696216
This commit is contained in:
Brad Hards 2007-08-04 08:09:02 +00:00
parent 67e657c652
commit 7db5c7713d
11 changed files with 178 additions and 55 deletions

@ -42,7 +42,8 @@ namespace QCA {
This is the main set of QCA classes, intended for use
in standard applications.
*/
/*@{*/
/**
\class Random qca_basic.h QtCrypto
@ -55,6 +56,8 @@ namespace QCA {
The normal use of this class is expected to be through the
static members - randomChar(), randomInt() and randomArray().
\ingroup UserAPI
*/
class QCA_EXPORT Random : public Algorithm
{
@ -194,6 +197,9 @@ else
you could simply call QCA::Hash("algoName").hash() with the
data that you would otherwise have provided to the update()
call.
\ingroup UserAPI
*/
class QCA_EXPORT Hash : public Algorithm, public BufferedComputation
{
@ -357,7 +363,7 @@ private:
class Private;
Private *d;
};
/*@}*/
/**
\page hashing Hashing Algorithms
@ -512,10 +518,6 @@ private:
stripped of ciphertext.
*/
/**
\addtogroup UserAPI
*/
/*@{*/
/**
\class Cipher qca_basic.h QtCrypto
@ -533,6 +535,8 @@ private:
- AES128 - "aes128"
- AES192 - "aes192"
- AES256 - "aes256"
\ingroup UserAPI
*/
class QCA_EXPORT Cipher : public Algorithm, public Filter
{
@ -703,6 +707,9 @@ private:
For more information on HMAC, see H. Krawczyk et al. RFC2104
"HMAC: Keyed-Hashing for Message Authentication"
\ingroup UserAPI
*/
class QCA_EXPORT MessageAuthenticationCode : public Algorithm, public BufferedComputation
{
@ -809,6 +816,9 @@ private:
not need to use it directly unless you are
adding another key derivation capability to %QCA - you should be
using a sub-class. PBKDF2 using SHA1 is recommended for new applications.
\ingroup UserAPI
*/
class QCA_EXPORT KeyDerivationFunction : public Algorithm
{
@ -868,6 +878,8 @@ private:
This class implements Password Based Key Derivation Function version 1,
as specified in RFC2898, and also in PKCS#5.
\ingroup UserAPI
*/
class QCA_EXPORT PBKDF1 : public KeyDerivationFunction
{
@ -888,6 +900,9 @@ public:
This class implements Password Based Key Derivation Function version 2,
as specified in RFC2898, and also in PKCS#5.
\ingroup UserAPI
*/
class QCA_EXPORT PBKDF2 : public KeyDerivationFunction
{
@ -900,7 +915,7 @@ public:
*/
explicit PBKDF2(const QString &algorithm = "sha1", const QString &provider = QString()) : KeyDerivationFunction(withAlgorithm("pbkdf2", algorithm), provider) {}
};
/*@}*/
}
#endif

@ -82,10 +82,8 @@ enum CertificateInfoTypeKnown
};
/**
\addtogroup UserAPI
*/
/*@{*/
/**
\class CertificateInfoType qca_cert.h QtCrypto
Certificate information type
This class represents a type of information being stored in
@ -116,6 +114,8 @@ enum CertificateInfoTypeKnown
\sa Certificate::subjectInfo() and Certificate::issuerInfo()
\sa CRL::issuerInfo()
\ingroup UserAPI
*/
class QCA_EXPORT CertificateInfoType
{
@ -224,7 +224,11 @@ private:
};
/**
\class CertificateInfoPair qca_cert.h QtCrypto
One entry in a certificate information list
\ingroup UserAPI
*/
class QCA_EXPORT CertificateInfoPair
{
@ -281,7 +285,7 @@ private:
class Private;
QSharedDataPointer<Private> d;
};
/*@}*/
/**
Known types of certificate constraints
@ -314,6 +318,8 @@ enum ConstraintTypeKnown
};
/**
\class ConstraintType qca_cert.h QtCrypto
Certificate constraint
X.509 certificates can be constrained in their application - that is, some
@ -488,6 +494,8 @@ enum ValidateFlags
typedef QMultiMap<CertificateInfoType, QString> CertificateInfo;
/**
\class CertificateInfoOrdered qca_cert.h QtCrypto
Ordered certificate properties type
This container stores the information in the same sequence as
@ -541,16 +549,14 @@ typedef QList<ConstraintType> Constraints;
*/
QCA_EXPORT QStringList makeFriendlyNames(const QList<Certificate> &list);
/**
\addtogroup UserAPI
*/
/*@{*/
/**
\class CertificateOptions qca_cert.h QtCrypto
%Certificate options
\note In SPKAC mode, all options are ignored except for challenge
\ingroup UserAPI
*/
class QCA_EXPORT CertificateOptions
{
@ -796,6 +802,8 @@ private:
Public Key (X.509) certificate
This class contains one X.509 certificate
\ingroup UserAPI
*/
class QCA_EXPORT Certificate : public Algorithm
{
@ -1141,6 +1149,8 @@ private:
\sa QCA::CertificateCollection for an alternative way to represent a group
of Certificates that do not necessarily have a chained relationship.
\ingroup UserAPI
*/
class CertificateChain : public QList<Certificate>
{
@ -1203,7 +1213,7 @@ public:
*/
inline CertificateChain complete(const QList<Certificate> &issuers = QList<Certificate>(), Validity *result = 0) const;
};
/*@}*/
inline Validity CertificateChain::validate(const CertificateCollection &trusted, const QList<CRL> &untrusted_crls, UsageMode u, ValidateFlags vf) const
{
if(isEmpty())
@ -1218,17 +1228,14 @@ inline CertificateChain CertificateChain::complete(const QList<Certificate> &iss
return first().chain_complete(*this, issuers, result);
}
/**
\addtogroup UserAPI
*/
/*@{*/
/**
\class CertificateRequest qca_cert.h QtCrypto
%Certificate Request
A CertificateRequest is a unsigned request for a Certificate
\ingroup UserAPI
*/
class QCA_EXPORT CertificateRequest : public Algorithm
{
@ -1488,6 +1495,8 @@ private:
\class CRLEntry qca_cert.h QtCrypto
Part of a CRL representing a single certificate
\ingroup UserAPI
*/
class QCA_EXPORT CRLEntry
{
@ -1619,6 +1628,8 @@ private:
\sa CertificateCollection for a way to handle Certificates
and CRLs as a single entity.
\sa CRLEntry for the %CRL segment representing a single Certificate.
\ingroup UserAPI
*/
class QCA_EXPORT CRL : public Algorithm
{
@ -1795,6 +1806,8 @@ private:
\sa QCA::CertificateChain for a representation of a chain of Certificates
related by signatures.
\ingroup UserAPI
*/
class QCA_EXPORT CertificateCollection
{
@ -1940,6 +1953,8 @@ private:
A %Certificate Authority is used to generate Certificates and
%Certificate Revocation Lists (CRLs).
\ingroup UserAPI
*/
class QCA_EXPORT CertificateAuthority : public Algorithm
{
@ -2036,6 +2051,8 @@ private:
For more information on PKCS12 "Personal Information
Exchange Syntax Standard", see <a
href="ftp://ftp.rsasecurity.com/pub/pkcs/pkcs-12/pkcs-12v1.pdf">ftp://ftp.rsasecurity.com/pub/pkcs/pkcs-12/pkcs-12v1.pdf</a>.
\ingroup UserAPI
*/
class QCA_EXPORT KeyBundle
{
@ -2259,6 +2276,8 @@ private:
Note that with the latter method, the key is of no use besides
being informational. The key must be in a keyring
(that is, inKeyring() == true) to actually do crypto with it.
\ingroup UserAPI
*/
class QCA_EXPORT PGPKey : public Algorithm
{
@ -2424,6 +2443,8 @@ private:
};
/**
\class KeyLoader qca_cert.h QtCrypto
Asynchronous private key loader
GUI applications generally must use KeyLoader to load private keys. This
@ -2457,6 +2478,8 @@ private:
QCA::PrivateKey::fromPEMFile(), QCA::PrivateKey::fromPEM() and
QCA::PrivateKey::fromDER(). %QCA provides synchronous key bundle loading
using QCA::KeyBundle::fromArray() and QCA::KeyBundle::fromFile().
\ingroup UserAPI
*/
class QCA_EXPORT KeyLoader : public QObject
{
@ -2565,7 +2588,7 @@ private:
friend class Private;
Private *d;
};
/*@}*/
}
#endif

@ -1210,6 +1210,8 @@ public:
};
/**
\class Event qca_core.h QtCrypto
An asynchronous event
Events are produced in response to the library's need for some user
@ -1390,6 +1392,8 @@ private:
};
/**
\class EventHandler qca_core.h QtCrypto
Interface class for password / passphrase / PIN and token handlers
This class is used on client side applications to handle
@ -1475,6 +1479,8 @@ private:
};
/**
\class PasswordAsker qca_core.h QtCrypto
User password / passphrase / PIN handler
This class is used to obtain a password from a user.
@ -1565,6 +1571,8 @@ private:
};
/**
\class TokenAsker qca_core.h QtCrypto
User token handler
This class is used to request the user to insert a token.

@ -41,10 +41,6 @@ class KeyStoreTracker;
class KeyStoreManagerPrivate;
class KeyStorePrivate;
/**
\addtogroup UserAPI
*/
/*@{*/
/**
\class KeyStoreEntry qca_keystore.h QtCrypto
@ -137,6 +133,8 @@ if(entry.ensureAccess())
In this case, any PIN prompting and private key operations
would be caused/handled from the TLS object. Omit step 2 and
the private key operations might cause token prompting.
\ingroup UserAPI
*/
class QCA_EXPORT KeyStoreEntry : public Algorithm
{
@ -326,6 +324,8 @@ private:
};
/**
\class KeyStoreEntryWatcher qca_keystore.h QtCrypto
Class to monitor the availability of a KeyStoreEntry
Some KeyStore types have the concept of an entry that can be
@ -339,6 +339,8 @@ private:
\sa KeyStore for more discussion on availability of
keys and related objects.
\ingroup UserAPI
*/
class QCA_EXPORT KeyStoreEntryWatcher : public QObject
{
@ -403,6 +405,8 @@ private:
becomes invalid (isValid() == false), and unavailable() is emitted.
even if the device later reappears, the KeyStore remains invalid.
a new KeyStore will have to be created to use the device again.
\ingroup UserAPI
*/
class QCA_EXPORT KeyStore : public QObject, public Algorithm
{
@ -589,6 +593,8 @@ private:
};
/**
\class KeyStoreInfo qca_keystore.h QtCrypto
Key store information, outside of a KeyStore object
This class is used in conjunction with the Event class,
@ -602,6 +608,8 @@ private:
"qca-mystorename". The name() of a KeyStore is used to describe
it (i.e. this is the "pretty" name to show the user), and is
typically of the form "My Store Name".
\ingroup UserAPI
*/
class QCA_EXPORT KeyStoreInfo
{
@ -686,6 +694,8 @@ private:
If you know the KeyStoreEntry that you need, you can
use KeyStore passively, as described in the KeyStoreEntry
documentation.
\ingroup UserAPI
*/
class QCA_EXPORT KeyStoreManager : public QObject
{
@ -769,7 +779,7 @@ private:
static void scan();
static void shutdown();
};
/*@}*/
}
#endif

@ -141,14 +141,12 @@ enum DLGroupSet
*/
QCA_EXPORT QByteArray emsa3Encode(const QString &hashName, const QByteArray &digest, int size = -1);
/**
\addtogroup UserAPI
*/
/*@{*/
/**
\class DLGroup qca_publickey.h QtCrypto
A discrete logarithm group
\ingroup UserAPI
*/
class QCA_EXPORT DLGroup
{
@ -223,6 +221,9 @@ private:
General superclass for public (PublicKey) and private (PrivateKey) keys
used with asymmetric encryption techniques.
\ingroup UserAPI
*/
class QCA_EXPORT PKey : public Algorithm
{
@ -478,6 +479,9 @@ private:
\class PublicKey qca_publickey.h QtCrypto
Generic public key
\ingroup UserAPI
*/
class QCA_EXPORT PublicKey : public PKey
{
@ -756,6 +760,9 @@ private:
\class PrivateKey qca_publickey.h QtCrypto
Generic private key
\ingroup UserAPI
*/
class QCA_EXPORT PrivateKey : public PKey
{
@ -1023,7 +1030,10 @@ private:
Class for generating asymmetric key pairs
This class is used for generating asymmetric keys (public/private key
pairs)
pairs).
\ingroup UserAPI
*/
class QCA_EXPORT KeyGenerator : public QObject
{
@ -1159,6 +1169,9 @@ private:
\class RSAPublicKey qca_publickey.h QtCrypto
RSA Public Key
\ingroup UserAPI
*/
class QCA_EXPORT RSAPublicKey : public PublicKey
{
@ -1207,6 +1220,9 @@ public:
\class RSAPrivateKey qca_publickey.h QtCrypto
RSA Private Key
\ingroup UserAPI
*/
class QCA_EXPORT RSAPrivateKey : public PrivateKey
{
@ -1267,6 +1283,9 @@ public:
\class DSAPublicKey qca_publickey.h QtCrypto
Digital Signature %Algorithm Public Key
\ingroup UserAPI
*/
class QCA_EXPORT DSAPublicKey : public PublicKey
{
@ -1308,6 +1327,9 @@ public:
\class DSAPrivateKey qca_publickey.h QtCrypto
Digital Signature %Algorithm Private Key
\ingroup UserAPI
*/
class QCA_EXPORT DSAPrivateKey : public PrivateKey
{
@ -1348,6 +1370,9 @@ public:
\class DHPublicKey qca_publickey.h QtCrypto
Diffie-Hellman Public Key
\ingroup UserAPI
*/
class QCA_EXPORT DHPublicKey : public PublicKey
{
@ -1389,6 +1414,9 @@ public:
\class DHPrivateKey qca_publickey.h QtCrypto
Diffie-Hellman Private Key
\ingroup UserAPI
*/
class QCA_EXPORT DHPrivateKey : public PrivateKey
{

@ -65,11 +65,6 @@ enum SecurityLevel
SL_Highest ///< SL_High or max possible, whichever is greater
};
/**
\addtogroup UserAPI
*/
/*@{*/
/**
\class SecureLayer qca_securelayer.h QtCrypto
@ -102,6 +97,8 @@ enum SecurityLevel
activities (which require network traffic to agree a
configuration to use) and other overheads associated with
the secure link.
\ingroup UserAPI
*/
class QCA_EXPORT SecureLayer : public QObject
{
@ -222,7 +219,12 @@ private:
};
/**
\class TLSSession qca_securelayer.h QtCrypto
Session token, used for TLS resuming
\ingroup UserAPI
*/
class QCA_EXPORT TLSSession : public Algorithm
{
@ -270,6 +272,8 @@ public:
Socket Layer (SSL version 2 and SSL version 3). New
applications should use at least TLS 1.0, and SSL version 2
should be avoided due to known security problems.
\ingroup UserAPI
*/
class QCA_EXPORT TLS : public SecureLayer, public Algorithm
{
@ -786,6 +790,9 @@ private:
"protocol aware". That means that %SASL does not understand how the client
connects to the server, and %SASL does not understand the actual
application protocol.
\ingroup UserAPI
*/
class QCA_EXPORT SASL : public SecureLayer, public Algorithm
{
@ -859,6 +866,8 @@ public:
This is used to indicate which parameters are needed by SASL
in order to complete the authentication process.
\ingroup UserAPI
*/
class QCA_EXPORT Params
{
@ -1177,7 +1186,7 @@ private:
friend class Private;
Private *d;
};
/*@}*/
}
#endif

@ -245,11 +245,6 @@ private:
typedef QList<SecureMessageSignature> SecureMessageSignatureList;
/**
\addtogroup UserAPI
*/
/*@{*/
/**
\class SecureMessage qca_securemessage.h QtCrypto
@ -301,6 +296,8 @@ else
\sa SecureMessageSignature
\sa OpenPGP
\sa CMS
\ingroup UserAPI
*/
class QCA_EXPORT SecureMessage : public QObject, public Algorithm
{
@ -765,6 +762,8 @@ private:
\sa SecureMessage
\sa SecureMessageKey
\ingroup UserAPI
*/
class QCA_EXPORT SecureMessageSystem : public QObject, public Algorithm
{
@ -799,6 +798,9 @@ private:
\sa SecureMessage
\sa SecureMessageKey
\ingroup UserAPI
*/
class QCA_EXPORT OpenPGP : public SecureMessageSystem
{
@ -842,6 +844,9 @@ private:
\sa SecureMessage
\sa SecureMessageKey
\ingroup UserAPI
*/
class QCA_EXPORT CMS : public SecureMessageSystem
{
@ -912,7 +917,6 @@ private:
class Private;
Private *d;
};
/*@}*/
}

@ -143,11 +143,8 @@ ret = QCA::invokeMethodWithVariants( testClass1, QByteArray( "boolMethod" ), arg
QCA_EXPORT bool invokeMethodWithVariants(QObject *obj, const QByteArray &method, const QVariantList &args, QVariant *ret, Qt::ConnectionType type = Qt::AutoConnection);
/**
\addtogroup UserAPI
*/
/*@{*/
\class SyncThread qca_support.h QtCrypto
/**
Convenience class to run a thread and interact with it synchronously
SyncThread makes it easy to perform the common practice of starting a
@ -268,6 +265,8 @@ delete thread;
Even without the call() function, SyncThread is still very useful
for preparing objects in another thread, which you can then
QObject::connect() to and use signals and slots like normal.
\ingroup UserAPI
*/
class QCA_EXPORT SyncThread : public QThread
{
@ -379,10 +378,14 @@ private:
};
/**
\class FileWatch qca_support.h QtCrypto
Support class to monitor a file for activity
%FileWatch monitors a specified file for any changes. When
the file changes, the changed() signal is emitted.
\ingroup UserAPI
*/
class QCA_EXPORT FileWatch : public QObject
{
@ -598,6 +601,8 @@ private:
class AbstractLogDevice;
/**
\class Logger qca_support.h QtCrypto
A simple logging system
This class provides a simple but flexible approach to logging information
@ -613,6 +618,8 @@ class AbstractLogDevice;
AbstractLogDevice, and register your subclass (using registerLogDevice()).
You can then take whatever action is appropriate (e.g. show to the user
using the GUI, log to a file or send to standard error).
\ingroup UserAPI
*/
class QCA_EXPORT Logger : public QObject
{
@ -710,7 +717,11 @@ private:
};
/**
\class AbstractLogDevice qca_support.h QtCrypto
An abstract log device
\ingroup UserAPI
*/
class QCA_EXPORT AbstractLogDevice : public QObject
{
@ -758,7 +769,7 @@ private:
QString m_name;
};
/*@}*/
}
#endif

@ -35,10 +35,7 @@
#include "qca_core.h"
namespace QCA {
/**
\addtogroup UserAPI
*/
/*@{*/
/**
\class TextFilter qca_textfilter.h QtCrypto
@ -47,6 +44,8 @@ namespace QCA {
This differs from Filter in that it has the concept
of an algorithm that works in two directions, and
supports operations on QString arguments.
\ingroup UserAPI
*/
class QCA_EXPORT TextFilter : public Filter
{
@ -158,6 +157,8 @@ protected:
\class Hex qca_textfilter.h QtCrypto
Hexadecimal encoding / decoding
\ingroup UserAPI
*/
class QCA_EXPORT Hex : public TextFilter
{
@ -224,6 +225,8 @@ private:
\class Base64 qca_textfilter.h QtCrypto
%Base64 encoding / decoding
\ingroup UserAPI
*/
class QCA_EXPORT Base64 : public TextFilter
{
@ -313,7 +316,7 @@ private:
class Private;
Private *d;
};
/*@}*/
}
#endif

@ -1800,6 +1800,8 @@ public:
Information about an active TLS connection
For efficiency and simplicity, the members are directly accessed.
\ingroup UserAPI
*/
class SessionInfo
{
@ -2122,6 +2124,8 @@ public:
Convenience class to hold an IP address and an associated port
For efficiency and simplicity, the members are directly accessed.
\ingroup UserAPI
*/
class HostPort
{

@ -105,9 +105,13 @@ private:
};
/**
\class QPipeEnd qpipe.h QtCrypto
A buffered higher-level pipe end
This is either the read end or write end of a QPipe.
\ingroup UserAPI
*/
class QCA_EXPORT QPipeEnd : public QObject
{
@ -291,6 +295,8 @@ private:
};
/**
\class QPipe qpipe.h QtCrypto
A FIFO buffer (named pipe) abstraction
This class creates a full buffer, consisting of two ends
@ -301,6 +307,8 @@ private:
By default, the pipe ends are not inheritable by child processes. On
Windows, the pipe is created with inheritability disabled. On Unix, the
FD_CLOEXEC flag is set on each end's file descriptor.
\ingroup UserAPI
*/
class QCA_EXPORT QPipe
{