monotone-commits-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Monotone-commits-diffs] Revision 47b6a29ca2b18ba9dc5f2938ec09a5b9bd5547


From: monotone
Subject: [Monotone-commits-diffs] Revision 47b6a29ca2b18ba9dc5f2938ec09a5b9bd554758
Date: Wed, 27 Feb 2008 00:05:56 +0100

-----------------------------------------------------------------
Revision: 47b6a29ca2b18ba9dc5f2938ec09a5b9bd554758
Ancestor: 631399d1d6662effa74417194b67bf65ec2c475d
Author: address@hidden
Date: 2008-02-26T22:41:05
Branch: net.venge.monotone

Modified files:
        annotate.cc cert.cc cert.hh cmd_diff_log.cc cmd_list.cc
        cmd_merging.cc cmd_ws_commit.cc commands.cc database.cc
        database.hh netsync.cc packet.cc project.cc revision.cc
        transforms.cc transforms.hh update.cc

ChangeLog: 

Eliminate base64 coding of cert_value to the maximum extent possible.
Base64 coding is now only used for packet transport and to keep SHA1
hashes of certs and keys stable.

 * cert.hh (struct cert): Make the value field a bare cert_value; change
   constructors to take a bare cert_value also.
 * cert.cc (cert_signable_text): Don't use FL().  Base64 encode the value
   field before serializing.
   (cert_hash_code): Similarly.  Fix egregious yet test-invisible and
   typecheck-invisible bug in previous commit [encode_hexenc instead
   of encode_base64 for the signature].
 * database.hh (get_revision_certs, get_revisions_with_cert): Change value
   argument to a bare cert_value.
 * packet.cc (packet_writer::consume_revision_cert): Base64 encode the
   value field before serializing.
   (feed_packet_consumer::rcert_packet): Base64 decode the value field
   before passing to cert constructor.
   (packet:roundabout unit test): Update.
 * project.cc (struct not_in_branch, struct suspended_in_branch): Change
   internal copy of the branch name from base64<cert_value> to branch_name;
   convert to cert_value on the fly when passing to db.get_revision_certs.
   No need to mess with base64.

 * annotate.cc, cert.cc, cmd_diff_log.cc, cmd_list.cc, cmd_merging.cc
 * cmd_ws_commit.cc, commands.cc, database.cc, netsync.cc, project.cc
 * revision.cc, update.cc: Do not use base64<cert_value> in data
   structures or arguments.  It is not necessary to base64 decode the
   value field of a cert object before use.

 * transforms.cc, transforms.hh (canonical_base64): Delete, unused.

Attachment: txt9paHi5PRYK.txt
Description: Diff [631399d1d6662effa74417194b67bf65ec2c475d] -> [47b6a29ca2b18ba9dc5f2938ec09a5b9bd554758]


reply via email to

[Prev in Thread] Current Thread [Next in Thread]