67#define SubjectAltName_getTag(o) ((o)->tag)
68#define SubjectAltName_getLen(o) ((o)->len)
69#define SubjectAltName_getPtr(o) ((o)->ptr)
70#define SubjectAltName_isValid(o) (NULL != SubjectAltName_getPtr(o))
74#define SubjectAltNameEnumerator_nextElement SubjectAltNameEnumerator_getElement
79#define SUBJECTALTNAME_OTHERNAME 0
80#define SUBJECTALTNAME_RFC822NAME 1
81#define SUBJECTALTNAME_DNSNAME 2
82#define SUBJECTALTNAME_X400ADDRESS 3
83#define SUBJECTALTNAME_DIRECTORYNAME 4
84#define SUBJECTALTNAME_EDIPARTYNAME 5
85#define SUBJECTALTNAME_URI 6
86#define SUBJECTALTNAME_IPADDRESS 7
92 const char *a,
int aLen,
const char *b,
int bLen);
102 const char *cn, U16 cnLen, U8 *subjAltPtr,
SharkSslSANLen subjAltLen,
const char *name, U16 nameLen);
154#if SHARKSSL_CHECK_DATE == 0
155#define SharkSslConTrust_CertCnDate SharkSslConTrust_CertCn
TLS objects, certificate/session operations, and public-key interfaces.
U16 SharkSslSANLen
Preserve 16-bit Subject Alternative Name lengths unless the configured handshake limit permits a cert...
Definition: SharkSSL.h:665
struct SubjectAltNameEnumerator SubjectAltNameEnumerator
SubjectAltName Iterator.
time_t BaTime
Definition: SharkSslEx.h:46
SHARKSSL_API int sharkSubjectSubjectAltCmp(const char *cn, U16 cnLen, U8 *subjAltPtr, SharkSslSANLen subjAltLen, const char *name, U16 nameLen)
Compare a length-delimited ASCII reference name with the certificate.
struct SubjectAltName SubjectAltName
SubjectAltName.
SHARKSSL_API int sharkStrCaseCmp(const char *a, int aLen, const char *b, int bLen)
Case insensitive string compare.
SHARKSSL_API BaTime sharkParseCertTime(const U8 *utc, U8 len)
Converts the expected certificate time string format YY[YY]MMDDHHMMSSZ to seconds since Jan 1,...
SHARKSSL_API void SubjectAltNameEnumerator_constructor(SubjectAltNameEnumerator *o, U8 *ptr, SharkSslSANLen len)
SHARKSSL_API void SubjectAltNameEnumerator_getElement(SubjectAltNameEnumerator *o, SubjectAltName *s)
SHARKSSL_API SharkSslConTrust SharkSslCon_trusted(SharkSslCon *o, const char *name, SharkSslCertInfo **cPtr)
Return the peer's trust status and certificate.
struct SharkSslCon SharkSslCon
SharkSslCon is an opaque handle returned by function SharkSsl_createCon.
Definition: SharkSSL.h:496
SharkSslConTrust
SharkSslCon_trusted return values
Definition: SharkSslEx.h:118
@ SharkSslConTrust_Cn
The subject's common name matches the host name of the URL, but the certificate is not trusted.
Definition: SharkSslEx.h:137
@ SharkSslConTrust_CertCnDate
This value is returned instead of SharkSslConTrust_CertCn when a certificate is trusted and the Shark...
Definition: SharkSslEx.h:151
@ SharkSslConTrust_None
The SSL certificate is not trusted and the subject's common name does not matches the host name of th...
Definition: SharkSslEx.h:126
@ SharkSslConTrust_NotSSL
Not a secure connection (SSL handshake not completed).
Definition: SharkSslEx.h:121
@ SharkSslConTrust_Cert
Domain mismatch: The SSL certificate is trusted but the subject's common name does not matches the ho...
Definition: SharkSslEx.h:131
@ SharkSslConTrust_CertCn
The peer's SSL certificate is trusted and the subject's common name matches the host name of the URL.
Definition: SharkSslEx.h:142
The peer's certificate information returned by SharkSslCon_getCertInfo.
Definition: SharkSSL.h:797
SubjectAltName Iterator.
Definition: SharkSslEx.h:52
U8 * ptr
Definition: SharkSslEx.h:53
U32 len
Definition: SharkSslEx.h:54
U32 datalen
Definition: SharkSslEx.h:54
U8 * dataptr
Definition: SharkSslEx.h:53
SubjectAltName.
Definition: SharkSslEx.h:61
U8 * ptr
Definition: SharkSslEx.h:62
U8 tag
Definition: SharkSslEx.h:64
SharkSslSANLen len
Definition: SharkSslEx.h:63