@@ -704,6 +704,9 @@ SQLSetStmtAttr(HSTMT StatementHandle,
704704RETCODE SQL_API
705705PGAPI_GetFunctions30 (HDBC hdbc ,UWORD fFunction ,UWORD FAR * pfExists )
706706{
707+ ConnectionClass * conn = (ConnectionClass * )hdbc ;
708+ ConnInfo * ci = & (conn -> connInfo );
709+
707710if (fFunction != SQL_API_ODBC3_ALL_FUNCTIONS )
708711return SQL_ERROR ;
709712memset (pfExists ,0 ,sizeof (UWORD )* SQL_API_ODBC3_ALL_FUNCTIONS_SIZE );
@@ -761,7 +764,8 @@ PGAPI_GetFunctions30(HDBC hdbc, UWORD fFunction, UWORD FAR * pfExists)
761764SQL_FUNC_ESET (pfExists ,SQL_API_SQLSTATISTICS );/* 53 */
762765SQL_FUNC_ESET (pfExists ,SQL_API_SQLTABLES );/* 54 */
763766SQL_FUNC_ESET (pfExists ,SQL_API_SQLBROWSECONNECT );/* 55 */
764- SQL_FUNC_ESET (pfExists ,SQL_API_SQLCOLUMNPRIVILEGES );/* 56 */
767+ if (ci -> drivers .lie )
768+ SQL_FUNC_ESET (pfExists ,SQL_API_SQLCOLUMNPRIVILEGES );/* 56 not implmented yet */
765769SQL_FUNC_ESET (pfExists ,SQL_API_SQLDATASOURCES );/* 57 */
766770SQL_FUNC_ESET (pfExists ,SQL_API_SQLDESCRIBEPARAM );/* 58 */
767771/* SQL_FUNC_ESET(pfExists, SQL_API_SQLEXTENDEDFETCH); 59 deprecated */
@@ -776,41 +780,42 @@ PGAPI_GetFunctions30(HDBC hdbc, UWORD fFunction, UWORD FAR * pfExists)
776780SQL_FUNC_ESET (pfExists ,SQL_API_SQLNUMPARAMS );/* 63 */
777781/* SQL_FUNC_ESET(pfExists, SQL_API_SQLPARAMOPTIONS); 64 deprecated */
778782SQL_FUNC_ESET (pfExists ,SQL_API_SQLPRIMARYKEYS );/* 65 */
779- SQL_FUNC_ESET (pfExists ,SQL_API_SQLPROCEDURECOLUMNS );/* 66 */
783+ if (ci -> drivers .lie )
784+ SQL_FUNC_ESET (pfExists ,SQL_API_SQLPROCEDURECOLUMNS );/* 66 not implmented yet */
780785SQL_FUNC_ESET (pfExists ,SQL_API_SQLPROCEDURES );/* 67 */
781- SQL_FUNC_ESET (pfExists ,SQL_API_SQLSETPOS );/* 68 */
786+ SQL_FUNC_ESET (pfExists ,SQL_API_SQLSETPOS );/* 68 */
782787SQL_FUNC_ESET (pfExists ,SQL_API_SQLSETSCROLLOPTIONS );/* 69 deprecated */
783- SQL_FUNC_ESET (pfExists ,SQL_API_SQLTABLEPRIVILEGES );/* 70 */
788+ if (ci -> drivers .lie )
789+ SQL_FUNC_ESET (pfExists ,SQL_API_SQLTABLEPRIVILEGES );/* 70 not implemented yet */
784790/* SQL_FUNC_ESET(pfExists, SQL_API_SQLDRIVERS); */ /* 71 */
785791SQL_FUNC_ESET (pfExists ,SQL_API_SQLBINDPARAMETER );/* 72 */
786792
787793SQL_FUNC_ESET (pfExists ,SQL_API_SQLALLOCHANDLE );/* 1001 */
788794SQL_FUNC_ESET (pfExists ,SQL_API_SQLBINDPARAM );/* 1002 */
789795SQL_FUNC_ESET (pfExists ,SQL_API_SQLCLOSECURSOR );/* 1003 */
790- SQL_FUNC_ESET ( pfExists , SQL_API_SQLCOPYDESC ); /* 1004 not implemented
791- * yet */
796+ if ( ci -> drivers . lie )
797+ SQL_FUNC_ESET ( pfExists , SQL_API_SQLCOPYDESC ); /* 1004 not implemented yet */
792798SQL_FUNC_ESET (pfExists ,SQL_API_SQLENDTRAN );/* 1005 */
793799SQL_FUNC_ESET (pfExists ,SQL_API_SQLFREEHANDLE );/* 1006 */
794- SQL_FUNC_ESET (pfExists ,SQL_API_SQLGETCONNECTATTR );/* 1007 */
795- SQL_FUNC_ESET ( pfExists , SQL_API_SQLGETDESCFIELD ); /* 1008 not implemented
796- * yet */
797- SQL_FUNC_ESET (pfExists ,SQL_API_SQLGETDESCREC ); /*1009 not implemented
798- * yet */
799- SQL_FUNC_ESET (pfExists ,SQL_API_SQLGETDIAGFIELD );/* 1010 not implemented
800- * yet */
800+ SQL_FUNC_ESET (pfExists ,SQL_API_SQLGETCONNECTATTR );/* 1007 */
801+ if ( ci -> drivers . lie )
802+ {
803+ SQL_FUNC_ESET (pfExists ,SQL_API_SQLGETDESCFIELD ); /*1008 not implemented yet */
804+ SQL_FUNC_ESET ( pfExists , SQL_API_SQLGETDESCREC ); /* 1009 not implemented yet */
805+ SQL_FUNC_ESET (pfExists ,SQL_API_SQLGETDIAGFIELD );/* 1010 not implemented yet */
806+ }
801807SQL_FUNC_ESET (pfExists ,SQL_API_SQLGETDIAGREC );/* 1011 */
802808SQL_FUNC_ESET (pfExists ,SQL_API_SQLGETENVATTR );/* 1012 */
803809SQL_FUNC_ESET (pfExists ,SQL_API_SQLGETSTMTATTR );/* 1014 */
804- SQL_FUNC_ESET (pfExists ,SQL_API_SQLSETCONNECTATTR );/* 1016 */
805- SQL_FUNC_ESET (pfExists ,SQL_API_SQLSETDESCFIELD );/* 1017 not implemeted
806- * yet */
807- SQL_FUNC_ESET (pfExists ,SQL_API_SQLSETDESCREC );/* 1018 not implemented
808- * yet */
810+ SQL_FUNC_ESET (pfExists ,SQL_API_SQLSETCONNECTATTR );/* 1016 */
811+ SQL_FUNC_ESET (pfExists ,SQL_API_SQLSETDESCFIELD );/* 1017 */
812+ if (ci -> drivers .lie )
813+ SQL_FUNC_ESET (pfExists ,SQL_API_SQLSETDESCREC );/* 1018 not implemented yet */
809814SQL_FUNC_ESET (pfExists ,SQL_API_SQLSETENVATTR );/* 1019 */
810815SQL_FUNC_ESET (pfExists ,SQL_API_SQLSETSTMTATTR );/* 1020 */
811816SQL_FUNC_ESET (pfExists ,SQL_API_SQLFETCHSCROLL );/* 1021 */
812- SQL_FUNC_ESET ( pfExists , SQL_API_SQLBULKOPERATIONS ); /* 24 not implemented
813- * yet */
817+ if ( ci -> drivers . lie )
818+ SQL_FUNC_ESET ( pfExists , SQL_API_SQLBULKOPERATIONS ); /* 24 not implemented yet */
814819
815820return SQL_SUCCESS ;
816821}