Auth Manager Contract
Git Source (opens in a new tab)
Periphery contract to unify Auth updates across MevEth, MevEthShareVault and WagyuStaker
deployment address should be added as admin in initial setup
contract addresses are upgradeable. To upgrade auth a redeploy is necessary
State Variables
auth
address public immutable auth;
mevEth
address public mevEth;
mevEthShareVault
address public mevEthShareVault;
wagyuStaker
address public wagyuStaker;
Functions
constructor
constructor(address initialAdmin, address initialMevEth, address initialShareVault, address initialStaker);
onlyAuth
modifier onlyAuth();
updateMevEth
Updates the mevEth address
This function is only callable by the authorized address
function updateMevEth(address newMevEth) external onlyAuth;
Parameters
Name | Type | Description |
---|---|---|
newMevEth | address | The new mevEth address |
updateMevEthShareVault
function updateMevEthShareVault(address newMevEthShareVault) external onlyAuth;
updateWagyuStaker
function updateWagyuStaker(address newWagyuStaker) external onlyAuth;
addAdmin
Adds a new admin to the MevEth, WagyuStaker, and MevEthShareVault contracts.
If the MevEthShareVault is a multisig, the MevEthShareVaultAuthUpdateMissed
event is emitted.
function addAdmin(address newAdmin) external onlyAuth;
deleteAdmin
function deleteAdmin(address oldAdmin) external onlyAuth;
addOperator
function addOperator(address newOperator) external onlyAuth;
deleteOperator
function deleteOperator(address oldOperator) external onlyAuth;
Events
MevEthShareVaultAuthUpdateMissed
emitted when MevEthShareVault is a multisig to log missed auth updates
missed updates will need to be manually added when upgrading from a multisig
event MevEthShareVaultAuthUpdateMissed(address changeAddress, Operation operation);
Errors
Unauthorized
error Unauthorized();
Enums
Operation
enum Operation {
ADDADMIN,
DELETEADMIN,
ADDOPERATOR,
DELETEOPERATOR
}