X509_PURPOSE_MIN
if (purpose >= X509_PURPOSE_MIN && purpose <= X509_PURPOSE_MAX)
return purpose - X509_PURPOSE_MIN;
if (id < X509_PURPOSE_MIN) {
if (purpose >= X509_PURPOSE_MIN && !check_purpose(ctx, x, purpose, i, must_be_ca))