|
Packit |
b00eeb |
/*
|
|
Packit |
b00eeb |
* gnome-keyring
|
|
Packit |
b00eeb |
*
|
|
Packit |
b00eeb |
* Copyright (C) 2008 Stefan Walter
|
|
Packit |
b00eeb |
*
|
|
Packit |
b00eeb |
* This program is free software; you can redistribute it and/or modify
|
|
Packit |
b00eeb |
* it under the terms of the GNU Lesser General Public License as
|
|
Packit |
b00eeb |
* published by the Free Software Foundation; either version 2.1 of
|
|
Packit |
b00eeb |
* the License, or (at your option) any later version.
|
|
Packit |
b00eeb |
*
|
|
Packit |
b00eeb |
* This program is distributed in the hope that it will be useful, but
|
|
Packit |
b00eeb |
* WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
Packit |
b00eeb |
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
Packit |
b00eeb |
* Lesser General Public License for more details.
|
|
Packit |
b00eeb |
*
|
|
Packit |
b00eeb |
* You should have received a copy of the GNU Lesser General Public
|
|
Packit |
b00eeb |
* License along with this program; if not, see <http://www.gnu.org/licenses/>.
|
|
Packit |
b00eeb |
*/
|
|
Packit |
b00eeb |
|
|
Packit |
b00eeb |
#if !defined (__GCR_INSIDE_HEADER__) && !defined (GCR_COMPILATION)
|
|
Packit |
b00eeb |
#error "Only <gcr/gcr.h> or <gcr/gcr-base.h> can be included directly."
|
|
Packit |
b00eeb |
#endif
|
|
Packit |
b00eeb |
|
|
Packit |
b00eeb |
#ifndef __GCR_CERTIFICATE_H__
|
|
Packit |
b00eeb |
#define __GCR_CERTIFICATE_H__
|
|
Packit |
b00eeb |
|
|
Packit |
b00eeb |
#include "gcr-types.h"
|
|
Packit |
b00eeb |
#include "gcr-column.h"
|
|
Packit |
b00eeb |
#include "gcr-comparable.h"
|
|
Packit |
b00eeb |
|
|
Packit |
b00eeb |
#include <glib-object.h>
|
|
Packit |
b00eeb |
#include <gio/gio.h>
|
|
Packit |
b00eeb |
|
|
Packit |
b00eeb |
G_BEGIN_DECLS
|
|
Packit |
b00eeb |
|
|
Packit |
b00eeb |
#define GCR_CERTIFICATE_COLUMNS (gcr_certificate_get_columns ())
|
|
Packit |
b00eeb |
#define GCR_TYPE_CERTIFICATE (gcr_certificate_get_type ())
|
|
Packit |
b00eeb |
#define GCR_CERTIFICATE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GCR_TYPE_CERTIFICATE, GcrCertificate))
|
|
Packit |
b00eeb |
#define GCR_IS_CERTIFICATE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GCR_TYPE_CERTIFICATE))
|
|
Packit |
b00eeb |
#define GCR_CERTIFICATE_GET_INTERFACE(inst) (G_TYPE_INSTANCE_GET_INTERFACE ((inst), GCR_TYPE_CERTIFICATE, GcrCertificateIface))
|
|
Packit |
b00eeb |
|
|
Packit |
b00eeb |
typedef struct _GcrCertificate GcrCertificate;
|
|
Packit |
b00eeb |
typedef struct _GcrCertificateIface GcrCertificateIface;
|
|
Packit |
b00eeb |
|
|
Packit |
b00eeb |
struct _GcrCertificateIface {
|
|
Packit |
b00eeb |
GTypeInterface parent;
|
|
Packit |
b00eeb |
|
|
Packit |
b00eeb |
|
|
Packit |
b00eeb |
/*
|
|
Packit |
b00eeb |
* g-ir-scanner cannot comprehend this yet ...
|
|
Packit |
b00eeb |
* See: https://bugzilla.gnome.org/show_bug.cgi?id=725501
|
|
Packit |
b00eeb |
*
|
|
Packit |
b00eeb |
* GcrCertificate.get_der_data:
|
|
Packit |
b00eeb |
* @self: a #GcrCertificate
|
|
Packit |
b00eeb |
* @n_data: a pointer to a location to store the size of the resulting DER data.
|
|
Packit |
b00eeb |
*
|
|
Packit |
b00eeb |
* Implemented to return the raw DER data for an X.509 certificate. The data
|
|
Packit |
b00eeb |
* should be owned by the #GcrCertificate object.
|
|
Packit |
b00eeb |
*
|
|
Packit |
b00eeb |
* Returns: (array length=n_data): raw DER data of the X.509 certificate
|
|
Packit |
b00eeb |
*/
|
|
Packit |
b00eeb |
const guint8 * (* get_der_data) (GcrCertificate *self,
|
|
Packit |
b00eeb |
gsize *n_data);
|
|
Packit |
b00eeb |
|
|
Packit |
b00eeb |
/*< private >*/
|
|
Packit |
b00eeb |
gpointer dummy1;
|
|
Packit |
b00eeb |
gpointer dummy2;
|
|
Packit |
b00eeb |
gpointer dummy3;
|
|
Packit |
b00eeb |
gpointer dummy5;
|
|
Packit |
b00eeb |
gpointer dummy6;
|
|
Packit |
b00eeb |
gpointer dummy7;
|
|
Packit |
b00eeb |
gpointer dummy8;
|
|
Packit |
b00eeb |
};
|
|
Packit |
b00eeb |
|
|
Packit |
b00eeb |
GType gcr_certificate_get_type (void);
|
|
Packit |
b00eeb |
|
|
Packit |
b00eeb |
const guint8 * gcr_certificate_get_der_data (GcrCertificate *self,
|
|
Packit |
b00eeb |
gsize *n_data);
|
|
Packit |
b00eeb |
|
|
Packit |
b00eeb |
const GcrColumn* gcr_certificate_get_columns (void);
|
|
Packit |
b00eeb |
|
|
Packit |
b00eeb |
gint gcr_certificate_compare (GcrComparable *first,
|
|
Packit |
b00eeb |
GcrComparable *other);
|
|
Packit |
b00eeb |
|
|
Packit |
b00eeb |
gchar * gcr_certificate_get_issuer_name (GcrCertificate *self);
|
|
Packit |
b00eeb |
|
|
Packit |
b00eeb |
gchar* gcr_certificate_get_issuer_cn (GcrCertificate *self);
|
|
Packit |
b00eeb |
|
|
Packit |
b00eeb |
gchar* gcr_certificate_get_issuer_dn (GcrCertificate *self);
|
|
Packit |
b00eeb |
|
|
Packit |
b00eeb |
gchar* gcr_certificate_get_issuer_part (GcrCertificate *self,
|
|
Packit |
b00eeb |
const gchar *part);
|
|
Packit |
b00eeb |
|
|
Packit |
b00eeb |
guchar * gcr_certificate_get_issuer_raw (GcrCertificate *self,
|
|
Packit |
b00eeb |
gsize *n_data);
|
|
Packit |
b00eeb |
|
|
Packit |
b00eeb |
gboolean gcr_certificate_is_issuer (GcrCertificate *self,
|
|
Packit |
b00eeb |
GcrCertificate *issuer);
|
|
Packit |
b00eeb |
|
|
Packit |
b00eeb |
gchar * gcr_certificate_get_subject_name (GcrCertificate *self);
|
|
Packit |
b00eeb |
|
|
Packit |
b00eeb |
gchar* gcr_certificate_get_subject_cn (GcrCertificate *self);
|
|
Packit |
b00eeb |
|
|
Packit |
b00eeb |
gchar* gcr_certificate_get_subject_dn (GcrCertificate *self);
|
|
Packit |
b00eeb |
|
|
Packit |
b00eeb |
gchar* gcr_certificate_get_subject_part (GcrCertificate *self,
|
|
Packit |
b00eeb |
const gchar *part);
|
|
Packit |
b00eeb |
|
|
Packit |
b00eeb |
guchar * gcr_certificate_get_subject_raw (GcrCertificate *self,
|
|
Packit |
b00eeb |
gsize *n_data);
|
|
Packit |
b00eeb |
|
|
Packit |
b00eeb |
GDate* gcr_certificate_get_issued_date (GcrCertificate *self);
|
|
Packit |
b00eeb |
|
|
Packit |
b00eeb |
GDate* gcr_certificate_get_expiry_date (GcrCertificate *self);
|
|
Packit |
b00eeb |
|
|
Packit |
b00eeb |
guchar* gcr_certificate_get_serial_number (GcrCertificate *self,
|
|
Packit |
b00eeb |
gsize *n_length);
|
|
Packit |
b00eeb |
|
|
Packit |
b00eeb |
gchar* gcr_certificate_get_serial_number_hex (GcrCertificate *self);
|
|
Packit |
b00eeb |
|
|
Packit |
b00eeb |
guint gcr_certificate_get_key_size (GcrCertificate *self);
|
|
Packit |
b00eeb |
|
|
Packit |
b00eeb |
guchar* gcr_certificate_get_fingerprint (GcrCertificate *self,
|
|
Packit |
b00eeb |
GChecksumType type,
|
|
Packit |
b00eeb |
gsize *n_length);
|
|
Packit |
b00eeb |
|
|
Packit |
b00eeb |
gchar* gcr_certificate_get_fingerprint_hex (GcrCertificate *self,
|
|
Packit |
b00eeb |
GChecksumType type);
|
|
Packit |
b00eeb |
|
|
Packit |
b00eeb |
gchar * gcr_certificate_get_markup_text (GcrCertificate *self);
|
|
Packit |
b00eeb |
|
|
Packit |
b00eeb |
GIcon* gcr_certificate_get_icon (GcrCertificate *self);
|
|
Packit |
b00eeb |
|
|
Packit |
b00eeb |
gboolean gcr_certificate_get_basic_constraints (GcrCertificate *self,
|
|
Packit |
b00eeb |
gboolean *is_ca,
|
|
Packit |
b00eeb |
gint *path_len);
|
|
Packit |
b00eeb |
|
|
Packit |
b00eeb |
#define GCR_CERTIFICATE_MIXIN_IMPLEMENT_COMPARABLE() \
|
|
Packit |
b00eeb |
G_IMPLEMENT_INTERFACE (GCR_TYPE_COMPARABLE, gcr_certificate_mixin_comparable_init)
|
|
Packit |
b00eeb |
|
|
Packit |
b00eeb |
void gcr_certificate_mixin_emit_notify (GcrCertificate *self);
|
|
Packit |
b00eeb |
|
|
Packit |
b00eeb |
void gcr_certificate_mixin_comparable_init (GcrComparableIface *iface);
|
|
Packit |
b00eeb |
|
|
Packit |
b00eeb |
void gcr_certificate_mixin_class_init (GObjectClass *object_class);
|
|
Packit |
b00eeb |
|
|
Packit |
b00eeb |
void gcr_certificate_mixin_get_property (GObject *obj,
|
|
Packit |
b00eeb |
guint prop_id,
|
|
Packit |
b00eeb |
GValue *value,
|
|
Packit |
b00eeb |
GParamSpec *pspec);
|
|
Packit |
b00eeb |
|
|
Packit |
b00eeb |
G_END_DECLS
|
|
Packit |
b00eeb |
|
|
Packit |
b00eeb |
#endif /* __GCR_CERTIFICATE_H__ */
|