1. 11 5月, 2018 1 次提交
  2. 10 5月, 2018 6 次提交
  3. 09 5月, 2018 3 次提交
  4. 06 5月, 2018 1 次提交
    • A
      optimize authority_checker algorithm and support delay thresholds: · c2d59140
      arhag 提交于
      * Skip over permissions that are in the process of being evaluated.
      * Skip over permissions that do not meet the delay threshold.
      * Maintain cache to avoid rechecking whether a previously checked
      permission was satisfied or not.
      
      Now the provided_delay passed to check_authorization is just another
      authorizer like signatures and permission_levels.
      c2d59140
  5. 05 5月, 2018 4 次提交
    • A
      pass sensible minimum_delays into check_authorization for inline actions and... · 352500be
      arhag 提交于
      pass sensible minimum_delays into check_authorization for inline actions and scheduled deferred transactions
      352500be
    • A
      redesign check authorization to allow checktime to be called from within it · 8e921b2c
      arhag 提交于
      Also replaced `provided_accounts` and `provided_levels` with just `provided_permissions` which can now replicate the behavior of `provided_accounts` by using the `empty permission_name` as a wildcard permission.
      
      Also, check_authorization now accepts a `minimum_delay` which is currently not being used but can be used in a later change to the authority checking algorithm to optimize its search path.
      8e921b2c
    • A
      0899b3aa
    • A
      transaction validation changes: · d839ccc9
      arhag 提交于
      * Avoid unnecessary check of expiration for generated transactions (instead just set the expiration similar to how we set the TaPoS). This also means that `test_transaction::send_transaction_expiring_late` can be removed.
      * Avoid duplicate (redundant) validation of referenced accounts when executing a deferred transaction.
      * Avoid duplicate (and erroneous) TaPoS validation when executing a deferred transaction.
      * Avoid unnecessary validations of TaPoS, expiration, and referenced accounts for implicit transactions which can be trusted to be correctly constructed by the controller.
      
      Also removed obsolete native handler for eosio::onerror. System contract wasm can still handle the onerror action for deferred transactions it sends (such as in eosio::postrecovery).
      d839ccc9
  6. 04 5月, 2018 1 次提交
  7. 03 5月, 2018 3 次提交
  8. 02 5月, 2018 2 次提交
  9. 01 5月, 2018 2 次提交
  10. 30 4月, 2018 1 次提交
  11. 29 4月, 2018 2 次提交
  12. 28 4月, 2018 4 次提交
    • A
      several changes: · fa71fad6
      arhag 提交于
      * clean up configuration parameters
      * use dynamic max_inline_action_size configuration parameter to limit size of inline actions
      * use dynamic max_inline_action_depth to limit recursion depth of inline actions
      * change deferred_trx_expiration_window parameter into a dynamic configuration parameter
      * add numerator and denominator configuration parameters for later context free data discount implementation
      * bill delayed transaction for the additional net usage of the eventual retirement of the deferred transaction
      fa71fad6
    • A
      console output restored in slim branch · d57bcb98
      Anton Perkov 提交于
      d57bcb98
    • A
      many fixes: · ac2f1b8c
      arhag 提交于
      * cpu_usage limit for an action is properly tracked even through inline actions
      * receipt should store net usage in words
      * total billed cpu usage for a transaction should be rounded up to nearest multiple of 1024
      * enforce the cpu and net usage limits set in chain configuration
      * additional stateless validation on generated transactions
      * clear expired input transactions (and do not touch generated transactions) on start block rather than finalize block
      * fix clear expired input transactions to use pending block time rather than head block time
      * update producer authority at start of block (implemention still necessary)
      * move resource limit updates and updating tapos from commit_block to finalize_block
      * fix to controller::last_irreversible_block_id()
      * reduce default_base_per_transaction_net_usage
      ac2f1b8c
    • A
  13. 27 4月, 2018 3 次提交
  14. 26 4月, 2018 2 次提交
    • A
      fix canceldelay, enforce delays properly, and update some delay tests · 92dd7726
      arhag 提交于
      Since the delay has now moved into the authority, the delay tests were not setting the delay properly in the updateauth actions.
      This meant that a delay was not enforced and the tests were not actually testing delays properly.
      
      I fixed the tests to properly set the delays, but this means that additional tests in delay_tests now fail.
      The additional tests that failed are: link_delay_permission_change_test, link_delay_permission_change_with_delay_heirarchy_test, link_delay_link_change_test, and link_delay_link_change_heirarchy_test.
      The reason these fail is very likely due to off-by-one errors due to change of now() from head block time to pending block time.
      
      In this commit, I fixed link_delay_permission_change_test but have not yet gotten to the other three tests.
      
      Also, of the two delay tests that were originally failing, I fixed canceldelay_test but have not yet fixed canceldelay_test2.
      92dd7726
    • A
      intrinsics to return current and published time now return microseconds · 5a72a4b7
      arhag 提交于
      The now() intrinsic was replaced with a current_time() intrinsic which returns the current time (not head block time) in microseconds since epoch.
      
      A now() function was defined in eosiolib/system.h which returns current_time()/1000000 so that existing contracts which use now() need minimal changes.
      
      The publication_time() intrinsic was modified to also return the time as microseconds since epoch.
      The only contracts that used publication_time() so far were for tests and those tests have been updated to reflect the new meaning of publication_time() and current_time().
      5a72a4b7
  15. 22 4月, 2018 4 次提交
  16. 21 4月, 2018 1 次提交