caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
From: David Brown <caml-list@davidb.org>
To: Alex Baretta <alex@baretta.com>
Cc: Ocaml <caml-list@inria.fr>
Subject: Re: [Caml-list] Native executable symtable
Date: Thu, 11 Nov 2004 08:23:29 -0800	[thread overview]
Message-ID: <20041111162329.GA21287@old.davidb.org> (raw)
In-Reply-To: <41933C5E.2010008@baretta.com>

On Thu, Nov 11, 2004 at 11:18:06AM +0100, Alex Baretta wrote:

> We are writing a library implementing binary client-server protocol 
> based on the Marshal module. In order to guarantee some degree of 
> type-safety, during the handshaking phase of the communication we need 
> the client to send the server the MD5 checksums of all relevant modules. 
> The server process must verify that it has all the mentioned modules and 
> that the checksums are consistent with its own.

As long as all of the relevant data structures are exported from some
module, the extract_crc utility (which gets install in the library
directory), can generate all of the CRC.  It needs to be run at compile
time, but can reasonably easily be put into makefile rules.  It just
becomes one additional module.

Getting the order right is a bit tricky, since it becomes something that
depends on many interfaces, some of which have implementations that depend
on the crc module itself.  So, many of the auto-dependency and order
generators won't work.

This method should be any different between native and byte-code, since the
CRC is generated based on the .cmi file which will always be the same.  The
only dependence is that you export the relevant data structures.

Dave


  parent reply	other threads:[~2004-11-11 16:23 UTC|newest]

Thread overview: 34+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-11-11 10:18 Alex Baretta
2004-11-11 10:39 ` [Caml-list] " Nicolas Cannasse
2004-11-11 11:09   ` Luca Pascali
2004-11-11 11:55     ` Keith Wansbrough
2004-11-11 12:09       ` Luca Pascali
2004-11-11 12:28         ` Keith Wansbrough
2004-11-11 12:42           ` Luca Pascali
2004-11-11 16:09             ` Richard Jones
2004-11-20 15:44               ` Luca Pascali
2004-11-20 16:03                 ` malc
2004-11-20 18:01                   ` Alex Baretta
2004-11-20 18:06                     ` malc
2004-11-20 18:53                       ` Alex Baretta
2004-11-20 19:17                         ` malc
2004-11-20 20:07                           ` Ritesh Kumar
2004-11-20 22:43                           ` The madness of ignoring people Vincenzo Ciancia
2004-11-20 23:10                             ` [Caml-list] " malc
2004-11-20 23:25                               ` Vincenzo Ciancia
2004-11-21 12:51                             ` skaller
2004-11-21 14:14                               ` Vincenzo Ciancia
2004-11-21 14:30                                 ` malc
2004-11-21  3:37                           ` [Caml-list] Native executable symtable skaller
2004-11-21 15:59                           ` Richard Jones
2004-11-21 20:29                             ` skaller
2004-11-21 20:39                               ` malc
2004-11-21 23:30                               ` Richard W.M. Jones
2004-11-22  3:25                                 ` skaller
2004-11-21 20:42                             ` Jean-Marie Gaillourdet
2004-11-21 18:31                               ` Ritesh Kumar
2004-11-21 23:33                                 ` Richard Jones
2004-11-21 21:15                               ` skaller
2004-11-11 16:23 ` David Brown [this message]
2004-11-11 17:27 ` Xavier Leroy
2004-11-11 18:48   ` Alex Baretta

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20041111162329.GA21287@old.davidb.org \
    --to=caml-list@davidb.org \
    --cc=alex@baretta.com \
    --cc=caml-list@inria.fr \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).