if (j < 70) j+=100;
if (j < 50) j+=100;
int X509_cmp_current_time(ctm)ASN1_UTCTIME *ctm;	{	char *str;	ASN1_UTCTIME atm;	time_t offset;	char buff1[24],buff2[24],*p;	int i,j;	p=buff1;	i=ctm->length;	str=(char *)ctm->data;	if ((i < 11) || (i > 17)) return(0);	memcpy(p,str,10);	p+=10;	str+=10;	if ((*str == 'Z') || (*str == '-') || (*str == '+'))		{ *(p++)='0'; *(p++)='0'; }	else	{ *(p++)= *(str++); *(p++)= *(str++); }	*(p++)='Z';	*(p++)='\0';	if (*str == 'Z')		offset=0;	else		{		if ((*str != '+') && (str[5] != '-'))			return(0);		offset=((str[1]-'0')*10+(str[2]-'0'))*60;		offset+=(str[3]-'0')*10+(str[4]-'0');		if (*str == '-')			offset= -offset;		}	atm.type=V_ASN1_UTCTIME;	atm.length=sizeof(buff2);	atm.data=(unsigned char *)buff2;	X509_gmtime_adj(&atm,-offset);	i=(buff1[0]-'0')*10+(buff1[1]-'0');	if (i < 70) i+=100;	j=(buff2[0]-'0')*10+(buff2[1]-'0');	if (j < 70) j+=100;	if (i < j) return (-1);	if (i > j) return (1);	i=strcmp(buff1,buff2);	if (i == 0) /* wait a second then return younger :-) */		return(-1);	else		return(i);	}