Nyall Dawson
86741f4614
More thread safety
2020-08-18 12:28:20 +10:00
Nyall Dawson
e92f14f9c4
Make SQL parser/lexer reentrant
...
Provides thread safety for mdbtools ODBC driver
2020-08-18 12:23:04 +10:00
Evan Miller
6171472411
Change -Bsymbolic-functions to -Wl,-Bsymbolic-functions
2020-08-14 00:12:07 -04:00
Evan Miller
dfd41f2283
Try fixing unixODBC deadlock with -Bsymbolic-functions
...
This flag compels the dynamic library to prefer its own function symbols
to those in the global symbol table. This behavior should let us
directly call SQL* functions from inside other SQL* functions without
fear of interference by the host program.
2020-08-13 21:52:03 -04:00
Evan Miller
3c6c8e07db
Make mdb-count case-insensitive to table names
...
This matches the behavior of mdb-export. Thanks to Nicholas Crookston.
2020-08-13 06:32:41 -04:00
Evan Miller
cca922562f
Merge pull request #13 from nyalldawson/fix_placeholder
...
Fix placeholder text used instead of type name in SQLGetData SQLColumns_TYPE_NAME call
2020-08-12 22:48:41 -04:00
Evan Miller
0a72c5407b
Merge pull request #14 from nyalldawson/char_len
...
Correctly return len of character data when SQLColAttributes is called with SQL_COLUMN_TYPE_NAME
2020-08-12 22:46:52 -04:00
Nyall Dawson
6085a89e1d
Use ICONV_CONST
2020-08-13 12:42:32 +10:00
Nyall Dawson
3f278f3996
Correctly return len of character data when SQLColAttributes is called with SQL_COLUMN_TYPE_NAME
2020-08-13 12:40:46 +10:00
Nyall Dawson
1fc6d60dfa
Fix placeholder text used instead of type name in SQLGetData SQLColumns_TYPE_NAME call
2020-08-13 12:12:57 +10:00
Nyall Dawson
1846fab4e6
Const correctness on src char pointers for unicode/ascii conversion
2020-08-13 12:12:52 +10:00
Nyall Dawson
8202e38155
Don't automatically add terminators when reading data parts
...
via SQLGetData for OLE fields
if the column type is OLE, then we don't add terminators
see https://docs.microsoft.com/en-us/sql/odbc/reference/syntax/sqlgetdata-function?view=sql-server-ver15
and https://www.ibm.com/support/knowledgecenter/SSEPEK_11.0.0/odbc/src/tpc/db2z_fngetdata.html
"The buffer that the rgbValue argument specifies contains nul-terminated values, unless you retrieve
binary data, or the SQL data type of the column is graphic (DBCS) and the C buffer type is SQL_C_CHAR."
2020-08-13 08:03:00 +10:00
Evan Miller
362938f17c
ODBC build fixes
...
* Require SQLGetPrivateProfileString in ODBC libraries
* Attempt to fix reported deadlock with unixODBC by rearranging
functions
2020-08-12 15:05:25 -04:00
Evan Miller
bd6aa50f73
Merge pull request #11 from nyalldawson/binary_type
...
Report more accurate field type for OLE fields
2020-08-12 06:26:00 -04:00
Nyall Dawson
9a749e68fd
Report more accurate field type for OLE fields
2020-08-12 15:33:54 +10:00
Nyall Dawson
277b49f209
More warning fixes
2020-08-12 13:11:52 +10:00
Nyall Dawson
1639283779
Fix int/guint comparison warnings
2020-08-12 13:04:20 +10:00
Nyall Dawson
68d3104134
pos should finish on data length
2020-08-12 09:51:54 +10:00
Nyall Dawson
2567e57faa
Fix incorrect early free of str when reading ole fields
2020-08-12 09:06:04 +10:00
Evan Miller
71e10395fd
Try another SQLGetData fix
...
Set the length of the return value to include the NUL termination
charaacter.
2020-08-11 07:30:33 -04:00
Evan Miller
e330feebd6
Fix for variable-length fields using SQLGetData
...
See:
brianb/mdbtools#130
brianb/mdbtools#131
evanmiller/mdbtools#6
2020-08-10 21:38:08 -04:00
Evan Miller
02c5544c14
Syntax fix
2020-08-10 19:19:19 -04:00
Evan Miller
a712dfef65
Get rid of indirection in ODBC driver
2020-08-10 19:15:03 -04:00
Evan Miller
05b1e2229a
Fix unittest exit code
2020-08-10 17:08:55 -04:00
Evan Miller
c471570d16
Fix __attribute__ syntax
2020-08-10 17:07:54 -04:00
Evan Miller
280075a3e2
Fix unused function warnings
2020-08-10 17:04:11 -04:00
Evan Miller
abe7ebcb74
Add ODBC unittest to Travis
2020-08-10 16:59:15 -04:00
Evan Miller
4ca16b8edf
Fix bug in fake g_strsplit
...
Lack of NULL termination caused an occasional crash
2020-08-10 16:58:11 -04:00
Evan Miller
cc292b3f0d
Improved ODBC error messages
2020-08-10 16:57:43 -04:00
Evan Miller
3c7761f965
Support --disable-glib flag with ODBC driver
2020-08-10 15:58:22 -04:00
Evan Miller
d4f7bd6ec5
Remove mdb-check
...
This program is not built by default, and its functionality is covered
by the other utilties.
2020-08-10 06:58:05 -04:00
Evan Miller
82bbc0cef7
Improved bounds checking
2020-08-09 16:38:25 -04:00
Evan Miller
7690ef376f
Turn off -Wsign-compare for the lexer
...
Flex doesn't like it.
2020-08-09 16:23:06 -04:00
Evan Miller
c93156626c
Fix all sign-compare warnings
...
Also flip on -Wsign-compare in the default configuration
2020-08-09 16:15:20 -04:00
Evan Miller
2e1e1ed796
Simplify bounds checking logic with snprintf
2020-08-06 23:58:34 -04:00
Evan Miller
47724e50c9
Merge pull request #5 from nyalldawson/fix_SQL_COLUMN_TYPE_NAME
...
Implement SQL_COLUMN_TYPE_NAME field identifier in SQLColAttributes
2020-08-06 23:57:15 -04:00
Nyall Dawson
3517b0eee6
Implement SQL_COLUMN_TYPE_NAME field identifier in SQLColAttributes
...
Without this use of mdbtools in UnixODBC is broken, as all calls to
SqlFetch error out
2020-08-07 13:48:45 +10:00
Evan Miller
e7782f7821
Remove debugging comments from mdb-schema
2020-08-06 23:18:05 -04:00
Evan Miller
2e6e88b96f
Improve bounds and return-value checking
...
Fixes a memory leak and a number of buffer overruns
2020-08-06 15:17:04 -04:00
Evan Miller
b01c4b8941
Check result of mdb_find_pg_row / fix crash
2020-08-06 14:14:32 -04:00
Evan Miller
4682ec0f8a
Fix crash
2020-08-06 14:08:30 -04:00
Evan Miller
272bd191bc
Merge branch 'master' into no-glib
2020-08-06 12:51:52 -04:00
Evan Miller
9b6b52cc8c
Fix buffer overflow in mdb_numeric_to_string brianb/mdbtools#124
2020-08-06 12:34:09 -04:00
Evan Miller
c67a92f459
Provide NUMERIC type in Postgres backend brianb/mdbtools#129
2020-08-06 08:20:11 -04:00
Evan Miller
edc20bcc39
Merge branch 'master' into no-glib
2020-08-06 08:16:06 -04:00
Evan Miller
c17aeb0826
Remove length specifier from MySQL TEXT types brianb/mdbtools#133
2020-08-06 08:15:06 -04:00
Evan Miller
d0d3060223
Fix program_invocation_short_name on Cygwin
2020-08-05 23:59:58 -04:00
Evan Miller
7c324a9cb4
Fix warnings
2020-08-05 23:48:49 -04:00
Evan Miller
8bacbf1678
Fix unused result warning
2020-08-05 23:27:19 -04:00
Evan Miller
04b736c9ff
Fix indentation warnings
2020-08-05 23:22:08 -04:00