Mikhail Chalov
9de9f105b5
Use memory safe snprintf() in Connect Engine and elsewhere ( #2210 )
...
Continue with similar changes as done in 19af1890
to replace sprintf(buf, ...)
with snprintf(buf, sizeof(buf), ...), specifically in the "easy" cases where buf
is allocated with a size known at compile time.
All new code of the whole pull request, including one or several files that are
either new files or modified ones, are contributed under the BSD-new license. I
am contributing on behalf of my employer Amazon Web Services, Inc.
2022-09-28 15:45:25 +01:00
Mikhail Chalov
19af1890b5
Use memory safe snprintf() in Connect Engine
...
This commit replaces sprintf(buf, ...) with
snprintf(buf, sizeof(buf), ...),
specifically in the "easy" cases where buf is allocated with a size
known at compile time.
The changes make sure we are not write outside array/string bounds which
will lead to undefined behaviour. In case the code is trying to write
outside bounds - safe version of functions simply cut the string
messages so we process this gracefully.
All new code of the whole pull request, including one or several files
that are either new files or modified ones, are contributed under the BSD-new
license. I am contributing on behalf of my employer Amazon Web Services,
Inc.
bsonudf.cpp warnings cleanup by Daniel Black
Reviewer: Daniel Black
2022-07-26 16:28:59 +10:00
Oleksandr Byelkin
41a163ac5c
Merge branch '10.2' into 10.3
2022-01-29 15:41:05 +01:00
Vladislav Vaintroub
2925d0f2ee
MDEV-27612 Connect : check buffer sizes, fix string format errors
2022-01-26 09:38:22 +01:00
Marko Mäkelä
4a7dfda373
Merge 10.2 into 10.3
2021-10-13 11:38:21 +03:00
Sergei Krivonos
6f32b28be5
Xcode compatibility update
2021-10-12 18:10:56 -04:00
Oleksandr Byelkin
83d7e4faf6
Merge branch '10.2' into 10.3
2021-07-29 13:51:02 +02:00
Olivier Bertrand
0f18135ec8
- Make user variable prefix recognized by IsArgJson and IsJson
...
modified: storage/connect/bsonudf.cpp
modified: storage/connect/jsonudf.cpp
- Stringify option is now a ; separated list of columns
modified: storage/connect/json.cpp
modified: storage/connect/json.h
modified: storage/connect/mongo.h
modified: storage/connect/tabbson.cpp
modified: storage/connect/tabcmg.cpp
modified: storage/connect/tabcmg.h
modified: storage/connect/tabjmg.cpp
modified: storage/connect/tabjmg.h
modified: storage/connect/tabjson.cpp
- PrepareColist not a static function anymore (+ typo)
modified: storage/connect/taboccur.cpp
- JDVC: Recognize schema (database) from a wrapper server
modified: storage/connect/tabjdbc.cpp
2021-07-24 16:28:57 +02:00
Olivier Bertrand
e0edfc277f
- Fix MDEV-25715
...
modified: storage/connect/bsonudf.cpp
modified: storage/connect/jsonudf.cpp
2021-05-18 16:42:19 +02:00
Olivier Bertrand
c030f4c625
Commit last pull from origin
2021-04-06 12:52:44 +02:00
Olivier Bertrand
801a6d500f
- Add new JPATH features
...
modified: storage/connect/bson.cpp
modified: storage/connect/bsonudf.cpp
modified: storage/connect/bsonudf.h
modified: storage/connect/json.cpp
modified: storage/connect/jsonudf.cpp
modified: storage/connect/jsonudf.h
modified: storage/connect/mysql-test/connect/r/json_udf.result
modified: storage/connect/tabbson.cpp
modified: storage/connect/tabjson.cpp
modified: storage/connect/tabjson.h
2021-02-16 00:31:27 +01:00
Olivier Bertrand
e7d9c1d498
Fix connect engine ppc64 fail
2021-02-05 18:34:06 +01:00
Olivier Bertrand
d788225b66
Fix bson_object_grp inverted args. Modified: storage/connect/bsonudf.cpp and bson_udf.result
2021-02-05 18:07:43 +01:00
Olivier Bertrand
ca63004190
- Fix bug causing bnx base wrong after CheckMemory
...
Add negative array indexes starting from the last
modified: storage/connect/bson.cpp
modified: storage/connect/bsonudf.cpp
modified: storage/connect/json.cpp
2021-02-05 11:55:47 +01:00
Olivier Bertrand
dc31627c2d
Fix of connect engine crashes
2021-02-05 11:25:24 +01:00
Oleksandr Byelkin
c04ae0d365
Fix of crashes of connect engine.
...
Use size_t everywhere and remove suspicious expression.
2021-02-05 10:56:05 +01:00
Oleksandr Byelkin
716b0b44f8
Fix compiler warnings of the new connect engine.
2021-02-05 10:55:40 +01:00
Oleksandr Byelkin
b3cecb7bfc
Revert "Fix of warnings on aarch64 like:"
...
Fixed by the author in other way (char -> short)
This reverts commit 496f7090a8
.
2021-02-02 10:37:54 +01:00
Oleksandr Byelkin
7f7e66147d
Merge remote-tracking branch 'connect/10.2' into 10.2
2021-02-02 10:36:46 +01:00
Olivier Bertrand
7ab30f5d95
Update bson_get_item modified: bsonudf.cpp
2021-01-29 15:45:08 +01:00
Oleksandr Byelkin
496f7090a8
Fix of warnings on aarch64 like:
...
bson.cpp:1775:3: error: case label value is less than minimum value for type [-Werror]
case TYPE_NULL:
bson.cpp:1776:7: error: statement will never be executed [-Werror=switch-unreachable]
b = true;
2021-01-29 12:35:17 +01:00
Oleksandr Byelkin
40868c4765
fix warnings returned by gcc v10.0
2021-01-29 12:04:09 +01:00
Olivier Bertrand
848a1a613c
Fix decimal problems in bson udf's
2021-01-28 19:54:24 +01:00
Olivier Bertrand
7edd4294be
- Continue BSON development
...
modified: storage/connect/bson.cpp
modified: storage/connect/bson.h
modified: storage/connect/bsonudf.cpp
modified: storage/connect/bsonudf.h
modified: storage/connect/ha_connect.cc
modified: storage/connect/jsonudf.cpp
modified: storage/connect/mysql-test/connect/r/bson.result
modified: storage/connect/mysql-test/connect/r/bson_udf.result
modified: storage/connect/mysql-test/connect/t/bson_udf.inc
modified: storage/connect/mysql-test/connect/t/bson_udf.test
modified: storage/connect/mysql-test/connect/t/bson_udf2.inc
modified: storage/connect/tabbson.cpp
modified: storage/connect/tabbson.h
2021-01-28 01:02:29 +01:00
Olivier Bertrand
347bce0201
- Remove static linkage to cpprestsdk when it is installed
...
modified: storage/connect/CMakeLists.txt
- Continue BSON development
modified: storage/connect/bson.cpp
modified: storage/connect/bson.h
modified: storage/connect/bsonudf.cpp
modified: storage/connect/bsonudf.h
added: storage/connect/mysql-test/connect/r/bson_udf.result
added: storage/connect/mysql-test/connect/t/bson_udf.inc
added: storage/connect/mysql-test/connect/t/bson_udf.test
added: storage/connect/mysql-test/connect/t/bson_udf2.inc
2021-01-12 18:25:41 +01:00
Olivier Bertrand
8f34d45404
- Add the new BSON temporary type for testing
...
modified: storage/connect/CMakeLists.txt
modified: storage/connect/bson.cpp
modified: storage/connect/bson.h
modified: storage/connect/bsonudf.cpp
modified: storage/connect/bsonudf.h
modified: storage/connect/global.h
modified: storage/connect/json.cpp
modified: storage/connect/jsonudf.cpp
modified: storage/connect/mysql-test/connect/disabled.def
modified: storage/connect/mysql-test/connect/t/mongo_test.inc
modified: storage/connect/plugutil.cpp
modified: storage/connect/tabbson.cpp
modified: storage/connect/tabjson.cpp
2021-01-08 22:18:52 +01:00
Olivier Bertrand
cba46c9912
- Fix jfile_convert crash on error. modified: jsonudf.cpp (plus BSON UDF's)
2020-12-31 15:43:52 +01:00
Olivier Bertrand
a35424829a
- Continue BSON implementation + fix create modified ha_connect.cc
2020-12-26 19:47:00 +01:00
Olivier Bertrand
aa10789f47
BSON development
2020-12-11 16:34:50 +01:00
Olivier Bertrand
4eeadedc77
- Fix json_bjson (s was erase by Json_Subset)
...
modified: storage/connect/jsonudf.cpp
modified: storage/connect/jsonudf.h
- Fix compile error (Force_Bson was not conditional by BSON_SUPPORT)
modified: storage/connect/ha_connect.cc
- Continue Bjson implementation
modified: storage/connect/block.h
modified: storage/connect/bson.cpp
modified: storage/connect/bson.h
modified: storage/connect/bsonudf.cpp
modified: storage/connect/bsonudf.h
modified: storage/connect/plugutil.cpp
modified: storage/connect/tabbson.cpp
modified: storage/connect/tabjson.cpp
- Typo
deleted: storage/connect/Header.h
2020-12-09 00:55:06 +01:00
Olivier Bertrand
871532c3b9
- Continue BSON implementation
...
modified: storage/connect/bson.cpp
modified: storage/connect/bson.h
modified: storage/connect/bsonudf.cpp
modified: storage/connect/cmgfam.cpp
modified: storage/connect/cmgfam.h
modified: storage/connect/ha_connect.cc
modified: storage/connect/jmgfam.cpp
modified: storage/connect/jmgfam.h
modified: storage/connect/jmgoconn.cpp
modified: storage/connect/mycat.cc
modified: storage/connect/tabbson.cpp
modified: storage/connect/tabjson.cpp
2020-12-08 01:15:40 +01:00
Olivier Bertrand
c05b1288fd
Remove a push warning causing failing assert. Modified storage/connect/filamap.cpp
2020-12-04 23:21:59 +01:00
Olivier Bertrand
4e8af8a664
- Fix memory leak for the JSON table type
...
(and continue BSON implementatio)
modified: storage/connect/bson.cpp
modified: storage/connect/bson.h
modified: storage/connect/bsonudf.cpp
modified: storage/connect/connect.cc
modified: storage/connect/global.h
modified: storage/connect/ha_connect.cc
modified: storage/connect/jsonudf.cpp
modified: storage/connect/mycat.cc
modified: storage/connect/plgdbsem.h
modified: storage/connect/plugutil.cpp
modified: storage/connect/tabjson.cpp
modified: storage/connect/tabjson.h
modified: storage/connect/user_connect.cc
- Desesperatly trying to fix xml.test failure
modified: storage/connect/mysql-test/connect/r/xml.result
2020-12-01 19:39:09 +01:00
Olivier Bertrand
950bf6ab53
- Begin implementation of BSON
...
modified: storage/connect/bson.cpp
modified: storage/connect/bson.h
modified: storage/connect/bsonudf.cpp
modified: storage/connect/bsonudf.h
modified: storage/connect/jsonudf.cpp
2020-11-27 10:25:47 +01:00
Olivier Bertrand
b656d3d333
Desesperatly trying to stop compiling failures
2020-11-25 17:42:01 +01:00