22 #include "ksslutils.h"
27 #include <tqdatetime.h>
34 TQDateTime ASN1_UTCTIME_QDateTime(ASN1_UTCTIME *tm,
int *isGmt) {
39 int y=0,M=0,d=0,h=0,m=0,s=0;
46 if (i < 10)
goto auq_err;
47 if (v[i-1] ==
'Z') gmt=1;
49 if ((v[i] >
'9') || (v[i] <
'0'))
goto auq_err;
50 y = (v[0]-
'0')*10+(v[1]-
'0');
52 M = (v[2]-
'0')*10+(v[3]-
'0');
53 if ((M > 12) || (M < 1))
goto auq_err;
54 d = (v[4]-
'0')*10+(v[5]-
'0');
55 h = (v[6]-
'0')*10+(v[7]-
'0');
56 m = (v[8]-
'0')*10+(v[9]-
'0');
57 if ( (v[10] >=
'0') && (v[10] <=
'9') &&
58 (v[11] >=
'0') && (v[11] <=
'9'))
59 s = (v[10]-
'0')*10+(v[11]-
'0');
62 qdate.setYMD(y+1900, M, d);
64 qdt.setDate(qdate); qdt.setTime(qtime);
66 if (isGmt) *isGmt = gmt;
71 TQString ASN1_UTCTIME_QString(ASN1_UTCTIME *tm) {
74 TQDateTime qdt = ASN1_UTCTIME_QDateTime(tm, &gmt);
76 qstr = KGlobal::locale()->formatDateTime(qdt,
false,
true);
85 TQString ASN1_INTEGER_QString(ASN1_INTEGER *aint) {
86 char *rep = KOSSL::self()->i2s_ASN1_INTEGER(NULL, aint);
88 KOSSL::self()->OPENSSL_free(rep);