blob: 3abfa52c320b36b92c1ff8eee5cecb8e3b607d1a [file] [log] [blame]
Jean-Paul Calderone897bc252008-02-18 20:50:23 -05001/*
2 * pkcs12.h
3 *
4 * Copyright (C) AB Strakt 2001, All rights reserved
5 *
6 * Export PKCS12 functions and data structure.
7 *
8 * @(#) $$
9 */
10#ifndef PyOpenSSL_crypto_PKCS12_H_
11#define PyOpenSSL_crypto_PKCS12_H_
12
13#include <Python.h>
14#include <openssl/pkcs12.h>
15#include <openssl/asn1.h>
16
17extern int init_crypto_pkcs12 (PyObject *);
18
19extern PyTypeObject crypto_PKCS12_Type;
20
21#define crypto_PKCS12_Check(v) ((v)->ob_type == &crypto_PKCS12_Type)
22
23typedef struct {
24 PyObject_HEAD
Jean-Paul Calderoneb1a3af12009-07-25 12:21:18 -040025 /*
26 * These either refer to a PyObject* of the appropriate type, or Py_None if
27 * they don't have a value. They aren't set to NULL except during
28 * finalization.
29 */
30 PyObject *cert;
31 PyObject *key;
32 PyObject *cacerts;
33 PyObject *friendlyname;
Jean-Paul Calderone897bc252008-02-18 20:50:23 -050034} crypto_PKCS12Obj;
35
Rick Dean623ee362009-07-17 12:22:16 -050036crypto_PKCS12Obj *
37crypto_PKCS12_New(PKCS12 *p12, char *passphrase);
38
Jean-Paul Calderone897bc252008-02-18 20:50:23 -050039#endif