summaryrefslogtreecommitdiff
path: root/net/erlang_xmlrpc/files/patch-src_xmlrpc.erl
diff options
context:
space:
mode:
authorJimmy Olgeni <olgeni@FreeBSD.org>2003-06-01 09:33:04 +0000
committerJimmy Olgeni <olgeni@FreeBSD.org>2003-06-01 09:33:04 +0000
commit28f15eab133cf2b65efb29c8d764fea9364d67b1 (patch)
treec355f2c62043ded35a4d3a3bc5746dbb67044b1b /net/erlang_xmlrpc/files/patch-src_xmlrpc.erl
parentSecurity Update (diff)
Update to version 1.13. Make it support large requests/replies, and
deliver the proper Content-type required by some clients (like the ruby xmlrpc implementation).
Notes
Notes: svn path=/head/; revision=81882
Diffstat (limited to 'net/erlang_xmlrpc/files/patch-src_xmlrpc.erl')
-rw-r--r--net/erlang_xmlrpc/files/patch-src_xmlrpc.erl20
1 files changed, 20 insertions, 0 deletions
diff --git a/net/erlang_xmlrpc/files/patch-src_xmlrpc.erl b/net/erlang_xmlrpc/files/patch-src_xmlrpc.erl
new file mode 100644
index 000000000000..5cfb3e1878d8
--- /dev/null
+++ b/net/erlang_xmlrpc/files/patch-src_xmlrpc.erl
@@ -0,0 +1,20 @@
+
+$FreeBSD$
+
+--- src/xmlrpc.erl.orig Fri May 23 10:47:55 2003
++++ src/xmlrpc.erl Fri May 23 10:47:57 2003
+@@ -164,7 +164,14 @@
+
+ get_payload(Socket, Timeout, ContentLength) ->
+ inet:setopts(Socket, [{packet, raw}]),
+- gen_tcp:recv(Socket, ContentLength, Timeout).
++ get_payload(Socket, Timeout, ContentLength, []).
++
++get_payload(Socket, Timeout, 0, Payload) ->
++ {ok, lists:concat(lists:reverse(Payload))};
++
++get_payload(Socket, Timeout, ContentLength, Payload) ->
++ {ok, Bin} = gen_tcp:recv(Socket, 0, Timeout),
++ get_payload(Socket, Timeout, ContentLength - length(Bin), [Bin|Payload]).
+
+ %% Exported: start_link/{1,5,6}