Skip to content

Commit 8a78983

Browse files
committed
chore: cleanup permissions
1 parent 854c72e commit 8a78983

12 files changed

+81
-117
lines changed

program/rust/src/processor/add_price.rs

+9-11
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,8 @@ use {
1616
instruction::AddPriceArgs,
1717
utils::{
1818
check_exponent_range,
19+
check_permissioned_funding_account,
1920
check_valid_funding_account,
20-
check_valid_signable_account_or_permissioned_funding_account,
2121
pyth_assert,
2222
},
2323
OracleError,
@@ -48,26 +48,24 @@ pub fn add_price(
4848
)?;
4949

5050

51-
let (funding_account, product_account, price_account, permissions_account_option) =
52-
match accounts {
53-
[x, y, z] => Ok((x, y, z, None)),
54-
[x, y, z, p] => Ok((x, y, z, Some(p))),
55-
_ => Err(OracleError::InvalidNumberOfAccounts),
56-
}?;
51+
let (funding_account, product_account, price_account, permissions_account) = match accounts {
52+
[x, y, z, p] => Ok((x, y, z, p)),
53+
_ => Err(OracleError::InvalidNumberOfAccounts),
54+
}?;
5755

5856
check_valid_funding_account(funding_account)?;
59-
check_valid_signable_account_or_permissioned_funding_account(
57+
check_permissioned_funding_account(
6058
program_id,
6159
product_account,
6260
funding_account,
63-
permissions_account_option,
61+
permissions_account,
6462
&cmd_args.header,
6563
)?;
66-
check_valid_signable_account_or_permissioned_funding_account(
64+
check_permissioned_funding_account(
6765
program_id,
6866
price_account,
6967
funding_account,
70-
permissions_account_option,
68+
permissions_account,
7169
&cmd_args.header,
7270
)?;
7371

program/rust/src/processor/add_product.rs

+7-8
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,8 @@ use {
1313
},
1414
instruction::CommandHeader,
1515
utils::{
16+
check_permissioned_funding_account,
1617
check_valid_funding_account,
17-
check_valid_signable_account_or_permissioned_funding_account,
1818
pyth_assert,
1919
try_convert,
2020
},
@@ -41,28 +41,27 @@ pub fn add_product(
4141
accounts: &[AccountInfo],
4242
instruction_data: &[u8],
4343
) -> ProgramResult {
44-
let (funding_account, tail_mapping_account, new_product_account, permissions_account_option) =
44+
let (funding_account, tail_mapping_account, new_product_account, permissions_account) =
4545
match accounts {
46-
[x, y, z] => Ok((x, y, z, None)),
47-
[x, y, z, p] => Ok((x, y, z, Some(p))),
46+
[x, y, z, p] => Ok((x, y, z, p)),
4847
_ => Err(OracleError::InvalidNumberOfAccounts),
4948
}?;
5049

5150
let hdr = load::<CommandHeader>(instruction_data)?;
5251

5352
check_valid_funding_account(funding_account)?;
54-
check_valid_signable_account_or_permissioned_funding_account(
53+
check_permissioned_funding_account(
5554
program_id,
5655
tail_mapping_account,
5756
funding_account,
58-
permissions_account_option,
57+
permissions_account,
5958
hdr,
6059
)?;
61-
check_valid_signable_account_or_permissioned_funding_account(
60+
check_permissioned_funding_account(
6261
program_id,
6362
new_product_account,
6463
funding_account,
65-
permissions_account_option,
64+
permissions_account,
6665
hdr,
6766
)?;
6867

program/rust/src/processor/add_publisher.rs

+5-6
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,8 @@ use {
1212
},
1313
instruction::AddPublisherArgs,
1414
utils::{
15+
check_permissioned_funding_account,
1516
check_valid_funding_account,
16-
check_valid_signable_account_or_permissioned_funding_account,
1717
pyth_assert,
1818
try_convert,
1919
},
@@ -46,18 +46,17 @@ pub fn add_publisher(
4646
ProgramError::InvalidArgument,
4747
)?;
4848

49-
let (funding_account, price_account, permissions_account_option) = match accounts {
50-
[x, y] => Ok((x, y, None)),
51-
[x, y, p] => Ok((x, y, Some(p))),
49+
let (funding_account, price_account, permissions_account) = match accounts {
50+
[x, y, p] => Ok((x, y, p)),
5251
_ => Err(OracleError::InvalidNumberOfAccounts),
5352
}?;
5453

5554
check_valid_funding_account(funding_account)?;
56-
check_valid_signable_account_or_permissioned_funding_account(
55+
check_permissioned_funding_account(
5756
program_id,
5857
price_account,
5958
funding_account,
60-
permissions_account_option,
59+
permissions_account,
6160
&cmd_args.header,
6261
)?;
6362

program/rust/src/processor/del_price.rs

+9-11
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,8 @@ use {
1010
},
1111
instruction::CommandHeader,
1212
utils::{
13+
check_permissioned_funding_account,
1314
check_valid_funding_account,
14-
check_valid_signable_account_or_permissioned_funding_account,
1515
pyth_assert,
1616
},
1717
OracleError,
@@ -37,28 +37,26 @@ pub fn del_price(
3737
accounts: &[AccountInfo],
3838
instruction_data: &[u8],
3939
) -> ProgramResult {
40-
let (funding_account, product_account, price_account, permissions_account_option) =
41-
match accounts {
42-
[w, x, y] => Ok((w, x, y, None)),
43-
[w, x, y, p] => Ok((w, x, y, Some(p))),
44-
_ => Err(OracleError::InvalidNumberOfAccounts),
45-
}?;
40+
let (funding_account, product_account, price_account, permissions_account) = match accounts {
41+
[w, x, y, p] => Ok((w, x, y, p)),
42+
_ => Err(OracleError::InvalidNumberOfAccounts),
43+
}?;
4644

4745
let cmd_args = load::<CommandHeader>(instruction_data)?;
4846

4947
check_valid_funding_account(funding_account)?;
50-
check_valid_signable_account_or_permissioned_funding_account(
48+
check_permissioned_funding_account(
5149
program_id,
5250
product_account,
5351
funding_account,
54-
permissions_account_option,
52+
permissions_account,
5553
cmd_args,
5654
)?;
57-
check_valid_signable_account_or_permissioned_funding_account(
55+
check_permissioned_funding_account(
5856
program_id,
5957
price_account,
6058
funding_account,
61-
permissions_account_option,
59+
permissions_account,
6260
cmd_args,
6361
)?;
6462

program/rust/src/processor/del_product.rs

+9-11
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,8 @@ use {
1010
},
1111
instruction::CommandHeader,
1212
utils::{
13+
check_permissioned_funding_account,
1314
check_valid_funding_account,
14-
check_valid_signable_account_or_permissioned_funding_account,
1515
pyth_assert,
1616
try_convert,
1717
},
@@ -44,29 +44,27 @@ pub fn del_product(
4444
accounts: &[AccountInfo],
4545
instruction_data: &[u8],
4646
) -> ProgramResult {
47-
let (funding_account, mapping_account, product_account, permissions_account_option) =
48-
match accounts {
49-
[w, x, y] => Ok((w, x, y, None)),
50-
[w, x, y, p] => Ok((w, x, y, Some(p))),
51-
_ => Err(OracleError::InvalidNumberOfAccounts),
52-
}?;
47+
let (funding_account, mapping_account, product_account, permissions_account) = match accounts {
48+
[w, x, y, p] => Ok((w, x, y, p)),
49+
_ => Err(OracleError::InvalidNumberOfAccounts),
50+
}?;
5351

5452
let cmd_args = load::<CommandHeader>(instruction_data)?;
5553

5654
check_valid_funding_account(funding_account)?;
57-
check_valid_signable_account_or_permissioned_funding_account(
55+
check_permissioned_funding_account(
5856
program_id,
5957
mapping_account,
6058
funding_account,
61-
permissions_account_option,
59+
permissions_account,
6260
cmd_args,
6361
)?;
6462

65-
check_valid_signable_account_or_permissioned_funding_account(
63+
check_permissioned_funding_account(
6664
program_id,
6765
product_account,
6866
funding_account,
69-
permissions_account_option,
67+
permissions_account,
7068
cmd_args,
7169
)?;
7270

program/rust/src/processor/del_publisher.rs

+5-6
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,8 @@ use {
1111
},
1212
instruction::DelPublisherArgs,
1313
utils::{
14+
check_permissioned_funding_account,
1415
check_valid_funding_account,
15-
check_valid_signable_account_or_permissioned_funding_account,
1616
pyth_assert,
1717
try_convert,
1818
},
@@ -45,18 +45,17 @@ pub fn del_publisher(
4545
ProgramError::InvalidArgument,
4646
)?;
4747

48-
let (funding_account, price_account, permissions_account_option) = match accounts {
49-
[x, y] => Ok((x, y, None)),
50-
[x, y, p] => Ok((x, y, Some(p))),
48+
let (funding_account, price_account, permissions_account) = match accounts {
49+
[x, y, p] => Ok((x, y, p)),
5150
_ => Err(OracleError::InvalidNumberOfAccounts),
5251
}?;
5352

5453
check_valid_funding_account(funding_account)?;
55-
check_valid_signable_account_or_permissioned_funding_account(
54+
check_permissioned_funding_account(
5655
program_id,
5756
price_account,
5857
funding_account,
59-
permissions_account_option,
58+
permissions_account,
6059
&cmd_args.header,
6160
)?;
6261

program/rust/src/processor/init_mapping.rs

+5-6
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,8 @@ use {
77
deserialize::load,
88
instruction::CommandHeader,
99
utils::{
10+
check_permissioned_funding_account,
1011
check_valid_funding_account,
11-
check_valid_signable_account_or_permissioned_funding_account,
1212
},
1313
OracleError,
1414
},
@@ -27,20 +27,19 @@ pub fn init_mapping(
2727
accounts: &[AccountInfo],
2828
instruction_data: &[u8],
2929
) -> ProgramResult {
30-
let (funding_account, fresh_mapping_account, permissions_account_option) = match accounts {
31-
[x, y] => Ok((x, y, None)),
32-
[x, y, p] => Ok((x, y, Some(p))),
30+
let (funding_account, fresh_mapping_account, permissions_account) = match accounts {
31+
[x, y, p] => Ok((x, y, p)),
3332
_ => Err(OracleError::InvalidNumberOfAccounts),
3433
}?;
3534

3635
let hdr = load::<CommandHeader>(instruction_data)?;
3736

3837
check_valid_funding_account(funding_account)?;
39-
check_valid_signable_account_or_permissioned_funding_account(
38+
check_permissioned_funding_account(
4039
program_id,
4140
fresh_mapping_account,
4241
funding_account,
43-
permissions_account_option,
42+
permissions_account,
4443
hdr,
4544
)?;
4645

program/rust/src/processor/init_price.rs

+5-6
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,8 @@ use {
1212
instruction::InitPriceArgs,
1313
utils::{
1414
check_exponent_range,
15+
check_permissioned_funding_account,
1516
check_valid_funding_account,
16-
check_valid_signable_account_or_permissioned_funding_account,
1717
pyth_assert,
1818
},
1919
OracleError,
@@ -41,18 +41,17 @@ pub fn init_price(
4141

4242
check_exponent_range(cmd_args.exponent)?;
4343

44-
let (funding_account, price_account, permissions_account_option) = match accounts {
45-
[x, y] => Ok((x, y, None)),
46-
[x, y, p] => Ok((x, y, Some(p))),
44+
let (funding_account, price_account, permissions_account) = match accounts {
45+
[x, y, p] => Ok((x, y, p)),
4746
_ => Err(OracleError::InvalidNumberOfAccounts),
4847
}?;
4948

5049
check_valid_funding_account(funding_account)?;
51-
check_valid_signable_account_or_permissioned_funding_account(
50+
check_permissioned_funding_account(
5251
program_id,
5352
price_account,
5453
funding_account,
55-
permissions_account_option,
54+
permissions_account,
5655
&cmd_args.header,
5756
)?;
5857

program/rust/src/processor/set_min_pub.rs

+5-6
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,8 @@ use {
77
},
88
instruction::SetMinPubArgs,
99
utils::{
10+
check_permissioned_funding_account,
1011
check_valid_funding_account,
11-
check_valid_signable_account_or_permissioned_funding_account,
1212
pyth_assert,
1313
},
1414
OracleError,
@@ -37,18 +37,17 @@ pub fn set_min_pub(
3737
ProgramError::InvalidArgument,
3838
)?;
3939

40-
let (funding_account, price_account, permissions_account_option) = match accounts {
41-
[x, y] => Ok((x, y, None)),
42-
[x, y, p] => Ok((x, y, Some(p))),
40+
let (funding_account, price_account, permissions_account) = match accounts {
41+
[x, y, p] => Ok((x, y, p)),
4342
_ => Err(OracleError::InvalidNumberOfAccounts),
4443
}?;
4544

4645
check_valid_funding_account(funding_account)?;
47-
check_valid_signable_account_or_permissioned_funding_account(
46+
check_permissioned_funding_account(
4847
program_id,
4948
price_account,
5049
funding_account,
51-
permissions_account_option,
50+
permissions_account,
5251
&cmd.header,
5352
)?;
5453

program/rust/src/processor/upd_product.rs

+5-6
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,8 @@ use {
1010
},
1111
instruction::CommandHeader,
1212
utils::{
13+
check_permissioned_funding_account,
1314
check_valid_funding_account,
14-
check_valid_signable_account_or_permissioned_funding_account,
1515
},
1616
OracleError,
1717
},
@@ -31,20 +31,19 @@ pub fn upd_product(
3131
accounts: &[AccountInfo],
3232
instruction_data: &[u8],
3333
) -> ProgramResult {
34-
let (funding_account, product_account, permissions_account_option) = match accounts {
35-
[x, y] => Ok((x, y, None)),
36-
[x, y, p] => Ok((x, y, Some(p))),
34+
let (funding_account, product_account, permissions_account) = match accounts {
35+
[x, y, p] => Ok((x, y, p)),
3736
_ => Err(OracleError::InvalidNumberOfAccounts),
3837
}?;
3938

4039
let hdr = load::<CommandHeader>(instruction_data)?;
4140

4241
check_valid_funding_account(funding_account)?;
43-
check_valid_signable_account_or_permissioned_funding_account(
42+
check_permissioned_funding_account(
4443
program_id,
4544
product_account,
4645
funding_account,
47-
permissions_account_option,
46+
permissions_account,
4847
hdr,
4948
)?;
5049

0 commit comments

Comments
 (0)