Where to stick function setuid - Mailing list pgsql-hackers

From Peter Eisentraut
Subject Where to stick function setuid
Date
Msg-id Pine.LNX.4.21.0009091611120.2484-100000@localhost.localdomain
Whole thread Raw
In response to Re: Trigger functions don't obey "strict" setting?  (Tom Lane <tgl@sss.pgh.pa.us>)
Responses Re: Where to stick function setuid
List pgsql-hackers
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/



pgsql-hackers by date:

Previous
From: Peter Eisentraut
Date:
Subject: Re: "setuid" functions, a solution to the RI privilege problem
Next
From: Tom Samplonius
Date:
Subject: Re: Scalability, Clustering