Just watched this tutorial (you can skip to 18:33 and pause to see what I'm referring to): https://www.youtube.com/watch?v=seU7DykOxfc
So it looks like the magical msg
object is available in all the public methods of smart contracts. I noticed that msg.sender
points to the address of 1) "self" when being called in a constructor and 2) the "other party" a.k.a. the method caller (another contract) when being called from a public method.
As you can see from the screenshot, the contract has a pointer to the buyer
and it calls buyer.send(value)
. Technically can't it just call that until the buyer has no more money / ether? What's stopping this contract from just calling it with arbitrary numbers and then running away?