-
Notifications
You must be signed in to change notification settings - Fork 20
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
executeTransaction
on SafeProtocolManager fails when executing Safe's self call
#61
Comments
executeTransaction
fails in self callexecuteTransaction
on SafeProtocolManager fails when executing Safe's self call
Regarding the issue in the title the rationale can be found here 5afe/safe-core-protocol-specs#7 |
I'm not sure if I understood the discussion fully as I'm not familiar with both the code base and contexts, but so seems like What do you think about adding a boolean like
and make the
|
I'd personally just allow passing the operation for the root access plugins. Nevertheless, we'll discuss that with the team. |
Isn't that what my code does, no? Currently, you can't specify the call type
Anyway, would be nice if this will be resolved soon! |
That's why I said "I'd just allow" sir |
With SafeProtocolManager,
executeTransaction
that tries to carry out a self-call (safeProtocolAction.to == safeAddress
) on Safe fails, for example, calling swapOwner() in OwnerManager via a registered module, due to therequire
at the line of 96. see below.safe-core-protocol/contracts/SafeProtocolManager.sol
Line 96 in 0dc36e0
What is the rationale behind this design? As I'm trying to build a recovery plugin, I wonder if there is a walkaround or it's possible to lift this off so that an external module can add, remove, and swap owners via
safe-core-protocol
.Btw,
executeRootAccess()
, which doesn't care about what address Safe calls, can't resolve this as the delegatecall will be blocked byauthorized
modifier in SelfAuthorized contract in Safe.The text was updated successfully, but these errors were encountered: