@ironblocks/firewall-consumer
Version:
Provided interface for smart contracts to connect to Ironblocks' Firewall
120 lines (119 loc) • 18.3 kB
JSON
{
"_format": "hh-sol-artifact-1",
"contractName": "VennFirewallConsumer",
"sourceName": "contracts/consumers/VennFirewallConsumer.sol",
"abi": [
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "address",
"name": "newAdmin",
"type": "address"
}
],
"name": "FirewallAdminUpdated",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "address",
"name": "newFirewall",
"type": "address"
}
],
"name": "FirewallUpdated",
"type": "event"
},
{
"inputs": [],
"name": "acceptFirewallAdmin",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "firewallAdmin",
"outputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "userNativeFee",
"type": "uint256"
},
{
"internalType": "bytes",
"name": "proxyPayload",
"type": "bytes"
},
{
"internalType": "bytes",
"name": "data",
"type": "bytes"
}
],
"name": "safeFunctionCall",
"outputs": [],
"stateMutability": "payable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "attestationCenterProxy",
"type": "address"
}
],
"name": "setAttestationCenterProxy",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "_firewall",
"type": "address"
}
],
"name": "setFirewall",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "_firewallAdmin",
"type": "address"
}
],
"name": "setFirewallAdmin",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
}
],
"bytecode": "0x608060405234801561001057600080fd5b5060003361004761004260017f5dd2e3b890564a8f99f7f203f226a27a8aa59aee19a4ece5cf5eaa77ab91f6626100e3565b839055565b61007a61007560017f29982a6ac507a2a707ced6dee5d76285dd49725db977de83d9702c628c9741366100e3565b829055565b6100ae6100a860017f471011fb6f6f818490c7275a3f5781bd5ea022cb5a243dd8f2d009d0882c74a36100e3565b60019055565b6100dc6100a860017f649dd3ecd011e05f7b661f5786e7205a54d2201cb71ede57000d4047776e20406100e3565b505061010a565b8181038181111561010457634e487b7160e01b600052601160045260246000fd5b92915050565b610eda806101196000396000f3fe6080604052600436106100655760003560e01c80638c36d02d116100435780638c36d02d146100c1578063cb09f61f146100e1578063f05c8582146100f457600080fd5b806354222e6c1461006a578063734b71981461008c5780637c65c38b146100ac575b600080fd5b34801561007657600080fd5b5061008a610085366004610ca9565b610132565b005b34801561009857600080fd5b5061008a6100a7366004610ca9565b6102a7565b3480156100b857600080fd5b5061008a610439565b3480156100cd57600080fd5b5061008a6100dc366004610ca9565b610563565b61008a6100ef366004610d28565b6106c4565b34801561010057600080fd5b506101096108de565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b61016461016060017f29982a6ac507a2a707ced6dee5d76285dd49725db977de83d9702c628c974136610da2565b5490565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610222576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f4669726577616c6c436f6e73756d65723a206e6f74206669726577616c6c206160448201527f646d696e0000000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff81161561027157610268817f0c908cff00000000000000000000000000000000000000000000000000000000610913565b61027157600080fd5b6102a461029f60017fbb5f5c81badac71dead5c1b29002ce6bbac893e2645c265b13d7499de81ab6e1610da2565b829055565b50565b6102d561016060017f29982a6ac507a2a707ced6dee5d76285dd49725db977de83d9702c628c974136610da2565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461038e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f4669726577616c6c436f6e73756d65723a206e6f74206669726577616c6c206160448201527f646d696e000000000000000000000000000000000000000000000000000000006064820152608401610219565b73ffffffffffffffffffffffffffffffffffffffff811661040b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601e60248201527f4669726577616c6c436f6e73756d65723a207a65726f206164647265737300006044820152606401610219565b6102a461029f60017f8583d637b7eb6415d11ef26648cf0702cf161a357dfe51b6ff7a332110d4bdd3610da2565b61046761016060017f8583d637b7eb6415d11ef26648cf0702cf161a357dfe51b6ff7a332110d4bdd3610da2565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146104fb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f4669726577616c6c436f6e73756d65723a206e6f74206e65772061646d696e006044820152606401610219565b61052e61052960017f29982a6ac507a2a707ced6dee5d76285dd49725db977de83d9702c628c974136610da2565b339055565b6040513381527f2763a008a9a724a5da2f35346041f5c552001ab556d786252e1ff4ff798dfc1b9060200160405180910390a1565b61059161016060017f29982a6ac507a2a707ced6dee5d76285dd49725db977de83d9702c628c974136610da2565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461064a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f4669726577616c6c436f6e73756d65723a206e6f74206669726577616c6c206160448201527f646d696e000000000000000000000000000000000000000000000000000000006064820152608401610219565b61067861029f60017f5dd2e3b890564a8f99f7f203f226a27a8aa59aee19a4ece5cf5eaa77ab91f662610da2565b60405173ffffffffffffffffffffffffffffffffffffffff821681527f60c1452966d777aab347837b9ceeaa613af32925b5aab43918e878fd036086709060200160405180910390a150565b84341015610754576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f56656e6e4669726577616c6c436f6e73756d65723a204e6f7420656e6f75676860448201527f2045544820666f722066656500000000000000000000000000000000000000006064820152608401610219565b61075d856109e4565b600061078d61016060017fbb5f5c81badac71dead5c1b29002ce6bbac893e2645c265b13d7499de81ab6e1610da2565b905060008173ffffffffffffffffffffffffffffffffffffffff168787876040516107b9929190610ddc565b60006040518083038185875af1925050503d80600081146107f6576040519150601f19603f3d011682016040523d82523d6000602084013e6107fb565b606091505b505090508061088c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602760248201527f56656e6e4669726577616c6c436f6e73756d65723a2050726f78792063616c6c60448201527f206661696c6564000000000000000000000000000000000000000000000000006064820152608401610219565b6108cc3085858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250610a7492505050565b506108d5610aa0565b50505050505050565b600061090e61016060017f29982a6ac507a2a707ced6dee5d76285dd49725db977de83d9702c628c974136610da2565b905090565b604080517fffffffff000000000000000000000000000000000000000000000000000000008316602480830191909152825180830390910181526044909101909152602080820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f01ffc9a700000000000000000000000000000000000000000000000000000000178152825160009392849283928392918391908a617530fa92503d915060005190508280156109cb575060208210155b80156109d75750600081115b9450505050505b92915050565b610a1261052960017f471011fb6f6f818490c7275a3f5781bd5ea022cb5a243dd8f2d009d0882c74a3610da2565b610a46610a4060017f649dd3ecd011e05f7b661f5786e7205a54d2201cb71ede57000d4047776e2040610da2565b60029055565b6102a461029f60017f249fe6ee22e6e15273c690c436e9cd06968fe8fb9e18a17365c2d2aa2add4e72610da2565b6060610a998383604051806060016040528060278152602001610e7e60279139610b38565b9392505050565b610ad4610ace60017f471011fb6f6f818490c7275a3f5781bd5ea022cb5a243dd8f2d009d0882c74a3610da2565b60019055565b610b02610ace60017f649dd3ecd011e05f7b661f5786e7205a54d2201cb71ede57000d4047776e2040610da2565b610b36610b3060017f249fe6ee22e6e15273c690c436e9cd06968fe8fb9e18a17365c2d2aa2add4e72610da2565b60009055565b565b60606000808573ffffffffffffffffffffffffffffffffffffffff1685604051610b629190610e10565b600060405180830381855af49150503d8060008114610b9d576040519150601f19603f3d011682016040523d82523d6000602084013e610ba2565b606091505b5091509150610bb386838387610bbd565b9695505050505050565b60608315610c53578251600003610c4c5773ffffffffffffffffffffffffffffffffffffffff85163b610c4c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610219565b5081610c5d565b610c5d8383610c65565b949350505050565b815115610c755781518083602001fd5b806040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016102199190610e2c565b600060208284031215610cbb57600080fd5b813573ffffffffffffffffffffffffffffffffffffffff81168114610a9957600080fd5b60008083601f840112610cf157600080fd5b50813567ffffffffffffffff811115610d0957600080fd5b602083019150836020828501011115610d2157600080fd5b9250929050565b600080600080600060608688031215610d4057600080fd5b85359450602086013567ffffffffffffffff80821115610d5f57600080fd5b610d6b89838a01610cdf565b90965094506040880135915080821115610d8457600080fd5b50610d9188828901610cdf565b969995985093965092949392505050565b818103818111156109de577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b8183823760009101908152919050565b60005b83811015610e07578181015183820152602001610def565b50506000910152565b60008251610e22818460208701610dec565b9190910192915050565b6020815260008251806020840152610e4b816040850160208701610dec565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a2646970667358221220cac4df4f2317a1c47dad25ebd6a1a410379523f40e9ddec826e76558da0276f564736f6c63430008130033",
"deployedBytecode": "0x6080604052600436106100655760003560e01c80638c36d02d116100435780638c36d02d146100c1578063cb09f61f146100e1578063f05c8582146100f457600080fd5b806354222e6c1461006a578063734b71981461008c5780637c65c38b146100ac575b600080fd5b34801561007657600080fd5b5061008a610085366004610ca9565b610132565b005b34801561009857600080fd5b5061008a6100a7366004610ca9565b6102a7565b3480156100b857600080fd5b5061008a610439565b3480156100cd57600080fd5b5061008a6100dc366004610ca9565b610563565b61008a6100ef366004610d28565b6106c4565b34801561010057600080fd5b506101096108de565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b61016461016060017f29982a6ac507a2a707ced6dee5d76285dd49725db977de83d9702c628c974136610da2565b5490565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610222576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f4669726577616c6c436f6e73756d65723a206e6f74206669726577616c6c206160448201527f646d696e0000000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff81161561027157610268817f0c908cff00000000000000000000000000000000000000000000000000000000610913565b61027157600080fd5b6102a461029f60017fbb5f5c81badac71dead5c1b29002ce6bbac893e2645c265b13d7499de81ab6e1610da2565b829055565b50565b6102d561016060017f29982a6ac507a2a707ced6dee5d76285dd49725db977de83d9702c628c974136610da2565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461038e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f4669726577616c6c436f6e73756d65723a206e6f74206669726577616c6c206160448201527f646d696e000000000000000000000000000000000000000000000000000000006064820152608401610219565b73ffffffffffffffffffffffffffffffffffffffff811661040b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601e60248201527f4669726577616c6c436f6e73756d65723a207a65726f206164647265737300006044820152606401610219565b6102a461029f60017f8583d637b7eb6415d11ef26648cf0702cf161a357dfe51b6ff7a332110d4bdd3610da2565b61046761016060017f8583d637b7eb6415d11ef26648cf0702cf161a357dfe51b6ff7a332110d4bdd3610da2565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146104fb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f4669726577616c6c436f6e73756d65723a206e6f74206e65772061646d696e006044820152606401610219565b61052e61052960017f29982a6ac507a2a707ced6dee5d76285dd49725db977de83d9702c628c974136610da2565b339055565b6040513381527f2763a008a9a724a5da2f35346041f5c552001ab556d786252e1ff4ff798dfc1b9060200160405180910390a1565b61059161016060017f29982a6ac507a2a707ced6dee5d76285dd49725db977de83d9702c628c974136610da2565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461064a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f4669726577616c6c436f6e73756d65723a206e6f74206669726577616c6c206160448201527f646d696e000000000000000000000000000000000000000000000000000000006064820152608401610219565b61067861029f60017f5dd2e3b890564a8f99f7f203f226a27a8aa59aee19a4ece5cf5eaa77ab91f662610da2565b60405173ffffffffffffffffffffffffffffffffffffffff821681527f60c1452966d777aab347837b9ceeaa613af32925b5aab43918e878fd036086709060200160405180910390a150565b84341015610754576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f56656e6e4669726577616c6c436f6e73756d65723a204e6f7420656e6f75676860448201527f2045544820666f722066656500000000000000000000000000000000000000006064820152608401610219565b61075d856109e4565b600061078d61016060017fbb5f5c81badac71dead5c1b29002ce6bbac893e2645c265b13d7499de81ab6e1610da2565b905060008173ffffffffffffffffffffffffffffffffffffffff168787876040516107b9929190610ddc565b60006040518083038185875af1925050503d80600081146107f6576040519150601f19603f3d011682016040523d82523d6000602084013e6107fb565b606091505b505090508061088c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602760248201527f56656e6e4669726577616c6c436f6e73756d65723a2050726f78792063616c6c60448201527f206661696c6564000000000000000000000000000000000000000000000000006064820152608401610219565b6108cc3085858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250610a7492505050565b506108d5610aa0565b50505050505050565b600061090e61016060017f29982a6ac507a2a707ced6dee5d76285dd49725db977de83d9702c628c974136610da2565b905090565b604080517fffffffff000000000000000000000000000000000000000000000000000000008316602480830191909152825180830390910181526044909101909152602080820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f01ffc9a700000000000000000000000000000000000000000000000000000000178152825160009392849283928392918391908a617530fa92503d915060005190508280156109cb575060208210155b80156109d75750600081115b9450505050505b92915050565b610a1261052960017f471011fb6f6f818490c7275a3f5781bd5ea022cb5a243dd8f2d009d0882c74a3610da2565b610a46610a4060017f649dd3ecd011e05f7b661f5786e7205a54d2201cb71ede57000d4047776e2040610da2565b60029055565b6102a461029f60017f249fe6ee22e6e15273c690c436e9cd06968fe8fb9e18a17365c2d2aa2add4e72610da2565b6060610a998383604051806060016040528060278152602001610e7e60279139610b38565b9392505050565b610ad4610ace60017f471011fb6f6f818490c7275a3f5781bd5ea022cb5a243dd8f2d009d0882c74a3610da2565b60019055565b610b02610ace60017f649dd3ecd011e05f7b661f5786e7205a54d2201cb71ede57000d4047776e2040610da2565b610b36610b3060017f249fe6ee22e6e15273c690c436e9cd06968fe8fb9e18a17365c2d2aa2add4e72610da2565b60009055565b565b60606000808573ffffffffffffffffffffffffffffffffffffffff1685604051610b629190610e10565b600060405180830381855af49150503d8060008114610b9d576040519150601f19603f3d011682016040523d82523d6000602084013e610ba2565b606091505b5091509150610bb386838387610bbd565b9695505050505050565b60608315610c53578251600003610c4c5773ffffffffffffffffffffffffffffffffffffffff85163b610c4c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610219565b5081610c5d565b610c5d8383610c65565b949350505050565b815115610c755781518083602001fd5b806040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016102199190610e2c565b600060208284031215610cbb57600080fd5b813573ffffffffffffffffffffffffffffffffffffffff81168114610a9957600080fd5b60008083601f840112610cf157600080fd5b50813567ffffffffffffffff811115610d0957600080fd5b602083019150836020828501011115610d2157600080fd5b9250929050565b600080600080600060608688031215610d4057600080fd5b85359450602086013567ffffffffffffffff80821115610d5f57600080fd5b610d6b89838a01610cdf565b90965094506040880135915080821115610d8457600080fd5b50610d9188828901610cdf565b969995985093965092949392505050565b818103818111156109de577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b8183823760009101908152919050565b60005b83811015610e07578181015183820152602001610def565b50506000910152565b60008251610e22818460208701610dec565b9190910192915050565b6020815260008251806020840152610e4b816040850160208701610dec565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a2646970667358221220cac4df4f2317a1c47dad25ebd6a1a410379523f40e9ddec826e76558da0276f564736f6c63430008130033",
"linkReferences": {},
"deployedLinkReferences": {}
}