@@ -434,17 +434,11 @@ void AddFingerprintDigest(
434434 }
435435}
436436
437- MaybeLocal<Value> GetCurveASN1Name (Environment* env, const int nid) {
438- const char * nist = OBJ_nid2sn (nid);
439- return nist != nullptr ?
440- MaybeLocal<Value>(OneByteString (env->isolate (), nist)) :
441- MaybeLocal<Value>(Undefined (env->isolate ()));
442- }
443-
444- MaybeLocal<Value> GetCurveNistName (Environment* env, const int nid) {
445- const char * nist = EC_curve_nid2nist (nid);
446- return nist != nullptr ?
447- MaybeLocal<Value>(OneByteString (env->isolate (), nist)) :
437+ template <const char * (*nid2string)(int nid)>
438+ MaybeLocal<Value> GetCurveName(Environment* env, const int nid) {
439+ const char * name = nid2string (nid);
440+ return name != nullptr ?
441+ MaybeLocal<Value>(OneByteString (env->isolate (), name)) :
448442 MaybeLocal<Value>(Undefined (env->isolate ()));
449443}
450444
@@ -1425,11 +1419,11 @@ MaybeLocal<Object> X509ToObject(
14251419 if (!Set<Value>(context,
14261420 info,
14271421 env->asn1curve_string (),
1428- GetCurveASN1Name (env, nid)) ||
1422+ GetCurveName<OBJ_nid2sn> (env, nid)) ||
14291423 !Set<Value>(context,
14301424 info,
14311425 env->nistcurve_string (),
1432- GetCurveNistName (env, nid))) {
1426+ GetCurveName<EC_curve_nid2nist> (env, nid))) {
14331427 return MaybeLocal<Object>();
14341428 }
14351429 } else {
0 commit comments