Using Chili!Soft ASP with the Easysoft ODBC-InterBase Driver

This document describes the steps necessary to enable the use of the Chili!Soft ASP web server extensions to allow the use of Active Server Pages in web design on non-Windows platforms.

It also assumes that Chili!Soft ASP has been installed on the server and is running correctly.

Although an InterBase driver is supplied with distributions of Chili!Soft from release 3.6 onwards, to quote from the accompanying Readme file:

"2.14. INTERBASE SUPPORT The InterBase ODBC driver has been included for the convenience of our customers; however, issues with this driver are not supported by Chili!Soft."

Completing the following instructions will replace this unsupported InterBase driver with the fully supported Easysoft ODBC-InterBase Driver.

The Easysoft ODBC-InterBase Driver may be downloaded from the Easysoft ODBC-InterBase Driver section of the web site (note that for short term testing purposes a purchase is not required) and is supplied as a tar file containing a number of text files and some shared object (.so) files.

These files are normally used in conjunction with the unixODBC Driver Manager and tools, which may be obtained from http://www.unixodbc.org. Although the Easysoft ODBC-InterBase Driver does not require unixODBC to work with Chili!Soft, it may be worth building and installing, as it enables the Easysoft ODBC-InterBase Driver to be tested independently of Chili!Soft. The only file that must be installed is the Easysoft ODBC-InterBase Driver itself (libibodbc.so).

As Chili!Soft stores its ODBC driver information in a local dBase database, it is necessary to download a replacement database containing the required information about the Easysoft ODBC-InterBase Driver from ftp://ftp.easysoft.com/pub/interbase/chilisoft/chilisoft-3.6.2.tar.gz.

Note that version 1.0.68 or 2.0.8 of the Easysoft ODBC-InterBase Driver is required for use with this version of Chili!Soft and that the accompanying serial number supplied by Easysoft must be applied to the /etc/ibserial file.

These instructions assume that Chili!Soft ASP has been installed in the /opt/casp directory and the paths below will require amending if this is not the case:

  1. Untar the distribution into a temporary location:
    mkdir /tmp/cs_install
    cp chilisoft-3.6.tar.gz /tmp/cs_install
    cd /tmp/cs_install
    tar zxvf chilisoft-3.6.tar.gz
    
  2. Copy the database files into the distribution:
    cp ENGOS.DBF /opt/casp/admin/web/odbc/driversdb
    cp DRIVERS.DBF /opt/casp/admin/web/odbc/driversdb
    cp DRVATT.DBF /opt/casp/admin/web/odbc/driversdb
    cp DRVATT.DBT /opt/casp/admin/web/odbc/driversdb
    cp ENGINES.DBF /opt/casp/admin/web/odbc/driversdb
    cp ATTS.DBF /opt/casp/admin/web.hold/odbc/driversdb
    cp ATTS.DBT /opt/casp/admin/web.hold/odbc/driversdb
    
  3. Amend the Interbase_template section of the current global_odbc.ini file (/opt/casp/global_odbc.ini) from:
    [Interbase_template]
    Driver=/usr/local/chilisoft/casp/odbc/opensource/lib/ivInterbase00.so
    JdbcDriver=/usr/local/chilisoft/casp/odbc/opensource/lib/IscDbc00.so
    UseCursorLib=1
    

    to

    [Interbase_template]
    Driver=/usr/local/chilisoft/casp/odbc/opensource/lib/libibodbc.so
    UseCursorLib=1
    

    by deleting the JdbcDriver line and amending the Driver line.

  4. Copy libibodbc.so from the Easysoft ODBC-InterBase Driver distribution to /usr/local/chilisoft/casp/odbc/opensource/lib:
    cp /usr/local/lib/libibodbc.so
    /opt/casp/odbc/opensource/lib
    
  5. Restart the Administration Web Server using the admtool utility, as detailed in the Chili!Soft documentation.

You can now use the Administration Console (http://www.server.name.com:5100) to create a new ODBC DSN using the Easysoft ODBC-InterBase Driver, test it and start using it with Chili!Soft ASP.

For reference purposes, the changes made to the two dBase files are made by executing the following SQL statements:

INSERT INTO ENGOS VALUES ( 56, 16, 1 );
INSERT INTO DRIVERS
  VALUES( 94,
          'Easysoft Interbase Driver',
          'libibodbc.so',
          '_',
          56,
          NULL,
          0,
          3,
          NULL );
INSERT INTO ENGINES VALUES( 16, 'Easysoft Interbase Driver', 6.0 );
INSERT INTO DRVATT
  VALUES( 649, 94, 76, NULL, 0, 1, 4, 50, 1, 1, NULL, NULL );
INSERT INTO DRVATT
  VALUES( 650, 94, 77, NULL, 0, 1, 4, 50, 2, 1, NULL, NULL );
INSERT INTO DRVATT
  VALUES( 651, 94, 78, NULL, 0, 1, 2, 50, 3, 1, NULL, NULL );
INSERT INTO DRVATT
  VALUES( 652, 94, 79, NULL, 0, 1, 4, 50, 4, 1, NULL, NULL );
INSERT INTO DRVATT
  VALUES( 653, 94, 80, NULL, 0, 1, 4, 20, 5, 1, NULL, NULL );
INSERT INTO DRVATT
  VALUES( 654,
          94,
          81,
          '3',
          0,
          1,
          4,
          20,
          6,
          1,
          '[1-3]',
          'Dialect should be 1 to 3' );
INSERT INTO DRVATT
  VALUES( 655, 94, 82, '0', 0, 1, 1, 20, 7, 1, NULL, NULL );
INSERT INTO DRVATT
  VALUES( 656, 94, 83, '0', 0, 1, 1, 20, 8, 1, NULL, NULL );
INSERT INTO DRVATT
  VALUES( 657, 94, 84, '0', 0, 1, 1, 20, 9, 1, NULL, NULL );
INSERT INTO DRVATT
  VALUES( 658, 94, 85, '0', 0, 1, 1, 20, 10, 1, NULL, NULL );
INSERT INTO DRVATT
  VALUES( 659, 94, 86, '0', 0, 1, 1, 20, 11, 1, NULL, NULL );
UPDATE ENGINES SET NAME = 'InterBase (unsupported)' WHERE ID=11;
INSERT INTO ATTS VALUES( 76, 'Database', 'Database', NULL );
INSERT INTO ATTS VALUES( 77, 'LogonID', 'User', NULL );
INSERT INTO ATTS VALUES( 78, 'Password', 'Password', NULL );
INSERT INTO ATTS VALUES( 79, 'Role', 'Role', NULL );
INSERT INTO ATTS VALUES( 80, 'Charset', 'Charset', NULL );
INSERT INTO ATTS VALUES( 81, 'Dialect', 'Dialect', NULL );
INSERT INTO ATTS VALUES( 82, 'DQuote', 'DQuote', NULL );
INSERT INTO ATTS VALUES( 83, 'Show Schema', 'With_Schema', NULL );
INSERT INTO ATTS VALUES( 84, 'No Wait', 'NoWait', NULL );
INSERT INTO ATTS VALUES( 85, 'Old MetaData', 'OldMetaData', NULL );
INSERT INTO ATTS VALUES( 86, 'Exec Proc', 'ExecProc', NULL );

Article Feedback

* Did this content help you?
* Please select one option based on your first choice:

(* Required Fields)