Subject Re: [ib-support] Very Urgent!!!!!
Author Helen Borrie
At 07:51 PM 4/06/2003 +0000, you wrote:
>Hi,
>
>I am with a problem after install the Firebird (1.0.2) in the Red Hat
>8.0 (Kernel 2.4.18-14). I'm not get to use my UDFs.
>I put the DZZUDF.so (my udf) in the directory /opt/interbase/UDF
>
>But when i execute a SQL with any function (select LTRIM('test') from
>dual) always show this message:
>
>-invalid request BLR at offset 28 function NAME_MY_FUNCTION is not
>defined
>-module name or entrypoint could not be found
>
>I had this problems in other case when i installed Slackware in the
>server. I had to install the Conectiva 8.0 and function perfectly,
>and now with Red Hat occurs the same problem. I have the conectiva
>8.0 in 5 enterprises, and all cases function perfectly my UDFs. But
>always i try to install other version of linux (Slackware and RedHat)
>i have this problem.
>
>Exists any diference of configuration from Conectiva to other
>distribution of linux (Slackware, RedHat, ...)??
>
>The declaration of my UDFs are correct, because it functions
>perfectly in others servers with Conectiva 8.0.
>
>See any declaration of my UDFs:
>
>DECLARE EXTERNAL FUNCTION RTRIM
> CSTRING(32765) BY DESCRIPTOR
> RETURNS CSTRING(32765)
> ENTRY_POINT 'RTRIM' MODULE_NAME 'DZZUDF';
>
>DECLARE EXTERNAL FUNCTION STRLENGTH
> CSTRING(32765) BY DESCRIPTOR
> RETURNS INTEGER BY VALUE
> ENTRY_POINT 'LENGTH' MODULE_NAME 'DZZUDF';
>
>if anybody can help me i'd thank a lot!
>
>Else i will have to install conectiva 8.0 again in this server...

Ivan,
Two things you could try:

1) check the permissions on the UDF library file. I seem to recall that,
if the rpm was installed by root, then you have to give permissions to the
firebird user to any directories that were created during the install.

2) explicitly configure the external_file_directory parameter in
isc_config (works only on Superserver):

external_function_directory "opt/interbase/UDF" // note double-quotes

and restart the server afterwards.

heLen