I apologize if this has been asked already. It seems like a very basic question but I cannot find an answer to it. Every example of using a modifier to create a "ownerOnly" function uses the "owner = msg.sender" in the constructor, but what if I want to allow a few different addresses/people to modify a contract or execute a function. How do I write the modifier to do this? I tried this, but it didn't work:
modifier onlyMembers {
require(msg.sender == owner || "0xdaa602d3e2aeea57ee753e40ac1639ed20e3174f" || "0x3147ca98dc9235e38c4cd3f82315332294e9234a");
_;
}
I also tried using checksum addresses and created new, global address variables called "member1" and "member2" which point to those addresses like this:
contract Autos {
address owner;
address member1;
address member2;
constructor() public {
owner = msg.sender;
member1 = 0xDAA602D3E2Aeea57eE753E40AC1639eD20e3174F;
member2 = 0x3147cA98dc9235e38c4cd3F82315332294e9234A;
}
modifier onlyOwner {
require(msg.sender == owner || member1 || member2);
_;
}
Remix tells me "Operator || not compatible with types bool and address", but I feel like there must be a way to "or" the addresses somehow.