From: <ta...@us...> - 2016-06-23 05:19:12
|
Revision: 63423 http://sourceforge.net/p/firebird/code/63423 Author: tabloid Date: 2016-06-23 05:19:09 +0000 (Thu, 23 Jun 2016) Log Message: ----------- See added / modified .fbt file(s) Modified Paths: -------------- qa/fbt-repository/trunk/tests/bugs/core_2026.fbt Added Paths: ----------- qa/fbt-repository/trunk/tests/functional/syspriv/monitor_any_attachment.fbt Modified: qa/fbt-repository/trunk/tests/bugs/core_2026.fbt =================================================================== --- qa/fbt-repository/trunk/tests/bugs/core_2026.fbt 2016-06-21 06:31:33 UTC (rev 63422) +++ qa/fbt-repository/trunk/tests/bugs/core_2026.fbt 2016-06-23 05:19:09 UTC (rev 63423) @@ -15,6 +15,11 @@ { 'firebird_version': '2.5', 'platform': 'All', + 'init_script': + """ + recreate table test(x integer default 0); + commit; + """, 'database_character_set': 'ISO8859_1', 'test_type': 'Python', 'test_script': @@ -26,8 +31,6 @@ db_conn.close() -runProgram('isql',[dsn],'recreate table test (test integer default 0);') - script=''' set list on; set blob all; @@ -37,14 +40,19 @@ from rdb$relation_fields where rdb$default_source is not null; ''' +runProgram('isql',[dsn],script) runProgram('gfix',['-mode','read_only',dsn]) runProgram('isql',['-ch','iso8859_1',dsn],script) """, 'expected_stdout': """ + MON$READ_ONLY 0 + RDB$FIELD_NAME X + default 0 + Records affected: 1 MON$READ_ONLY 1 - RDB$FIELD_NAME TEST + RDB$FIELD_NAME X default 0 Records affected: 1 """, Added: qa/fbt-repository/trunk/tests/functional/syspriv/monitor_any_attachment.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/syspriv/monitor_any_attachment.fbt (rev 0) +++ qa/fbt-repository/trunk/tests/functional/syspriv/monitor_any_attachment.fbt 2016-06-23 05:19:09 UTC (rev 63423) @@ -0,0 +1,113 @@ +{ +'id': 'functional.syspriv.monitor_any_attachment', +'tracker_id': '', +'title': 'Check ability to monitor any attachment.', +'description': + """ + """, +'min_versions': '4.0.0', +'versions': [ +{ + 'firebird_version': '4.0', + 'platform': 'All', + 'test_type': 'ISQL', + 'test_script': + """ + set wng off; + set bail on; + set list on; + set count on; + + create or alter view v_check as + select + current_user as who_ami + ,r.rdb$role_name + ,rdb$role_in_use(r.rdb$role_name) as rdb$role_in_use + ,r.rdb$system_privileges + from mon$database m cross join rdb$roles r; + commit; + + create or alter user u01 password '123' revoke admin role; + revoke all on all from u01; + commit; + + grant select on v_check to public; + commit; + + set term ^; + execute block as + begin + execute statement 'drop role role_for_monitor_any_attach'; + when any do begin end + end + ^ + set term ;^ + commit; + + -- Monitor (via MON$ tables) attachments from other users: + create role role_for_monitor_any_attach + set system privileges to MONITOR_ANY_ATTACHMENT; + commit; + grant default role_for_monitor_any_attach to user u01; + commit; + + connect '$(DSN)' user u01 password '123'; + commit; + select * from v_check; + commit; + + set term ^; + execute block returns( + who_am_i rdb$user, + who_else_here rdb$user, + what_he_is_doing varchar(50) + ) as + declare another_user varchar(31); + begin + execute statement 'select current_user from rdb$database' + on external 'localhost:' || rdb$get_context('SYSTEM','DB_NAME') + as user 'SYSDBA' password 'masterkey' + into another_user; + + for + select + current_user, + a.mon$user, + s.mon$sql_text + from mon$attachments a join mon$statements s using(mon$attachment_id) + where a.mon$user<>current_user and a.mon$system_flag is distinct from 1 + into who_am_i, who_else_here, what_he_is_doing + do + suspend; + end + ^ + set term ;^ + commit; + + connect '$(DSN)' user sysdba password 'masterkey'; + drop user u01; + drop role role_for_monitor_any_attach; + commit; + """, + 'expected_stdout': + """ + WHO_AMI U01 + RDB$ROLE_NAME RDB$ADMIN + RDB$ROLE_IN_USE <false> + RDB$SYSTEM_PRIVILEGES FFFFFFFFFFFFFFFF + WHO_AMI U01 + RDB$ROLE_NAME ROLE_FOR_MONITOR_ANY_ATTACH + RDB$ROLE_IN_USE <true> + RDB$SYSTEM_PRIVILEGES 8000000000000000 + Records affected: 2 + WHO_AM_I U01 + WHO_ELSE_HERE SYSDBA + WHAT_HE_IS_DOING select current_user from rdb$database + Records affected: 1 + """, + 'expected_stderr': + """ + """ +} +] +} Property changes on: qa/fbt-repository/trunk/tests/functional/syspriv/monitor_any_attachment.fbt ___________________________________________________________________ Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |