Skip to content
Snippets Groups Projects
Commit c239235e authored by Roman Tsisyk's avatar Roman Tsisyk Committed by Konstantin Osipov
Browse files

Refactor box/lua/call.cc

* Extract high-level IPROTO_CALL code to box.cc
* Move execute_c_call to func.cc
* Prepare src/lua/call.cc to rewrite in C

Incompatible changes:

* #300 logic was reverted. An attempt to call an unexisting Lua function
  without universal execute permissions now cause "access denied" message
  instead of "function does not exist".

  Since there is no cache for Lua procedures, existence of a function can be
  checked only by attempt to execute it. Caller **must** have a permission
  to execute function in order to execute functions. It's obvious, isn't it?

  Anyway, this patch doesn't affect user experience with using stored
  procedures. The two steps still must be performed to allow Lua calls
  using the binary protocol:
    1. A function must be defined in Lua
    2. A function must be declared in box.schema and caller must have
       execute permission for this object or for entire "universe".
  The order actually doesn't matter - the both steps must be done.
parent c84a212b
No related branches found
No related tags found
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment