diff options
author | Dave Lawrence <dlawrence@mozilla.com> | 2012-10-16 22:57:15 +0200 |
---|---|---|
committer | Dave Lawrence <dlawrence@mozilla.com> | 2012-10-16 22:57:15 +0200 |
commit | e377a5b02799540d3a9df0fbb1f6fae90f8d9a5c (patch) | |
tree | c3f8bd0f0757b0a8c5b85edfbbe1a3998ddc1232 /Bugzilla/WebService/Server | |
parent | af38912df5c0f57ad40377119b91dd03d8f9b520 (diff) | |
download | bugzilla-e377a5b02799540d3a9df0fbb1f6fae90f8d9a5c.tar.gz bugzilla-e377a5b02799540d3a9df0fbb1f6fae90f8d9a5c.tar.xz |
Bug 577329 - WebServices should filter email addresses same as the web UI as users are not always required to login
r/a=LpSolit
Diffstat (limited to 'Bugzilla/WebService/Server')
-rw-r--r-- | Bugzilla/WebService/Server/JSONRPC.pm | 5 | ||||
-rw-r--r-- | Bugzilla/WebService/Server/XMLRPC.pm | 7 |
2 files changed, 11 insertions, 1 deletions
diff --git a/Bugzilla/WebService/Server/JSONRPC.pm b/Bugzilla/WebService/Server/JSONRPC.pm index 46dd6b8da..a0de6af77 100644 --- a/Bugzilla/WebService/Server/JSONRPC.pm +++ b/Bugzilla/WebService/Server/JSONRPC.pm @@ -26,7 +26,7 @@ BEGIN { use Bugzilla::Error; use Bugzilla::WebService::Constants; use Bugzilla::WebService::Util qw(taint_data); -use Bugzilla::Util qw(correct_urlbase trim disable_utf8); +use Bugzilla::Util; use HTTP::Message; use MIME::Base64 qw(decode_base64 encode_base64); @@ -209,6 +209,9 @@ sub type { utf8::encode($value) if utf8::is_utf8($value); $retval = encode_base64($value, ''); } + elsif ($type eq 'email' && Bugzilla->params->{'webservice_email_filter'}) { + $retval = email_filter($value); + } return $retval; } diff --git a/Bugzilla/WebService/Server/XMLRPC.pm b/Bugzilla/WebService/Server/XMLRPC.pm index 22396bce1..a888382b7 100644 --- a/Bugzilla/WebService/Server/XMLRPC.pm +++ b/Bugzilla/WebService/Server/XMLRPC.pm @@ -19,6 +19,7 @@ if ($ENV{MOD_PERL}) { } use Bugzilla::WebService::Constants; +use Bugzilla::Util; # Allow WebService methods to call XMLRPC::Lite's type method directly BEGIN { @@ -30,6 +31,12 @@ BEGIN { $value = Bugzilla::WebService::Server->datetime_format_outbound($value); $value =~ s/-//g; } + elsif ($type eq 'email') { + $type = 'string'; + if (Bugzilla->params->{'webservice_email_filter'}) { + $value = email_filter($value); + } + } return XMLRPC::Data->type($type)->value($value); }; } |