Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
YottaChain
YTBP
提交
1e40cc33
Y
YTBP
项目概览
YottaChain
/
YTBP
通知
0
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
Y
YTBP
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
未验证
提交
1e40cc33
编写于
5月 30, 2018
作者:
A
arhag
提交者:
GitHub
5月 30, 2018
浏览文件
操作
浏览文件
下载
差异文件
Merge pull request #3623 from EOSIO/3621-fix-setparams
Fix setparams actions in eosio.system contract
上级
ca03c3a7
0aa6306b
变更
5
显示空白变更内容
内联
并排
Showing
5 changed file
with
37 addition
and
76 deletion
+37
-76
contracts/eosio.system/eosio.system.abi
contracts/eosio.system/eosio.system.abi
+3
-14
contracts/eosio.system/eosio.system.cpp
contracts/eosio.system/eosio.system.cpp
+15
-20
contracts/eosio.system/eosio.system.hpp
contracts/eosio.system/eosio.system.hpp
+7
-14
contracts/eosio.system/native.hpp
contracts/eosio.system/native.hpp
+2
-11
unittests/eosio.system_tests.cpp
unittests/eosio.system_tests.cpp
+10
-17
未找到文件。
contracts/eosio.system/eosio.system.abi
浏览文件 @
1e40cc33
...
...
@@ -242,16 +242,11 @@
{"name":"max_authority_depth", "type":"uint16"}
]
},{
"name": "eosio_parameters",
"base": "blockchain_parameters",
"fields": [
{"name":"max_ram_size", "type":"uint64"}
]
},{
"name": "eosio_global_state",
"base": "
eosio
_parameters",
"base": "
blockchain
_parameters",
"fields": [
{"name":"max_ram_size", "type":"uint64"},
{"name":"total_ram_bytes_reserved", "type":"uint64"},
{"name":"total_ram_stake", "type":"int64"},
{"name":"last_producer_schedule_update", "type":"time_point_sec"},
...
...
@@ -384,7 +379,7 @@
"name": "setparams",
"base": "",
"fields": [
{"name":"params", "type":"
eosio
_parameters"}
{"name":"params", "type":"
blockchain
_parameters"}
]
}
],
...
...
@@ -525,12 +520,6 @@
"index_type": "i64",
"key_names" : ["owner"],
"key_types" : ["uint64"]
},{
"name": "totalband",
"type": "total_resources",
"index_type": "i64",
"key_names" : ["owner"],
"key_types" : ["uint64"]
},{
"name": "delband",
"type": "delegated_bandwidth",
...
...
contracts/eosio.system/eosio.system.cpp
浏览文件 @
1e40cc33
...
...
@@ -73,6 +73,13 @@ namespace eosiosystem {
_global
.
set
(
_gstate
,
_self
);
}
void
system_contract
::
setparams
(
const
eosio
::
blockchain_parameters
&
params
)
{
require_auth
(
N
(
eosio
)
);
(
eosio
::
blockchain_parameters
&
)(
_gstate
)
=
params
;
eosio_assert
(
3
<=
_gstate
.
max_authority_depth
,
"max_authority_depth should be at least 3"
);
set_blockchain_parameters
(
params
);
}
void
system_contract
::
setpriv
(
account_name
account
,
uint8_t
ispriv
)
{
require_auth
(
_self
);
set_privileged
(
account
,
ispriv
);
...
...
@@ -165,30 +172,18 @@ namespace eosiosystem {
set_resource_limits
(
newact
,
0
,
0
,
0
);
}
void
system_contract
::
setparams
(
const
eosio_parameters
&
params
)
{
require_auth
(
N
(
eosio
)
);
(
eosiosystem
::
eosio_parameters
&
)(
_gstate
)
=
params
;
eosio_assert
(
3
<=
_gstate
.
max_authority_depth
,
"max_authority_depth should be at least 3"
);
set_blockchain_parameters
(
params
);
}
}
/// eosio.system
EOSIO_ABI
(
eosiosystem
::
system_contract
,
(
setram
)
// delegate_bandwith.cpp
(
delegatebw
)(
undelegatebw
)(
refund
)
(
buyram
)(
buyrambytes
)(
sellram
)
// native.hpp (newaccount definition is actually in eosio.system.cpp)
(
newaccount
)(
updateauth
)(
deleteauth
)(
linkauth
)(
unlinkauth
)(
canceldelay
)(
onerror
)
// eosio.system.cpp
(
setram
)(
setparams
)(
setpriv
)(
bidname
)
// delegate_bandwidth.cpp
(
buyrambytes
)(
buyram
)(
sellram
)(
delegatebw
)(
undelegatebw
)(
refund
)
// voting.cpp
(
regproducer
)(
unregprod
)(
voteproducer
)(
regproxy
)
// producer_pay.cpp
(
regproxy
)(
regproducer
)(
unregprod
)(
voteproducer
)
(
claimrewards
)
// native.hpp
(
onblock
)
(
newaccount
)(
updateauth
)(
deleteauth
)(
linkauth
)(
unlinkauth
)(
postrecovery
)(
passrecovery
)(
vetorecovery
)(
onerror
)(
canceldelay
)
//this file
(
bidname
)
(
setpriv
)
(
setparams
)
(
onblock
)(
claimrewards
)
)
contracts/eosio.system/eosio.system.hpp
浏览文件 @
1e40cc33
...
...
@@ -20,13 +20,6 @@ namespace eosiosystem {
using
eosio
::
const_mem_fun
;
using
eosio
::
block_timestamp
;
struct
eosio_parameters
:
eosio
::
blockchain_parameters
{
uint64_t
max_ram_size
=
64ll
*
1024
*
1024
*
1024
;
// explicit serialization macro is not necessary, used here only to improve compilation time
EOSLIB_SERIALIZE_DERIVED
(
eosio_parameters
,
eosio
::
blockchain_parameters
,
(
max_ram_size
)
)
};
struct
name_bid
{
account_name
newname
;
account_name
high_bidder
;
...
...
@@ -42,11 +35,10 @@ namespace eosiosystem {
>
name_bid_table
;
struct
eosio_global_state
:
eosio_parameters
{
struct
eosio_global_state
:
eosio
::
blockchain_parameters
{
uint64_t
free_ram
()
const
{
return
max_ram_size
-
total_ram_bytes_reserved
;
}
uint64_t
max_ram_size
=
64ll
*
1024
*
1024
*
1024
;
uint64_t
total_ram_bytes_reserved
=
0
;
int64_t
total_ram_stake
=
0
;
...
...
@@ -64,7 +56,8 @@ namespace eosiosystem {
block_timestamp
last_name_close
;
// explicit serialization macro is not necessary, used here only to improve compilation time
EOSLIB_SERIALIZE_DERIVED
(
eosio_global_state
,
eosio_parameters
,
(
total_ram_bytes_reserved
)(
total_ram_stake
)
EOSLIB_SERIALIZE_DERIVED
(
eosio_global_state
,
eosio
::
blockchain_parameters
,
(
max_ram_size
)(
total_ram_bytes_reserved
)(
total_ram_stake
)
(
last_producer_schedule_update
)(
last_pervote_bucket_fill
)
(
pervote_bucket
)(
perblock_bucket
)(
savings
)(
total_unpaid_blocks
)(
total_activated_stake
)(
thresh_activated_stake_time
)
(
last_producer_schedule_id
)(
last_producer_schedule_size
)(
total_producer_vote_weight
)(
last_name_close
)
)
...
...
@@ -217,7 +210,7 @@ namespace eosiosystem {
void
regproxy
(
const
account_name
proxy
,
bool
isproxy
);
void
setparams
(
const
eosio_parameters
&
params
);
void
setparams
(
const
eosio
::
blockchain
_parameters
&
params
);
// functions defined in producer_pay.cpp
void
claimrewards
(
const
account_name
&
owner
);
...
...
contracts/eosio.system/native.hpp
浏览文件 @
1e40cc33
...
...
@@ -104,18 +104,9 @@ namespace eosiosystem {
account_name code,
action_name type*/
)
{}
void
postrecovery
(
/*account_name account,
const authority& data,
const std::string& memo*/
)
{}
void
passrecovery
(
/*account_name account*/
)
{}
void
vetorecovery
(
/*account_name account*/
)
{}
void
onerror
(
/*const bytes&*/
)
{}
void
canceldelay
(
/*permission_level canceling_auth, transaction_id_type trx_id*/
)
{}
void
onerror
(
/*const bytes&*/
)
{}
};
}
unittests/eosio.system_tests.cpp
浏览文件 @
1e40cc33
...
...
@@ -10,12 +10,6 @@
using
namespace
eosio_system
;
struct
eosio_parameters
:
eosio
::
chain
::
chain_config
{
uint64_t
max_ram_size
;
};
FC_REFLECT_DERIVED
(
eosio_parameters
,
(
eosio
::
chain
::
chain_config
),
(
max_ram_size
));
BOOST_AUTO_TEST_SUITE
(
eosio_system_tests
)
BOOST_FIXTURE_TEST_CASE
(
buysell
,
eosio_system_tester
)
try
{
...
...
@@ -2560,9 +2554,8 @@ BOOST_FIXTURE_TEST_CASE( setparams, eosio_system_tester ) try {
prod_perms
.
push_back
(
{
name
(
x
),
config
::
active_name
}
);
}
eosio_parameters
params
;
(
eosio
::
chain
::
chain_config
&
)
params
=
control
->
get_global_properties
().
configuration
;
params
.
max_ram_size
=
65ll
*
1024
*
1024
*
1024
;
eosio
::
chain
::
chain_config
params
;
params
=
control
->
get_global_properties
().
configuration
;
//change some values
params
.
max_block_net_usage
+=
10
;
params
.
max_transaction_lifetime
+=
1
;
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录