ODBC source code cleanup. Mostly alignment of #define constants.
authorBruce Momjian
Tue, 27 Mar 2001 04:00:55 +0000 (04:00 +0000)
committerBruce Momjian
Tue, 27 Mar 2001 04:00:55 +0000 (04:00 +0000)
44 files changed:
src/interfaces/odbc/bind.c
src/interfaces/odbc/bind.h
src/interfaces/odbc/columninfo.c
src/interfaces/odbc/columninfo.h
src/interfaces/odbc/connection.c
src/interfaces/odbc/connection.h
src/interfaces/odbc/convert.c
src/interfaces/odbc/convert.h
src/interfaces/odbc/dlg_specific.c
src/interfaces/odbc/dlg_specific.h
src/interfaces/odbc/drvconn.c
src/interfaces/odbc/environ.c
src/interfaces/odbc/environ.h
src/interfaces/odbc/execute.c
src/interfaces/odbc/gpps.c
src/interfaces/odbc/gpps.h
src/interfaces/odbc/info.c
src/interfaces/odbc/iodbc.h
src/interfaces/odbc/isql.h
src/interfaces/odbc/isqlext.h
src/interfaces/odbc/lobj.c
src/interfaces/odbc/lobj.h
src/interfaces/odbc/misc.c
src/interfaces/odbc/misc.h
src/interfaces/odbc/multibyte.c
src/interfaces/odbc/multibyte.h
src/interfaces/odbc/options.c
src/interfaces/odbc/parse.c
src/interfaces/odbc/pgtypes.c
src/interfaces/odbc/pgtypes.h
src/interfaces/odbc/psqlodbc.c
src/interfaces/odbc/psqlodbc.h
src/interfaces/odbc/qresult.c
src/interfaces/odbc/qresult.h
src/interfaces/odbc/results.c
src/interfaces/odbc/setup.c
src/interfaces/odbc/socket.c
src/interfaces/odbc/socket.h
src/interfaces/odbc/statement.c
src/interfaces/odbc/statement.h
src/interfaces/odbc/tuple.c
src/interfaces/odbc/tuple.h
src/interfaces/odbc/tuplelist.c
src/interfaces/odbc/tuplelist.h

index a83bd5596b81f7615efc05dc3e50a0d62513cb24..5bade8b39560848e692ca3cc89e54f34529d2798 100644 (file)
@@ -1,4 +1,3 @@
-
 /* Module:         bind.c
  *
  * Description:        This module contains routines related to binding
index 58e5fb190ab21ef5b67c5186bac4452ce2215a18..444d30f2d22a0e8e10fc64a2eba60737d4e1c605 100644 (file)
@@ -1,4 +1,3 @@
-
 /* File:           bind.h
  *
  * Description:        See "bind.c"
index 630b0538c666b8a8cacb28b8424074e570f05ad7..08992241e28622448c26c50767d1d64a8d2f4e04 100644 (file)
@@ -1,4 +1,3 @@
-
 /* Module:         columninfo.c
  *
  * Description:        This module contains routines related to
index 964ebc7617b905718efb885ed294772a90be4c0c..41e9400dceaad9856b9588590f5ccbe3da37b46b 100644 (file)
@@ -1,4 +1,3 @@
-
 /* File:           columninfo.h
  *
  * Description:        See "columninfo.c"
@@ -40,5 +39,4 @@ void      CI_set_num_fields(ColumnInfoClass *self, int new_num_fields);
 void CI_set_field_info(ColumnInfoClass *self, int field_num, char *new_name,
                  Oid new_adtid, Int2 new_adtsize, Int4 atttypmod);
 
-
 #endif
index bdb23a8d089dd8734b0d06d1f456ec1711b36171..fae3e71b6f96aa9140960fae54cf18789194ff27 100644 (file)
@@ -1,4 +1,3 @@
-
 /* Module:         connection.c
  *
  * Description:        This module contains routines related to
index e2de90c495b35b86e62e7b95a210f462ee0b74eb..91047caeb1d182be692f4b82e2a8af3db5dc1391 100644 (file)
@@ -1,4 +1,3 @@
-
 /* File:           connection.h
  *
  * Description:        See "connection.c"
@@ -38,41 +37,41 @@ typedef enum
 } CONN_Status;
 
 /* These errors have general sql error state */
-#define CONNECTION_SERVER_NOT_REACHED 101
-#define CONNECTION_MSG_TOO_LONG 103
-#define CONNECTION_COULD_NOT_SEND 104
-#define CONNECTION_NO_SUCH_DATABASE 105
-#define CONNECTION_BACKEND_CRAZY 106
-#define CONNECTION_NO_RESPONSE 107
-#define CONNECTION_SERVER_REPORTED_ERROR 108
-#define CONNECTION_COULD_NOT_RECEIVE 109
-#define CONNECTION_SERVER_REPORTED_WARNING 110
-#define CONNECTION_NEED_PASSWORD 112
+#define CONNECTION_SERVER_NOT_REACHED              101
+#define CONNECTION_MSG_TOO_LONG                        103
+#define CONNECTION_COULD_NOT_SEND                  104
+#define CONNECTION_NO_SUCH_DATABASE                    105
+#define CONNECTION_BACKEND_CRAZY                   106
+#define CONNECTION_NO_RESPONSE                     107
+#define CONNECTION_SERVER_REPORTED_ERROR           108
+#define CONNECTION_COULD_NOT_RECEIVE               109
+#define CONNECTION_SERVER_REPORTED_WARNING         110
+#define CONNECTION_NEED_PASSWORD                   112
 
 /* These errors correspond to specific SQL states */
-#define CONN_INIREAD_ERROR 201
-#define CONN_OPENDB_ERROR 202
-#define CONN_STMT_ALLOC_ERROR 203
-#define CONN_IN_USE 204
-#define CONN_UNSUPPORTED_OPTION 205
+#define CONN_INIREAD_ERROR                         201
+#define CONN_OPENDB_ERROR                          202
+#define CONN_STMT_ALLOC_ERROR                      203
+#define CONN_IN_USE                                    204
+#define CONN_UNSUPPORTED_OPTION                        205
 /* Used by SetConnectoption to indicate unsupported options */
-#define CONN_INVALID_ARGUMENT_NO 206
+#define CONN_INVALID_ARGUMENT_NO                   206
 /* SetConnectOption: corresponds to ODBC--"S1009" */
-#define CONN_TRANSACT_IN_PROGRES 207
-#define CONN_NO_MEMORY_ERROR 208
-#define CONN_NOT_IMPLEMENTED_ERROR 209
-#define CONN_INVALID_AUTHENTICATION 210
-#define CONN_AUTH_TYPE_UNSUPPORTED 211
-#define CONN_UNABLE_TO_LOAD_DLL 212
+#define CONN_TRANSACT_IN_PROGRES                   207
+#define CONN_NO_MEMORY_ERROR                       208
+#define CONN_NOT_IMPLEMENTED_ERROR                 209
+#define CONN_INVALID_AUTHENTICATION                    210
+#define CONN_AUTH_TYPE_UNSUPPORTED                 211
+#define CONN_UNABLE_TO_LOAD_DLL                        212
 
-#define CONN_OPTION_VALUE_CHANGED 213
-#define CONN_VALUE_OUT_OF_RANGE 214
+#define CONN_OPTION_VALUE_CHANGED                  213
+#define CONN_VALUE_OUT_OF_RANGE                        214
 
-#define CONN_TRUNCATED 215
+#define CONN_TRUNCATED                             215
 
 /* Conn_status defines */
-#define CONN_IN_AUTOCOMMIT 0x01
-#define CONN_IN_TRANSACTION 0x02
+#define CONN_IN_AUTOCOMMIT                         0x01
+#define CONN_IN_TRANSACTION                            0x02
 
 /* AutoCommit functions */
 #define CC_set_autocommit_off(x)   (x->transact_status &= ~CONN_IN_AUTOCOMMIT)
@@ -86,31 +85,31 @@ typedef enum
 
 
 /* Authentication types */
-#define AUTH_REQ_OK            0
-#define AUTH_REQ_KRB4      1
-#define AUTH_REQ_KRB5      2
-#define AUTH_REQ_PASSWORD  3
-#define AUTH_REQ_CRYPT     4
+#define AUTH_REQ_OK                                    0
+#define AUTH_REQ_KRB4                              1
+#define AUTH_REQ_KRB5                              2
+#define AUTH_REQ_PASSWORD                          3
+#define AUTH_REQ_CRYPT                             4
 
 /* Startup Packet sizes */
-#define SM_DATABASE        64
-#define SM_USER            32
-#define SM_OPTIONS     64
-#define SM_UNUSED      64
-#define SM_TTY         64
+#define SM_DATABASE                                    64
+#define SM_USER                                        32
+#define SM_OPTIONS                                 64
+#define SM_UNUSED                                  64
+#define SM_TTY                                     64
 
 /* Old 6.2 protocol defines */
-#define NO_AUTHENTICATION  7
-#define PATH_SIZE          64
-#define ARGV_SIZE          64
-#define NAMEDATALEN            16
+#define NO_AUTHENTICATION                          7
+#define PATH_SIZE                                  64
+#define ARGV_SIZE                                  64
+#define NAMEDATALEN                                    16
 
 typedef unsigned int ProtocolVersion;
 
 #define PG_PROTOCOL(major, minor)  (((major) << 16) | (minor))
-#define PG_PROTOCOL_LATEST     PG_PROTOCOL(2, 0)
-#define PG_PROTOCOL_63         PG_PROTOCOL(1, 0)
-#define PG_PROTOCOL_62         PG_PROTOCOL(0, 0)
+#define PG_PROTOCOL_LATEST                         PG_PROTOCOL(2, 0)
+#define PG_PROTOCOL_63                             PG_PROTOCOL(1, 0)
+#define PG_PROTOCOL_62                             PG_PROTOCOL(0, 0)
 
 /* This startup packet is to support latest Postgres protocol (6.4, 6.3) */
 typedef struct _StartupPacket
@@ -275,12 +274,12 @@ struct ConnectionClass_
 
 
 /* Accessor functions */
-#define CC_get_socket(x)   (x->sock)
-#define CC_get_database(x) (x->connInfo.database)
-#define CC_get_server(x)   (x->connInfo.server)
-#define CC_get_DSN(x)      (x->connInfo.dsn)
-#define CC_get_username(x) (x->connInfo.username)
-#define CC_is_onlyread(x)  (x->connInfo.onlyread[0] == '1')
+#define CC_get_socket(x)                   (x->sock)
+#define CC_get_database(x)                 (x->connInfo.database)
+#define CC_get_server(x)                   (x->connInfo.server)
+#define CC_get_DSN(x)                      (x->connInfo.dsn)
+#define CC_get_username(x)                 (x->connInfo.username)
+#define CC_is_onlyread(x)                  (x->connInfo.onlyread[0] == '1')
 
 
 /* for CC_DSN_info */
index 72aa717ae50bfcf6939bb3637519c90a6cbdddb9..2dca3edfa1287cd6c9dcf14dcbc0ad983501cc55 100644 (file)
@@ -1,4 +1,3 @@
-
 /* Module:        convert.c
  *
  * Description:    This module contains routines related to
index ae903bbafb6bbea95e090299ba82bf7b18bf095d..893bf0ceebdefa1566b7b61c9c4f565b2e4ec166 100644 (file)
@@ -1,4 +1,3 @@
-
 /* File:           convert.h
  *
  * Description:        See "convert.c"
 #include "psqlodbc.h"
 
 /* copy_and_convert results */
-#define COPY_OK                         0
-#define COPY_UNSUPPORTED_TYPE       1
-#define COPY_UNSUPPORTED_CONVERSION  2
-#define COPY_RESULT_TRUNCATED       3
-#define COPY_GENERAL_ERROR          4
-#define COPY_NO_DATA_FOUND          5
+#define COPY_OK                                    0
+#define COPY_UNSUPPORTED_TYPE                  1
+#define COPY_UNSUPPORTED_CONVERSION                2
+#define COPY_RESULT_TRUNCATED                  3
+#define COPY_GENERAL_ERROR                     4
+#define COPY_NO_DATA_FOUND                     5
 
 typedef struct
 {
index 2a933ee852f0b3501690acb0858f7dcd1610f2fe..bed667691118c70181c644c917cd706b70d40808 100644 (file)
@@ -1,4 +1,3 @@
-
 /* Module:         dlg_specific.c
  *
  * Description:        This module contains any specific code for handling
index 225d93f174b57506a037437758ea6d56b02d1866..884fe2e85cecf27d2f1c26795b670c26d73a6606 100644 (file)
@@ -1,4 +1,3 @@
-
 /* File:           dlg_specific.h
  *
  * Description:        See "dlg_specific.c"
 #endif
 
 /* Unknown data type sizes */
-#define UNKNOWNS_AS_MAX                0
-#define UNKNOWNS_AS_DONTKNOW       1
-#define UNKNOWNS_AS_LONGEST            2
+#define UNKNOWNS_AS_MAX                    0
+#define UNKNOWNS_AS_DONTKNOW           1
+#define UNKNOWNS_AS_LONGEST                2
 
 /* INI File Stuff */
 #ifndef WIN32
-#define ODBC_INI       ".odbc.ini"
+#define ODBC_INI                       ".odbc.ini"
 #ifdef ODBCINSTDIR
-#define ODBCINST_INI   ODBCINSTDIR "/odbcinst.ini"
+#define ODBCINST_INI                   ODBCINSTDIR "/odbcinst.ini"
 #else
-#define ODBCINST_INI   "/etc/odbcinst.ini"
+#define ODBCINST_INI                   "/etc/odbcinst.ini"
 #endif
 #else                          /* WIN32 */
-#define ODBC_INI       "ODBC.INI"      /* ODBC initialization file */
-#define ODBCINST_INI   "ODBCINST.INI"  /* ODBC Installation file */
+#define ODBC_INI                       "ODBC.INI"      /* ODBC initialization
+                                                        * file */
+#define ODBCINST_INI                   "ODBCINST.INI"  /* ODBC Installation
+                                                        * file */
 #endif  /* WIN32 */
 
 
-#define INI_DSN              DBMS_NAME     /* Name of default Datasource in
-                                        * ini file (not used?) */
-#define INI_KDESC        "Description" /* Data source description */
-#define INI_SERVER       "Servername"  /* Name of Server running the
-                                        * Postgres service */
-#define INI_PORT         "Port"/* Port on which the Postmaster is
-                                * listening */
-#define INI_DATABASE     "Database"    /* Database Name */
-#define INI_USER         "Username"    /* Default User Name */
-#define INI_PASSWORD     "Password"    /* Default Password */
-#define INI_DEBUG        "Debug"       /* Debug flag */
-#define INI_FETCH        "Fetch"       /* Fetch Max Count */
-#define INI_SOCKET       "Socket"      /* Socket buffer size */
-#define INI_READONLY     "ReadOnly"    /* Database is read only */
-#define INI_COMMLOG          "CommLog"     /* Communication to backend
-                                        * logging */
-#define INI_PROTOCOL     "Protocol"    /* What protocol (6.2) */
-#define INI_OPTIMIZER    "Optimizer"   /* Use backend genetic optimizer */
-#define INI_KSQO         "Ksqo"/* Keyset query optimization */
-#define INI_CONNSETTINGS  "ConnSettings"       /* Anything to send to
-                                                * backend on successful
-                                                * connection */
-#define INI_UNIQUEINDEX   "UniqueIndex" /* Recognize unique indexes */
-#define INI_UNKNOWNSIZES  "UnknownSizes"       /* How to handle unknown
-                                                * result set sizes */
-
-#define INI_CANCELASFREESTMT  "CancelAsFreeStmt"
-
-#define INI_USEDECLAREFETCH "UseDeclareFetch"  /* Use Declare/Fetch
-                                                * cursors */
+#define INI_DSN                            DBMS_NAME       /* Name of default
+                                                        * Datasource in ini
+                                                        * file (not used?) */
+#define INI_KDESC                      "Description"   /* Data source
+                                                        * description */
+#define INI_SERVER                     "Servername"    /* Name of Server
+                                                        * running the Postgres
+                                                        * service */
+#define INI_PORT                       "Port"  /* Port on which the
+                                                * Postmaster is listening */
+#define INI_DATABASE                   "Database"      /* Database Name */
+#define INI_USER                       "Username"      /* Default User Name */
+#define INI_PASSWORD                   "Password"      /* Default Password */
+#define INI_DEBUG                      "Debug" /* Debug flag */
+#define INI_FETCH                      "Fetch" /* Fetch Max Count */
+#define INI_SOCKET                     "Socket"        /* Socket buffer size */
+#define INI_READONLY                   "ReadOnly"      /* Database is read only */
+#define INI_COMMLOG                        "CommLog"       /* Communication to
+                                                        * backend logging */
+#define INI_PROTOCOL                   "Protocol"      /* What protocol (6.2) */
+#define INI_OPTIMIZER                  "Optimizer"     /* Use backend genetic
+                                                        * optimizer */
+#define INI_KSQO                       "Ksqo"  /* Keyset query
+                                                * optimization */
+#define INI_CONNSETTINGS                "ConnSettings" /* Anything to send to
+                                                        * backend on successful
+                                                        * connection */
+#define INI_UNIQUEINDEX                    "UniqueIndex"   /* Recognize unique
+                                                        * indexes */
+#define INI_UNKNOWNSIZES               "UnknownSizes"  /* How to handle unknown
+                                                        * result set sizes */
+
+#define INI_CANCELASFREESTMT           "CancelAsFreeStmt"
+
+#define INI_USEDECLAREFETCH                "UseDeclareFetch"       /* Use Declare/Fetch
+                                                                * cursors */
 
 /* More ini stuff */
-#define INI_TEXTASLONGVARCHAR      "TextAsLongVarchar"
-#define INI_UNKNOWNSASLONGVARCHAR  "UnknownsAsLongVarchar"
-#define INI_BOOLSASCHAR                "BoolsAsChar"
-#define INI_MAXVARCHARSIZE         "MaxVarcharSize"
-#define INI_MAXLONGVARCHARSIZE     "MaxLongVarcharSize"
-
-#define INI_FAKEOIDINDEX           "FakeOidIndex"
-#define INI_SHOWOIDCOLUMN          "ShowOidColumn"
-#define INI_ROWVERSIONING          "RowVersioning"
-#define INI_SHOWSYSTEMTABLES       "ShowSystemTables"
-#define INI_LIE                        "Lie"
-#define INI_PARSE                  "Parse"
-#define INI_EXTRASYSTABLEPREFIXES  "ExtraSysTablePrefixes"
-
-#define INI_TRANSLATIONNAME          "TranslationName"
-#define INI_TRANSLATIONDLL       "TranslationDLL"
-#define INI_TRANSLATIONOPTION    "TranslationOption"
+#define INI_TEXTASLONGVARCHAR          "TextAsLongVarchar"
+#define INI_UNKNOWNSASLONGVARCHAR      "UnknownsAsLongVarchar"
+#define INI_BOOLSASCHAR                    "BoolsAsChar"
+#define INI_MAXVARCHARSIZE             "MaxVarcharSize"
+#define INI_MAXLONGVARCHARSIZE         "MaxLongVarcharSize"
+
+#define INI_FAKEOIDINDEX               "FakeOidIndex"
+#define INI_SHOWOIDCOLUMN              "ShowOidColumn"
+#define INI_ROWVERSIONING              "RowVersioning"
+#define INI_SHOWSYSTEMTABLES           "ShowSystemTables"
+#define INI_LIE                            "Lie"
+#define INI_PARSE                      "Parse"
+#define INI_EXTRASYSTABLEPREFIXES      "ExtraSysTablePrefixes"
+
+#define INI_TRANSLATIONNAME                "TranslationName"
+#define INI_TRANSLATIONDLL             "TranslationDLL"
+#define INI_TRANSLATIONOPTION          "TranslationOption"
 
 
 /* Connection Defaults */
index da3b71390aa82e8f2547f2339aeaf0e0ac3c9c8d..22d5093254db31ba8c821f8b80b2ae752315037e 100644 (file)
@@ -1,4 +1,3 @@
-
 /* Module:         drvconn.c
  *
  * Description:        This module contains only routines related to
index 9aafcb14adc7cb41b5b374c225a7e41b728ee5dc..2bf7b8a3255376df4491b4e9304b6f4e4046f30b 100644 (file)
@@ -1,4 +1,3 @@
-
 /* Module:         environ.c
  *
  * Description:        This module contains routines related to
index c236e575c1e933f1c2b87d37e17f20aadda97a5b..cc7950ae5ee138b4250c16def19780bc21e1821a 100644 (file)
@@ -1,4 +1,3 @@
-
 /* File:           environ.h
  *
  * Description:        See "environ.c"
index 356da6edcb23eda5d05f32deff82f648346dd5c3..5fc2661331d3875dce379c4a5da8abf7915d8c5c 100644 (file)
@@ -1,4 +1,3 @@
-
 /* Module:         execute.c
  *
  * Description:        This module contains routines related to
index 0496f45a0134e1223b4b3a09ee1155de0895c743..64b4f649edbaf9aa5510bb86d11aae62e01eba3b 100644 (file)
@@ -1,14 +1,21 @@
-/* GetPrivateProfileString() -- approximate implementation of */
-/* Windows NT System Services version of GetPrivateProfileString() */
-/* probably doesn't handle the NULL key for section name or value key */
-/* correctly also, doesn't provide Microsoft backwards compatability */
-/* wrt TAB characters in the value string -- Microsoft terminates value */
-/* at the first TAB, but I couldn't discover what the behavior should */
-/* be regarding TABS in quoted strings so, I treat tabs like any other */
-/* characters -- NO comments following value string separated by a TAB */
-/* are allowed (that is an anachronism anyway) */
-/* Added code to search for ODBC_INI file in users home directory on */
-/* Unix */
+/* GetPrivateProfileString()
+ *
+ * approximate implementation of
+ * Windows NT System Services version of GetPrivateProfileString()
+ * probably doesn't handle the NULL key for section name or value key
+ * correctly also, doesn't provide Microsoft backwards compatability
+ * wrt TAB characters in the value string
+ *
+ * Microsoft terminates value
+ * at the first TAB, but I couldn't discover what the behavior should
+ * be regarding TABS in quoted strings so, I treat tabs like any other
+ * characters
+ *
+ * NO comments following value string separated by a TAB
+ * are allowed (that is an anachronism anyway)
+ * Added code to search for ODBC_INI file in users home directory on
+ * Unix
+ */
 
 #ifndef WIN32
 
index 95d559ff9ba4bbae56849b2924021891bfa17fc1..5bbe10374b2dd2bb9912dfbce6851e5b6dd43120 100644 (file)
@@ -1,5 +1,6 @@
-/* GetPrivateProfileString */
-/* for UNIX use */
+/* GetPrivateProfileString
+ * for UNIX use
+ */
 #ifndef GPPS_H
 #define GPPS_H
 
index e14a9d67ac982e60df48e8938c5b23a71c7df294..8c1be9803e04219d46b4570392c1c16c6b039839 100644 (file)
@@ -1,4 +1,3 @@
-
 /* Module:         info.c
  *
  * Description:        This module contains routines related to
index ef3df399a6c082774610b9e155773e5154ea906c..21091de90f93dc95a308d3c1bf7fbb62bcc569bb 100644 (file)
@@ -7,15 +7,15 @@
 #include  
 #include  
 
-#define   MEM_ALLOC(size) (malloc((size_t)(size)))
-#define   MEM_FREE(ptr)   {if(ptr) free(ptr);}
+#define   MEM_ALLOC(size)  (malloc((size_t)(size)))
+#define   MEM_FREE(ptr)        {if(ptr) free(ptr);}
 
-#define   STRCPY(t, s)   (strcpy((char*)(t), (char*)(s)))
-#define   STRNCPY(t,s,n)  (strncpy((char*)(t), (char*)(s), (size_t)(n)))
-#define   STRCAT(t, s)   (strcat((char*)(t), (char*)(s)))
-#define   STRNCAT(t,s,n)  (strncat((char*)(t), (char*)(s), (size_t)(n)))
-#define   STREQ(a, b) (strcmp((char*)(a), (char*)(b)) == 0)
-#define   STRLEN(str) ((str)? strlen((char*)(str)):0)
+#define   STRCPY(t, s)     (strcpy((char*)(t), (char*)(s)))
+#define   STRNCPY(t,s,n)   (strncpy((char*)(t), (char*)(s), (size_t)(n)))
+#define   STRCAT(t, s)     (strcat((char*)(t), (char*)(s)))
+#define   STRNCAT(t,s,n)   (strncat((char*)(t), (char*)(s), (size_t)(n)))
+#define   STREQ(a, b)      (strcmp((char*)(a), (char*)(b)) == 0)
+#define   STRLEN(str)      ((str)? strlen((char*)(str)):0)
 
 #define   EXPORT
 #define   CALLBACK
@@ -38,29 +38,29 @@ typedef int BOOL;
 #include  
 
 #ifdef   _MSVC_
-#define  MEM_ALLOC(size) (fmalloc((size_t)(size)))
-#define  MEM_FREE(ptr)  ((ptr)? ffree((PTR)(ptr)):0))
-#define  STRCPY(t, s)   (fstrcpy((char FAR*)(t), (char FAR*)(s)))
-#define  STRNCPY(t,s,n)  (fstrncpy((char FAR*)(t), (char FAR*)(s), (size_t)(n)))
-#define  STRLEN(str) ((str)? fstrlen((char FAR*)(str)):0)
-#define  STREQ(a, b) (fstrcmp((char FAR*)(a), (char FAR*)(b) == 0)
+#define  MEM_ALLOC(size)   (fmalloc((size_t)(size)))
+#define  MEM_FREE(ptr)     ((ptr)? ffree((PTR)(ptr)):0))
+#define  STRCPY(t, s)      (fstrcpy((char FAR*)(t), (char FAR*)(s)))
+#define  STRNCPY(t,s,n)        (fstrncpy((char FAR*)(t), (char FAR*)(s), (size_t)(n)))
+#define  STRLEN(str)       ((str)? fstrlen((char FAR*)(str)):0)
+#define  STREQ(a, b)       (fstrcmp((char FAR*)(a), (char FAR*)(b) == 0)
 #endif
 
 #ifdef   _BORLAND_
-#define  MEM_ALLOC(size) (farmalloc((unsigned long)(size))
-#define  MEM_FREE(ptr)  ((ptr)? farfree((void far*)(ptr)):0)
-#define  STRCPY(t, s)   (_fstrcpy((char FAR*)(t), (char FAR*)(s)))
-#define  STRNCPY(t,s,n)  (_fstrncpy((char FAR*)(t), (char FAR*)(s), (size_t)(n)))
-#define         STRLEN(str)     ((str)? _fstrlen((char FAR*)(str)):0)
-#define         STREQ(a, b)     (_fstrcmp((char FAR*)(a), (char FAR*)(b) == 0)
+#define  MEM_ALLOC(size)   (farmalloc((unsigned long)(size))
+#define  MEM_FREE(ptr)     ((ptr)? farfree((void far*)(ptr)):0)
+#define  STRCPY(t, s)      (_fstrcpy((char FAR*)(t), (char FAR*)(s)))
+#define  STRNCPY(t,s,n)        (_fstrncpy((char FAR*)(t), (char FAR*)(s), (size_t)(n)))
+#define  STRLEN(str)       ((str)? _fstrlen((char FAR*)(str)):0)
+#define  STREQ(a, b)       (_fstrcmp((char FAR*)(a), (char FAR*)(b) == 0)
 #endif
 
 #endif  /* WIN32 */
 
-#define    SYSERR     (-1)
+#define    SYSERR          (-1)
 
 #ifndef    NULL
-#define  NULL       ((void FAR*)0UL)
+#define  NULL              ((void FAR*)0UL)
 #endif
 
 #endif
index dc2c8295cd044db4b7199cb8a032108839328618..d8a3c867fc2420448aba61319309fa55e2a2f73e 100644 (file)
@@ -1,6 +1,8 @@
-/* Modified isql.h file from iodbc. This file should be placed in the
-* include path to be used to create ODBC compliant applications.
-*/
+/*
+ * Modified isql.h file from iodbc. This file should be placed in the
+ * include path to be used to create ODBC compliant applications.
+ */
+
 #ifndef _INTRINSIC_SQL_H
 #define _INTRINSIC_SQL_H
 
@@ -24,106 +26,106 @@ typedef signed short RETCODE;
 #define SQL_API             EXPORT CALLBACK
 #endif
 
-#define ODBCVER               0x0250
+#define ODBCVER                            0x0250
 
-#define SQL_MAX_MESSAGE_LENGTH    512
-#define SQL_MAX_DSN_LENGTH    32
+#define SQL_MAX_MESSAGE_LENGTH         512
+#define SQL_MAX_DSN_LENGTH             32
 
 /* return code */
-#define SQL_INVALID_HANDLE    (-2)
-#define SQL_ERROR         (-1)
-#define SQL_SUCCESS               0
-#define SQL_SUCCESS_WITH_INFO     1
-#define SQL_NO_DATA_FOUND     100
+#define SQL_INVALID_HANDLE             (-2)
+#define SQL_ERROR                      (-1)
+#define SQL_SUCCESS                        0
+#define SQL_SUCCESS_WITH_INFO          1
+#define SQL_NO_DATA_FOUND              100
 
 /* standard SQL datatypes (agree with ANSI type numbering) */
-#define SQL_CHAR          1
-#define SQL_NUMERIC               2
-#define SQL_DECIMAL               3
-#define SQL_INTEGER               4
-#define SQL_SMALLINT          5
-#define SQL_FLOAT         6
-#define SQL_REAL          7
-#define SQL_DOUBLE        8
-#define SQL_VARCHAR               12
-
-#define SQL_TYPE_MIN          SQL_CHAR
-#define SQL_TYPE_NULL         0
-#define SQL_TYPE_MAX          SQL_VARCHAR
+#define SQL_CHAR                       1
+#define SQL_NUMERIC                        2
+#define SQL_DECIMAL                        3
+#define SQL_INTEGER                        4
+#define SQL_SMALLINT                   5
+#define SQL_FLOAT                      6
+#define SQL_REAL                       7
+#define SQL_DOUBLE                     8
+#define SQL_VARCHAR                        12
+
+#define SQL_TYPE_MIN                   SQL_CHAR
+#define SQL_TYPE_NULL                  0
+#define SQL_TYPE_MAX                   SQL_VARCHAR
 
 /* C to SQL datatype mapping */
-#define SQL_C_CHAR        SQL_CHAR
-#define SQL_C_LONG        SQL_INTEGER
-#define SQL_C_SHORT               SQL_SMALLINT
-#define SQL_C_FLOAT               SQL_REAL
-#define SQL_C_DOUBLE          SQL_DOUBLE
-#define SQL_C_DEFAULT         99
+#define SQL_C_CHAR                     SQL_CHAR
+#define SQL_C_LONG                     SQL_INTEGER
+#define SQL_C_SHORT                        SQL_SMALLINT
+#define SQL_C_FLOAT                        SQL_REAL
+#define SQL_C_DOUBLE                   SQL_DOUBLE
+#define SQL_C_DEFAULT                  99
 
-#define SQL_NO_NULLS          0
-#define SQL_NULLABLE          1
-#define SQL_NULLABLE_UNKNOWN      2
+#define SQL_NO_NULLS                   0
+#define SQL_NULLABLE                   1
+#define SQL_NULLABLE_UNKNOWN           2
 
 /* some special length values */
-#define SQL_NULL_DATA         (-1)
-#define SQL_DATA_AT_EXEC      (-2)
-#define SQL_NTS               (-3)
+#define SQL_NULL_DATA                  (-1)
+#define SQL_DATA_AT_EXEC               (-2)
+#define SQL_NTS                            (-3)
 
 /* SQLFreeStmt flag values */
-#define SQL_CLOSE         0
-#define SQL_DROP          1
-#define SQL_UNBIND        2
-#define SQL_RESET_PARAMS      3
+#define SQL_CLOSE                      0
+#define SQL_DROP                       1
+#define SQL_UNBIND                     2
+#define SQL_RESET_PARAMS               3
 
 /* SQLTransact flag values */
-#define SQL_COMMIT        0
-#define SQL_ROLLBACK          1
+#define SQL_COMMIT                     0
+#define SQL_ROLLBACK                   1
 
 /* SQLColAttributes flag values */
-#define SQL_COLUMN_COUNT              0
-#define SQL_COLUMN_LABEL      18
-#define SQL_COLATT_OPT_MAX    SQL_COLUMN_LABEL
-#define SQL_COLUMN_DRIVER_START    1000
+#define SQL_COLUMN_COUNT               0
+#define SQL_COLUMN_LABEL               18
+#define SQL_COLATT_OPT_MAX             SQL_COLUMN_LABEL
+#define SQL_COLUMN_DRIVER_START            1000
 
-#define SQL_COLATT_OPT_MIN    SQL_COLUMN_COUNT
+#define SQL_COLATT_OPT_MIN             SQL_COLUMN_COUNT
 
 /* Null handles */
-#define SQL_NULL_HENV         0
-#define SQL_NULL_HDBC         0
-#define SQL_NULL_HSTMT        0
+#define SQL_NULL_HENV                  0
+#define SQL_NULL_HDBC                  0
+#define SQL_NULL_HSTMT                 0
 
 /* All code below has been added to the original isql.h coming from iodbc */
 typedef unsigned char BYTE;
 
 /* More SQLColAttributes flag values */
-#define SQL_COLUMN_NAME            1
-#define SQL_COLUMN_TYPE            2
-#define SQL_COLUMN_LENGTH      3
-#define SQL_COLUMN_PRECISION       4
-#define SQL_COLUMN_SCALE       5
-#define SQL_COLUMN_DISPLAY_SIZE        6
-#define SQL_COLUMN_NULLABLE        7
-#define SQL_COLUMN_UNSIGNED        8
-#define SQL_COLUMN_MONEY       9
-#define SQL_COLUMN_UPDATABLE       10
-#define SQL_COLUMN_AUTO_INCREMENT  11
-#define SQL_COLUMN_CASE_SENSITIVE  12
-#define SQL_COLUMN_SEARCHABLE      13
-#define SQL_COLUMN_TYPE_NAME       14
-#define SQL_COLUMN_TABLE_NAME      15
-#define SQL_COLUMN_OWNER_NAME      16
-#define SQL_COLUMN_QUALIFIER_NAME  17
+#define SQL_COLUMN_NAME                    1
+#define SQL_COLUMN_TYPE                    2
+#define SQL_COLUMN_LENGTH              3
+#define SQL_COLUMN_PRECISION           4
+#define SQL_COLUMN_SCALE               5
+#define SQL_COLUMN_DISPLAY_SIZE            6
+#define SQL_COLUMN_NULLABLE                7
+#define SQL_COLUMN_UNSIGNED                8
+#define SQL_COLUMN_MONEY               9
+#define SQL_COLUMN_UPDATABLE           10
+#define SQL_COLUMN_AUTO_INCREMENT      11
+#define SQL_COLUMN_CASE_SENSITIVE      12
+#define SQL_COLUMN_SEARCHABLE          13
+#define SQL_COLUMN_TYPE_NAME           14
+#define SQL_COLUMN_TABLE_NAME          15
+#define SQL_COLUMN_OWNER_NAME          16
+#define SQL_COLUMN_QUALIFIER_NAME      17
 
 /* SQLColAttributes Searchable flags */
-#define SQL_UNSEARCHABLE   0
-#define SQL_LIKE_ONLY      1
-#define SQL_ALL_EXCEPT_LIKE 2
-#define SQL_SEARCHABLE     3
-#define SQL_PRED_SEARCHABLE SQL_SEARCHABLE
+#define SQL_UNSEARCHABLE               0
+#define SQL_LIKE_ONLY                  1
+#define SQL_ALL_EXCEPT_LIKE                2
+#define SQL_SEARCHABLE                 3
+#define SQL_PRED_SEARCHABLE                SQL_SEARCHABLE
 
 /* SQLColAttributes Updateable flags */
-#define SQL_ATTR_READONLY      0
-#define SQL_ATTR_WRITE         1
-#define SQL_ATTR_READWRITE_UNKNOWN 2
+#define SQL_ATTR_READONLY              0
+#define SQL_ATTR_WRITE                 1
+#define SQL_ATTR_READWRITE_UNKNOWN     2
 
 /*
  * function prototypes previously not contained in isql.h
index fd8e39385f0ef02a654e91fac95537eab9f13c1e..88c9e4495b568e26ae528ce0d484bc7ae4baa673 100644 (file)
-/* This file has been modified from the original isqlext.h to add the
-* missing function prototypes and appropriate #defines. It is designed
-* to be a drop in replacement for isqlext.h from iodbc.
-*/
+/*
+ * This file has been modified from the original isqlext.h to add the
+ * missing function prototypes and appropriate #defines. It is designed
+ * to be a drop in replacement for isqlext.h from iodbc.
+ */
+
 #ifndef _INTRINSIC_SQLEXT_H
 #define _INTRINSIC_SQLEXT_H
 
 #include "isql.h"
 
-#define SQL_STILL_EXECUTING           2
-#define SQL_NEED_DATA         99
+#define SQL_STILL_EXECUTING                2
+#define SQL_NEED_DATA                  99
 
 /* extend SQL datatypes */
-#define SQL_DATE          9
-#define SQL_TIME          10
-#define SQL_TIMESTAMP         11
-#define SQL_LONGVARCHAR           (-1)
-#define SQL_BINARY        (-2)
-#define SQL_VARBINARY         (-3)
-#define SQL_LONGVARBINARY     (-4)
-#define SQL_BIGINT        (-5)
-#define SQL_TINYINT               (-6)
-#define SQL_BIT               (-7) /* conflict with SQL3 ??? */
-#define SQL_TYPE_DRIVER_START     (-80)
+#define SQL_DATE                       9
+#define SQL_TIME                       10
+#define SQL_TIMESTAMP                  11
+#define SQL_LONGVARCHAR                    (-1)
+#define SQL_BINARY                     (-2)
+#define SQL_VARBINARY                  (-3)
+#define SQL_LONGVARBINARY              (-4)
+#define SQL_BIGINT                     (-5)
+#define SQL_TINYINT                        (-6)
+#define SQL_BIT                            (-7)    /* conflict with SQL3 ??? */
+#define SQL_TYPE_DRIVER_START          (-80)
 
 /* C to SQL datatype mapping */
-#define SQL_C_DATE        SQL_DATE
-#define SQL_C_TIME        SQL_TIME
-#define SQL_C_TIMESTAMP           SQL_TIMESTAMP
-#define SQL_C_BINARY          SQL_BINARY
-#define SQL_C_BIT         SQL_BIT
-#define SQL_C_TINYINT         SQL_TINYINT
-
-#define SQL_SIGNED_OFFSET     (-20)
-#define SQL_UNSIGNED_OFFSET           (-22)
-
-#define SQL_C_SLONG               (SQL_C_LONG  + SQL_SIGNED_OFFSET)
-#define SQL_C_SSHORT          (SQL_C_SHORT + SQL_SIGNED_OFFSET)
-#define SQL_C_STINYINT        (SQL_TINYINT + SQL_SIGNED_OFFSET)
-#define SQL_C_ULONG               (SQL_C_LONG  + SQL_UNSIGNED_OFFSET)
-#define SQL_C_USHORT          (SQL_C_SHORT + SQL_UNSIGNED_OFFSET)
-#define SQL_C_UTINYINT        (SQL_TINYINT + SQL_UNSIGNED_OFFSET)
-#define SQL_C_BOOKMARK        SQL_C_ULONG
+#define SQL_C_DATE                     SQL_DATE
+#define SQL_C_TIME                     SQL_TIME
+#define SQL_C_TIMESTAMP                    SQL_TIMESTAMP
+#define SQL_C_BINARY                   SQL_BINARY
+#define SQL_C_BIT                      SQL_BIT
+#define SQL_C_TINYINT                  SQL_TINYINT
+
+#define SQL_SIGNED_OFFSET              (-20)
+#define SQL_UNSIGNED_OFFSET                (-22)
+
+#define SQL_C_SLONG                        (SQL_C_LONG + SQL_SIGNED_OFFSET)
+#define SQL_C_SSHORT                   (SQL_C_SHORT + SQL_SIGNED_OFFSET)
+#define SQL_C_STINYINT                 (SQL_TINYINT + SQL_SIGNED_OFFSET)
+#define SQL_C_ULONG                        (SQL_C_LONG + SQL_UNSIGNED_OFFSET)
+#define SQL_C_USHORT                   (SQL_C_SHORT + SQL_UNSIGNED_OFFSET)
+#define SQL_C_UTINYINT                 (SQL_TINYINT + SQL_UNSIGNED_OFFSET)
+#define SQL_C_BOOKMARK                 SQL_C_ULONG
 
 #if defined(SQL_TYPE_MIN)
 #undef SQL_TYPE_MIN
-#define SQL_TYPE_MIN        SQL_BIT
+#define SQL_TYPE_MIN               SQL_BIT
 /* Note:If SQL_BIT uses SQL3 value (i.e. 14) then,
  * SQL_TYPE_MIN need to be defined as SQL_TINYINT
  * (i.e. -6).
  */
 #endif
 
-#define SQL_ALL_TYPES         0
+#define SQL_ALL_TYPES                  0
 
 /* SQLDriverConnect flag values */
-#define SQL_DRIVER_NOPROMPT           0
-#define SQL_DRIVER_COMPLETE           1
-#define SQL_DRIVER_PROMPT     2
-#define SQL_DRIVER_COMPLETE_REQUIRED   3
+#define SQL_DRIVER_NOPROMPT                0
+#define SQL_DRIVER_COMPLETE                1
+#define SQL_DRIVER_PROMPT              2
+#define SQL_DRIVER_COMPLETE_REQUIRED   3
 
 /* SQLSetParam extensions */
-#define SQL_DEFAULT_PARAM     (-5)
-#define SQL_IGNORE        (-6)
+#define SQL_DEFAULT_PARAM              (-5)
+#define SQL_IGNORE                     (-6)
 
 /* function number for SQLGetFunctions and _iodbcdm_getproc */
-#define SQL_API_SQLALLOCCONNECT    1
-#define SQL_API_SQLALLOCENV           2
-#define SQL_API_SQLALLOCSTMT      3
-#define SQL_API_SQLBINDCOL    4
-#define SQL_API_SQLCANCEL     5
-#define SQL_API_SQLCOLATTRIBUTES   6
-#define SQL_API_SQLCONNECT    7
-#define SQL_API_SQLDESCRIBECOL    8
-#define SQL_API_SQLDISCONNECT     9
-#define SQL_API_SQLERROR      10
-#define SQL_API_SQLEXECDIRECT     11
-#define SQL_API_SQLEXECUTE    12
-#define SQL_API_SQLFETCH      13
-#define SQL_API_SQLFREECONNECT    14
-#define SQL_API_SQLFREEENV    15
-#define SQL_API_SQLFREESTMT           16
-#define SQL_API_SQLGETCURSORNAME   17
-#define SQL_API_SQLNUMRESULTCOLS   18
-#define SQL_API_SQLPREPARE    19
-#define SQL_API_SQLROWCOUNT           20
-#define SQL_API_SQLSETCURSORNAME   21
-#define SQL_API_SQLSETPARAM           22
-#define SQL_API_SQLTRANSACT           23
-
-#define SQL_NUM_FUNCTIONS     23
-
-#define SQL_EXT_API_START     40
-
-#define SQL_API_SQLCOLUMNS    40
-
-#define SQL_API_SQLDRIVERCONNECT   41
-#define SQL_API_SQLGETCONNECTOPTION    42
-#define SQL_API_SQLGETDATA    43
-#define SQL_API_SQLGETFUNCTIONS    44
-#define SQL_API_SQLGETINFO    45
-#define SQL_API_SQLGETSTMTOPTION   46
-#define SQL_API_SQLGETTYPEINFO    47
-#define SQL_API_SQLPARAMDATA      48
-#define SQL_API_SQLPUTDATA    49
-#define SQL_API_SQLSETCONNECTOPTION    50
-#define SQL_API_SQLSETSTMTOPTION   51
-#define SQL_API_SQLSPECIALCOLUMNS  52
-#define SQL_API_SQLSTATISTICS     53
-#define SQL_API_SQLTABLES     54
-
-#define SQL_API_SQLBROWSECONNECT   55
-#define SQL_API_SQLCOLUMNPRIVILEGES    56
-#define SQL_API_SQLDATASOURCES    57
-#define SQL_API_SQLDESCRIBEPARAM   58
-#define SQL_API_SQLEXTENDEDFETCH   59
-#define SQL_API_SQLFOREIGNKEYS    60
-#define SQL_API_SQLMORERESULTS    61
-#define SQL_API_SQLNATIVESQL      62
-#define SQL_API_SQLNUMPARAMS      63
-#define SQL_API_SQLPARAMOPTIONS    64
-#define SQL_API_SQLPRIMARYKEYS    65
-#define SQL_API_SQLPROCEDURECOLUMNS    66
-#define SQL_API_SQLPROCEDURES     67
-#define SQL_API_SQLSETPOS     68
-#define SQL_API_SQLSETSCROLLOPTIONS    69
-#define SQL_API_SQLTABLEPRIVILEGES 70
-
-#define SQL_API_SQLDRIVERS            71
-#define SQL_API_SQLBINDPARAMETER   72
-#define SQL_EXT_API_LAST      SQL_API_SQLBINDPARAMETER
-#define SQL_NUM_EXTENSIONS (SQL_EXT_API_LAST - SQL_EXT_API_START + 1)
-
-#define SQL_API_ALL_FUNCTIONS     0
+#define SQL_API_SQLALLOCCONNECT            1
+#define SQL_API_SQLALLOCENV                2
+#define SQL_API_SQLALLOCSTMT           3
+#define SQL_API_SQLBINDCOL             4
+#define SQL_API_SQLCANCEL              5
+#define SQL_API_SQLCOLATTRIBUTES       6
+#define SQL_API_SQLCONNECT             7
+#define SQL_API_SQLDESCRIBECOL         8
+#define SQL_API_SQLDISCONNECT          9
+#define SQL_API_SQLERROR               10
+#define SQL_API_SQLEXECDIRECT          11
+#define SQL_API_SQLEXECUTE             12
+#define SQL_API_SQLFETCH               13
+#define SQL_API_SQLFREECONNECT         14
+#define SQL_API_SQLFREEENV             15
+#define SQL_API_SQLFREESTMT                16
+#define SQL_API_SQLGETCURSORNAME       17
+#define SQL_API_SQLNUMRESULTCOLS       18
+#define SQL_API_SQLPREPARE             19
+#define SQL_API_SQLROWCOUNT                20
+#define SQL_API_SQLSETCURSORNAME       21
+#define SQL_API_SQLSETPARAM                22
+#define SQL_API_SQLTRANSACT                23
+
+#define SQL_NUM_FUNCTIONS              23
+
+#define SQL_EXT_API_START              40
+
+#define SQL_API_SQLCOLUMNS             40
+
+#define SQL_API_SQLDRIVERCONNECT       41
+#define SQL_API_SQLGETCONNECTOPTION        42
+#define SQL_API_SQLGETDATA             43
+#define SQL_API_SQLGETFUNCTIONS            44
+#define SQL_API_SQLGETINFO             45
+#define SQL_API_SQLGETSTMTOPTION       46
+#define SQL_API_SQLGETTYPEINFO         47
+#define SQL_API_SQLPARAMDATA           48
+#define SQL_API_SQLPUTDATA             49
+#define SQL_API_SQLSETCONNECTOPTION        50
+#define SQL_API_SQLSETSTMTOPTION       51
+#define SQL_API_SQLSPECIALCOLUMNS      52
+#define SQL_API_SQLSTATISTICS          53
+#define SQL_API_SQLTABLES              54
+
+#define SQL_API_SQLBROWSECONNECT       55
+#define SQL_API_SQLCOLUMNPRIVILEGES        56
+#define SQL_API_SQLDATASOURCES         57
+#define SQL_API_SQLDESCRIBEPARAM       58
+#define SQL_API_SQLEXTENDEDFETCH       59
+#define SQL_API_SQLFOREIGNKEYS         60
+#define SQL_API_SQLMORERESULTS         61
+#define SQL_API_SQLNATIVESQL           62
+#define SQL_API_SQLNUMPARAMS           63
+#define SQL_API_SQLPARAMOPTIONS            64
+#define SQL_API_SQLPRIMARYKEYS         65
+#define SQL_API_SQLPROCEDURECOLUMNS        66
+#define SQL_API_SQLPROCEDURES          67
+#define SQL_API_SQLSETPOS              68
+#define SQL_API_SQLSETSCROLLOPTIONS        69
+#define SQL_API_SQLTABLEPRIVILEGES     70
+
+#define SQL_API_SQLDRIVERS             71
+#define SQL_API_SQLBINDPARAMETER       72
+#define SQL_EXT_API_LAST               SQL_API_SQLBINDPARAMETER
+#define SQL_NUM_EXTENSIONS             (SQL_EXT_API_LAST - SQL_EXT_API_START + 1)
+
+#define SQL_API_ALL_FUNCTIONS          0
 
 /* SQLGetInfo infor number */
-#define SQL_INFO_FIRST        0
-#define SQL_DRIVER_HDBC           3
-#define SQL_DRIVER_HENV           4
-#define SQL_DRIVER_HSTMT      5
-#define SQL_DRIVER_NAME           6
-#define SQL_ODBC_VER          10
-#define SQL_CURSOR_COMMIT_BEHAVIOR 23
-#define SQL_CURSOR_ROLLBACK_BEHAVIOR   24
-#define SQL_DEFAULT_TXN_ISOLATION  26
+#define SQL_INFO_FIRST                 0
+#define SQL_DRIVER_HDBC                    3
+#define SQL_DRIVER_HENV                    4
+#define SQL_DRIVER_HSTMT               5
+#define SQL_DRIVER_NAME                    6
+#define SQL_ODBC_VER                   10
+#define SQL_CURSOR_COMMIT_BEHAVIOR     23
+#define SQL_CURSOR_ROLLBACK_BEHAVIOR   24
+#define SQL_DEFAULT_TXN_ISOLATION      26
 
-#define SQL_TXN_ISOLATION_OPTION   72
-#define SQL_NON_NULLABLE_COLUMNS   75
+#define SQL_TXN_ISOLATION_OPTION       72
+#define SQL_NON_NULLABLE_COLUMNS       75
 
-#define SQL_DRIVER_HLIB           76
-#define SQL_DRIVER_ODBC_VER           77
+#define SQL_DRIVER_HLIB                    76
+#define SQL_DRIVER_ODBC_VER                77
 
-#define SQL_QUALIFIER_LOCATION    114
+#define SQL_QUALIFIER_LOCATION         114
 
-#define SQL_INFO_LAST         SQL_QUALIFIER_LOCATION
+#define SQL_INFO_LAST                  SQL_QUALIFIER_LOCATION
 
-#define SQL_INFO_DRIVER_START     1000
+#define SQL_INFO_DRIVER_START          1000
 
 
 /* SQL_TXN_ISOLATION_OPTION masks */
-#define SQL_TXN_READ_UNCOMMITTED   0x00000001L
-#define SQL_TXN_READ_COMMITTED    0x00000002L
-#define SQL_TXN_REPEATABLE_READ    0x00000004L
-#define SQL_TXN_SERIALIZABLE      0x00000008L
-#define SQL_TXN_VERSIONING    0x00000010L
+#define SQL_TXN_READ_UNCOMMITTED       0x00000001L
+#define SQL_TXN_READ_COMMITTED         0x00000002L
+#define SQL_TXN_REPEATABLE_READ            0x00000004L
+#define SQL_TXN_SERIALIZABLE           0x00000008L
+#define SQL_TXN_VERSIONING             0x00000010L
 
 /* SQL_CURSOR_COMMIT_BEHAVIOR and SQL_CURSOR_ROLLBACK_BEHAVIOR values */
 
-#define SQL_CB_DELETE         0x0000
-#define SQL_CB_CLOSE          0x0001
-#define SQL_CB_PRESERVE           0x0002
+#define SQL_CB_DELETE                  0x0000
+#define SQL_CB_CLOSE                   0x0001
+#define SQL_CB_PRESERVE                    0x0002
 
 /* options for SQLGetStmtOption/SQLSetStmtOption */
-#define SQL_QUERY_TIMEOUT     0
-#define SQL_MAX_ROWS          1
-#define SQL_NOSCAN        2
-#define SQL_MAX_LENGTH        3
-#define SQL_ASYNC_ENABLE      4
-#define SQL_BIND_TYPE         5
-#define SQL_CURSOR_TYPE           6
-#define SQL_CONCURRENCY           7
-#define SQL_KEYSET_SIZE           8
-#define SQL_ROWSET_SIZE           9
-#define SQL_SIMULATE_CURSOR           10
-#define SQL_RETRIEVE_DATA     11
-#define SQL_USE_BOOKMARKS     12
-#define SQL_GET_BOOKMARK      13       /* GetStmtOption Only */
-#define SQL_ROW_NUMBER        14       /* GetStmtOption Only */
-#define SQL_STMT_OPT_MAX      SQL_ROW_NUMBER
-
-#define SQL_STMT_OPT_MIN      SQL_QUERY_TIMEOUT
+#define SQL_QUERY_TIMEOUT              0
+#define SQL_MAX_ROWS                   1
+#define SQL_NOSCAN                     2
+#define SQL_MAX_LENGTH                 3
+#define SQL_ASYNC_ENABLE               4
+#define SQL_BIND_TYPE                  5
+#define SQL_CURSOR_TYPE                    6
+#define SQL_CONCURRENCY                    7
+#define SQL_KEYSET_SIZE                    8
+#define SQL_ROWSET_SIZE                    9
+#define SQL_SIMULATE_CURSOR                10
+#define SQL_RETRIEVE_DATA              11
+#define SQL_USE_BOOKMARKS              12
+#define SQL_GET_BOOKMARK               13      /* GetStmtOption Only */
+#define SQL_ROW_NUMBER                 14      /* GetStmtOption Only */
+#define SQL_STMT_OPT_MAX               SQL_ROW_NUMBER
+
+#define SQL_STMT_OPT_MIN               SQL_QUERY_TIMEOUT
 
 /*
  * ODBC 3.0 renames the above to SQL_ATTR_ values. At this time I don't
  * know if they have also been renumbered or not, I will assume not.
  */
-#define SQL_ATTR_QUERY_TIMEOUT    0
-#define SQL_ATTR_MAX_ROWS     1
-#define SQL_ATTR_NOSCAN           2
-#define SQL_ATTR_MAX_LENGTH           3
-#define SQL_ATTR_ASYNC_ENABLE     4
-#define SQL_ATTR_BIND_TYPE    5
-#define SQL_ATTR_CURSOR_TYPE      6
-#define SQL_ATTR_CONCURRENCY      7
-#define SQL_ATTR_KEYSET_SIZE      8
-#define SQL_ATTR_ROWSET_SIZE      9
-#define SQL_ATTR_SIMULATE_CURSOR   10
-#define SQL_ATTR_RETRIEVE_DATA    11
-#define SQL_ATTR_USE_BOOKMARKS    12
-#define SQL_ATTR_GET_BOOKMARK     13   /* GetStmtOption Only */
-#define SQL_ATTR_ROW_NUMBER           14   /* GetStmtOption Only */
+#define SQL_ATTR_QUERY_TIMEOUT         0
+#define SQL_ATTR_MAX_ROWS              1
+#define SQL_ATTR_NOSCAN                    2
+#define SQL_ATTR_MAX_LENGTH                3
+#define SQL_ATTR_ASYNC_ENABLE          4
+#define SQL_ATTR_BIND_TYPE             5
+#define SQL_ATTR_CURSOR_TYPE           6
+#define SQL_ATTR_CONCURRENCY           7
+#define SQL_ATTR_KEYSET_SIZE           8
+#define SQL_ATTR_ROWSET_SIZE           9
+#define SQL_ATTR_SIMULATE_CURSOR       10
+#define SQL_ATTR_RETRIEVE_DATA         11
+#define SQL_ATTR_USE_BOOKMARKS         12
+#define SQL_ATTR_GET_BOOKMARK          13      /* GetStmtOption Only */
+#define SQL_ATTR_ROW_NUMBER                14      /* GetStmtOption Only */
 
 /* New in ODBC 3.0 */
-#define SQL_ATTR_APP_PARAM_DESC        15
-#define SQL_ATTR_APP_ROW_DESC      16
-#define SQL_ATTR_CURSOR_SCROLLABLE 17
-#define SQL_ATTR_CURSOR_SENSITITY  18
-#define SQL_ATTR_ENABLE_AUTO_IPD   19
-#define SQL_ATTR_FETCH_BOOKMARK_PTR 20
-#define SQL_ATTR_IMP_PARAM_DESC        21
-#define SQL_ATTR_IMP_ROW_DESC      22
-#define SQL_ATTR_METADATA_ID       23
+#define SQL_ATTR_APP_PARAM_DESC            15
+#define SQL_ATTR_APP_ROW_DESC          16
+#define SQL_ATTR_CURSOR_SCROLLABLE     17
+#define SQL_ATTR_CURSOR_SENSITITY      18
+#define SQL_ATTR_ENABLE_AUTO_IPD       19
+#define SQL_ATTR_FETCH_BOOKMARK_PTR        20
+#define SQL_ATTR_IMP_PARAM_DESC            21
+#define SQL_ATTR_IMP_ROW_DESC          22
+#define SQL_ATTR_METADATA_ID           23
 #define SQL_ATTR_PARAM_BIND_OFFSET_PTR 24
-#define SQL_ATTR_PARAM_BIND_TYPE   25
+#define SQL_ATTR_PARAM_BIND_TYPE       25
 #define SQL_ATTR_PARAM_OPERATION_PTR   26
-#define SQL_ATTR_PARAM_STATUS_PTR  27
+#define SQL_ATTR_PARAM_STATUS_PTR      27
 #define SQL_ATTR_PARAMS_PROCESSED_PTR  28
-#define SQL_ATTR_PARAMSET_SIZE     29
-#define SQL_ATTR_ROW_ARRAY_SIZE        30
+#define SQL_ATTR_PARAMSET_SIZE         29
+#define SQL_ATTR_ROW_ARRAY_SIZE            30
 #define SQL_ATTR_ROW_BIND_OFFSET_PTR   31
-#define SQL_ATTR_ROW_OPERATION_PTR 32
-#define SQL_ATTR_ROW_STATUS_PTR        33
-#define SQL_ATTR_ROWS_FETCHED_PTR  34
+#define SQL_ATTR_ROW_OPERATION_PTR     32
+#define SQL_ATTR_ROW_STATUS_PTR            33
+#define SQL_ATTR_ROWS_FETCHED_PTR      34
 
-#define SQL_STMT_ATTR_MIN      SQL_ATTR_QUERY_TIMEOUT
-#define SQL_STMT_ATTR_MAX      SQL_ATTR_ROWS_FETCHED_PTR
+#define SQL_STMT_ATTR_MIN              SQL_ATTR_QUERY_TIMEOUT
+#define SQL_STMT_ATTR_MAX              SQL_ATTR_ROWS_FETCHED_PTR
 
 /* SQL_QUERY_TIMEOUT options */
-#define SQL_QUERY_TIMEOUT_DEFAULT  0UL
+#define SQL_QUERY_TIMEOUT_DEFAULT      0UL
 
 /* SQL_MAX_ROWS options */
-#define SQL_MAX_ROWS_DEFAULT      0UL
+#define SQL_MAX_ROWS_DEFAULT           0UL
 
 /* SQL_MAX_LENGTH options */
-#define SQL_MAX_LENGTH_DEFAULT    0UL
+#define SQL_MAX_LENGTH_DEFAULT         0UL
 
 /* SQL_CONCURRENCY options */
-#define SQL_CONCUR_READ_ONLY      1
-#define SQL_CONCUR_LOCK           2
-#define SQL_CONCUR_ROWVER     3
-#define SQL_CONCUR_VALUES     4
+#define SQL_CONCUR_READ_ONLY           1
+#define SQL_CONCUR_LOCK                    2
+#define SQL_CONCUR_ROWVER              3
+#define SQL_CONCUR_VALUES              4
 
 /* options for SQLSetConnectOption/SQLGetConnectOption */
-#define SQL_ACCESS_MODE           101
-#define SQL_AUTOCOMMIT        102
-#define SQL_LOGIN_TIMEOUT     103
-#define SQL_OPT_TRACE         104
-#define SQL_OPT_TRACEFILE     105
-#define SQL_TRANSLATE_DLL     106
-#define SQL_TRANSLATE_OPTION      107
-#define SQL_TXN_ISOLATION     108
-#define SQL_CURRENT_QUALIFIER     109
-#define SQL_ODBC_CURSORS      110
-#define SQL_QUIET_MODE        111
-#define SQL_PACKET_SIZE           112
-#define SQL_CONN_OPT_MAX      SQL_PACKET_SIZE
-#define SQL_CONNECT_OPT_DRVR_START 1000
-
-#define SQL_CONN_OPT_MIN      SQL_ACCESS_MODE
+#define SQL_ACCESS_MODE                    101
+#define SQL_AUTOCOMMIT                 102
+#define SQL_LOGIN_TIMEOUT              103
+#define SQL_OPT_TRACE                  104
+#define SQL_OPT_TRACEFILE              105
+#define SQL_TRANSLATE_DLL              106
+#define SQL_TRANSLATE_OPTION           107
+#define SQL_TXN_ISOLATION              108
+#define SQL_CURRENT_QUALIFIER          109
+#define SQL_ODBC_CURSORS               110
+#define SQL_QUIET_MODE                 111
+#define SQL_PACKET_SIZE                    112
+#define SQL_CONN_OPT_MAX               SQL_PACKET_SIZE
+#define SQL_CONNECT_OPT_DRVR_START     1000
+
+#define SQL_CONN_OPT_MIN               SQL_ACCESS_MODE
 
 /* SQL_ACCESS_MODE options */
-#define SQL_MODE_READ_WRITE           0UL
-#define SQL_MODE_READ_ONLY    1UL
-#define SQL_MODE_DEFAULT      SQL_MODE_READ_WRITE
+#define SQL_MODE_READ_WRITE                0UL
+#define SQL_MODE_READ_ONLY             1UL
+#define SQL_MODE_DEFAULT               SQL_MODE_READ_WRITE
 
 /* SQL_AUTOCOMMIT options */
-#define SQL_AUTOCOMMIT_OFF    0UL
-#define SQL_AUTOCOMMIT_ON     1UL
-#define SQL_AUTOCOMMIT_DEFAULT    SQL_AUTOCOMMIT_ON
+#define SQL_AUTOCOMMIT_OFF             0UL
+#define SQL_AUTOCOMMIT_ON              1UL
+#define SQL_AUTOCOMMIT_DEFAULT         SQL_AUTOCOMMIT_ON
 
 /* SQL_LOGIN_TIMEOUT options */
-#define SQL_LOGIN_TIMEOUT_DEFAULT  15UL
+#define SQL_LOGIN_TIMEOUT_DEFAULT      15UL
 
 /* SQL_OPT_TRACE options */
-#define SQL_OPT_TRACE_OFF     0UL
-#define SQL_OPT_TRACE_ON      1UL
-#define SQL_OPT_TRACE_DEFAULT     SQL_OPT_TRACE_OFF
-#define SQL_OPT_TRACE_FILE_DEFAULT "odbc.log"
+#define SQL_OPT_TRACE_OFF              0UL
+#define SQL_OPT_TRACE_ON               1UL
+#define SQL_OPT_TRACE_DEFAULT          SQL_OPT_TRACE_OFF
+#define SQL_OPT_TRACE_FILE_DEFAULT     "odbc.log"
 
 /* SQL_ODBC_CURSORS options */
-#define SQL_CUR_USE_IF_NEEDED     0UL
-#define SQL_CUR_USE_ODBC      1UL
-#define SQL_CUR_USE_DRIVER    2UL
-#define SQL_CUR_DEFAULT           SQL_CUR_USE_DRIVER
+#define SQL_CUR_USE_IF_NEEDED          0UL
+#define SQL_CUR_USE_ODBC               1UL
+#define SQL_CUR_USE_DRIVER             2UL
+#define SQL_CUR_DEFAULT                    SQL_CUR_USE_DRIVER
 
 /* Column types and scopes in SQLSpecialColumns. */
-#define SQL_BEST_ROWID        1
-#define SQL_ROWVER        2
+#define SQL_BEST_ROWID                 1
+#define SQL_ROWVER                     2
 
-#define SQL_SCOPE_CURROW      0
-#define SQL_SCOPE_TRANSACTION     1
-#define SQL_SCOPE_SESSION     2
+#define SQL_SCOPE_CURROW               0
+#define SQL_SCOPE_TRANSACTION          1
+#define SQL_SCOPE_SESSION              2
 
 
 /* SQLExtendedFetch flag values */
-#define SQL_FETCH_NEXT        1
-#define SQL_FETCH_FIRST           2
-#define SQL_FETCH_LAST        3
-#define SQL_FETCH_PRIOR           4
-#define SQL_FETCH_ABSOLUTE    5
-#define SQL_FETCH_RELATIVE    6
-#define SQL_FETCH_BOOKMARK    8
+#define SQL_FETCH_NEXT                 1
+#define SQL_FETCH_FIRST                    2
+#define SQL_FETCH_LAST                 3
+#define SQL_FETCH_PRIOR                    4
+#define SQL_FETCH_ABSOLUTE             5
+#define SQL_FETCH_RELATIVE             6
+#define SQL_FETCH_BOOKMARK             8
 
 /* Defines for SQLBindParameter/SQLProcedureColumns */
-#define SQL_PARAM_TYPE_UNKNOWN     0
-#define SQL_PARAM_INPUT            1
-#define SQL_PARAM_INPUT_OUTPUT     2
-#define SQL_RESULT_COL         3
-#define SQL_PARAM_OUTPUT       4
-#define SQL_RETURN_VALUE       5
+#define SQL_PARAM_TYPE_UNKNOWN         0
+#define SQL_PARAM_INPUT                    1
+#define SQL_PARAM_INPUT_OUTPUT         2
+#define SQL_RESULT_COL                 3
+#define SQL_PARAM_OUTPUT               4
+#define SQL_RETURN_VALUE               5
 
 /* Defines used by Driver Manager for mapping SQLSetParam to SQLBindParameter */
-#define SQL_PARAM_TYPE_DEFAULT    SQL_PARAM_INPUT_OUTPUT
-#define SQL_SETPARAM_VALUE_MAX    (-1L)
+#define SQL_PARAM_TYPE_DEFAULT         SQL_PARAM_INPUT_OUTPUT
+#define SQL_SETPARAM_VALUE_MAX         (-1L)
 
 /* SQLStatistics flag values */
-#define SQL_INDEX_UNIQUE      0
-#define SQL_INDEX_ALL         1
+#define SQL_INDEX_UNIQUE               0
+#define SQL_INDEX_ALL                  1
 
-#define SQL_QUICK         0
-#define SQL_ENSURE        1
+#define SQL_QUICK                      0
+#define SQL_ENSURE                     1
 
 /* SQLSetScrollOption flag values */
-#define SQL_SCROLL_FORWARD_ONLY    0L
-#define SQL_SCROLL_KEYSET_DRIVEN   (-1L)
-#define SQL_SCROLL_DYNAMIC    (-2L)
-#define SQL_SCROLL_STATIC     (-3L)
+#define SQL_SCROLL_FORWARD_ONLY            0L
+#define SQL_SCROLL_KEYSET_DRIVEN       (-1L)
+#define SQL_SCROLL_DYNAMIC             (-2L)
+#define SQL_SCROLL_STATIC              (-3L)
 
 /* Everything below has been added to the original isqlext.h that comes
  * with iodbc.
@@ -496,82 +498,82 @@ typedef struct tagSQL_INTERVAL_STRUCT
 #define SQL_CODE_HOUR_TO_SECOND
 #define SQL_CODE_MINUTE_TO_SECOND
 */
-#define SQL_INTERVAL_YEAR      (-80)
-#define SQL_INTERVAL_MONTH     (-81)
-#define SQL_INTERVAL_YEAR_TO_MONTH (-82)
-#define SQL_INTERVAL_DAY       (-83)
-#define SQL_INTERVAL_HOUR      (-84)
-#define SQL_INTERVAL_MINUTE        (-85)
-#define SQL_INTERVAL_SECOND        (-86)
-#define SQL_INTERVAL_DAY_TO_HOUR   (-87)
-#define SQL_INTERVAL_DAY_TO_MINUTE (-88)
-#define SQL_INTERVAL_DAY_TO_SECOND (-89)
-#define SQL_INTERVAL_HOUR_TO_MINUTE (-90)
-#define SQL_INTERVAL_HOUR_TO_SECOND (-91)
+#define SQL_INTERVAL_YEAR              (-80)
+#define SQL_INTERVAL_MONTH             (-81)
+#define SQL_INTERVAL_YEAR_TO_MONTH     (-82)
+#define SQL_INTERVAL_DAY               (-83)
+#define SQL_INTERVAL_HOUR              (-84)
+#define SQL_INTERVAL_MINUTE                (-85)
+#define SQL_INTERVAL_SECOND                (-86)
+#define SQL_INTERVAL_DAY_TO_HOUR       (-87)
+#define SQL_INTERVAL_DAY_TO_MINUTE     (-88)
+#define SQL_INTERVAL_DAY_TO_SECOND     (-89)
+#define SQL_INTERVAL_HOUR_TO_MINUTE        (-90)
+#define SQL_INTERVAL_HOUR_TO_SECOND        (-91)
 #define SQL_INTERVAL_MINUTE_TO_SECOND  (-92)
 
-#define SQL_UNICODE            (-95)
-#define SQL_UNICODE_VARCHAR        (-96)
-#define SQL_UNICODE_LONGVARCHAR        (-97)
-#define SQL_UNICODE_CHAR       SQL_UNICODE
+#define SQL_UNICODE                        (-95)
+#define SQL_UNICODE_VARCHAR                (-96)
+#define SQL_UNICODE_LONGVARCHAR            (-97)
+#define SQL_UNICODE_CHAR               SQL_UNICODE
 
 /* C to SQL data types */
 /*
-#define SQL_C_TYPE_DATE        SQL_TYPE_DATE
-#define SQL_C_TYPE_TIME        SQL_TYPE_TIME
-#define SQL_C_TYPE_TIMESTAMP   SQL_TYPE_TIMESTAMP
-#define SQL_C_GUID     SQLGUID
+#define SQL_C_TYPE_DATE                    SQL_TYPE_DATE
+#define SQL_C_TYPE_TIME                    SQL_TYPE_TIME
+#define SQL_C_TYPE_TIMESTAMP           SQL_TYPE_TIMESTAMP
+#define SQL_C_GUID                     SQLGUID
 */
-#define SQL_C_INTERVAL_MONTH       SQL_INTERVAL_MONTH
-#define SQL_C_INTERVAL_YEAR        SQL_INTERVAL_YEAR
+#define SQL_C_INTERVAL_MONTH           SQL_INTERVAL_MONTH
+#define SQL_C_INTERVAL_YEAR                SQL_INTERVAL_YEAR
 #define SQL_C_INTERVAL_YEAR_TO_MONTH   SQL_INTERVAL_YEAR_TO_MONTH
-#define SQL_C_INTERVAL_DAY     SQL_INTERVAL_DAY
-#define SQL_C_INTERVAL_HOUR        SQL_INTERVAL_HOUR
-#define SQL_C_INTERVAL_MINUTE      SQL_INTERVAL_MINUTE
-#define SQL_C_INTERVAL_SECOND      SQL_INTERVAL_SECOND
-#define SQL_C_INTERVAL_DAY_TO_HOUR SQL_INTERVAL_DAY_TO_HOUR
+#define SQL_C_INTERVAL_DAY             SQL_INTERVAL_DAY
+#define SQL_C_INTERVAL_HOUR                SQL_INTERVAL_HOUR
+#define SQL_C_INTERVAL_MINUTE          SQL_INTERVAL_MINUTE
+#define SQL_C_INTERVAL_SECOND          SQL_INTERVAL_SECOND
+#define SQL_C_INTERVAL_DAY_TO_HOUR     SQL_INTERVAL_DAY_TO_HOUR
 #define SQL_C_INTERVAL_DAY_TO_MINUTE   SQL_INTERVAL_DAY_TO_MINUTE
 #define SQL_C_INTERVAL_DAY_TO_SECOND   SQL_INTERVAL_DAY_TO_SECOND
 #define SQL_C_INTERVAL_HOUR_TO_MINUTE  SQL_INTERVAL_HOUR_TO_MINUTE
 #define SQL_C_INTERVAL_HOUR_TO_SECOND  SQL_INTERVAL_HOUR_TO_SECOND
 #define SQL_C_INTERVAL_MINUTE_TO_SECOND SQL_INTERVAL_MINUTE_TO_SECOND
-#define SQL_C_NUMERIC      SQL_NUMERIC
-#define SQL_C_VARBOOKMARK  SQL_C_BINARY
-#define SQL_C_SBIGINT      (SQL_BIGINT + SQL_SIGNED_OFFSET)
-#define SQL_C_UBIGINT      (SQL_BIGINT + SQL_UNSIGNED_OFFSET)
+#define SQL_C_NUMERIC                  SQL_NUMERIC
+#define SQL_C_VARBOOKMARK              SQL_C_BINARY
+#define SQL_C_SBIGINT                  (SQL_BIGINT + SQL_SIGNED_OFFSET)
+#define SQL_C_UBIGINT                  (SQL_BIGINT + SQL_UNSIGNED_OFFSET)
 
 #define SQL_TRUE   1UL
 #define SQL_FALSE  0UL
 
 /* SQLGetData */
-#define SQL_NO_TOTAL           (-4)
+#define SQL_NO_TOTAL                   (-4)
 
 /* SQLBindParameter */
-#define SQL_LEN_DATA_AT_EXEC_OFFSET (-100)
+#define SQL_LEN_DATA_AT_EXEC_OFFSET        (-100)
 #define SQL_LEN_DATA_AT_EXEC(length)   (-length+SQL_LEN_DATA_AT_EXEC_OFFSET)
 
-#define SQL_LEN_BINARY_ATTR_OFFSET (-100)
-#define SQL_LEN_BINARY_ATTR(length) (-(length)+SQL_LEN_BINARY_ATTR_OFFSET)
+#define SQL_LEN_BINARY_ATTR_OFFSET     (-100)
+#define SQL_LEN_BINARY_ATTR(length)        (-(length)+SQL_LEN_BINARY_ATTR_OFFSET)
 
 /* SQLExtendedFetch - row status */
-#define SQL_ROW_SUCCESS        0
-#define SQL_ROW_DELETED        1
-#define SQL_ROW_UPDATED        2
-#define SQL_ROW_NOROW      3
-#define SQL_ROW_ADDED      4
-#define SQL_ROW_ERROR      5
+#define SQL_ROW_SUCCESS                    0
+#define SQL_ROW_DELETED                    1
+#define SQL_ROW_UPDATED                    2
+#define SQL_ROW_NOROW                  3
+#define SQL_ROW_ADDED                  4
+#define SQL_ROW_ERROR                  5
 
 /* SQLForeignKeys - rule flags */
-#define SQL_CASCADE        0
-#define SQL_RESTRICT       1
-#define SQL_SET_NULL       2
-#define SQL_NO_ACTION      3   /* ODBC 3.0 */
-#define SQL_SET_DEFAULT        4
+#define SQL_CASCADE                        0
+#define SQL_RESTRICT                   1
+#define SQL_SET_NULL                   2
+#define SQL_NO_ACTION                  3       /* ODBC 3.0 */
+#define SQL_SET_DEFAULT                    4
 
 /* SQLForeignKeys - Deferrability (ODBC 3.0) */
-#define SQL_INITIALLY_DEFERRED 5
-#define SQL_INITIALLY_IMMEDIATE 6
-#define SQL_NOT_DEFFERABLE 2
+#define SQL_INITIALLY_DEFERRED         5
+#define SQL_INITIALLY_IMMEDIATE            6
+#define SQL_NOT_DEFFERABLE             2
 
 /* Constants not in isqlext.h but needed by the driver. I have no idea
 * if these correspond correctly with those from Microsoft or not. I don't
@@ -586,23 +588,23 @@ typedef struct tagSQL_INTERVAL_STRUCT
 #define SQL_ACTIVE_CONNECTIONS         0
 #define SQL_ACTIVE_STATEMENTS          1
 #define SQL_DATA_SOURCE_NAME           2
-#define SQL_DRIVER_VER             7
-#define SQL_FETCH_DIRECTION            8
+#define SQL_DRIVER_VER                 7
+#define SQL_FETCH_DIRECTION                8
 #define SQL_ODBC_API_CONFORMANCE       9
-#define SQL_ROW_UPDATES                11
-#define SQL_ODBC_SAG_CLI_CONFORMANCE       12
-#define SQL_SERVER_NAME                13
+#define SQL_ROW_UPDATES                    11
+#define SQL_ODBC_SAG_CLI_CONFORMANCE   12
+#define SQL_SERVER_NAME                    13
 #define SQL_SEARCH_PATTERN_ESCAPE      14
 #define SQL_ODBC_SQL_CONFORMANCE       15
-#define SQL_DBMS_NAME              17
-#define SQL_DBMS_VER               18
+#define SQL_DBMS_NAME                  17
+#define SQL_DBMS_VER                   18
 #define SQL_ACCESSIBLE_TABLES          19
 #define SQL_ACCESSIBLE_PROCEDURES      20
-#define SQL_PROCEDURES             21
+#define SQL_PROCEDURES                 21
 #define SQL_CONCAT_NULL_BEHAVIOR       22
 #define SQL_DATA_SOURCE_READ_ONLY      25
 #define SQL_EXPRESSIONS_IN_ORDERBY     27
-#define SQL_IDENTIFIER_CASE            28
+#define SQL_IDENTIFIER_CASE                28
 #define SQL_IDENTIFIER_QUOTE_CHAR      29
 #define SQL_MAX_COLUMN_NAME_LEN            30
 #define SQL_MAX_CURSOR_NAME_LEN            31
@@ -612,69 +614,69 @@ typedef struct tagSQL_INTERVAL_STRUCT
 #define SQL_MAX_TABLE_NAME_LEN         35
 #define SQL_MULT_RESULT_SETS           36
 #define SQL_MULTIPLE_ACTIVE_TXN            37
-#define SQL_OUTER_JOINS                38
-#define SQL_OWNER_TERM             39
-#define SQL_PROCEDURE_TERM         40
-#define SQL_QUALIFIER_NAME_SEPARATOR       41
-#define SQL_QUALIFIER_TERM         42
+#define SQL_OUTER_JOINS                    38
+#define SQL_OWNER_TERM                 39
+#define SQL_PROCEDURE_TERM             40
+#define SQL_QUALIFIER_NAME_SEPARATOR   41
+#define SQL_QUALIFIER_TERM             42
 #define SQL_SCROLL_CONCURRENCY         43
-#define SQL_SCROLL_OPTIONS         44
-#define SQL_TABLE_TERM             45
-#define SQL_TXN_CAPABLE                46
-#define SQL_USER_NAME              47
+#define SQL_SCROLL_OPTIONS             44
+#define SQL_TABLE_TERM                 45
+#define SQL_TXN_CAPABLE                    46
+#define SQL_USER_NAME                  47
 #define SQL_CONVERT_FUNCTIONS          48
 #define SQL_NUMERIC_FUNCTIONS          49
 #define SQL_STRING_FUNCTIONS           50
 #define SQL_SYSTEM_FUNCTIONS           51
 #define SQL_TIMEDATE_FUNCTIONS         52
-#define SQL_CONVERT_BIGINT         53
-#define SQL_CONVERT_BINARY         54
-#define SQL_CONVERT_BIT                55
-#define SQL_CONVERT_CHAR           56
-#define SQL_CONVERT_DATE           57
-#define SQL_CONVERT_DECIMAL            58
-#define SQL_CONVERT_DOUBLE         59
-#define SQL_CONVERT_FLOAT          60
-#define SQL_CONVERT_INTEGER            61
+#define SQL_CONVERT_BIGINT             53
+#define SQL_CONVERT_BINARY             54
+#define SQL_CONVERT_BIT                    55
+#define SQL_CONVERT_CHAR               56
+#define SQL_CONVERT_DATE               57
+#define SQL_CONVERT_DECIMAL                58
+#define SQL_CONVERT_DOUBLE             59
+#define SQL_CONVERT_FLOAT              60
+#define SQL_CONVERT_INTEGER                61
 #define SQL_CONVERT_LONGVARCHAR            62
-#define SQL_CONVERT_NUMERIC            63
-#define SQL_CONVERT_REAL           64
+#define SQL_CONVERT_NUMERIC                63
+#define SQL_CONVERT_REAL               64
 #define SQL_CONVERT_SMALLINT           65
-#define SQL_CONVERT_TIME           66
+#define SQL_CONVERT_TIME               66
 #define SQL_CONVERT_TIMESTAMP          67
-#define SQL_CONVERT_TINYINT            68
+#define SQL_CONVERT_TINYINT                68
 #define SQL_CONVERT_VARBINARY          69
-#define SQL_CONVERT_VARCHAR            70
+#define SQL_CONVERT_VARCHAR                70
 #define SQL_CONVERT_LONGVARBINARY      71
 #define SQL_ODBC_SQL_OPT_IEF           73
 #define SQL_CORRELATION_NAME           74
-#define SQL_LOCK_TYPES             78
-#define SQL_POS_OPERATIONS         79
+#define SQL_LOCK_TYPES                 78
+#define SQL_POS_OPERATIONS             79
 #define SQL_POSITIONED_STATEMENTS      80
 #define SQL_GETDATA_EXTENSIONS         81
 #define SQL_BOOKMARK_PERSISTENCE       82
 #define SQL_STATIC_SENSITIVITY         83
-#define SQL_FILE_USAGE             84
-#define SQL_NULL_COLLATION         85
-#define SQL_ALTER_TABLE                86
-#define SQL_COLUMN_ALIAS           87
-#define SQL_GROUP_BY               88
-#define SQL_KEYWORDS               89
-#define SQL_ORDER_BY_COLUMNS_IN_SELECT     90
-#define SQL_OWNER_USAGE                91
-#define SQL_QUALIFIER_USAGE            92
+#define SQL_FILE_USAGE                 84
+#define SQL_NULL_COLLATION             85
+#define SQL_ALTER_TABLE                    86
+#define SQL_COLUMN_ALIAS               87
+#define SQL_GROUP_BY                   88
+#define SQL_KEYWORDS                   89
+#define SQL_ORDER_BY_COLUMNS_IN_SELECT 90
+#define SQL_OWNER_USAGE                    91
+#define SQL_QUALIFIER_USAGE                92
 #define SQL_QUOTED_IDENTIFIER_CASE     93
 #define SQL_SPECIAL_CHARACTERS         94
-#define SQL_SUBQUERIES             95
-#define SQL_UNION              96
+#define SQL_SUBQUERIES                 95
+#define SQL_UNION                      96
 #define SQL_MAX_COLUMNS_IN_GROUP_BY        97
 #define SQL_MAX_COLUMNS_IN_INDEX       98
 #define SQL_MAX_COLUMNS_IN_ORDER_BY        99
 #define SQL_MAX_COLUMNS_IN_SELECT      100
 #define SQL_MAX_COLUMNS_IN_TABLE       101
-#define SQL_MAX_INDEX_SIZE         102
-#define SQL_MAX_ROW_SIZE_INCLUDES_LONG     103
-#define SQL_MAX_ROW_SIZE           104
+#define SQL_MAX_INDEX_SIZE             102
+#define SQL_MAX_ROW_SIZE_INCLUDES_LONG 103
+#define SQL_MAX_ROW_SIZE               104
 #define SQL_MAX_STATEMENT_LEN          105
 #define SQL_MAX_TABLES_IN_SELECT       106
 #define SQL_MAX_USER_NAME_LEN          107
@@ -685,27 +687,27 @@ typedef struct tagSQL_INTERVAL_STRUCT
 #define SQL_MAX_BINARY_LITERAL_LEN     112
 #define SQL_LIKE_ESCAPE_CLAUSE         113
 
-#define SQL_OJ_CAPABILITIES            65003
+#define SQL_OJ_CAPABILITIES                65003
 /* ODBC 3.0 alias */
-#define SQL_MAX_SCHEMA_NAME_LEN        SQL_MAX_OWNER_NAME_LEN
+#define SQL_MAX_SCHEMA_NAME_LEN            SQL_MAX_OWNER_NAME_LEN
 
 /* Bit Masks describing the behaviour of the GetInfo functions named above */
 /*
  * alter table behaviour(4 byte val)
  */
-#define SQL_AT_ADD_COLUMN      0x00000001L
-#define SQL_AT_DROP_COLUMN     0x00000002L
+#define SQL_AT_ADD_COLUMN              0x00000001L
+#define SQL_AT_DROP_COLUMN             0x00000002L
 
 /*
  * BookMark Persistence, a SQLUINTEGER bitmask(ie 4 bytes)
 */
-#define SQL_BP_CLOSE           0x00000001L
-#define SQL_BP_DELETE          0x00000002L
-#define SQL_BP_DROP            0x00000004L
-#define SQL_BP_TRANSACTION     0x00000008L
-#define SQL_BP_UPDATE          0x00000010L
-#define SQL_BP_OTHER_HSTMT     0x00000020L
-#define SQL_BP_SCROLL          0x00000040L
+#define SQL_BP_CLOSE                   0x00000001L
+#define SQL_BP_DELETE                  0x00000002L
+#define SQL_BP_DROP                        0x00000004L
+#define SQL_BP_TRANSACTION             0x00000008L
+#define SQL_BP_UPDATE                  0x00000010L
+#define SQL_BP_OTHER_HSTMT             0x00000020L
+#define SQL_BP_SCROLL                  0x00000040L
 
 /*
  * Conversion bitmasks for testing which conversions are supported by
@@ -715,57 +717,57 @@ typedef struct tagSQL_INTERVAL_STRUCT
  * is SQLUINTEGER, i.e. 4 bytes). Note that these masks are defined in
  * alphabetical order, I have no idea if this maps to MS's SDK.
  */
-#define SQL_CVT_CHAR       0x00000001L
-#define SQL_CVT_NUMERIC        0x00000002L
-#define SQL_CVT_DECIMAL        0x00000004L
-#define SQL_CVT_INTEGER        0x00000008L
-#define SQL_CVT_SMALLINT   0x00000010L
-#define SQL_CVT_FLOAT      0x00000020L
-#define SQL_CVT_REAL       0x00000040L
-#define SQL_CVT_DOUBLE     0x00000080L
-#define SQL_CVT_VARCHAR        0x00000100L
-#define SQL_CVT_LONGVARCHAR 0x00000200L
-#define SQL_CVT_BINARY     0x00000400L
-#define SQL_CVT_VARBINARY  0x00000800L
-#define SQL_CVT_BIT        0x00001000L
-#define SQL_CVT_TINYINT        0x00002000L
-#define SQL_CVT_BIGINT     0x00004000L
-#define SQL_CVT_DATE       0x00008000L
-#define SQL_CVT_TIME       0x00010000L
-#define SQL_CVT_TIMESTAMP  0x00020000L
-#define SQL_CVT_LONGVARBINARY  0x00040000L
+#define SQL_CVT_CHAR                   0x00000001L
+#define SQL_CVT_NUMERIC                    0x00000002L
+#define SQL_CVT_DECIMAL                    0x00000004L
+#define SQL_CVT_INTEGER                    0x00000008L
+#define SQL_CVT_SMALLINT               0x00000010L
+#define SQL_CVT_FLOAT                  0x00000020L
+#define SQL_CVT_REAL                   0x00000040L
+#define SQL_CVT_DOUBLE                 0x00000080L
+#define SQL_CVT_VARCHAR                    0x00000100L
+#define SQL_CVT_LONGVARCHAR                0x00000200L
+#define SQL_CVT_BINARY                 0x00000400L
+#define SQL_CVT_VARBINARY              0x00000800L
+#define SQL_CVT_BIT                        0x00001000L
+#define SQL_CVT_TINYINT                    0x00002000L
+#define SQL_CVT_BIGINT                 0x00004000L
+#define SQL_CVT_DATE                   0x00008000L
+#define SQL_CVT_TIME                   0x00010000L
+#define SQL_CVT_TIMESTAMP              0x00020000L
+#define SQL_CVT_LONGVARBINARY          0x00040000L
 
 
 /* extras added in ODBC 3.0 */
-#define SQL_CVT_INTERVAL_YEAR_MONTH 0x00080000L
-#define SQL_CVT_INTERVAL_DAY_TIME  0x00100000L
+#define SQL_CVT_INTERVAL_YEAR_MONTH        0x00080000L
+#define SQL_CVT_INTERVAL_DAY_TIME      0x00100000L
 
 /*
  * concat null behaviour(2 byte val)
  */
-#define SQL_CB_NULL                0x0000
-#define SQL_CB_NON_NULL            0x0001
+#define SQL_CB_NULL                        0x0000
+#define SQL_CB_NON_NULL                    0x0001
 
 /*
  * correlation name
  */
-#define SQL_CN_NONE                0x0000
-#define SQL_CN_DIFFERENT       0x0001
-#define SQL_CN_ANY         0x0002
+#define SQL_CN_NONE                        0x0000
+#define SQL_CN_DIFFERENT               0x0001
+#define SQL_CN_ANY                     0x0002
 
 /*
  * Fetch Direction. A SQLINTEGER bitmask enumerating the supported fetch
  * direction options. This information type has been deprecated in
  * ODBC 3.0.
  */
-#define SQL_FD_FETCH_NEXT      0x00000001L
-#define SQL_FD_FETCH_FIRST     0x00000002L
-#define SQL_FD_FETCH_LAST      0x00000004L
-#define SQL_FD_FETCH_PRIOR     0x00000008L
-#define SQL_FD_FETCH_ABSOLUTE      0x00000010L
-#define SQL_FD_FETCH_RELATIVE      0x00000020L
-#define SQL_FD_FETCH_RESUME        0x00000040L
-#define SQL_FD_FETCH_BOOKMARK      0x00000080L
+#define SQL_FD_FETCH_NEXT              0x00000001L
+#define SQL_FD_FETCH_FIRST             0x00000002L
+#define SQL_FD_FETCH_LAST              0x00000004L
+#define SQL_FD_FETCH_PRIOR             0x00000008L
+#define SQL_FD_FETCH_ABSOLUTE          0x00000010L
+#define SQL_FD_FETCH_RELATIVE          0x00000020L
+#define SQL_FD_FETCH_RESUME                0x00000040L
+#define SQL_FD_FETCH_BOOKMARK          0x00000080L
 
 /*
  * Conversion bitmasks for testing which function conversions are supported by
@@ -775,184 +777,184 @@ typedef struct tagSQL_INTERVAL_STRUCT
  * is SQLUINTEGER, i.e. 4 bytes). Note that these masks are defined in
  * alphabetical order, I have no idea if this maps to MS's SDK.
  */
-#define SQL_FN_CVT_CONVERT 0x00000001L
-#define SQL_FN_CVT_CAST        0x00000002L
+#define SQL_FN_CVT_CONVERT             0x00000001L
+#define SQL_FN_CVT_CAST                    0x00000002L
 
 /*
  * File Usage. A SQLUSMALLINT indicating how a singel-tier driver treats
  * files in a data source.
  */
-#define SQL_FILE_NOT_SUPPORTED 0x0000
-#define SQL_FILE_TABLE     0x0001
-#define SQL_FILE_QUALIFIER 0x0002
-#define SQL_FILE_CATALOG   SQL_FILE_CATALOG
+#define SQL_FILE_NOT_SUPPORTED         0x0000
+#define SQL_FILE_TABLE                 0x0001
+#define SQL_FILE_QUALIFIER             0x0002
+#define SQL_FILE_CATALOG               SQL_FILE_CATALOG
 
 /*
  * GetData Extensions. A SQLUINTEGER(4 bytes) bitmask enumerating extensions
  * to SQLGetData.
  */
-#define SQL_GD_ANY_COLUMN  0x00000001L
-#define SQL_GD_ANY_ORDER   0x00000002L
-#define SQL_GD_BLOCK       0x00000004L
-#define SQL_GD_BOUND       0x00000008L
+#define SQL_GD_ANY_COLUMN              0x00000001L
+#define SQL_GD_ANY_ORDER               0x00000002L
+#define SQL_GD_BLOCK                   0x00000004L
+#define SQL_GD_BOUND                   0x00000008L
 
 /*
  * Group By. A SQLUSMALLINT value specifying the relationship between the
  * columns in the GROUP BY clause and the non-aggregated columns in the
  * select list.
 */
-#define SQL_GB_NOT_SUPPORTED       0x0000
+#define SQL_GB_NOT_SUPPORTED           0x0000
 #define SQL_GB_GROUP_BY_EQUALS_SELECT  0x0001
 #define SQL_GB_GROUP_BY_CONTAINS_SELECT 0x0002
-#define SQL_GB_NO_RELATION     0x0003
+#define SQL_GB_NO_RELATION             0x0003
 
 /* added in ODBC 3.0 */
-#define SQL_GB_COLLATE         0x0004
+#define SQL_GB_COLLATE                 0x0004
 
 /*
  * Identifier Case. A SQLUSMALLINT indicating how identifiers are handled.
  */
-#define SQL_IC_UPPER           0x0001
-#define SQL_IC_LOWER           0x0002
-#define SQL_IC_SENSITIVE       0x0003
-#define SQL_IC_MIXED           0x0004
+#define SQL_IC_UPPER                   0x0001
+#define SQL_IC_LOWER                   0x0002
+#define SQL_IC_SENSITIVE               0x0003
+#define SQL_IC_MIXED                   0x0004
 
 /*
  * Lock types. A SQLINTEGER bitmask enumerating the supported lock types for
  * the fLock argument in SQLSetPos. Depreciated in 3.0.
  */
-#define SQL_LCK_NO_CHANGE      0x00000001L
-#define SQL_LCK_EXCLUSIVE      0x00000002L
-#define SQL_LCK_UNLOCK         0x00000004L
+#define SQL_LCK_NO_CHANGE              0x00000001L
+#define SQL_LCK_EXCLUSIVE              0x00000002L
+#define SQL_LCK_UNLOCK                 0x00000004L
 
 /*
  * Non Nullable Columns. A SQLUSMALLINT value indicating if the data source
  * supports NOT NULL in columns.
  */
-#define SQL_NNC_NULL       0x0000
-#define SQL_NNC_NON_NULL   0x0001
+#define SQL_NNC_NULL                   0x0000
+#define SQL_NNC_NON_NULL               0x0001
 
 /*
  * Null Collation. A SQLUSMALLINT value specifying where NULLS are sorted in
  * a result set.
  */
-#define SQL_NC_HIGH        0x0001
-#define SQL_NC_LOW     0x0003
-#define SQL_NC_START       0x0002
-#define SQL_NC_END     0x0004
+#define SQL_NC_HIGH                        0x0001
+#define SQL_NC_LOW                     0x0003
+#define SQL_NC_START                   0x0002
+#define SQL_NC_END                     0x0004
 
 /*
  * Numeric Functions. A SQLUINTEGER bitmask enumerating the scalar numeric
  * functions supported by the driver and associated data source.
  */
-#define SQL_FN_NUM_ABS         0x00000001L
-#define SQL_FN_NUM_ACOS            0x00000002L
-#define SQL_FN_NUM_ASIN            0x00000004L
-#define SQL_FN_NUM_ATAN            0x00000008L
-#define SQL_FN_NUM_ATAN2       0x00000010L
-#define SQL_FN_NUM_CEILING     0x00000020L
-#define SQL_FN_NUM_COS         0x00000040L
-#define SQL_FN_NUM_COT         0x00000080L
-#define SQL_FN_NUM_EXP         0x00000100L
-#define SQL_FN_NUM_FLOOR       0x00000200L
-#define SQL_FN_NUM_LOG         0x00000400L
-#define SQL_FN_NUM_MOD         0x00000800L
-#define SQL_FN_NUM_SIGN            0x00001000L
-#define SQL_FN_NUM_SIN         0x00002000L
-#define SQL_FN_NUM_SQRT            0x00004000L
-#define SQL_FN_NUM_TAN         0x00008000L
-#define SQL_FN_NUM_PI          0x00010000L
-#define SQL_FN_NUM_RAND            0x00020000L
+#define SQL_FN_NUM_ABS                 0x00000001L
+#define SQL_FN_NUM_ACOS                    0x00000002L
+#define SQL_FN_NUM_ASIN                    0x00000004L
+#define SQL_FN_NUM_ATAN                    0x00000008L
+#define SQL_FN_NUM_ATAN2               0x00000010L
+#define SQL_FN_NUM_CEILING             0x00000020L
+#define SQL_FN_NUM_COS                 0x00000040L
+#define SQL_FN_NUM_COT                 0x00000080L
+#define SQL_FN_NUM_EXP                 0x00000100L
+#define SQL_FN_NUM_FLOOR               0x00000200L
+#define SQL_FN_NUM_LOG                 0x00000400L
+#define SQL_FN_NUM_MOD                 0x00000800L
+#define SQL_FN_NUM_SIGN                    0x00001000L
+#define SQL_FN_NUM_SIN                 0x00002000L
+#define SQL_FN_NUM_SQRT                    0x00004000L
+#define SQL_FN_NUM_TAN                 0x00008000L
+#define SQL_FN_NUM_PI                  0x00010000L
+#define SQL_FN_NUM_RAND                    0x00020000L
 
 /* Added in ODBC 2.0 */
-#define SQL_FN_NUM_DEGREES     0x00040000L
-#define SQL_FN_NUM_LOG10       0x00080000L
-#define SQL_FN_NUM_POWER       0x00100000L
-#define SQL_FN_NUM_RADIANS     0x00200000L
-#define SQL_FN_NUM_ROUND       0x00400000L
-#define SQL_FN_NUM_TRUNCATE        0x00800000L
+#define SQL_FN_NUM_DEGREES             0x00040000L
+#define SQL_FN_NUM_LOG10               0x00080000L
+#define SQL_FN_NUM_POWER               0x00100000L
+#define SQL_FN_NUM_RADIANS             0x00200000L
+#define SQL_FN_NUM_ROUND               0x00400000L
+#define SQL_FN_NUM_TRUNCATE                0x00800000L
 
 /*
  * Outer Join Capabilites. A SQLUINTEGER bitmask enumerating the types of
  * outer joins supported by the driver and data source.
  */
-#define SQL_OJ_LEFT            0x00000001L
-#define SQL_OJ_RIGHT           0x00000002L
-#define SQL_OJ_FULL            0x00000004L
-#define SQL_OJ_NESTED          0x00000008L
-#define SQL_OJ_NOT_ORDERED     0x00000010L
-#define SQL_OJ_INNER           0x00000020L
-#define SQL_OJ_ALL_COMPARISON_OPS  0x00000040L
+#define SQL_OJ_LEFT                        0x00000001L
+#define SQL_OJ_RIGHT                   0x00000002L
+#define SQL_OJ_FULL                        0x00000004L
+#define SQL_OJ_NESTED                  0x00000008L
+#define SQL_OJ_NOT_ORDERED             0x00000010L
+#define SQL_OJ_INNER                   0x00000020L
+#define SQL_OJ_ALL_COMPARISON_OPS      0x00000040L
 
 /*
  * ODBC API Conformance. A SQLSMALLINT value indicating a drivers ODBC
  * level conformance. Depreciated in 3.0.
  */
-#define SQL_OAC_NONE       0x0000
-#define SQL_OAC_LEVEL1     0x0001
-#define SQL_OAC_LEVEL2     0x0002
+#define SQL_OAC_NONE                   0x0000
+#define SQL_OAC_LEVEL1                 0x0001
+#define SQL_OAC_LEVEL2                 0x0002
 
 /*
  * ODBC SAG CLI Conformance. A SQLSMALLINT value indicating a drivers
  * SAG CLI conformance.
  */
-#define SQL_OSCC_NOT_COMPLIANT 0x0000
-#define SQL_OSCC_COMPLIANT 0x0001
+#define SQL_OSCC_NOT_COMPLIANT         0x0000
+#define SQL_OSCC_COMPLIANT             0x0001
 
 /*
  * ODBC SQL Conformance. A SQLSMALLINT value indicating a drivers SQL
  * grammar support. Depreciated in 3.0.
  */
-#define SQL_OSC_MINIMUM        0x0000
-#define SQL_OSC_CORE       0x0001
-#define SQL_OSC_EXTENDED   0x0002
+#define SQL_OSC_MINIMUM                    0x0000
+#define SQL_OSC_CORE                   0x0001
+#define SQL_OSC_EXTENDED               0x0002
 
 /*
  * Owner Usage. A SQLUINTEGER bitmask.
  */
-#define SQL_OU_DML_STATEMENTS      0x00000001L
-#define SQL_OU_PROCEDURE_INVOCATION 0x00000002L
-#define SQL_OU_TABLE_DEFINITION        0x00000004L
-#define SQL_OU_INDEX_DEFINITION        0x00000008L
-#define SQL_OU_PRIVILEGE_DEFINITION 0x00000010L
+#define SQL_OU_DML_STATEMENTS          0x00000001L
+#define SQL_OU_PROCEDURE_INVOCATION        0x00000002L
+#define SQL_OU_TABLE_DEFINITION            0x00000004L
+#define SQL_OU_INDEX_DEFINITION            0x00000008L
+#define SQL_OU_PRIVILEGE_DEFINITION        0x00000010L
 
 /*
  * Schema Usage. A SQLUINTEGER bitmask enumerating the statements in which
  * schemas can be used. Renamed in ODBC 3.0 from SQL_OWNER_USAGE
  */
-#define SQL_SU_DML_STATEMENTS      SQL_OU_DML_STATEMENTS
-#define SQL_SU_PROCEDURE_INVOCATION SQL_OU_PROCEDURE_INVOCATION
-#define SQL_SU_TABLE_DEFINITION        SQL_OU_TABLE_DEFINITION
-#define SQL_SU_INDEX_DEFINITION        SQL_OU_INDEX_DEFINITION
-#define SQL_SU_PRIVILEGE_DEFINITION SQL_OU_PRIVILEGE_DEFINITION
+#define SQL_SU_DML_STATEMENTS          SQL_OU_DML_STATEMENTS
+#define SQL_SU_PROCEDURE_INVOCATION        SQL_OU_PROCEDURE_INVOCATION
+#define SQL_SU_TABLE_DEFINITION            SQL_OU_TABLE_DEFINITION
+#define SQL_SU_INDEX_DEFINITION            SQL_OU_INDEX_DEFINITION
+#define SQL_SU_PRIVILEGE_DEFINITION        SQL_OU_PRIVILEGE_DEFINITION
 
 /*
  * Pos. Operations. A SQLINTEGER bitmask enumerating the supported operations
  * in SQLSetPos. Depreciated in ODBC 3.0.
  */
-#define SQL_POS_POSITION   0x00000001L
-#define SQL_POS_REFRESH        0x00000002L
-#define SQL_POS_UPDATE     0x00000004L
-#define SQL_POS_DELETE     0x00000008L
-#define SQL_POS_ADD        0x00000010L
+#define SQL_POS_POSITION               0x00000001L
+#define SQL_POS_REFRESH                    0x00000002L
+#define SQL_POS_UPDATE                 0x00000004L
+#define SQL_POS_DELETE                 0x00000008L
+#define SQL_POS_ADD                        0x00000010L
 
 /*
  * SQLSetPos
  */
-#define SQL_ENTIRE_ROWSET      0
+#define SQL_ENTIRE_ROWSET              0
 
-#define SQL_POSITION   0
-#define SQL_REFRESH 1
-#define SQL_UPDATE 2
-#define SQL_DELETE 3
-#define SQL_ADD        4
+#define SQL_POSITION                   0
+#define SQL_REFRESH                        1
+#define SQL_UPDATE                     2
+#define SQL_DELETE                     3
+#define SQL_ADD                            4
 
 /*
  * SQLSetPos Lock options
 */
-#define SQL_LOCK_NO_CHANGE     0
-#define SQL_LOCK_EXCLUSIVE     1
-#define SQL_LOCK_UNLOCK            2
+#define SQL_LOCK_NO_CHANGE             0
+#define SQL_LOCK_EXCLUSIVE             1
+#define SQL_LOCK_UNLOCK                    2
 
 #define SQL_POSITION_TO(hstmt,irow)        \
    SQLSetPos(hstmt,irow,SQL_POSITION,SQL_LOCK_NO_CHANGE)
@@ -971,55 +973,55 @@ typedef struct tagSQL_INTERVAL_STRUCT
  * Positioned Statements. A SQLINTEGER bitmask enumerating the supported
  * positioned SQL statements.
  */
-#define SQL_PS_POSITIONED_DELETE   0x00000001L
-#define SQL_PS_POSITIONED_UPDATE   0x00000002L
-#define SQL_PS_SELECT_FOR_UPDATE   0x00000004L
+#define SQL_PS_POSITIONED_DELETE       0x00000001L
+#define SQL_PS_POSITIONED_UPDATE       0x00000002L
+#define SQL_PS_SELECT_FOR_UPDATE       0x00000004L
 
 /* Qualifier Location. A SQLUSMALLINT value indicating the position of the
  * catalog in a qualified table name.
  */
-#define SQL_QL_START       0x0001
-#define SQL_QL_END     0x0002
+#define SQL_QL_START                   0x0001
+#define SQL_QL_END                     0x0002
 
 /*
  * Qualifier Usage. A SQLUINTEGER bitmask.
  */
-#define SQL_QU_DML_STATEMENTS      0x00000001L
-#define SQL_QU_PROCEDURE_INVOCATION 0x00000002L
-#define SQL_QU_TABLE_DEFINITION        0x00000004L
-#define SQL_QU_INDEX_DEFINITION        0x00000008L
-#define SQL_QU_PRIVILEGE_DEFINITION 0x00000010L
+#define SQL_QU_DML_STATEMENTS          0x00000001L
+#define SQL_QU_PROCEDURE_INVOCATION        0x00000002L
+#define SQL_QU_TABLE_DEFINITION            0x00000004L
+#define SQL_QU_INDEX_DEFINITION            0x00000008L
+#define SQL_QU_PRIVILEGE_DEFINITION        0x00000010L
 
 /* The above is renamed in ODBC 3.0 to Catalog Usage. */
-#define SQL_CU_DML_STATEMENTS      SQL_QU_DML_STATEMENTS
-#define SQL_CU_PROCEDURE_INVOCATION SQL_QU_PROCEDURE_INVOCATION
-#define SQL_CU_TABLE_DEFINITION        SQL_QU_TABLE_DEFINITION
-#define SQL_CU_INDEX_DEFINITION        SQL_QU_INDEX_DEFINITION
-#define SQL_CU_PRIVILEGE_DEFINITION SQL_QU_PRIVILEGE_DEFINITION
+#define SQL_CU_DML_STATEMENTS          SQL_QU_DML_STATEMENTS
+#define SQL_CU_PROCEDURE_INVOCATION        SQL_QU_PROCEDURE_INVOCATION
+#define SQL_CU_TABLE_DEFINITION            SQL_QU_TABLE_DEFINITION
+#define SQL_CU_INDEX_DEFINITION            SQL_QU_INDEX_DEFINITION
+#define SQL_CU_PRIVILEGE_DEFINITION        SQL_QU_PRIVILEGE_DEFINITION
 
 /* ODBC 3.0 renamed the above to Catalog Location. */
-#define SQL_CL_START       SQL_QL_START
-#define SQL_CL_END     SQL_QL_END
+#define SQL_CL_START                   SQL_QL_START
+#define SQL_CL_END                     SQL_QL_END
 
 /*
  * Scroll Concurrency. A SQLINTEGER bitmask enumerating the concurrency
  * control options supported for the cursor. Depreciated in ODBC 3.0.
  */
-#define SQL_SCCO_READ_ONLY     0x00000001L
-#define SQL_SCCO_LOCK          0x00000002L
-#define SQL_SCCO_OPT_ROWVER        0x00000004L
-#define SQL_SCCO_OPT_VALUES        0x00000008L
+#define SQL_SCCO_READ_ONLY             0x00000001L
+#define SQL_SCCO_LOCK                  0x00000002L
+#define SQL_SCCO_OPT_ROWVER                0x00000004L
+#define SQL_SCCO_OPT_VALUES                0x00000008L
 
 
 /*
  * Scroll Options. A SQLUINTEGER bitmask enumerating the scroll options
  * supported for scrollable cursors.
  */
-#define SQL_SO_FORWARD_ONLY        0x00000001L
-#define SQL_SO_KEYSET_DRIVEN       0x00000002L
-#define SQL_SO_DYNAMIC         0x00000004L
-#define SQL_SO_MIXED           0x00000008L
-#define SQL_SO_STATIC          0x00000010L
+#define SQL_SO_FORWARD_ONLY                0x00000001L
+#define SQL_SO_KEYSET_DRIVEN           0x00000002L
+#define SQL_SO_DYNAMIC                 0x00000004L
+#define SQL_SO_MIXED                   0x00000008L
+#define SQL_SO_STATIC                  0x00000010L
 
 /*
  * Static Sensitity. A SQLINTEGER bitmask enumerating whether changes made
@@ -1027,173 +1029,173 @@ typedef struct tagSQL_INTERVAL_STRUCT
  * or positioned update or delete statements can be detected by that
  * application.
  */
-#define SQL_SS_ADDITIONS       0x00000001L
-#define SQL_SS_DELETIONS       0x00000002L
-#define SQL_SS_UPDATES         0x00000004L
+#define SQL_SS_ADDITIONS               0x00000001L
+#define SQL_SS_DELETIONS               0x00000002L
+#define SQL_SS_UPDATES                 0x00000004L
 
 /*
  * String Functions. A SQLUINTEGER bitmask enumerating the scalar string
  * functions supported by the driver and associated data source.
  */
-#define SQL_FN_STR_CONCAT      0x00000001L
-#define SQL_FN_STR_INSERT      0x00000002L
-#define SQL_FN_STR_LEFT            0x00000004L
-#define SQL_FN_STR_LTRIM       0x00000008L
-#define SQL_FN_STR_LENGTH      0x00000010L
-#define SQL_FN_STR_LOCATE      0x00000020L
-#define SQL_FN_STR_LCASE       0x00000040L
-#define SQL_FN_STR_REPEAT      0x00000080L
-#define SQL_FN_STR_REPLACE     0x00000100L
-#define SQL_FN_STR_RIGHT       0x00000200L
-#define SQL_FN_STR_RTRIM       0x00000400L
-#define SQL_FN_STR_SUBSTRING       0x00000800L
-#define SQL_FN_STR_UCASE       0x00001000L
-#define SQL_FN_STR_ASCII       0x00002000L
-#define SQL_FN_STR_CHAR            0x00004000L
-#define SQL_FN_STR_DIFFERENCE      0x00008000L
-#define SQL_FN_STR_LOCATE_2        0x00010000L
-#define SQL_FN_STR_SOUNDEX     0x00020000L
-#define SQL_FN_STR_SPACE       0x00040000L
+#define SQL_FN_STR_CONCAT              0x00000001L
+#define SQL_FN_STR_INSERT              0x00000002L
+#define SQL_FN_STR_LEFT                    0x00000004L
+#define SQL_FN_STR_LTRIM               0x00000008L
+#define SQL_FN_STR_LENGTH              0x00000010L
+#define SQL_FN_STR_LOCATE              0x00000020L
+#define SQL_FN_STR_LCASE               0x00000040L
+#define SQL_FN_STR_REPEAT              0x00000080L
+#define SQL_FN_STR_REPLACE             0x00000100L
+#define SQL_FN_STR_RIGHT               0x00000200L
+#define SQL_FN_STR_RTRIM               0x00000400L
+#define SQL_FN_STR_SUBSTRING           0x00000800L
+#define SQL_FN_STR_UCASE               0x00001000L
+#define SQL_FN_STR_ASCII               0x00002000L
+#define SQL_FN_STR_CHAR                    0x00004000L
+#define SQL_FN_STR_DIFFERENCE          0x00008000L
+#define SQL_FN_STR_LOCATE_2                0x00010000L
+#define SQL_FN_STR_SOUNDEX             0x00020000L
+#define SQL_FN_STR_SPACE               0x00040000L
 
 /* introduced in ODBC 3.0 */
-#define SQL_FN_STR_BIT_LENGTH      0x00080000L
-#define SQL_FN_STR_CHAR_LENGTH     0x00100000L
-#define SQL_FN_STR_CHARACTER_LENGTH 0x00200000L
-#define SQL_FN_STR_OCTET_LENGTH        0x00400000L
-#define SQL_FN_STR_POSITION        0x00800000L
+#define SQL_FN_STR_BIT_LENGTH          0x00080000L
+#define SQL_FN_STR_CHAR_LENGTH         0x00100000L
+#define SQL_FN_STR_CHARACTER_LENGTH        0x00200000L
+#define SQL_FN_STR_OCTET_LENGTH            0x00400000L
+#define SQL_FN_STR_POSITION                0x00800000L
 
 /*
  * Subqueries. A SQLUINTEGER bitmask enumerating the predicates that support
  * subqueries.
  */
-#define SQL_SQ_COMPARISON      0x00000001L
-#define SQL_SQ_EXISTS          0x00000002L
-#define SQL_SQ_IN          0x00000004L
-#define SQL_SQ_QUANTIFIED      0x00000008L
+#define SQL_SQ_COMPARISON              0x00000001L
+#define SQL_SQ_EXISTS                  0x00000002L
+#define SQL_SQ_IN                      0x00000004L
+#define SQL_SQ_QUANTIFIED              0x00000008L
 #define SQL_SQ_CORRELATED_SUBQUERIES   0x00000010L
 
 /*
  * System Functions. A SQLUINTEGER bitmask enumerating the scalar system
  * functions supported by the driver and associated data source.
  */
-#define SQL_FN_SYS_USERNAME        0x00000001L
-#define SQL_FN_SYS_DBNAME      0x00000002L
-#define SQL_FN_SYS_IFNULL      0x00000004L
+#define SQL_FN_SYS_USERNAME                0x00000001L
+#define SQL_FN_SYS_DBNAME              0x00000002L
+#define SQL_FN_SYS_IFNULL              0x00000004L
 
 /*
  * Time-Date add and diff intervals. A SQLUINTEGER bitmask enumerating the
  * timestamp intervals supported by the driver and associated data source
  * for the TIMESTAMPADD and TIMESTAMPDIFF scalar function.
  */
-#define SQL_FN_TSI_FRAC_SECOND     0x00000001L
-#define SQL_FN_TSI_SECOND      0x00000002L
-#define SQL_FN_TSI_MINUTE      0x00000004L
-#define SQL_FN_TSI_HOUR            0x00000008L
-#define SQL_FN_TSI_DAY         0x00000010L
-#define SQL_FN_TSI_WEEK            0x00000020L
-#define SQL_FN_TSI_MONTH       0x00000040L
-#define SQL_FN_TSI_QUARTER     0x00000080L
-#define SQL_FN_TSI_YEAR            0x00000100L
+#define SQL_FN_TSI_FRAC_SECOND         0x00000001L
+#define SQL_FN_TSI_SECOND              0x00000002L
+#define SQL_FN_TSI_MINUTE              0x00000004L
+#define SQL_FN_TSI_HOUR                    0x00000008L
+#define SQL_FN_TSI_DAY                 0x00000010L
+#define SQL_FN_TSI_WEEK                    0x00000020L
+#define SQL_FN_TSI_MONTH               0x00000040L
+#define SQL_FN_TSI_QUARTER             0x00000080L
+#define SQL_FN_TSI_YEAR                    0x00000100L
 
 /*
  * Time/Date functions. A SQLUINTEGER bitmask enumerating the scalar date
  * and time functions supported by the driver and associated data source.
  */
-#define SQL_FN_TD_NOW          0x00000001L
-#define SQL_FN_TD_CURDATE      0x00000002L
-#define SQL_FN_TD_DAYOFMONTH       0x00000004L
-#define SQL_FN_TD_DAYOFWEEK        0x00000008L
-#define SQL_FN_TD_DAYOFYEAR        0x00000010L
-#define SQL_FN_TD_MONTH            0x00000020L
-#define SQL_FN_TD_QUARTER      0x00000040L
-#define SQL_FN_TD_WEEK         0x00000080L
-#define SQL_FN_TD_YEAR         0x00000100L
-#define SQL_FN_TD_CURTIME      0x00000200L
-#define SQL_FN_TD_HOUR         0x00000400L
-#define SQL_FN_TD_MINUTE       0x00000800L
-#define SQL_FN_TD_SECOND       0x00001000L
-#define SQL_FN_TD_TIMESTAMPADD     0x00002000L
-#define SQL_FN_TD_TIMESTAMPDIFF        0x00004000L
-#define SQL_FN_TD_DAYNAME      0x00008000L
-#define SQL_FN_TD_MONTHNAME        0x00010000L
+#define SQL_FN_TD_NOW                  0x00000001L
+#define SQL_FN_TD_CURDATE              0x00000002L
+#define SQL_FN_TD_DAYOFMONTH           0x00000004L
+#define SQL_FN_TD_DAYOFWEEK                0x00000008L
+#define SQL_FN_TD_DAYOFYEAR                0x00000010L
+#define SQL_FN_TD_MONTH                    0x00000020L
+#define SQL_FN_TD_QUARTER              0x00000040L
+#define SQL_FN_TD_WEEK                 0x00000080L
+#define SQL_FN_TD_YEAR                 0x00000100L
+#define SQL_FN_TD_CURTIME              0x00000200L
+#define SQL_FN_TD_HOUR                 0x00000400L
+#define SQL_FN_TD_MINUTE               0x00000800L
+#define SQL_FN_TD_SECOND               0x00001000L
+#define SQL_FN_TD_TIMESTAMPADD         0x00002000L
+#define SQL_FN_TD_TIMESTAMPDIFF            0x00004000L
+#define SQL_FN_TD_DAYNAME              0x00008000L
+#define SQL_FN_TD_MONTHNAME                0x00010000L
 
 /* Added in ODBC 3.0 */
-#define SQL_FN_TD_CURRENT_DATE     0x00020000L
-#define SQL_FN_TD_CURRENT_TIME     0x00040000L
-#define SQL_FN_TD_CURRENT_TIMESTAMP 0x00080000L
-#define SQL_FN_TD_EXTRACT      0x00100000L
+#define SQL_FN_TD_CURRENT_DATE         0x00020000L
+#define SQL_FN_TD_CURRENT_TIME         0x00040000L
+#define SQL_FN_TD_CURRENT_TIMESTAMP        0x00080000L
+#define SQL_FN_TD_EXTRACT              0x00100000L
 
 /*
  * Transaction Capable. A SQLUSMALLINT value describing the transaction
  * support in the driver or data source.
  */
-#define SQL_TC_NONE        0x0000
-#define SQL_TC_DML     0x0001
-#define SQL_TC_ALL     0x0002
-#define SQL_TC_DDL_COMMIT  0x0003
-#define SQL_TC_DDL_IGNORE  0x0004
+#define SQL_TC_NONE                        0x0000
+#define SQL_TC_DML                     0x0001
+#define SQL_TC_ALL                     0x0002
+#define SQL_TC_DDL_COMMIT              0x0003
+#define SQL_TC_DDL_IGNORE              0x0004
 
 /*
  * Unions. A SQLUINTEGER bitmask enumerating the support for the UNION
  * clause.
  */
-#define SQL_U_UNION        0x00000001L
-#define SQL_U_UNION_ALL        0x00000002L
+#define SQL_U_UNION                        0x00000001L
+#define SQL_U_UNION_ALL                    0x00000002L
 
 
 /* SQLStatistics: Type, Smallint */
-#define SQL_TABLE_STAT     0
-#define SQL_INDEX_CLUSTERED 1
-#define SQL_INDEX_HASHED   2
-#define SQL_INDEX_OTHER        3
+#define SQL_TABLE_STAT                 0
+#define SQL_INDEX_CLUSTERED                1
+#define SQL_INDEX_HASHED               2
+#define SQL_INDEX_OTHER                    3
 
 /* SQLProcedures: Type: Smallint */
-#define SQL_PT_UNKNOWN     0
-#define SQL_PT_PROCEDURE   1
-#define SQL_PT_FUNCTION        2
+#define SQL_PT_UNKNOWN                 0
+#define SQL_PT_PROCEDURE               1
+#define SQL_PT_FUNCTION                    2
 
 /* SQLSpecialColumns: PSEUDO_COLUMN: Smallint */
-#define SQL_PC_UNKNOWN     0
-#define SQL_PC_PSEUDO      1
-#define SQL_PC_NOT_PSEUDO  2
+#define SQL_PC_UNKNOWN                 0
+#define SQL_PC_PSEUDO                  1
+#define SQL_PC_NOT_PSEUDO              2
 
 /* SQLSet/Get/StmtOptions: ASYNC_ENABLE. A SQLUINTEGER */
-#define SQL_ASYNC_ENABLE_OFF       0UL
-#define SQL_ASYNC_ENABLE_ON        1UL
-#define SQL_ASYNC_ENABLE_DEFAULT   SQL_ASYNC_ENABLE_OFF
+#define SQL_ASYNC_ENABLE_OFF           0UL
+#define SQL_ASYNC_ENABLE_ON                1UL
+#define SQL_ASYNC_ENABLE_DEFAULT       SQL_ASYNC_ENABLE_OFF
 
 /*
  * SQLSet/GetStmtOptions: CONCURRENCY. A SQLUINTEGER. Note most of these
  * are above in the original isqlext.h code.
  */
-#define SQL_CONCUR_DEFAULT SQL_CONCUR_READ_ONLY
+#define SQL_CONCUR_DEFAULT             SQL_CONCUR_READ_ONLY
 
 /*
  * SQLSet/GetStmtOptions: CURSOR_SCROLLABLE. A SQLUINTEGER. Added in ODBC
  * 3.0.
  */
-#define SQL_NONSCROLLABLE  0UL
-#define SQL_SCROLLABLE     1UL
+#define SQL_NONSCROLLABLE              0UL
+#define SQL_SCROLLABLE                 1UL
 #define SQL_CURSOR_SCROLLABLE_DEFAULT  SQL_NONSCROLLABLE
 
 /*
  * SQLSet/GetStmtOptions: CURSOR_SENSITITY. A SQLUINTEGER. Added in ODBC
  * 3.0.
  */
-#define SQL_UNSPECIFIED        0UL
-#define SQL_INSENSITIVE        1UL
-#define SQL_SENSITIVIE     2UL
+#define SQL_UNSPECIFIED                    0UL
+#define SQL_INSENSITIVE                    1UL
+#define SQL_SENSITIVIE                 2UL
 #define SQL_CURSOR_SENSITIVITY_DEFAULT SQL_UNSPECIFIED
 
 /*
  * SQLSet/GetStmtOptions: CURSOR_TYPE: A SQLUINTEGER value that specifies the
  * cursor type
  */
-#define SQL_CURSOR_FORWARD_ONLY        0UL
-#define SQL_CURSOR_KEYSET_DRIVEN   1UL
-#define SQL_CURSOR_DYNAMIC     2UL
-#define SQL_CURSOR_STATIC      3UL
-#define SQL_CURSOR_DEFAULT SQL_CURSOR_FORWARD_ONLY
+#define SQL_CURSOR_FORWARD_ONLY            0UL
+#define SQL_CURSOR_KEYSET_DRIVEN       1UL
+#define SQL_CURSOR_DYNAMIC             2UL
+#define SQL_CURSOR_STATIC              3UL
+#define SQL_CURSOR_DEFAULT             SQL_CURSOR_FORWARD_ONLY
 
 /*
  * ENABLE_AUTO_IPD: A SQLUINTEGER, either SQL_TRUE or SQL_FALSE. Default
@@ -1210,87 +1212,88 @@ typedef struct tagSQL_INTERVAL_STRUCT
  * SQLSet/GetStmtOptions: NOSCAN. A SQLUINTEGER value that indicates whether
  * the driver should scan SQL strings for escape sequences.
  */
-#define SQL_NOSCAN_OFF     0UL
-#define SQL_NOSCAN_ON      1UL
-#define SQL_NOSCAN_DEFAULT SQL_NOSCAN_OFF
+#define SQL_NOSCAN_OFF                 0UL
+#define SQL_NOSCAN_ON                  1UL
+#define SQL_NOSCAN_DEFAULT             SQL_NOSCAN_OFF
 
 /*
  * SQLSet/GetStmtOptions: PARAM_OPERATION: SQLUSMALLINT *. Added in ODBC 3.0
  *
  */
-#define SQL_PARAM_PROCEED  0
-#define SQL_PARAM_IGNORE   1
+#define SQL_PARAM_PROCEED              0
+#define SQL_PARAM_IGNORE               1
 
 /*
  * SQLSet/GetStmtOptions: PARAM_STATUS: SQLUSMALLINT *. Added in ODBC 3.0
  *
 */
-#define SQL_PARAM_SUCCESS      0
-#define SQL_PARAM_SUCCESS_WITH_INFO 6
-#define SQL_PARAM_ERROR            5
-#define SQL_PARAM_UNUSED       7
-#define SQL_PARAM_DIAG_UNAVAILABLE 1
+#define SQL_PARAM_SUCCESS              0
+#define SQL_PARAM_SUCCESS_WITH_INFO        6
+#define SQL_PARAM_ERROR                    5
+#define SQL_PARAM_UNUSED               7
+#define SQL_PARAM_DIAG_UNAVAILABLE     1
 
 /*
  * SQLSet/GetStmtOptions: RETRIEVE_DATA: SQLUINTEGER value.
  */
-#define SQL_RD_OFF 0UL
-#define SQL_RD_ON  1UL
-#define SQL_RD_DEFAULT SQL_RD_ON
+#define SQL_RD_OFF                     0UL
+#define SQL_RD_ON                      1UL
+#define SQL_RD_DEFAULT                 SQL_RD_ON
 
 /*
  * SQLSet/GetStmtOptions: BIND_TYPE: SQLUINTEGER. sets binding orientation.
  */
-#define SQL_BIND_BY_COLUMN 0UL
-#define SQL_BIND_TYPE_DEFAULT  SQL_BIND_BY_COLUMN
+#define SQL_BIND_BY_COLUMN             0UL
+#define SQL_BIND_TYPE_DEFAULT          SQL_BIND_BY_COLUMN
 
 /*
  * SQLSet/GetStmtOptions: ROW_OPERATION: SQLUSMALLINT *. Added in ODBC 3.0
  */
-#define SQL_ROW_PROCEED        0
-#define SQL_ROW_IGNORE     1
+#define SQL_ROW_PROCEED                    0
+#define SQL_ROW_IGNORE                 1
 
 /*
  * SQL_ROWSET_SIZE
  */
-#define SQL_ROWSET_SIZE_DEFAULT        1UL
+#define SQL_ROWSET_SIZE_DEFAULT            1UL
 
 /*
  * SQL_KEYSET_SIZE
  */
-#define SQL_KEYSET_SIZE_DEFAULT        0UL
+#define SQL_KEYSET_SIZE_DEFAULT            0UL
 
 /*
  * SQLSet/GetStmtOptions: SIMULATE_CURSOR: SQLUINTEGER value that specifies
  * whether drivers that simulate positioned update and delete statements
  * guarantee that such statements affect only a single row.
  */
-#define SQL_SC_NON_UNIQUE  0UL
-#define SQL_SC_TRY_UNIQUE  1UL
-#define SQL_SC_UNIQUE      2UL
+#define SQL_SC_NON_UNIQUE              0UL
+#define SQL_SC_TRY_UNIQUE              1UL
+#define SQL_SC_UNIQUE                  2UL
 
 /*
  * SQLSet/GetStmtOptions: USE_BOOKMARKS: SQLUINTEGER value that specifies
  * whether an application will use bookmarks with a cursor.
  */
-#define SQL_UB_OFF     0UL
-#define SQL_UB_ON      1UL
-#define SQL_UB_FIXED       SQL_UB_ON   /* Deprecated in ODBC 3.0 */
-#define SQL_UB_VARIABLE        2UL /* Added in ODBC 3.0 */
-#define SQL_UB_DEFAULT     SQL_UB_OFF
+#define SQL_UB_OFF                     0UL
+#define SQL_UB_ON                      1UL
+#define SQL_UB_FIXED                   SQL_UB_ON       /* Deprecated in ODBC
+                                                        * 3.0 */
+#define SQL_UB_VARIABLE                    2UL     /* Added in ODBC 3.0 */
+#define SQL_UB_DEFAULT                 SQL_UB_OFF
 
 /* Deprecated */
-#define SQL_DATABASE_NAME      16
-#define SQL_FD_FETCH_PREV      SQL_FD_FETCH_PRIOR
-#define SQL_FETCH_PREV         SQL_FETCH_PRIOR
-#define SQL_CONCUR_TIMESTAMP       SQL_CONCUR_ROWVER
-#define SQL_SCCO_OPT_TIMESTAMP     SQL_SCCO_OPT_ROWVER
-#define SQL_CC_DELETE          SQL_CB_DELETE
-#define SQL_CR_DELETE          SQL_CB_DELETE
-#define SQL_CC_CLOSE           SQL_CB_CLOSE
-#define SQL_CR_CLOSE           SQL_CB_CLOSE
-#define SQL_CC_PRESERVE            SQL_CB_PRESERVE
-#define SQL_CR_PRESERVE            SQL_CB_PRESERVE
+#define SQL_DATABASE_NAME              16
+#define SQL_FD_FETCH_PREV              SQL_FD_FETCH_PRIOR
+#define SQL_FETCH_PREV                 SQL_FETCH_PRIOR
+#define SQL_CONCUR_TIMESTAMP           SQL_CONCUR_ROWVER
+#define SQL_SCCO_OPT_TIMESTAMP         SQL_SCCO_OPT_ROWVER
+#define SQL_CC_DELETE                  SQL_CB_DELETE
+#define SQL_CR_DELETE                  SQL_CB_DELETE
+#define SQL_CC_CLOSE                   SQL_CB_CLOSE
+#define SQL_CR_CLOSE                   SQL_CB_CLOSE
+#define SQL_CC_PRESERVE                    SQL_CB_PRESERVE
+#define SQL_CR_PRESERVE                    SQL_CB_PRESERVE
 #define SQL_FETCH_RESUME               7
 #define SQL_SCROLL_FORWARD_ONLY            0L
 #define SQL_SCROLL_KEYSET_DRIVEN       (-1L)
index f3cab52574dbc2bcabd49080020cc17f7ace95c2..1f3eb2e4d3ec9cb7f49189251d442fae5d217157 100644 (file)
@@ -1,4 +1,3 @@
-
 /* Module:         lobj.c
  *
  * Description:        This module contains routines related to manipulating
index fa28542b0ad68ba9e6eecaccc0e4ff5fbc9cf94c..4d720488a018339c5432c131710d05e8302e5cc9 100644 (file)
@@ -1,4 +1,3 @@
-
 /* File:           lobj.h
  *
  * Description:        See "lobj.c"
@@ -24,17 +23,17 @@ struct lo_arg
    }           u;
 };
 
-#define LO_CREAT       957
-#define LO_OPEN            952
-#define LO_CLOSE       953
-#define LO_READ            954
-#define LO_WRITE       955
-#define LO_LSEEK       956
-#define LO_TELL            958
-#define LO_UNLINK      964
-
-#define INV_WRITE      0x00020000
-#define INV_READ       0x00040000
+#define LO_CREAT                   957
+#define LO_OPEN                        952
+#define LO_CLOSE                   953
+#define LO_READ                        954
+#define LO_WRITE                   955
+#define LO_LSEEK                   956
+#define LO_TELL                        958
+#define LO_UNLINK                  964
+
+#define INV_WRITE                  0x00020000
+#define INV_READ                   0x00040000
 
 Oid            lo_creat(ConnectionClass *conn, int mode);
 int            lo_open(ConnectionClass *conn, int lobjId, int mode);
index 18d7c8c6c4c24e8fd2971c06d48b326ec4ecff22..3dd6c93e0b430786000284a96a5ce4d2a3278c69 100644 (file)
@@ -1,4 +1,3 @@
-
 /* Module:         misc.c
  *
  * Description:        This module contains miscellaneous routines
index e5e916465eda201503ca769806cf71e4aed71dff..5172e491f5df91133ba7f5301cf8dd3ecd21e15a 100644 (file)
@@ -1,4 +1,3 @@
-
 /* File:           misc.h
  *
  * Description:        See "misc.c"
 
 
 #ifdef MY_LOG
-#define MYLOGFILE "mylog_"
+#define MYLOGFILE          "mylog_"
 #ifndef WIN32
-#define MYLOGDIR   "/tmp"
+#define MYLOGDIR           "/tmp"
 #else
-#define MYLOGDIR   "c:"
+#define MYLOGDIR           "c:"
 #endif
 extern void mylog(char *fmt,...);
 
@@ -56,11 +55,11 @@ extern void mylog(char *fmt,...);
 #endif
 
 #ifdef Q_LOG
-#define QLOGFILE  "psqlodbc_"
+#define QLOGFILE           "psqlodbc_"
 #ifndef WIN32
-#define QLOGDIR        "/tmp"
+#define QLOGDIR                "/tmp"
 #else
-#define QLOGDIR        "c:"
+#define QLOGDIR                "c:"
 #endif
 extern void qlog(char *fmt,...);
 
@@ -73,19 +72,19 @@ extern void qlog(char *fmt,...);
 #endif
 
 #ifndef WIN32
-#define DIRSEPARATOR   "/"
+#define DIRSEPARATOR       "/"
 #else
-#define DIRSEPARATOR   "\\"
+#define DIRSEPARATOR       "\\"
 #endif
 
 #ifdef WIN32
-#define PG_BINARY  O_BINARY
-#define PG_BINARY_R "rb"
-#define PG_BINARY_W "wb"
+#define PG_BINARY          O_BINARY
+#define PG_BINARY_R            "rb"
+#define PG_BINARY_W            "wb"
 #else
-#define PG_BINARY  0
-#define PG_BINARY_R "r"
-#define PG_BINARY_W "w"
+#define PG_BINARY          0
+#define PG_BINARY_R            "r"
+#define PG_BINARY_W            "w"
 #endif
 
 
@@ -98,8 +97,8 @@ char     *my_strcat(char *buf, char *fmt, char *s, int len);
 /* defines for return value of my_strcpy */
 #define STRCPY_SUCCESS     1
 #define STRCPY_FAIL            0
-#define STRCPY_TRUNCATED   -1
-#define STRCPY_NULL            -2
+#define STRCPY_TRUNCATED   (-1)
+#define STRCPY_NULL            (-2)
 
 int            my_strcpy(char *dst, int dst_len, char *src, int src_len);
 
index efbcee0b50738b3852fc9b250cbea2bcc35f4551..06fab349cf15fa1afd1c58c93336cba10fef4d4f 100644 (file)
@@ -6,6 +6,7 @@
  *                 Create 2001-03-03 Eiji Tokuya
  *
  */
+
 #include 
 #include "multibyte.h"
 
index 0a865ac0b15c1bbacde9c89ef36b285268860369..2c3f04cc7ac58688442b82c4b634f6c48d983458 100644 (file)
@@ -2,32 +2,31 @@
  *
  * Multibyte library header ( psqlODBC Only )
  *
- *
  */
 
 /* PostgreSQL client encoding */
-#define SQL_ASCII      0       /* SQL/ASCII */
-#define EUC_JP         1       /* EUC for Japanese */
-#define EUC_CN         2       /* EUC for Chinese */
-#define EUC_KR         3       /* EUC for Korean */
-#define EUC_TW         4       /* EUC for Taiwan */
-#define UNICODE            5       /* Unicode UTF-8 */
-#define MULE_INTERNAL  6       /* Mule internal code */
-#define LATIN1         7       /* ISO-8859 Latin 1 */
-#define LATIN2         8       /* ISO-8859 Latin 2 */
-#define LATIN3         9       /* ISO-8859 Latin 3 */
-#define LATIN4         10      /* ISO-8859 Latin 4 */
-#define LATIN5         11      /* ISO-8859 Latin 5 */
-#define LATIN6         12      /* ISO-8859 Latin 6 */
-#define LATIN7         13      /* ISO-8859 Latin 7 */
-#define LATIN8         14      /* ISO-8859 Latin 8 */
-#define LATIN9         15      /* ISO-8859 Latin 9 */
-#define KOI8           16      /* KOI8-R */
-#define WIN                17      /* windows-1251 */
-#define ALT                18      /* Alternativny Variant (MS-DOS CP866) */
-#define SJIS           32      /* Shift JIS */
-#define BIG5           33      /* Big5 */
-#define WIN1250            34      /* windows-1250 */
+#define SQL_ASCII          0   /* SQL/ASCII */
+#define EUC_JP             1   /* EUC for Japanese */
+#define EUC_CN             2   /* EUC for Chinese */
+#define EUC_KR             3   /* EUC for Korean */
+#define EUC_TW             4   /* EUC for Taiwan */
+#define UNICODE                5   /* Unicode UTF-8 */
+#define MULE_INTERNAL      6   /* Mule internal code */
+#define LATIN1             7   /* ISO-8859 Latin 1 */
+#define LATIN2             8   /* ISO-8859 Latin 2 */
+#define LATIN3             9   /* ISO-8859 Latin 3 */
+#define LATIN4             10  /* ISO-8859 Latin 4 */
+#define LATIN5             11  /* ISO-8859 Latin 5 */
+#define LATIN6             12  /* ISO-8859 Latin 6 */
+#define LATIN7             13  /* ISO-8859 Latin 7 */
+#define LATIN8             14  /* ISO-8859 Latin 8 */
+#define LATIN9             15  /* ISO-8859 Latin 9 */
+#define KOI8               16  /* KOI8-R */
+#define WIN                    17  /* windows-1251 */
+#define ALT                    18  /* Alternativny Variant (MS-DOS CP866) */
+#define SJIS               32  /* Shift JIS */
+#define BIG5               33  /* Big5 */
+#define WIN1250                34  /* windows-1250 */
 
 
 extern int multibyte_client_encoding;  /* Multibyte client encoding. */
index 85844ede3bc3071b93cef05f90c3547796ff55d0..bb063ce8160ebd0db90c657e981721bc7224dd5a 100644 (file)
@@ -1,4 +1,3 @@
-
 /* Module:         options.c
  *
  * Description:        This module contains routines for getting/setting
index 6d018a97017b10c82a84a4268134cb7ecd77932b..075ca95947d81dd66e014b1a0c0bffeaf071e55a 100644 (file)
@@ -1,4 +1,3 @@
-
 /* Module:         parse.c
  *
  * Description:        This module contains routines related to parsing SQL statements.
index b35197c116ceb7a103fafde19e5e06982b253374..4b5b4db74e63845ced266807378cd6a4e4fd4203 100644 (file)
@@ -1,4 +1,3 @@
-
 /* Module:         pgtypes.c
  *
  * Description:        This module contains routines for getting information
index d2ba015b7b1280e8d78e53643ae8d9faac76d3bf..7130bd423c9e47c3ebc8ab579d5677f2959718c6 100644 (file)
@@ -1,4 +1,3 @@
-
 /* File:           pgtypes.h
  *
  * Description:        See "pgtypes.c"
 
 
 #if 0
-#define PG_TYPE_LO         ????/* waiting for permanent type */
+#define PG_TYPE_LO             ????    /* waiting for permanent type */
 #endif
 
-#define PG_TYPE_BOOL        16
-#define PG_TYPE_BYTEA       17
-#define PG_TYPE_CHAR        18
-#define PG_TYPE_NAME        19
-#define PG_TYPE_INT8        20
-#define PG_TYPE_INT2        21
-#define PG_TYPE_INT2VECTOR  22
-#define PG_TYPE_INT4        23
-#define PG_TYPE_REGPROC         24
-#define PG_TYPE_TEXT        25
-#define PG_TYPE_OID             26
-#define PG_TYPE_TID             27
-#define PG_TYPE_XID             28
-#define PG_TYPE_CID             29
-#define PG_TYPE_OIDVECTOR   30
-#define PG_TYPE_SET             32
-#define PG_TYPE_CHAR2      409
-#define PG_TYPE_CHAR4      410
-#define PG_TYPE_CHAR8      411
-#define PG_TYPE_POINT      600
-#define PG_TYPE_LSEG       601
-#define PG_TYPE_PATH       602
-#define PG_TYPE_BOX            603
-#define PG_TYPE_POLYGON        604
-#define PG_TYPE_FILENAME   605
-#define PG_TYPE_FLOAT4     700
-#define PG_TYPE_FLOAT8     701
-#define PG_TYPE_ABSTIME        702
-#define PG_TYPE_RELTIME        703
-#define PG_TYPE_TINTERVAL  704
-#define PG_TYPE_UNKNOWN        705
-#define PG_TYPE_MONEY      790
-#define PG_TYPE_OIDINT2        810
-#define PG_TYPE_OIDINT4        910
-#define PG_TYPE_OIDNAME        911
-#define PG_TYPE_BPCHAR    1042
-#define PG_TYPE_VARCHAR    1043
-#define PG_TYPE_DATE      1082
-#define PG_TYPE_TIME      1083
-#define PG_TYPE_DATETIME   1184
-#define PG_TYPE_TIMESTAMP  1296
-#define PG_TYPE_NUMERIC    1700
+#define PG_TYPE_BOOL           16
+#define PG_TYPE_BYTEA          17
+#define PG_TYPE_CHAR           18
+#define PG_TYPE_NAME           19
+#define PG_TYPE_INT8           20
+#define PG_TYPE_INT2           21
+#define PG_TYPE_INT2VECTOR     22
+#define PG_TYPE_INT4           23
+#define PG_TYPE_REGPROC            24
+#define PG_TYPE_TEXT           25
+#define PG_TYPE_OID                26
+#define PG_TYPE_TID                27
+#define PG_TYPE_XID                28
+#define PG_TYPE_CID                29
+#define PG_TYPE_OIDVECTOR      30
+#define PG_TYPE_SET                32
+#define PG_TYPE_CHAR2          409
+#define PG_TYPE_CHAR4          410
+#define PG_TYPE_CHAR8          411
+#define PG_TYPE_POINT          600
+#define PG_TYPE_LSEG           601
+#define PG_TYPE_PATH           602
+#define PG_TYPE_BOX                603
+#define PG_TYPE_POLYGON            604
+#define PG_TYPE_FILENAME       605
+#define PG_TYPE_FLOAT4         700
+#define PG_TYPE_FLOAT8         701
+#define PG_TYPE_ABSTIME            702
+#define PG_TYPE_RELTIME            703
+#define PG_TYPE_TINTERVAL      704
+#define PG_TYPE_UNKNOWN            705
+#define PG_TYPE_MONEY          790
+#define PG_TYPE_OIDINT2            810
+#define PG_TYPE_OIDINT4            910
+#define PG_TYPE_OIDNAME            911
+#define PG_TYPE_BPCHAR         1042
+#define PG_TYPE_VARCHAR            1043
+#define PG_TYPE_DATE           1082
+#define PG_TYPE_TIME           1083
+#define PG_TYPE_DATETIME       1184
+#define PG_TYPE_TIMESTAMP      1296
+#define PG_TYPE_NUMERIC            1700
 
 /* extern Int4 pgtypes_defined[]; */
 extern Int2 sqlTypes[];
 
 /* Defines for pgtype_precision */
-#define PG_STATIC      -1
+#define PG_STATIC              (-1)
 
 Int4       sqltype_to_pgtype(Int2 fSqlType);
 
index 455967fcc7a6dc62ed3874c58b020006f7337012..83e6f97d3578d7deb81642115ad35a09f4ab3e33 100644 (file)
@@ -1,4 +1,3 @@
-
 /* Module:         psqlodbc.c
  *
  * Description:        This module contains the main entry point (DllMain) for the library.
index 82706d7863a7531f5c1d1073f40544b02467192f..ecad03b47778703f42513d9ca63ef1169ec519be 100644 (file)
@@ -1,4 +1,3 @@
-
 /* File:           psqlodbc.h
  *
  * Description:        This file contains defines and declarations that are related to
@@ -6,7 +5,8 @@
  *
  * Comments:       See "notice.txt" for copyright and license information.
  *
- * $Id: psqlodbc.h,v 1.40 2001/03/22 04:01:35 momjian Exp $
+ * $Id: psqlodbc.h,v 1.41 2001/03/27 04:00:54 momjian Exp $
+ *
  */
 
 #ifndef __PSQLODBC_H__
@@ -36,18 +36,18 @@ typedef double SDOUBLE;
 typedef UInt4 Oid;
 
 /* Driver stuff */
-#define ODBCVER                0x0250
-#define DRIVER_ODBC_VER        "02.50"
+#define ODBCVER                        0x0250
+#define DRIVER_ODBC_VER                "02.50"
 
-#define DRIVERNAME            "PostgreSQL ODBC"
-#define DBMS_NAME             "PostgreSQL"
+#define DRIVERNAME                 "PostgreSQL ODBC"
+#define DBMS_NAME                  "PostgreSQL"
 
-#define POSTGRESDRIVERVERSION  "07.01.0004"
+#define POSTGRESDRIVERVERSION      "07.01.0004"
 
 #ifdef WIN32
-#define DRIVER_FILE_NAME       "PSQLODBC.DLL"
+#define DRIVER_FILE_NAME           "PSQLODBC.DLL"
 #else
-#define DRIVER_FILE_NAME       "libpsqlodbc.so"
+#define DRIVER_FILE_NAME           "libpsqlodbc.so"
 #endif
 
 /* Limits */
@@ -83,27 +83,28 @@ typedef UInt4 Oid;
 
 
 /* These prefixes denote system tables */
-#define POSTGRES_SYS_PREFIX "pg_"
-#define KEYS_TABLE         "dd_fkey"
+#define POSTGRES_SYS_PREFIX            "pg_"
+#define KEYS_TABLE                 "dd_fkey"
 
 /* Info limits */
-#define MAX_INFO_STRING        128
-#define MAX_KEYPARTS       20
-#define MAX_KEYLEN         512 /* max key of the form
-                                * "date+outlet+invoice" */
-#define MAX_ROW_SIZE       0   /* Unlimited rowsize with the Tuple
-                                * Toaster */
-#define MAX_STATEMENT_LEN  0   /* Unlimited statement size with 7.0 */
+#define MAX_INFO_STRING                128
+#define MAX_KEYPARTS               20
+#define MAX_KEYLEN                 512 /* max key of the form
+                                        * "date+outlet+invoice" */
+#define MAX_ROW_SIZE               0   /* Unlimited rowsize with the
+                                        * Tuple Toaster */
+#define MAX_STATEMENT_LEN          0   /* Unlimited statement size with
+                                        * 7.0 */
 
 /* Previously, numerous query strings were defined of length MAX_STATEMENT_LEN */
 /* Now that's 0, lets use this instead. DJP 24-1-2001 */
-#define STD_STATEMENT_LEN  MAX_MESSAGE_LEN
+#define STD_STATEMENT_LEN          MAX_MESSAGE_LEN
 
-#define PG62   "6.2"           /* "Protocol" key setting to force
-                                * Postgres 6.2 */
-#define PG63   "6.3"           /* "Protocol" key setting to force
-                                * postgres 6.3 */
-#define PG64   "6.4"
+#define PG62                       "6.2"       /* "Protocol" key setting
+                                                * to force Postgres 6.2 */
+#define PG63                       "6.3"       /* "Protocol" key setting
+                                                * to force postgres 6.3 */
+#define PG64                       "6.4"
 
 typedef struct ConnectionClass_ ConnectionClass;
 typedef struct StatementClass_ StatementClass;
@@ -173,17 +174,18 @@ typedef struct QueryInfo_
 } QueryInfo;
 
 
-#define PG_TYPE_LO             -999    /* hack until permanent type
-                                        * available */
-#define PG_TYPE_LO_NAME            "lo"
-#define OID_ATTNUM             -2      /* the attnum in pg_index of the
-                                        * oid */
+#define PG_TYPE_LO                 (-999)      /* hack until permanent
+                                                * type available */
+#define PG_TYPE_LO_NAME                "lo"
+#define OID_ATTNUM                 (-2)        /* the attnum in pg_index
+                                                * of the oid */
 
 /* sizes */
-#define TEXT_FIELD_SIZE            8190    /* size of text fields (not
-                                        * including null term) */
-#define NAME_FIELD_SIZE            32      /* size of name fields */
-#define MAX_VARCHAR_SIZE       254     /* maximum size of a varchar (not
+#define TEXT_FIELD_SIZE                8190        /* size of text fields
+                                                * (not including null
+                                                * term) */
+#define NAME_FIELD_SIZE                32  /* size of name fields */
+#define MAX_VARCHAR_SIZE           254 /* maximum size of a varchar (not
                                         * including null term) */
 
 #define PG_NUMERIC_MAX_PRECISION   1000
index 4f532291c11da65858fd92bc294ddf53511fd7ce..c5ec11f98051367e60c375cbe07d87c5d22f2b92 100644 (file)
@@ -1,4 +1,3 @@
-
 /* Module:         qresult.c
  *
  * Description:        This module contains functions related to
index a617c99b4d3958d556b8e8458d6488805a458d01..aca89b575e286f19556664d24d042dda60559d98 100644 (file)
@@ -1,4 +1,3 @@
-
 /* File:           qresult.h
  *
  * Description:        See "qresult.c"
@@ -72,7 +71,7 @@ struct QResultClass_
    char        aborted;        /* was aborted? */
 };
 
-#define QR_get_fields(self)                (self->fields)
+#define QR_get_fields(self)                    (self->fields)
 
 
 /* These functions are for retrieving data from the qresult */
@@ -94,20 +93,20 @@ struct QResultClass_
 #define QR_set_field_info(self, field_num, name, adtid, adtsize)  (CI_set_field_info(self->fields, field_num, name, adtid, adtsize, -1))
 
 /* status macros */
-#define QR_command_successful(self)        ( !(self->status == PGRES_BAD_RESPONSE || self->status == PGRES_NONFATAL_ERROR || self->status == PGRES_FATAL_ERROR))
-#define QR_command_nonfatal(self)      ( self->status == PGRES_NONFATAL_ERROR)
-#define QR_end_tuples(self)                ( self->status == PGRES_END_TUPLES)
-#define QR_set_status(self, condition) ( self->status = condition )
-#define QR_set_message(self, message_) ( self->message = message_)
-#define QR_set_aborted(self, aborted_) ( self->aborted = aborted_)
-
-#define QR_get_message(self)           (self->message)
-#define QR_get_command(self)           (self->command)
-#define QR_get_notice(self)                (self->notice)
-#define QR_get_status(self)                (self->status)
+#define QR_command_successful(self)            ( !(self->status == PGRES_BAD_RESPONSE || self->status == PGRES_NONFATAL_ERROR || self->status == PGRES_FATAL_ERROR))
+#define QR_command_nonfatal(self)          ( self->status == PGRES_NONFATAL_ERROR)
+#define QR_end_tuples(self)                    ( self->status == PGRES_END_TUPLES)
+#define QR_set_status(self, condition)     ( self->status = condition )
+#define QR_set_message(self, message_)     ( self->message = message_)
+#define QR_set_aborted(self, aborted_)     ( self->aborted = aborted_)
+
+#define QR_get_message(self)               (self->message)
+#define QR_get_command(self)               (self->command)
+#define QR_get_notice(self)                    (self->notice)
+#define QR_get_status(self)                    (self->status)
 #define QR_get_aborted(self)               (self->aborted)
 
-#define QR_aborted(self)       (!self || self->aborted)
+#define QR_aborted(self)                   (!self || self->aborted)
 
 /* Core Functions */
 QResultClass *QR_Constructor(void);
index e5cc92c87df24f07d200ff95075ea59637d194a8..25d3437f4bb713ec36b44fba84520e2b43eb0eb4 100644 (file)
@@ -1,4 +1,3 @@
-
 /* Module:         results.c
  *
  * Description:        This module contains functions related to
index 1679ad033a81f6bac47dbc97bc9d209060ec7198..aec1f35f6aff17f67cb18ad8eb40e67e0d90b8dc 100644 (file)
@@ -1,4 +1,3 @@
-
 /* Module:         setup.c
  *
  * Description:        This module contains the setup functions for
@@ -11,7 +10,7 @@
  *
  * Comments:       See "notice.txt" for copyright and license information.
  *
- *************************************************************************************/
+ */
 
 #include  "psqlodbc.h"
 #include  "connection.h"
index f8783197ec9c1f8b0d2748180affac64685d8d63..73f7ca78062b0fa45814bbc3eb407749e22cf7e4 100644 (file)
@@ -1,4 +1,3 @@
-
 /* Module:         socket.c
  *
  * Description:        This module contains functions for low level socket
index 48ef197ff2cd50077dde529a53248ee345b167f1..67391767384f238e32d9eb7637bf171841250c47 100644 (file)
@@ -1,4 +1,3 @@
-
 /* File:           socket.h
  *
  * Description:        See "socket.c"
@@ -41,16 +40,16 @@ typedef unsigned int in_addr_t;
 
 #include "psqlodbc.h"
 
-#define SOCKET_ALREADY_CONNECTED 1
-#define SOCKET_HOST_NOT_FOUND 2
-#define SOCKET_COULD_NOT_CREATE_SOCKET 3
-#define SOCKET_COULD_NOT_CONNECT 4
-#define SOCKET_READ_ERROR 5
-#define SOCKET_WRITE_ERROR 6
-#define SOCKET_NULLPOINTER_PARAMETER 7
-#define SOCKET_PUT_INT_WRONG_LENGTH 8
-#define SOCKET_GET_INT_WRONG_LENGTH 9
-#define SOCKET_CLOSED 10
+#define SOCKET_ALREADY_CONNECTED           1
+#define SOCKET_HOST_NOT_FOUND              2
+#define SOCKET_COULD_NOT_CREATE_SOCKET     3
+#define SOCKET_COULD_NOT_CONNECT           4
+#define SOCKET_READ_ERROR                  5
+#define SOCKET_WRITE_ERROR                 6
+#define SOCKET_NULLPOINTER_PARAMETER       7
+#define SOCKET_PUT_INT_WRONG_LENGTH            8
+#define SOCKET_GET_INT_WRONG_LENGTH            9
+#define SOCKET_CLOSED                      10
 
 
 struct SocketClass_
index aadcad2e67565dcac050cfc82e46c0e582645db5..8b7a67babd30c03b724f057a026386d91bc5142e 100644 (file)
@@ -1,4 +1,3 @@
-
 /* Module:         statement.c
  *
  * Description:        This module contains functions related to creating
index 9907c28ae915bda93d1277770f32e9c7f2f91ddb..69f8274615c36ff252bffeda13b717795bf1da1f 100644 (file)
@@ -1,4 +1,3 @@
-
 /* File:           statement.h
  *
  * Description:        See "statement.c"
@@ -50,38 +49,40 @@ typedef enum
    STMT_EXECUTING              /* statement execution is still going on */
 } STMT_Status;
 
-#define STMT_TRUNCATED -2
-#define STMT_INFO_ONLY -1      /* not an error message, just a
-                                * notification to be returned by SQLError */
-#define STMT_OK 0              /* will be interpreted as "no error
-                                * pending" */
-#define STMT_EXEC_ERROR 1
-#define STMT_STATUS_ERROR 2
-#define STMT_SEQUENCE_ERROR 3
-#define STMT_NO_MEMORY_ERROR 4
-#define STMT_COLNUM_ERROR 5
-#define STMT_NO_STMTSTRING 6
-#define STMT_ERROR_TAKEN_FROM_BACKEND 7
-#define STMT_INTERNAL_ERROR 8
-#define STMT_STILL_EXECUTING 9
-#define STMT_NOT_IMPLEMENTED_ERROR 10
-#define STMT_BAD_PARAMETER_NUMBER_ERROR 11
-#define STMT_OPTION_OUT_OF_RANGE_ERROR 12
-#define STMT_INVALID_COLUMN_NUMBER_ERROR 13
-#define STMT_RESTRICTED_DATA_TYPE_ERROR 14
-#define STMT_INVALID_CURSOR_STATE_ERROR 15
-#define STMT_OPTION_VALUE_CHANGED 16
-#define STMT_CREATE_TABLE_ERROR 17
-#define STMT_NO_CURSOR_NAME 18
-#define STMT_INVALID_CURSOR_NAME 19
-#define STMT_INVALID_ARGUMENT_NO 20
-#define STMT_ROW_OUT_OF_RANGE 21
-#define STMT_OPERATION_CANCELLED 22
-#define STMT_INVALID_CURSOR_POSITION 23
-#define STMT_VALUE_OUT_OF_RANGE 24
-#define STMT_OPERATION_INVALID 25
-#define STMT_PROGRAM_TYPE_OUT_OF_RANGE 26
-#define STMT_BAD_ERROR 27
+#define STMT_TRUNCATED                         (-2)
+#define STMT_INFO_ONLY                         (-1)    /* not an error message,
+                                                        * just a notification
+                                                        * to be returned by
+                                                        * SQLError */
+#define STMT_OK                                    0       /* will be interpreted
+                                                        * as "no error pending" */
+#define STMT_EXEC_ERROR                            1
+#define STMT_STATUS_ERROR                      2
+#define STMT_SEQUENCE_ERROR                        3
+#define STMT_NO_MEMORY_ERROR                   4
+#define STMT_COLNUM_ERROR                      5
+#define STMT_NO_STMTSTRING                     6
+#define STMT_ERROR_TAKEN_FROM_BACKEND          7
+#define STMT_INTERNAL_ERROR                        8
+#define STMT_STILL_EXECUTING                   9
+#define STMT_NOT_IMPLEMENTED_ERROR             10
+#define STMT_BAD_PARAMETER_NUMBER_ERROR            11
+#define STMT_OPTION_OUT_OF_RANGE_ERROR         12
+#define STMT_INVALID_COLUMN_NUMBER_ERROR       13
+#define STMT_RESTRICTED_DATA_TYPE_ERROR            14
+#define STMT_INVALID_CURSOR_STATE_ERROR            15
+#define STMT_OPTION_VALUE_CHANGED              16
+#define STMT_CREATE_TABLE_ERROR                    17
+#define STMT_NO_CURSOR_NAME                        18
+#define STMT_INVALID_CURSOR_NAME               19
+#define STMT_INVALID_ARGUMENT_NO               20
+#define STMT_ROW_OUT_OF_RANGE                  21
+#define STMT_OPERATION_CANCELLED               22
+#define STMT_INVALID_CURSOR_POSITION           23
+#define STMT_VALUE_OUT_OF_RANGE                    24
+#define STMT_OPERATION_INVALID                 25
+#define STMT_PROGRAM_TYPE_OUT_OF_RANGE         26
+#define STMT_BAD_ERROR                         27
 
 /* statement types */
 enum
index 473b0aadbc053a39f7c964e105c3dee203bebe41..e12f2fc55e90b327c0d49354deab53410a5da212 100644 (file)
@@ -1,4 +1,3 @@
-
 /* Module:         tuple.c
  *
  * Description:        This module contains functions for setting the data for individual
index f3d3d997d13eb7323e0092ab3a50a6dc785ff71c..fdc1a5f9eaab04b5b46989e16250e21672e9e5d4 100644 (file)
@@ -1,4 +1,3 @@
-
 /* File:           tuple.h
  *
  * Description:        See "tuple.c"
index e50bd4aefbaae282531c468ac247d9e7ba05249f..4482f5e386246e90286d8f5ce21d0ed7d0b01ee0 100644 (file)
@@ -1,4 +1,3 @@
-
 /* Module:         tuplelist.c
  *
  * Description:        This module contains functions for creating a manual result set
index 2b255bece76d0133dbdd342484a4584f4bf3dfdb..3dc98dd78ff34043fa942d0c3cb765d16ca561cc 100644 (file)
@@ -1,4 +1,3 @@
-
 /* File:           tuplelist.h
  *
  * Description:        See "tuplelist.c"