Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
bugzilla
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
etersoft
bugzilla
Commits
9b37668c
Commit
9b37668c
authored
Jul 13, 2010
by
Max Kanat-Alexander
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Bug 577765: Allow XML-RPC to accept multiple positional parameters
r=ghendricks, a=mkanat
parent
5b82a3b7
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
12 additions
and
10 deletions
+12
-10
XMLRPC.pm
Bugzilla/WebService/Server/XMLRPC.pm
+8
-6
Util.pm
Bugzilla/WebService/Util.pm
+4
-4
No files found.
Bugzilla/WebService/Server/XMLRPC.pm
View file @
9b37668c
...
...
@@ -152,13 +152,15 @@ use Bugzilla::WebService::Util qw(taint_data);
sub
paramsin
{
my
$self
=
shift
;
return
$self
->
{
bz_params_in
}
if
$self
->
{
bz_params_in
};
my
$params
=
$self
->
SUPER::
paramsin
(
@_
);
if
(
$self
->
{
_bz_do_taint
})
{
taint_data
(
$params
);
if
(
!
$self
->
{
bz_params_in
})
{
my
@params
=
$self
->
SUPER::
paramsin
(
@_
);
if
(
$self
->
{
_bz_do_taint
})
{
taint_data
(
@params
);
}
$self
->
{
bz_params_in
}
=
\
@params
;
}
$self
->
{
bz_params_in
}
=
$params
;
return
$self
->
{
bz_params_in
}
;
my
$params
=
$self
->
{
bz_params_in
}
;
return
wantarray
?
@$params
:
$params
->
[
0
]
;
}
1
;
...
...
Bugzilla/WebService/Util.pm
View file @
9b37668c
...
...
@@ -52,13 +52,13 @@ sub filter ($$) {
}
sub
taint_data
{
my
$params
=
shift
;
return
if
!
$
params
;
my
@params
=
@_
;
return
if
!
@
params
;
# Though this is a private function, it hasn't changed since 2004 and
# should be safe to use, and prevents us from having to write it ourselves
# or require another module to do it.
Test::Taint::
_deeply_traverse
(
\&
_delete_bad_keys
,
$
params
);
Test::Taint::
taint_deeply
(
$
params
);
Test::Taint::
_deeply_traverse
(
\&
_delete_bad_keys
,
\
@
params
);
Test::Taint::
taint_deeply
(
\
@
params
);
}
sub
_delete_bad_keys
{
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment