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 | ................................ |