Lines Matching refs:end
109 const char * beg, const char * end) in Curl_getASN1Element() argument
120 if(beg >= end || !*beg) in Curl_getASN1Element()
134 if(beg >= end) in Curl_getASN1Element()
145 while(beg < end && *beg) { in Curl_getASN1Element()
146 beg = Curl_getASN1Element(&lelem, beg, end); in Curl_getASN1Element()
150 if(beg >= end) in Curl_getASN1Element()
152 elem->end = beg; in Curl_getASN1Element()
155 else if(beg + b > end) in Curl_getASN1Element()
166 if((unsigned long) (end - beg) < len) in Curl_getASN1Element()
169 elem->end = beg + len; in Curl_getASN1Element()
170 return elem->end; in Curl_getASN1Element()
187 static const char * bool2str(const char * beg, const char * end) in bool2str() argument
193 if(end - beg != 1) in bool2str()
198 static const char * octet2str(const char * beg, const char * end) in octet2str() argument
200 size_t n = end - beg; in octet2str()
208 for(n = 0; beg < end; n += 3) in octet2str()
213 static const char * bit2str(const char * beg, const char * end) in bit2str() argument
218 if(++beg > end) in bit2str()
220 return octet2str(beg, end); in bit2str()
223 static const char * int2str(const char * beg, const char * end) in int2str() argument
226 size_t n = end - beg; in int2str()
236 return octet2str(beg, end); in int2str()
244 while(beg < end); in int2str()
249 utf8asn1str(char * * to, int type, const char * from, const char * end) in utf8asn1str() argument
251 size_t inlength = end - from; in utf8asn1str()
296 for(outlength = 0; from < end;) { in utf8asn1str()
338 static const char * string2str(int type, const char * beg, const char * end) in string2str() argument
345 if(utf8asn1str(&buf, type, beg, end) < 0) in string2str()
370 static int encodeOID(char * buf, int n, const char * beg, const char * end) in encodeOID() argument
391 while(beg < end) { in encodeOID()
409 static const char * OID2str(const char * beg, const char * end, bool symbolic) in OID2str() argument
418 if(beg < end) { in OID2str()
419 n = encodeOID((char *) NULL, -1, beg, end); in OID2str()
423 encodeOID(buf, n, beg, end); in OID2str()
439 static const char * GTime2str(const char * beg, const char * end) in GTime2str() argument
451 for(fracp = beg; fracp < end && *fracp >= '0' && *fracp <= '9'; fracp++) in GTime2str()
472 if(fracp < end && (*fracp == '.' || *fracp == ',')) { in GTime2str()
476 while(tzp < end && *tzp >= '0' && *tzp <= '9'); in GTime2str()
483 if(tzp >= end) in GTime2str()
487 end = tzp + 4; in GTime2str()
494 tzl = end - tzp; in GTime2str()
502 static const char * UTime2str(const char * beg, const char * end) in UTime2str() argument
511 for(tzp = beg; tzp < end && *tzp >= '0' && *tzp <= '9'; tzp++) in UTime2str()
525 if(tzp >= end) in UTime2str()
529 end = tzp + 3; in UTime2str()
534 tzl = end - tzp; in UTime2str()
554 return bool2str(elem->beg, elem->end); in Curl_ASN1tostr()
557 return int2str(elem->beg, elem->end); in Curl_ASN1tostr()
559 return bit2str(elem->beg, elem->end); in Curl_ASN1tostr()
561 return octet2str(elem->beg, elem->end); in Curl_ASN1tostr()
565 return OID2str(elem->beg, elem->end, TRUE); in Curl_ASN1tostr()
567 return UTime2str(elem->beg, elem->end); in Curl_ASN1tostr()
569 return GTime2str(elem->beg, elem->end); in Curl_ASN1tostr()
578 return string2str(type, elem->beg, elem->end); in Curl_ASN1tostr()
599 for(p1 = dn->beg; p1 < dn->end;) { in encodeDN()
600 p1 = Curl_getASN1Element(&rdn, p1, dn->end); in encodeDN()
601 for(p2 = rdn.beg; p2 < rdn.end;) { in encodeDN()
602 p2 = Curl_getASN1Element(&atv, p2, rdn.end); in encodeDN()
603 p3 = Curl_getASN1Element(&oid, atv.beg, atv.end); in encodeDN()
604 Curl_getASN1Element(&value, p3, atv.end); in encodeDN()
673 const char * beg, const char * end) in Curl_parseX509() argument
686 cert->certificate.end = end; in Curl_parseX509()
689 Curl_getASN1Element(&elem, beg, end); in Curl_parseX509()
691 end = elem.end; in Curl_parseX509()
694 beg = Curl_getASN1Element(&tbsCertificate, beg, end); in Curl_parseX509()
696 beg = Curl_getASN1Element(&cert->signatureAlgorithm, beg, end); in Curl_parseX509()
698 Curl_getASN1Element(&cert->signature, beg, end); in Curl_parseX509()
702 end = tbsCertificate.end; in Curl_parseX509()
706 cert->version.end = &defaultVersion + sizeof defaultVersion;; in Curl_parseX509()
707 beg = Curl_getASN1Element(&elem, beg, end); in Curl_parseX509()
709 Curl_getASN1Element(&cert->version, elem.beg, elem.end); in Curl_parseX509()
710 beg = Curl_getASN1Element(&elem, beg, end); in Curl_parseX509()
714 beg = Curl_getASN1Element(&cert->signatureAlgorithm, beg, end); in Curl_parseX509()
716 beg = Curl_getASN1Element(&cert->issuer, beg, end); in Curl_parseX509()
718 beg = Curl_getASN1Element(&elem, beg, end); in Curl_parseX509()
719 ccp = Curl_getASN1Element(&cert->notBefore, elem.beg, elem.end); in Curl_parseX509()
720 Curl_getASN1Element(&cert->notAfter, ccp, elem.end); in Curl_parseX509()
722 beg = Curl_getASN1Element(&cert->subject, beg, end); in Curl_parseX509()
724 beg = Curl_getASN1Element(&cert->subjectPublicKeyInfo, beg, end); in Curl_parseX509()
727 cert->subjectPublicKeyInfo.end); in Curl_parseX509()
729 cert->subjectPublicKeyInfo.end); in Curl_parseX509()
734 cert->issuerUniqueID.beg = cert->issuerUniqueID.end = ""; in Curl_parseX509()
735 cert->subjectUniqueID.beg = cert->subjectUniqueID.end = ""; in Curl_parseX509()
737 cert->extensions.beg = cert->extensions.end = ""; in Curl_parseX509()
738 if(beg < end) in Curl_parseX509()
739 beg = Curl_getASN1Element(&elem, beg, end); in Curl_parseX509()
742 if(beg < end) in Curl_parseX509()
743 beg = Curl_getASN1Element(&elem, beg, end); in Curl_parseX509()
747 if(beg < end) in Curl_parseX509()
748 beg = Curl_getASN1Element(&elem, beg, end); in Curl_parseX509()
751 Curl_getASN1Element(&cert->extensions, elem.beg, elem.end); in Curl_parseX509()
772 const char * beg, const char * end) in dumpAlgo() argument
778 beg = Curl_getASN1Element(&oid, beg, end); in dumpAlgo()
781 param->beg = param->end = end; in dumpAlgo()
782 if(beg < end) in dumpAlgo()
783 Curl_getASN1Element(param, beg, end); in dumpAlgo()
784 return OID2str(oid.beg, oid.end, TRUE); in dumpAlgo()
818 Curl_getASN1Element(&pk, pubkey->beg + 1, pubkey->end); in do_pubkey()
821 p = Curl_getASN1Element(&elem, pk.beg, pk.end); in do_pubkey()
823 for(q = elem.beg; !*q && q < elem.end; q++) in do_pubkey()
825 len = (unsigned long)((elem.end - q) * 8); in do_pubkey()
842 Curl_getASN1Element(&elem, p, pk.end); in do_pubkey()
846 p = Curl_getASN1Element(&elem, param->beg, param->end); in do_pubkey()
848 p = Curl_getASN1Element(&elem, p, param->end); in do_pubkey()
850 Curl_getASN1Element(&elem, p, param->end); in do_pubkey()
855 p = Curl_getASN1Element(&elem, param->beg, param->end); in do_pubkey()
857 Curl_getASN1Element(&elem, param->beg, param->end); in do_pubkey()
871 const char * end) in Curl_extract_certinfo() argument
892 Curl_parseX509(&cert, beg, end); in Curl_extract_certinfo()
916 for(ccp = cert.version.beg; ccp < cert.version.end; ccp++) in Curl_extract_certinfo()
940 cert.signatureAlgorithm.end); in Curl_extract_certinfo()
971 cert.subjectPublicKeyAlgorithm.end); in Curl_extract_certinfo()
995 cert.certificate.end - cert.certificate.beg, in Curl_extract_certinfo()
1032 static const char * checkOID(const char * beg, const char * end, in checkOID() argument
1043 ccp = Curl_getASN1Element(&e, beg, end); in checkOID()
1047 p = OID2str(e.beg, e.end, FALSE); in checkOID()
1057 const char * beg, const char * end) in Curl_verifyhost() argument
1085 Curl_parseX509(&cert, beg, end); in Curl_verifyhost()
1097 for(p = cert.extensions.beg; p < cert.extensions.end && matched != 1;) { in Curl_verifyhost()
1098 p = Curl_getASN1Element(&ext, p, cert.extensions.end); in Curl_verifyhost()
1100 ext.beg = checkOID(ext.beg, ext.end, sanOID); in Curl_verifyhost()
1102 ext.beg = Curl_getASN1Element(&elem, ext.beg, ext.end); in Curl_verifyhost()
1105 ext.beg = Curl_getASN1Element(&elem, ext.beg, ext.end); in Curl_verifyhost()
1107 Curl_getASN1Element(&elem, elem.beg, elem.end); in Curl_verifyhost()
1109 for(q = elem.beg; matched != 1 && q < elem.end;) { in Curl_verifyhost()
1110 q = Curl_getASN1Element(&name, q, elem.end); in Curl_verifyhost()
1114 name.beg, name.end); in Curl_verifyhost()
1123 matched = (size_t) (name.end - q) == addrlen && in Curl_verifyhost()
1145 name.beg = name.end = ""; in Curl_verifyhost()
1149 while(q < cert.subject.end) { in Curl_verifyhost()
1150 q = Curl_getASN1Element(&dn, q, cert.subject.end); in Curl_verifyhost()
1151 for(p = dn.beg; p < dn.end;) { in Curl_verifyhost()
1152 p = Curl_getASN1Element(&elem, p, dn.end); in Curl_verifyhost()
1154 elem.beg = checkOID(elem.beg, elem.end, cnOID); in Curl_verifyhost()
1161 if(!Curl_getASN1Element(&elem, name.beg, name.end)) in Curl_verifyhost()
1164 len = utf8asn1str(&dnsname, elem.tag, elem.beg, elem.end); in Curl_verifyhost()