From cd928db022b20366b46ceb2541863e1027e07ca6 Mon Sep 17 00:00:00 2001 From: Patrick Wade Date: Tue, 23 Feb 2021 16:47:11 +0000 Subject: [PATCH] Updating with the latest offsets for Percona64 5.7.31-34 MySQL64 5.6.50, 5.7.32 MariaDB64 10.2.36, 10.2.35, 10.1.48 MySQL32 5.6.50, 5.7.32 MariaDB32 10.2.36, 10.2.35, 10.1.48 --- include/audit_handler.h | 2 +- src/audit_handler.cc | 19 ++++--------------- src/audit_offsets.cc | 22 ++++++++++++++++++++++ 3 files changed, 27 insertions(+), 16 deletions(-) diff --git a/include/audit_handler.h b/include/audit_handler.h index 4e8c910..acd0792 100644 --- a/include/audit_handler.h +++ b/include/audit_handler.h @@ -441,7 +441,7 @@ static inline const CHARSET_INFO * pfs_connect_attrs_cs(void * pfs) // major, minor, patch); } - if ( ( major == 5 && ( (minor == 6 && patch >= 15) || minor >= 7) ) // MySQL + if ( ( major == 5 && ( (minor == 6 && patch >= 15) || minor >= 7) ) || (major == 8) // MySQL || ( major == 10 && ( (minor == 0 && patch >= 11) || minor >= 1) ) ) // MariaDB { uint cs_number = *(uint *) (((unsigned char *) pfs) + Audit_formatter::thd_offsets.pfs_connect_attrs_cs); diff --git a/src/audit_handler.cc b/src/audit_handler.cc index 63eda86..f6a9b3d 100644 --- a/src/audit_handler.cc +++ b/src/audit_handler.cc @@ -846,19 +846,16 @@ static void log_session_connect_attrs(yajl_gen gen, THD *thd) PFS_thread * pfs = PFS_thread::get_current_thread(); const char * connect_attrs = Audit_formatter::pfs_connect_attrs(pfs); const uint connect_attrs_length = Audit_formatter::pfs_connect_attrs_length(pfs); -#if defined(MARIADB_BASE_VERSION) || MYSQL_VERSION_ID < 80000 const CHARSET_INFO *connect_attrs_cs = Audit_formatter::pfs_connect_attrs_cs(pfs); -#else - const CHARSET_INFO *connect_attrs_cs = get_charset(pfs->m_session_connect_attrs_cs_number, MYF(0)); -#endif //sanity max attributes const uint max_idx = 32; uint idx; const char *ptr; - bool array_start = false; + // bool array_start = false; if(!connect_attrs || !connect_attrs_length || !connect_attrs_cs) { + sql_print_information("%s Failed to compute offsets connect_attrs. pfs [%p], connect_attrs [%p], connect_attrs_length [%d], connect_attrs_cs [%p]", AUDIT_LOG_PREFIX, pfs, connect_attrs, connect_attrs_length, connect_attrs_cs); //either offsets are wrong or not set return; } @@ -886,6 +883,7 @@ static void log_session_connect_attrs(yajl_gen gen, THD *thd) connect_attrs_cs, MAX_COPY_CHARS_NAME) || !copy_length) { //something went wrong or we are done + // sql_print_information("%s something went wrong or we are done 1", AUDIT_LOG_PREFIX); break; } @@ -899,23 +897,14 @@ static void log_session_connect_attrs(yajl_gen gen, THD *thd) fill_in_attr_value, connect_attrs_cs, MAX_COPY_CHARS_VAL) || !copy_length) { + // sql_print_information("%s something went wrong or we are done 2", AUDIT_LOG_PREFIX); break; } attr_value_length= copy_length; - if(!array_start) - { - yajl_add_string(gen, "connect_attrs"); - yajl_gen_map_open(gen); - array_start = true; - } yajl_gen_string(gen, (const unsigned char*)attr_name, attr_name_length); yajl_gen_string(gen, (const unsigned char*)attr_value, attr_value_length); } //close for loop - if(array_start) - { - yajl_gen_map_close(gen); - } return; } #endif diff --git a/src/audit_offsets.cc b/src/audit_offsets.cc index c82b7ab..e99a23d 100644 --- a/src/audit_offsets.cc +++ b/src/audit_offsets.cc @@ -25,6 +25,8 @@ const ThdOffsets thd_offsets_arr[] = { /* +++ PERCONA 64 OFFSETS GO HERE +++ */ + //offsets for: /perconarpm/usr/sbin/mysqld (5.7.31-34) + {"5.7.31-34","6aacc4359af48e07145187bd8b590a43", 8360, 8424, 3928, 5088, 456, 360, 0, 32, 64, 160, 536, 8556, 4656, 3648, 3656, 3660, 6560, 2088, 8, 7592, 7632, 7616, 14328, 148, 672}, //offsets for: /perconarpm/usr/sbin/mysqld (5.7.30-33) {"5.7.30-33","9ca6e80ea4c210aee6bb39116f38c0c2", 8360, 8424, 3928, 5088, 456, 360, 0, 32, 64, 160, 536, 8556, 4656, 3648, 3656, 3660, 6560, 2088, 8, 7592, 7632, 7616, 14328, 148, 672}, //offsets for: /perconarpm/usr/sbin/mysqld (5.7.29-32) @@ -63,6 +65,10 @@ const ThdOffsets thd_offsets_arr[] = const ThdOffsets thd_offsets_arr[] = { /* +++ MYSQL 64 OFFSETS GO HERE +++ */ + //offsets for: /mysqlrpm/5.6.50/usr/sbin/mysqld (5.6.50) + {"5.6.50","7f4faea987f15f3f81235ec4b38d1f5e", 7000, 7048, 4008, 4528, 72, 2704, 96, 0, 32, 104, 136, 7136, 4400, 2800, 2808, 2812, 536, 0, 0, 6368, 6392, 6376, 13056, 548, 516}, + //offsets for: /mysqlrpm/5.7.32/usr/sbin/mysqld (5.7.32) + {"5.7.32","12356fea007b09247c10d0efb34b0a59", 7824, 7872, 3632, 4792, 456, 360, 0, 32, 64, 160, 536, 7988, 4360, 3648, 3656, 3660, 6072, 2072, 8, 7056, 7096, 7080, 13472, 148, 672}, //offsets for: ./mysqld-8.0.22 (8.0.22) {"8.0.22","d33b22129504158cacdad5664d21a4a5", 8672, 8720, 4056, 5664, 520, 0, 0, 32, 64, 160, 600, 8836, 5296, 4208, 4216, 4220, 6968, 1600, 32, 7928, 7968, 7952, 11760, 140, 664, 320}, //offsets for: ./mysqld-8.0.21 (8.0.21) @@ -404,6 +410,12 @@ const ThdOffsets thd_offsets_arr[] = const ThdOffsets thd_offsets_arr[] = { /* +++ MARIADB 64 OFFSETS GO HERE +++ */ + //offsets for: /mariadb/10.2.36/bin/mysqld (10.2.36-MariaDB) + {"10.2.36-MariaDB","6ac5d544938762b31b4972d099c85933", 13880, 13944, 6672, 8288, 88, 3208, 8, 0, 16, 24, 152, 14044, 8048, 2984, 2992, 2996, 608, 0, 0, 13256, 13280, 13264, 21216, 548, 516}, + //offsets for: /mariadb/10.2.35/bin/mysqld (10.2.35-MariaDB) + {"10.2.35-MariaDB","9d1ec0f7809b672b0863d163a5c191d2", 13880, 13944, 6672, 8288, 88, 3208, 8, 0, 16, 24, 152, 14044, 8048, 2984, 2992, 2996, 608, 0, 0, 13256, 13280, 13264, 21216, 548, 516}, + //offsets for: /mariadb/10.1.48/bin/mysqld (10.1.48-MariaDB) + {"10.1.48-MariaDB","cafecd98d429c4802dbda1234c6adbcf", 13712, 13776, 6488, 8096, 88, 3032, 8, 0, 16, 24, 152, 13868, 7864, 2984, 2992, 2996, 568, 0, 0, 13088, 13112, 13096, 20672, 548, 516}, //offsets for: /mariadb/10.1.43/bin/mysqld (10.1.43-MariaDB) {"10.1.43-MariaDB","4de77f18da6c8086f743eac1f5db94b1", 13712, 13776, 6488, 8096, 88, 3040, 8, 0, 16, 24, 152, 13868, 7864, 2984, 2992, 2996, 568, 0, 0, 13088, 13112, 13096, 20680, 548, 516}, //offsets for: /mariadb/10.2.27/bin/mysqld (10.2.27-MariaDB) @@ -735,6 +747,10 @@ const ThdOffsets thd_offsets_arr[] = const ThdOffsets thd_offsets_arr[] = { /* +++ MYSQL 32 OFFSETS GO HERE +++ */ + //offsets for: /mysqlrpm/5.6.50/usr/sbin/mysqld (5.6.50) + {"5.6.50","faec9307821c607dbe7b4dd0e42e85fb", 4680, 4708, 2664, 3056, 36, 1748, 60, 0, 20, 64, 72, 4780, 2984, 2268, 2272, 2276, 348, 0, 0, 4208, 4232, 4216, 8664, 548, 516}, + //offsets for: /mysqlrpm/5.7.32/usr/sbin/mysqld (5.7.32) + {"5.7.32","66e823d0163d65a48c6f6643cbb0403e", 5084, 5112, 2212, 3036, 296, 200, 0, 20, 40, 100, 340, 5196, 2776, 3108, 3112, 3116, 3720, 1152, 4, 4536, 4572, 4556, 9044, 80, 604}, //offsets for: /mysqlrpm/5.6.49/usr/sbin/mysqld (5.6.49) {"5.6.49","2d3f8c93e042cf09b247b55016b3c0b3", 4680, 4708, 2664, 3056, 36, 1748, 60, 0, 20, 64, 72, 4780, 2984, 2268, 2272, 2276, 348, 0, 0, 4208, 4232, 4216, 8664, 548, 516}, //offsets for: /mysqlrpm/5.7.31/usr/sbin/mysqld (5.7.31) @@ -1046,6 +1062,12 @@ const ThdOffsets thd_offsets_arr[] = const ThdOffsets thd_offsets_arr[] = { /* +++ MARIADB 32 OFFSETS GO HERE +++ */ + //offsets for: /mariadb/10.2.36/bin/mysqld (10.2.36-MariaDB) + {"10.2.36-MariaDB","2360c1f90821d784efc03cc21d97bd97", 8616, 8652, 3964, 5432, 44, 2032, 4, 0, 8, 12, 84, 8736, 5292, 2604, 2608, 2612, 376, 0, 0, 8140, 8164, 8148, 13468, 548, 516}, + //offsets for: /mariadb/10.2.35/bin/mysqld (10.2.35-MariaDB) + {"10.2.35-MariaDB","7863a7625cee0be06d559fbd80786acb", 8616, 8652, 3964, 5432, 44, 2032, 4, 0, 8, 12, 84, 8736, 5292, 2604, 2608, 2612, 376, 0, 0, 8140, 8164, 8148, 13468, 548, 516}, + //offsets for: /mariadb/10.1.48/bin/mysqld (10.1.48-MariaDB) + {"10.1.48-MariaDB","f316467dfccea26c7afc34c535e546ef", 8516, 8552, 3860, 5320, 44, 1928, 4, 0, 8, 12, 84, 8624, 5188, 2604, 2608, 2612, 356, 0, 0, 8040, 8064, 8048, 13152, 548, 516}, //offsets for: /mariadb/10.1.43/bin/mysqld (10.1.43-MariaDB) {"10.1.43-MariaDB","e0e44c5fa79d68f4266ca97ece05e764", 8540, 8576, 3884, 5344, 44, 1932, 4, 0, 8, 12, 84, 8648, 5212, 2604, 2608, 2612, 356, 0, 0, 8064, 8088, 8072, 13180, 548, 516}, //offsets for: /mariadb/10.2.27/bin/mysqld (10.2.27-MariaDB)