Description
The signerBitmask is hardcoded to 7 when calling requireValidSignature(), meaning that nSigned would be incremented at most 3 times in checkQuorum() as 7 = 00000111.
Consequently, if there are more than 3 signers added in the Verifier contract, Verifier::checkQuorum() will always return false in the following scenarios:
- nSigner >= 4 and nSigned <= 2
- nSigner >= 6 and nSigned <= 3
Recommendation
Make signerBitmask dynamic.
Status
Addressed in #38bbe76.