Skip to content

Commit

Permalink
Merge remote-tracking branch 'origin/master' into paul/CON-742-tecdsa…
Browse files Browse the repository at this point in the history
…-system-api
  • Loading branch information
ninegua committed Apr 11, 2022
2 parents d7b49e2 + 3095a45 commit b635ed4
Show file tree
Hide file tree
Showing 3 changed files with 11 additions and 4 deletions.
2 changes: 1 addition & 1 deletion CODEOWNERS
Validating CODEOWNERS rules …
Original file line number Diff line number Diff line change
@@ -1 +1 @@
* @canister-os
** @dfinity/canister-os
4 changes: 3 additions & 1 deletion spec/ic.did
Original file line number Diff line number Diff line change
Expand Up @@ -60,6 +60,8 @@ service ic : {
module_hash: opt blob;
memory_size: nat;
cycles: nat;
freezing_threshold: nat;
freezing_threshold_in_cycles: nat;
});
delete_canister : (record {canister_id : canister_id}) -> ();
deposit_cycles : (record {canister_id : canister_id}) -> ();
Expand All @@ -72,7 +74,7 @@ service ic : {
transform : opt variant {
function: func (http_response) -> (http_response) query
};
}) -> (variant { Ok : http_response; Err: opt http_request_error });
}) -> (http_response);

// Threshold ECDSA signature
ecdsa_public_key : (record {
Expand Down
9 changes: 7 additions & 2 deletions spec/index.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -1716,6 +1716,7 @@ The returned response (and the response provided to the `transform` function, if
- `body` - the response's body

The `transform` function may, for example, transform the body in any way, add or remove headers, modify headers, etc.
When the transform function was invoked due to a canister HTTP request, the caller's identity is the principal of the management canister.

[#ic-provisional_create_canister_with_cycles]
=== IC method `provisional_create_canister_with_cycles`
Expand Down Expand Up @@ -1878,9 +1879,9 @@ Delegation =
A chain of delegations is verified using the following algorithm, which also returns the delegated key (a DER-encoded BLS key):

....
check_delegations(NoDelegation) : public_bls_key =
check_delegation(NoDelegation) : public_bls_key =
return root_public_key
check_delegations(Delegation d) : public_bls_key =
check_delegation(Delegation d) : public_bls_key =
verify_cert(d.certificate)
return lookup(["subnet",d.subnet_id,"public_key"],d.certificate)
....
Expand Down Expand Up @@ -2874,6 +2875,8 @@ The controllers of a canister can obtain information about the canister.

The `Memory_size` is the (in this specification underspecified) total size of storage in bytes.

The `freezing_threshold_in_cycles` is the current estimate of the smallest number of cycles the canister can have without entering the frozen state. The system uses the `freezing_threshold` setting to compute this field.

Conditions::
....
S.messages = Older_messages · CallMessage M · Younger_messages
Expand All @@ -2898,6 +2901,8 @@ S with
controllers = S.controllers[A.canister_id];
memory_size = Memory_size;
cycles = S.balance[A.canister_id];
freezing_threshold = S.freezing_threshold[A.canister_id];
freezing_threshold_in_cycles = freezing_limit(S, A.canister_id);
})
refunded_cycles = M.transferred_cycles
}
Expand Down

0 comments on commit b635ed4

Please sign in to comment.