| ofs | hex dump | ascii |
|---|
| 0000 | 70 61 63 6b 61 67 65 2e 78 6d 6c 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | package.xml..................... |
| 0020 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0040 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0060 | 00 00 00 00 31 30 30 36 34 34 20 00 20 20 32 30 31 30 20 00 20 20 20 37 36 34 20 00 20 20 20 20 | ....100644....2010.....764...... |
| 0080 | 20 20 20 33 32 31 33 20 20 37 35 34 36 36 36 37 35 36 30 20 20 20 36 33 37 33 20 00 00 00 00 00 | ...3213..7546667560...6373...... |
| 00a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 00c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 00e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0100 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0120 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0140 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0160 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0180 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 01a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 01c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 01e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0200 | 3c 3f 78 6d 6c 20 76 65 72 73 69 6f 6e 3d 22 31 2e 30 22 20 65 6e 63 6f 64 69 6e 67 3d 22 49 53 | <?xml.version="1.0".encoding="IS |
| 0220 | 4f 2d 38 38 35 39 2d 31 22 20 3f 3e 0a 3c 70 61 63 6b 61 67 65 20 76 65 72 73 69 6f 6e 3d 22 31 | O-8859-1".?>.<package.version="1 |
| 0240 | 2e 30 22 3e 0a 20 20 3c 6e 61 6d 65 3e 58 4d 4c 5f 52 50 43 3c 2f 6e 61 6d 65 3e 0a 20 20 3c 73 | .0">...<name>XML_RPC</name>...<s |
| 0260 | 75 6d 6d 61 72 79 3e 50 48 50 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 6f 66 20 74 68 65 | ummary>PHP.implementation.of.the |
| 0280 | 20 58 4d 4c 2d 52 50 43 20 70 72 6f 74 6f 63 6f 6c 3c 2f 73 75 6d 6d 61 72 79 3e 0a 20 20 3c 64 | .XML-RPC.protocol</summary>...<d |
| 02a0 | 65 73 63 72 69 70 74 69 6f 6e 3e 54 68 69 73 20 69 73 20 61 20 50 45 41 52 2d 69 66 69 65 64 20 | escription>This.is.a.PEAR-ified. |
| 02c0 | 76 65 72 73 69 6f 6e 20 6f 66 20 55 73 65 66 75 6c 20 69 6e 63 27 73 20 58 4d 4c 2d 52 50 43 0a | version.of.Useful.inc's.XML-RPC. |
| 02e0 | 66 6f 72 20 50 48 50 2e 20 20 49 74 20 68 61 73 20 73 75 70 70 6f 72 74 20 66 6f 72 20 48 54 54 | for.PHP...It.has.support.for.HTT |
| 0300 | 50 20 74 72 61 6e 73 70 6f 72 74 2c 20 70 72 6f 78 69 65 73 20 61 6e 64 20 61 75 74 68 65 6e 74 | P.transport,.proxies.and.authent |
| 0320 | 69 63 61 74 69 6f 6e 2e 3c 2f 64 65 73 63 72 69 70 74 69 6f 6e 3e 0a 20 20 3c 6d 61 69 6e 74 61 | ication.</description>...<mainta |
| 0340 | 69 6e 65 72 73 3e 0a 20 20 20 20 3c 6d 61 69 6e 74 61 69 6e 65 72 3e 0a 20 20 20 20 20 20 3c 75 | iners>.....<maintainer>.......<u |
| 0360 | 73 65 72 3e 73 73 62 3c 2f 75 73 65 72 3e 0a 20 20 20 20 20 20 3c 6e 61 6d 65 3e 53 74 69 67 20 | ser>ssb</user>.......<name>Stig. |
| 0380 | 53 e6 74 68 65 72 20 42 61 6b 6b 65 6e 3c 2f 6e 61 6d 65 3e 0a 20 20 20 20 20 20 3c 65 6d 61 69 | S.ther.Bakken</name>.......<emai |
| 03a0 | 6c 3e 73 74 69 67 40 70 68 70 2e 6e 65 74 3c 2f 65 6d 61 69 6c 3e 0a 20 20 20 20 20 20 3c 72 6f | l>stig@php.net</email>.......<ro |
| 03c0 | 6c 65 3e 6c 65 61 64 3c 2f 72 6f 6c 65 3e 0a 20 20 20 20 3c 2f 6d 61 69 6e 74 61 69 6e 65 72 3e | le>lead</role>.....</maintainer> |
| 03e0 | 0a 20 20 3c 2f 6d 61 69 6e 74 61 69 6e 65 72 73 3e 0a 20 20 3c 72 65 6c 65 61 73 65 3e 0a 20 20 | ...</maintainers>...<release>... |
| 0400 | 20 20 3c 76 65 72 73 69 6f 6e 3e 31 2e 30 2e 34 3c 2f 76 65 72 73 69 6f 6e 3e 0a 20 20 20 20 3c | ..<version>1.0.4</version>.....< |
| 0420 | 64 61 74 65 3e 32 30 30 32 2d 31 30 2d 30 32 3c 2f 64 61 74 65 3e 0a 20 20 20 20 3c 6c 69 63 65 | date>2002-10-02</date>.....<lice |
| 0440 | 6e 73 65 3e 50 48 50 20 4c 69 63 65 6e 73 65 3c 2f 6c 69 63 65 6e 73 65 3e 0a 20 20 20 20 3c 73 | nse>PHP.License</license>.....<s |
| 0460 | 74 61 74 65 3e 73 74 61 62 6c 65 3c 2f 73 74 61 74 65 3e 0a 20 20 20 20 3c 6e 6f 74 65 73 3e 2a | tate>stable</state>.....<notes>* |
| 0480 | 20 61 64 64 65 64 20 48 54 54 50 20 70 72 6f 78 79 20 61 75 74 68 6f 72 69 7a 61 74 69 6f 6e 20 | .added.HTTP.proxy.authorization. |
| 04a0 | 73 75 70 70 6f 72 74 20 28 74 68 61 6e 6b 73 20 74 6f 20 41 72 6e 61 75 64 20 4c 69 6d 62 6f 75 | support.(thanks.to.Arnaud.Limbou |
| 04c0 | 72 67 29 3c 2f 6e 6f 74 65 73 3e 0a 20 20 20 20 3c 66 69 6c 65 6c 69 73 74 3e 0a 20 20 20 20 20 | rg)</notes>.....<filelist>...... |
| 04e0 | 20 3c 66 69 6c 65 20 72 6f 6c 65 3d 22 70 68 70 22 20 62 61 73 65 69 6e 73 74 61 6c 6c 64 69 72 | .<file.role="php".baseinstalldir |
| 0500 | 3d 22 58 4d 4c 22 20 6d 64 35 73 75 6d 3d 22 34 34 34 36 65 34 62 66 37 31 32 33 32 65 30 39 64 | ="XML".md5sum="4446e4bf71232e09d |
| 0520 | 39 33 37 30 39 64 38 35 34 63 63 34 36 63 39 22 20 6e 61 6d 65 3d 22 52 50 43 2e 70 68 70 22 2f | 93709d854cc46c9".name="RPC.php"/ |
| 0540 | 3e 0a 20 20 20 20 20 20 3c 66 69 6c 65 20 72 6f 6c 65 3d 22 70 68 70 22 20 62 61 73 65 69 6e 73 | >.......<file.role="php".baseins |
| 0560 | 74 61 6c 6c 64 69 72 3d 22 58 4d 4c 2f 52 50 43 22 20 6d 64 35 73 75 6d 3d 22 65 34 66 37 64 32 | talldir="XML/RPC".md5sum="e4f7d2 |
| 0580 | 36 38 66 38 62 61 63 30 63 63 62 33 39 62 39 36 37 62 33 33 61 38 37 62 35 64 22 20 6e 61 6d 65 | 68f8bac0ccb39b967b33a87b5d".name |
| 05a0 | 3d 22 53 65 72 76 65 72 2e 70 68 70 22 2f 3e 0a 20 20 20 20 3c 2f 66 69 6c 65 6c 69 73 74 3e 0a | ="Server.php"/>.....</filelist>. |
| 05c0 | 20 20 3c 2f 72 65 6c 65 61 73 65 3e 0a 20 20 3c 63 68 61 6e 67 65 6c 6f 67 3e 0a 20 20 20 20 3c | ..</release>...<changelog>.....< |
| 05e0 | 72 65 6c 65 61 73 65 3e 0a 20 20 20 20 20 20 3c 76 65 72 73 69 6f 6e 3e 31 2e 30 2e 33 3c 2f 76 | release>.......<version>1.0.3</v |
| 0600 | 65 72 73 69 6f 6e 3e 0a 20 20 20 20 20 20 3c 64 61 74 65 3e 32 30 30 32 2d 30 35 2d 31 39 3c 2f | ersion>.......<date>2002-05-19</ |
| 0620 | 64 61 74 65 3e 0a 20 20 20 20 20 20 3c 73 74 61 74 65 3e 73 74 61 62 6c 65 3c 2f 73 74 61 74 65 | date>.......<state>stable</state |
| 0640 | 3e 0a 20 20 20 20 20 20 3c 6e 6f 74 65 73 3e 2a 20 66 69 78 20 62 75 67 20 77 68 65 6e 20 70 61 | >.......<notes>*.fix.bug.when.pa |
| 0660 | 72 73 69 6e 67 20 72 65 73 70 6f 6e 73 65 73 20 77 69 74 68 20 62 6f 6f 6c 65 61 6e 20 74 79 70 | rsing.responses.with.boolean.typ |
| 0680 | 65 73 0a 0a 3c 2f 6e 6f 74 65 73 3e 0a 20 20 20 20 3c 2f 72 65 6c 65 61 73 65 3e 0a 20 20 20 20 | es..</notes>.....</release>..... |
| 06a0 | 3c 72 65 6c 65 61 73 65 3e 0a 20 20 20 20 20 20 3c 76 65 72 73 69 6f 6e 3e 31 2e 30 2e 32 3c 2f | <release>.......<version>1.0.2</ |
| 06c0 | 76 65 72 73 69 6f 6e 3e 0a 20 20 20 20 20 20 3c 64 61 74 65 3e 32 30 30 32 2d 30 34 2d 31 36 3c | version>.......<date>2002-04-16< |
| 06e0 | 2f 64 61 74 65 3e 0a 20 20 20 20 20 20 3c 73 74 61 74 65 3e 73 74 61 62 6c 65 3c 2f 73 74 61 74 | /date>.......<state>stable</stat |
| 0700 | 65 3e 0a 20 20 20 20 20 20 3c 6e 6f 74 65 73 3e 2a 20 45 5f 41 4c 4c 20 66 69 78 65 73 0a 2a 20 | e>.......<notes>*.E_ALL.fixes.*. |
| 0720 | 66 69 78 20 48 54 54 50 20 72 65 73 70 6f 6e 73 65 20 68 65 61 64 65 72 20 70 61 72 73 69 6e 67 | fix.HTTP.response.header.parsing |
| 0740 | 0a 0a 3c 2f 6e 6f 74 65 73 3e 0a 20 20 20 20 3c 2f 72 65 6c 65 61 73 65 3e 0a 20 20 20 20 3c 72 | ..</notes>.....</release>.....<r |
| 0760 | 65 6c 65 61 73 65 3e 0a 20 20 20 20 20 20 3c 76 65 72 73 69 6f 6e 3e 31 2e 30 2e 31 3c 2f 76 65 | elease>.......<version>1.0.1</ve |
| 0780 | 72 73 69 6f 6e 3e 0a 20 20 20 20 20 20 3c 64 61 74 65 3e 32 30 30 31 2d 30 39 2d 32 35 3c 2f 64 | rsion>.......<date>2001-09-25</d |
| 07a0 | 61 74 65 3e 0a 20 20 20 20 20 20 3c 73 74 61 74 65 3e 73 74 61 62 6c 65 3c 2f 73 74 61 74 65 3e | ate>.......<state>stable</state> |
| 07c0 | 0a 20 20 20 20 20 20 3c 6e 6f 74 65 73 3e 54 68 69 73 20 69 73 20 61 20 50 45 41 52 2d 69 66 69 | .......<notes>This.is.a.PEAR-ifi |
| 07e0 | 65 64 20 76 65 72 73 69 6f 6e 20 6f 66 20 55 73 65 66 75 6c 20 49 6e 63 27 73 20 31 2e 30 2e 31 | ed.version.of.Useful.Inc's.1.0.1 |
| 0800 | 20 72 65 6c 65 61 73 65 2e 0a 49 6e 63 6c 75 64 65 73 20 61 6e 20 75 72 67 65 6e 74 20 73 65 63 | .release..Includes.an.urgent.sec |
| 0820 | 75 72 69 74 79 20 66 69 78 20 69 64 65 6e 74 69 66 69 65 64 20 62 79 20 44 61 6e 20 4c 69 62 62 | urity.fix.identified.by.Dan.Libb |
| 0840 | 79 20 26 6c 74 3b 64 61 6e 40 6c 69 62 62 79 2e 63 6f 6d 26 67 74 3b 2e 0a 3c 2f 6e 6f 74 65 73 | y.<dan@libby.com>..</notes |
| 0860 | 3e 0a 20 20 20 20 3c 2f 72 65 6c 65 61 73 65 3e 0a 20 20 3c 2f 63 68 61 6e 67 65 6c 6f 67 3e 0a | >.....</release>...</changelog>. |
| 0880 | 3c 2f 70 61 63 6b 61 67 65 3e 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | </package>...................... |
| 08a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 08c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 08e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0900 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0920 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0940 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0960 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0980 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 09a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 09c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 09e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0a00 | 58 4d 4c 5f 52 50 43 2d 31 2e 30 2e 34 2f 52 50 43 2e 70 68 70 00 00 00 00 00 00 00 00 00 00 00 | XML_RPC-1.0.4/RPC.php........... |
| 0a20 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0a40 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0a60 | 00 00 00 00 31 30 30 36 34 34 20 00 20 20 32 30 31 30 20 00 20 20 20 37 36 34 20 00 20 20 20 20 | ....100644....2010.....764...... |
| 0a80 | 20 31 30 31 34 32 34 20 20 37 35 34 36 36 36 30 32 37 33 20 20 20 37 32 35 32 20 00 00 00 00 00 | .101424..7546660273...7252...... |
| 0aa0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0ac0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0ae0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0b00 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0b20 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0b40 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0b60 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0b80 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0ba0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0bc0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0be0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0c00 | 3c 3f 70 68 70 0a 2f 2f 20 62 79 20 45 64 64 20 44 75 6d 62 69 6c 6c 20 28 43 29 20 31 39 39 39 | <?php.//.by.Edd.Dumbill.(C).1999 |
| 0c20 | 2d 32 30 30 31 0a 2f 2f 20 3c 65 64 64 40 75 73 65 66 75 6c 69 6e 63 2e 63 6f 6d 3e 0a 2f 2f 20 | -2001.//.<edd@usefulinc.com>.//. |
| 0c40 | 24 49 64 3a 20 52 50 43 2e 70 68 70 2c 76 20 31 2e 31 31 20 32 30 30 32 2f 31 30 2f 30 32 20 32 | $Id:.RPC.php,v.1.11.2002/10/02.2 |
| 0c60 | 31 3a 31 30 3a 31 39 20 73 73 62 20 45 78 70 20 24 0a 0a 2f 2f 20 4c 69 63 65 6e 73 65 20 69 73 | 1:10:19.ssb.Exp.$..//.License.is |
| 0c80 | 20 67 72 61 6e 74 65 64 20 74 6f 20 75 73 65 20 6f 72 20 6d 6f 64 69 66 79 20 74 68 69 73 20 73 | .granted.to.use.or.modify.this.s |
| 0ca0 | 6f 66 74 77 61 72 65 20 28 22 58 4d 4c 2d 52 50 43 20 66 6f 72 20 50 48 50 22 29 0a 2f 2f 20 66 | oftware.("XML-RPC.for.PHP").//.f |
| 0cc0 | 6f 72 20 63 6f 6d 6d 65 72 63 69 61 6c 20 6f 72 20 6e 6f 6e 2d 63 6f 6d 6d 65 72 63 69 61 6c 20 | or.commercial.or.non-commercial. |
| 0ce0 | 75 73 65 20 70 72 6f 76 69 64 65 64 20 74 68 65 20 63 6f 70 79 72 69 67 68 74 20 6f 66 20 74 68 | use.provided.the.copyright.of.th |
| 0d00 | 65 20 61 75 74 68 6f 72 0a 2f 2f 20 69 73 20 70 72 65 73 65 72 76 65 64 20 69 6e 20 61 6e 79 20 | e.author.//.is.preserved.in.any. |
| 0d20 | 64 69 73 74 72 69 62 75 74 65 64 20 6f 72 20 64 65 72 69 76 61 74 69 76 65 20 77 6f 72 6b 2e 0a | distributed.or.derivative.work.. |
| 0d40 | 0a 2f 2f 20 54 48 49 53 20 53 4f 46 54 57 41 52 45 20 49 53 20 50 52 4f 56 49 44 45 44 20 42 59 | .//.THIS.SOFTWARE.IS.PROVIDED.BY |
| 0d60 | 20 54 48 45 20 41 55 54 48 4f 52 20 60 60 41 53 20 49 53 27 27 20 41 4e 44 20 41 4e 59 20 45 58 | .THE.AUTHOR.``AS.IS''.AND.ANY.EX |
| 0d80 | 50 52 45 53 53 45 44 20 4f 52 0a 2f 2f 20 49 4d 50 4c 49 45 44 20 57 41 52 52 41 4e 54 49 45 53 | PRESSED.OR.//.IMPLIED.WARRANTIES |
| 0da0 | 2c 20 49 4e 43 4c 55 44 49 4e 47 2c 20 42 55 54 20 4e 4f 54 20 4c 49 4d 49 54 45 44 20 54 4f 2c | ,.INCLUDING,.BUT.NOT.LIMITED.TO, |
| 0dc0 | 20 54 48 45 20 49 4d 50 4c 49 45 44 20 57 41 52 52 41 4e 54 49 45 53 0a 2f 2f 20 4f 46 20 4d 45 | .THE.IMPLIED.WARRANTIES.//.OF.ME |
| 0de0 | 52 43 48 41 4e 54 41 42 49 4c 49 54 59 20 41 4e 44 20 46 49 54 4e 45 53 53 20 46 4f 52 20 41 20 | RCHANTABILITY.AND.FITNESS.FOR.A. |
| 0e00 | 50 41 52 54 49 43 55 4c 41 52 20 50 55 52 50 4f 53 45 20 41 52 45 20 44 49 53 43 4c 41 49 4d 45 | PARTICULAR.PURPOSE.ARE.DISCLAIME |
| 0e20 | 44 2e 0a 2f 2f 20 49 4e 20 4e 4f 20 45 56 45 4e 54 20 53 48 41 4c 4c 20 54 48 45 20 41 55 54 48 | D..//.IN.NO.EVENT.SHALL.THE.AUTH |
| 0e40 | 4f 52 20 42 45 20 4c 49 41 42 4c 45 20 46 4f 52 20 41 4e 59 20 44 49 52 45 43 54 2c 20 49 4e 44 | OR.BE.LIABLE.FOR.ANY.DIRECT,.IND |
| 0e60 | 49 52 45 43 54 2c 0a 2f 2f 20 49 4e 43 49 44 45 4e 54 41 4c 2c 20 53 50 45 43 49 41 4c 2c 20 45 | IRECT,.//.INCIDENTAL,.SPECIAL,.E |
| 0e80 | 58 45 4d 50 4c 41 52 59 2c 20 4f 52 20 43 4f 4e 53 45 51 55 45 4e 54 49 41 4c 20 44 41 4d 41 47 | XEMPLARY,.OR.CONSEQUENTIAL.DAMAG |
| 0ea0 | 45 53 20 28 49 4e 43 4c 55 44 49 4e 47 2c 20 42 55 54 0a 2f 2f 20 4e 4f 54 20 4c 49 4d 49 54 45 | ES.(INCLUDING,.BUT.//.NOT.LIMITE |
| 0ec0 | 44 20 54 4f 2c 20 50 52 4f 43 55 52 45 4d 45 4e 54 20 4f 46 20 53 55 42 53 54 49 54 55 54 45 20 | D.TO,.PROCUREMENT.OF.SUBSTITUTE. |
| 0ee0 | 47 4f 4f 44 53 20 4f 52 20 53 45 52 56 49 43 45 53 3b 20 4c 4f 53 53 20 4f 46 20 55 53 45 2c 0a | GOODS.OR.SERVICES;.LOSS.OF.USE,. |
| 0f00 | 2f 2f 20 44 41 54 41 2c 20 4f 52 20 50 52 4f 46 49 54 53 3b 20 4f 52 20 42 55 53 49 4e 45 53 53 | //.DATA,.OR.PROFITS;.OR.BUSINESS |
| 0f20 | 20 49 4e 54 45 52 52 55 50 54 49 4f 4e 29 20 48 4f 57 45 56 45 52 20 43 41 55 53 45 44 20 41 4e | .INTERRUPTION).HOWEVER.CAUSED.AN |
| 0f40 | 44 20 4f 4e 20 41 4e 59 0a 2f 2f 20 54 48 45 4f 52 59 20 4f 46 20 4c 49 41 42 49 4c 49 54 59 2c | D.ON.ANY.//.THEORY.OF.LIABILITY, |
| 0f60 | 20 57 48 45 54 48 45 52 20 49 4e 20 43 4f 4e 54 52 41 43 54 2c 20 53 54 52 49 43 54 20 4c 49 41 | .WHETHER.IN.CONTRACT,.STRICT.LIA |
| 0f80 | 42 49 4c 49 54 59 2c 20 4f 52 20 54 4f 52 54 0a 2f 2f 20 28 49 4e 43 4c 55 44 49 4e 47 20 4e 45 | BILITY,.OR.TORT.//.(INCLUDING.NE |
| 0fa0 | 47 4c 49 47 45 4e 43 45 20 4f 52 20 4f 54 48 45 52 57 49 53 45 29 20 41 52 49 53 49 4e 47 20 49 | GLIGENCE.OR.OTHERWISE).ARISING.I |
| 0fc0 | 4e 20 41 4e 59 20 57 41 59 20 4f 55 54 20 4f 46 20 54 48 45 20 55 53 45 20 4f 46 0a 2f 2f 20 54 | N.ANY.WAY.OUT.OF.THE.USE.OF.//.T |
| 0fe0 | 48 49 53 20 53 4f 46 54 57 41 52 45 2c 20 45 56 45 4e 20 49 46 20 41 44 56 49 53 45 44 20 4f 46 | HIS.SOFTWARE,.EVEN.IF.ADVISED.OF |
| 1000 | 20 54 48 45 20 50 4f 53 53 49 42 49 4c 49 54 59 20 4f 46 20 53 55 43 48 20 44 41 4d 41 47 45 2e | .THE.POSSIBILITY.OF.SUCH.DAMAGE. |
| 1020 | 0a 0a 2f 2f 20 41 64 61 70 74 65 64 20 74 6f 20 50 45 41 52 20 73 74 61 6e 64 61 72 64 73 20 62 | ..//.Adapted.to.PEAR.standards.b |
| 1040 | 79 20 53 74 69 67 20 53 e6 74 68 65 72 20 42 61 6b 6b 65 6e 20 3c 73 74 69 67 40 70 68 70 2e 6e | y.Stig.S.ther.Bakken.<stig@php.n |
| 1060 | 65 74 3e 20 61 6e 64 0a 2f 2f 20 4d 61 72 74 69 6e 20 4a 61 6e 73 65 6e 20 3c 6d 6a 40 70 68 70 | et>.and.//.Martin.Jansen.<mj@php |
| 1080 | 2e 6e 65 74 3e 0a 0a 72 65 71 75 69 72 65 5f 6f 6e 63 65 20 22 50 45 41 52 2e 70 68 70 22 3b 0a | .net>..require_once."PEAR.php";. |
| 10a0 | 0a 69 66 20 28 21 66 75 6e 63 74 69 6f 6e 5f 65 78 69 73 74 73 28 27 78 6d 6c 5f 70 61 72 73 65 | .if.(!function_exists('xml_parse |
| 10c0 | 72 5f 63 72 65 61 74 65 27 29 29 20 7b 0a 2f 2f 20 57 69 6e 20 33 32 20 66 69 78 2e 20 46 72 6f | r_create')).{.//.Win.32.fix..Fro |
| 10e0 | 6d 3a 20 22 4c 65 6f 20 57 65 73 74 22 20 3c 6c 77 65 73 74 40 69 6d 61 67 69 6e 65 74 2e 66 72 | m:."Leo.West".<lwest@imaginet.fr |
| 1100 | 3e 0a 20 20 20 20 69 66 28 24 57 49 4e 44 49 52 29 20 7b 0a 20 20 20 20 20 20 20 20 64 6c 28 22 | >.....if($WINDIR).{.........dl(" |
| 1120 | 70 68 70 33 5f 78 6d 6c 2e 64 6c 6c 22 29 3b 0a 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a 20 20 20 | php3_xml.dll");.....}.else.{.... |
| 1140 | 20 20 20 20 20 64 6c 28 22 78 6d 6c 2e 73 6f 22 29 3b 0a 20 20 20 20 7d 0a 7d 0a 0a 24 47 4c 4f | .....dl("xml.so");.....}.}..$GLO |
| 1160 | 42 41 4c 53 5b 27 58 4d 4c 5f 52 50 43 5f 49 34 27 5d 3d 22 69 34 22 3b 0a 24 47 4c 4f 42 41 4c | BALS['XML_RPC_I4']="i4";.$GLOBAL |
| 1180 | 53 5b 27 58 4d 4c 5f 52 50 43 5f 49 6e 74 27 5d 3d 22 69 6e 74 22 3b 0a 24 47 4c 4f 42 41 4c 53 | S['XML_RPC_Int']="int";.$GLOBALS |
| 11a0 | 5b 27 58 4d 4c 5f 52 50 43 5f 42 6f 6f 6c 65 61 6e 27 5d 3d 22 62 6f 6f 6c 65 61 6e 22 3b 0a 24 | ['XML_RPC_Boolean']="boolean";.$ |
| 11c0 | 47 4c 4f 42 41 4c 53 5b 27 58 4d 4c 5f 52 50 43 5f 44 6f 75 62 6c 65 27 5d 3d 22 64 6f 75 62 6c | GLOBALS['XML_RPC_Double']="doubl |
| 11e0 | 65 22 3b 0a 24 47 4c 4f 42 41 4c 53 5b 27 58 4d 4c 5f 52 50 43 5f 53 74 72 69 6e 67 27 5d 3d 22 | e";.$GLOBALS['XML_RPC_String']=" |
| 1200 | 73 74 72 69 6e 67 22 3b 0a 24 47 4c 4f 42 41 4c 53 5b 27 58 4d 4c 5f 52 50 43 5f 44 61 74 65 54 | string";.$GLOBALS['XML_RPC_DateT |
| 1220 | 69 6d 65 27 5d 3d 22 64 61 74 65 54 69 6d 65 2e 69 73 6f 38 36 30 31 22 3b 0a 24 47 4c 4f 42 41 | ime']="dateTime.iso8601";.$GLOBA |
| 1240 | 4c 53 5b 27 58 4d 4c 5f 52 50 43 5f 42 61 73 65 36 34 27 5d 3d 22 62 61 73 65 36 34 22 3b 0a 24 | LS['XML_RPC_Base64']="base64";.$ |
| 1260 | 47 4c 4f 42 41 4c 53 5b 27 58 4d 4c 5f 52 50 43 5f 41 72 72 61 79 27 5d 3d 22 61 72 72 61 79 22 | GLOBALS['XML_RPC_Array']="array" |
| 1280 | 3b 0a 24 47 4c 4f 42 41 4c 53 5b 27 58 4d 4c 5f 52 50 43 5f 53 74 72 75 63 74 27 5d 3d 22 73 74 | ;.$GLOBALS['XML_RPC_Struct']="st |
| 12a0 | 72 75 63 74 22 3b 0a 0a 24 47 4c 4f 42 41 4c 53 5b 27 58 4d 4c 5f 52 50 43 5f 54 79 70 65 73 27 | ruct";..$GLOBALS['XML_RPC_Types' |
| 12c0 | 5d 3d 61 72 72 61 79 28 24 47 4c 4f 42 41 4c 53 5b 27 58 4d 4c 5f 52 50 43 5f 49 34 27 5d 20 3d | ]=array($GLOBALS['XML_RPC_I4'].= |
| 12e0 | 3e 20 31 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | >.1,............................ |
| 1300 | 20 20 20 20 20 24 47 4c 4f 42 41 4c 53 5b 27 58 4d 4c 5f 52 50 43 5f 49 6e 74 27 5d 20 3d 3e 20 | .....$GLOBALS['XML_RPC_Int'].=>. |
| 1320 | 31 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | 1,.............................. |
| 1340 | 20 20 20 24 47 4c 4f 42 41 4c 53 5b 27 58 4d 4c 5f 52 50 43 5f 42 6f 6f 6c 65 61 6e 27 5d 20 3d | ...$GLOBALS['XML_RPC_Boolean'].= |
| 1360 | 3e 20 31 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | >.1,............................ |
| 1380 | 20 20 20 20 20 24 47 4c 4f 42 41 4c 53 5b 27 58 4d 4c 5f 52 50 43 5f 53 74 72 69 6e 67 27 5d 20 | .....$GLOBALS['XML_RPC_String']. |
| 13a0 | 3d 3e 20 31 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | =>.1,........................... |
| 13c0 | 20 20 20 20 20 20 24 47 4c 4f 42 41 4c 53 5b 27 58 4d 4c 5f 52 50 43 5f 44 6f 75 62 6c 65 27 5d | ......$GLOBALS['XML_RPC_Double'] |
| 13e0 | 20 3d 3e 20 31 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | .=>.1,.......................... |
| 1400 | 20 20 20 20 20 20 20 24 47 4c 4f 42 41 4c 53 5b 27 58 4d 4c 5f 52 50 43 5f 44 61 74 65 54 69 6d | .......$GLOBALS['XML_RPC_DateTim |
| 1420 | 65 27 5d 20 3d 3e 20 31 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | e'].=>.1,....................... |
| 1440 | 20 20 20 20 20 20 20 20 20 20 24 47 4c 4f 42 41 4c 53 5b 27 58 4d 4c 5f 52 50 43 5f 42 61 73 65 | ..........$GLOBALS['XML_RPC_Base |
| 1460 | 36 34 27 5d 20 3d 3e 20 31 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | 64'].=>.1,...................... |
| 1480 | 20 20 20 20 20 20 20 20 20 20 20 24 47 4c 4f 42 41 4c 53 5b 27 58 4d 4c 5f 52 50 43 5f 41 72 72 | ...........$GLOBALS['XML_RPC_Arr |
| 14a0 | 61 79 27 5d 20 3d 3e 20 32 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ay'].=>.2,...................... |
| 14c0 | 20 20 20 20 20 20 20 20 20 20 20 24 47 4c 4f 42 41 4c 53 5b 27 58 4d 4c 5f 52 50 43 5f 53 74 72 | ...........$GLOBALS['XML_RPC_Str |
| 14e0 | 75 63 74 27 5d 20 3d 3e 20 33 29 3b 0a 0a 24 47 4c 4f 42 41 4c 53 5b 27 58 4d 4c 5f 52 50 43 5f | uct'].=>.3);..$GLOBALS['XML_RPC_ |
| 1500 | 65 6e 74 69 74 69 65 73 27 5d 3d 61 72 72 61 79 28 22 71 75 6f 74 22 20 3d 3e 20 27 22 27 2c 0a | entities']=array("quot".=>.'"',. |
| 1520 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ................................ |
| 1540 | 20 20 20 22 61 6d 70 22 20 3d 3e 20 22 26 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ..."amp".=>."&",................ |
| 1560 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 6c 74 22 20 3d 3e 20 22 3c 22 2c | ...................."lt".=>."<", |
| 1580 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ................................ |
| 15a0 | 20 20 20 20 22 67 74 22 20 3d 3e 20 22 3e 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ...."gt".=>.">",................ |
| 15c0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 61 70 6f 73 22 20 3d 3e 20 22 27 | ...................."apos".=>."' |
| 15e0 | 22 29 3b 0a 0a 24 47 4c 4f 42 41 4c 53 5b 27 58 4d 4c 5f 52 50 43 5f 65 72 72 27 5d 5b 22 75 6e | ");..$GLOBALS['XML_RPC_err']["un |
| 1600 | 6b 6e 6f 77 6e 5f 6d 65 74 68 6f 64 22 5d 3d 31 3b 0a 24 47 4c 4f 42 41 4c 53 5b 27 58 4d 4c 5f | known_method"]=1;.$GLOBALS['XML_ |
| 1620 | 52 50 43 5f 73 74 72 27 5d 5b 22 75 6e 6b 6e 6f 77 6e 5f 6d 65 74 68 6f 64 22 5d 3d 22 55 6e 6b | RPC_str']["unknown_method"]="Unk |
| 1640 | 6e 6f 77 6e 20 6d 65 74 68 6f 64 22 3b 0a 24 47 4c 4f 42 41 4c 53 5b 27 58 4d 4c 5f 52 50 43 5f | nown.method";.$GLOBALS['XML_RPC_ |
| 1660 | 65 72 72 27 5d 5b 22 69 6e 76 61 6c 69 64 5f 72 65 74 75 72 6e 22 5d 3d 32 3b 0a 24 47 4c 4f 42 | err']["invalid_return"]=2;.$GLOB |
| 1680 | 41 4c 53 5b 27 58 4d 4c 5f 52 50 43 5f 73 74 72 27 5d 5b 22 69 6e 76 61 6c 69 64 5f 72 65 74 75 | ALS['XML_RPC_str']["invalid_retu |
| 16a0 | 72 6e 22 5d 3d 22 49 6e 76 61 6c 69 64 20 72 65 74 75 72 6e 20 70 61 79 6c 6f 61 64 3a 20 65 6e | rn"]="Invalid.return.payload:.en |
| 16c0 | 61 62 6c 69 6e 67 20 64 65 62 75 67 67 69 6e 67 20 74 6f 20 65 78 61 6d 69 6e 65 20 69 6e 63 6f | abling.debugging.to.examine.inco |
| 16e0 | 6d 69 6e 67 20 70 61 79 6c 6f 61 64 22 3b 0a 24 47 4c 4f 42 41 4c 53 5b 27 58 4d 4c 5f 52 50 43 | ming.payload";.$GLOBALS['XML_RPC |
| 1700 | 5f 65 72 72 27 5d 5b 22 69 6e 63 6f 72 72 65 63 74 5f 70 61 72 61 6d 73 22 5d 3d 33 3b 0a 24 47 | _err']["incorrect_params"]=3;.$G |
| 1720 | 4c 4f 42 41 4c 53 5b 27 58 4d 4c 5f 52 50 43 5f 73 74 72 27 5d 5b 22 69 6e 63 6f 72 72 65 63 74 | LOBALS['XML_RPC_str']["incorrect |
| 1740 | 5f 70 61 72 61 6d 73 22 5d 3d 22 49 6e 63 6f 72 72 65 63 74 20 70 61 72 61 6d 65 74 65 72 73 20 | _params"]="Incorrect.parameters. |
| 1760 | 70 61 73 73 65 64 20 74 6f 20 6d 65 74 68 6f 64 22 3b 0a 24 47 4c 4f 42 41 4c 53 5b 27 58 4d 4c | passed.to.method";.$GLOBALS['XML |
| 1780 | 5f 52 50 43 5f 65 72 72 27 5d 5b 22 69 6e 74 72 6f 73 70 65 63 74 5f 75 6e 6b 6e 6f 77 6e 22 5d | _RPC_err']["introspect_unknown"] |
| 17a0 | 3d 34 3b 0a 24 47 4c 4f 42 41 4c 53 5b 27 58 4d 4c 5f 52 50 43 5f 73 74 72 27 5d 5b 22 69 6e 74 | =4;.$GLOBALS['XML_RPC_str']["int |
| 17c0 | 72 6f 73 70 65 63 74 5f 75 6e 6b 6e 6f 77 6e 22 5d 3d 22 43 61 6e 27 74 20 69 6e 74 72 6f 73 70 | rospect_unknown"]="Can't.introsp |
| 17e0 | 65 63 74 3a 20 6d 65 74 68 6f 64 20 75 6e 6b 6e 6f 77 6e 22 3b 0a 24 47 4c 4f 42 41 4c 53 5b 27 | ect:.method.unknown";.$GLOBALS[' |
| 1800 | 58 4d 4c 5f 52 50 43 5f 65 72 72 27 5d 5b 22 68 74 74 70 5f 65 72 72 6f 72 22 5d 3d 35 3b 0a 24 | XML_RPC_err']["http_error"]=5;.$ |
| 1820 | 47 4c 4f 42 41 4c 53 5b 27 58 4d 4c 5f 52 50 43 5f 73 74 72 27 5d 5b 22 68 74 74 70 5f 65 72 72 | GLOBALS['XML_RPC_str']["http_err |
| 1840 | 6f 72 22 5d 3d 22 44 69 64 6e 27 74 20 72 65 63 65 69 76 65 20 32 30 30 20 4f 4b 20 66 72 6f 6d | or"]="Didn't.receive.200.OK.from |
| 1860 | 20 72 65 6d 6f 74 65 20 73 65 72 76 65 72 2e 22 3b 0a 0a 24 47 4c 4f 42 41 4c 53 5b 27 58 4d 4c | .remote.server.";..$GLOBALS['XML |
| 1880 | 5f 52 50 43 5f 64 65 66 65 6e 63 6f 64 69 6e 67 27 5d 3d 22 55 54 46 2d 38 22 3b 0a 0a 2f 2f 20 | _RPC_defencoding']="UTF-8";..//. |
| 18a0 | 6c 65 74 20 75 73 65 72 20 65 72 72 6f 72 73 20 73 74 61 72 74 20 61 74 20 38 30 30 0a 24 47 4c | let.user.errors.start.at.800.$GL |
| 18c0 | 4f 42 41 4c 53 5b 27 58 4d 4c 5f 52 50 43 5f 65 72 72 75 73 65 72 27 5d 3d 38 30 30 3b 0a 2f 2f | OBALS['XML_RPC_erruser']=800;.// |
| 18e0 | 20 6c 65 74 20 58 4d 4c 20 70 61 72 73 65 20 65 72 72 6f 72 73 20 73 74 61 72 74 20 61 74 20 31 | .let.XML.parse.errors.start.at.1 |
| 1900 | 30 30 0a 24 47 4c 4f 42 41 4c 53 5b 27 58 4d 4c 5f 52 50 43 5f 65 72 72 78 6d 6c 27 5d 3d 31 30 | 00.$GLOBALS['XML_RPC_errxml']=10 |
| 1920 | 30 3b 0a 0a 2f 2f 20 66 6f 72 6d 75 6c 61 74 65 20 62 61 63 6b 73 6c 61 73 68 65 73 20 66 6f 72 | 0;..//.formulate.backslashes.for |
| 1940 | 20 65 73 63 61 70 69 6e 67 20 72 65 67 65 78 70 0a 24 47 4c 4f 42 41 4c 53 5b 27 58 4d 4c 5f 52 | .escaping.regexp.$GLOBALS['XML_R |
| 1960 | 50 43 5f 62 61 63 6b 73 6c 61 73 68 27 5d 3d 63 68 72 28 39 32 29 2e 63 68 72 28 39 32 29 3b 0a | PC_backslash']=chr(92).chr(92);. |
| 1980 | 0a 24 47 4c 4f 42 41 4c 53 5b 27 58 4d 4c 5f 52 50 43 5f 74 77 6f 73 6c 61 73 68 27 5d 3d 24 47 | .$GLOBALS['XML_RPC_twoslash']=$G |
| 19a0 | 4c 4f 42 41 4c 53 5b 27 58 4d 4c 5f 52 50 43 5f 62 61 63 6b 73 6c 61 73 68 27 5d 20 2e 20 24 47 | LOBALS['XML_RPC_backslash']...$G |
| 19c0 | 4c 4f 42 41 4c 53 5b 27 58 4d 4c 5f 52 50 43 5f 62 61 63 6b 73 6c 61 73 68 27 5d 3b 0a 24 47 4c | LOBALS['XML_RPC_backslash'];.$GL |
| 19e0 | 4f 42 41 4c 53 5b 27 58 4d 4c 5f 52 50 43 5f 74 77 6f 73 6c 61 73 68 27 5d 3d 22 32 53 4c 53 22 | OBALS['XML_RPC_twoslash']="2SLS" |
| 1a00 | 3b 0a 2f 2f 20 75 73 65 64 20 74 6f 20 73 74 6f 72 65 20 73 74 61 74 65 20 64 75 72 69 6e 67 20 | ;.//.used.to.store.state.during. |
| 1a20 | 70 61 72 73 69 6e 67 0a 2f 2f 20 71 75 69 63 6b 20 65 78 70 6c 61 6e 61 74 69 6f 6e 20 6f 66 20 | parsing.//.quick.explanation.of. |
| 1a40 | 63 6f 6d 70 6f 6e 65 6e 74 73 3a 0a 2f 2f 20 20 20 73 74 20 2d 20 75 73 65 64 20 74 6f 20 62 75 | components:.//...st.-.used.to.bu |
| 1a60 | 69 6c 64 20 75 70 20 61 20 73 74 72 69 6e 67 20 66 6f 72 20 65 76 61 6c 75 61 74 69 6f 6e 0a 2f | ild.up.a.string.for.evaluation./ |
| 1a80 | 2f 20 20 20 61 63 20 2d 20 75 73 65 64 20 74 6f 20 61 63 63 75 6d 75 6c 61 74 65 20 76 61 6c 75 | /...ac.-.used.to.accumulate.valu |
| 1aa0 | 65 73 0a 2f 2f 20 20 20 71 74 20 2d 20 75 73 65 64 20 74 6f 20 64 65 63 69 64 65 20 69 66 20 71 | es.//...qt.-.used.to.decide.if.q |
| 1ac0 | 75 6f 74 65 73 20 61 72 65 20 6e 65 65 64 65 64 20 66 6f 72 20 65 76 61 6c 75 61 74 69 6f 6e 0a | uotes.are.needed.for.evaluation. |
| 1ae0 | 2f 2f 20 20 20 63 6d 20 2d 20 75 73 65 64 20 74 6f 20 64 65 6e 6f 74 65 20 73 74 72 75 63 74 20 | //...cm.-.used.to.denote.struct. |
| 1b00 | 6f 72 20 61 72 72 61 79 20 28 63 6f 6d 6d 61 20 6e 65 65 64 65 64 29 0a 2f 2f 20 20 20 69 73 66 | or.array.(comma.needed).//...isf |
| 1b20 | 20 2d 20 75 73 65 64 20 74 6f 20 69 6e 64 69 63 61 74 65 20 61 20 66 61 75 6c 74 0a 2f 2f 20 20 | .-.used.to.indicate.a.fault.//.. |
| 1b40 | 20 6c 76 20 2d 20 75 73 65 64 20 74 6f 20 69 6e 64 69 63 61 74 65 20 22 6c 6f 6f 6b 69 6e 67 20 | .lv.-.used.to.indicate."looking. |
| 1b60 | 66 6f 72 20 61 20 76 61 6c 75 65 22 3a 20 69 6d 70 6c 65 6d 65 6e 74 73 0a 2f 2f 20 20 20 20 20 | for.a.value":.implements.//..... |
| 1b80 | 20 20 20 74 68 65 20 6c 6f 67 69 63 20 74 6f 20 61 6c 6c 6f 77 20 76 61 6c 75 65 73 20 77 69 74 | ...the.logic.to.allow.values.wit |
| 1ba0 | 68 20 6e 6f 20 74 79 70 65 73 20 74 6f 20 62 65 20 73 74 72 69 6e 67 73 0a 2f 2f 20 20 20 70 61 | h.no.types.to.be.strings.//...pa |
| 1bc0 | 72 61 6d 73 20 2d 20 75 73 65 64 20 74 6f 20 73 74 6f 72 65 20 70 61 72 61 6d 65 74 65 72 73 20 | rams.-.used.to.store.parameters. |
| 1be0 | 69 6e 20 6d 65 74 68 6f 64 20 63 61 6c 6c 73 0a 2f 2f 20 20 20 6d 65 74 68 6f 64 20 2d 20 75 73 | in.method.calls.//...method.-.us |
| 1c00 | 65 64 20 74 6f 20 73 74 6f 72 65 20 6d 65 74 68 6f 64 20 6e 61 6d 65 0a 0a 24 47 4c 4f 42 41 4c | ed.to.store.method.name..$GLOBAL |
| 1c20 | 53 5b 27 58 4d 4c 5f 52 50 43 5f 78 68 27 5d 3d 61 72 72 61 79 28 29 3b 0a 0a 66 75 6e 63 74 69 | S['XML_RPC_xh']=array();..functi |
| 1c40 | 6f 6e 20 58 4d 4c 5f 52 50 43 5f 65 6e 74 69 74 79 5f 64 65 63 6f 64 65 28 24 73 74 72 69 6e 67 | on.XML_RPC_entity_decode($string |
| 1c60 | 29 0a 7b 0a 20 20 20 20 24 74 6f 70 3d 73 70 6c 69 74 28 22 26 22 2c 20 24 73 74 72 69 6e 67 29 | ).{.....$top=split("&",.$string) |
| 1c80 | 3b 0a 20 20 20 20 24 6f 70 3d 22 22 3b 0a 20 20 20 20 24 69 3d 30 3b 0a 20 20 20 20 77 68 69 6c | ;.....$op="";.....$i=0;.....whil |
| 1ca0 | 65 28 24 69 3c 73 69 7a 65 6f 66 28 24 74 6f 70 29 29 20 7b 0a 20 20 20 20 20 20 20 20 69 66 20 | e($i<sizeof($top)).{.........if. |
| 1cc0 | 28 65 72 65 67 28 22 5e 28 5b 23 61 2d 7a 41 2d 5a 30 2d 39 5d 2b 29 3b 22 2c 20 24 74 6f 70 5b | (ereg("^([#a-zA-Z0-9]+);",.$top[ |
| 1ce0 | 24 69 5d 2c 20 24 72 65 67 73 29 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 24 6f 70 2e 3d | $i],.$regs)).{.............$op.= |
| 1d00 | 65 72 65 67 5f 72 65 70 6c 61 63 65 28 22 5e 5b 23 61 2d 7a 41 2d 5a 30 2d 39 5d 2b 3b 22 2c 0a | ereg_replace("^[#a-zA-Z0-9]+;",. |
| 1d20 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 58 4d | ..............................XM |
| 1d40 | 4c 5f 52 50 43 5f 6c 6f 6f 6b 75 70 5f 65 6e 74 69 74 79 28 24 72 65 67 73 5b 31 5d 29 2c 0a 20 | L_RPC_lookup_entity($regs[1]),.. |
| 1d60 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 24 74 6f | .............................$to |
| 1d80 | 70 5b 24 69 5d 29 3b 0a 20 20 20 20 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a 20 20 20 20 20 20 20 | p[$i]);.........}.else.{........ |
| 1da0 | 20 20 20 20 20 69 66 20 28 24 69 3d 3d 30 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | .....if.($i==0)................. |
| 1dc0 | 24 6f 70 3d 24 74 6f 70 5b 24 69 5d 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 65 6c 73 65 0a 20 | $op=$top[$i];.............else.. |
| 1de0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 24 6f 70 2e 3d 22 26 22 20 2e 20 24 74 6f 70 5b 24 | ...............$op.="&"...$top[$ |
| 1e00 | 69 5d 3b 0a 20 20 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 20 20 24 69 2b 2b 3b 0a 20 20 20 | i];.........}..........$i++;.... |
| 1e20 | 20 7d 0a 20 20 20 20 72 65 74 75 72 6e 20 24 6f 70 3b 0a 7d 0a 0a 0a 66 75 6e 63 74 69 6f 6e 20 | .}.....return.$op;.}...function. |
| 1e40 | 58 4d 4c 5f 52 50 43 5f 6c 6f 6f 6b 75 70 5f 65 6e 74 69 74 79 28 24 65 6e 74 29 0a 7b 0a 20 20 | XML_RPC_lookup_entity($ent).{... |
| 1e60 | 20 20 67 6c 6f 62 61 6c 20 24 58 4d 4c 5f 52 50 43 5f 65 6e 74 69 74 69 65 73 3b 0a 0a 20 20 20 | ..global.$XML_RPC_entities;..... |
| 1e80 | 20 69 66 20 28 24 58 4d 4c 5f 52 50 43 5f 65 6e 74 69 74 69 65 73 5b 73 74 72 74 6f 6c 6f 77 65 | .if.($XML_RPC_entities[strtolowe |
| 1ea0 | 72 28 24 65 6e 74 29 5d 29 0a 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 24 58 4d 4c 5f 52 50 | r($ent)]).........return.$XML_RP |
| 1ec0 | 43 5f 65 6e 74 69 74 69 65 73 5b 73 74 72 74 6f 6c 6f 77 65 72 28 24 65 6e 74 29 5d 3b 0a 0a 20 | C_entities[strtolower($ent)];... |
| 1ee0 | 20 20 20 69 66 20 28 65 72 65 67 28 22 5e 23 28 5b 30 2d 39 5d 2b 29 24 22 2c 20 24 65 6e 74 2c | ...if.(ereg("^#([0-9]+)$",.$ent, |
| 1f00 | 20 24 72 65 67 73 29 29 0a 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 63 68 72 28 24 72 65 67 | .$regs)).........return.chr($reg |
| 1f20 | 73 5b 31 5d 29 3b 0a 0a 20 20 20 20 72 65 74 75 72 6e 20 22 3f 22 3b 0a 7d 0a 0a 0a 66 75 6e 63 | s[1]);......return."?";.}...func |
| 1f40 | 74 69 6f 6e 20 58 4d 4c 5f 52 50 43 5f 73 65 28 24 70 61 72 73 65 72 2c 20 24 6e 61 6d 65 2c 20 | tion.XML_RPC_se($parser,.$name,. |
| 1f60 | 24 61 74 74 72 73 29 0a 7b 0a 20 20 20 20 67 6c 6f 62 61 6c 20 24 58 4d 4c 5f 52 50 43 5f 78 68 | $attrs).{.....global.$XML_RPC_xh |
| 1f80 | 2c 20 24 58 4d 4c 5f 52 50 43 5f 44 61 74 65 54 69 6d 65 2c 20 24 58 4d 4c 5f 52 50 43 5f 53 74 | ,.$XML_RPC_DateTime,.$XML_RPC_St |
| 1fa0 | 72 69 6e 67 3b 0a 0a 20 20 20 20 73 77 69 74 63 68 28 24 6e 61 6d 65 29 20 7b 0a 20 20 20 20 63 | ring;......switch($name).{.....c |
| 1fc0 | 61 73 65 20 22 53 54 52 55 43 54 22 3a 0a 20 20 20 20 63 61 73 65 20 22 41 52 52 41 59 22 3a 0a | ase."STRUCT":.....case."ARRAY":. |
| 1fe0 | 20 20 20 20 20 20 20 20 24 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 72 73 65 72 5d 5b 27 73 74 | ........$XML_RPC_xh[$parser]['st |
| 2000 | 27 5d 2e 3d 22 61 72 72 61 79 28 22 3b 0a 20 20 20 20 20 20 20 20 24 58 4d 4c 5f 52 50 43 5f 78 | '].="array(";.........$XML_RPC_x |
| 2020 | 68 5b 24 70 61 72 73 65 72 5d 5b 27 63 6d 27 5d 2b 2b 3b 0a 20 20 20 20 20 20 20 20 2f 2f 20 74 | h[$parser]['cm']++;.........//.t |
| 2040 | 68 69 73 20 6c 61 73 74 20 6c 69 6e 65 20 74 75 72 6e 73 20 71 75 6f 74 69 6e 67 20 6f 66 66 0a | his.last.line.turns.quoting.off. |
| 2060 | 20 20 20 20 20 20 20 20 2f 2f 20 74 68 69 73 20 6d 65 61 6e 73 20 69 66 20 77 65 20 67 65 74 20 | ........//.this.means.if.we.get. |
| 2080 | 61 6e 20 65 6d 70 74 79 20 61 72 72 61 79 20 77 65 27 6c 6c 0a 20 20 20 20 20 20 20 20 2f 2f 20 | an.empty.array.we'll.........//. |
| 20a0 | 73 69 6d 70 6c 79 20 67 65 74 20 61 20 62 69 74 20 6f 66 20 77 68 69 74 65 73 70 61 63 65 20 69 | simply.get.a.bit.of.whitespace.i |
| 20c0 | 6e 20 74 68 65 20 65 76 61 6c 0a 20 20 20 20 20 20 20 20 24 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 | n.the.eval.........$XML_RPC_xh[$ |
| 20e0 | 70 61 72 73 65 72 5d 5b 27 71 74 27 5d 3d 30 3b 0a 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b 0a | parser]['qt']=0;.........break;. |
| 2100 | 20 20 20 20 63 61 73 65 20 22 4e 41 4d 45 22 3a 0a 20 20 20 20 20 20 20 20 24 58 4d 4c 5f 52 50 | ....case."NAME":.........$XML_RP |
| 2120 | 43 5f 78 68 5b 24 70 61 72 73 65 72 5d 5b 27 73 74 27 5d 2e 3d 22 27 22 3b 20 24 58 4d 4c 5f 52 | C_xh[$parser]['st'].="'";.$XML_R |
| 2140 | 50 43 5f 78 68 5b 24 70 61 72 73 65 72 5d 5b 27 61 63 27 5d 3d 22 22 3b 0a 20 20 20 20 20 20 20 | PC_xh[$parser]['ac']="";........ |
| 2160 | 20 62 72 65 61 6b 3b 0a 20 20 20 20 63 61 73 65 20 22 46 41 55 4c 54 22 3a 0a 20 20 20 20 20 20 | .break;.....case."FAULT":....... |
| 2180 | 20 20 24 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 72 73 65 72 5d 5b 27 69 73 66 27 5d 3d 31 3b | ..$XML_RPC_xh[$parser]['isf']=1; |
| 21a0 | 0a 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b 0a 20 20 20 20 63 61 73 65 20 22 50 41 52 41 4d 22 | .........break;.....case."PARAM" |
| 21c0 | 3a 0a 20 20 20 20 20 20 20 20 24 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 72 73 65 72 5d 5b 27 | :.........$XML_RPC_xh[$parser][' |
| 21e0 | 73 74 27 5d 3d 22 22 3b 0a 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b 0a 20 20 20 20 63 61 73 65 | st']="";.........break;.....case |
| 2200 | 20 22 56 41 4c 55 45 22 3a 0a 20 20 20 20 20 20 20 20 24 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 | ."VALUE":.........$XML_RPC_xh[$p |
| 2220 | 61 72 73 65 72 5d 5b 27 73 74 27 5d 2e 3d 22 6e 65 77 20 58 4d 4c 5f 52 50 43 5f 56 61 6c 75 65 | arser]['st'].="new.XML_RPC_Value |
| 2240 | 28 22 3b 0a 20 20 20 20 20 20 20 20 24 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 72 73 65 72 5d | (";.........$XML_RPC_xh[$parser] |
| 2260 | 5b 27 6c 76 27 5d 3d 31 3b 0a 20 20 20 20 20 20 20 20 24 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 | ['lv']=1;.........$XML_RPC_xh[$p |
| 2280 | 61 72 73 65 72 5d 5b 27 76 74 27 5d 3d 24 58 4d 4c 5f 52 50 43 5f 53 74 72 69 6e 67 3b 0a 20 20 | arser]['vt']=$XML_RPC_String;... |
| 22a0 | 20 20 20 20 20 20 24 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 72 73 65 72 5d 5b 27 61 63 27 5d | ......$XML_RPC_xh[$parser]['ac'] |
| 22c0 | 3d 22 22 3b 0a 20 20 20 20 20 20 20 20 24 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 72 73 65 72 | ="";.........$XML_RPC_xh[$parser |
| 22e0 | 5d 5b 27 71 74 27 5d 3d 30 3b 0a 20 20 20 20 20 20 20 20 2f 2f 20 6c 6f 6f 6b 20 66 6f 72 20 61 | ]['qt']=0;.........//.look.for.a |
| 2300 | 20 76 61 6c 75 65 3a 20 69 66 20 74 68 69 73 20 69 73 20 73 74 69 6c 6c 20 31 20 62 79 20 74 68 | .value:.if.this.is.still.1.by.th |
| 2320 | 65 0a 20 20 20 20 20 20 20 20 2f 2f 20 74 69 6d 65 20 77 65 20 72 65 61 63 68 20 74 68 65 20 66 | e.........//.time.we.reach.the.f |
| 2340 | 69 72 73 74 20 64 61 74 61 20 73 65 67 6d 65 6e 74 20 74 68 65 6e 20 74 68 65 20 74 79 70 65 20 | irst.data.segment.then.the.type. |
| 2360 | 69 73 20 73 74 72 69 6e 67 0a 20 20 20 20 20 20 20 20 2f 2f 20 62 79 20 69 6d 70 6c 69 63 61 74 | is.string.........//.by.implicat |
| 2380 | 69 6f 6e 20 61 6e 64 20 77 65 20 6e 65 65 64 20 74 6f 20 61 64 64 20 69 6e 20 61 20 71 75 6f 74 | ion.and.we.need.to.add.in.a.quot |
| 23a0 | 65 0a 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b 0a 0a 20 20 20 20 63 61 73 65 20 22 49 34 22 3a | e.........break;......case."I4": |
| 23c0 | 0a 20 20 20 20 63 61 73 65 20 22 49 4e 54 22 3a 0a 20 20 20 20 63 61 73 65 20 22 53 54 52 49 4e | .....case."INT":.....case."STRIN |
| 23e0 | 47 22 3a 0a 20 20 20 20 63 61 73 65 20 22 42 4f 4f 4c 45 41 4e 22 3a 0a 20 20 20 20 63 61 73 65 | G":.....case."BOOLEAN":.....case |
| 2400 | 20 22 44 4f 55 42 4c 45 22 3a 0a 20 20 20 20 63 61 73 65 20 22 44 41 54 45 54 49 4d 45 2e 49 53 | ."DOUBLE":.....case."DATETIME.IS |
| 2420 | 4f 38 36 30 31 22 3a 0a 20 20 20 20 63 61 73 65 20 22 42 41 53 45 36 34 22 3a 0a 20 20 20 20 20 | O8601":.....case."BASE64":...... |
| 2440 | 20 20 20 24 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 72 73 65 72 5d 5b 27 61 63 27 5d 3d 22 22 | ...$XML_RPC_xh[$parser]['ac']="" |
| 2460 | 3b 20 2f 2f 20 72 65 73 65 74 20 74 68 65 20 61 63 63 75 6d 75 6c 61 74 6f 72 0a 0a 20 20 20 20 | ;.//.reset.the.accumulator...... |
| 2480 | 20 20 20 20 69 66 20 28 24 6e 61 6d 65 3d 3d 22 44 41 54 45 54 49 4d 45 2e 49 53 4f 38 36 30 31 | ....if.($name=="DATETIME.ISO8601 |
| 24a0 | 22 20 7c 7c 20 24 6e 61 6d 65 3d 3d 22 53 54 52 49 4e 47 22 29 20 7b 0a 20 20 20 20 20 20 20 20 | ".||.$name=="STRING").{......... |
| 24c0 | 20 20 20 20 24 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 72 73 65 72 5d 5b 27 71 74 27 5d 3d 31 | ....$XML_RPC_xh[$parser]['qt']=1 |
| 24e0 | 3b 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 24 6e 61 6d 65 3d 3d 22 44 41 54 45 54 | ;..............if.($name=="DATET |
| 2500 | 49 4d 45 2e 49 53 4f 38 36 30 31 22 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 24 58 | IME.ISO8601").................$X |
| 2520 | 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 72 73 65 72 5d 5b 27 76 74 27 5d 3d 24 58 4d 4c 5f 52 50 | ML_RPC_xh[$parser]['vt']=$XML_RP |
| 2540 | 43 5f 44 61 74 65 54 69 6d 65 3b 0a 0a 20 20 20 20 20 20 20 20 7d 20 65 6c 73 65 20 69 66 20 28 | C_DateTime;..........}.else.if.( |
| 2560 | 24 6e 61 6d 65 3d 3d 22 42 41 53 45 36 34 22 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 24 | $name=="BASE64").{.............$ |
| 2580 | 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 72 73 65 72 5d 5b 27 71 74 27 5d 3d 32 3b 0a 20 20 20 | XML_RPC_xh[$parser]['qt']=2;.... |
| 25a0 | 20 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 4e 6f 20 | .....}.else.{.............//.No. |
| 25c0 | 71 75 6f 74 69 6e 67 20 69 73 20 72 65 71 75 69 72 65 64 20 68 65 72 65 20 2d 2d 20 62 75 74 0a | quoting.is.required.here.--.but. |
| 25e0 | 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 61 74 20 74 68 65 20 65 6e 64 20 6f 66 20 74 68 65 | ............//.at.the.end.of.the |
| 2600 | 20 65 6c 65 6d 65 6e 74 20 77 65 20 6d 75 73 74 20 63 68 65 63 6b 0a 20 20 20 20 20 20 20 20 20 | .element.we.must.check.......... |
| 2620 | 20 20 20 2f 2f 20 66 6f 72 20 64 61 74 61 20 66 6f 72 6d 61 74 20 65 72 72 6f 72 73 2e 0a 20 20 | ...//.for.data.format.errors.... |
| 2640 | 20 20 20 20 20 20 20 20 20 20 24 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 72 73 65 72 5d 5b 27 | ..........$XML_RPC_xh[$parser][' |
| 2660 | 71 74 27 5d 3d 30 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b | qt']=0;.........}.........break; |
| 2680 | 0a 0a 20 20 20 20 63 61 73 65 20 22 4d 45 4d 42 45 52 22 3a 0a 20 20 20 20 20 20 20 20 24 58 4d | ......case."MEMBER":.........$XM |
| 26a0 | 4c 5f 52 50 43 5f 78 68 5b 24 70 61 72 73 65 72 5d 5b 27 61 63 27 5d 3d 22 22 3b 0a 20 20 20 20 | L_RPC_xh[$parser]['ac']="";..... |
| 26c0 | 20 20 20 20 62 72 65 61 6b 3b 0a 20 20 20 20 64 65 66 61 75 6c 74 3a 0a 20 20 20 20 20 20 20 20 | ....break;.....default:......... |
| 26e0 | 62 72 65 61 6b 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 69 66 20 28 24 6e 61 6d 65 21 3d 22 56 41 | break;.....}......if.($name!="VA |
| 2700 | 4c 55 45 22 29 20 24 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 72 73 65 72 5d 5b 27 6c 76 27 5d | LUE").$XML_RPC_xh[$parser]['lv'] |
| 2720 | 3d 30 3b 0a 7d 0a 0a 0a 66 75 6e 63 74 69 6f 6e 20 58 4d 4c 5f 52 50 43 5f 65 65 28 24 70 61 72 | =0;.}...function.XML_RPC_ee($par |
| 2740 | 73 65 72 2c 20 24 6e 61 6d 65 29 0a 7b 0a 20 20 20 20 67 6c 6f 62 61 6c 20 24 58 4d 4c 5f 52 50 | ser,.$name).{.....global.$XML_RP |
| 2760 | 43 5f 78 68 2c 24 58 4d 4c 5f 52 50 43 5f 54 79 70 65 73 2c 24 58 4d 4c 5f 52 50 43 5f 53 74 72 | C_xh,$XML_RPC_Types,$XML_RPC_Str |
| 2780 | 69 6e 67 3b 0a 0a 20 20 20 20 73 77 69 74 63 68 28 24 6e 61 6d 65 29 20 7b 0a 20 20 20 20 63 61 | ing;......switch($name).{.....ca |
| 27a0 | 73 65 20 22 53 54 52 55 43 54 22 3a 0a 20 20 20 20 63 61 73 65 20 22 41 52 52 41 59 22 3a 0a 20 | se."STRUCT":.....case."ARRAY":.. |
| 27c0 | 20 20 20 20 20 20 20 69 66 20 28 24 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 72 73 65 72 5d 5b | .......if.($XML_RPC_xh[$parser][ |
| 27e0 | 27 63 6d 27 5d 20 26 26 20 73 75 62 73 74 72 28 24 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 72 | 'cm'].&&.substr($XML_RPC_xh[$par |
| 2800 | 73 65 72 5d 5b 27 73 74 27 5d 2c 20 2d 31 29 20 3d 3d 27 2c 27 29 20 7b 0a 20 20 20 20 20 20 20 | ser]['st'],.-1).==',').{........ |
| 2820 | 20 20 20 20 20 24 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 72 73 65 72 5d 5b 27 73 74 27 5d 3d | .....$XML_RPC_xh[$parser]['st']= |
| 2840 | 73 75 62 73 74 72 28 24 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 72 73 65 72 5d 5b 27 73 74 27 | substr($XML_RPC_xh[$parser]['st' |
| 2860 | 5d 2c 30 2c 2d 31 29 3b 0a 20 20 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 20 20 24 58 4d 4c | ],0,-1);.........}..........$XML |
| 2880 | 5f 52 50 43 5f 78 68 5b 24 70 61 72 73 65 72 5d 5b 27 73 74 27 5d 2e 3d 22 29 22 3b 0a 20 20 20 | _RPC_xh[$parser]['st'].=")";.... |
| 28a0 | 20 20 20 20 20 24 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 72 73 65 72 5d 5b 27 76 74 27 5d 3d | .....$XML_RPC_xh[$parser]['vt']= |
| 28c0 | 73 74 72 74 6f 6c 6f 77 65 72 28 24 6e 61 6d 65 29 3b 0a 20 20 20 20 20 20 20 20 24 58 4d 4c 5f | strtolower($name);.........$XML_ |
| 28e0 | 52 50 43 5f 78 68 5b 24 70 61 72 73 65 72 5d 5b 27 63 6d 27 5d 2d 2d 3b 0a 20 20 20 20 20 20 20 | RPC_xh[$parser]['cm']--;........ |
| 2900 | 20 62 72 65 61 6b 3b 0a 0a 20 20 20 20 63 61 73 65 20 22 4e 41 4d 45 22 3a 0a 20 20 20 20 20 20 | .break;......case."NAME":....... |
| 2920 | 20 20 24 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 72 73 65 72 5d 5b 27 73 74 27 5d 2e 3d 20 24 | ..$XML_RPC_xh[$parser]['st'].=.$ |
| 2940 | 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 72 73 65 72 5d 5b 27 61 63 27 5d 20 2e 20 22 27 20 3d | XML_RPC_xh[$parser]['ac']..."'.= |
| 2960 | 3e 20 22 3b 0a 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b 0a 0a 20 20 20 20 63 61 73 65 20 22 42 | >.";.........break;......case."B |
| 2980 | 4f 4f 4c 45 41 4e 22 3a 0a 20 20 20 20 20 20 20 20 2f 2f 20 73 70 65 63 69 61 6c 20 63 61 73 65 | OOLEAN":.........//.special.case |
| 29a0 | 20 68 65 72 65 3a 20 77 65 20 74 72 61 6e 73 6c 61 74 65 20 62 6f 6f 6c 65 61 6e 20 31 20 6f 72 | .here:.we.translate.boolean.1.or |
| 29c0 | 20 30 20 69 6e 74 6f 20 50 48 50 0a 20 20 20 20 20 20 20 20 2f 2f 20 63 6f 6e 73 74 61 6e 74 73 | .0.into.PHP.........//.constants |
| 29e0 | 20 74 72 75 65 20 6f 72 20 66 61 6c 73 65 0a 20 20 20 20 20 20 20 20 69 66 20 28 24 58 4d 4c 5f | .true.or.false.........if.($XML_ |
| 2a00 | 52 50 43 5f 78 68 5b 24 70 61 72 73 65 72 5d 5b 27 61 63 27 5d 3d 3d 27 31 27 29 0a 20 20 20 20 | RPC_xh[$parser]['ac']=='1')..... |
| 2a20 | 20 20 20 20 20 20 20 20 24 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 72 73 65 72 5d 5b 27 61 63 | ........$XML_RPC_xh[$parser]['ac |
| 2a40 | 27 5d 3d 22 74 72 75 65 22 3b 0a 20 20 20 20 20 20 20 20 65 6c 73 65 0a 20 20 20 20 20 20 20 20 | ']="true";.........else......... |
| 2a60 | 20 20 20 20 24 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 72 73 65 72 5d 5b 27 61 63 27 5d 3d 22 | ....$XML_RPC_xh[$parser]['ac']=" |
| 2a80 | 66 61 6c 73 65 22 3b 0a 0a 20 20 20 20 20 20 20 20 24 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 | false";..........$XML_RPC_xh[$pa |
| 2aa0 | 72 73 65 72 5d 5b 27 76 74 27 5d 3d 73 74 72 74 6f 6c 6f 77 65 72 28 24 6e 61 6d 65 29 3b 0a 20 | rser]['vt']=strtolower($name);.. |
| 2ac0 | 20 20 20 20 20 20 20 2f 2f 20 44 72 6f 70 20 74 68 72 6f 75 67 68 20 69 6e 74 65 6e 74 69 6f 6e | .......//.Drop.through.intention |
| 2ae0 | 61 6c 6c 79 2e 0a 0a 20 20 20 20 63 61 73 65 20 22 49 34 22 3a 0a 20 20 20 20 63 61 73 65 20 22 | ally.......case."I4":.....case." |
| 2b00 | 49 4e 54 22 3a 0a 20 20 20 20 63 61 73 65 20 22 53 54 52 49 4e 47 22 3a 0a 20 20 20 20 63 61 73 | INT":.....case."STRING":.....cas |
| 2b20 | 65 20 22 44 4f 55 42 4c 45 22 3a 0a 20 20 20 20 63 61 73 65 20 22 44 41 54 45 54 49 4d 45 2e 49 | e."DOUBLE":.....case."DATETIME.I |
| 2b40 | 53 4f 38 36 30 31 22 3a 0a 20 20 20 20 63 61 73 65 20 22 42 41 53 45 36 34 22 3a 0a 20 20 20 20 | SO8601":.....case."BASE64":..... |
| 2b60 | 20 20 20 20 69 66 20 28 24 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 72 73 65 72 5d 5b 27 71 74 | ....if.($XML_RPC_xh[$parser]['qt |
| 2b80 | 27 5d 3d 3d 31 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 77 65 20 75 73 65 20 64 | ']==1).{.............//.we.use.d |
| 2ba0 | 6f 75 62 6c 65 20 71 75 6f 74 65 73 20 72 61 74 68 65 72 20 74 68 61 6e 20 73 69 6e 67 6c 65 20 | ouble.quotes.rather.than.single. |
| 2bc0 | 73 6f 20 62 61 63 6b 73 6c 61 73 68 69 66 69 63 61 74 69 6f 6e 20 77 6f 72 6b 73 20 4f 4b 0a 20 | so.backslashification.works.OK.. |
| 2be0 | 20 20 20 20 20 20 20 20 20 20 20 24 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 72 73 65 72 5d 5b | ...........$XML_RPC_xh[$parser][ |
| 2c00 | 27 73 74 27 5d 2e 3d 22 5c 22 22 2e 20 24 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 72 73 65 72 | 'st'].="\""..$XML_RPC_xh[$parser |
| 2c20 | 5d 5b 27 61 63 27 5d 20 2e 20 22 5c 22 22 3b 0a 20 20 20 20 20 20 20 20 7d 20 65 6c 73 65 20 69 | ]['ac']..."\"";.........}.else.i |
| 2c40 | 66 20 28 24 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 72 73 65 72 5d 5b 27 71 74 27 5d 3d 3d 32 | f.($XML_RPC_xh[$parser]['qt']==2 |
| 2c60 | 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 24 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 72 | ).{.............$XML_RPC_xh[$par |
| 2c80 | 73 65 72 5d 5b 27 73 74 27 5d 2e 3d 22 62 61 73 65 36 34 5f 64 65 63 6f 64 65 28 27 22 2e 20 24 | ser]['st'].="base64_decode('"..$ |
| 2ca0 | 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 72 73 65 72 5d 5b 27 61 63 27 5d 20 2e 20 22 27 29 22 | XML_RPC_xh[$parser]['ac']..."')" |
| 2cc0 | 3b 0a 20 20 20 20 20 20 20 20 7d 20 65 6c 73 65 20 69 66 20 28 24 6e 61 6d 65 3d 3d 22 42 4f 4f | ;.........}.else.if.($name=="BOO |
| 2ce0 | 4c 45 41 4e 22 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 24 58 4d 4c 5f 52 50 43 5f 78 68 | LEAN").{.............$XML_RPC_xh |
| 2d00 | 5b 24 70 61 72 73 65 72 5d 5b 27 73 74 27 5d 2e 3d 24 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 | [$parser]['st'].=$XML_RPC_xh[$pa |
| 2d20 | 72 73 65 72 5d 5b 27 61 63 27 5d 3b 0a 20 20 20 20 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a 20 20 | rser]['ac'];.........}.else.{... |
| 2d40 | 20 20 20 20 20 20 20 20 20 20 2f 2f 20 77 65 20 68 61 76 65 20 61 6e 20 49 34 2c 20 49 4e 54 20 | ..........//.we.have.an.I4,.INT. |
| 2d60 | 6f 72 20 61 20 44 4f 55 42 4c 45 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 77 65 20 6d 75 | or.a.DOUBLE.............//.we.mu |
| 2d80 | 73 74 20 63 68 65 63 6b 20 74 68 61 74 20 6f 6e 6c 79 20 30 31 32 33 34 35 36 37 38 39 2d 2e 3c | st.check.that.only.0123456789-.< |
| 2da0 | 73 70 61 63 65 3e 20 61 72 65 20 63 68 61 72 61 63 74 65 72 73 20 68 65 72 65 0a 20 20 20 20 20 | space>.are.characters.here...... |
| 2dc0 | 20 20 20 20 20 20 20 69 66 20 28 21 65 72 65 67 28 22 5e 5c 2d 3f 5b 30 31 32 33 34 35 36 37 38 | .......if.(!ereg("^\-?[012345678 |
| 2de0 | 39 20 5c 74 5c 2e 5d 2b 24 22 2c 20 24 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 72 73 65 72 5d | 9.\t\.]+$",.$XML_RPC_xh[$parser] |
| 2e00 | 5b 27 61 63 27 5d 29 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 54 4f | ['ac'])).{.................//.TO |
| 2e20 | 44 4f 3a 20 66 69 6e 64 20 61 20 62 65 74 74 65 72 20 77 61 79 20 6f 66 20 74 68 72 6f 77 69 6e | DO:.find.a.better.way.of.throwin |
| 2e40 | 67 20 61 6e 20 65 72 72 6f 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 74 68 | g.an.error.................//.th |
| 2e60 | 61 6e 20 74 68 69 73 21 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 72 72 6f 72 5f 6c | an.this!.................error_l |
| 2e80 | 6f 67 28 22 58 4d 4c 2d 52 50 43 3a 20 6e 6f 6e 20 6e 75 6d 65 72 69 63 20 76 61 6c 75 65 20 72 | og("XML-RPC:.non.numeric.value.r |
| 2ea0 | 65 63 65 69 76 65 64 20 69 6e 20 49 4e 54 20 6f 72 20 44 4f 55 42 4c 45 22 29 3b 0a 20 20 20 20 | eceived.in.INT.or.DOUBLE");..... |
| 2ec0 | 20 20 20 20 20 20 20 20 20 20 20 20 24 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 72 73 65 72 5d | ............$XML_RPC_xh[$parser] |
| 2ee0 | 5b 27 73 74 27 5d 2e 3d 22 45 52 52 4f 52 5f 4e 4f 4e 5f 4e 55 4d 45 52 49 43 5f 46 4f 55 4e 44 | ['st'].="ERROR_NON_NUMERIC_FOUND |
| 2f00 | 22 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a 20 20 20 20 20 20 20 20 | ";.............}.else.{......... |
| 2f20 | 20 20 20 20 20 20 20 20 2f 2f 20 69 74 27 73 20 6f 6b 2c 20 61 64 64 20 69 74 20 6f 6e 0a 20 20 | ........//.it's.ok,.add.it.on... |
| 2f40 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 24 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 72 73 65 | ..............$XML_RPC_xh[$parse |
| 2f60 | 72 5d 5b 27 73 74 27 5d 2e 3d 24 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 72 73 65 72 5d 5b 27 | r]['st'].=$XML_RPC_xh[$parser][' |
| 2f80 | 61 63 27 5d 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 7d 0a 0a 20 | ac'];.............}.........}... |
| 2fa0 | 20 20 20 20 20 20 20 24 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 72 73 65 72 5d 5b 27 61 63 27 | .......$XML_RPC_xh[$parser]['ac' |
| 2fc0 | 5d 3d 22 22 3b 20 24 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 72 73 65 72 5d 5b 27 71 74 27 5d | ]="";.$XML_RPC_xh[$parser]['qt'] |
| 2fe0 | 3d 30 3b 0a 20 20 20 20 20 20 20 20 24 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 72 73 65 72 5d | =0;.........$XML_RPC_xh[$parser] |
| 3000 | 5b 27 6c 76 27 5d 3d 33 3b 20 2f 2f 20 69 6e 64 69 63 61 74 65 20 77 65 27 76 65 20 66 6f 75 6e | ['lv']=3;.//.indicate.we've.foun |
| 3020 | 64 20 61 20 76 61 6c 75 65 0a 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b 0a 0a 20 20 20 20 63 61 | d.a.value.........break;......ca |
| 3040 | 73 65 20 22 56 41 4c 55 45 22 3a 0a 20 20 20 20 20 20 20 20 2f 2f 20 64 65 61 6c 20 77 69 74 68 | se."VALUE":.........//.deal.with |
| 3060 | 20 61 20 73 74 72 69 6e 67 20 76 61 6c 75 65 0a 20 20 20 20 20 20 20 20 69 66 20 28 73 74 72 6c | .a.string.value.........if.(strl |
| 3080 | 65 6e 28 24 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 72 73 65 72 5d 5b 27 61 63 27 5d 29 3e 30 | en($XML_RPC_xh[$parser]['ac'])>0 |
| 30a0 | 20 26 26 0a 20 20 20 20 20 20 20 20 20 20 20 20 24 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 72 | .&&.............$XML_RPC_xh[$par |
| 30c0 | 73 65 72 5d 5b 27 76 74 27 5d 3d 3d 24 58 4d 4c 5f 52 50 43 5f 53 74 72 69 6e 67 29 20 7b 0a 0a | ser]['vt']==$XML_RPC_String).{.. |
| 30e0 | 20 20 20 20 20 20 20 20 20 20 20 20 24 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 72 73 65 72 5d | ............$XML_RPC_xh[$parser] |
| 3100 | 5b 27 73 74 27 5d 2e 3d 22 5c 22 22 2e 20 24 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 72 73 65 | ['st'].="\""..$XML_RPC_xh[$parse |
| 3120 | 72 5d 5b 27 61 63 27 5d 20 2e 20 22 5c 22 22 3b 0a 20 20 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 | r]['ac']..."\"";.........}...... |
| 3140 | 20 20 20 20 2f 2f 20 54 68 69 73 20 69 66 28 29 20 64 65 74 65 63 74 73 20 69 66 20 6e 6f 20 73 | ....//.This.if().detects.if.no.s |
| 3160 | 63 61 6c 61 72 20 77 61 73 20 69 6e 73 69 64 65 20 3c 56 41 4c 55 45 3e 3c 2f 56 41 4c 55 45 3e | calar.was.inside.<VALUE></VALUE> |
| 3180 | 0a 20 20 20 20 20 20 20 20 2f 2f 20 61 6e 64 20 70 61 64 73 20 61 6e 20 65 6d 70 74 79 20 22 22 | .........//.and.pads.an.empty."" |
| 31a0 | 2e 0a 20 20 20 20 20 20 20 20 69 66 28 24 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 72 73 65 72 | ..........if($XML_RPC_xh[$parser |
| 31c0 | 5d 5b 27 73 74 27 5d 5b 73 74 72 6c 65 6e 28 24 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 72 73 | ]['st'][strlen($XML_RPC_xh[$pars |
| 31e0 | 65 72 5d 5b 27 73 74 27 5d 29 2d 31 5d 20 3d 3d 20 27 28 27 29 20 7b 0a 20 20 20 20 20 20 20 20 | er]['st'])-1].==.'(').{......... |
| 3200 | 20 20 20 20 24 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 72 73 65 72 5d 5b 27 73 74 27 5d 2e 3d | ....$XML_RPC_xh[$parser]['st'].= |
| 3220 | 20 27 22 22 27 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 24 58 4d 4c 5f 52 50 | .'""';.........}.........$XML_RP |
| 3240 | 43 5f 78 68 5b 24 70 61 72 73 65 72 5d 5b 27 73 74 27 5d 2e 3d 22 2c 20 27 22 20 2e 20 24 58 4d | C_xh[$parser]['st'].=",.'"...$XM |
| 3260 | 4c 5f 52 50 43 5f 78 68 5b 24 70 61 72 73 65 72 5d 5b 27 76 74 27 5d 20 2e 20 22 27 29 22 3b 0a | L_RPC_xh[$parser]['vt']..."')";. |
| 3280 | 20 20 20 20 20 20 20 20 69 66 20 28 24 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 72 73 65 72 5d | ........if.($XML_RPC_xh[$parser] |
| 32a0 | 5b 27 63 6d 27 5d 29 20 24 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 72 73 65 72 5d 5b 27 73 74 | ['cm']).$XML_RPC_xh[$parser]['st |
| 32c0 | 27 5d 2e 3d 22 2c 22 3b 0a 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b 0a 0a 20 20 20 20 63 61 73 | '].=",";.........break;......cas |
| 32e0 | 65 20 22 4d 45 4d 42 45 52 22 3a 0a 20 20 20 20 20 20 20 20 24 58 4d 4c 5f 52 50 43 5f 78 68 5b | e."MEMBER":.........$XML_RPC_xh[ |
| 3300 | 24 70 61 72 73 65 72 5d 5b 27 61 63 27 5d 3d 22 22 3b 20 24 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 | $parser]['ac']="";.$XML_RPC_xh[$ |
| 3320 | 70 61 72 73 65 72 5d 5b 27 71 74 27 5d 3d 30 3b 0a 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b 0a | parser]['qt']=0;.........break;. |
| 3340 | 0a 20 20 20 20 63 61 73 65 20 22 44 41 54 41 22 3a 0a 20 20 20 20 20 20 20 20 24 58 4d 4c 5f 52 | .....case."DATA":.........$XML_R |
| 3360 | 50 43 5f 78 68 5b 24 70 61 72 73 65 72 5d 5b 27 61 63 27 5d 3d 22 22 3b 20 24 58 4d 4c 5f 52 50 | PC_xh[$parser]['ac']="";.$XML_RP |
| 3380 | 43 5f 78 68 5b 24 70 61 72 73 65 72 5d 5b 27 71 74 27 5d 3d 30 3b 0a 20 20 20 20 20 20 20 20 62 | C_xh[$parser]['qt']=0;.........b |
| 33a0 | 72 65 61 6b 3b 0a 0a 20 20 20 20 63 61 73 65 20 22 50 41 52 41 4d 22 3a 0a 20 20 20 20 20 20 20 | reak;......case."PARAM":........ |
| 33c0 | 20 24 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 72 73 65 72 5d 5b 27 70 61 72 61 6d 73 27 5d 5b | .$XML_RPC_xh[$parser]['params'][ |
| 33e0 | 5d 3d 24 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 72 73 65 72 5d 5b 27 73 74 27 5d 3b 0a 20 20 | ]=$XML_RPC_xh[$parser]['st'];... |
| 3400 | 20 20 20 20 20 20 62 72 65 61 6b 3b 0a 0a 20 20 20 20 63 61 73 65 20 22 4d 45 54 48 4f 44 4e 41 | ......break;......case."METHODNA |
| 3420 | 4d 45 22 3a 0a 20 20 20 20 20 20 20 20 24 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 72 73 65 72 | ME":.........$XML_RPC_xh[$parser |
| 3440 | 5d 5b 27 6d 65 74 68 6f 64 27 5d 3d 65 72 65 67 5f 72 65 70 6c 61 63 65 28 22 5e 5b 5c 6e 5c 72 | ]['method']=ereg_replace("^[\n\r |
| 3460 | 5c 74 20 5d 2b 22 2c 20 22 22 2c 20 24 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 72 73 65 72 5d | \t.]+",."",.$XML_RPC_xh[$parser] |
| 3480 | 5b 27 61 63 27 5d 29 3b 0a 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b 0a 0a 20 20 20 20 63 61 73 | ['ac']);.........break;......cas |
| 34a0 | 65 20 22 42 4f 4f 4c 45 41 4e 22 3a 0a 20 20 20 20 20 20 20 20 2f 2f 20 73 70 65 63 69 61 6c 20 | e."BOOLEAN":.........//.special. |
| 34c0 | 63 61 73 65 20 68 65 72 65 3a 20 77 65 20 74 72 61 6e 73 6c 61 74 65 20 62 6f 6f 6c 65 61 6e 20 | case.here:.we.translate.boolean. |
| 34e0 | 31 20 6f 72 20 30 20 69 6e 74 6f 20 50 48 50 0a 20 20 20 20 20 20 20 20 2f 2f 20 63 6f 6e 73 74 | 1.or.0.into.PHP.........//.const |
| 3500 | 61 6e 74 73 20 74 72 75 65 20 6f 72 20 66 61 6c 73 65 0a 20 20 20 20 20 20 20 20 69 66 20 28 24 | ants.true.or.false.........if.($ |
| 3520 | 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 72 73 65 72 5d 5b 27 61 63 27 5d 3d 3d 27 31 27 29 0a | XML_RPC_xh[$parser]['ac']=='1'). |
| 3540 | 20 20 20 20 20 20 20 20 20 20 20 20 24 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 72 73 65 72 5d | ............$XML_RPC_xh[$parser] |
| 3560 | 5b 27 61 63 27 5d 3d 22 74 72 75 65 22 3b 0a 20 20 20 20 20 20 20 20 65 6c 73 65 0a 20 20 20 20 | ['ac']="true";.........else..... |
| 3580 | 20 20 20 20 20 20 20 20 24 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 72 73 65 72 5d 5b 27 61 63 | ........$XML_RPC_xh[$parser]['ac |
| 35a0 | 27 5d 3d 22 66 61 6c 73 65 22 3b 0a 0a 20 20 20 20 20 20 20 20 24 58 4d 4c 5f 52 50 43 5f 78 68 | ']="false";..........$XML_RPC_xh |
| 35c0 | 5b 24 70 61 72 73 65 72 5d 5b 27 76 74 27 5d 3d 73 74 72 74 6f 6c 6f 77 65 72 28 24 6e 61 6d 65 | [$parser]['vt']=strtolower($name |
| 35e0 | 29 3b 0a 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b 0a 0a 20 20 20 20 64 65 66 61 75 6c 74 3a 0a | );.........break;......default:. |
| 3600 | 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b 0a 20 20 20 20 7d 0a 20 20 20 20 2f 2f 20 69 66 20 69 | ........break;.....}.....//.if.i |
| 3620 | 74 27 73 20 61 20 76 61 6c 69 64 20 74 79 70 65 20 6e 61 6d 65 2c 20 73 65 74 20 74 68 65 20 74 | t's.a.valid.type.name,.set.the.t |
| 3640 | 79 70 65 0a 20 20 20 20 69 66 20 28 69 73 73 65 74 28 24 58 4d 4c 5f 52 50 43 5f 54 79 70 65 73 | ype.....if.(isset($XML_RPC_Types |
| 3660 | 5b 73 74 72 74 6f 6c 6f 77 65 72 28 24 6e 61 6d 65 29 5d 29 29 20 7b 0a 20 20 20 20 20 20 20 20 | [strtolower($name)])).{......... |
| 3680 | 24 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 72 73 65 72 5d 5b 27 76 74 27 5d 3d 73 74 72 74 6f | $XML_RPC_xh[$parser]['vt']=strto |
| 36a0 | 6c 6f 77 65 72 28 24 6e 61 6d 65 29 3b 0a 20 20 20 20 7d 0a 7d 0a 0a 0a 66 75 6e 63 74 69 6f 6e | lower($name);.....}.}...function |
| 36c0 | 20 58 4d 4c 5f 52 50 43 5f 63 64 28 24 70 61 72 73 65 72 2c 20 24 64 61 74 61 29 0a 7b 0a 20 20 | .XML_RPC_cd($parser,.$data).{... |
| 36e0 | 20 20 67 6c 6f 62 61 6c 20 24 58 4d 4c 5f 52 50 43 5f 78 68 2c 20 24 58 4d 4c 5f 52 50 43 5f 62 | ..global.$XML_RPC_xh,.$XML_RPC_b |
| 3700 | 61 63 6b 73 6c 61 73 68 3b 0a 0a 20 20 20 20 2f 2f 69 66 20 28 65 72 65 67 28 22 5e 5b 5c 6e 5c | ackslash;......//if.(ereg("^[\n\ |
| 3720 | 72 20 5c 74 5d 2b 24 22 2c 20 24 64 61 74 61 29 29 20 72 65 74 75 72 6e 3b 0a 20 20 20 20 2f 2f | r.\t]+$",.$data)).return;.....// |
| 3740 | 20 70 72 69 6e 74 20 22 61 64 64 69 6e 67 20 5b 24 7b 64 61 74 61 7d 5d 5c 6e 22 3b 0a 0a 20 20 | .print."adding.[${data}]\n";.... |
| 3760 | 20 20 69 66 20 28 24 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 72 73 65 72 5d 5b 27 6c 76 27 5d | ..if.($XML_RPC_xh[$parser]['lv'] |
| 3780 | 21 3d 33 29 20 7b 0a 20 20 20 20 20 20 20 20 2f 2f 20 22 6c 6f 6f 6b 66 6f 72 76 61 6c 75 65 3d | !=3).{.........//."lookforvalue= |
| 37a0 | 3d 33 22 20 6d 65 61 6e 73 20 74 68 61 74 20 77 65 27 76 65 20 66 6f 75 6e 64 20 61 6e 20 65 6e | =3".means.that.we've.found.an.en |
| 37c0 | 74 69 72 65 20 76 61 6c 75 65 0a 20 20 20 20 20 20 20 20 2f 2f 20 61 6e 64 20 73 68 6f 75 6c 64 | tire.value.........//.and.should |
| 37e0 | 20 64 69 73 63 61 72 64 20 61 6e 79 20 66 75 72 74 68 65 72 20 63 68 61 72 61 63 74 65 72 20 64 | .discard.any.further.character.d |
| 3800 | 61 74 61 0a 0a 20 20 20 20 20 20 20 20 69 66 20 28 24 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 | ata..........if.($XML_RPC_xh[$pa |
| 3820 | 72 73 65 72 5d 5b 27 6c 76 27 5d 3d 3d 31 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f | rser]['lv']==1).{.............// |
| 3840 | 20 69 66 20 77 65 27 76 65 20 66 6f 75 6e 64 20 74 65 78 74 20 61 6e 64 20 77 65 27 72 65 20 6a | .if.we've.found.text.and.we're.j |
| 3860 | 75 73 74 20 69 6e 20 61 20 3c 76 61 6c 75 65 3e 20 74 68 65 6e 0a 20 20 20 20 20 20 20 20 20 20 | ust.in.a.<value>.then........... |
| 3880 | 20 20 2f 2f 20 74 75 72 6e 20 71 75 6f 74 69 6e 67 20 6f 6e 2c 20 61 73 20 74 68 69 73 20 77 69 | ..//.turn.quoting.on,.as.this.wi |
| 38a0 | 6c 6c 20 62 65 20 61 20 73 74 72 69 6e 67 0a 20 20 20 20 20 20 20 20 20 20 20 20 24 58 4d 4c 5f | ll.be.a.string.............$XML_ |
| 38c0 | 52 50 43 5f 78 68 5b 24 70 61 72 73 65 72 5d 5b 27 71 74 27 5d 3d 31 3b 0a 20 20 20 20 20 20 20 | RPC_xh[$parser]['qt']=1;........ |
| 38e0 | 20 20 20 20 20 2f 2f 20 61 6e 64 20 73 61 79 20 77 65 27 76 65 20 66 6f 75 6e 64 20 61 20 76 61 | .....//.and.say.we've.found.a.va |
| 3900 | 6c 75 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 24 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 72 | lue.............$XML_RPC_xh[$par |
| 3920 | 73 65 72 5d 5b 27 6c 76 27 5d 3d 32 3b 0a 20 20 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 20 | ser]['lv']=2;.........}......... |
| 3940 | 20 2f 2f 20 72 65 70 6c 61 63 65 20 63 68 61 72 61 63 74 65 72 73 20 74 68 61 74 20 65 76 61 6c | .//.replace.characters.that.eval |
| 3960 | 20 77 6f 75 6c 64 0a 20 20 20 20 20 20 20 20 2f 2f 20 64 6f 20 73 70 65 63 69 61 6c 20 74 68 69 | .would.........//.do.special.thi |
| 3980 | 6e 67 73 20 77 69 74 68 0a 20 20 20 20 20 20 20 20 40 24 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 | ngs.with.........@$XML_RPC_xh[$p |
| 39a0 | 61 72 73 65 72 5d 5b 27 61 63 27 5d 2e 3d 73 74 72 5f 72 65 70 6c 61 63 65 28 27 24 27 2c 20 27 | arser]['ac'].=str_replace('$',.' |
| 39c0 | 5c 24 27 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 74 72 5f 72 65 70 6c 61 63 65 28 27 22 27 | \$',.............str_replace('"' |
| 39e0 | 2c 20 27 5c 22 27 2c 20 73 74 72 5f 72 65 70 6c 61 63 65 28 63 68 72 28 39 32 29 2c 0a 20 20 20 | ,.'\"',.str_replace(chr(92),.... |
| 3a00 | 20 20 20 20 20 20 20 20 20 20 20 20 20 24 58 4d 4c 5f 52 50 43 5f 62 61 63 6b 73 6c 61 73 68 2c | .............$XML_RPC_backslash, |
| 3a20 | 20 24 64 61 74 61 29 29 29 3b 0a 20 20 20 20 7d 0a 7d 0a 0a 0a 66 75 6e 63 74 69 6f 6e 20 58 4d | .$data)));.....}.}...function.XM |
| 3a40 | 4c 5f 52 50 43 5f 64 68 28 24 70 61 72 73 65 72 2c 20 24 64 61 74 61 29 0a 7b 0a 20 20 20 20 67 | L_RPC_dh($parser,.$data).{.....g |
| 3a60 | 6c 6f 62 61 6c 20 24 58 4d 4c 5f 52 50 43 5f 78 68 3b 0a 20 20 20 20 69 66 20 28 73 75 62 73 74 | lobal.$XML_RPC_xh;.....if.(subst |
| 3a80 | 72 28 24 64 61 74 61 2c 20 30 2c 20 31 29 20 3d 3d 20 22 26 22 20 26 26 20 73 75 62 73 74 72 28 | r($data,.0,.1).==."&".&&.substr( |
| 3aa0 | 24 64 61 74 61 2c 20 2d 31 2c 20 31 29 20 3d 3d 20 22 3b 22 29 20 7b 0a 20 20 20 20 20 20 20 20 | $data,.-1,.1).==.";").{......... |
| 3ac0 | 69 66 20 28 24 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 72 73 65 72 5d 5b 27 6c 76 27 5d 3d 3d | if.($XML_RPC_xh[$parser]['lv']== |
| 3ae0 | 31 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 24 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 | 1).{.............$XML_RPC_xh[$pa |
| 3b00 | 72 73 65 72 5d 5b 27 71 74 27 5d 3d 31 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 24 58 4d 4c 5f | rser]['qt']=1;.............$XML_ |
| 3b20 | 52 50 43 5f 78 68 5b 24 70 61 72 73 65 72 5d 5b 27 6c 76 27 5d 3d 32 3b 0a 20 20 20 20 20 20 20 | RPC_xh[$parser]['lv']=2;........ |
| 3b40 | 20 7d 0a 20 20 20 20 20 20 20 20 24 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 72 73 65 72 5d 5b | .}.........$XML_RPC_xh[$parser][ |
| 3b60 | 27 61 63 27 5d 2e 3d 73 74 72 5f 72 65 70 6c 61 63 65 28 27 24 27 2c 20 27 5c 24 27 2c 0a 20 20 | 'ac'].=str_replace('$',.'\$',... |
| 3b80 | 20 20 20 20 20 20 20 20 20 20 73 74 72 5f 72 65 70 6c 61 63 65 28 27 22 27 2c 20 27 5c 22 27 2c | ..........str_replace('"',.'\"', |
| 3ba0 | 20 73 74 72 5f 72 65 70 6c 61 63 65 28 63 68 72 28 39 32 29 2c 0a 20 20 20 20 20 20 20 20 20 20 | .str_replace(chr(92),........... |
| 3bc0 | 20 20 20 20 20 20 24 58 4d 4c 5f 52 50 43 5f 62 61 63 6b 73 6c 61 73 68 2c 20 24 64 61 74 61 29 | ......$XML_RPC_backslash,.$data) |
| 3be0 | 29 29 3b 0a 20 20 20 20 7d 0a 7d 0a 0a 0a 63 6c 61 73 73 20 58 4d 4c 5f 52 50 43 5f 43 6c 69 65 | ));.....}.}...class.XML_RPC_Clie |
| 3c00 | 6e 74 0a 7b 0a 20 20 20 20 76 61 72 20 24 70 61 74 68 3b 0a 20 20 20 20 76 61 72 20 24 73 65 72 | nt.{.....var.$path;.....var.$ser |
| 3c20 | 76 65 72 3b 0a 20 20 20 20 76 61 72 20 24 70 6f 72 74 3b 0a 20 20 20 20 76 61 72 20 24 65 72 72 | ver;.....var.$port;.....var.$err |
| 3c40 | 6e 6f 3b 0a 20 20 20 20 76 61 72 20 24 65 72 72 73 74 72 69 6e 67 3b 0a 20 20 20 20 76 61 72 20 | no;.....var.$errstring;.....var. |
| 3c60 | 24 64 65 62 75 67 3d 30 3b 0a 20 20 20 20 76 61 72 20 24 75 73 65 72 6e 61 6d 65 3d 22 22 3b 0a | $debug=0;.....var.$username="";. |
| 3c80 | 20 20 20 20 76 61 72 20 24 70 61 73 73 77 6f 72 64 3d 22 22 3b 0a 0a 20 20 20 20 66 75 6e 63 74 | ....var.$password="";......funct |
| 3ca0 | 69 6f 6e 20 58 4d 4c 5f 52 50 43 5f 43 6c 69 65 6e 74 28 24 70 61 74 68 2c 20 24 73 65 72 76 65 | ion.XML_RPC_Client($path,.$serve |
| 3cc0 | 72 2c 20 24 70 6f 72 74 20 3d 20 38 30 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | r,.$port.=.80,.................. |
| 3ce0 | 20 20 20 20 20 20 20 20 20 20 20 24 70 72 6f 78 79 20 3d 20 27 27 2c 20 24 70 72 6f 78 79 5f 70 | ...........$proxy.=.'',.$proxy_p |
| 3d00 | 6f 72 74 20 3d 20 38 30 38 30 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ort.=.8080,..................... |
| 3d20 | 20 20 20 20 20 20 20 20 24 70 72 6f 78 79 5f 75 73 65 72 20 3d 20 27 27 2c 20 24 70 72 6f 78 79 | ........$proxy_user.=.'',.$proxy |
| 3d40 | 5f 70 61 73 73 20 3d 20 27 27 29 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 24 74 68 69 73 2d | _pass.=.'').....{.........$this- |
| 3d60 | 3e 70 6f 72 74 3d 24 70 6f 72 74 3b 0a 20 20 20 20 20 20 20 20 24 74 68 69 73 2d 3e 73 65 72 76 | >port=$port;.........$this->serv |
| 3d80 | 65 72 3d 24 73 65 72 76 65 72 3b 0a 20 20 20 20 20 20 20 20 24 74 68 69 73 2d 3e 70 61 74 68 3d | er=$server;.........$this->path= |
| 3da0 | 24 70 61 74 68 3b 0a 20 20 20 20 20 20 20 20 24 74 68 69 73 2d 3e 70 72 6f 78 79 20 3d 20 24 70 | $path;.........$this->proxy.=.$p |
| 3dc0 | 72 6f 78 79 3b 0a 20 20 20 20 20 20 20 20 24 74 68 69 73 2d 3e 70 72 6f 78 79 5f 70 6f 72 74 20 | roxy;.........$this->proxy_port. |
| 3de0 | 3d 20 24 70 72 6f 78 79 5f 70 6f 72 74 3b 0a 20 20 20 20 20 20 20 20 24 74 68 69 73 2d 3e 70 72 | =.$proxy_port;.........$this->pr |
| 3e00 | 6f 78 79 5f 75 73 65 72 20 3d 20 24 70 72 6f 78 79 5f 75 73 65 72 3b 0a 20 20 20 20 20 20 20 20 | oxy_user.=.$proxy_user;......... |
| 3e20 | 24 74 68 69 73 2d 3e 70 72 6f 78 79 5f 70 61 73 73 20 3d 20 24 70 72 6f 78 79 5f 70 61 73 73 3b | $this->proxy_pass.=.$proxy_pass; |
| 3e40 | 0a 20 20 20 20 7d 0a 0a 20 20 20 20 66 75 6e 63 74 69 6f 6e 20 73 65 74 44 65 62 75 67 28 24 69 | .....}......function.setDebug($i |
| 3e60 | 6e 29 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 69 66 20 28 24 69 6e 29 20 7b 0a 20 20 20 20 | n).....{.........if.($in).{..... |
| 3e80 | 20 20 20 20 20 20 20 20 24 74 68 69 73 2d 3e 64 65 62 75 67 3d 31 3b 0a 20 20 20 20 20 20 20 20 | ........$this->debug=1;......... |
| 3ea0 | 7d 20 65 6c 73 65 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 24 74 68 69 73 2d 3e 64 65 62 75 | }.else.{.............$this->debu |
| 3ec0 | 67 3d 30 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a 0a 20 20 20 20 66 75 6e 63 74 69 | g=0;.........}.....}......functi |
| 3ee0 | 6f 6e 20 73 65 74 43 72 65 64 65 6e 74 69 61 6c 73 28 24 75 2c 20 24 70 29 0a 20 20 20 20 7b 0a | on.setCredentials($u,.$p).....{. |
| 3f00 | 20 20 20 20 20 20 20 20 24 74 68 69 73 2d 3e 75 73 65 72 6e 61 6d 65 3d 24 75 3b 0a 20 20 20 20 | ........$this->username=$u;..... |
| 3f20 | 20 20 20 20 24 74 68 69 73 2d 3e 70 61 73 73 77 6f 72 64 3d 24 70 3b 0a 20 20 20 20 7d 0a 0a 20 | ....$this->password=$p;.....}... |
| 3f40 | 20 20 20 66 75 6e 63 74 69 6f 6e 20 73 65 6e 64 28 24 6d 73 67 2c 20 24 74 69 6d 65 6f 75 74 3d | ...function.send($msg,.$timeout= |
| 3f60 | 30 29 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 2f 2f 20 77 68 65 72 65 20 6d 73 67 20 69 73 | 0).....{.........//.where.msg.is |
| 3f80 | 20 61 6e 20 78 6d 6c 72 70 63 6d 73 67 0a 20 20 20 20 20 20 20 20 24 6d 73 67 2d 3e 64 65 62 75 | .an.xmlrpcmsg.........$msg->debu |
| 3fa0 | 67 3d 24 74 68 69 73 2d 3e 64 65 62 75 67 3b 0a 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 24 | g=$this->debug;.........return.$ |
| 3fc0 | 74 68 69 73 2d 3e 73 65 6e 64 50 61 79 6c 6f 61 64 48 54 54 50 31 30 28 24 6d 73 67 2c 20 24 74 | this->sendPayloadHTTP10($msg,.$t |
| 3fe0 | 68 69 73 2d 3e 73 65 72 76 65 72 2c 20 24 74 68 69 73 2d 3e 70 6f 72 74 2c 0a 20 20 20 20 20 20 | his->server,.$this->port,....... |
| 4000 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ................................ |
| 4020 | 20 20 24 74 69 6d 65 6f 75 74 2c 20 24 74 68 69 73 2d 3e 75 73 65 72 6e 61 6d 65 2c 0a 20 20 20 | ..$timeout,.$this->username,.... |
| 4040 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ................................ |
| 4060 | 20 20 20 20 20 24 74 68 69 73 2d 3e 70 61 73 73 77 6f 72 64 29 3b 0a 20 20 20 20 7d 0a 0a 20 20 | .....$this->password);.....}.... |
| 4080 | 20 20 66 75 6e 63 74 69 6f 6e 20 73 65 6e 64 50 61 79 6c 6f 61 64 48 54 54 50 31 30 28 24 6d 73 | ..function.sendPayloadHTTP10($ms |
| 40a0 | 67 2c 20 24 73 65 72 76 65 72 2c 20 24 70 6f 72 74 2c 20 24 74 69 6d 65 6f 75 74 3d 30 2c 0a 20 | g,.$server,.$port,.$timeout=0,.. |
| 40c0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 24 75 | ..............................$u |
| 40e0 | 73 65 72 6e 61 6d 65 3d 22 22 2c 20 24 70 61 73 73 77 6f 72 64 3d 22 22 29 0a 20 20 20 20 7b 0a | sername="",.$password="").....{. |
| 4100 | 20 20 20 20 20 20 20 20 2f 2f 20 49 66 20 77 65 27 72 65 20 75 73 69 6e 67 20 61 20 70 72 6f 78 | ........//.If.we're.using.a.prox |
| 4120 | 79 20 6f 70 65 6e 20 61 20 73 6f 63 6b 65 74 20 74 6f 20 74 68 65 20 70 72 6f 78 79 20 73 65 72 | y.open.a.socket.to.the.proxy.ser |
| 4140 | 76 65 72 20 69 6e 73 74 65 61 64 20 74 6f 20 74 68 65 20 78 6d 6c 2d 72 70 63 20 73 65 72 76 65 | ver.instead.to.the.xml-rpc.serve |
| 4160 | 72 0a 20 20 20 20 20 20 20 20 69 66 28 24 74 68 69 73 2d 3e 70 72 6f 78 79 29 7b 0a 20 20 20 20 | r.........if($this->proxy){..... |
| 4180 | 20 20 20 20 20 20 20 20 69 66 28 24 74 69 6d 65 6f 75 74 20 3e 20 30 29 20 7b 0a 20 20 20 20 20 | ........if($timeout.>.0).{...... |
| 41a0 | 20 20 20 20 20 20 20 20 20 20 20 24 66 70 3d 66 73 6f 63 6b 6f 70 65 6e 28 24 74 68 69 73 2d 3e | ...........$fp=fsockopen($this-> |
| 41c0 | 70 72 6f 78 79 2c 20 24 74 68 69 73 2d 3e 70 72 6f 78 79 5f 70 6f 72 74 2c 20 24 74 68 69 73 2d | proxy,.$this->proxy_port,.$this- |
| 41e0 | 3e 65 72 72 6e 6f 2c 20 24 74 68 69 73 2d 3e 65 72 72 73 74 72 2c 20 24 74 69 6d 65 6f 75 74 29 | >errno,.$this->errstr,.$timeout) |
| 4200 | 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 20 20 20 20 65 6c 73 65 | ;.............}.............else |
| 4220 | 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 24 66 70 3d 66 73 6f 63 6b 6f 70 65 6e | .{.................$fp=fsockopen |
| 4240 | 28 24 74 68 69 73 2d 3e 70 72 6f 78 79 2c 20 24 74 68 69 73 2d 3e 70 72 6f 78 79 5f 70 6f 72 74 | ($this->proxy,.$this->proxy_port |
| 4260 | 2c 20 24 74 68 69 73 2d 3e 65 72 72 6e 6f 2c 20 24 74 68 69 73 2d 3e 65 72 72 73 74 72 29 3b 0a | ,.$this->errno,.$this->errstr);. |
| 4280 | 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 | ............}.........}......... |
| 42a0 | 65 6c 73 65 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 28 24 74 69 6d 65 6f 75 74 20 3e | else.{.............if($timeout.> |
| 42c0 | 20 30 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 24 66 70 3d 66 73 6f 63 6b 6f | .0).{.................$fp=fsocko |
| 42e0 | 70 65 6e 28 24 73 65 72 76 65 72 2c 20 24 70 6f 72 74 2c 20 24 74 68 69 73 2d 3e 65 72 72 6e 6f | pen($server,.$port,.$this->errno |
| 4300 | 2c 20 24 74 68 69 73 2d 3e 65 72 72 73 74 72 2c 20 24 74 69 6d 65 6f 75 74 29 3b 0a 20 20 20 20 | ,.$this->errstr,.$timeout);..... |
| 4320 | 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 20 20 20 20 65 6c 73 65 20 7b 0a 20 20 20 | ........}.............else.{.... |
| 4340 | 20 20 20 20 20 20 20 20 20 20 20 20 20 24 66 70 3d 66 73 6f 63 6b 6f 70 65 6e 28 24 73 65 72 76 | .............$fp=fsockopen($serv |
| 4360 | 65 72 2c 20 24 70 6f 72 74 2c 20 24 74 68 69 73 2d 3e 65 72 72 6e 6f 2c 20 24 74 68 69 73 2d 3e | er,.$port,.$this->errno,.$this-> |
| 4380 | 65 72 72 73 74 72 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 7d | errstr);.............}.........} |
| 43a0 | 0a 0a 20 20 20 20 20 20 20 20 69 66 28 21 24 66 70 20 26 26 20 24 74 68 69 73 2d 3e 70 72 6f 78 | ..........if(!$fp.&&.$this->prox |
| 43c0 | 79 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 50 45 41 52 3a 3a 72 61 69 73 65 45 72 72 6f | y).{.............PEAR::raiseErro |
| 43e0 | 72 28 22 43 6f 6e 6e 65 63 74 69 6f 6e 20 74 6f 20 70 72 6f 78 79 20 73 65 72 76 65 72 20 22 2e | r("Connection.to.proxy.server.". |
| 4400 | 24 74 68 69 73 2d 3e 70 72 6f 78 79 2e 22 3a 22 2e 24 74 68 69 73 2d 3e 70 72 6f 78 79 5f 70 6f | $this->proxy.":".$this->proxy_po |
| 4420 | 72 74 2e 22 20 66 61 69 6c 65 64 22 29 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 | rt.".failed");.........}........ |
| 4440 | 20 65 6c 73 65 20 69 66 28 21 24 66 70 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 50 45 41 | .else.if(!$fp).{.............PEA |
| 4460 | 52 3a 3a 72 61 69 73 65 45 72 72 6f 72 28 22 43 6f 6e 6e 65 63 74 69 6f 6e 20 74 6f 20 52 50 43 | R::raiseError("Connection.to.RPC |
| 4480 | 20 73 65 72 76 65 72 20 22 2e 24 74 68 69 73 2d 3e 73 65 72 76 65 72 2e 22 20 66 61 69 6c 65 64 | .server.".$this->server.".failed |
| 44a0 | 22 29 3b 0a 20 20 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 20 20 2f 2f 20 4f 6e 6c 79 20 63 | ");.........}..........//.Only.c |
| 44c0 | 72 65 61 74 65 20 74 68 65 20 70 61 79 6c 6f 61 64 20 69 66 20 69 74 20 77 61 73 20 6e 6f 74 20 | reate.the.payload.if.it.was.not. |
| 44e0 | 63 72 65 61 74 65 64 20 70 72 65 76 69 6f 75 73 6c 79 0a 20 20 20 20 20 20 20 20 69 66 28 65 6d | created.previously.........if(em |
| 4500 | 70 74 79 28 24 6d 73 67 2d 3e 70 61 79 6c 6f 61 64 29 29 20 24 6d 73 67 2d 3e 63 72 65 61 74 65 | pty($msg->payload)).$msg->create |
| 4520 | 50 61 79 6c 6f 61 64 28 29 3b 0a 0a 20 20 20 20 20 20 20 20 2f 2f 20 74 68 61 6e 6b 73 20 74 6f | Payload();..........//.thanks.to |
| 4540 | 20 47 72 61 6e 74 20 52 61 75 73 63 68 65 72 20 3c 67 72 61 6e 74 37 40 66 69 72 73 74 77 6f 72 | .Grant.Rauscher.<grant7@firstwor |
| 4560 | 6c 64 2e 6e 65 74 3e 0a 20 20 20 20 20 20 20 20 2f 2f 20 66 6f 72 20 74 68 69 73 0a 20 20 20 20 | ld.net>.........//.for.this..... |
| 4580 | 20 20 20 20 24 63 72 65 64 65 6e 74 69 61 6c 73 3d 22 22 3b 0a 20 20 20 20 20 20 20 20 69 66 20 | ....$credentials="";.........if. |
| 45a0 | 28 24 75 73 65 72 6e 61 6d 65 21 3d 22 22 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 24 63 | ($username!="").{.............$c |
| 45c0 | 72 65 64 65 6e 74 69 61 6c 73 3d 22 41 75 74 68 6f 72 69 7a 61 74 69 6f 6e 3a 20 42 61 73 69 63 | redentials="Authorization:.Basic |
| 45e0 | 20 22 20 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 61 73 65 36 34 5f 65 6e 63 6f | ."...................base64_enco |
| 4600 | 64 65 28 24 75 73 65 72 6e 61 6d 65 20 2e 20 22 3a 22 20 2e 20 24 70 61 73 73 77 6f 72 64 29 20 | de($username...":"...$password). |
| 4620 | 2e 20 22 5c 72 5c 6e 22 3b 0a 20 20 20 20 20 20 20 20 7d 0a 0a 0a 20 20 20 20 20 20 20 20 69 66 | .."\r\n";.........}...........if |
| 4640 | 28 24 74 68 69 73 2d 3e 70 72 6f 78 79 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 24 6f 70 | ($this->proxy).{.............$op |
| 4660 | 20 3d 20 22 50 4f 53 54 20 68 74 74 70 3a 2f 2f 22 20 2e 20 24 74 68 69 73 2d 3e 73 65 72 76 65 | .=."POST.http://"...$this->serve |
| 4680 | 72 3b 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 28 24 74 68 69 73 2d 3e 70 72 6f 78 79 5f | r;..............if($this->proxy_ |
| 46a0 | 70 6f 72 74 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 24 6f 70 20 2e 3d 20 22 | port).{.................$op..=." |
| 46c0 | 3a 22 20 2e 20 24 74 68 69 73 2d 3e 70 6f 72 74 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a | :"...$this->port;.............}. |
| 46e0 | 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 65 6c 73 65 20 7b 0a 20 20 20 20 20 20 20 | ........}.........else.{........ |
| 4700 | 20 20 20 20 24 6f 70 20 3d 20 22 50 4f 53 54 20 22 3b 0a 20 20 20 20 20 20 20 20 7d 0a 0a 20 20 | ....$op.=."POST.";.........}.... |
| 4720 | 20 20 20 20 20 20 24 6f 70 20 2e 3d 20 24 74 68 69 73 2d 3e 70 61 74 68 2e 20 22 20 48 54 54 50 | ......$op..=.$this->path..".HTTP |
| 4740 | 2f 31 2e 30 5c 72 5c 6e 55 73 65 72 2d 41 67 65 6e 74 3a 20 50 48 50 20 58 4d 4c 52 50 43 20 31 | /1.0\r\nUser-Agent:.PHP.XMLRPC.1 |
| 4760 | 2e 30 5c 72 5c 6e 22 20 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 48 6f 73 74 3a 20 22 2e 20 | .0\r\n"..............."Host:.".. |
| 4780 | 24 74 68 69 73 2d 3e 73 65 72 76 65 72 20 20 2e 20 22 5c 72 5c 6e 22 3b 0a 20 20 20 20 20 20 20 | $this->server...."\r\n";........ |
| 47a0 | 20 69 66 20 28 24 74 68 69 73 2d 3e 70 72 6f 78 79 20 26 26 20 24 74 68 69 73 2d 3e 70 72 6f 78 | .if.($this->proxy.&&.$this->prox |
| 47c0 | 79 5f 75 73 65 72 20 21 3d 20 27 27 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 24 6f 70 20 | y_user.!=.'').{.............$op. |
| 47e0 | 2e 3d 20 27 50 72 6f 78 79 2d 41 75 74 68 6f 72 69 7a 61 74 69 6f 6e 3a 20 42 61 73 69 63 20 27 | .=.'Proxy-Authorization:.Basic.' |
| 4800 | 20 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 61 73 65 36 34 5f 65 6e 63 6f 64 65 | ...................base64_encode |
| 4820 | 28 24 74 68 69 73 2d 3e 70 72 6f 78 79 5f 75 73 65 72 20 2e 20 27 3a 27 20 2e 20 24 74 68 69 73 | ($this->proxy_user...':'...$this |
| 4840 | 2d 3e 70 72 6f 78 79 5f 70 61 73 73 29 20 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ->proxy_pass)................... |
| 4860 | 22 5c 72 5c 6e 22 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 24 6f 70 20 2e 3d | "\r\n";.........}.........$op..= |
| 4880 | 20 24 63 72 65 64 65 6e 74 69 61 6c 73 20 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 43 6f 6e | .$credentials..............."Con |
| 48a0 | 74 65 6e 74 2d 54 79 70 65 3a 20 74 65 78 74 2f 78 6d 6c 5c 72 5c 6e 43 6f 6e 74 65 6e 74 2d 4c | tent-Type:.text/xml\r\nContent-L |
| 48c0 | 65 6e 67 74 68 3a 20 22 20 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 74 72 6c 65 6e 28 24 6d | ength:."...............strlen($m |
| 48e0 | 73 67 2d 3e 70 61 79 6c 6f 61 64 29 20 2e 20 22 5c 72 5c 6e 5c 72 5c 6e 22 20 2e 0a 20 20 20 20 | sg->payload)..."\r\n\r\n"....... |
| 4900 | 20 20 20 20 20 20 20 20 24 6d 73 67 2d 3e 70 61 79 6c 6f 61 64 3b 0a 0a 20 20 20 20 20 20 20 20 | ........$msg->payload;.......... |
| 4920 | 2f 2f 20 70 72 69 6e 74 28 24 6f 70 29 3b 0a 0a 20 20 20 20 20 20 20 20 69 66 20 28 21 66 70 75 | //.print($op);..........if.(!fpu |
| 4940 | 74 73 28 24 66 70 2c 20 24 6f 70 2c 20 73 74 72 6c 65 6e 28 24 6f 70 29 29 29 20 7b 0a 20 20 20 | ts($fp,.$op,.strlen($op))).{.... |
| 4960 | 20 20 20 20 20 20 20 20 20 24 74 68 69 73 2d 3e 65 72 72 73 74 72 3d 22 57 72 69 74 65 20 65 72 | .........$this->errstr="Write.er |
| 4980 | 72 6f 72 22 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 30 3b 0a 20 20 20 20 | ror";.............return.0;..... |
| 49a0 | 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 24 72 65 73 70 3d 24 6d 73 67 2d 3e 70 61 72 73 65 52 | ....}.........$resp=$msg->parseR |
| 49c0 | 65 73 70 6f 6e 73 65 46 69 6c 65 28 24 66 70 29 3b 0a 20 20 20 20 20 20 20 20 66 63 6c 6f 73 65 | esponseFile($fp);.........fclose |
| 49e0 | 28 24 66 70 29 3b 0a 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 24 72 65 73 70 3b 0a 20 20 20 | ($fp);.........return.$resp;.... |
| 4a00 | 20 7d 0a 7d 0a 0a 0a 63 6c 61 73 73 20 58 4d 4c 5f 52 50 43 5f 52 65 73 70 6f 6e 73 65 0a 7b 0a | .}.}...class.XML_RPC_Response.{. |
| 4a20 | 20 20 20 20 76 61 72 20 24 78 76 3b 0a 20 20 20 20 76 61 72 20 24 66 6e 3b 0a 20 20 20 20 76 61 | ....var.$xv;.....var.$fn;.....va |
| 4a40 | 72 20 24 66 73 3b 0a 20 20 20 20 76 61 72 20 24 68 64 72 73 3b 0a 0a 20 20 20 20 66 75 6e 63 74 | r.$fs;.....var.$hdrs;......funct |
| 4a60 | 69 6f 6e 20 58 4d 4c 5f 52 50 43 5f 52 65 73 70 6f 6e 73 65 28 24 76 61 6c 2c 20 24 66 63 6f 64 | ion.XML_RPC_Response($val,.$fcod |
| 4a80 | 65 3d 30 2c 20 24 66 73 74 72 3d 22 22 29 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 69 66 20 | e=0,.$fstr="").....{.........if. |
| 4aa0 | 28 24 66 63 6f 64 65 21 3d 30 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 24 74 68 69 73 2d | ($fcode!=0).{.............$this- |
| 4ac0 | 3e 66 6e 3d 24 66 63 6f 64 65 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 24 74 68 69 73 2d 3e 66 | >fn=$fcode;.............$this->f |
| 4ae0 | 73 3d 68 74 6d 6c 73 70 65 63 69 61 6c 63 68 61 72 73 28 24 66 73 74 72 29 3b 0a 20 20 20 20 20 | s=htmlspecialchars($fstr);...... |
| 4b00 | 20 20 20 7d 20 65 6c 73 65 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 24 74 68 69 73 2d 3e 78 | ...}.else.{.............$this->x |
| 4b20 | 76 3d 24 76 61 6c 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a 0a 20 20 20 20 66 75 6e | v=$val;.........}.....}......fun |
| 4b40 | 63 74 69 6f 6e 20 66 61 75 6c 74 43 6f 64 65 28 29 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 | ction.faultCode().....{......... |
| 4b60 | 69 66 20 28 69 73 73 65 74 28 24 74 68 69 73 2d 3e 66 6e 29 29 0a 20 20 20 20 20 20 20 20 20 20 | if.(isset($this->fn))........... |
| 4b80 | 20 20 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 66 6e 3b 0a 20 20 20 20 20 20 20 20 65 6c 73 65 | ..return.$this->fn;.........else |
| 4ba0 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 30 3b 0a 20 20 20 20 7d 0a 0a 20 20 | .............return.0;.....}.... |
| 4bc0 | 20 20 66 75 6e 63 74 69 6f 6e 20 66 61 75 6c 74 53 74 72 69 6e 67 28 29 20 7b 20 72 65 74 75 72 | ..function.faultString().{.retur |
| 4be0 | 6e 20 24 74 68 69 73 2d 3e 66 73 3b 20 7d 0a 20 20 20 20 66 75 6e 63 74 69 6f 6e 20 76 61 6c 75 | n.$this->fs;.}.....function.valu |
| 4c00 | 65 28 29 20 7b 20 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 78 76 3b 20 7d 0a 0a 20 20 20 20 66 | e().{.return.$this->xv;.}......f |
| 4c20 | 75 6e 63 74 69 6f 6e 20 73 65 72 69 61 6c 69 7a 65 28 29 20 7b 0a 20 20 20 20 20 20 20 20 24 72 | unction.serialize().{.........$r |
| 4c40 | 73 3d 22 3c 6d 65 74 68 6f 64 52 65 73 70 6f 6e 73 65 3e 5c 6e 22 3b 0a 20 20 20 20 20 20 20 20 | s="<methodResponse>\n";......... |
| 4c60 | 69 66 20 28 24 74 68 69 73 2d 3e 66 6e 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 24 72 73 | if.($this->fn).{.............$rs |
| 4c80 | 2e 3d 22 3c 66 61 75 6c 74 3e 0a 20 20 3c 76 61 6c 75 65 3e 0a 20 20 20 20 3c 73 74 72 75 63 74 | .="<fault>...<value>.....<struct |
| 4ca0 | 3e 0a 20 20 20 20 20 20 3c 6d 65 6d 62 65 72 3e 0a 20 20 20 20 20 20 20 20 3c 6e 61 6d 65 3e 66 | >.......<member>.........<name>f |
| 4cc0 | 61 75 6c 74 43 6f 64 65 3c 2f 6e 61 6d 65 3e 0a 20 20 20 20 20 20 20 20 3c 76 61 6c 75 65 3e 3c | aultCode</name>.........<value>< |
| 4ce0 | 69 6e 74 3e 22 20 2e 20 24 74 68 69 73 2d 3e 66 6e 20 2e 20 22 3c 2f 69 6e 74 3e 3c 2f 76 61 6c | int>"...$this->fn..."</int></val |
| 4d00 | 75 65 3e 0a 20 20 20 20 20 20 3c 2f 6d 65 6d 62 65 72 3e 0a 20 20 20 20 20 20 3c 6d 65 6d 62 65 | ue>.......</member>.......<membe |
| 4d20 | 72 3e 0a 20 20 20 20 20 20 20 20 3c 6e 61 6d 65 3e 66 61 75 6c 74 53 74 72 69 6e 67 3c 2f 6e 61 | r>.........<name>faultString</na |
| 4d40 | 6d 65 3e 0a 20 20 20 20 20 20 20 20 3c 76 61 6c 75 65 3e 3c 73 74 72 69 6e 67 3e 22 20 2e 20 24 | me>.........<value><string>"...$ |
| 4d60 | 74 68 69 73 2d 3e 66 73 20 2e 20 22 3c 2f 73 74 72 69 6e 67 3e 3c 2f 76 61 6c 75 65 3e 0a 20 20 | this->fs..."</string></value>... |
| 4d80 | 20 20 20 20 3c 2f 6d 65 6d 62 65 72 3e 0a 20 20 20 20 3c 2f 73 74 72 75 63 74 3e 0a 20 20 3c 2f | ....</member>.....</struct>...</ |
| 4da0 | 76 61 6c 75 65 3e 0a 3c 2f 66 61 75 6c 74 3e 22 3b 0a 20 20 20 20 20 20 20 20 7d 20 65 6c 73 65 | value>.</fault>";.........}.else |
| 4dc0 | 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 24 72 73 2e 3d 22 3c 70 61 72 61 6d 73 3e 5c 6e 3c | .{.............$rs.="<params>\n< |
| 4de0 | 70 61 72 61 6d 3e 5c 6e 22 20 2e 20 24 74 68 69 73 2d 3e 78 76 2d 3e 73 65 72 69 61 6c 69 7a 65 | param>\n"...$this->xv->serialize |
| 4e00 | 28 29 20 2e 0a 20 20 20 20 20 20 20 20 22 3c 2f 70 61 72 61 6d 3e 5c 6e 3c 2f 70 61 72 61 6d 73 | ()..........."</param>\n</params |
| 4e20 | 3e 22 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 24 72 73 2e 3d 22 5c 6e 3c 2f | >";.........}.........$rs.="\n</ |
| 4e40 | 6d 65 74 68 6f 64 52 65 73 70 6f 6e 73 65 3e 22 3b 0a 20 20 20 20 20 20 20 20 72 65 74 75 72 6e | methodResponse>";.........return |
| 4e60 | 20 24 72 73 3b 0a 20 20 20 20 7d 0a 7d 0a 0a 0a 63 6c 61 73 73 20 58 4d 4c 5f 52 50 43 5f 4d 65 | .$rs;.....}.}...class.XML_RPC_Me |
| 4e80 | 73 73 61 67 65 0a 7b 0a 20 20 20 20 76 61 72 20 24 70 61 79 6c 6f 61 64 3b 0a 20 20 20 20 76 61 | ssage.{.....var.$payload;.....va |
| 4ea0 | 72 20 24 6d 65 74 68 6f 64 6e 61 6d 65 3b 0a 20 20 20 20 76 61 72 20 24 70 61 72 61 6d 73 20 3d | r.$methodname;.....var.$params.= |
| 4ec0 | 20 61 72 72 61 79 28 29 3b 0a 20 20 20 20 76 61 72 20 24 64 65 62 75 67 3d 30 3b 0a 0a 20 20 20 | .array();.....var.$debug=0;..... |
| 4ee0 | 20 66 75 6e 63 74 69 6f 6e 20 58 4d 4c 5f 52 50 43 5f 4d 65 73 73 61 67 65 28 24 6d 65 74 68 2c | .function.XML_RPC_Message($meth, |
| 4f00 | 20 24 70 61 72 73 3d 30 29 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 24 74 68 69 73 2d 3e 6d | .$pars=0).....{.........$this->m |
| 4f20 | 65 74 68 6f 64 6e 61 6d 65 3d 24 6d 65 74 68 3b 0a 20 20 20 20 20 20 20 20 69 66 20 28 69 73 5f | ethodname=$meth;.........if.(is_ |
| 4f40 | 61 72 72 61 79 28 24 70 61 72 73 29 20 26 26 20 73 69 7a 65 6f 66 28 24 70 61 72 73 29 3e 30 29 | array($pars).&&.sizeof($pars)>0) |
| 4f60 | 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 28 24 69 3d 30 3b 20 24 69 3c 73 69 7a 65 | .{.............for($i=0;.$i<size |
| 4f80 | 6f 66 28 24 70 61 72 73 29 3b 20 24 69 2b 2b 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | of($pars);.$i++)................ |
| 4fa0 | 20 24 74 68 69 73 2d 3e 61 64 64 50 61 72 61 6d 28 24 70 61 72 73 5b 24 69 5d 29 3b 0a 20 20 20 | .$this->addParam($pars[$i]);.... |
| 4fc0 | 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a 0a 20 20 20 20 66 75 6e 63 74 69 6f 6e 20 78 6d 6c 5f 68 | .....}.....}......function.xml_h |
| 4fe0 | 65 61 64 65 72 28 29 0a 20 20 20 20 7b 0a 20 20 20 20 72 65 74 75 72 6e 20 22 3c 3f 78 6d 6c 20 | eader().....{.....return."<?xml. |
| 5000 | 76 65 72 73 69 6f 6e 3d 5c 22 31 2e 30 5c 22 3f 3e 5c 6e 3c 6d 65 74 68 6f 64 43 61 6c 6c 3e 5c | version=\"1.0\"?>\n<methodCall>\ |
| 5020 | 6e 22 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 66 75 6e 63 74 69 6f 6e 20 78 6d 6c 5f 66 6f 6f 74 | n";.....}......function.xml_foot |
| 5040 | 65 72 28 29 0a 20 20 20 20 7b 0a 20 20 20 20 72 65 74 75 72 6e 20 22 3c 2f 6d 65 74 68 6f 64 43 | er().....{.....return."</methodC |
| 5060 | 61 6c 6c 3e 5c 6e 22 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 66 75 6e 63 74 69 6f 6e 20 63 72 65 | all>\n";.....}......function.cre |
| 5080 | 61 74 65 50 61 79 6c 6f 61 64 28 29 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 24 74 68 69 73 | atePayload().....{.........$this |
| 50a0 | 2d 3e 70 61 79 6c 6f 61 64 3d 24 74 68 69 73 2d 3e 78 6d 6c 5f 68 65 61 64 65 72 28 29 3b 0a 20 | ->payload=$this->xml_header();.. |
| 50c0 | 20 20 20 20 20 20 20 24 74 68 69 73 2d 3e 70 61 79 6c 6f 61 64 2e 3d 22 3c 6d 65 74 68 6f 64 4e | .......$this->payload.="<methodN |
| 50e0 | 61 6d 65 3e 22 20 2e 20 24 74 68 69 73 2d 3e 6d 65 74 68 6f 64 6e 61 6d 65 20 2e 20 22 3c 2f 6d | ame>"...$this->methodname..."</m |
| 5100 | 65 74 68 6f 64 4e 61 6d 65 3e 5c 6e 22 3b 0a 20 20 20 20 20 20 20 20 2f 2f 20 20 69 66 20 28 73 | ethodName>\n";.........//..if.(s |
| 5120 | 69 7a 65 6f 66 28 24 74 68 69 73 2d 3e 70 61 72 61 6d 73 29 29 20 7b 0a 20 20 20 20 20 20 20 20 | izeof($this->params)).{......... |
| 5140 | 20 20 20 20 24 74 68 69 73 2d 3e 70 61 79 6c 6f 61 64 2e 3d 22 3c 70 61 72 61 6d 73 3e 5c 6e 22 | ....$this->payload.="<params>\n" |
| 5160 | 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 28 24 69 3d 30 3b 20 24 69 3c 73 69 7a 65 6f | ;.............for($i=0;.$i<sizeo |
| 5180 | 66 28 24 74 68 69 73 2d 3e 70 61 72 61 6d 73 29 3b 20 24 69 2b 2b 29 20 7b 0a 20 20 20 20 20 20 | f($this->params);.$i++).{....... |
| 51a0 | 20 20 20 20 20 20 20 20 20 20 24 70 3d 24 74 68 69 73 2d 3e 70 61 72 61 6d 73 5b 24 69 5d 3b 0a | ..........$p=$this->params[$i];. |
| 51c0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 24 74 68 69 73 2d 3e 70 61 79 6c 6f 61 64 2e 3d | ................$this->payload.= |
| 51e0 | 22 3c 70 61 72 61 6d 3e 5c 6e 22 20 2e 20 24 70 2d 3e 73 65 72 69 61 6c 69 7a 65 28 29 20 2e 0a | "<param>\n"...$p->serialize()... |
| 5200 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 3c 2f 70 61 72 61 6d 3e 5c 6e 22 | ...................."</param>\n" |
| 5220 | 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 20 20 20 20 24 74 68 69 | ;.............}.............$thi |
| 5240 | 73 2d 3e 70 61 79 6c 6f 61 64 2e 3d 22 3c 2f 70 61 72 61 6d 73 3e 5c 6e 22 3b 0a 20 20 20 20 20 | s->payload.="</params>\n";...... |
| 5260 | 20 20 20 2f 2f 20 7d 0a 20 20 20 20 20 20 20 20 24 74 68 69 73 2d 3e 70 61 79 6c 6f 61 64 2e 3d | ...//.}.........$this->payload.= |
| 5280 | 24 74 68 69 73 2d 3e 78 6d 6c 5f 66 6f 6f 74 65 72 28 29 3b 0a 20 20 20 20 20 20 20 20 24 74 68 | $this->xml_footer();.........$th |
| 52a0 | 69 73 2d 3e 70 61 79 6c 6f 61 64 3d 73 74 72 5f 72 65 70 6c 61 63 65 28 22 5c 6e 22 2c 20 22 5c | is->payload=str_replace("\n",."\ |
| 52c0 | 72 5c 6e 22 2c 20 24 74 68 69 73 2d 3e 70 61 79 6c 6f 61 64 29 3b 0a 20 20 20 20 7d 0a 0a 20 20 | r\n",.$this->payload);.....}.... |
| 52e0 | 20 20 66 75 6e 63 74 69 6f 6e 20 6d 65 74 68 6f 64 28 24 6d 65 74 68 3d 22 22 29 0a 20 20 20 20 | ..function.method($meth="")..... |
| 5300 | 7b 0a 20 20 20 20 20 20 20 20 69 66 20 28 24 6d 65 74 68 21 3d 22 22 29 20 7b 0a 20 20 20 20 20 | {.........if.($meth!="").{...... |
| 5320 | 20 20 20 20 20 20 20 24 74 68 69 73 2d 3e 6d 65 74 68 6f 64 6e 61 6d 65 3d 24 6d 65 74 68 3b 0a | .......$this->methodname=$meth;. |
| 5340 | 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e | ........}.........return.$this-> |
| 5360 | 6d 65 74 68 6f 64 6e 61 6d 65 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 66 75 6e 63 74 69 6f 6e 20 | methodname;.....}......function. |
| 5380 | 73 65 72 69 61 6c 69 7a 65 28 29 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 24 74 68 69 73 2d | serialize().....{.........$this- |
| 53a0 | 3e 63 72 65 61 74 65 50 61 79 6c 6f 61 64 28 29 3b 0a 20 20 20 20 20 20 20 20 72 65 74 75 72 6e | >createPayload();.........return |
| 53c0 | 20 24 74 68 69 73 2d 3e 70 61 79 6c 6f 61 64 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 66 75 6e 63 | .$this->payload;.....}......func |
| 53e0 | 74 69 6f 6e 20 61 64 64 50 61 72 61 6d 28 24 70 61 72 29 20 7b 20 24 74 68 69 73 2d 3e 70 61 72 | tion.addParam($par).{.$this->par |
| 5400 | 61 6d 73 5b 5d 3d 24 70 61 72 3b 20 7d 0a 20 20 20 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 50 61 | ams[]=$par;.}.....function.getPa |
| 5420 | 72 61 6d 28 24 69 29 20 7b 20 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 70 61 72 61 6d 73 5b 24 | ram($i).{.return.$this->params[$ |
| 5440 | 69 5d 3b 20 7d 0a 20 20 20 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 4e 75 6d 50 61 72 61 6d 73 28 | i];.}.....function.getNumParams( |
| 5460 | 29 20 7b 20 72 65 74 75 72 6e 20 73 69 7a 65 6f 66 28 24 74 68 69 73 2d 3e 70 61 72 61 6d 73 29 | ).{.return.sizeof($this->params) |
| 5480 | 3b 20 7d 0a 0a 20 20 20 20 66 75 6e 63 74 69 6f 6e 20 70 61 72 73 65 52 65 73 70 6f 6e 73 65 46 | ;.}......function.parseResponseF |
| 54a0 | 69 6c 65 28 24 66 70 29 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 24 69 70 64 3d 22 22 3b 0a | ile($fp).....{.........$ipd="";. |
| 54c0 | 0a 20 20 20 20 20 20 20 20 77 68 69 6c 65 28 24 64 61 74 61 3d 66 72 65 61 64 28 24 66 70 2c 20 | .........while($data=fread($fp,. |
| 54e0 | 33 32 37 36 38 29 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 24 69 70 64 2e 3d 24 64 61 74 | 32768)).{.............$ipd.=$dat |
| 5500 | 61 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 24 74 68 69 | a;.........}.........return.$thi |
| 5520 | 73 2d 3e 70 61 72 73 65 52 65 73 70 6f 6e 73 65 28 24 69 70 64 29 3b 0a 20 20 20 20 7d 0a 0a 20 | s->parseResponse($ipd);.....}... |
| 5540 | 20 20 20 66 75 6e 63 74 69 6f 6e 20 70 61 72 73 65 52 65 73 70 6f 6e 73 65 28 24 64 61 74 61 3d | ...function.parseResponse($data= |
| 5560 | 22 22 29 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 67 6c 6f 62 61 6c 20 24 58 4d 4c 5f 52 50 | "").....{.........global.$XML_RP |
| 5580 | 43 5f 78 68 2c 24 58 4d 4c 5f 52 50 43 5f 65 72 72 2c 24 58 4d 4c 5f 52 50 43 5f 73 74 72 3b 0a | C_xh,$XML_RPC_err,$XML_RPC_str;. |
| 55a0 | 20 20 20 20 20 20 20 20 67 6c 6f 62 61 6c 20 24 58 4d 4c 5f 52 50 43 5f 64 65 66 65 6e 63 6f 64 | ........global.$XML_RPC_defencod |
| 55c0 | 69 6e 67 3b 0a 0a 20 20 20 20 20 20 20 20 24 70 61 72 73 65 72 20 3d 20 78 6d 6c 5f 70 61 72 73 | ing;..........$parser.=.xml_pars |
| 55e0 | 65 72 5f 63 72 65 61 74 65 28 24 58 4d 4c 5f 52 50 43 5f 64 65 66 65 6e 63 6f 64 69 6e 67 29 3b | er_create($XML_RPC_defencoding); |
| 5600 | 0a 0a 20 20 20 20 20 20 20 20 24 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 72 73 65 72 5d 3d 61 | ..........$XML_RPC_xh[$parser]=a |
| 5620 | 72 72 61 79 28 29 3b 0a 0a 20 20 20 20 20 20 20 20 24 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 | rray();..........$XML_RPC_xh[$pa |
| 5640 | 72 73 65 72 5d 5b 27 73 74 27 5d 3d 22 22 3b 0a 20 20 20 20 20 20 20 20 24 58 4d 4c 5f 52 50 43 | rser]['st']="";.........$XML_RPC |
| 5660 | 5f 78 68 5b 24 70 61 72 73 65 72 5d 5b 27 63 6d 27 5d 3d 30 3b 0a 20 20 20 20 20 20 20 20 24 58 | _xh[$parser]['cm']=0;.........$X |
| 5680 | 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 72 73 65 72 5d 5b 27 69 73 66 27 5d 3d 30 3b 0a 20 20 20 | ML_RPC_xh[$parser]['isf']=0;.... |
| 56a0 | 20 20 20 20 20 24 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 72 73 65 72 5d 5b 27 61 63 27 5d 3d | .....$XML_RPC_xh[$parser]['ac']= |
| 56c0 | 22 22 3b 0a 20 20 20 20 20 20 20 20 24 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 72 73 65 72 5d | "";.........$XML_RPC_xh[$parser] |
| 56e0 | 5b 27 71 74 27 5d 3d 22 22 3b 0a 0a 20 20 20 20 20 20 20 20 78 6d 6c 5f 70 61 72 73 65 72 5f 73 | ['qt']="";..........xml_parser_s |
| 5700 | 65 74 5f 6f 70 74 69 6f 6e 28 24 70 61 72 73 65 72 2c 20 58 4d 4c 5f 4f 50 54 49 4f 4e 5f 43 41 | et_option($parser,.XML_OPTION_CA |
| 5720 | 53 45 5f 46 4f 4c 44 49 4e 47 2c 20 74 72 75 65 29 3b 0a 20 20 20 20 20 20 20 20 78 6d 6c 5f 73 | SE_FOLDING,.true);.........xml_s |
| 5740 | 65 74 5f 65 6c 65 6d 65 6e 74 5f 68 61 6e 64 6c 65 72 28 24 70 61 72 73 65 72 2c 20 22 58 4d 4c | et_element_handler($parser,."XML |
| 5760 | 5f 52 50 43 5f 73 65 22 2c 20 22 58 4d 4c 5f 52 50 43 5f 65 65 22 29 3b 0a 20 20 20 20 20 20 20 | _RPC_se",."XML_RPC_ee");........ |
| 5780 | 20 78 6d 6c 5f 73 65 74 5f 63 68 61 72 61 63 74 65 72 5f 64 61 74 61 5f 68 61 6e 64 6c 65 72 28 | .xml_set_character_data_handler( |
| 57a0 | 24 70 61 72 73 65 72 2c 20 22 58 4d 4c 5f 52 50 43 5f 63 64 22 29 3b 0a 20 20 20 20 20 20 20 20 | $parser,."XML_RPC_cd");......... |
| 57c0 | 78 6d 6c 5f 73 65 74 5f 64 65 66 61 75 6c 74 5f 68 61 6e 64 6c 65 72 28 24 70 61 72 73 65 72 2c | xml_set_default_handler($parser, |
| 57e0 | 20 22 58 4d 4c 5f 52 50 43 5f 64 68 22 29 3b 0a 20 20 20 20 20 20 20 20 24 78 6d 6c 72 70 63 5f | ."XML_RPC_dh");.........$xmlrpc_ |
| 5800 | 76 61 6c 75 65 20 3d 20 6e 65 77 20 58 4d 4c 5f 52 50 43 5f 56 61 6c 75 65 3b 0a 0a 20 20 20 20 | value.=.new.XML_RPC_Value;...... |
| 5820 | 20 20 20 20 24 68 64 72 66 6e 64 3d 30 3b 0a 20 20 20 20 20 20 20 20 69 66 20 28 24 74 68 69 73 | ....$hdrfnd=0;.........if.($this |
| 5840 | 2d 3e 64 65 62 75 67 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 70 72 69 6e 74 20 22 3c 50 | ->debug).{.............print."<P |
| 5860 | 52 45 3e 2d 2d 2d 47 4f 54 2d 2d 2d 5c 6e 22 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 70 72 69 | RE>---GOT---\n";.............pri |
| 5880 | 6e 74 20 69 73 73 65 74 28 24 5f 53 45 52 56 45 52 5b 27 53 45 52 56 45 52 5f 50 52 4f 54 4f 43 | nt.isset($_SERVER['SERVER_PROTOC |
| 58a0 | 4f 4c 27 5d 29 20 3f 20 68 74 6d 6c 73 70 65 63 69 61 6c 63 68 61 72 73 28 24 64 61 74 61 29 20 | OL']).?.htmlspecialchars($data). |
| 58c0 | 3a 20 24 64 61 74 61 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 70 72 69 6e 74 20 22 5c 6e 2d 2d | :.$data;.............print."\n-- |
| 58e0 | 2d 45 4e 44 2d 2d 2d 5c 6e 3c 2f 50 52 45 3e 22 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 | -END---\n</PRE>";.........}..... |
| 5900 | 20 20 20 20 2f 2f 20 73 65 65 20 69 66 20 77 65 20 67 6f 74 20 61 6e 20 48 54 54 50 20 32 30 30 | ....//.see.if.we.got.an.HTTP.200 |
| 5920 | 20 4f 4b 2c 20 65 6c 73 65 20 62 6f 6d 62 0a 20 20 20 20 20 20 20 20 2f 2f 20 62 75 74 20 6f 6e | .OK,.else.bomb.........//.but.on |
| 5940 | 6c 79 20 64 6f 20 74 68 69 73 20 69 66 20 77 65 27 72 65 20 75 73 69 6e 67 20 74 68 65 20 48 54 | ly.do.this.if.we're.using.the.HT |
| 5960 | 54 50 20 70 72 6f 74 6f 63 6f 6c 2e 0a 20 20 20 20 20 20 20 20 69 66 20 28 65 72 65 67 28 22 5e | TP.protocol..........if.(ereg("^ |
| 5980 | 48 54 54 50 22 2c 24 64 61 74 61 29 20 26 26 0a 20 20 20 20 20 20 20 20 20 20 20 20 21 65 72 65 | HTTP",$data).&&.............!ere |
| 59a0 | 67 28 22 5e 48 54 54 50 2f 5b 30 2d 39 5c 2e 5d 2b 20 32 30 30 20 22 2c 20 24 64 61 74 61 29 29 | g("^HTTP/[0-9\.]+.200.",.$data)) |
| 59c0 | 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 24 65 72 72 73 74 72 3d 20 73 75 62 73 | .{.................$errstr=.subs |
| 59e0 | 74 72 28 24 64 61 74 61 2c 20 30 2c 20 73 74 72 70 6f 73 28 24 64 61 74 61 2c 20 22 5c 6e 22 29 | tr($data,.0,.strpos($data,."\n") |
| 5a00 | 2d 31 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 72 72 6f 72 5f 6c 6f 67 28 22 | -1);.................error_log(" |
| 5a20 | 48 54 54 50 20 65 72 72 6f 72 2c 20 67 6f 74 20 72 65 73 70 6f 6e 73 65 3a 20 22 20 2e 24 65 72 | HTTP.error,.got.response:."..$er |
| 5a40 | 72 73 74 72 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 24 72 3d 6e 65 77 20 58 4d | rstr);.................$r=new.XM |
| 5a60 | 4c 5f 52 50 43 5f 52 65 73 70 6f 6e 73 65 28 30 2c 20 24 58 4d 4c 5f 52 50 43 5f 65 72 72 5b 22 | L_RPC_Response(0,.$XML_RPC_err[" |
| 5a80 | 68 74 74 70 5f 65 72 72 6f 72 22 5d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | http_error"],................... |
| 5aa0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 24 58 4d 4c 5f 52 50 43 5f 73 | ......................$XML_RPC_s |
| 5ac0 | 74 72 5b 22 68 74 74 70 5f 65 72 72 6f 72 22 5d 2e 20 22 20 28 22 20 2e 0a 20 20 20 20 20 20 20 | tr["http_error"]..".(".......... |
| 5ae0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ................................ |
| 5b00 | 20 24 65 72 72 73 74 72 20 2e 20 22 29 22 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | .$errstr...")");................ |
| 5b20 | 20 78 6d 6c 5f 70 61 72 73 65 72 5f 66 72 65 65 28 24 70 61 72 73 65 72 29 3b 0a 20 20 20 20 20 | .xml_parser_free($parser);...... |
| 5b40 | 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 24 72 3b 0a 20 20 20 20 20 20 20 20 7d 0a | ...........return.$r;.........}. |
| 5b60 | 20 20 20 20 20 20 20 20 2f 2f 20 67 6f 74 74 61 20 67 65 74 20 72 69 64 20 6f 66 20 68 65 61 64 | ........//.gotta.get.rid.of.head |
| 5b80 | 65 72 73 20 68 65 72 65 0a 20 20 20 20 20 20 20 20 20 20 0a 20 20 20 20 20 20 20 20 0a 20 20 20 | ers.here........................ |
| 5ba0 | 20 20 20 20 20 69 66 20 28 28 21 24 68 64 72 66 6e 64 29 20 26 26 20 28 24 62 72 70 6f 73 20 3d | .....if.((!$hdrfnd).&&.($brpos.= |
| 5bc0 | 20 73 74 72 70 6f 73 28 24 64 61 74 61 2c 22 5c 72 5c 6e 5c 72 5c 6e 22 29 29 29 20 7b 0a 20 20 | .strpos($data,"\r\n\r\n"))).{... |
| 5be0 | 20 20 20 20 20 20 20 20 20 20 24 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 72 73 65 72 5d 5b 27 | ..........$XML_RPC_xh[$parser][' |
| 5c00 | 68 61 27 5d 20 3d 20 73 75 62 73 74 72 28 24 64 61 74 61 2c 30 2c 24 62 72 70 6f 73 29 3b 0a 20 | ha'].=.substr($data,0,$brpos);.. |
| 5c20 | 20 20 20 20 20 20 20 20 20 20 20 24 64 61 74 61 3d 20 73 75 62 73 74 72 28 24 64 61 74 61 2c 24 | ...........$data=.substr($data,$ |
| 5c40 | 62 72 70 6f 73 2b 34 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 24 68 64 72 66 6e 64 3d 31 3b | brpos+4);.............$hdrfnd=1; |
| 5c60 | 0a 20 20 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 20 20 69 66 20 28 21 78 6d 6c 5f 70 61 72 | .........}..........if.(!xml_par |
| 5c80 | 73 65 28 24 70 61 72 73 65 72 2c 20 24 64 61 74 61 2c 20 73 69 7a 65 6f 66 28 24 64 61 74 61 29 | se($parser,.$data,.sizeof($data) |
| 5ca0 | 29 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 74 68 61 6e 6b 73 20 74 6f 20 50 65 | )).{.............//.thanks.to.Pe |
| 5cc0 | 74 65 72 20 4b 6f 63 6b 73 20 3c 70 65 74 65 72 2e 6b 6f 63 6b 73 40 62 61 79 67 61 74 65 2e 63 | ter.Kocks.<peter.kocks@baygate.c |
| 5ce0 | 6f 6d 3e 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 28 28 78 6d 6c 5f 67 65 74 5f 63 75 72 72 | om>.............if((xml_get_curr |
| 5d00 | 65 6e 74 5f 6c 69 6e 65 5f 6e 75 6d 62 65 72 28 24 70 61 72 73 65 72 29 29 20 3d 3d 20 31 29 0a | ent_line_number($parser)).==.1). |
| 5d20 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 24 65 72 72 73 74 72 20 3d 20 22 58 4d 4c 20 65 | ................$errstr.=."XML.e |
| 5d40 | 72 72 6f 72 20 61 74 20 6c 69 6e 65 20 31 2c 20 63 68 65 63 6b 20 55 52 4c 22 3b 0a 20 20 20 20 | rror.at.line.1,.check.URL";..... |
| 5d60 | 20 20 20 20 20 20 20 20 65 6c 73 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 24 65 72 | ........else.................$er |
| 5d80 | 72 73 74 72 20 3d 20 73 70 72 69 6e 74 66 28 22 58 4d 4c 20 65 72 72 6f 72 3a 20 25 73 20 61 74 | rstr.=.sprintf("XML.error:.%s.at |
| 5da0 | 20 6c 69 6e 65 20 25 64 22 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | .line.%d",...................... |
| 5dc0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 78 6d 6c 5f 65 72 72 6f 72 5f 73 74 72 69 6e 67 28 78 6d | .............xml_error_string(xm |
| 5de0 | 6c 5f 67 65 74 5f 65 72 72 6f 72 5f 63 6f 64 65 28 24 70 61 72 73 65 72 29 29 2c 0a 20 20 20 20 | l_get_error_code($parser)),..... |
| 5e00 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 78 6d | ..............................xm |
| 5e20 | 6c 5f 67 65 74 5f 63 75 72 72 65 6e 74 5f 6c 69 6e 65 5f 6e 75 6d 62 65 72 28 24 70 61 72 73 65 | l_get_current_line_number($parse |
| 5e40 | 72 29 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 65 72 72 6f 72 5f 6c 6f 67 28 24 65 72 72 73 | r));.............error_log($errs |
| 5e60 | 74 72 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 24 72 3d 6e 65 77 20 58 4d 4c 5f 52 50 43 5f | tr);.............$r=new.XML_RPC_ |
| 5e80 | 52 65 73 70 6f 6e 73 65 28 30 2c 20 24 58 4d 4c 5f 52 50 43 5f 65 72 72 5b 22 69 6e 76 61 6c 69 | Response(0,.$XML_RPC_err["invali |
| 5ea0 | 64 5f 72 65 74 75 72 6e 22 5d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | d_return"],..................... |
| 5ec0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 24 58 4d 4c 5f 52 50 43 5f 73 74 72 5b 22 69 6e | ................$XML_RPC_str["in |
| 5ee0 | 76 61 6c 69 64 5f 72 65 74 75 72 6e 22 5d 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 78 6d 6c | valid_return"]);.............xml |
| 5f00 | 5f 70 61 72 73 65 72 5f 66 72 65 65 28 24 70 61 72 73 65 72 29 3b 0a 20 20 20 20 20 20 20 20 20 | _parser_free($parser);.......... |
| 5f20 | 20 20 20 72 65 74 75 72 6e 20 24 72 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 | ...return.$r;.........}......... |
| 5f40 | 78 6d 6c 5f 70 61 72 73 65 72 5f 66 72 65 65 28 24 70 61 72 73 65 72 29 3b 0a 20 20 20 20 20 20 | xml_parser_free($parser);....... |
| 5f60 | 20 20 69 66 20 28 24 74 68 69 73 2d 3e 64 65 62 75 67 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 | ..if.($this->debug).{........... |
| 5f80 | 20 20 70 72 69 6e 74 20 22 3c 50 52 45 3e 2d 2d 2d 45 56 41 4c 49 4e 47 2d 2d 2d 5b 22 20 2e 0a | ..print."<PRE>---EVALING---["... |
| 5fa0 | 20 20 20 20 20 20 20 20 20 20 20 20 73 74 72 6c 65 6e 28 24 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 | ............strlen($XML_RPC_xh[$ |
| 5fc0 | 70 61 72 73 65 72 5d 5b 27 73 74 27 5d 29 20 2e 20 22 20 63 68 61 72 73 5d 2d 2d 2d 5c 6e 22 20 | parser]['st'])...".chars]---\n". |
| 5fe0 | 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 68 74 6d 6c 73 70 65 63 69 61 6c 63 68 61 72 73 28 24 | ..............htmlspecialchars($ |
| 6000 | 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 72 73 65 72 5d 5b 27 73 74 27 5d 29 20 2e 20 22 3b 5c | XML_RPC_xh[$parser]['st'])...";\ |
| 6020 | 6e 2d 2d 2d 45 4e 44 2d 2d 2d 3c 2f 50 52 45 3e 22 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 | n---END---</PRE>";.........}.... |
| 6040 | 20 20 20 20 20 69 66 20 28 73 74 72 6c 65 6e 28 24 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 72 | .....if.(strlen($XML_RPC_xh[$par |
| 6060 | 73 65 72 5d 5b 27 73 74 27 5d 29 3d 3d 30 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f | ser]['st'])==0).{.............// |
| 6080 | 20 74 68 65 6e 20 73 6f 6d 65 74 68 69 6e 67 20 6f 64 64 20 68 61 73 20 68 61 70 70 65 6e 65 64 | .then.something.odd.has.happened |
| 60a0 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 61 6e 64 20 69 74 27 73 20 74 69 6d 65 20 74 6f | .............//.and.it's.time.to |
| 60c0 | 20 67 65 6e 65 72 61 74 65 20 61 20 63 6c 69 65 6e 74 20 73 69 64 65 20 65 72 72 6f 72 0a 20 20 | .generate.a.client.side.error... |
| 60e0 | 20 20 20 20 20 20 20 20 20 20 2f 2f 20 69 6e 64 69 63 61 74 69 6e 67 20 73 6f 6d 65 74 68 69 6e | ..........//.indicating.somethin |
| 6100 | 67 20 6f 64 64 20 77 65 6e 74 20 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 24 72 3d 6e 65 77 | g.odd.went.on.............$r=new |
| 6120 | 20 58 4d 4c 5f 52 50 43 5f 52 65 73 70 6f 6e 73 65 28 30 2c 20 24 58 4d 4c 5f 52 50 43 5f 65 72 | .XML_RPC_Response(0,.$XML_RPC_er |
| 6140 | 72 5b 22 69 6e 76 61 6c 69 64 5f 72 65 74 75 72 6e 22 5d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 | r["invalid_return"],............ |
| 6160 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 24 58 4d 4c | ............................$XML |
| 6180 | 5f 52 50 43 5f 73 74 72 5b 22 69 6e 76 61 6c 69 64 5f 72 65 74 75 72 6e 22 5d 29 3b 0a 20 20 20 | _RPC_str["invalid_return"]);.... |
| 61a0 | 20 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 65 76 61 6c 28 27 | .....}.else.{.............eval(' |
| 61c0 | 24 76 3d 27 20 2e 20 24 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 72 73 65 72 5d 5b 27 73 74 27 | $v='...$XML_RPC_xh[$parser]['st' |
| 61e0 | 5d 20 2e 20 27 3b 20 24 61 6c 6c 4f 4b 3d 31 3b 27 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 | ]...';.$allOK=1;');............. |
| 6200 | 69 66 20 28 24 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 72 73 65 72 5d 5b 27 69 73 66 27 5d 29 | if.($XML_RPC_xh[$parser]['isf']) |
| 6220 | 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 24 66 3d 24 76 2d 3e 73 74 72 75 63 74 | .{.................$f=$v->struct |
| 6240 | 6d 65 6d 28 22 66 61 75 6c 74 43 6f 64 65 22 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | mem("faultCode");............... |
| 6260 | 20 20 24 66 73 3d 24 76 2d 3e 73 74 72 75 63 74 6d 65 6d 28 22 66 61 75 6c 74 53 74 72 69 6e 67 | ..$fs=$v->structmem("faultString |
| 6280 | 22 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 24 72 3d 6e 65 77 20 58 4d 4c 5f 52 | ");.................$r=new.XML_R |
| 62a0 | 50 43 5f 52 65 73 70 6f 6e 73 65 28 24 76 2c 20 24 66 2d 3e 73 63 61 6c 61 72 76 61 6c 28 29 2c | PC_Response($v,.$f->scalarval(), |
| 62c0 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ................................ |
| 62e0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 24 66 73 2d 3e 73 63 61 6c 61 72 76 61 6c 28 29 29 3b 0a | .............$fs->scalarval());. |
| 6300 | 20 20 20 20 20 20 20 20 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 | ............}.else.{............ |
| 6320 | 20 20 20 20 20 24 72 3d 6e 65 77 20 58 4d 4c 5f 52 50 43 5f 52 65 73 70 6f 6e 73 65 28 24 76 29 | .....$r=new.XML_RPC_Response($v) |
| 6340 | 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 | ;.............}.........}....... |
| 6360 | 20 20 24 72 2d 3e 68 64 72 73 3d 73 70 6c 69 74 28 22 5c 72 3f 5c 6e 22 2c 20 24 58 4d 4c 5f 52 | ..$r->hdrs=split("\r?\n",.$XML_R |
| 6380 | 50 43 5f 78 68 5b 24 70 61 72 73 65 72 5d 5b 27 68 61 27 5d 5b 31 5d 29 3b 0a 20 20 20 20 20 20 | PC_xh[$parser]['ha'][1]);....... |
| 63a0 | 20 20 72 65 74 75 72 6e 20 24 72 3b 0a 20 20 20 20 7d 0a 0a 7d 0a 0a 0a 63 6c 61 73 73 20 58 4d | ..return.$r;.....}..}...class.XM |
| 63c0 | 4c 5f 52 50 43 5f 56 61 6c 75 65 0a 7b 0a 20 20 20 20 76 61 72 20 24 6d 65 3d 61 72 72 61 79 28 | L_RPC_Value.{.....var.$me=array( |
| 63e0 | 29 3b 0a 20 20 20 20 76 61 72 20 24 6d 79 74 79 70 65 3d 30 3b 0a 0a 20 20 20 20 66 75 6e 63 74 | );.....var.$mytype=0;......funct |
| 6400 | 69 6f 6e 20 58 4d 4c 5f 52 50 43 5f 56 61 6c 75 65 28 24 76 61 6c 3d 2d 31 2c 20 24 74 79 70 65 | ion.XML_RPC_Value($val=-1,.$type |
| 6420 | 3d 22 22 29 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 67 6c 6f 62 61 6c 20 24 58 4d 4c 5f 52 | ="").....{.........global.$XML_R |
| 6440 | 50 43 5f 54 79 70 65 73 3b 0a 20 20 20 20 20 20 20 20 24 74 68 69 73 2d 3e 6d 65 3d 61 72 72 61 | PC_Types;.........$this->me=arra |
| 6460 | 79 28 29 3b 0a 20 20 20 20 20 20 20 20 24 74 68 69 73 2d 3e 6d 79 74 79 70 65 3d 30 3b 0a 20 20 | y();.........$this->mytype=0;... |
| 6480 | 20 20 20 20 20 20 69 66 20 28 24 76 61 6c 21 3d 2d 31 20 7c 7c 20 24 74 79 70 65 21 3d 22 22 29 | ......if.($val!=-1.||.$type!="") |
| 64a0 | 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 24 74 79 70 65 3d 3d 22 22 29 20 24 74 | .{.............if.($type=="").$t |
| 64c0 | 79 70 65 3d 22 73 74 72 69 6e 67 22 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 24 58 | ype="string";.............if.($X |
| 64e0 | 4d 4c 5f 52 50 43 5f 54 79 70 65 73 5b 24 74 79 70 65 5d 3d 3d 31 29 20 7b 0a 20 20 20 20 20 20 | ML_RPC_Types[$type]==1).{....... |
| 6500 | 20 20 20 20 20 20 20 20 20 20 24 74 68 69 73 2d 3e 61 64 64 53 63 61 6c 61 72 28 24 76 61 6c 2c | ..........$this->addScalar($val, |
| 6520 | 24 74 79 70 65 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 20 20 | $type);.............}........... |
| 6540 | 20 20 65 6c 73 65 20 69 66 20 28 24 58 4d 4c 5f 52 50 43 5f 54 79 70 65 73 5b 24 74 79 70 65 5d | ..else.if.($XML_RPC_Types[$type] |
| 6560 | 3d 3d 32 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 24 74 68 69 73 2d 3e 61 64 64 41 | ==2).................$this->addA |
| 6580 | 72 72 61 79 28 24 76 61 6c 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 65 6c 73 65 20 69 66 20 | rray($val);.............else.if. |
| 65a0 | 28 24 58 4d 4c 5f 52 50 43 5f 54 79 70 65 73 5b 24 74 79 70 65 5d 3d 3d 33 29 0a 20 20 20 20 20 | ($XML_RPC_Types[$type]==3)...... |
| 65c0 | 20 20 20 20 20 20 20 20 20 20 20 24 74 68 69 73 2d 3e 61 64 64 53 74 72 75 63 74 28 24 76 61 6c | ...........$this->addStruct($val |
| 65e0 | 29 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a 0a 20 20 20 20 66 75 6e 63 74 69 6f 6e | );.........}.....}......function |
| 6600 | 20 61 64 64 53 63 61 6c 61 72 28 24 76 61 6c 2c 20 24 74 79 70 65 3d 22 73 74 72 69 6e 67 22 29 | .addScalar($val,.$type="string") |
| 6620 | 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 67 6c 6f 62 61 6c 20 24 58 4d 4c 5f 52 50 43 5f 54 | .....{.........global.$XML_RPC_T |
| 6640 | 79 70 65 73 2c 20 24 58 4d 4c 5f 52 50 43 5f 42 6f 6f 6c 65 61 6e 3b 0a 0a 20 20 20 20 20 20 20 | ypes,.$XML_RPC_Boolean;......... |
| 6660 | 20 69 66 20 28 24 74 68 69 73 2d 3e 6d 79 74 79 70 65 3d 3d 31 29 20 7b 0a 20 20 20 20 20 20 20 | .if.($this->mytype==1).{........ |
| 6680 | 20 20 20 20 20 65 63 68 6f 20 22 3c 42 3e 58 4d 4c 5f 52 50 43 5f 56 61 6c 75 65 3c 2f 42 3e 3a | .....echo."<B>XML_RPC_Value</B>: |
| 66a0 | 20 73 63 61 6c 61 72 20 63 61 6e 20 68 61 76 65 20 6f 6e 6c 79 20 6f 6e 65 20 76 61 6c 75 65 3c | .scalar.can.have.only.one.value< |
| 66c0 | 42 52 3e 22 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 30 3b 0a 20 20 20 20 | BR>";.............return.0;..... |
| 66e0 | 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 24 74 79 70 65 6f 66 3d 24 58 4d 4c 5f 52 50 43 5f 54 | ....}.........$typeof=$XML_RPC_T |
| 6700 | 79 70 65 73 5b 24 74 79 70 65 5d 3b 0a 20 20 20 20 20 20 20 20 69 66 20 28 24 74 79 70 65 6f 66 | ypes[$type];.........if.($typeof |
| 6720 | 21 3d 31 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 65 63 68 6f 20 22 3c 42 3e 58 4d 4c 5f | !=1).{.............echo."<B>XML_ |
| 6740 | 52 50 43 5f 56 61 6c 75 65 3c 2f 42 3e 3a 20 6e 6f 74 20 61 20 73 63 61 6c 61 72 20 74 79 70 65 | RPC_Value</B>:.not.a.scalar.type |
| 6760 | 20 28 24 7b 74 79 70 65 6f 66 7d 29 3c 42 52 3e 22 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 | .(${typeof})<BR>";.............r |
| 6780 | 65 74 75 72 6e 20 30 3b 0a 20 20 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 20 20 69 66 20 28 | eturn.0;.........}..........if.( |
| 67a0 | 24 74 79 70 65 3d 3d 24 58 4d 4c 5f 52 50 43 5f 42 6f 6f 6c 65 61 6e 29 20 7b 0a 20 20 20 20 20 | $type==$XML_RPC_Boolean).{...... |
| 67c0 | 20 20 20 20 20 20 20 69 66 20 28 73 74 72 63 61 73 65 63 6d 70 28 24 76 61 6c 2c 22 74 72 75 65 | .......if.(strcasecmp($val,"true |
| 67e0 | 22 29 3d 3d 30 20 7c 7c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 24 76 61 6c 3d 3d 31 | ")==0.||.................$val==1 |
| 6800 | 20 7c 7c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 24 76 61 6c 3d 3d 74 72 75 65 20 | .||.................($val==true. |
| 6820 | 26 26 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 74 72 63 61 73 65 63 6d | &&.....................strcasecm |
| 6840 | 70 28 24 76 61 6c 2c 22 66 61 6c 73 65 22 29 29 29 20 7b 0a 0a 20 20 20 20 20 20 20 20 20 20 20 | p($val,"false"))).{............. |
| 6860 | 20 20 20 20 20 24 76 61 6c 3d 31 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 20 65 6c 73 65 20 | .....$val=1;.............}.else. |
| 6880 | 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 24 76 61 6c 3d 30 3b 0a 20 20 20 20 20 20 | {.................$val=0;....... |
| 68a0 | 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 20 20 69 66 20 28 24 | ......}.........}..........if.($ |
| 68c0 | 74 68 69 73 2d 3e 6d 79 74 79 70 65 3d 3d 32 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f | this->mytype==2).{............./ |
| 68e0 | 2f 20 77 65 27 72 65 20 61 64 64 69 6e 67 20 74 6f 20 61 6e 20 61 72 72 61 79 20 68 65 72 65 0a | /.we're.adding.to.an.array.here. |
| 6900 | 20 20 20 20 20 20 20 20 20 20 20 20 24 61 72 3d 24 74 68 69 73 2d 3e 6d 65 5b 22 61 72 72 61 79 | ............$ar=$this->me["array |
| 6920 | 22 5d 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 24 61 72 5b 5d 3d 6e 65 77 20 58 4d 4c 5f 52 50 | "];.............$ar[]=new.XML_RP |
| 6940 | 43 5f 56 61 6c 75 65 28 24 76 61 6c 2c 20 24 74 79 70 65 29 3b 0a 20 20 20 20 20 20 20 20 20 20 | C_Value($val,.$type);........... |
| 6960 | 20 20 24 74 68 69 73 2d 3e 6d 65 5b 22 61 72 72 61 79 22 5d 3d 24 61 72 3b 0a 20 20 20 20 20 20 | ..$this->me["array"]=$ar;....... |
| 6980 | 20 20 7d 20 65 6c 73 65 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 61 20 73 63 61 6c | ..}.else.{.............//.a.scal |
| 69a0 | 61 72 2c 20 73 6f 20 73 65 74 20 74 68 65 20 76 61 6c 75 65 20 61 6e 64 20 72 65 6d 65 6d 62 65 | ar,.so.set.the.value.and.remembe |
| 69c0 | 72 20 77 65 27 72 65 20 73 63 61 6c 61 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 24 74 68 69 73 | r.we're.scalar.............$this |
| 69e0 | 2d 3e 6d 65 5b 24 74 79 70 65 5d 3d 24 76 61 6c 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 24 74 | ->me[$type]=$val;.............$t |
| 6a00 | 68 69 73 2d 3e 6d 79 74 79 70 65 3d 24 74 79 70 65 6f 66 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 | his->mytype=$typeof;.........}.. |
| 6a20 | 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 31 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 66 75 6e 63 | .......return.1;.....}......func |
| 6a40 | 74 69 6f 6e 20 61 64 64 41 72 72 61 79 28 24 76 61 6c 73 29 0a 20 20 20 20 7b 0a 20 20 20 20 20 | tion.addArray($vals).....{...... |
| 6a60 | 20 20 20 67 6c 6f 62 61 6c 20 24 58 4d 4c 5f 52 50 43 5f 54 79 70 65 73 3b 0a 20 20 20 20 20 20 | ...global.$XML_RPC_Types;....... |
| 6a80 | 20 20 69 66 20 28 24 74 68 69 73 2d 3e 6d 79 74 79 70 65 21 3d 30 29 20 7b 0a 20 20 20 20 20 20 | ..if.($this->mytype!=0).{....... |
| 6aa0 | 20 20 20 20 20 20 65 63 68 6f 20 22 3c 42 3e 58 4d 4c 5f 52 50 43 5f 56 61 6c 75 65 3c 2f 42 3e | ......echo."<B>XML_RPC_Value</B> |
| 6ac0 | 3a 20 61 6c 72 65 61 64 79 20 69 6e 69 74 69 61 6c 69 7a 65 64 20 61 73 20 61 20 5b 22 20 2e 0a | :.already.initialized.as.a.["... |
| 6ae0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 24 74 68 69 73 2d 3e 6b 69 6e 64 4f 66 28 29 20 | ................$this->kindOf(). |
| 6b00 | 2e 20 22 5d 3c 42 52 3e 22 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 30 3b | .."]<BR>";.............return.0; |
| 6b20 | 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 24 74 68 69 73 2d 3e 6d 79 74 79 70 65 | .........}.........$this->mytype |
| 6b40 | 3d 24 58 4d 4c 5f 52 50 43 5f 54 79 70 65 73 5b 22 61 72 72 61 79 22 5d 3b 0a 20 20 20 20 20 20 | =$XML_RPC_Types["array"];....... |
| 6b60 | 20 20 24 74 68 69 73 2d 3e 6d 65 5b 22 61 72 72 61 79 22 5d 3d 24 76 61 6c 73 3b 0a 20 20 20 20 | ..$this->me["array"]=$vals;..... |
| 6b80 | 20 20 20 20 72 65 74 75 72 6e 20 31 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 66 75 6e 63 74 69 6f | ....return.1;.....}......functio |
| 6ba0 | 6e 20 61 64 64 53 74 72 75 63 74 28 24 76 61 6c 73 29 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 20 | n.addStruct($vals).....{........ |
| 6bc0 | 20 67 6c 6f 62 61 6c 20 24 58 4d 4c 5f 52 50 43 5f 54 79 70 65 73 3b 0a 20 20 20 20 20 20 20 20 | .global.$XML_RPC_Types;......... |
| 6be0 | 69 66 20 28 24 74 68 69 73 2d 3e 6d 79 74 79 70 65 21 3d 30 29 20 7b 0a 20 20 20 20 20 20 20 20 | if.($this->mytype!=0).{......... |
| 6c00 | 20 20 20 20 65 63 68 6f 20 22 3c 42 3e 58 4d 4c 5f 52 50 43 5f 56 61 6c 75 65 3c 2f 42 3e 3a 20 | ....echo."<B>XML_RPC_Value</B>:. |
| 6c20 | 61 6c 72 65 61 64 79 20 69 6e 69 74 69 61 6c 69 7a 65 64 20 61 73 20 61 20 5b 22 20 2e 0a 20 20 | already.initialized.as.a.["..... |
| 6c40 | 20 20 20 20 20 20 20 20 20 20 24 74 68 69 73 2d 3e 6b 69 6e 64 4f 66 28 29 20 2e 20 22 5d 3c 42 | ..........$this->kindOf()..."]<B |
| 6c60 | 52 3e 22 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 30 3b 0a 20 20 20 20 20 | R>";.............return.0;...... |
| 6c80 | 20 20 20 7d 0a 20 20 20 20 20 20 20 20 24 74 68 69 73 2d 3e 6d 79 74 79 70 65 3d 24 58 4d 4c 5f | ...}.........$this->mytype=$XML_ |
| 6ca0 | 52 50 43 5f 54 79 70 65 73 5b 22 73 74 72 75 63 74 22 5d 3b 0a 20 20 20 20 20 20 20 20 24 74 68 | RPC_Types["struct"];.........$th |
| 6cc0 | 69 73 2d 3e 6d 65 5b 22 73 74 72 75 63 74 22 5d 3d 24 76 61 6c 73 3b 0a 20 20 20 20 20 20 20 20 | is->me["struct"]=$vals;......... |
| 6ce0 | 72 65 74 75 72 6e 20 31 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 66 75 6e 63 74 69 6f 6e 20 64 75 | return.1;.....}......function.du |
| 6d00 | 6d 70 28 24 61 72 29 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 72 65 73 65 74 28 24 61 72 29 | mp($ar).....{.........reset($ar) |
| 6d20 | 3b 0a 20 20 20 20 20 20 20 20 77 68 69 6c 65 20 28 20 6c 69 73 74 28 20 24 6b 65 79 2c 20 24 76 | ;.........while.(.list(.$key,.$v |
| 6d40 | 61 6c 20 29 20 3d 20 65 61 63 68 28 20 24 61 72 20 29 20 29 20 7b 0a 20 20 20 20 20 20 20 20 20 | al.).=.each(.$ar.).).{.......... |
| 6d60 | 20 20 20 65 63 68 6f 20 22 24 6b 65 79 20 3d 3e 20 24 76 61 6c 3c 62 72 3e 22 3b 0a 20 20 20 20 | ...echo."$key.=>.$val<br>";..... |
| 6d80 | 20 20 20 20 20 20 20 20 69 66 20 28 24 6b 65 79 20 3d 3d 20 27 61 72 72 61 79 27 29 0a 20 20 20 | ........if.($key.==.'array').... |
| 6da0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 77 68 69 6c 65 20 28 20 6c 69 73 74 28 20 24 6b 65 79 32 | .............while.(.list(.$key2 |
| 6dc0 | 2c 20 24 76 61 6c 32 20 29 20 3d 20 65 61 63 68 28 20 24 76 61 6c 20 29 20 29 20 7b 0a 20 20 20 | ,.$val2.).=.each(.$val.).).{.... |
| 6de0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 63 68 6f 20 22 2d 2d 20 24 6b 65 79 32 20 | .................echo."--.$key2. |
| 6e00 | 3d 3e 20 24 76 61 6c 32 3c 62 72 3e 22 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d | =>.$val2<br>";.................} |
| 6e20 | 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a 0a 20 20 20 20 66 75 6e 63 74 69 6f 6e 20 6b | .........}.....}......function.k |
| 6e40 | 69 6e 64 4f 66 28 29 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 73 77 69 74 63 68 28 24 74 68 | indOf().....{.........switch($th |
| 6e60 | 69 73 2d 3e 6d 79 74 79 70 65 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 61 | is->mytype).{.................ca |
| 6e80 | 73 65 20 33 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e | se.3:.....................return |
| 6ea0 | 20 22 73 74 72 75 63 74 22 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 | ."struct";.....................b |
| 6ec0 | 72 65 61 6b 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 61 73 65 20 32 3a 0a 20 20 | reak;.................case.2:... |
| 6ee0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 22 61 72 72 61 79 22 | ..................return."array" |
| 6f00 | 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b 0a 20 20 20 | ;.....................break;.... |
| 6f20 | 20 20 20 20 20 20 20 20 20 20 20 20 20 63 61 73 65 20 31 3a 0a 20 20 20 20 20 20 20 20 20 20 20 | .............case.1:............ |
| 6f40 | 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 22 73 63 61 6c 61 72 22 3b 0a 20 20 20 20 20 20 | .........return."scalar";....... |
| 6f60 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b 0a 20 20 20 20 20 20 20 20 20 20 20 | ..............break;............ |
| 6f80 | 20 20 20 20 20 64 65 66 61 75 6c 74 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | .....default:................... |
| 6fa0 | 20 20 72 65 74 75 72 6e 20 22 75 6e 64 65 66 22 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 | ..return."undef";.........}..... |
| 6fc0 | 7d 0a 0a 20 20 20 20 66 75 6e 63 74 69 6f 6e 20 73 65 72 69 61 6c 69 7a 65 64 61 74 61 28 24 74 | }......function.serializedata($t |
| 6fe0 | 79 70 2c 20 24 76 61 6c 29 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 24 72 73 3d 22 22 3b 0a | yp,.$val).....{.........$rs="";. |
| 7000 | 20 20 20 20 20 20 20 20 67 6c 6f 62 61 6c 20 24 58 4d 4c 5f 52 50 43 5f 54 79 70 65 73 2c 20 24 | ........global.$XML_RPC_Types,.$ |
| 7020 | 58 4d 4c 5f 52 50 43 5f 42 61 73 65 36 34 2c 20 24 58 4d 4c 5f 52 50 43 5f 53 74 72 69 6e 67 2c | XML_RPC_Base64,.$XML_RPC_String, |
| 7040 | 20 24 58 4d 4c 5f 52 50 43 5f 42 6f 6f 6c 65 61 6e 3b 0a 20 20 20 20 20 20 20 20 73 77 69 74 63 | .$XML_RPC_Boolean;.........switc |
| 7060 | 68 28 24 58 4d 4c 5f 52 50 43 5f 54 79 70 65 73 5b 24 74 79 70 5d 29 20 7b 0a 20 20 20 20 20 20 | h($XML_RPC_Types[$typ]).{....... |
| 7080 | 20 20 20 20 20 20 63 61 73 65 20 33 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f | ......case.3:.................// |
| 70a0 | 20 73 74 72 75 63 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 24 72 73 2e 3d 22 3c 73 | .struct.................$rs.="<s |
| 70c0 | 74 72 75 63 74 3e 5c 6e 22 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 73 65 74 | truct>\n";.................reset |
| 70e0 | 28 24 76 61 6c 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 77 68 69 6c 65 28 6c 69 | ($val);.................while(li |
| 7100 | 73 74 28 24 6b 65 79 32 2c 20 24 76 61 6c 32 29 3d 65 61 63 68 28 24 76 61 6c 29 29 20 7b 0a 20 | st($key2,.$val2)=each($val)).{.. |
| 7120 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 24 72 73 2e 3d 22 3c 6d 65 6d 62 65 72 | ...................$rs.="<member |
| 7140 | 3e 3c 6e 61 6d 65 3e 24 7b 6b 65 79 32 7d 3c 2f 6e 61 6d 65 3e 5c 6e 22 3b 0a 20 20 20 20 20 20 | ><name>${key2}</name>\n";....... |
| 7160 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 24 72 73 2e 3d 24 74 68 69 73 2d 3e 73 65 72 69 61 6c | ..............$rs.=$this->serial |
| 7180 | 69 7a 65 76 61 6c 28 24 76 61 6c 32 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | izeval($val2);.................. |
| 71a0 | 20 20 20 24 72 73 2e 3d 22 3c 2f 6d 65 6d 62 65 72 3e 5c 6e 22 3b 0a 20 20 20 20 20 20 20 20 20 | ...$rs.="</member>\n";.......... |
| 71c0 | 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 24 72 73 2e 3d 22 3c | .......}.................$rs.="< |
| 71e0 | 2f 73 74 72 75 63 74 3e 22 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 72 65 61 6b | /struct>";.................break |
| 7200 | 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 63 61 73 65 20 32 3a 0a 20 20 20 20 20 20 20 20 20 20 | ;.............case.2:........... |
| 7220 | 20 20 20 20 20 20 2f 2f 20 61 72 72 61 79 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 24 | ......//.array.................$ |
| 7240 | 72 73 2e 3d 22 3c 61 72 72 61 79 3e 5c 6e 3c 64 61 74 61 3e 5c 6e 22 3b 0a 20 20 20 20 20 20 20 | rs.="<array>\n<data>\n";........ |
| 7260 | 20 20 20 20 20 20 20 20 20 66 6f 72 28 24 69 3d 30 3b 20 24 69 3c 73 69 7a 65 6f 66 28 24 76 61 | .........for($i=0;.$i<sizeof($va |
| 7280 | 6c 29 3b 20 24 69 2b 2b 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | l);.$i++).{..................... |
| 72a0 | 24 72 73 2e 3d 24 74 68 69 73 2d 3e 73 65 72 69 61 6c 69 7a 65 76 61 6c 28 24 76 61 6c 5b 24 69 | $rs.=$this->serializeval($val[$i |
| 72c0 | 5d 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 20 20 | ]);.................}........... |
| 72e0 | 20 20 20 20 20 20 24 72 73 2e 3d 22 3c 2f 64 61 74 61 3e 5c 6e 3c 2f 61 72 72 61 79 3e 22 3b 0a | ......$rs.="</data>\n</array>";. |
| 7300 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b 0a 20 20 20 20 20 20 20 20 20 | ................break;.......... |
| 7320 | 20 20 20 63 61 73 65 20 31 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 77 69 74 63 | ...case.1:.................switc |
| 7340 | 68 20 28 24 74 79 70 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 | h.($typ).{.....................c |
| 7360 | 61 73 65 20 24 58 4d 4c 5f 52 50 43 5f 42 61 73 65 36 34 3a 0a 20 20 20 20 20 20 20 20 20 20 20 | ase.$XML_RPC_Base64:............ |
| 7380 | 20 20 20 20 20 20 20 20 20 20 20 20 20 24 72 73 2e 3d 22 3c 24 7b 74 79 70 7d 3e 22 20 2e 20 62 | .............$rs.="<${typ}>"...b |
| 73a0 | 61 73 65 36 34 5f 65 6e 63 6f 64 65 28 24 76 61 6c 29 20 2e 20 22 3c 2f 24 7b 74 79 70 7d 3e 22 | ase64_encode($val)..."</${typ}>" |
| 73c0 | 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b | ;.........................break; |
| 73e0 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 61 73 65 20 24 58 4d 4c 5f 52 | .....................case.$XML_R |
| 7400 | 50 43 5f 42 6f 6f 6c 65 61 6e 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | PC_Boolean:..................... |
| 7420 | 20 20 20 20 24 72 73 2e 3d 22 3c 24 7b 74 79 70 7d 3e 22 20 2e 20 28 24 76 61 6c 20 3f 20 22 31 | ....$rs.="<${typ}>"...($val.?."1 |
| 7440 | 22 20 3a 20 22 30 22 29 20 2e 20 22 3c 2f 24 7b 74 79 70 7d 3e 22 3b 0a 20 20 20 20 20 20 20 20 | ".:."0")..."</${typ}>";......... |
| 7460 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b 0a 20 20 20 20 20 20 20 20 20 | ................break;.......... |
| 7480 | 20 20 20 20 20 20 20 20 20 20 20 63 61 73 65 20 24 58 4d 4c 5f 52 50 43 5f 53 74 72 69 6e 67 3a | ...........case.$XML_RPC_String: |
| 74a0 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 24 72 73 2e 3d 22 3c | .........................$rs.="< |
| 74c0 | 24 7b 74 79 70 7d 3e 22 20 2e 20 68 74 6d 6c 73 70 65 63 69 61 6c 63 68 61 72 73 28 24 76 61 6c | ${typ}>"...htmlspecialchars($val |
| 74e0 | 29 2e 20 22 3c 2f 24 7b 74 79 70 7d 3e 22 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ).."</${typ}>";................. |
| 7500 | 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ........break;.................. |
| 7520 | 20 20 20 64 65 66 61 75 6c 74 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ...default:..................... |
| 7540 | 20 20 20 20 24 72 73 2e 3d 22 3c 24 7b 74 79 70 7d 3e 24 7b 76 61 6c 7d 3c 2f 24 7b 74 79 70 7d | ....$rs.="<${typ}>${val}</${typ} |
| 7560 | 3e 22 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 20 20 | >";.................}........... |
| 7580 | 20 20 20 20 20 20 62 72 65 61 6b 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 64 65 66 61 75 6c 74 | ......break;.............default |
| 75a0 | 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b 0a 20 20 20 20 20 20 20 | :.................break;........ |
| 75c0 | 20 7d 0a 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 24 72 73 3b 0a 20 20 20 20 7d 0a 0a 20 20 | .}.........return.$rs;.....}.... |
| 75e0 | 20 20 66 75 6e 63 74 69 6f 6e 20 73 65 72 69 61 6c 69 7a 65 28 29 0a 20 20 20 20 7b 0a 20 20 20 | ..function.serialize().....{.... |
| 7600 | 20 20 20 20 20 72 65 74 75 72 6e 20 24 74 68 69 73 2d 3e 73 65 72 69 61 6c 69 7a 65 76 61 6c 28 | .....return.$this->serializeval( |
| 7620 | 24 74 68 69 73 29 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 66 75 6e 63 74 69 6f 6e 20 73 65 72 69 | $this);.....}......function.seri |
| 7640 | 61 6c 69 7a 65 76 61 6c 28 24 6f 29 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 67 6c 6f 62 61 | alizeval($o).....{.........globa |
| 7660 | 6c 20 24 58 4d 4c 5f 52 50 43 5f 54 79 70 65 73 3b 0a 20 20 20 20 20 20 20 20 24 72 73 3d 22 22 | l.$XML_RPC_Types;.........$rs="" |
| 7680 | 3b 0a 20 20 20 20 20 20 20 20 24 61 72 3d 24 6f 2d 3e 6d 65 3b 0a 20 20 20 20 20 20 20 20 72 65 | ;.........$ar=$o->me;.........re |
| 76a0 | 73 65 74 28 24 61 72 29 3b 0a 20 20 20 20 20 20 20 20 6c 69 73 74 28 24 74 79 70 2c 20 24 76 61 | set($ar);.........list($typ,.$va |
| 76c0 | 6c 29 20 3d 20 65 61 63 68 28 24 61 72 29 3b 0a 20 20 20 20 20 20 20 20 24 72 73 2e 3d 22 3c 76 | l).=.each($ar);.........$rs.="<v |
| 76e0 | 61 6c 75 65 3e 22 3b 0a 20 20 20 20 20 20 20 20 24 72 73 2e 3d 24 74 68 69 73 2d 3e 73 65 72 69 | alue>";.........$rs.=$this->seri |
| 7700 | 61 6c 69 7a 65 64 61 74 61 28 24 74 79 70 2c 20 24 76 61 6c 29 3b 0a 20 20 20 20 20 20 20 20 24 | alizedata($typ,.$val);.........$ |
| 7720 | 72 73 2e 3d 22 3c 2f 76 61 6c 75 65 3e 5c 6e 22 3b 0a 20 20 20 20 20 20 20 20 72 65 74 75 72 6e | rs.="</value>\n";.........return |
| 7740 | 20 24 72 73 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 66 75 6e 63 74 69 6f 6e 20 73 74 72 75 63 74 | .$rs;.....}......function.struct |
| 7760 | 6d 65 6d 28 24 6d 29 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 24 6e 76 3d 24 74 68 69 73 2d | mem($m).....{.........$nv=$this- |
| 7780 | 3e 6d 65 5b 22 73 74 72 75 63 74 22 5d 5b 24 6d 5d 3b 0a 20 20 20 20 20 20 20 20 72 65 74 75 72 | >me["struct"][$m];.........retur |
| 77a0 | 6e 20 24 6e 76 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 66 75 6e 63 74 69 6f 6e 20 73 74 72 75 63 | n.$nv;.....}......function.struc |
| 77c0 | 74 72 65 73 65 74 28 29 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 72 65 73 65 74 28 24 74 68 | treset().....{.........reset($th |
| 77e0 | 69 73 2d 3e 6d 65 5b 22 73 74 72 75 63 74 22 5d 29 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 66 75 | is->me["struct"]);.....}......fu |
| 7800 | 6e 63 74 69 6f 6e 20 73 74 72 75 63 74 65 61 63 68 28 29 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 | nction.structeach().....{....... |
| 7820 | 20 20 72 65 74 75 72 6e 20 65 61 63 68 28 24 74 68 69 73 2d 3e 6d 65 5b 22 73 74 72 75 63 74 22 | ..return.each($this->me["struct" |
| 7840 | 5d 29 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 76 61 6c 28 29 | ]);.....}......function.getval() |
| 7860 | 20 7b 0a 20 20 20 20 20 20 20 20 2f 2f 20 55 4e 53 54 41 42 4c 45 0a 20 20 20 20 20 20 20 20 67 | .{.........//.UNSTABLE.........g |
| 7880 | 6c 6f 62 61 6c 20 24 58 4d 4c 5f 52 50 43 5f 42 4f 4f 4c 45 41 4e 2c 20 24 58 4d 4c 5f 52 50 43 | lobal.$XML_RPC_BOOLEAN,.$XML_RPC |
| 78a0 | 5f 42 61 73 65 36 34 3b 0a 0a 20 20 20 20 20 20 20 20 72 65 73 65 74 28 24 74 68 69 73 2d 3e 6d | _Base64;..........reset($this->m |
| 78c0 | 65 29 3b 0a 20 20 20 20 20 20 20 20 6c 69 73 74 28 24 61 2c 24 62 29 3d 65 61 63 68 28 24 74 68 | e);.........list($a,$b)=each($th |
| 78e0 | 69 73 2d 3e 6d 65 29 3b 0a 0a 20 20 20 20 20 20 20 20 2f 2f 20 63 6f 6e 74 72 69 62 75 74 65 64 | is->me);..........//.contributed |
| 7900 | 20 62 79 20 49 20 53 6f 66 65 72 2c 20 32 30 30 31 2d 30 33 2d 32 34 0a 20 20 20 20 20 20 20 20 | .by.I.Sofer,.2001-03-24......... |
| 7920 | 2f 2f 20 61 64 64 20 73 75 70 70 6f 72 74 20 66 6f 72 20 6e 65 73 74 65 64 20 61 72 72 61 79 73 | //.add.support.for.nested.arrays |
| 7940 | 20 74 6f 20 73 63 61 6c 61 72 76 61 6c 0a 20 20 20 20 20 20 20 20 2f 2f 20 69 27 76 65 20 63 72 | .to.scalarval.........//.i've.cr |
| 7960 | 65 61 74 65 64 20 61 20 6e 65 77 20 6d 65 74 68 6f 64 20 68 65 72 65 2c 20 73 6f 20 61 73 20 74 | eated.a.new.method.here,.so.as.t |
| 7980 | 6f 0a 20 20 20 20 20 20 20 20 2f 2f 20 70 72 65 73 65 72 76 65 20 62 61 63 6b 20 63 6f 6d 70 61 | o.........//.preserve.back.compa |
| 79a0 | 74 69 62 69 6c 69 74 79 0a 0a 20 20 20 20 20 20 20 20 69 66 20 28 69 73 5f 61 72 72 61 79 28 24 | tibility..........if.(is_array($ |
| 79c0 | 62 29 29 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 65 61 63 68 20 28 24 62 | b))....{.............foreach.($b |
| 79e0 | 20 61 73 20 24 69 64 20 3d 3e 20 24 63 6f 6e 74 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 | .as.$id.=>.$cont).{............. |
| 7a00 | 20 20 20 20 24 62 5b 24 69 64 5d 20 3d 20 24 63 6f 6e 74 2d 3e 73 63 61 6c 61 72 76 61 6c 28 29 | ....$b[$id].=.$cont->scalarval() |
| 7a20 | 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 | ;.............}.........}....... |
| 7a40 | 20 20 20 2f 2f 20 61 64 64 20 73 75 70 70 6f 72 74 20 66 6f 72 20 73 74 72 75 63 74 75 72 65 73 | ...//.add.support.for.structures |
| 7a60 | 20 64 69 72 65 63 74 6c 79 20 65 6e 63 6f 64 69 6e 67 20 70 68 70 20 6f 62 6a 65 63 74 73 0a 20 | .directly.encoding.php.objects.. |
| 7a80 | 20 20 20 20 20 20 20 69 66 20 28 69 73 5f 6f 62 6a 65 63 74 28 24 62 29 29 20 20 7b 0a 20 20 20 | .......if.(is_object($b))..{.... |
| 7aa0 | 20 20 20 20 20 20 20 20 20 24 74 20 3d 20 67 65 74 5f 6f 62 6a 65 63 74 5f 76 61 72 73 28 24 62 | .........$t.=.get_object_vars($b |
| 7ac0 | 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 65 61 63 68 20 28 24 74 20 61 73 20 24 69 | );.............foreach.($t.as.$i |
| 7ae0 | 64 20 3d 3e 20 24 63 6f 6e 74 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 24 74 | d.=>.$cont).{.................$t |
| 7b00 | 5b 24 69 64 5d 20 3d 20 24 63 6f 6e 74 2d 3e 73 63 61 6c 61 72 76 61 6c 28 29 3b 0a 20 20 20 20 | [$id].=.$cont->scalarval();..... |
| 7b20 | 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 65 61 63 68 20 28 24 | ........}.............foreach.($ |
| 7b40 | 74 20 61 73 20 24 69 64 20 3d 3e 20 24 63 6f 6e 74 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 | t.as.$id.=>.$cont).{............ |
| 7b60 | 20 20 20 20 20 65 76 61 6c 28 27 24 62 2d 3e 27 2e 24 69 64 2e 27 20 3d 20 24 63 6f 6e 74 3b 27 | .....eval('$b->'.$id.'.=.$cont;' |
| 7b80 | 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 | );.............}.........}...... |
| 7ba0 | 20 20 20 20 2f 2f 20 65 6e 64 20 63 6f 6e 74 72 69 62 0a 20 20 20 20 20 20 20 20 72 65 74 75 72 | ....//.end.contrib.........retur |
| 7bc0 | 6e 20 24 62 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 66 75 6e 63 74 69 6f 6e 20 73 63 61 6c 61 72 | n.$b;.....}......function.scalar |
| 7be0 | 76 61 6c 28 29 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 67 6c 6f 62 61 6c 20 24 58 4d 4c 5f | val().....{.........global.$XML_ |
| 7c00 | 52 50 43 5f 42 6f 6f 6c 65 61 6e 2c 20 24 58 4d 4c 5f 52 50 43 5f 42 61 73 65 36 34 3b 0a 20 20 | RPC_Boolean,.$XML_RPC_Base64;... |
| 7c20 | 20 20 20 20 20 20 72 65 73 65 74 28 24 74 68 69 73 2d 3e 6d 65 29 3b 0a 20 20 20 20 20 20 20 20 | ......reset($this->me);......... |
| 7c40 | 6c 69 73 74 28 24 61 2c 24 62 29 3d 65 61 63 68 28 24 74 68 69 73 2d 3e 6d 65 29 3b 0a 20 20 20 | list($a,$b)=each($this->me);.... |
| 7c60 | 20 20 20 20 20 72 65 74 75 72 6e 20 24 62 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 66 75 6e 63 74 | .....return.$b;.....}......funct |
| 7c80 | 69 6f 6e 20 73 63 61 6c 61 72 74 79 70 28 29 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 67 6c | ion.scalartyp().....{.........gl |
| 7ca0 | 6f 62 61 6c 20 24 58 4d 4c 5f 52 50 43 5f 49 34 2c 20 24 58 4d 4c 5f 52 50 43 5f 49 6e 74 3b 0a | obal.$XML_RPC_I4,.$XML_RPC_Int;. |
| 7cc0 | 20 20 20 20 20 20 20 20 72 65 73 65 74 28 24 74 68 69 73 2d 3e 6d 65 29 3b 0a 20 20 20 20 20 20 | ........reset($this->me);....... |
| 7ce0 | 20 20 6c 69 73 74 28 24 61 2c 24 62 29 3d 65 61 63 68 28 24 74 68 69 73 2d 3e 6d 65 29 3b 0a 20 | ..list($a,$b)=each($this->me);.. |
| 7d00 | 20 20 20 20 20 20 20 69 66 20 28 24 61 3d 3d 24 58 4d 4c 5f 52 50 43 5f 49 34 29 0a 20 20 20 20 | .......if.($a==$XML_RPC_I4)..... |
| 7d20 | 20 20 20 20 20 20 20 20 24 61 3d 24 58 4d 4c 5f 52 50 43 5f 49 6e 74 3b 0a 20 20 20 20 20 20 20 | ........$a=$XML_RPC_Int;........ |
| 7d40 | 20 72 65 74 75 72 6e 20 24 61 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 66 75 6e 63 74 69 6f 6e 20 | .return.$a;.....}......function. |
| 7d60 | 61 72 72 61 79 6d 65 6d 28 24 6d 29 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 24 6e 76 3d 24 | arraymem($m).....{.........$nv=$ |
| 7d80 | 74 68 69 73 2d 3e 6d 65 5b 22 61 72 72 61 79 22 5d 5b 24 6d 5d 3b 0a 20 20 20 20 20 20 20 20 72 | this->me["array"][$m];.........r |
| 7da0 | 65 74 75 72 6e 20 24 6e 76 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 66 75 6e 63 74 69 6f 6e 20 61 | eturn.$nv;.....}......function.a |
| 7dc0 | 72 72 61 79 73 69 7a 65 28 29 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 72 65 73 65 74 28 24 | rraysize().....{.........reset($ |
| 7de0 | 74 68 69 73 2d 3e 6d 65 29 3b 0a 20 20 20 20 20 20 20 20 6c 69 73 74 28 24 61 2c 24 62 29 3d 65 | this->me);.........list($a,$b)=e |
| 7e00 | 61 63 68 28 24 74 68 69 73 2d 3e 6d 65 29 3b 0a 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 73 | ach($this->me);.........return.s |
| 7e20 | 69 7a 65 6f 66 28 24 62 29 3b 0a 20 20 20 20 7d 0a 7d 0a 0a 0a 2f 2a 2a 0a 20 2a 20 64 61 74 65 | izeof($b);.....}.}.../**..*.date |
| 7e40 | 20 68 65 6c 70 65 72 73 0a 20 2a 2f 0a 66 75 6e 63 74 69 6f 6e 20 58 4d 4c 5f 52 50 43 5f 69 73 | .helpers..*/.function.XML_RPC_is |
| 7e60 | 6f 38 36 30 31 5f 65 6e 63 6f 64 65 28 24 74 69 6d 65 74 2c 20 24 75 74 63 3d 30 29 20 7b 0a 20 | o8601_encode($timet,.$utc=0).{.. |
| 7e80 | 20 20 20 2f 2f 20 72 65 74 75 72 6e 20 61 6e 20 49 53 4f 38 36 30 31 20 65 6e 63 6f 64 65 64 20 | ...//.return.an.ISO8601.encoded. |
| 7ea0 | 73 74 72 69 6e 67 0a 20 20 20 20 2f 2f 20 72 65 61 6c 6c 79 2c 20 74 69 6d 65 7a 6f 6e 65 73 20 | string.....//.really,.timezones. |
| 7ec0 | 6f 75 67 68 74 20 74 6f 20 62 65 20 73 75 70 70 6f 72 74 65 64 0a 20 20 20 20 2f 2f 20 62 75 74 | ought.to.be.supported.....//.but |
| 7ee0 | 20 74 68 65 20 58 4d 4c 2d 52 50 43 20 73 70 65 63 20 73 61 79 73 3a 0a 20 20 20 20 2f 2f 0a 20 | .the.XML-RPC.spec.says:.....//.. |
| 7f00 | 20 20 20 2f 2f 20 22 44 6f 6e 27 74 20 61 73 73 75 6d 65 20 61 20 74 69 6d 65 7a 6f 6e 65 2e 20 | ...//."Don't.assume.a.timezone.. |
| 7f20 | 49 74 20 73 68 6f 75 6c 64 20 62 65 20 73 70 65 63 69 66 69 65 64 20 62 79 20 74 68 65 20 73 65 | It.should.be.specified.by.the.se |
| 7f40 | 72 76 65 72 20 69 6e 20 69 74 73 0a 20 20 20 20 2f 2f 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e | rver.in.its.....//.documentation |
| 7f60 | 20 77 68 61 74 20 61 73 73 75 6d 70 74 69 6f 6e 73 20 69 74 20 6d 61 6b 65 73 20 61 62 6f 75 74 | .what.assumptions.it.makes.about |
| 7f80 | 20 74 69 6d 65 7a 6f 6e 65 73 2e 22 0a 20 20 20 20 2f 2f 0a 20 20 20 20 2f 2f 20 74 68 65 73 65 | .timezones.".....//.....//.these |
| 7fa0 | 20 72 6f 75 74 69 6e 65 73 20 61 6c 77 61 79 73 20 61 73 73 75 6d 65 20 6c 6f 63 61 6c 74 69 6d | .routines.always.assume.localtim |
| 7fc0 | 65 20 75 6e 6c 65 73 73 0a 20 20 20 20 2f 2f 20 24 75 74 63 20 69 73 20 73 65 74 20 74 6f 20 31 | e.unless.....//.$utc.is.set.to.1 |
| 7fe0 | 2c 20 69 6e 20 77 68 69 63 68 20 63 61 73 65 20 55 54 43 20 69 73 20 61 73 73 75 6d 65 64 0a 20 | ,.in.which.case.UTC.is.assumed.. |
| 8000 | 20 20 20 2f 2f 20 61 6e 64 20 61 6e 20 61 64 6a 75 73 74 6d 65 6e 74 20 66 6f 72 20 6c 6f 63 61 | ...//.and.an.adjustment.for.loca |
| 8020 | 6c 65 20 69 73 20 6d 61 64 65 20 77 68 65 6e 20 65 6e 63 6f 64 69 6e 67 0a 20 20 20 20 69 66 20 | le.is.made.when.encoding.....if. |
| 8040 | 28 21 24 75 74 63 29 20 7b 0a 20 20 20 20 20 20 20 20 24 74 3d 73 74 72 66 74 69 6d 65 28 22 25 | (!$utc).{.........$t=strftime("% |
| 8060 | 59 25 6d 25 64 54 25 48 3a 25 4d 3a 25 53 22 2c 20 24 74 69 6d 65 74 29 3b 0a 20 20 20 20 7d 20 | Y%m%dT%H:%M:%S",.$timet);.....}. |
| 8080 | 65 6c 73 65 20 7b 0a 20 20 20 20 20 20 20 20 69 66 20 28 66 75 6e 63 74 69 6f 6e 5f 65 78 69 73 | else.{.........if.(function_exis |
| 80a0 | 74 73 28 22 67 6d 73 74 72 66 74 69 6d 65 22 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f | ts("gmstrftime")).............// |
| 80c0 | 20 67 6d 73 74 72 66 74 69 6d 65 20 64 6f 65 73 6e 27 74 20 65 78 69 73 74 20 69 6e 20 73 6f 6d | .gmstrftime.doesn't.exist.in.som |
| 80e0 | 65 20 76 65 72 73 69 6f 6e 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 6f 66 20 50 48 50 | e.versions.............//.of.PHP |
| 8100 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 24 74 3d 67 6d 73 74 72 66 74 69 6d 65 28 22 25 59 25 6d | .............$t=gmstrftime("%Y%m |
| 8120 | 25 64 54 25 48 3a 25 4d 3a 25 53 22 2c 20 24 74 69 6d 65 74 29 3b 0a 20 20 20 20 20 20 20 20 65 | %dT%H:%M:%S",.$timet);.........e |
| 8140 | 6c 73 65 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 24 74 3d 73 74 72 66 74 69 6d 65 28 22 25 | lse.{.............$t=strftime("% |
| 8160 | 59 25 6d 25 64 54 25 48 3a 25 4d 3a 25 53 22 2c 20 24 74 69 6d 65 74 2d 64 61 74 65 28 22 5a 22 | Y%m%dT%H:%M:%S",.$timet-date("Z" |
| 8180 | 29 29 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a 0a 20 20 20 20 72 65 74 75 72 6e 20 | ));.........}.....}......return. |
| 81a0 | 24 74 3b 0a 7d 0a 0a 66 75 6e 63 74 69 6f 6e 20 58 4d 4c 5f 52 50 43 5f 69 73 6f 38 36 30 31 5f | $t;.}..function.XML_RPC_iso8601_ |
| 81c0 | 64 65 63 6f 64 65 28 24 69 64 61 74 65 2c 20 24 75 74 63 3d 30 29 20 7b 0a 20 20 20 20 2f 2f 20 | decode($idate,.$utc=0).{.....//. |
| 81e0 | 72 65 74 75 72 6e 20 61 20 74 69 6d 65 74 20 69 6e 20 74 68 65 20 6c 6f 63 61 6c 74 69 6d 65 2c | return.a.timet.in.the.localtime, |
| 8200 | 20 6f 72 20 55 54 43 0a 20 20 20 20 24 74 3d 30 3b 0a 20 20 20 20 69 66 20 28 65 72 65 67 28 22 | .or.UTC.....$t=0;.....if.(ereg(" |
| 8220 | 28 5b 30 2d 39 5d 7b 34 7d 29 28 5b 30 2d 39 5d 7b 32 7d 29 28 5b 30 2d 39 5d 7b 32 7d 29 54 28 | ([0-9]{4})([0-9]{2})([0-9]{2})T( |
| 8240 | 5b 30 2d 39 5d 7b 32 7d 29 3a 28 5b 30 2d 39 5d 7b 32 7d 29 3a 28 5b 30 2d 39 5d 7b 32 7d 29 22 | [0-9]{2}):([0-9]{2}):([0-9]{2})" |
| 8260 | 2c 24 69 64 61 74 65 2c 20 24 72 65 67 73 29 29 20 7b 0a 0a 20 20 20 20 20 20 20 20 69 66 20 28 | ,$idate,.$regs)).{..........if.( |
| 8280 | 24 75 74 63 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 24 74 3d 67 6d 6d 6b 74 69 6d 65 28 | $utc).{.............$t=gmmktime( |
| 82a0 | 24 72 65 67 73 5b 34 5d 2c 20 24 72 65 67 73 5b 35 5d 2c 20 24 72 65 67 73 5b 36 5d 2c 20 24 72 | $regs[4],.$regs[5],.$regs[6],.$r |
| 82c0 | 65 67 73 5b 32 5d 2c 20 24 72 65 67 73 5b 33 5d 2c 20 24 72 65 67 73 5b 31 5d 29 3b 0a 20 20 20 | egs[2],.$regs[3],.$regs[1]);.... |
| 82e0 | 20 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 24 74 3d 6d 6b 74 | .....}.else.{.............$t=mkt |
| 8300 | 69 6d 65 28 24 72 65 67 73 5b 34 5d 2c 20 24 72 65 67 73 5b 35 5d 2c 20 24 72 65 67 73 5b 36 5d | ime($regs[4],.$regs[5],.$regs[6] |
| 8320 | 2c 20 24 72 65 67 73 5b 32 5d 2c 20 24 72 65 67 73 5b 33 5d 2c 20 24 72 65 67 73 5b 31 5d 29 3b | ,.$regs[2],.$regs[3],.$regs[1]); |
| 8340 | 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a 0a 20 20 20 20 72 65 74 75 72 6e 20 24 74 3b | .........}.....}......return.$t; |
| 8360 | 0a 7d 0a 0a 2f 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a | .}../*************************** |
| 8380 | 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a | ******************************** |
| 83a0 | 2a 2a 2a 2a 2a 2a 2a 0a 2a 20 58 4d 4c 5f 52 50 43 5f 64 65 63 6f 64 65 20 74 61 6b 65 73 20 61 | *******.*.XML_RPC_decode.takes.a |
| 83c0 | 20 6d 65 73 73 61 67 65 20 69 6e 20 50 48 50 20 58 4d 4c 5f 52 50 43 20 6f 62 6a 65 63 74 20 66 | .message.in.PHP.XML_RPC.object.f |
| 83e0 | 6f 72 6d 61 74 20 61 6e 64 20 2a 0a 2a 20 74 72 61 6e 6c 61 74 65 73 20 69 74 20 69 6e 74 6f 20 | ormat.and.*.*.tranlates.it.into. |
| 8400 | 6e 61 74 69 76 65 20 50 48 50 20 74 79 70 65 73 2e 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | native.PHP.types................ |
| 8420 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2a 0a 2a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ..............*.*............... |
| 8440 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ................................ |
| 8460 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2a 0a 2a 20 61 75 74 68 6f 72 3a 20 44 61 | ..................*.*.author:.Da |
| 8480 | 6e 20 4c 69 62 62 79 20 28 64 61 6e 40 6c 69 62 62 79 2e 63 6f 6d 29 20 20 20 20 20 20 20 20 20 | n.Libby.(dan@libby.com)......... |
| 84a0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2a 0a 2a 2a 2a 2a 2a 2a 2a 2a | ......................*.******** |
| 84c0 | 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a | ******************************** |
| 84e0 | 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2f 0a 66 75 6e 63 | **************************/.func |
| 8500 | 74 69 6f 6e 20 58 4d 4c 5f 52 50 43 5f 64 65 63 6f 64 65 28 24 58 4d 4c 5f 52 50 43 5f 76 61 6c | tion.XML_RPC_decode($XML_RPC_val |
| 8520 | 29 20 7b 0a 20 20 20 20 24 6b 69 6e 64 20 3d 20 24 58 4d 4c 5f 52 50 43 5f 76 61 6c 2d 3e 6b 69 | ).{.....$kind.=.$XML_RPC_val->ki |
| 8540 | 6e 64 4f 66 28 29 3b 0a 0a 20 20 20 69 66 28 24 6b 69 6e 64 20 3d 3d 20 22 73 63 61 6c 61 72 22 | ndOf();.....if($kind.==."scalar" |
| 8560 | 29 20 7b 0a 20 20 20 20 20 20 72 65 74 75 72 6e 20 24 58 4d 4c 5f 52 50 43 5f 76 61 6c 2d 3e 73 | ).{.......return.$XML_RPC_val->s |
| 8580 | 63 61 6c 61 72 76 61 6c 28 29 3b 0a 20 20 20 7d 0a 20 20 20 65 6c 73 65 20 69 66 28 24 6b 69 6e | calarval();....}....else.if($kin |
| 85a0 | 64 20 3d 3d 20 22 61 72 72 61 79 22 29 20 7b 0a 20 20 20 20 20 20 24 73 69 7a 65 20 3d 20 24 58 | d.==."array").{.......$size.=.$X |
| 85c0 | 4d 4c 5f 52 50 43 5f 76 61 6c 2d 3e 61 72 72 61 79 73 69 7a 65 28 29 3b 0a 20 20 20 20 20 20 24 | ML_RPC_val->arraysize();.......$ |
| 85e0 | 61 72 72 20 3d 20 61 72 72 61 79 28 29 3b 0a 0a 20 20 20 20 20 20 66 6f 72 28 24 69 20 3d 20 30 | arr.=.array();........for($i.=.0 |
| 8600 | 3b 20 24 69 20 3c 20 24 73 69 7a 65 3b 20 24 69 2b 2b 29 20 7b 0a 20 20 20 20 20 20 20 20 20 24 | ;.$i.<.$size;.$i++).{..........$ |
| 8620 | 61 72 72 5b 5d 3d 58 4d 4c 5f 52 50 43 5f 64 65 63 6f 64 65 28 24 58 4d 4c 5f 52 50 43 5f 76 61 | arr[]=XML_RPC_decode($XML_RPC_va |
| 8640 | 6c 2d 3e 61 72 72 61 79 6d 65 6d 28 24 69 29 29 3b 0a 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 | l->arraymem($i));.......}....... |
| 8660 | 72 65 74 75 72 6e 20 24 61 72 72 3b 0a 20 20 20 7d 0a 20 20 20 65 6c 73 65 20 69 66 28 24 6b 69 | return.$arr;....}....else.if($ki |
| 8680 | 6e 64 20 3d 3d 20 22 73 74 72 75 63 74 22 29 20 7b 0a 20 20 20 20 20 20 24 58 4d 4c 5f 52 50 43 | nd.==."struct").{.......$XML_RPC |
| 86a0 | 5f 76 61 6c 2d 3e 73 74 72 75 63 74 72 65 73 65 74 28 29 3b 0a 20 20 20 20 20 20 24 61 72 72 20 | _val->structreset();.......$arr. |
| 86c0 | 3d 20 61 72 72 61 79 28 29 3b 0a 0a 20 20 20 20 20 20 77 68 69 6c 65 28 6c 69 73 74 28 24 6b 65 | =.array();........while(list($ke |
| 86e0 | 79 2c 24 76 61 6c 75 65 29 3d 24 58 4d 4c 5f 52 50 43 5f 76 61 6c 2d 3e 73 74 72 75 63 74 65 61 | y,$value)=$XML_RPC_val->structea |
| 8700 | 63 68 28 29 29 20 7b 0a 20 20 20 20 20 20 20 20 20 24 61 72 72 5b 24 6b 65 79 5d 20 3d 20 58 4d | ch()).{..........$arr[$key].=.XM |
| 8720 | 4c 5f 52 50 43 5f 64 65 63 6f 64 65 28 24 76 61 6c 75 65 29 3b 0a 20 20 20 20 20 20 7d 0a 20 20 | L_RPC_decode($value);.......}... |
| 8740 | 20 20 20 20 72 65 74 75 72 6e 20 24 61 72 72 3b 0a 20 20 20 7d 0a 7d 0a 0a 2f 2a 2a 2a 2a 2a 2a | ....return.$arr;....}.}../****** |
| 8760 | 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a | ******************************** |
| 8780 | 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 0a 2a 20 58 4d | ***************************.*.XM |
| 87a0 | 4c 5f 52 50 43 5f 65 6e 63 6f 64 65 20 74 61 6b 65 73 20 6e 61 74 69 76 65 20 70 68 70 20 74 79 | L_RPC_encode.takes.native.php.ty |
| 87c0 | 70 65 73 20 61 6e 64 20 65 6e 63 6f 64 65 73 20 74 68 65 6d 20 69 6e 74 6f 20 20 20 20 2a 0a 2a | pes.and.encodes.them.into....*.* |
| 87e0 | 20 58 4d 4c 5f 52 50 43 20 50 48 50 20 6f 62 6a 65 63 74 20 66 6f 72 6d 61 74 2e 20 20 20 20 20 | .XML_RPC.PHP.object.format...... |
| 8800 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ................................ |
| 8820 | 2a 0a 2a 20 42 55 47 3a 20 41 6c 6c 20 73 65 71 75 65 6e 74 69 61 6c 20 61 72 72 61 79 73 20 61 | *.*.BUG:.All.sequential.arrays.a |
| 8840 | 72 65 20 74 75 72 6e 65 64 20 69 6e 74 6f 20 73 74 72 75 63 74 73 2e 20 20 49 20 64 6f 6e 27 74 | re.turned.into.structs...I.don't |
| 8860 | 20 20 20 2a 0a 2a 20 6b 6e 6f 77 20 6f 66 20 61 20 67 6f 6f 64 20 77 61 79 20 74 6f 20 64 65 74 | ...*.*.know.of.a.good.way.to.det |
| 8880 | 65 72 6d 69 6e 65 20 69 66 20 61 6e 20 61 72 72 61 79 20 69 73 20 73 65 71 75 65 6e 74 69 61 6c | ermine.if.an.array.is.sequential |
| 88a0 | 20 20 20 20 20 20 2a 0a 2a 20 6f 6e 6c 79 2e 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ......*.*.only.................. |
| 88c0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ................................ |
| 88e0 | 20 20 20 20 20 20 20 20 20 2a 0a 2a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | .........*.*.................... |
| 8900 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ................................ |
| 8920 | 20 20 20 20 20 20 20 20 20 20 20 20 2a 0a 2a 20 66 65 61 74 75 72 65 20 63 72 65 65 70 20 2d 2d | ............*.*.feature.creep.-- |
| 8940 | 20 63 6f 75 6c 64 20 73 75 70 70 6f 72 74 20 6d 6f 72 65 20 74 79 70 65 73 20 76 69 61 20 6f 70 | .could.support.more.types.via.op |
| 8960 | 74 69 6f 6e 61 6c 20 74 79 70 65 20 20 20 20 2a 0a 2a 20 61 72 67 75 6d 65 6e 74 2e 20 20 20 20 | tional.type....*.*.argument..... |
| 8980 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ................................ |
| 89a0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2a 0a 2a 20 20 20 20 20 20 20 20 20 20 20 | ..................*.*........... |
| 89c0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ................................ |
| 89e0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2a 0a 2a 20 61 75 74 68 6f 72 3a | .....................*.*.author: |
| 8a00 | 20 44 61 6e 20 4c 69 62 62 79 20 28 64 61 6e 40 6c 69 62 62 79 2e 63 6f 6d 29 20 20 20 20 20 20 | .Dan.Libby.(dan@libby.com)...... |
| 8a20 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2a 0a 2a 2a 2a 2a 2a 2a | ........................*.****** |
| 8a40 | 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a | ******************************** |
| 8a60 | 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2f 0a 66 75 6e | ***************************/.fun |
| 8a80 | 63 74 69 6f 6e 20 58 4d 4c 5f 52 50 43 5f 65 6e 63 6f 64 65 28 24 70 68 70 5f 76 61 6c 29 20 7b | ction.XML_RPC_encode($php_val).{ |
| 8aa0 | 0a 20 20 20 67 6c 6f 62 61 6c 20 24 58 4d 4c 5f 52 50 43 5f 42 6f 6f 6c 65 61 6e 3b 0a 20 20 20 | ....global.$XML_RPC_Boolean;.... |
| 8ac0 | 67 6c 6f 62 61 6c 20 24 58 4d 4c 5f 52 50 43 5f 49 6e 74 3b 0a 20 20 20 67 6c 6f 62 61 6c 20 24 | global.$XML_RPC_Int;....global.$ |
| 8ae0 | 58 4d 4c 5f 52 50 43 5f 44 6f 75 62 6c 65 3b 0a 20 20 20 67 6c 6f 62 61 6c 20 24 58 4d 4c 5f 52 | XML_RPC_Double;....global.$XML_R |
| 8b00 | 50 43 5f 53 74 72 69 6e 67 3b 0a 20 20 20 67 6c 6f 62 61 6c 20 24 58 4d 4c 5f 52 50 43 5f 41 72 | PC_String;....global.$XML_RPC_Ar |
| 8b20 | 72 61 79 3b 0a 20 20 20 67 6c 6f 62 61 6c 20 24 58 4d 4c 5f 52 50 43 5f 53 74 72 75 63 74 3b 0a | ray;....global.$XML_RPC_Struct;. |
| 8b40 | 0a 20 20 20 24 74 79 70 65 20 3d 20 67 65 74 74 79 70 65 28 24 70 68 70 5f 76 61 6c 29 3b 0a 20 | ....$type.=.gettype($php_val);.. |
| 8b60 | 20 20 24 58 4d 4c 5f 52 50 43 5f 76 61 6c 20 3d 20 6e 65 77 20 58 4d 4c 5f 52 50 43 5f 76 61 6c | ..$XML_RPC_val.=.new.XML_RPC_val |
| 8b80 | 75 65 3b 0a 0a 20 20 20 73 77 69 74 63 68 28 24 74 79 70 65 29 20 7b 0a 20 20 20 20 20 20 63 61 | ue;.....switch($type).{.......ca |
| 8ba0 | 73 65 20 22 61 72 72 61 79 22 3a 0a 20 20 20 20 20 20 63 61 73 65 20 22 6f 62 6a 65 63 74 22 3a | se."array":.......case."object": |
| 8bc0 | 0a 20 20 20 20 20 20 20 20 20 24 61 72 72 20 3d 20 61 72 72 61 79 28 29 3b 0a 20 20 20 20 20 20 | ..........$arr.=.array();....... |
| 8be0 | 20 20 20 77 68 69 6c 65 20 28 6c 69 73 74 28 24 6b 2c 24 76 29 20 3d 20 65 61 63 68 28 24 70 68 | ...while.(list($k,$v).=.each($ph |
| 8c00 | 70 5f 76 61 6c 29 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 24 61 72 72 5b 24 6b 5d 20 3d | p_val)).{.............$arr[$k].= |
| 8c20 | 20 58 4d 4c 5f 52 50 43 5f 65 6e 63 6f 64 65 28 24 76 29 3b 0a 20 20 20 20 20 20 20 20 20 7d 0a | .XML_RPC_encode($v);..........}. |
| 8c40 | 20 20 20 20 20 20 20 20 20 24 58 4d 4c 5f 52 50 43 5f 76 61 6c 2d 3e 61 64 64 53 74 72 75 63 74 | .........$XML_RPC_val->addStruct |
| 8c60 | 28 24 61 72 72 29 3b 0a 20 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b 0a 20 20 20 20 20 20 63 61 | ($arr);..........break;.......ca |
| 8c80 | 73 65 20 22 69 6e 74 65 67 65 72 22 3a 0a 20 20 20 20 20 20 20 20 20 24 58 4d 4c 5f 52 50 43 5f | se."integer":..........$XML_RPC_ |
| 8ca0 | 76 61 6c 2d 3e 61 64 64 53 63 61 6c 61 72 28 24 70 68 70 5f 76 61 6c 2c 20 24 58 4d 4c 5f 52 50 | val->addScalar($php_val,.$XML_RP |
| 8cc0 | 43 5f 49 6e 74 29 3b 0a 20 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b 0a 20 20 20 20 20 20 63 61 | C_Int);..........break;.......ca |
| 8ce0 | 73 65 20 22 64 6f 75 62 6c 65 22 3a 0a 20 20 20 20 20 20 20 20 20 24 58 4d 4c 5f 52 50 43 5f 76 | se."double":..........$XML_RPC_v |
| 8d00 | 61 6c 2d 3e 61 64 64 53 63 61 6c 61 72 28 24 70 68 70 5f 76 61 6c 2c 20 24 58 4d 4c 5f 52 50 43 | al->addScalar($php_val,.$XML_RPC |
| 8d20 | 5f 44 6f 75 62 6c 65 29 3b 0a 20 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b 0a 20 20 20 20 20 20 | _Double);..........break;....... |
| 8d40 | 63 61 73 65 20 22 73 74 72 69 6e 67 22 3a 0a 20 20 20 20 20 20 63 61 73 65 20 22 4e 55 4c 4c 22 | case."string":.......case."NULL" |
| 8d60 | 3a 0a 20 20 20 20 20 20 20 20 20 24 58 4d 4c 5f 52 50 43 5f 76 61 6c 2d 3e 61 64 64 53 63 61 6c | :..........$XML_RPC_val->addScal |
| 8d80 | 61 72 28 24 70 68 70 5f 76 61 6c 2c 20 24 58 4d 4c 5f 52 50 43 5f 53 74 72 69 6e 67 29 3b 0a 20 | ar($php_val,.$XML_RPC_String);.. |
| 8da0 | 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b 0a 2f 2f 20 3c 47 5f 47 69 75 6e 74 61 5f 32 30 30 31 | ........break;.//.<G_Giunta_2001 |
| 8dc0 | 2d 30 32 2d 32 39 3e 0a 2f 2f 20 41 64 64 20 73 75 70 70 6f 72 74 20 66 6f 72 20 65 6e 63 6f 64 | -02-29>.//.Add.support.for.encod |
| 8de0 | 69 6e 67 2f 64 65 63 6f 64 69 6e 67 20 6f 66 20 62 6f 6f 6c 65 61 6e 73 2c 20 73 69 6e 63 65 20 | ing/decoding.of.booleans,.since. |
| 8e00 | 74 68 65 79 20 61 72 65 20 73 75 70 70 6f 72 74 65 64 20 69 6e 20 50 48 50 0a 20 20 20 20 20 20 | they.are.supported.in.PHP....... |
| 8e20 | 63 61 73 65 20 22 62 6f 6f 6c 65 61 6e 22 3a 0a 20 20 20 20 20 20 20 20 20 24 58 4d 4c 5f 52 50 | case."boolean":..........$XML_RP |
| 8e40 | 43 5f 76 61 6c 2d 3e 61 64 64 53 63 61 6c 61 72 28 24 70 68 70 5f 76 61 6c 2c 20 24 58 4d 4c 5f | C_val->addScalar($php_val,.$XML_ |
| 8e60 | 52 50 43 5f 42 6f 6f 6c 65 61 6e 29 3b 0a 20 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b 0a 2f 2f | RPC_Boolean);..........break;.// |
| 8e80 | 20 3c 2f 47 5f 47 69 75 6e 74 61 5f 32 30 30 31 2d 30 32 2d 32 39 3e 0a 20 20 20 20 20 20 63 61 | .</G_Giunta_2001-02-29>.......ca |
| 8ea0 | 73 65 20 22 75 6e 6b 6e 6f 77 6e 20 74 79 70 65 22 3a 0a 20 20 20 20 20 20 64 65 66 61 75 6c 74 | se."unknown.type":.......default |
| 8ec0 | 3a 0a 20 20 20 20 20 20 20 20 20 24 58 4d 4c 5f 52 50 43 5f 76 61 6c 20 3d 20 66 61 6c 73 65 3b | :..........$XML_RPC_val.=.false; |
| 8ee0 | 0a 20 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b 0a 20 20 20 7d 0a 20 20 20 72 65 74 75 72 6e 20 | ..........break;....}....return. |
| 8f00 | 24 58 4d 4c 5f 52 50 43 5f 76 61 6c 3b 0a 7d 0a 0a 3f 3e 0a 00 00 00 00 00 00 00 00 00 00 00 00 | $XML_RPC_val;.}..?>............. |
| 8f20 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8f40 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8f60 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8f80 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8fa0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8fc0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 8fe0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9000 | 58 4d 4c 5f 52 50 43 2d 31 2e 30 2e 34 2f 53 65 72 76 65 72 2e 70 68 70 00 00 00 00 00 00 00 00 | XML_RPC-1.0.4/Server.php........ |
| 9020 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9040 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9060 | 00 00 00 00 31 30 30 36 34 34 20 00 20 20 32 30 31 30 20 00 20 20 20 37 36 34 20 00 20 20 20 20 | ....100644....2010.....764...... |
| 9080 | 20 20 32 36 36 34 33 20 20 37 34 34 33 31 31 36 31 34 33 20 20 31 30 30 35 31 20 00 00 00 00 00 | ..26643..7443116143..10051...... |
| 90a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 90c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 90e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9100 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9120 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9140 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9160 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9180 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 91a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 91c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 91e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 9200 | 3c 3f 70 68 70 0a 2f 2f 20 62 79 20 45 64 64 20 44 75 6d 62 69 6c 6c 20 28 43 29 20 31 39 39 39 | <?php.//.by.Edd.Dumbill.(C).1999 |
| 9220 | 2c 32 30 30 30 0a 2f 2f 20 3c 65 64 64 40 75 73 65 66 75 6c 69 6e 63 2e 63 6f 6d 3e 0a 2f 2f 20 | ,2000.//.<edd@usefulinc.com>.//. |
| 9240 | 24 49 64 3a 20 53 65 72 76 65 72 2e 70 68 70 2c 76 20 31 2e 32 20 32 30 30 32 2f 30 32 2f 32 38 | $Id:.Server.php,v.1.2.2002/02/28 |
| 9260 | 20 31 30 3a 35 39 3a 33 30 20 73 73 62 20 45 78 70 20 24 0a 0a 2f 2f 20 4c 69 63 65 6e 73 65 20 | .10:59:30.ssb.Exp.$..//.License. |
| 9280 | 69 73 20 67 72 61 6e 74 65 64 20 74 6f 20 75 73 65 20 6f 72 20 6d 6f 64 69 66 79 20 74 68 69 73 | is.granted.to.use.or.modify.this |
| 92a0 | 20 73 6f 66 74 77 61 72 65 20 28 22 58 4d 4c 2d 52 50 43 20 66 6f 72 20 50 48 50 22 29 0a 2f 2f | .software.("XML-RPC.for.PHP").// |
| 92c0 | 20 66 6f 72 20 63 6f 6d 6d 65 72 63 69 61 6c 20 6f 72 20 6e 6f 6e 2d 63 6f 6d 6d 65 72 63 69 61 | .for.commercial.or.non-commercia |
| 92e0 | 6c 20 75 73 65 20 70 72 6f 76 69 64 65 64 20 74 68 65 20 63 6f 70 79 72 69 67 68 74 20 6f 66 20 | l.use.provided.the.copyright.of. |
| 9300 | 74 68 65 20 61 75 74 68 6f 72 0a 2f 2f 20 69 73 20 70 72 65 73 65 72 76 65 64 20 69 6e 20 61 6e | the.author.//.is.preserved.in.an |
| 9320 | 79 20 64 69 73 74 72 69 62 75 74 65 64 20 6f 72 20 64 65 72 69 76 61 74 69 76 65 20 77 6f 72 6b | y.distributed.or.derivative.work |
| 9340 | 2e 0a 0a 2f 2f 20 54 48 49 53 20 53 4f 46 54 57 41 52 45 20 49 53 20 50 52 4f 56 49 44 45 44 20 | ...//.THIS.SOFTWARE.IS.PROVIDED. |
| 9360 | 42 59 20 54 48 45 20 41 55 54 48 4f 52 20 60 60 41 53 20 49 53 27 27 20 41 4e 44 20 41 4e 59 20 | BY.THE.AUTHOR.``AS.IS''.AND.ANY. |
| 9380 | 45 58 50 52 45 53 53 45 44 20 4f 52 0a 2f 2f 20 49 4d 50 4c 49 45 44 20 57 41 52 52 41 4e 54 49 | EXPRESSED.OR.//.IMPLIED.WARRANTI |
| 93a0 | 45 53 2c 20 49 4e 43 4c 55 44 49 4e 47 2c 20 42 55 54 20 4e 4f 54 20 4c 49 4d 49 54 45 44 20 54 | ES,.INCLUDING,.BUT.NOT.LIMITED.T |
| 93c0 | 4f 2c 20 54 48 45 20 49 4d 50 4c 49 45 44 20 57 41 52 52 41 4e 54 49 45 53 0a 2f 2f 20 4f 46 20 | O,.THE.IMPLIED.WARRANTIES.//.OF. |
| 93e0 | 4d 45 52 43 48 41 4e 54 41 42 49 4c 49 54 59 20 41 4e 44 20 46 49 54 4e 45 53 53 20 46 4f 52 20 | MERCHANTABILITY.AND.FITNESS.FOR. |
| 9400 | 41 20 50 41 52 54 49 43 55 4c 41 52 20 50 55 52 50 4f 53 45 20 41 52 45 20 44 49 53 43 4c 41 49 | A.PARTICULAR.PURPOSE.ARE.DISCLAI |
| 9420 | 4d 45 44 2e 0a 2f 2f 20 49 4e 20 4e 4f 20 45 56 45 4e 54 20 53 48 41 4c 4c 20 54 48 45 20 41 55 | MED..//.IN.NO.EVENT.SHALL.THE.AU |
| 9440 | 54 48 4f 52 20 42 45 20 4c 49 41 42 4c 45 20 46 4f 52 20 41 4e 59 20 44 49 52 45 43 54 2c 20 49 | THOR.BE.LIABLE.FOR.ANY.DIRECT,.I |
| 9460 | 4e 44 49 52 45 43 54 2c 0a 2f 2f 20 49 4e 43 49 44 45 4e 54 41 4c 2c 20 53 50 45 43 49 41 4c 2c | NDIRECT,.//.INCIDENTAL,.SPECIAL, |
| 9480 | 20 45 58 45 4d 50 4c 41 52 59 2c 20 4f 52 20 43 4f 4e 53 45 51 55 45 4e 54 49 41 4c 20 44 41 4d | .EXEMPLARY,.OR.CONSEQUENTIAL.DAM |
| 94a0 | 41 47 45 53 20 28 49 4e 43 4c 55 44 49 4e 47 2c 20 42 55 54 0a 2f 2f 20 4e 4f 54 20 4c 49 4d 49 | AGES.(INCLUDING,.BUT.//.NOT.LIMI |
| 94c0 | 54 45 44 20 54 4f 2c 20 50 52 4f 43 55 52 45 4d 45 4e 54 20 4f 46 20 53 55 42 53 54 49 54 55 54 | TED.TO,.PROCUREMENT.OF.SUBSTITUT |
| 94e0 | 45 20 47 4f 4f 44 53 20 4f 52 20 53 45 52 56 49 43 45 53 3b 20 4c 4f 53 53 20 4f 46 20 55 53 45 | E.GOODS.OR.SERVICES;.LOSS.OF.USE |
| 9500 | 2c 20 0a 2f 2f 20 44 41 54 41 2c 20 4f 52 20 50 52 4f 46 49 54 53 3b 20 4f 52 20 42 55 53 49 4e | ,..//.DATA,.OR.PROFITS;.OR.BUSIN |
| 9520 | 45 53 53 20 49 4e 54 45 52 52 55 50 54 49 4f 4e 29 20 48 4f 57 45 56 45 52 20 43 41 55 53 45 44 | ESS.INTERRUPTION).HOWEVER.CAUSED |
| 9540 | 20 41 4e 44 20 4f 4e 20 41 4e 59 0a 2f 2f 20 54 48 45 4f 52 59 20 4f 46 20 4c 49 41 42 49 4c 49 | .AND.ON.ANY.//.THEORY.OF.LIABILI |
| 9560 | 54 59 2c 20 57 48 45 54 48 45 52 20 49 4e 20 43 4f 4e 54 52 41 43 54 2c 20 53 54 52 49 43 54 20 | TY,.WHETHER.IN.CONTRACT,.STRICT. |
| 9580 | 4c 49 41 42 49 4c 49 54 59 2c 20 4f 52 20 54 4f 52 54 0a 2f 2f 20 28 49 4e 43 4c 55 44 49 4e 47 | LIABILITY,.OR.TORT.//.(INCLUDING |
| 95a0 | 20 4e 45 47 4c 49 47 45 4e 43 45 20 4f 52 20 4f 54 48 45 52 57 49 53 45 29 20 41 52 49 53 49 4e | .NEGLIGENCE.OR.OTHERWISE).ARISIN |
| 95c0 | 47 20 49 4e 20 41 4e 59 20 57 41 59 20 4f 55 54 20 4f 46 20 54 48 45 20 55 53 45 20 4f 46 0a 2f | G.IN.ANY.WAY.OUT.OF.THE.USE.OF./ |
| 95e0 | 2f 20 54 48 49 53 20 53 4f 46 54 57 41 52 45 2c 20 45 56 45 4e 20 49 46 20 41 44 56 49 53 45 44 | /.THIS.SOFTWARE,.EVEN.IF.ADVISED |
| 9600 | 20 4f 46 20 54 48 45 20 50 4f 53 53 49 42 49 4c 49 54 59 20 4f 46 20 53 55 43 48 20 44 41 4d 41 | .OF.THE.POSSIBILITY.OF.SUCH.DAMA |
| 9620 | 47 45 2e 0a 0a 2f 2f 20 41 64 61 70 74 65 64 20 74 6f 20 50 45 41 52 20 73 74 61 6e 64 61 72 64 | GE...//.Adapted.to.PEAR.standard |
| 9640 | 73 20 62 79 20 53 74 69 67 20 53 e6 74 68 65 72 20 42 61 6b 6b 65 6e 20 3c 73 74 69 67 40 70 68 | s.by.Stig.S.ther.Bakken.<stig@ph |
| 9660 | 70 2e 6e 65 74 3e 0a 0a 2f 2f 20 58 4d 4c 20 52 50 43 20 53 65 72 76 65 72 20 63 6c 61 73 73 0a | p.net>..//.XML.RPC.Server.class. |
| 9680 | 2f 2f 20 72 65 71 75 69 72 65 73 3a 20 78 6d 6c 72 70 63 2e 69 6e 63 0a 0a 72 65 71 75 69 72 65 | //.requires:.xmlrpc.inc..require |
| 96a0 | 5f 6f 6e 63 65 20 22 58 4d 4c 2f 52 50 43 2e 70 68 70 22 3b 0a 0a 2f 2f 20 6c 69 73 74 4d 65 74 | _once."XML/RPC.php";..//.listMet |
| 96c0 | 68 6f 64 73 3a 20 65 69 74 68 65 72 20 61 20 73 74 72 69 6e 67 2c 20 6f 72 20 6e 6f 74 68 69 6e | hods:.either.a.string,.or.nothin |
| 96e0 | 67 0a 24 47 4c 4f 42 41 4c 53 5b 27 58 4d 4c 5f 52 50 43 5f 53 65 72 76 65 72 5f 6c 69 73 74 4d | g.$GLOBALS['XML_RPC_Server_listM |
| 9700 | 65 74 68 6f 64 73 5f 73 69 67 27 5d 3d 0a 20 20 20 20 61 72 72 61 79 28 61 72 72 61 79 28 24 47 | ethods_sig']=.....array(array($G |
| 9720 | 4c 4f 42 41 4c 53 5b 27 58 4d 4c 5f 52 50 43 5f 41 72 72 61 79 27 5d 2c 20 24 47 4c 4f 42 41 4c | LOBALS['XML_RPC_Array'],.$GLOBAL |
| 9740 | 53 5b 27 58 4d 4c 5f 52 50 43 5f 53 74 72 69 6e 67 27 5d 29 2c 20 0a 20 20 20 20 20 20 20 20 20 | S['XML_RPC_String']),........... |
| 9760 | 20 61 72 72 61 79 28 24 47 4c 4f 42 41 4c 53 5b 27 58 4d 4c 5f 52 50 43 5f 41 72 72 61 79 27 5d | .array($GLOBALS['XML_RPC_Array'] |
| 9780 | 29 29 3b 0a 24 47 4c 4f 42 41 4c 53 5b 27 58 4d 4c 5f 52 50 43 5f 53 65 72 76 65 72 5f 6c 69 73 | ));.$GLOBALS['XML_RPC_Server_lis |
| 97a0 | 74 4d 65 74 68 6f 64 73 5f 64 6f 63 27 5d 3d 0a 20 20 20 20 27 54 68 69 73 20 6d 65 74 68 6f 64 | tMethods_doc']=.....'This.method |
| 97c0 | 20 6c 69 73 74 73 20 61 6c 6c 20 74 68 65 20 6d 65 74 68 6f 64 73 20 74 68 61 74 20 74 68 65 20 | .lists.all.the.methods.that.the. |
| 97e0 | 58 4d 4c 2d 52 50 43 20 73 65 72 76 65 72 20 6b 6e 6f 77 73 20 68 6f 77 20 74 6f 20 64 69 73 70 | XML-RPC.server.knows.how.to.disp |
| 9800 | 61 74 63 68 27 3b 0a 0a 66 75 6e 63 74 69 6f 6e 20 58 4d 4c 5f 52 50 43 5f 53 65 72 76 65 72 5f | atch';..function.XML_RPC_Server_ |
| 9820 | 6c 69 73 74 4d 65 74 68 6f 64 73 28 24 73 65 72 76 65 72 2c 20 24 6d 29 0a 7b 0a 20 20 20 20 67 | listMethods($server,.$m).{.....g |
| 9840 | 6c 6f 62 61 6c 20 24 58 4d 4c 5f 52 50 43 5f 65 72 72 2c 20 24 58 4d 4c 5f 52 50 43 5f 73 74 72 | lobal.$XML_RPC_err,.$XML_RPC_str |
| 9860 | 2c 20 24 58 4d 4c 5f 52 50 43 5f 53 65 72 76 65 72 5f 64 6d 61 70 3b 0a 20 20 20 20 24 76 3d 6e | ,.$XML_RPC_Server_dmap;.....$v=n |
| 9880 | 65 77 20 58 4d 4c 5f 52 50 43 5f 56 61 6c 75 65 28 29 3b 0a 20 20 20 20 24 64 6d 61 70 3d 24 73 | ew.XML_RPC_Value();.....$dmap=$s |
| 98a0 | 65 72 76 65 72 2d 3e 64 6d 61 70 3b 0a 20 20 20 20 24 6f 75 74 41 72 3d 61 72 72 61 79 28 29 3b | erver->dmap;.....$outAr=array(); |
| 98c0 | 0a 20 20 20 20 66 6f 72 28 72 65 73 65 74 28 24 64 6d 61 70 29 3b 20 6c 69 73 74 28 24 6b 65 79 | .....for(reset($dmap);.list($key |
| 98e0 | 2c 20 24 76 61 6c 29 3d 65 61 63 68 28 24 64 6d 61 70 29 3b 20 29 20 7b 0a 20 20 20 20 20 20 20 | ,.$val)=each($dmap);.).{........ |
| 9900 | 20 24 6f 75 74 41 72 5b 5d 3d 6e 65 77 20 58 4d 4c 5f 52 50 43 5f 56 61 6c 75 65 28 24 6b 65 79 | .$outAr[]=new.XML_RPC_Value($key |
| 9920 | 2c 20 22 73 74 72 69 6e 67 22 29 3b 0a 20 20 20 20 7d 0a 20 20 20 20 24 64 6d 61 70 3d 24 58 4d | ,."string");.....}.....$dmap=$XM |
| 9940 | 4c 5f 52 50 43 5f 53 65 72 76 65 72 5f 64 6d 61 70 3b 0a 20 20 20 20 66 6f 72 28 72 65 73 65 74 | L_RPC_Server_dmap;.....for(reset |
| 9960 | 28 24 64 6d 61 70 29 3b 20 6c 69 73 74 28 24 6b 65 79 2c 20 24 76 61 6c 29 3d 65 61 63 68 28 24 | ($dmap);.list($key,.$val)=each($ |
| 9980 | 64 6d 61 70 29 3b 20 29 20 7b 0a 20 20 20 20 20 20 20 20 24 6f 75 74 41 72 5b 5d 3d 6e 65 77 20 | dmap);.).{.........$outAr[]=new. |
| 99a0 | 58 4d 4c 5f 52 50 43 5f 56 61 6c 75 65 28 24 6b 65 79 2c 20 22 73 74 72 69 6e 67 22 29 3b 0a 20 | XML_RPC_Value($key,."string");.. |
| 99c0 | 20 20 20 7d 0a 20 20 20 20 24 76 2d 3e 61 64 64 41 72 72 61 79 28 24 6f 75 74 41 72 29 3b 0a 20 | ...}.....$v->addArray($outAr);.. |
| 99e0 | 20 20 20 72 65 74 75 72 6e 20 6e 65 77 20 58 4d 4c 5f 52 50 43 5f 52 65 73 70 6f 6e 73 65 28 24 | ...return.new.XML_RPC_Response($ |
| 9a00 | 76 29 3b 0a 7d 0a 0a 24 47 4c 4f 42 41 4c 53 5b 27 58 4d 4c 5f 52 50 43 5f 53 65 72 76 65 72 5f | v);.}..$GLOBALS['XML_RPC_Server_ |
| 9a20 | 6d 65 74 68 6f 64 53 69 67 6e 61 74 75 72 65 5f 73 69 67 27 5d 3d 0a 20 20 20 20 61 72 72 61 79 | methodSignature_sig']=.....array |
| 9a40 | 28 61 72 72 61 79 28 24 47 4c 4f 42 41 4c 53 5b 27 58 4d 4c 5f 52 50 43 5f 41 72 72 61 79 27 5d | (array($GLOBALS['XML_RPC_Array'] |
| 9a60 | 2c 20 24 47 4c 4f 42 41 4c 53 5b 27 58 4d 4c 5f 52 50 43 5f 53 74 72 69 6e 67 27 5d 29 29 3b 0a | ,.$GLOBALS['XML_RPC_String']));. |
| 9a80 | 24 47 4c 4f 42 41 4c 53 5b 27 58 4d 4c 5f 52 50 43 5f 53 65 72 76 65 72 5f 6d 65 74 68 6f 64 53 | $GLOBALS['XML_RPC_Server_methodS |
| 9aa0 | 69 67 6e 61 74 75 72 65 5f 64 6f 63 27 5d 3d 0a 20 20 20 20 27 52 65 74 75 72 6e 73 20 61 6e 20 | ignature_doc']=.....'Returns.an. |
| 9ac0 | 61 72 72 61 79 20 6f 66 20 6b 6e 6f 77 6e 20 73 69 67 6e 61 74 75 72 65 73 20 28 61 6e 20 61 72 | array.of.known.signatures.(an.ar |
| 9ae0 | 72 61 79 20 6f 66 20 61 72 72 61 79 73 29 20 66 6f 72 20 74 68 65 20 6d 65 74 68 6f 64 20 6e 61 | ray.of.arrays).for.the.method.na |
| 9b00 | 6d 65 20 70 61 73 73 65 64 2e 20 49 66 20 6e 6f 20 73 69 67 6e 61 74 75 72 65 73 20 61 72 65 20 | me.passed..If.no.signatures.are. |
| 9b20 | 6b 6e 6f 77 6e 2c 20 72 65 74 75 72 6e 73 20 61 20 6e 6f 6e 65 2d 61 72 72 61 79 20 28 74 65 73 | known,.returns.a.none-array.(tes |
| 9b40 | 74 20 66 6f 72 20 74 79 70 65 20 21 3d 20 61 72 72 61 79 20 74 6f 20 64 65 74 65 63 74 20 6d 69 | t.for.type.!=.array.to.detect.mi |
| 9b60 | 73 73 69 6e 67 20 73 69 67 6e 61 74 75 72 65 29 27 3b 0a 0a 66 75 6e 63 74 69 6f 6e 20 58 4d 4c | ssing.signature)';..function.XML |
| 9b80 | 5f 52 50 43 5f 53 65 72 76 65 72 5f 6d 65 74 68 6f 64 53 69 67 6e 61 74 75 72 65 28 24 73 65 72 | _RPC_Server_methodSignature($ser |
| 9ba0 | 76 65 72 2c 20 24 6d 29 0a 7b 0a 20 20 20 20 67 6c 6f 62 61 6c 20 24 58 4d 4c 5f 52 50 43 5f 65 | ver,.$m).{.....global.$XML_RPC_e |
| 9bc0 | 72 72 2c 20 24 58 4d 4c 5f 52 50 43 5f 73 74 72 2c 20 24 58 4d 4c 5f 52 50 43 5f 53 65 72 76 65 | rr,.$XML_RPC_str,.$XML_RPC_Serve |
| 9be0 | 72 5f 64 6d 61 70 3b 0a 20 20 20 20 0a 20 20 20 20 24 6d 65 74 68 4e 61 6d 65 3d 24 6d 2d 3e 67 | r_dmap;..........$methName=$m->g |
| 9c00 | 65 74 50 61 72 61 6d 28 30 29 3b 0a 20 20 20 20 24 6d 65 74 68 4e 61 6d 65 3d 24 6d 65 74 68 4e | etParam(0);.....$methName=$methN |
| 9c20 | 61 6d 65 2d 3e 73 63 61 6c 61 72 76 61 6c 28 29 3b 0a 20 20 20 20 69 66 20 28 65 72 65 67 28 22 | ame->scalarval();.....if.(ereg(" |
| 9c40 | 5e 73 79 73 74 65 6d 5c 2e 22 2c 20 24 6d 65 74 68 4e 61 6d 65 29 29 20 7b 0a 20 20 20 20 20 20 | ^system\.",.$methName)).{....... |
| 9c60 | 20 20 24 64 6d 61 70 3d 24 58 4d 4c 5f 52 50 43 5f 53 65 72 76 65 72 5f 64 6d 61 70 3b 20 24 73 | ..$dmap=$XML_RPC_Server_dmap;.$s |
| 9c80 | 79 73 43 61 6c 6c 3d 31 3b 0a 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a 20 20 20 20 20 20 20 20 24 | ysCall=1;.....}.else.{.........$ |
| 9ca0 | 64 6d 61 70 3d 24 73 65 72 76 65 72 2d 3e 64 6d 61 70 3b 20 24 73 79 73 43 61 6c 6c 3d 30 3b 0a | dmap=$server->dmap;.$sysCall=0;. |
| 9cc0 | 20 20 20 20 7d 0a 20 20 20 20 2f 2f 20 20 70 72 69 6e 74 20 22 3c 21 2d 2d 20 24 7b 6d 65 74 68 | ....}.....//..print."<!--.${meth |
| 9ce0 | 4e 61 6d 65 7d 20 2d 2d 3e 5c 6e 22 3b 0a 20 20 20 20 69 66 20 28 69 73 73 65 74 28 24 64 6d 61 | Name}.-->\n";.....if.(isset($dma |
| 9d00 | 70 5b 24 6d 65 74 68 4e 61 6d 65 5d 29 29 20 7b 0a 20 20 20 20 20 20 20 20 69 66 20 28 24 64 6d | p[$methName])).{.........if.($dm |
| 9d20 | 61 70 5b 24 6d 65 74 68 4e 61 6d 65 5d 5b 22 73 69 67 6e 61 74 75 72 65 22 5d 29 20 7b 0a 20 20 | ap[$methName]["signature"]).{... |
| 9d40 | 20 20 20 20 20 20 20 20 20 20 24 73 69 67 73 3d 61 72 72 61 79 28 29 3b 0a 20 20 20 20 20 20 20 | ..........$sigs=array();........ |
| 9d60 | 20 20 20 20 20 24 74 68 65 73 69 67 73 3d 24 64 6d 61 70 5b 24 6d 65 74 68 4e 61 6d 65 5d 5b 22 | .....$thesigs=$dmap[$methName][" |
| 9d80 | 73 69 67 6e 61 74 75 72 65 22 5d 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 28 24 69 3d | signature"];.............for($i= |
| 9da0 | 30 3b 20 24 69 3c 73 69 7a 65 6f 66 28 24 74 68 65 73 69 67 73 29 3b 20 24 69 2b 2b 29 20 7b 0a | 0;.$i<sizeof($thesigs);.$i++).{. |
| 9dc0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 24 63 75 72 73 69 67 3d 61 72 72 61 79 28 29 3b | ................$cursig=array(); |
| 9de0 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 24 69 6e 53 69 67 3d 24 74 68 65 73 69 67 73 | .................$inSig=$thesigs |
| 9e00 | 5b 24 69 5d 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 28 24 6a 3d 30 3b 20 | [$i];.................for($j=0;. |
| 9e20 | 24 6a 3c 73 69 7a 65 6f 66 28 24 69 6e 53 69 67 29 3b 20 24 6a 2b 2b 29 20 7b 0a 20 20 20 20 20 | $j<sizeof($inSig);.$j++).{...... |
| 9e40 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 24 63 75 72 73 69 67 5b 5d 3d 6e 65 77 20 58 4d 4c | ...............$cursig[]=new.XML |
| 9e60 | 5f 52 50 43 5f 56 61 6c 75 65 28 24 69 6e 53 69 67 5b 24 6a 5d 2c 20 22 73 74 72 69 6e 67 22 29 | _RPC_Value($inSig[$j],."string") |
| 9e80 | 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 20 20 20 20 | ;.................}............. |
| 9ea0 | 20 20 20 20 24 73 69 67 73 5b 5d 3d 6e 65 77 20 58 4d 4c 5f 52 50 43 5f 56 61 6c 75 65 28 24 63 | ....$sigs[]=new.XML_RPC_Value($c |
| 9ec0 | 75 72 73 69 67 2c 20 22 61 72 72 61 79 22 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 | ursig,."array");.............}.. |
| 9ee0 | 20 20 20 20 20 20 20 20 20 20 20 24 72 3d 6e 65 77 20 58 4d 4c 5f 52 50 43 5f 52 65 73 70 6f 6e | ...........$r=new.XML_RPC_Respon |
| 9f00 | 73 65 28 6e 65 77 20 58 4d 4c 5f 52 50 43 5f 56 61 6c 75 65 28 24 73 69 67 73 2c 20 22 61 72 72 | se(new.XML_RPC_Value($sigs,."arr |
| 9f20 | 61 79 22 29 29 3b 0a 20 20 20 20 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a 20 20 20 20 20 20 20 20 | ay"));.........}.else.{......... |
| 9f40 | 20 20 20 20 24 72 3d 6e 65 77 20 58 4d 4c 5f 52 50 43 5f 52 65 73 70 6f 6e 73 65 28 6e 65 77 20 | ....$r=new.XML_RPC_Response(new. |
| 9f60 | 58 4d 4c 5f 52 50 43 5f 56 61 6c 75 65 28 22 75 6e 64 65 66 22 2c 20 22 73 74 72 69 6e 67 22 29 | XML_RPC_Value("undef",."string") |
| 9f80 | 29 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a 20 20 20 20 20 20 | );.........}.....}.else.{....... |
| 9fa0 | 20 20 24 72 3d 6e 65 77 20 58 4d 4c 5f 52 50 43 5f 52 65 73 70 6f 6e 73 65 28 30 2c 0a 20 20 20 | ..$r=new.XML_RPC_Response(0,.... |
| 9fc0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 24 58 4d 4c 5f 52 50 43 5f | .......................$XML_RPC_ |
| 9fe0 | 65 72 72 5b 22 69 6e 74 72 6f 73 70 65 63 74 5f 75 6e 6b 6e 6f 77 6e 22 5d 2c 0a 20 20 20 20 20 | err["introspect_unknown"],...... |
| a000 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 24 58 4d 4c 5f 52 50 43 5f 73 74 | .....................$XML_RPC_st |
| a020 | 72 5b 22 69 6e 74 72 6f 73 70 65 63 74 5f 75 6e 6b 6e 6f 77 6e 22 5d 29 3b 0a 20 20 20 20 7d 0a | r["introspect_unknown"]);.....}. |
| a040 | 20 20 20 20 72 65 74 75 72 6e 20 24 72 3b 0a 7d 0a 0a 24 47 4c 4f 42 41 4c 53 5b 27 58 4d 4c 5f | ....return.$r;.}..$GLOBALS['XML_ |
| a060 | 52 50 43 5f 53 65 72 76 65 72 5f 6d 65 74 68 6f 64 48 65 6c 70 5f 73 69 67 27 5d 3d 0a 20 20 20 | RPC_Server_methodHelp_sig']=.... |
| a080 | 20 61 72 72 61 79 28 61 72 72 61 79 28 24 47 4c 4f 42 41 4c 53 5b 27 58 4d 4c 5f 52 50 43 5f 53 | .array(array($GLOBALS['XML_RPC_S |
| a0a0 | 74 72 69 6e 67 27 5d 2c 20 24 47 4c 4f 42 41 4c 53 5b 27 58 4d 4c 5f 52 50 43 5f 53 74 72 69 6e | tring'],.$GLOBALS['XML_RPC_Strin |
| a0c0 | 67 27 5d 29 29 3b 0a 24 47 4c 4f 42 41 4c 53 5b 27 58 4d 4c 5f 52 50 43 5f 53 65 72 76 65 72 5f | g']));.$GLOBALS['XML_RPC_Server_ |
| a0e0 | 6d 65 74 68 6f 64 48 65 6c 70 5f 64 6f 63 27 5d 3d 0a 20 20 20 20 27 52 65 74 75 72 6e 73 20 68 | methodHelp_doc']=.....'Returns.h |
| a100 | 65 6c 70 20 74 65 78 74 20 69 66 20 64 65 66 69 6e 65 64 20 66 6f 72 20 74 68 65 20 6d 65 74 68 | elp.text.if.defined.for.the.meth |
| a120 | 6f 64 20 70 61 73 73 65 64 2c 20 6f 74 68 65 72 77 69 73 65 20 72 65 74 75 72 6e 73 20 61 6e 20 | od.passed,.otherwise.returns.an. |
| a140 | 65 6d 70 74 79 20 73 74 72 69 6e 67 27 3b 0a 0a 66 75 6e 63 74 69 6f 6e 20 58 4d 4c 5f 52 50 43 | empty.string';..function.XML_RPC |
| a160 | 5f 53 65 72 76 65 72 5f 6d 65 74 68 6f 64 48 65 6c 70 28 24 73 65 72 76 65 72 2c 20 24 6d 29 0a | _Server_methodHelp($server,.$m). |
| a180 | 7b 0a 20 20 20 20 67 6c 6f 62 61 6c 20 24 58 4d 4c 5f 52 50 43 5f 65 72 72 2c 20 24 58 4d 4c 5f | {.....global.$XML_RPC_err,.$XML_ |
| a1a0 | 52 50 43 5f 73 74 72 2c 20 24 58 4d 4c 5f 52 50 43 5f 53 65 72 76 65 72 5f 64 6d 61 70 3b 0a 20 | RPC_str,.$XML_RPC_Server_dmap;.. |
| a1c0 | 20 20 20 0a 20 20 20 20 24 6d 65 74 68 4e 61 6d 65 3d 24 6d 2d 3e 67 65 74 50 61 72 61 6d 28 30 | ........$methName=$m->getParam(0 |
| a1e0 | 29 3b 0a 20 20 20 20 24 6d 65 74 68 4e 61 6d 65 3d 24 6d 65 74 68 4e 61 6d 65 2d 3e 73 63 61 6c | );.....$methName=$methName->scal |
| a200 | 61 72 76 61 6c 28 29 3b 0a 20 20 20 20 69 66 20 28 65 72 65 67 28 22 5e 73 79 73 74 65 6d 5c 2e | arval();.....if.(ereg("^system\. |
| a220 | 22 2c 20 24 6d 65 74 68 4e 61 6d 65 29 29 20 7b 0a 20 20 20 20 20 20 20 20 24 64 6d 61 70 3d 24 | ",.$methName)).{.........$dmap=$ |
| a240 | 58 4d 4c 5f 52 50 43 5f 53 65 72 76 65 72 5f 64 6d 61 70 3b 20 24 73 79 73 43 61 6c 6c 3d 31 3b | XML_RPC_Server_dmap;.$sysCall=1; |
| a260 | 0a 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a 20 20 20 20 20 20 20 20 24 64 6d 61 70 3d 24 73 65 72 | .....}.else.{.........$dmap=$ser |
| a280 | 76 65 72 2d 3e 64 6d 61 70 3b 20 24 73 79 73 43 61 6c 6c 3d 30 3b 0a 20 20 20 20 7d 0a 20 20 20 | ver->dmap;.$sysCall=0;.....}.... |
| a2a0 | 20 2f 2f 20 20 70 72 69 6e 74 20 22 3c 21 2d 2d 20 24 7b 6d 65 74 68 4e 61 6d 65 7d 20 2d 2d 3e | .//..print."<!--.${methName}.--> |
| a2c0 | 5c 6e 22 3b 0a 20 20 20 20 69 66 20 28 69 73 73 65 74 28 24 64 6d 61 70 5b 24 6d 65 74 68 4e 61 | \n";.....if.(isset($dmap[$methNa |
| a2e0 | 6d 65 5d 29 29 20 7b 0a 20 20 20 20 20 20 20 20 69 66 20 28 24 64 6d 61 70 5b 24 6d 65 74 68 4e | me])).{.........if.($dmap[$methN |
| a300 | 61 6d 65 5d 5b 22 64 6f 63 73 74 72 69 6e 67 22 5d 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 | ame]["docstring"]).{............ |
| a320 | 20 24 72 3d 6e 65 77 20 58 4d 4c 5f 52 50 43 5f 52 65 73 70 6f 6e 73 65 28 6e 65 77 20 58 4d 4c | .$r=new.XML_RPC_Response(new.XML |
| a340 | 5f 52 50 43 5f 56 61 6c 75 65 28 24 64 6d 61 70 5b 24 6d 65 74 68 4e 61 6d 65 5d 5b 22 64 6f 63 | _RPC_Value($dmap[$methName]["doc |
| a360 | 73 74 72 69 6e 67 22 5d 29 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | string"]),...................... |
| a380 | 20 20 20 20 20 20 20 20 20 22 73 74 72 69 6e 67 22 29 3b 0a 20 20 20 20 20 20 20 20 7d 20 65 6c | ........."string");.........}.el |
| a3a0 | 73 65 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 24 72 3d 6e 65 77 20 58 4d 4c 5f 52 50 43 5f | se.{.............$r=new.XML_RPC_ |
| a3c0 | 52 65 73 70 6f 6e 73 65 28 6e 65 77 20 58 4d 4c 5f 52 50 43 5f 56 61 6c 75 65 28 22 22 2c 20 22 | Response(new.XML_RPC_Value("",." |
| a3e0 | 73 74 72 69 6e 67 22 29 29 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 20 65 6c 73 65 20 | string"));.........}.....}.else. |
| a400 | 7b 0a 20 20 20 20 20 20 20 20 24 72 3d 6e 65 77 20 58 4d 4c 5f 52 50 43 5f 52 65 73 70 6f 6e 73 | {.........$r=new.XML_RPC_Respons |
| a420 | 65 28 30 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 24 | e(0,...........................$ |
| a440 | 58 4d 4c 5f 52 50 43 5f 65 72 72 5b 22 69 6e 74 72 6f 73 70 65 63 74 5f 75 6e 6b 6e 6f 77 6e 22 | XML_RPC_err["introspect_unknown" |
| a460 | 5d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 24 58 4d | ],...........................$XM |
| a480 | 4c 5f 52 50 43 5f 73 74 72 5b 22 69 6e 74 72 6f 73 70 65 63 74 5f 75 6e 6b 6e 6f 77 6e 22 5d 29 | L_RPC_str["introspect_unknown"]) |
| a4a0 | 3b 0a 20 20 20 20 7d 0a 20 20 20 20 72 65 74 75 72 6e 20 24 72 3b 0a 7d 0a 0a 24 47 4c 4f 42 41 | ;.....}.....return.$r;.}..$GLOBA |
| a4c0 | 4c 53 5b 27 58 4d 4c 5f 52 50 43 5f 53 65 72 76 65 72 5f 64 6d 61 70 27 5d 3d 61 72 72 61 79 28 | LS['XML_RPC_Server_dmap']=array( |
| a4e0 | 0a 20 20 20 20 22 73 79 73 74 65 6d 2e 6c 69 73 74 4d 65 74 68 6f 64 73 22 20 3d 3e 0a 20 20 20 | ....."system.listMethods".=>.... |
| a500 | 20 61 72 72 61 79 28 22 66 75 6e 63 74 69 6f 6e 22 20 3d 3e 20 22 58 4d 4c 5f 52 50 43 5f 53 65 | .array("function".=>."XML_RPC_Se |
| a520 | 72 76 65 72 5f 6c 69 73 74 4d 65 74 68 6f 64 73 22 2c 0a 20 20 20 20 20 20 20 20 20 20 22 73 69 | rver_listMethods",..........."si |
| a540 | 67 6e 61 74 75 72 65 22 20 3d 3e 20 24 47 4c 4f 42 41 4c 53 5b 27 58 4d 4c 5f 52 50 43 5f 53 65 | gnature".=>.$GLOBALS['XML_RPC_Se |
| a560 | 72 76 65 72 5f 6c 69 73 74 4d 65 74 68 6f 64 73 5f 73 69 67 27 5d 2c 0a 20 20 20 20 20 20 20 20 | rver_listMethods_sig'],......... |
| a580 | 20 20 22 64 6f 63 73 74 72 69 6e 67 22 20 3d 3e 20 24 47 4c 4f 42 41 4c 53 5b 27 58 4d 4c 5f 52 | .."docstring".=>.$GLOBALS['XML_R |
| a5a0 | 50 43 5f 53 65 72 76 65 72 5f 6c 69 73 74 4d 65 74 68 6f 64 73 5f 64 6f 63 27 5d 29 2c 0a 0a 20 | PC_Server_listMethods_doc']),... |
| a5c0 | 20 20 20 22 73 79 73 74 65 6d 2e 6d 65 74 68 6f 64 48 65 6c 70 22 20 3d 3e 0a 20 20 20 20 61 72 | ..."system.methodHelp".=>.....ar |
| a5e0 | 72 61 79 28 22 66 75 6e 63 74 69 6f 6e 22 20 3d 3e 20 22 58 4d 4c 5f 52 50 43 5f 53 65 72 76 65 | ray("function".=>."XML_RPC_Serve |
| a600 | 72 5f 6d 65 74 68 6f 64 48 65 6c 70 22 2c 0a 20 20 20 20 20 20 20 20 20 20 22 73 69 67 6e 61 74 | r_methodHelp",..........."signat |
| a620 | 75 72 65 22 20 3d 3e 20 24 47 4c 4f 42 41 4c 53 5b 27 58 4d 4c 5f 52 50 43 5f 53 65 72 76 65 72 | ure".=>.$GLOBALS['XML_RPC_Server |
| a640 | 5f 6d 65 74 68 6f 64 48 65 6c 70 5f 73 69 67 27 5d 2c 0a 20 20 20 20 20 20 20 20 20 20 22 64 6f | _methodHelp_sig'],..........."do |
| a660 | 63 73 74 72 69 6e 67 22 20 3d 3e 20 24 47 4c 4f 42 41 4c 53 5b 27 58 4d 4c 5f 52 50 43 5f 53 65 | cstring".=>.$GLOBALS['XML_RPC_Se |
| a680 | 72 76 65 72 5f 6d 65 74 68 6f 64 48 65 6c 70 5f 64 6f 63 27 5d 29 2c 0a 0a 20 20 20 20 22 73 79 | rver_methodHelp_doc']),......"sy |
| a6a0 | 73 74 65 6d 2e 6d 65 74 68 6f 64 53 69 67 6e 61 74 75 72 65 22 20 3d 3e 0a 20 20 20 20 61 72 72 | stem.methodSignature".=>.....arr |
| a6c0 | 61 79 28 22 66 75 6e 63 74 69 6f 6e 22 20 3d 3e 20 22 58 4d 4c 5f 52 50 43 5f 53 65 72 76 65 72 | ay("function".=>."XML_RPC_Server |
| a6e0 | 5f 6d 65 74 68 6f 64 53 69 67 6e 61 74 75 72 65 22 2c 0a 20 20 20 20 20 20 20 20 20 20 22 73 69 | _methodSignature",..........."si |
| a700 | 67 6e 61 74 75 72 65 22 20 3d 3e 20 24 47 4c 4f 42 41 4c 53 5b 27 58 4d 4c 5f 52 50 43 5f 53 65 | gnature".=>.$GLOBALS['XML_RPC_Se |
| a720 | 72 76 65 72 5f 6d 65 74 68 6f 64 53 69 67 6e 61 74 75 72 65 5f 73 69 67 27 5d 2c 0a 20 20 20 20 | rver_methodSignature_sig'],..... |
| a740 | 20 20 20 20 20 20 22 64 6f 63 73 74 72 69 6e 67 22 20 3d 3e 20 24 47 4c 4f 42 41 4c 53 5b 27 58 | ......"docstring".=>.$GLOBALS['X |
| a760 | 4d 4c 5f 52 50 43 5f 53 65 72 76 65 72 5f 6d 65 74 68 6f 64 53 69 67 6e 61 74 75 72 65 5f 64 6f | ML_RPC_Server_methodSignature_do |
| a780 | 63 27 5d 29 0a 29 3b 0a 0a 24 47 4c 4f 42 41 4c 53 5b 27 58 4d 4c 5f 52 50 43 5f 53 65 72 76 65 | c']).);..$GLOBALS['XML_RPC_Serve |
| a7a0 | 72 5f 64 65 62 75 67 69 6e 66 6f 27 5d 3d 22 22 3b 0a 0a 66 75 6e 63 74 69 6f 6e 20 58 4d 4c 5f | r_debuginfo']="";..function.XML_ |
| a7c0 | 52 50 43 5f 53 65 72 76 65 72 5f 64 65 62 75 67 6d 73 67 28 24 6d 29 0a 7b 0a 20 20 20 20 67 6c | RPC_Server_debugmsg($m).{.....gl |
| a7e0 | 6f 62 61 6c 20 24 58 4d 4c 5f 52 50 43 5f 53 65 72 76 65 72 5f 64 65 62 75 67 69 6e 66 6f 3b 0a | obal.$XML_RPC_Server_debuginfo;. |
| a800 | 20 20 20 20 24 58 4d 4c 5f 52 50 43 5f 53 65 72 76 65 72 5f 64 65 62 75 67 69 6e 66 6f 3d 24 58 | ....$XML_RPC_Server_debuginfo=$X |
| a820 | 4d 4c 5f 52 50 43 5f 53 65 72 76 65 72 5f 64 65 62 75 67 69 6e 66 6f 20 2e 20 24 6d 20 2e 20 22 | ML_RPC_Server_debuginfo...$m..." |
| a840 | 5c 6e 22 3b 0a 7d 0a 0a 63 6c 61 73 73 20 58 4d 4c 5f 52 50 43 5f 53 65 72 76 65 72 0a 7b 0a 20 | \n";.}..class.XML_RPC_Server.{.. |
| a860 | 20 20 20 76 61 72 20 24 64 6d 61 70 3d 61 72 72 61 79 28 29 3b 0a 0a 20 20 20 20 66 75 6e 63 74 | ...var.$dmap=array();......funct |
| a880 | 69 6f 6e 20 58 4d 4c 5f 52 50 43 5f 53 65 72 76 65 72 28 24 64 69 73 70 4d 61 70 2c 20 24 73 65 | ion.XML_RPC_Server($dispMap,.$se |
| a8a0 | 72 76 69 63 65 4e 6f 77 3d 31 29 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 67 6c 6f 62 61 6c | rviceNow=1).....{.........global |
| a8c0 | 20 24 48 54 54 50 5f 52 41 57 5f 50 4f 53 54 5f 44 41 54 41 3b 0a 20 20 20 20 20 20 20 20 2f 2f | .$HTTP_RAW_POST_DATA;.........// |
| a8e0 | 20 64 69 73 70 4d 61 70 20 69 73 20 61 20 64 65 73 70 61 74 63 68 20 61 72 72 61 79 20 6f 66 20 | .dispMap.is.a.despatch.array.of. |
| a900 | 6d 65 74 68 6f 64 73 0a 20 20 20 20 20 20 20 20 2f 2f 20 6d 61 70 70 65 64 20 74 6f 20 66 75 6e | methods.........//.mapped.to.fun |
| a920 | 63 74 69 6f 6e 20 6e 61 6d 65 73 20 61 6e 64 20 73 69 67 6e 61 74 75 72 65 73 0a 20 20 20 20 20 | ction.names.and.signatures...... |
| a940 | 20 20 20 2f 2f 20 69 66 20 61 20 6d 65 74 68 6f 64 0a 20 20 20 20 20 20 20 20 2f 2f 20 64 6f 65 | ...//.if.a.method.........//.doe |
| a960 | 73 6e 27 74 20 61 70 70 65 61 72 20 69 6e 20 74 68 65 20 6d 61 70 20 74 68 65 6e 20 61 6e 20 75 | sn't.appear.in.the.map.then.an.u |
| a980 | 6e 6b 6e 6f 77 6e 0a 20 20 20 20 20 20 20 20 2f 2f 20 6d 65 74 68 6f 64 20 65 72 72 6f 72 20 69 | nknown.........//.method.error.i |
| a9a0 | 73 20 67 65 6e 65 72 61 74 65 64 0a 20 20 20 20 20 20 20 20 24 74 68 69 73 2d 3e 64 6d 61 70 3d | s.generated.........$this->dmap= |
| a9c0 | 24 64 69 73 70 4d 61 70 3b 0a 20 20 20 20 20 20 20 20 69 66 20 28 24 73 65 72 76 69 63 65 4e 6f | $dispMap;.........if.($serviceNo |
| a9e0 | 77 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 24 74 68 69 73 2d 3e 73 65 72 76 69 63 65 28 | w).{.............$this->service( |
| aa00 | 29 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 7d 0a 0a 20 20 20 20 66 75 6e 63 74 69 6f 6e | );.........}.....}......function |
| aa20 | 20 73 65 72 69 61 6c 69 7a 65 44 65 62 75 67 28 29 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 | .serializeDebug().....{......... |
| aa40 | 67 6c 6f 62 61 6c 20 24 58 4d 4c 5f 52 50 43 5f 53 65 72 76 65 72 5f 64 65 62 75 67 69 6e 66 6f | global.$XML_RPC_Server_debuginfo |
| aa60 | 3b 0a 20 20 20 20 20 20 20 20 69 66 20 28 24 58 4d 4c 5f 52 50 43 5f 53 65 72 76 65 72 5f 64 65 | ;.........if.($XML_RPC_Server_de |
| aa80 | 62 75 67 69 6e 66 6f 21 3d 22 22 29 20 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e | buginfo!="")..............return |
| aaa0 | 20 22 3c 21 2d 2d 20 44 45 42 55 47 20 49 4e 46 4f 3a 5c 6e 5c 6e 22 20 2e 0a 20 20 20 20 20 20 | ."<!--.DEBUG.INFO:\n\n"......... |
| aac0 | 20 20 20 20 20 20 20 20 20 20 24 58 4d 4c 5f 52 50 43 5f 53 65 72 76 65 72 5f 64 65 62 75 67 69 | ..........$XML_RPC_Server_debugi |
| aae0 | 6e 66 6f 20 2e 20 22 5c 6e 2d 2d 3e 5c 6e 22 3b 0a 20 20 20 20 20 20 20 20 65 6c 73 65 0a 20 20 | nfo..."\n-->\n";.........else... |
| ab00 | 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 22 22 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 | ..........return."";.....}...... |
| ab20 | 66 75 6e 63 74 69 6f 6e 20 73 65 72 76 69 63 65 28 29 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 20 | function.service().....{........ |
| ab40 | 20 24 72 3d 24 74 68 69 73 2d 3e 70 61 72 73 65 52 65 71 75 65 73 74 28 29 3b 0a 20 20 20 20 20 | .$r=$this->parseRequest();...... |
| ab60 | 20 20 20 24 70 61 79 6c 6f 61 64 3d 22 3c 3f 78 6d 6c 20 76 65 72 73 69 6f 6e 3d 5c 22 31 2e 30 | ...$payload="<?xml.version=\"1.0 |
| ab80 | 5c 22 3f 3e 5c 6e 22 20 2e 20 0a 20 20 20 20 20 20 20 20 20 20 20 20 24 74 68 69 73 2d 3e 73 65 | \"?>\n"................$this->se |
| aba0 | 72 69 61 6c 69 7a 65 44 65 62 75 67 28 29 20 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 24 72 2d | rializeDebug()...............$r- |
| abc0 | 3e 73 65 72 69 61 6c 69 7a 65 28 29 3b 0a 20 20 20 20 20 20 20 20 48 65 61 64 65 72 28 22 43 6f | >serialize();.........Header("Co |
| abe0 | 6e 74 65 6e 74 2d 74 79 70 65 3a 20 74 65 78 74 2f 78 6d 6c 5c 6e 43 6f 6e 74 65 6e 74 2d 6c 65 | ntent-type:.text/xml\nContent-le |
| ac00 | 6e 67 74 68 3a 20 22 20 2e 20 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 74 72 6c 65 6e | ngth:."...................strlen |
| ac20 | 28 24 70 61 79 6c 6f 61 64 29 29 3b 0a 20 20 20 20 20 20 20 20 70 72 69 6e 74 20 24 70 61 79 6c | ($payload));.........print.$payl |
| ac40 | 6f 61 64 3b 0a 20 20 20 20 7d 0a 0a 20 20 20 20 66 75 6e 63 74 69 6f 6e 20 76 65 72 69 66 79 53 | oad;.....}......function.verifyS |
| ac60 | 69 67 6e 61 74 75 72 65 28 24 69 6e 2c 20 24 73 69 67 29 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 | ignature($in,.$sig).....{....... |
| ac80 | 20 20 66 6f 72 28 24 69 3d 30 3b 20 24 69 3c 73 69 7a 65 6f 66 28 24 73 69 67 29 3b 20 24 69 2b | ..for($i=0;.$i<sizeof($sig);.$i+ |
| aca0 | 2b 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 63 68 65 63 6b 20 65 61 63 68 20 70 | +).{.............//.check.each.p |
| acc0 | 6f 73 73 69 62 6c 65 20 73 69 67 6e 61 74 75 72 65 20 69 6e 20 74 75 72 6e 0a 20 20 20 20 20 20 | ossible.signature.in.turn....... |
| ace0 | 20 20 20 20 20 20 24 63 75 72 73 69 67 3d 24 73 69 67 5b 24 69 5d 3b 0a 20 20 20 20 20 20 20 20 | ......$cursig=$sig[$i];......... |
| ad00 | 20 20 20 20 69 66 20 28 73 69 7a 65 6f 66 28 24 63 75 72 73 69 67 29 3d 3d 24 69 6e 2d 3e 67 65 | ....if.(sizeof($cursig)==$in->ge |
| ad20 | 74 4e 75 6d 50 61 72 61 6d 73 28 29 2b 31 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | tNumParams()+1).{............... |
| ad40 | 20 20 24 69 74 73 4f 4b 3d 31 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 28 | ..$itsOK=1;.................for( |
| ad60 | 24 6e 3d 30 3b 20 24 6e 3c 24 69 6e 2d 3e 67 65 74 4e 75 6d 50 61 72 61 6d 73 28 29 3b 20 24 6e | $n=0;.$n<$in->getNumParams();.$n |
| ad80 | 2b 2b 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 24 70 3d 24 69 6e | ++).{.....................$p=$in |
| ada0 | 2d 3e 67 65 74 50 61 72 61 6d 28 24 6e 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ->getParam($n);................. |
| adc0 | 20 20 20 20 2f 2f 20 70 72 69 6e 74 20 22 3c 21 2d 2d 20 24 70 20 2d 2d 3e 5c 6e 22 3b 0a 20 20 | ....//.print."<!--.$p.-->\n";... |
| ade0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 24 70 2d 3e 6b 69 6e 64 4f 66 | ..................if.($p->kindOf |
| ae00 | 28 29 20 3d 3d 20 22 73 63 61 6c 61 72 22 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ().==."scalar").{............... |
| ae20 | 20 20 20 20 20 20 20 20 20 20 24 70 74 3d 24 70 2d 3e 73 63 61 6c 61 72 74 79 70 28 29 3b 0a 20 | ..........$pt=$p->scalartyp();.. |
| ae40 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a 20 20 20 20 | ...................}.else.{..... |
| ae60 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 24 70 74 3d 24 70 2d 3e 6b 69 6e 64 | ....................$pt=$p->kind |
| ae80 | 4f 66 28 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 | Of();.....................}..... |
| aea0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 24 6e 2b 31 20 61 73 20 66 69 72 73 74 | ................//.$n+1.as.first |
| aec0 | 20 74 79 70 65 20 6f 66 20 73 69 67 20 69 73 20 72 65 74 75 72 6e 20 74 79 70 65 0a 20 20 20 20 | .type.of.sig.is.return.type..... |
| aee0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 24 70 74 20 21 3d 20 24 63 75 72 73 | ................if.($pt.!=.$curs |
| af00 | 69 67 5b 24 6e 2b 31 5d 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ig[$n+1]).{..................... |
| af20 | 20 20 20 20 24 69 74 73 4f 4b 3d 30 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ....$itsOK=0;................... |
| af40 | 20 20 20 20 20 20 24 70 6e 6f 3d 24 6e 2b 31 3b 20 24 77 61 6e 74 65 64 3d 24 63 75 72 73 69 67 | ......$pno=$n+1;.$wanted=$cursig |
| af60 | 5b 24 6e 2b 31 5d 3b 20 24 67 6f 74 3d 24 70 74 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | [$n+1];.$got=$pt;............... |
| af80 | 20 20 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ..........break;................ |
| afa0 | 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 | .....}.................}........ |
| afc0 | 20 20 20 20 20 20 20 20 20 69 66 20 28 24 69 74 73 4f 4b 29 20 0a 20 20 20 20 20 20 20 20 20 20 | .........if.($itsOK)............ |
| afe0 | 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 61 72 72 61 79 28 31 29 3b 0a 20 20 20 20 20 | ..........return.array(1);...... |
| b000 | 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 72 65 74 75 72 | .......}.........}.........retur |
| b020 | 6e 20 61 72 72 61 79 28 30 2c 20 22 57 61 6e 74 65 64 20 24 7b 77 61 6e 74 65 64 7d 2c 20 67 6f | n.array(0,."Wanted.${wanted},.go |
| b040 | 74 20 24 7b 67 6f 74 7d 20 61 74 20 70 61 72 61 6d 20 24 7b 70 6e 6f 7d 29 22 29 3b 0a 20 20 20 | t.${got}.at.param.${pno})");.... |
| b060 | 20 7d 0a 0a 20 20 20 20 66 75 6e 63 74 69 6f 6e 20 70 61 72 73 65 52 65 71 75 65 73 74 28 24 64 | .}......function.parseRequest($d |
| b080 | 61 74 61 3d 22 22 29 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 67 6c 6f 62 61 6c 20 24 58 4d | ata="").....{.........global.$XM |
| b0a0 | 4c 5f 52 50 43 5f 78 68 2c 24 48 54 54 50 5f 52 41 57 5f 50 4f 53 54 5f 44 41 54 41 3b 0a 20 20 | L_RPC_xh,$HTTP_RAW_POST_DATA;... |
| b0c0 | 20 20 20 20 20 20 67 6c 6f 62 61 6c 20 24 58 4d 4c 5f 52 50 43 5f 65 72 72 2c 20 24 58 4d 4c 5f | ......global.$XML_RPC_err,.$XML_ |
| b0e0 | 52 50 43 5f 73 74 72 2c 20 24 58 4d 4c 5f 52 50 43 5f 65 72 72 78 6d 6c 2c 0a 20 20 20 20 20 20 | RPC_str,.$XML_RPC_errxml,....... |
| b100 | 20 20 20 20 20 20 24 58 4d 4c 5f 52 50 43 5f 64 65 66 65 6e 63 6f 64 69 6e 67 2c 20 24 58 4d 4c | ......$XML_RPC_defencoding,.$XML |
| b120 | 5f 52 50 43 5f 53 65 72 76 65 72 5f 64 6d 61 70 3b 0a 20 20 20 20 20 20 20 20 0a 20 20 20 20 20 | _RPC_Server_dmap;............... |
| b140 | 20 20 20 69 66 20 28 24 64 61 74 61 3d 3d 22 22 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 | ...if.($data=="").{............. |
| b160 | 24 64 61 74 61 3d 24 48 54 54 50 5f 52 41 57 5f 50 4f 53 54 5f 44 41 54 41 3b 0a 20 20 20 20 20 | $data=$HTTP_RAW_POST_DATA;...... |
| b180 | 20 20 20 7d 0a 20 20 20 20 20 20 20 20 24 70 61 72 73 65 72 20 3d 20 78 6d 6c 5f 70 61 72 73 65 | ...}.........$parser.=.xml_parse |
| b1a0 | 72 5f 63 72 65 61 74 65 28 24 58 4d 4c 5f 52 50 43 5f 64 65 66 65 6e 63 6f 64 69 6e 67 29 3b 0a | r_create($XML_RPC_defencoding);. |
| b1c0 | 20 20 20 20 20 20 20 20 0a 20 20 20 20 20 20 20 20 24 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 | .................$XML_RPC_xh[$pa |
| b1e0 | 72 73 65 72 5d 3d 61 72 72 61 79 28 29 3b 0a 20 20 20 20 20 20 20 20 24 58 4d 4c 5f 52 50 43 5f | rser]=array();.........$XML_RPC_ |
| b200 | 78 68 5b 24 70 61 72 73 65 72 5d 5b 27 73 74 27 5d 3d 22 22 3b 0a 20 20 20 20 20 20 20 20 24 58 | xh[$parser]['st']="";.........$X |
| b220 | 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 72 73 65 72 5d 5b 27 63 6d 27 5d 3d 30 3b 20 0a 20 20 20 | ML_RPC_xh[$parser]['cm']=0;..... |
| b240 | 20 20 20 20 20 24 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 72 73 65 72 5d 5b 27 69 73 66 27 5d | .....$XML_RPC_xh[$parser]['isf'] |
| b260 | 3d 30 3b 20 0a 20 20 20 20 20 20 20 20 24 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 72 73 65 72 | =0;..........$XML_RPC_xh[$parser |
| b280 | 5d 5b 27 70 61 72 61 6d 73 27 5d 3d 61 72 72 61 79 28 29 3b 0a 20 20 20 20 20 20 20 20 24 58 4d | ]['params']=array();.........$XM |
| b2a0 | 4c 5f 52 50 43 5f 78 68 5b 24 70 61 72 73 65 72 5d 5b 27 6d 65 74 68 6f 64 27 5d 3d 22 22 3b 0a | L_RPC_xh[$parser]['method']="";. |
| b2c0 | 20 20 20 20 20 20 20 20 0a 20 20 20 20 20 20 20 20 24 70 6c 69 73 74 20 3d 20 27 27 3b 0a 0a 20 | .................$plist.=.'';... |
| b2e0 | 20 20 20 20 20 20 20 2f 2f 20 64 65 63 6f 6d 70 6f 73 65 20 69 6e 63 6f 6d 69 6e 67 20 58 4d 4c | .......//.decompose.incoming.XML |
| b300 | 20 69 6e 74 6f 20 72 65 71 75 65 73 74 20 73 74 72 75 63 74 75 72 65 0a 20 20 20 20 20 20 20 20 | .into.request.structure......... |
| b320 | 0a 20 20 20 20 20 20 20 20 78 6d 6c 5f 70 61 72 73 65 72 5f 73 65 74 5f 6f 70 74 69 6f 6e 28 24 | .........xml_parser_set_option($ |
| b340 | 70 61 72 73 65 72 2c 20 58 4d 4c 5f 4f 50 54 49 4f 4e 5f 43 41 53 45 5f 46 4f 4c 44 49 4e 47 2c | parser,.XML_OPTION_CASE_FOLDING, |
| b360 | 20 74 72 75 65 29 3b 0a 20 20 20 20 20 20 20 20 78 6d 6c 5f 73 65 74 5f 65 6c 65 6d 65 6e 74 5f | .true);.........xml_set_element_ |
| b380 | 68 61 6e 64 6c 65 72 28 24 70 61 72 73 65 72 2c 20 22 58 4d 4c 5f 52 50 43 5f 73 65 22 2c 20 22 | handler($parser,."XML_RPC_se",." |
| b3a0 | 58 4d 4c 5f 52 50 43 5f 65 65 22 29 3b 0a 20 20 20 20 20 20 20 20 78 6d 6c 5f 73 65 74 5f 63 68 | XML_RPC_ee");.........xml_set_ch |
| b3c0 | 61 72 61 63 74 65 72 5f 64 61 74 61 5f 68 61 6e 64 6c 65 72 28 24 70 61 72 73 65 72 2c 20 22 58 | aracter_data_handler($parser,."X |
| b3e0 | 4d 4c 5f 52 50 43 5f 63 64 22 29 3b 0a 20 20 20 20 20 20 20 20 78 6d 6c 5f 73 65 74 5f 64 65 66 | ML_RPC_cd");.........xml_set_def |
| b400 | 61 75 6c 74 5f 68 61 6e 64 6c 65 72 28 24 70 61 72 73 65 72 2c 20 22 58 4d 4c 5f 52 50 43 5f 64 | ault_handler($parser,."XML_RPC_d |
| b420 | 68 22 29 3b 0a 20 20 20 20 20 20 20 20 69 66 20 28 21 78 6d 6c 5f 70 61 72 73 65 28 24 70 61 72 | h");.........if.(!xml_parse($par |
| b440 | 73 65 72 2c 20 24 64 61 74 61 2c 20 31 29 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f | ser,.$data,.1)).{.............// |
| b460 | 20 72 65 74 75 72 6e 20 58 4d 4c 20 65 72 72 6f 72 20 61 73 20 61 20 66 61 75 6c 74 43 6f 64 65 | .return.XML.error.as.a.faultCode |
| b480 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 24 72 3d 6e 65 77 20 58 4d 4c 5f 52 50 43 5f 52 65 73 70 | .............$r=new.XML_RPC_Resp |
| b4a0 | 6f 6e 73 65 28 30 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | onse(0,......................... |
| b4c0 | 20 20 20 20 20 20 20 20 20 20 20 20 24 58 4d 4c 5f 52 50 43 5f 65 72 72 78 6d 6c 2b 78 6d 6c 5f | ............$XML_RPC_errxml+xml_ |
| b4e0 | 67 65 74 5f 65 72 72 6f 72 5f 63 6f 64 65 28 24 70 61 72 73 65 72 29 2c 0a 20 20 20 20 20 20 20 | get_error_code($parser),........ |
| b500 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 70 72 | .............................spr |
| b520 | 69 6e 74 66 28 22 58 4d 4c 20 65 72 72 6f 72 3a 20 25 73 20 61 74 20 6c 69 6e 65 20 25 64 22 2c | intf("XML.error:.%s.at.line.%d", |
| b540 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ................................ |
| b560 | 20 20 20 20 20 20 20 20 20 20 20 20 20 78 6d 6c 5f 65 72 72 6f 72 5f 73 74 72 69 6e 67 28 78 6d | .............xml_error_string(xm |
| b580 | 6c 5f 67 65 74 5f 65 72 72 6f 72 5f 63 6f 64 65 28 24 70 61 72 73 65 72 29 29 2c 0a 20 20 20 20 | l_get_error_code($parser)),..... |
| b5a0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ................................ |
| b5c0 | 20 20 20 20 20 20 20 20 78 6d 6c 5f 67 65 74 5f 63 75 72 72 65 6e 74 5f 6c 69 6e 65 5f 6e 75 6d | ........xml_get_current_line_num |
| b5e0 | 62 65 72 28 24 70 61 72 73 65 72 29 29 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 78 6d 6c 5f | ber($parser)));.............xml_ |
| b600 | 70 61 72 73 65 72 5f 66 72 65 65 28 24 70 61 72 73 65 72 29 3b 0a 20 20 20 20 20 20 20 20 7d 20 | parser_free($parser);.........}. |
| b620 | 65 6c 73 65 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 78 6d 6c 5f 70 61 72 73 65 72 5f 66 72 | else.{.............xml_parser_fr |
| b640 | 65 65 28 24 70 61 72 73 65 72 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 24 6d 3d 6e 65 77 20 | ee($parser);.............$m=new. |
| b660 | 58 4d 4c 5f 52 50 43 5f 4d 65 73 73 61 67 65 28 24 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 72 | XML_RPC_Message($XML_RPC_xh[$par |
| b680 | 73 65 72 5d 5b 27 6d 65 74 68 6f 64 27 5d 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 | ser]['method']);.............//. |
| b6a0 | 6e 6f 77 20 61 64 64 20 70 61 72 61 6d 65 74 65 72 73 20 69 6e 0a 20 20 20 20 20 20 20 20 20 20 | now.add.parameters.in........... |
| b6c0 | 20 20 66 6f 72 28 24 69 3d 30 3b 20 24 69 3c 73 69 7a 65 6f 66 28 24 58 4d 4c 5f 52 50 43 5f 78 | ..for($i=0;.$i<sizeof($XML_RPC_x |
| b6e0 | 68 5b 24 70 61 72 73 65 72 5d 5b 27 70 61 72 61 6d 73 27 5d 29 3b 20 24 69 2b 2b 29 20 7b 0a 20 | h[$parser]['params']);.$i++).{.. |
| b700 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 70 72 69 6e 74 20 22 3c 21 2d 2d 20 22 20 | ...............//.print."<!--.". |
| b720 | 2e 20 24 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 72 73 65 72 5d 5b 27 70 61 72 61 6d 73 27 5d | ..$XML_RPC_xh[$parser]['params'] |
| b740 | 5b 24 69 5d 2e 20 22 2d 2d 3e 5c 6e 22 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 24 | [$i].."-->\n";.................$ |
| b760 | 70 6c 69 73 74 2e 3d 22 24 69 20 2d 20 22 20 2e 20 20 24 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 | plist.="$i.-."....$XML_RPC_xh[$p |
| b780 | 61 72 73 65 72 5d 5b 27 70 61 72 61 6d 73 27 5d 5b 24 69 5d 2e 20 22 20 5c 6e 22 3b 0a 20 20 20 | arser]['params'][$i]..".\n";.... |
| b7a0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 65 76 61 6c 28 27 24 6d 2d 3e 61 64 64 50 61 72 61 6d 28 | .............eval('$m->addParam( |
| b7c0 | 27 20 2e 20 24 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 72 73 65 72 5d 5b 27 70 61 72 61 6d 73 | '...$XML_RPC_xh[$parser]['params |
| b7e0 | 27 5d 5b 24 69 5d 2e 20 22 29 3b 22 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 | '][$i]..");");.............}.... |
| b800 | 20 20 20 20 20 20 20 20 20 58 4d 4c 5f 52 50 43 5f 53 65 72 76 65 72 5f 64 65 62 75 67 6d 73 67 | .........XML_RPC_Server_debugmsg |
| b820 | 28 24 70 6c 69 73 74 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 6e 6f 77 20 74 6f 20 | ($plist);.............//.now.to. |
| b840 | 64 65 61 6c 20 77 69 74 68 20 74 68 65 20 6d 65 74 68 6f 64 0a 20 20 20 20 20 20 20 20 20 20 20 | deal.with.the.method............ |
| b860 | 20 24 6d 65 74 68 4e 61 6d 65 3d 24 58 4d 4c 5f 52 50 43 5f 78 68 5b 24 70 61 72 73 65 72 5d 5b | .$methName=$XML_RPC_xh[$parser][ |
| b880 | 27 6d 65 74 68 6f 64 27 5d 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 65 72 65 67 28 | 'method'];.............if.(ereg( |
| b8a0 | 22 5e 73 79 73 74 65 6d 5c 2e 22 2c 20 24 6d 65 74 68 4e 61 6d 65 29 29 20 7b 0a 20 20 20 20 20 | "^system\.",.$methName)).{...... |
| b8c0 | 20 20 20 20 20 20 20 20 20 20 20 24 64 6d 61 70 3d 24 58 4d 4c 5f 52 50 43 5f 53 65 72 76 65 72 | ...........$dmap=$XML_RPC_Server |
| b8e0 | 5f 64 6d 61 70 3b 20 24 73 79 73 43 61 6c 6c 3d 31 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d | _dmap;.$sysCall=1;.............} |
| b900 | 20 65 6c 73 65 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 24 64 6d 61 70 3d 24 74 | .else.{.................$dmap=$t |
| b920 | 68 69 73 2d 3e 64 6d 61 70 3b 20 24 73 79 73 43 61 6c 6c 3d 30 3b 0a 20 20 20 20 20 20 20 20 20 | his->dmap;.$sysCall=0;.......... |
| b940 | 20 20 20 7d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 69 73 73 65 74 28 24 64 6d 61 70 | ...}.............if.(isset($dmap |
| b960 | 5b 24 6d 65 74 68 4e 61 6d 65 5d 5b 27 66 75 6e 63 74 69 6f 6e 27 5d 29 29 20 7b 0a 20 20 20 20 | [$methName]['function'])).{..... |
| b980 | 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 64 69 73 70 61 74 63 68 20 69 66 20 65 78 69 73 74 | ............//.dispatch.if.exist |
| b9a0 | 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 69 73 73 65 74 28 24 64 6d 61 | s.................if.(isset($dma |
| b9c0 | 70 5b 24 6d 65 74 68 4e 61 6d 65 5d 5b 27 73 69 67 6e 61 74 75 72 65 27 5d 29 29 20 7b 0a 20 20 | p[$methName]['signature'])).{... |
| b9e0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 24 73 72 3d 24 74 68 69 73 2d 3e 76 65 72 | ..................$sr=$this->ver |
| ba00 | 69 66 79 53 69 67 6e 61 74 75 72 65 28 24 6d 2c 20 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ifySignature($m,................ |
| ba20 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ................................ |
| ba40 | 20 24 64 6d 61 70 5b 24 6d 65 74 68 4e 61 6d 65 5d 5b 27 73 69 67 6e 61 74 75 72 65 27 5d 20 29 | .$dmap[$methName]['signature'].) |
| ba60 | 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 20 20 20 20 | ;.................}............. |
| ba80 | 20 20 20 20 69 66 20 28 20 28 21 69 73 73 65 74 28 24 64 6d 61 70 5b 24 6d 65 74 68 4e 61 6d 65 | ....if.(.(!isset($dmap[$methName |
| baa0 | 5d 5b 27 73 69 67 6e 61 74 75 72 65 27 5d 29 29 20 7c 7c 20 24 73 72 5b 30 5d 29 20 7b 0a 20 20 | ]['signature'])).||.$sr[0]).{... |
| bac0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 69 66 20 6e 6f 20 73 69 67 6e 61 | ..................//.if.no.signa |
| bae0 | 74 75 72 65 20 6f 72 20 63 6f 72 72 65 63 74 20 73 69 67 6e 61 74 75 72 65 0a 20 20 20 20 20 20 | ture.or.correct.signature....... |
| bb00 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 24 73 79 73 43 61 6c 6c 29 20 7b 20 0a 20 | ..............if.($sysCall).{... |
| bb20 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 76 61 6c 28 27 24 72 3d | .......................eval('$r= |
| bb40 | 27 20 2e 20 24 64 6d 61 70 5b 24 6d 65 74 68 4e 61 6d 65 5d 5b 27 66 75 6e 63 74 69 6f 6e 27 5d | '...$dmap[$methName]['function'] |
| bb60 | 20 2e 20 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ................................ |
| bb80 | 20 27 28 24 74 68 69 73 2c 20 24 6d 29 3b 27 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | .'($this,.$m);');............... |
| bba0 | 20 20 20 20 20 20 7d 20 65 6c 73 65 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ......}.else.{.................. |
| bbc0 | 20 20 20 20 20 20 20 65 76 61 6c 28 27 24 72 3d 27 20 2e 20 24 64 6d 61 70 5b 24 6d 65 74 68 4e | .......eval('$r='...$dmap[$methN |
| bbe0 | 61 6d 65 5d 5b 27 66 75 6e 63 74 69 6f 6e 27 5d 20 2e 20 0a 20 20 20 20 20 20 20 20 20 20 20 20 | ame]['function']................ |
| bc00 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 28 24 6d 29 3b 27 29 3b 0a 20 20 20 20 20 | .................'($m);');...... |
| bc20 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ...............}................ |
| bc40 | 20 7d 20 65 6c 73 65 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 24 72 | .}.else.{.....................$r |
| bc60 | 3d 6e 65 77 20 58 4d 4c 5f 52 50 43 5f 52 65 73 70 6f 6e 73 65 28 30 2c 0a 20 20 20 20 20 20 20 | =new.XML_RPC_Response(0,........ |
| bc80 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ................................ |
| bca0 | 20 20 20 20 20 24 58 4d 4c 5f 52 50 43 5f 65 72 72 5b 22 69 6e 63 6f 72 72 65 63 74 5f 70 61 72 | .....$XML_RPC_err["incorrect_par |
| bcc0 | 61 6d 73 22 5d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ams"],.......................... |
| bce0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 24 58 4d 4c 5f 52 50 43 5f 73 74 72 5b | ...................$XML_RPC_str[ |
| bd00 | 22 69 6e 63 6f 72 72 65 63 74 5f 70 61 72 61 6d 73 22 5d 2e 22 3a 20 22 2e 20 24 73 72 5b 31 5d | "incorrect_params"].":."..$sr[1] |
| bd20 | 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 20 20 20 | );.................}............ |
| bd40 | 20 7d 20 65 6c 73 65 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 65 6c 73 | .}.else.{.................//.els |
| bd60 | 65 20 70 72 65 70 61 72 65 20 65 72 72 6f 72 20 72 65 73 70 6f 6e 73 65 0a 20 20 20 20 20 20 20 | e.prepare.error.response........ |
| bd80 | 20 20 20 20 20 20 20 20 20 24 72 3d 6e 65 77 20 58 4d 4c 5f 52 50 43 5f 52 65 73 70 6f 6e 73 65 | .........$r=new.XML_RPC_Response |
| bda0 | 28 30 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | (0,............................. |
| bdc0 | 20 20 20 20 20 20 20 20 20 20 20 20 24 58 4d 4c 5f 52 50 43 5f 65 72 72 5b 22 75 6e 6b 6e 6f 77 | ............$XML_RPC_err["unknow |
| bde0 | 6e 5f 6d 65 74 68 6f 64 22 5d 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | n_method"],..................... |
| be00 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 24 58 4d 4c 5f 52 50 43 5f 73 74 72 | ....................$XML_RPC_str |
| be20 | 5b 22 75 6e 6b 6e 6f 77 6e 5f 6d 65 74 68 6f 64 22 5d 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 | ["unknown_method"]);............ |
| be40 | 20 7d 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 24 72 3b 0a | .}.........}.........return.$r;. |
| be60 | 20 20 20 20 7d 0a 0a 20 20 66 75 6e 63 74 69 6f 6e 20 65 63 68 6f 49 6e 70 75 74 28 29 20 7b 0a | ....}....function.echoInput().{. |
| be80 | 20 20 20 20 20 20 20 20 67 6c 6f 62 61 6c 20 24 48 54 54 50 5f 52 41 57 5f 50 4f 53 54 5f 44 41 | ........global.$HTTP_RAW_POST_DA |
| bea0 | 54 41 3b 0a 0a 20 20 20 20 20 20 20 20 2f 2f 20 61 20 64 65 62 75 67 67 69 6e 67 20 72 6f 75 74 | TA;..........//.a.debugging.rout |
| bec0 | 69 6e 65 3a 20 6a 75 73 74 20 65 63 68 6f 73 20 62 61 63 6b 20 74 68 65 20 69 6e 70 75 74 0a 20 | ine:.just.echos.back.the.input.. |
| bee0 | 20 20 20 20 20 20 20 2f 2f 20 70 61 63 6b 65 74 20 61 73 20 61 20 73 74 72 69 6e 67 20 76 61 6c | .......//.packet.as.a.string.val |
| bf00 | 75 65 0a 0a 20 20 20 20 20 20 20 20 24 72 3d 6e 65 77 20 58 4d 4c 5f 52 50 43 5f 52 65 73 70 6f | ue..........$r=new.XML_RPC_Respo |
| bf20 | 6e 73 65 3b 0a 20 20 20 20 20 20 20 20 24 72 2d 3e 78 76 3d 6e 65 77 20 58 4d 4c 5f 52 50 43 5f | nse;.........$r->xv=new.XML_RPC_ |
| bf40 | 56 61 6c 75 65 28 20 22 27 41 68 61 20 73 61 69 64 20 49 3a 20 27 22 20 2e 20 24 48 54 54 50 5f | Value(."'Aha.said.I:.'"...$HTTP_ |
| bf60 | 52 41 57 5f 50 4f 53 54 5f 44 41 54 41 2c 20 22 73 74 72 69 6e 67 22 29 3b 0a 20 20 20 20 20 20 | RAW_POST_DATA,."string");....... |
| bf80 | 20 20 70 72 69 6e 74 20 24 72 2d 3e 73 65 72 69 61 6c 69 7a 65 28 29 3b 0a 20 20 7d 0a 7d 0a 0a | ..print.$r->serialize();...}.}.. |
| bfa0 | 3f 3e 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ?>.............................. |
| bfc0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| bfe0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| c000 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| c020 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| c040 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| c060 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| c080 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| c0a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| c0c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| c0e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| c100 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| c120 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| c140 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| c160 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| c180 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| c1a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| c1c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| c1e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |