示例#1
0
int i2d_ASN1_UTCTIME(ASN1_UTCTIME *a, unsigned char **pp)
	{
#ifndef CHARSET_EBCDIC
	return(i2d_ASN1_bytes((ASN1_STRING *)a,pp,
		V_ASN1_UTCTIME,V_ASN1_UNIVERSAL));
#else
	/* KLUDGE! We convert to ascii before writing DER */
	int len;
	char tmp[24];
	ASN1_STRING x = *(ASN1_STRING *)a;

	len = x.length;
	ebcdic2ascii(tmp, x.data, (len >= sizeof tmp) ? sizeof tmp : len);
	x.data = tmp;
	return i2d_ASN1_bytes(&x, pp, V_ASN1_UTCTIME,V_ASN1_UNIVERSAL);
#endif
	}
示例#2
0
文件: a_time.c 项目: RobinWuDev/Qt
int i2d_ASN1_TIME(ASN1_TIME *a, unsigned char **pp)
	{
	if(a->type == V_ASN1_UTCTIME || a->type == V_ASN1_GENERALIZEDTIME)
				return(i2d_ASN1_bytes((ASN1_STRING *)a,pp,
				     a->type ,V_ASN1_UNIVERSAL));
	OPENSSL_PUT_ERROR(ASN1, XXX, ASN1_R_EXPECTING_A_TIME);
	return -1;
	}
示例#3
0
int
i2d_ASN1_TIME(ASN1_TIME *a, unsigned char **pp)
{
	if (a->type == V_ASN1_UTCTIME || a->type == V_ASN1_GENERALIZEDTIME)
		return(i2d_ASN1_bytes((ASN1_STRING *)a, pp,
		    a->type, V_ASN1_UNIVERSAL));
	ASN1err(ASN1_F_I2D_ASN1_TIME, ASN1_R_EXPECTING_A_TIME);
	return -1;
}
示例#4
0
int i2d_ASN1_GENERALIZEDTIME(ASN1_GENERALIZEDTIME *a, unsigned char **pp)
	{
#ifdef CHARSET_EBCDIC
	/* KLUDGE! We convert to ascii before writing DER */
	int len;
	char tmp[24];
	ASN1_STRING tmpstr = *(ASN1_STRING *)a;

	len = tmpstr.length;
	ebcdic2ascii(tmp, tmpstr.data, (len >= sizeof tmp) ? sizeof tmp : len);
	tmpstr.data = tmp;

	a = (ASN1_GENERALIZEDTIME *) &tmpstr;
#endif
	return(i2d_ASN1_bytes((ASN1_STRING *)a,pp,
		V_ASN1_GENERALIZEDTIME,V_ASN1_UNIVERSAL));
	}
示例#5
0
int i2d_ASN1_TIME(ASN1_TIME *a, unsigned char **pp)
  {
#ifdef CHARSET_EBCDIC
  /* KLUDGE! We convert to ascii before writing DER */
  char tmp[24];
  ASN1_STRING tmpstr;

  if(a->type == V_ASN1_UTCTIME || a->type == V_ASN1_GENERALIZEDTIME) {
      int len;

      tmpstr = *(ASN1_STRING *)a;
      len = tmpstr.length;
      ebcdic2ascii(tmp, tmpstr.data, (len >= sizeof tmp) ? sizeof tmp : len);
      tmpstr.data = tmp;
      a = (ASN1_GENERALIZEDTIME *) &tmpstr;
  }
#endif
  if(a->type == V_ASN1_UTCTIME || a->type == V_ASN1_GENERALIZEDTIME)
        return(i2d_ASN1_bytes((ASN1_STRING *)a,pp,
             a->type ,V_ASN1_UNIVERSAL));
  ASN1err(ASN1_F_I2D_ASN1_TIME,ASN1_R_EXPECTING_A_TIME);
  return -1;
  }
示例#6
0
int i2d_ASN1_UTCTIME(ASN1_UTCTIME *a, unsigned char **pp)
{
    return (i2d_ASN1_bytes((ASN1_STRING *)a, pp,
                           V_ASN1_UTCTIME, V_ASN1_UNIVERSAL));
}
示例#7
0
int i2d_ASN1_BMPSTRING(ASN1_BMPSTRING *a, unsigned char **pp)
	{
	return(i2d_ASN1_bytes((ASN1_STRING *)a,pp,
		V_ASN1_BMPSTRING,V_ASN1_UNIVERSAL));
	}