On Wed, May 03, 2006 at 11:45:31PM -0700, Don Y wrote: > Martijn van Oosterhout wrote: > >Unfortunatly there is no way to ensure the user declares the function > >in SQL in the way your code expects. I remember a discussion once about > >allowing you to declare the essential function details in the C file so > >that Postgres could complain if the user got it wrong, but nothing ever > >came of it. > > > >In short, give them an INSTALL.sql and tell them to use it. > > Is there any way to prevent them from *adding* these functions > (i.e. build them into template) so they have to use them the > way *I* have already defined them? I'm not sure if I'm understanding you correctly, but if you're asking "can I stop users from creating new SQL functions that use my existing C function in strange ways" then the answer is no. All you can do is stop postgresql from seeing the function under any circumstances, by declaring it "static" or using some other way to strip the symbol from the resulting library. Have a nice day, -- Martijn van Oosterhout <kleptog@xxxxxxxxx> http://svana.org/kleptog/ > From each according to his ability. To each according to his ability to litigate.
Attachment:
signature.asc
Description: Digital signature