Description:Description\
Status.Vouching is not set anywhere of ProofOfHumanity.sol contract, as many function execution is depending on this status like - fundRequest(), withdrawRequest() & most important advanceState(), these functions will revert.
This Status.Vouching might need to be set while claiming a request i.e in time of calling claimHumanity().
Attack Scenario\
There is no attack required in this case. The calls to above mentioned functions will revert everytime.
Attachments
You can search here and see that the request.status = Status.Vouching was not set anywhere.
In solidity, variables have a default value, in the case of an enum, this is the first item. In the case of Status, this is Vouching.
Therefore, requests are in Vouching by default and we do not need to change them to Vouching.
Github username: -- Twitter username: -- Submission hash (on-chain): 0x68e79e39fee5f6ada4481c4bc07ff7b15f25b7639546b810fd072f2ecec864e0 Severity: high
Description: Description\ Status.Vouching is not set anywhere of ProofOfHumanity.sol contract, as many function execution is depending on this status like - fundRequest(), withdrawRequest() & most important advanceState(), these functions will revert.
This Status.Vouching might need to be set while claiming a request i.e in time of calling claimHumanity().
Attack Scenario\ There is no attack required in this case. The calls to above mentioned functions will revert everytime.
Attachments
You can search here and see that the
request.status = Status.Vouching
was not set anywhere.