summaryrefslogtreecommitdiff
path: root/net/erlang_xmlrpc
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
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')
-rw-r--r--net/erlang_xmlrpc/Makefile4
-rw-r--r--net/erlang_xmlrpc/distinfo2
-rw-r--r--net/erlang_xmlrpc/files/patch-src_xmlrpc.erl20
-rw-r--r--net/erlang_xmlrpc/files/patch-src_xmlrpc__http.erl29
-rw-r--r--net/erlang_xmlrpc/pkg-plist1
5 files changed, 53 insertions, 3 deletions
diff --git a/net/erlang_xmlrpc/Makefile b/net/erlang_xmlrpc/Makefile
index 8e4509c6fccd..be9ab936e58e 100644
--- a/net/erlang_xmlrpc/Makefile
+++ b/net/erlang_xmlrpc/Makefile
@@ -6,7 +6,7 @@
#
PORTNAME= erlang_xmlrpc
-PORTVERSION= 1.12
+PORTVERSION= 1.13
CATEGORIES= net
MASTER_SITES= http://www.gleipnir.com/xmlrpc/
DISTNAME= xmlrpc-${PORTVERSION}
@@ -29,7 +29,7 @@ XMLRPC_DOCS= xmlrpc.pdf xmlrpc.ps xmlrpc.txt
post-patch:
@${REINPLACE_CMD} -e 's|XMERL_PATH=.*|XMERL_PATH=${LOCALBASE}/lib/erlang/lib/xmerl|g' ${WRKSRC}/src/Makefile
- @${RM} ${WRKSRC}/src/Makefile.bak
+ @${RM} ${WRKSRC}/src/Makefile.bak ${WRKSRC}/src/*.orig
do-build:
@cd ${WRKSRC}/src && ${GMAKE}
diff --git a/net/erlang_xmlrpc/distinfo b/net/erlang_xmlrpc/distinfo
index 144328c51d69..64acc12c2665 100644
--- a/net/erlang_xmlrpc/distinfo
+++ b/net/erlang_xmlrpc/distinfo
@@ -1 +1 @@
-MD5 (erlang/xmlrpc-1.12.tgz) = 74d124f255a7ab10d559ed6d40761e25
+MD5 (erlang/xmlrpc-1.13.tgz) = f042297a05282bd21068043d6dc77305
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",
diff --git a/net/erlang_xmlrpc/pkg-plist b/net/erlang_xmlrpc/pkg-plist
index b38f2cdaad3b..635d00f0197c 100644
--- a/net/erlang_xmlrpc/pkg-plist
+++ b/net/erlang_xmlrpc/pkg-plist
@@ -5,6 +5,7 @@ lib/erlang/lib/xmlrpc/ebin/xmlrpc_encode.beam
lib/erlang/lib/xmlrpc/ebin/xmlrpc_http.beam
lib/erlang/lib/xmlrpc/ebin/xmlrpc_util.beam
lib/erlang/lib/xmlrpc/src/Makefile
+lib/erlang/lib/xmlrpc/src/example_serv.erl
lib/erlang/lib/xmlrpc/src/log.hrl
lib/erlang/lib/xmlrpc/src/tcp_serv.erl
lib/erlang/lib/xmlrpc/src/xmlrpc.erl