but the ORACLE_HOME directory and the path used for the PROGRAM do not match.

Where did you install the gateway software ?If it was in /oracle/product/11.2.0/grid then change the listener to -

SID_LIST_LISTENER_POSTGRES =

(SID_LIST =

(SID_DESC =

(SID_NAME = postgresql)

(ORACLE_HOME = /oracle/product/11.2.0/grid)

(PROGRAM =dg4odbc)

(ENV = "LD_LIBRARY_PATH=/oracle/product/11.2.0/grid/lib:/usr/lib64")

)

)

You do not need to add the path to the gateway excutable and doing so cause problems.If you installed the gateway software in /oracle/database/11.2.0.3 then you need to have a listener.ora in the directory -

/oracle/database/11.2.0.3/network/admin

and start the listener using the lsnrctl executable in /oracle/database/11.2.0.3/bin.

The gateway init<sid>.ora file should then be in /oracle/database/11.2.0.3/hs/admin.

So what's the ORACLE_HOME of your database? Please replace (ORACLE_HOME = /oracle/database/11.2.0/grid) with the setting of your ORACLE_HOME belonging to the Oracle database - then STOP and START the listener. Then test DG4ODBC again and just in case it continues to fail please post the lsnrctl status LISTENER_POSTGRES and the output of tnsping postgresql.office.corp