[Rt-commit] rt branch, 4.2-trunk, updated. rt-4.2.12-87-g7108980

? sunnavy sunnavy at bestpractical.com
Sat Oct 24 13:11:48 EDT 2015


The branch, 4.2-trunk has been updated
       via  710898013a94b9ecd9888cea06c8c9ec1a837d98 (commit)
       via  0c125c7007f39a200e15ebbacd303342ecdac30f (commit)
       via  b833421f783c8485184b9ddb6a87cea9a1345aa0 (commit)
       via  1704c2c7e4274999d1e720b1a7e67663b7afb8ff (commit)
       via  5d72f9ce8e88c8afcf40abf9a586b16bf63e1600 (commit)
       via  4ec786bb4743f67a35a634c1bf43b13d3d3b39a9 (commit)
       via  38f98d4f313a4c0e19b5ec517f4f6492928e455a (commit)
       via  671a9b2820f6e04985b462fde2df36e2ad0056f0 (commit)
       via  31c15b65d9d593e3fca4f2b27b29343a8937dadc (commit)
       via  c6d4f60eb5b718d82257b0c98c48a30b6780a332 (commit)
       via  8e8ae8f46736b08a0116c44e854388765ec62b59 (commit)
       via  6a45267a7dfdc259f66af2ba318bf83182ed935e (commit)
       via  f788366da321e4ddb3f3a8a2c6f7eba41baf6817 (commit)
      from  3672e3ec9df17b5c9beb6ce7f1897889a08a8c9a (commit)

Summary of changes:
 lib/RT/CustomField.pm                              |  5 +++
 lib/RT/Test.pm                                     |  2 +-
 sbin/rt-test-dependencies.in                       |  1 +
 t/security/CVE-2012-4733-status.t                  | 26 +++++++++++++
 .../CVE-2013-3373-template-header-injection.t      | 32 ++++++++++++++++
 t/shredder/02cfs.t                                 | 43 ++++++++++++++++++++++
 6 files changed, 108 insertions(+), 1 deletion(-)
 create mode 100644 t/security/CVE-2012-4733-status.t
 create mode 100644 t/security/CVE-2013-3373-template-header-injection.t
 create mode 100644 t/shredder/02cfs.t

- Log -----------------------------------------------------------------
commit 710898013a94b9ecd9888cea06c8c9ec1a837d98
Merge: 3672e3e 0c125c7
Author: sunnavy <sunnavy at bestpractical.com>
Date:   Sun Oct 25 00:18:20 2015 +0800

    Merge branch '4.0-trunk' into 4.2-trunk

diff --cc lib/RT/CustomField.pm
index 0603927,c9779d8..1e51886
--- a/lib/RT/CustomField.pm
+++ b/lib/RT/CustomField.pm
@@@ -2288,48 -2152,6 +2288,53 @@@ sub _CoreAccessible 
   }
  };
  
 +sub FindDependencies {
 +    my $self = shift;
 +    my ($walker, $deps) = @_;
 +
 +    $self->SUPER::FindDependencies($walker, $deps);
 +
 +    $deps->Add( out => $self->BasedOnObj )
 +        if $self->BasedOnObj->id;
 +
 +    my $applied = RT::ObjectCustomFields->new( $self->CurrentUser );
 +    $applied->LimitToCustomField( $self->id );
 +    $deps->Add( in => $applied );
 +
 +    $deps->Add( in => $self->Values ) if $self->ValuesClass eq "RT::CustomFieldValues";
 +}
 +
 +sub __DependsOn {
 +    my $self = shift;
 +    my %args = (
 +        Shredder => undef,
 +        Dependencies => undef,
 +        @_,
 +    );
 +    my $deps = $args{'Dependencies'};
 +    my $list = [];
 +
 +# Custom field values
 +    push( @$list, $self->Values );
 +
++# Applications of this CF
++    my $applied = RT::ObjectCustomFields->new( $self->CurrentUser );
++    $applied->LimitToCustomField( $self->Id );
++    push @$list, $applied;
++
 +# Ticket custom field values
 +    my $objs = RT::ObjectCustomFieldValues->new( $self->CurrentUser );
 +    $objs->LimitToCustomField( $self->Id );
 +    push( @$list, $objs );
 +
 +    $deps->_PushDependencies(
 +        BaseObject => $self,
 +        Flags => RT::Shredder::Constants::DEPENDS_ON,
 +        TargetObjects => $list,
 +        Shredder => $args{'Shredder'}
 +    );
 +    return $self->SUPER::__DependsOn( %args );
 +}
  
  RT::Base->_ImportOverlays();
  
diff --cc sbin/rt-test-dependencies.in
index 77cb68a,7e5e334..188b52a
--- a/sbin/rt-test-dependencies.in
+++ b/sbin/rt-test-dependencies.in
@@@ -206,69 -196,85 +206,70 @@@ Devel::StackTrace 1.1
  Digest::base
  Digest::MD5 2.27
  Digest::SHA
 -DBI 1.37
 -Class::ReturnValue 0.40
 -DBIx::SearchBuilder 1.59
 -Text::Template 1.44
 +Email::Address 1.897
 +Email::Address::List 0.02
 +Encode 2.64
 +Errno
 +File::Glob
  File::ShareDir
  File::Spec 0.8
 +File::Temp 0.19
 +HTML::Entities
 +HTML::FormatText::WithLinks 0.14
 +HTML::FormatText::WithLinks::AndTables
 +HTML::Mason 1.43
 +HTML::Mason::PSGIHandler 0.52
  HTML::Quoted
 +HTML::RewriteAttributes 0.05
  HTML::Scrubber 0.08
 -HTML::TreeBuilder
 -HTML::FormatText
 -Log::Dispatch 2.23
 -Sys::Syslog 0.16
 +HTTP::Message 6.0
 +IPC::Run3
 +JSON
 +LWP::Simple
 +List::MoreUtils
  Locale::Maketext 1.06
 +Locale::Maketext::Fuzzy 0.11
  Locale::Maketext::Lexicon 0.32
 -Locale::Maketext::Fuzzy
 -MIME::Entity 5.425
 +Log::Dispatch 2.30
 +Mail::Header 2.12
  Mail::Mailer 1.57
 -Email::Address
 -Text::Wrapper 
 -Time::ParseDate
 -Time::HiRes 
 -File::Temp 0.19
 -Text::Quoted 2.02
 -Tree::Simple 1.04
 -UNIVERSAL::require
 -Regexp::Common
 -Scalar::Util
 +MIME::Entity 5.504
 +Module::Refresh 0.03
  Module::Versions::Report 1.05
 -Cache::Simple::TimedExpiry
+ Encode 2.64
 -CSS::Squish 0.06
 -File::Glob
 -Devel::StackTrace 1.19
 -Text::Password::Pronounceable
 -Devel::GlobalDestruction
 -List::MoreUtils
  Net::CIDR
 +Plack 1.0002
 +Plack::Handler::Starlet
 +Regexp::Common
  Regexp::Common::net::CIDR
  Regexp::IPv6
 -.
 -
 -$deps{'MASON'} = [ text_to_hash( << '.') ];
 -HTML::Mason 1.43
 -Errno
 -Digest::MD5 2.27
 -CGI::Cookie 1.20
 +Role::Basic 0.12
 +Scalar::Util
  Storable 2.08
 -Apache::Session 1.53
 -XML::RSS 1.05
 +Symbol::Global::Name 0.04
 +Sys::Syslog 0.16
 +Text::Password::Pronounceable
 +Text::Quoted 2.07
 +Text::Template 1.44
  Text::WikiFormat 0.76
 -CSS::Squish 0.06
 -Devel::StackTrace 1.19
 -JSON
 -IPC::Run3
 -.
 -
 -$deps{'PSGI'} = [ text_to_hash( << '.') ];
 -CGI 3.38
 -CGI::PSGI 0.12
 -HTML::Mason::PSGIHandler 0.52
 -Plack 0.9971
 -Plack::Handler::Starlet
 -CGI::Emulate::PSGI
 +Text::Wrapper
 +Time::HiRes
 +Time::ParseDate
 +Tree::Simple 1.04
 +UNIVERSAL::require
 +XML::RSS 1.05
  .
 -set_dep( PSGI => CGI => 4.00 ) if $] > 5.019003;
 -
 +set_dep( CORE => 'Symbol::Global::Name' => 0.05 ) if $] >= 5.019003;
 +set_dep( CORE => CGI => 4.00 )                    if $] > 5.019003;
  
  $deps{'MAILGATE'} = [ text_to_hash( << '.') ];
 -Getopt::Long
 -LWP::UserAgent
 -Pod::Usage
 -.
 -
 -$deps{'SSL-MAILGATE'} = [ text_to_hash( << '.') ];
  Crypt::SSLeay
 -Net::SSL
 -LWP::UserAgent 6.0
 +Getopt::Long
  LWP::Protocol::https
 +LWP::UserAgent 6.0
  Mozilla::CA
 +Net::SSL
 +Pod::Usage
  .
  
  $deps{'CLI'} = [ text_to_hash( << '.') ];
diff --cc t/shredder/02cfs.t
index 0000000,60dbbd3..94007e8
mode 000000,100644..100644
--- a/t/shredder/02cfs.t
+++ b/t/shredder/02cfs.t
@@@ -1,0 -1,49 +1,43 @@@
+ 
+ use strict;
+ use warnings;
+ 
+ use Test::Deep;
+ use File::Spec;
 -use Test::More tests => 5 + 1; # plus one for warnings check
 -use RT::Test ();
++use RT::Test::Shredder tests => 5;
++my $test = "RT::Test::Shredder";
+ 
 -BEGIN {
 -    my $shredder_utils = RT::Test::get_relocatable_file('utils.pl',
 -        File::Spec->curdir());
 -    require $shredder_utils;
 -}
 -init_db();
 -create_savepoint('clean');
++$test->create_savepoint('clean');
+ 
+ my $cf = RT::Test->load_or_create_custom_field(
+     Name        => "Favorite Color",
+     LookupType  => "RT::Queue-RT::Ticket",
+     Type        => "FreeformSingle",
+ );
+ ok $cf->id, "Created ticket CF";
 -create_savepoint('clean_with_cf');
++$test->create_savepoint('clean_with_cf');
+ 
+ diag 'global ticket custom field';
+ {
+     my $global_queue = RT::Queue->new(RT->SystemUser);
+     my ($ok, $msg) = $cf->AddToObject($global_queue);
+     ok $ok, "Added ticket CF globally: $msg";
+ 
 -	my $shredder = shredder_new();
 -	$shredder->PutObjects( Objects => $cf );
 -	$shredder->WipeoutAll;
 -	cmp_deeply( dump_current_and_savepoint('clean'), "current DB equal to savepoint");
++    my $shredder = $test->shredder_new();
++    $shredder->PutObjects( Objects => $cf );
++    $shredder->WipeoutAll;
++    cmp_deeply( $test->dump_current_and_savepoint('clean'), "current DB equal to savepoint");
+ }
+ 
+ diag 'queue-specific ticket custom field';
+ {
 -    restore_savepoint('clean_with_cf');
++    $test->restore_savepoint('clean_with_cf');
+     my $general = RT::Test->load_or_create_queue( Name => 'General' );
+     my ($ok, $msg) = $cf->AddToObject($general);
+     ok $ok, "Added ticket CF to General queue: $msg";
+ 
 -	my $shredder = shredder_new();
 -	$shredder->PutObjects( Objects => $cf );
 -	$shredder->WipeoutAll;
 -	cmp_deeply( dump_current_and_savepoint('clean'), "current DB equal to savepoint");
++    my $shredder = $test->shredder_new();
++    $shredder->PutObjects( Objects => $cf );
++    $shredder->WipeoutAll;
++    cmp_deeply( $test->dump_current_and_savepoint('clean'), "current DB equal to savepoint");
+ }

-----------------------------------------------------------------------


More information about the rt-commit mailing list