diff options
Diffstat (limited to 'net/erlang_xmlrpc/files')
-rw-r--r-- | net/erlang_xmlrpc/files/patch-src_xmlrpc.erl | 20 | ||||
-rw-r--r-- | net/erlang_xmlrpc/files/patch-src_xmlrpc__http.erl | 29 |
2 files changed, 49 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} 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", |