Tom Lane writes:
> > Btw., FunctionCallInvoke() would look to be the most prominent place to
> > hook in the "setuid" feature. For that purpose I'd make the macro an
> > inline function instead.
> 
> Ugh.  The performance cost would be excessive.
In the path of a "normal" function call is only one extra `if (bool)'
statement. There are certainly more "excessive" performance problems than
that, no?
> Instead, when fmgr is setting up to call a setuid function, have it
> insert an extra level of function handler that does the
> save/setup/restore of current UID.
I don't quite understand. Do you mean like a PL function handler? But then
this thing wouldn't work for external PL's unless we either have a setuid
version of each or have nested handlers.
-- 
Peter Eisentraut      peter_e@gmx.net       http://yi.org/peter-e/