Re: Limiting maximum RPC message length
Gerd Stolpmann <[email protected]> Fri, 21 Aug 2009 14:14:58 +0200
| Newsgroups | gmane.comp.lang.ocaml.lib.net.devel |
|---|---|
| Message-ID | <[email protected]> |
This is fixed in the svn version (https://godirepo.camlcity.org/svn/lib-ocamlnet2/trunk). I've also added a message length filter for Rpc_client in addition to the one for Rpc_server. Gerd Am Dienstag, den 11.08.2009, 23:04 +0200 schrieb Gerd Stolpmann: > Am Sonntag, den 09.08.2009, 18:48 +0200 schrieb Hans Ole Rafaelsen: > > Hi. > > > > The message length given in the RPC message is checked for validity in > > that the message length is less than Sys.max_string_length. If that is > > found to hold, a string with the size given in the message is created. > > > > On a 32bit system this is 32MB but on a 64bit this value is fairly > > large. So just connecting to a RPC server and sending some 'junk' (e.g: > > echo dddd | nc 127.0.0.1 10000 -q 1) causes the application to allocate > > several gigabytes of memory. > > > > Here is a simple patch for rpc_transport.ml(i) that allows the user to > > set the maximum length of RPC messages. Can something along these lines > > be included into further versions on Ocamlnet? > > Well, there is such a mechanism in rpc_server.ml, but seems to be partly > non-functional. The interface is Rpc_server.set_session_filter, e.g. > > Rpc_server.set_session_filter > srv > (fun _ -> `Accept_limit_length(n, `Drop) > (* accept messages up to n bytes, and if exceeded, drop the message *) > > This admittedly does not work, and there must have been some regression. > > For clients, there is no such mechanism, but is probably easy to add. > > Anyway, I've added this to my TODO list. > > Gerd > > > > > Kindest regards, > > > > Hans Ole Rafaelsen > > > > ------------------------------------------------------------------------------ > > Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day > > trial. Simplify your report design, integration and deployment - and focus on > > what you do best, core application coding. Discover what's new with > > Crystal Reports now. http://p.sf.net/sfu/bobj-july > > _______________________________________________ Ocamlnet-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/ocamlnet-devel -- ------------------------------------------------------------ Gerd Stolpmann, Bad Nauheimer Str.3, 64289 Darmstadt,Germany [email protected] http://www.gerd-stolpmann.de Phone: +49-6151-153855 Fax: +49-6151-997714 ------------------------------------------------------------ ------------------------------------------------------------------------------ Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day trial. Simplify your report design, integration and deployment - and focus on what you do best, core application coding. Discover what's new with Crystal Reports now. http://p.sf.net/sfu/bobj-july