@@ -438,17 +438,11 @@ void AddFingerprintDigest(
438438 }
439439}
440440
441- MaybeLocal<Value> GetCurveASN1Name (Environment* env, const int nid) {
442- const char * nist = OBJ_nid2sn (nid);
443- return nist != nullptr ?
444- MaybeLocal<Value>(OneByteString (env->isolate (), nist)) :
445- MaybeLocal<Value>(Undefined (env->isolate ()));
446- }
447-
448- MaybeLocal<Value> GetCurveNistName (Environment* env, const int nid) {
449- const char * nist = EC_curve_nid2nist (nid);
450- return nist != nullptr ?
451- MaybeLocal<Value>(OneByteString (env->isolate (), nist)) :
441+ template <const char * (*nid2string)(int nid)>
442+ MaybeLocal<Value> GetCurveName(Environment* env, const int nid) {
443+ const char * name = nid2string (nid);
444+ return name != nullptr ?
445+ MaybeLocal<Value>(OneByteString (env->isolate (), name)) :
452446 MaybeLocal<Value>(Undefined (env->isolate ()));
453447}
454448
@@ -1393,11 +1387,11 @@ MaybeLocal<Object> X509ToObject(
13931387 if (!Set<Value>(context,
13941388 info,
13951389 env->asn1curve_string (),
1396- GetCurveASN1Name (env, nid)) ||
1390+ GetCurveName<OBJ_nid2sn> (env, nid)) ||
13971391 !Set<Value>(context,
13981392 info,
13991393 env->nistcurve_string (),
1400- GetCurveNistName (env, nid))) {
1394+ GetCurveName<EC_curve_nid2nist> (env, nid))) {
14011395 return MaybeLocal<Object>();
14021396 }
14031397 } else {
0 commit comments