return beforeStatus;
if (LL_CMP(notBeforeA,==,notBeforeB)) { return certValidityEqual; }  return LL_CMP(notBeforeA,<,notBeforeB) ? certValidityChooseB : certValidityChooseA;
CERT_CompareValidityTimes(CERTValidity* val_a, CERTValidity* val_b){    PRTime notBeforeA, notBeforeB, notAfterA, notAfterB;    SECStatus rv;    CERTCompareValidityStatus afterStatus, beforeStatus;    if (!val_a || !val_b)    {        PORT_SetError(SEC_ERROR_INVALID_ARGS);        return certValidityUndetermined;    }    if ( SECSuccess != DER_DecodeTimeChoice(&notBeforeA, &val_a->notBefore) ||         SECSuccess != DER_DecodeTimeChoice(&notBeforeB, &val_b->notBefore) ||         SECSuccess != DER_DecodeTimeChoice(&notAfterA, &val_a->notAfter) ||         SECSuccess != DER_DecodeTimeChoice(&notAfterB, &val_b->notAfter) ) {        return certValidityUndetermined;    }    /* sanity check */    if (certValidityChooseA == GetNewestTime(notBeforeA, notAfterA) ||        certValidityChooseA == GetNewestTime(notBeforeB, notAfterB)) {        PORT_SetError(SEC_ERROR_INVALID_TIME);        return certValidityUndetermined;    }    beforeStatus = GetNewestTime(notBeforeA, notBeforeB);    afterStatus = GetNewestTime(notAfterA, notAfterB);    if (afterStatus != certValidityEqual) {        /* one cert validity goes farthest into the future, select it */        return afterStatus;    }    /* the two certs have the same expiration date */    PORT_Assert(LL_CMP(notAfterA, == , notAfterB));    /* choose cert with the latest start date */    return beforeStatus;}