8 #include "ssl_cert_descr_p.h"
9 #include <gwenhywfar/misc.h>
10 #include <gwenhywfar/db.h>
11 #include <gwenhywfar/debug.h>
16 #include <gwenhywfar/gwentime.h>
17 #include <gwenhywfar/ssl_cert_flags.h>
27 GWEN_SSLCERTDESCR *st;
39 if (--(st->_usage)==0) {
41 free(st->countryName);
44 if (st->organizationName)
45 free(st->organizationName);
46 if (st->organizationalUnitName)
47 free(st->organizationalUnitName);
49 free(st->localityName);
50 if (st->stateOrProvinceName)
51 free(st->stateOrProvinceName);
59 free(st->fingerPrint);
60 if (st->fingerPrintSha1)
61 free(st->fingerPrintSha1);
62 if (st->fingerPrintSha512)
63 free(st->fingerPrintSha512);
64 if (st->pubKeyModulus)
65 free(st->pubKeyModulus);
66 if (st->pubKeyExponent)
67 free(st->pubKeyExponent);
84 st->countryName=strdup(d->countryName);
86 st->commonName=strdup(d->commonName);
87 if (d->organizationName)
88 st->organizationName=strdup(d->organizationName);
89 if (d->organizationalUnitName)
90 st->organizationalUnitName=strdup(d->organizationalUnitName);
92 st->localityName=strdup(d->localityName);
93 if (d->stateOrProvinceName)
94 st->stateOrProvinceName=strdup(d->stateOrProvinceName);
100 st->ipAddress=strdup(d->ipAddress);
102 st->fingerPrint=strdup(d->fingerPrint);
103 if (d->fingerPrintSha1)
104 st->fingerPrintSha1=strdup(d->fingerPrintSha1);
105 if (d->fingerPrintSha512)
106 st->fingerPrintSha512=strdup(d->fingerPrintSha512);
107 if (d->pubKeyModulus)
108 st->pubKeyModulus=strdup(d->pubKeyModulus);
109 if (d->pubKeyExponent)
110 st->pubKeyExponent=strdup(d->pubKeyExponent);
112 st->statusText=strdup(d->statusText);
113 st->isError=d->isError;
114 st->statusFlags=d->statusFlags;
128 if (st->organizationName)
131 if (st->organizationalUnitName)
134 if (st->localityName)
137 if (st->stateOrProvinceName)
152 if (st->fingerPrintSha1)
155 if (st->fingerPrintSha512)
158 if (st->pubKeyModulus)
161 if (st->pubKeyExponent)
232 return st->countryName;
239 free(st->countryName);
241 st->countryName=strdup(d);
252 return st->commonName;
259 free(st->commonName);
261 st->commonName=strdup(d);
272 return st->organizationName;
278 if (st->organizationName)
279 free(st->organizationName);
281 st->organizationName=strdup(d);
283 st->organizationName=0;
292 return st->organizationalUnitName;
298 if (st->organizationalUnitName)
299 free(st->organizationalUnitName);
301 st->organizationalUnitName=strdup(d);
303 st->organizationalUnitName=0;
312 return st->localityName;
318 if (st->localityName)
319 free(st->localityName);
321 st->localityName=strdup(d);
332 return st->stateOrProvinceName;
338 if (st->stateOrProvinceName)
339 free(st->stateOrProvinceName);
341 st->stateOrProvinceName=strdup(d);
343 st->stateOrProvinceName=0;
352 return st->notBefore;
392 return st->ipAddress;
401 st->ipAddress=strdup(d);
412 return st->fingerPrint;
419 free(st->fingerPrint);
421 st->fingerPrint=strdup(d);
432 return st->fingerPrintSha1;
438 if (st->fingerPrintSha1)
439 free(st->fingerPrintSha1);
441 st->fingerPrintSha1=strdup(d);
443 st->fingerPrintSha1=0;
452 return st->fingerPrintSha512;
458 if (st->fingerPrintSha512)
459 free(st->fingerPrintSha512);
461 st->fingerPrintSha512=strdup(d);
463 st->fingerPrintSha512=0;
472 return st->pubKeyModulus;
478 if (st->pubKeyModulus)
479 free(st->pubKeyModulus);
481 st->pubKeyModulus=strdup(d);
492 return st->pubKeyExponent;
498 if (st->pubKeyExponent)
499 free(st->pubKeyExponent);
501 st->pubKeyExponent=strdup(d);
503 st->pubKeyExponent=0;
512 return st->statusText;
519 free(st->statusText);
521 st->statusText=strdup(d);
547 return st->statusFlags;
562 return st->_modified;
const char * GWEN_SslCertDescr_GetFingerPrintSha1(const GWEN_SSLCERTDESCR *st)
void GWEN_SslCertDescr_SetStateOrProvinceName(GWEN_SSLCERTDESCR *st, const char *d)
struct GWEN_TIME GWEN_TIME
struct GWEN_SSLCERTDESCR GWEN_SSLCERTDESCR
GWEN_SSLCERTDESCR_LIST * GWEN_SslCertDescr_List_dup(const GWEN_SSLCERTDESCR_LIST *stl)
#define GWEN_DB_FLAGS_OVERWRITE_VARS
struct GWEN_DB_NODE GWEN_DB_NODE
GWEN_SSLCERTDESCR * GWEN_SslCertDescr_fromDb(GWEN_DB_NODE *db)
const char * GWEN_SslCertDescr_GetOrganizationName(const GWEN_SSLCERTDESCR *st)
GWENHYWFAR_API GWEN_TIME * GWEN_Time_dup(const GWEN_TIME *t)
void GWEN_SslCertDescr_List2_free(GWEN_SSLCERTDESCR_LIST2 *l)
#define GWEN_FREE_OBJECT(varname)
void GWEN_SslCertDescr_SetOrganizationName(GWEN_SSLCERTDESCR *st, const char *d)
void GWEN_SslCertDescr_List2_freeAll(GWEN_SSLCERTDESCR_LIST2 *stl)
GWEN_SSLCERTDESCR * GWEN_SslCertDescr_dup(const GWEN_SSLCERTDESCR *d)
const char * GWEN_SslCertDescr_GetFingerPrint(const GWEN_SSLCERTDESCR *st)
void GWEN_SslCertDescr_SetPubKeyModulus(GWEN_SSLCERTDESCR *st, const char *d)
GWENHYWFAR_API GWEN_TIME * GWEN_Time_fromDb(GWEN_DB_NODE *db)
void GWEN_SslCertDescr_List_Add(GWEN_SSLCERTDESCR *element, GWEN_SSLCERTDESCR_LIST *list)
struct GWEN_SSLCERTDESCR_LIST2 GWEN_SSLCERTDESCR_LIST2
const GWEN_TIME * GWEN_SslCertDescr_GetNotBefore(const GWEN_SSLCERTDESCR *st)
const char * GWEN_SslCertDescr_GetStatusText(const GWEN_SSLCERTDESCR *st)
int GWEN_SslCertDescr_ReadDb(GWEN_SSLCERTDESCR *st, GWEN_DB_NODE *db)
GWENHYWFAR_API int GWEN_Time_toDb(const GWEN_TIME *t, GWEN_DB_NODE *db)
const char * GWEN_SslCertDescr_GetOrganizationalUnitName(const GWEN_SSLCERTDESCR *st)
void GWEN_SslCertDescr_SetLocalityName(GWEN_SSLCERTDESCR *st, const char *d)
GWEN_SSLCERTDESCR * GWEN_SslCertDescr_List_Next(const GWEN_SSLCERTDESCR *element)
#define GWEN_NEW_OBJECT(typ, varname)
void GWEN_SslCertDescr_SetFingerPrintSha512(GWEN_SSLCERTDESCR *st, const char *d)
void GWEN_SslCertDescr_SetIsError(GWEN_SSLCERTDESCR *st, int d)
void GWEN_SslCertDescr_Attach(GWEN_SSLCERTDESCR *st)
uint32_t GWEN_SslCertDescr_GetStatusFlags(const GWEN_SSLCERTDESCR *st)
void GWEN_SslCertDescr_SetPubKeyExponent(GWEN_SSLCERTDESCR *st, const char *d)
void GWEN_SslCertDescr_SetCountryName(GWEN_SSLCERTDESCR *st, const char *d)
const char * GWEN_DB_GetCharValue(GWEN_DB_NODE *n, const char *path, int idx, const char *defVal)
const char * GWEN_SslCertDescr_GetPubKeyExponent(const GWEN_SSLCERTDESCR *st)
void GWEN_SslCertDescr_SetOrganizationalUnitName(GWEN_SSLCERTDESCR *st, const char *d)
GWEN_DB_NODE * GWEN_DB_GetGroup(GWEN_DB_NODE *n, uint32_t flags, const char *path)
GWEN_SSLCERTDESCR * GWEN_SslCertDescr_List_First(const GWEN_SSLCERTDESCR_LIST *l)
const char * GWEN_SslCertDescr_GetCountryName(const GWEN_SSLCERTDESCR *st)
GWENHYWFAR_API void GWEN_Time_free(GWEN_TIME *t)
GWEN_LIST2_FUNCTIONS(TYPEMAKER2_TYPE, Typemaker2_Type)
void GWEN_SslCertDescr_SetIpAddress(GWEN_SSLCERTDESCR *st, const char *d)
int GWEN_SslCertDescr_GetIsError(const GWEN_SSLCERTDESCR *st)
const char * GWEN_SslCertDescr_GetCommonName(const GWEN_SSLCERTDESCR *st)
int GWEN_SslCertDescr_toDb(const GWEN_SSLCERTDESCR *st, GWEN_DB_NODE *db)
void GWEN_SslCertDescr_SetNotAfter(GWEN_SSLCERTDESCR *st, const GWEN_TIME *d)
int GWEN_DB_SetCharValue(GWEN_DB_NODE *n, uint32_t flags, const char *path, const char *val)
GWEN_SSLCERTDESCR * GWEN_SslCertDescr_List2_ForEach(GWEN_SSLCERTDESCR_LIST2 *list, GWEN_SSLCERTDESCR_LIST2_FOREACH func, void *user_data)
void GWEN_SslCertDescr_SetStatusText(GWEN_SSLCERTDESCR *st, const char *d)
GWEN_SSLCERTDESCR * GWEN_SslCertDescr_List2__freeAll_cb(GWEN_SSLCERTDESCR *st, void *user_data)
#define GWEN_LIST_INIT(t, element)
const char * GWEN_SslCertDescr_GetIpAddress(const GWEN_SSLCERTDESCR *st)
int GWEN_DB_GetIntValue(GWEN_DB_NODE *n, const char *path, int idx, int defVal)
const char * GWEN_SslCertDescr_GetFingerPrintSha512(const GWEN_SSLCERTDESCR *st)
void GWEN_SslCertDescr_SetNotBefore(GWEN_SSLCERTDESCR *st, const GWEN_TIME *d)
void GWEN_SslCertDescr_SetModified(GWEN_SSLCERTDESCR *st, int i)
int GWEN_DB_SetIntValue(GWEN_DB_NODE *n, uint32_t flags, const char *path, int val)
#define GWEN_LIST_FUNCTIONS(t, pr)
const GWEN_TIME * GWEN_SslCertDescr_GetNotAfter(const GWEN_SSLCERTDESCR *st)
void GWEN_SslCertDescr_SetFingerPrint(GWEN_SSLCERTDESCR *st, const char *d)
#define GWEN_PATH_FLAGS_NAMEMUSTEXIST
int GWEN_SslCertDescr_IsModified(const GWEN_SSLCERTDESCR *st)
void GWEN_SslCertDescr_free(GWEN_SSLCERTDESCR *st)
#define GWEN_LIST_FINI(t, element)
GWEN_SSLCERTDESCR_LIST * GWEN_SslCertDescr_List_new()
const char * GWEN_SslCertDescr_GetLocalityName(const GWEN_SSLCERTDESCR *st)
const char * GWEN_SslCertDescr_GetPubKeyModulus(const GWEN_SSLCERTDESCR *st)
GWEN_SSLCERTDESCR * GWEN_SslCertDescr_new(void)
#define GWEN_DB_FLAGS_DEFAULT
void GWEN_SslCertDescr_SetCommonName(GWEN_SSLCERTDESCR *st, const char *d)
const char * GWEN_SslCertDescr_GetStateOrProvinceName(const GWEN_SSLCERTDESCR *st)
void GWEN_SslCertDescr_SetFingerPrintSha1(GWEN_SSLCERTDESCR *st, const char *d)
void GWEN_SslCertDescr_SetStatusFlags(GWEN_SSLCERTDESCR *st, uint32_t d)