dsapi_identity.h
Go to the documentation of this file.
1/* Emacs mode: -*- C -*- */
2
3/*
4 * Copyright (c) 2009-2013, Isode Limited, London, England.
5 * All rights reserved.
6 *
7 * Acquisition and use of this software and related materials for any
8 * purpose requires a written licence agreement from Isode
9 * Limited, or a written licence from an organisation licenced by Isode
10 * Limited to grant such a licence.
11 */
12
13/*
14 * dsapi_identity.h
15 *
16 * Isode-internal API methods for holding an "identity". Mostly for
17 * strong authentication, SASL/TLS.
18 */
19
20#ifndef ISODE_DSAPI_IDENTITY_H
21#define ISODE_DSAPI_IDENTITY_H
22
23#include <stddef.h>
24#include <sys/stat.h>
25#include <isode/ds/dsapi/dsapi_cdecl.h>
27#include <openssl/evp.h>
28#include <isode/crypto/x509.h>
29
58LIBDSAPI_CDECL
60 DS_Identity **identity_p,
61 const char *authz,
62 const char *pkcs12_file,
63 const char *pkcs12_pphr);
64
76LIBDSAPI_CDECL
78 const DS_Identity *source_identity,
79 DS_Identity **copy_p);
80
86LIBDSAPI_CDECL
88 DS_Identity *identity,
89 const char **authz);
90
96LIBDSAPI_CDECL
98 DS_Identity *identity,
99 X509_IDENTITY **id);
100
107LIBDSAPI_CDECL
109 DS_Identity *identity,
110 X509_CERT_CTX **ctx);
111
117LIBDSAPI_CDECL
119 DS_Identity *identity);
120
126LIBDSAPI_CDECL
128 DS_Identity *identity,
129 X509 **cert);
130
136LIBDSAPI_CDECL
138 DS_Identity *identity,
139 DS_AttrValList **av_list_p);
140
146LIBDSAPI_CDECL
148 DS_Identity *identity,
149 DS_AttrValList **av_list_p);
150
155#endif /* ISODE_DSAPI_IDENTITY_H */
Directory API type definitions and forward declarations of private types.
struct DS_AttrVal DS_AttrValList
struct DS_Identity DS_Identity
Definition dsapi_types.h:57
DS_Status
Definition dsapi_const.h:66
DS_Status DS_Identity_get_user_certificate(DS_Identity *identity, X509 **cert)
Extract the certificate identity [in] Handle cert [out] cert.
DS_Status DS_Identity_get_cert_ctx(DS_Identity *identity, X509_CERT_CTX **ctx)
Get the underlying X509_CERT_CTX. This generates one if necessary (from the identity and the applicat...
DS_Status DS_Identity_get_certificates(DS_Identity *identity, DS_AttrValList **av_list_p)
Get untrusted certificates identity [in] Handle av_list_p [out] certificates.
DS_Status DS_Identity_Copy(const DS_Identity *source_identity, DS_Identity **copy_p)
Copy a DS_Identity structure.
DS_Status DS_Identity_get_ident(DS_Identity *identity, X509_IDENTITY **id)
Get the underlying X509_IDENTITY identity [in] Handle id [out] underlying identity.
DS_Status DS_Identity_New(DS_Identity **identity_p, const char *authz, const char *pkcs12_file, const char *pkcs12_pphr)
Create an identity.
void DS_Identity_Delete(DS_Identity *identity)
Delete identity.
DS_Status DS_Identity_get_authz(DS_Identity *identity, const char **authz)
Get the authz identity [in] Handle authz [out] authz (may be NULL)
DS_Status DS_Identity_get_trust_anchors(DS_Identity *identity, DS_AttrValList **av_list_p)
Get trust anchors identity [in] Handle av_list_p [out] certificates.

All rights reserved © 2002 - 2024 Isode Ltd.