From 28f15eab133cf2b65efb29c8d764fea9364d67b1 Mon Sep 17 00:00:00 2001 From: Jimmy Olgeni Date: Sun, 1 Jun 2003 09:33:04 +0000 Subject: 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). --- net/erlang_xmlrpc/files/patch-src_xmlrpc__http.erl | 29 ++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 net/erlang_xmlrpc/files/patch-src_xmlrpc__http.erl (limited to 'net/erlang_xmlrpc/files/patch-src_xmlrpc__http.erl') diff --git a/net/erlang_xmlrpc/files/patch-src_xmlrpc__http.erl b/net/erlang_xmlrpc/files/patch-src_xmlrpc__http.erl new file mode 100644 index 000000000000..e3b494fd5742 --- /dev/null +++ b/net/erlang_xmlrpc/files/patch-src_xmlrpc__http.erl @@ -0,0 +1,29 @@ + +$FreeBSD$ + +--- src/xmlrpc_http.erl.orig Wed Apr 23 21:06:45 2003 ++++ src/xmlrpc_http.erl Fri May 23 11:59:38 2003 +@@ -142,7 +142,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]). + + eval_payload(Socket, Timeout, {M, F} = Handler, State, Connection, Payload) -> + case catch M:F(State, Payload) of +@@ -190,6 +197,7 @@ + Response = + ["HTTP/1.1 ", integer_to_list(StatusCode), " ", + reason_phrase(StatusCode), "\r\n", ++ "Content-Type: text/xml\r\n", + "Content-Length: ", integer_to_list(lists:flatlength(Payload)), + "\r\n", + "Server: Erlang/1.13\r\n", -- cgit v1.2.3