Dashes not allowed in XML-RPC method names; also, RPC::XML::Function is dead

Bug #1050596 reported by Lebbeous Fogle-Weekley
14
This bug affects 2 people
Affects Status Importance Assigned to Milestone
Evergreen
Fix Released
Medium
Unassigned
2.2
Fix Released
Medium
Unassigned
2.3
Fix Released
Medium
Unassigned

Bug Description

Affecting all versions of Evergreen.

Credit to Michael Smith at Equinox Software for figuring this out the hard way.

I don't know about other client libaries, but recent versions of Perl's RPC::XML actually validate method names now, meaning that clients with too new a version of RPC::XML won't be able to talk to Evergreen via XML-RPC anymore.

Solutions for new versions of Evergreen aren't that hard to imagine, but it's a little bit less clear what to do about old versions of Evergreen with new XML-RPC clients.

To be clear, RPC::XML is right to be stricter, and our method names have been incompatible with XML-RPC spec the whole time. :-/

16:00 < senator> hey fun (new?) wrinkle to the relationship between RPC::XML
                 and evergreen as the former has new releases:
16:01 < senator> somewhere between 0.73 and 0.77, the author of RPC::XML made
                 his code a little stricter about sanitizing the methodname, at
                 least in the client request code if not elsewhere.
16:01 < senator> turns out that - is an invalid character for a method name in
                 the XML-RPC spec
16:01 < senator> and every single evergreen method has a - in the name
16:02 < senator> anybody already know this and thought about it before i take
                 it to LP?
16:02 < eeevil> *groan*
16:03 * eeevil has flashbacks to The Great JSON Comment Purging Of Ought-Six
16:03 < senator> heh
16:05 < gmcharlt> senator: all hail open_ils.auth_complete !

Revision history for this message
Lebbeous Fogle-Weekley (lebbeous) wrote :

Solutions should cover bug 1038335 at the same time.

Revision history for this message
Lebbeous Fogle-Weekley (lebbeous) wrote :

Here's a branch with two commits, the first addressing bug 1038335, the second addressing this one.

http://git.evergreen-ils.org/?p=working/Evergreen.git;a=shortlog;h=refs/heads/collab/senator/xmlrpc-fixes

tags: added: pullrequest
Revision history for this message
Jason Stephenson (jstephenson) wrote :

Signed off with an additional commit to remove unneeded and erroring reference to RPC::XML::Method.

http://git.evergreen-ils.org/?p=working/Evergreen.git;a=shortlog;h=refs/heads/collab/dyrcona/xmlrpc-fixes

Changed in evergreen:
status: New → Confirmed
Pasi Kallinen (paxed)
tags: added: signedoff
Ben Shum (bshum)
Changed in evergreen:
milestone: none → 2.4.0-alpha
Revision history for this message
Dan Scott (denials) wrote :

Merge conflicts fixed for master and rel_2_3, and committed and backported all the way back to rel_2_2. Thanks everyone.

summary: - Dashes not allowed in XML-RPC method names
+ Dashes not allowed in XML-RPC method names; also, RPC::XML::Function is
+ dead
Changed in evergreen:
status: Confirmed → Fix Committed
Ben Shum (bshum)
Changed in evergreen:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.