Skip to content

Commit 2544982

Browse files
committed
Update ELF laoder version mapping
Mismatch log fixes Syscall macros for temporarily setting errors Error code aliasing Move syscall override log collector Macro cleanup Patch vote mismatch Create non-nuil, but empty treap / pools flamenco: unify instr error codes 20 and 33 properly (#7205) Validate accounts in zk-elgamal-proof process_close_proof_context Surgical edits to verify proof for v3.1 syscalls: revert special casing (#7209) 3.1 rekeys (#7216)
1 parent 3d57ce3 commit 2544982

16 files changed

+136
-83
lines changed

src/ballet/sbpf/fd_sbpf_loader.c

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1466,14 +1466,8 @@ fd_sbpf_program_get_sbpf_version_or_err( void const * bin,
14661466
}
14671467
uint e_flags = FD_LOAD( uint, bin+E_FLAGS_OFFSET );
14681468

1469-
uint sbpf_version = 0U;
1470-
if( FD_UNLIKELY( config->sbpf_max_version==FD_SBPF_V0 ) ) {
1471-
/* https://github.com/anza-xyz/sbpf/blob/v0.12.2/src/elf.rs#L384-L388 */
1472-
sbpf_version = e_flags==E_FLAGS_SBPF_V2 ? FD_SBPF_RESERVED : FD_SBPF_V0;
1473-
} else {
1474-
/* https://github.com/anza-xyz/sbpf/blob/v0.12.2/src/elf.rs#L390-L396 */
1475-
sbpf_version = e_flags < FD_SBPF_VERSION_COUNT ? e_flags : FD_SBPF_RESERVED;
1476-
}
1469+
/* https://github.com/anza-xyz/sbpf/blob/v0.13.0/src/elf.rs#L382-L390 */
1470+
uint sbpf_version = ( e_flags < FD_SBPF_VERSION_COUNT ) ? e_flags : FD_SBPF_RESERVED;
14771471

14781472
/* https://github.com/anza-xyz/sbpf/blob/v0.12.2/src/elf.rs#L399-L401 */
14791473
if( FD_UNLIKELY( !( config->sbpf_min_version <= sbpf_version && sbpf_version <= config->sbpf_max_version ) ) ) {

src/flamenco/features/fd_features_generated.c

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1504,7 +1504,8 @@ fd_feature_id_t const ids[] = {
15041504
.id = {"\x08\xe8\xaa\x2e\x13\xc5\xc5\x54\xe2\xc3\xb4\x0e\x26\xb4\x64\x3b\xc7\xcb\x89\x6c\xc0\x06\x05\xaa\x65\x7f\x3a\x3d\x30\xee\xf9\x05"},
15051505
/* bn2puAyxUx6JUabAxYdKdJ5QHbNNmKw8dCGuGCyRrFN */
15061506
.name = "fix_alt_bn128_multiplication_input_length",
1507-
.cleaned_up = {UINT_MAX, UINT_MAX, UINT_MAX} },
1507+
.cleaned_up = {3, 1, 0},
1508+
.hardcode_for_fuzzing = 1 },
15081509

15091510
{ .index = offsetof(fd_features_t, lift_cpi_caller_restriction)>>3,
15101511
.id = {"\xf6\xd3\x41\xcb\x4b\xa2\x65\x9e\xac\xe7\x83\xef\x30\xe5\xfc\xc1\x9a\x94\x8b\x9b\x00\xba\x8a\xad\xf5\x2a\x6b\x9f\x65\x24\x5e\xc8"},
@@ -1668,14 +1669,14 @@ fd_feature_id_t const ids[] = {
16681669
.cleaned_up = {UINT_MAX, UINT_MAX, UINT_MAX} },
16691670

16701671
{ .index = offsetof(fd_features_t, stricter_abi_and_runtime_constraints)>>3,
1671-
.id = {"\xb1\xb1\x8b\xfe\x0c\x8c\xa8\x90\xaf\x61\x7d\x45\x2d\x08\xd5\x33\x88\xea\x0b\x0b\x87\x1f\xb6\x1c\x38\xc8\xeb\x19\x0f\xd7\x9f\x0a"},
1672-
/* CxeBn9PVeeXbmjbNwLv6U4C6svNxnC4JX6mfkvgeMocM */
1672+
.id = {"\x0c\xdc\xaa\x60\x4d\xd8\x04\x50\x19\x27\xdb\xa5\x2d\x2a\x39\xcf\x51\xdb\xc9\xae\xd8\x06\xc9\xda\x36\x46\xb8\xf2\x41\x40\x59\xed"},
1673+
/* sD3uVpaavUXQRvDXrMFCQ2CqLqnbz5mK8ttWNXbtD3r */
16731674
.name = "stricter_abi_and_runtime_constraints",
16741675
.cleaned_up = {UINT_MAX, UINT_MAX, UINT_MAX} },
16751676

16761677
{ .index = offsetof(fd_features_t, account_data_direct_mapping)>>3,
1677-
.id = {"\x83\xaf\x45\x7d\x2d\x4b\x60\xe8\xb6\x8b\xde\xea\x1f\x99\x51\x97\x42\x3e\x2d\x9a\xd0\xe0\x8c\xa8\x44\x7f\x6a\xd4\x68\x43\x4e\x19"},
1678-
/* 9s3RKimHWS44rJcJ9P1rwCmn2TvMqtZQBmz815ZUUHqJ */
1678+
.id = {"\xb5\xfa\x43\x42\x67\x5e\x0c\x52\x3d\x10\xad\xbb\x78\x84\x1f\x16\x92\x1f\xf2\xb6\xe7\xcd\xe9\x60\x60\x84\x9a\xfd\x12\xb1\x01\x39"},
1679+
/* DFN8MyKpQqFW31qczcahgnnxcAHQc6P94wtTEX5EP1RA */
16791680
.name = "account_data_direct_mapping",
16801681
.cleaned_up = {UINT_MAX, UINT_MAX, UINT_MAX} },
16811682

@@ -1935,8 +1936,8 @@ fd_feature_id_query( ulong prefix ) {
19351936
case 0x3711b30f40730240: return &ids[ 240 ];
19361937
case 0xc1309d1b0ae3e80c: return &ids[ 241 ];
19371938
case 0x5c64cc1a9be3790a: return &ids[ 242 ];
1938-
case 0x90a88c0cfe8bb1b1: return &ids[ 243 ];
1939-
case 0xe8604b2d7d45af83: return &ids[ 244 ];
1939+
case 0x5004d84d60aadc0c: return &ids[ 243 ];
1940+
case 0x520c5e674243fab5: return &ids[ 244 ];
19401941
case 0xf08a42c3c040e908: return &ids[ 245 ];
19411942
default: break;
19421943
}

src/flamenco/features/fd_features_generated.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -259,8 +259,8 @@ union fd_features {
259259
/* 0x3711b30f40730240 */ ulong enable_vote_address_leader_schedule;
260260
/* 0xc1309d1b0ae3e80c */ ulong enshrine_slashing_program;
261261
/* 0x5c64cc1a9be3790a */ ulong raise_account_cu_limit;
262-
/* 0x90a88c0cfe8bb1b1 */ ulong stricter_abi_and_runtime_constraints;
263-
/* 0xe8604b2d7d45af83 */ ulong account_data_direct_mapping;
262+
/* 0x5004d84d60aadc0c */ ulong stricter_abi_and_runtime_constraints;
263+
/* 0x520c5e674243fab5 */ ulong account_data_direct_mapping;
264264
/* 0xf08a42c3c040e908 */ ulong fix_alt_bn128_pairing_length_check;
265265
};
266266
};

src/flamenco/features/feature_map.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -216,7 +216,7 @@
216216
{"name":"enable_get_epoch_stake_syscall","pubkey":"FKe75t4LXxGaQnVHdUKM6DSFifVVraGZ8LyNo7oPwy1Z","old":"7mScTYkJXsbdrcwTQRs7oeCSXoJm4WjzBsRyf8bCU3Np"},
217217
{"name":"disable_account_loader_special_case","pubkey":"EQUMpNFr7Nacb1sva56xn1aLfBxppEoSBH8RRVdkcD1x","cleaned_up":[2,2,0],"hardcode_for_fuzzing":1},
218218
{"name":"remove_accounts_executable_flag_checks","pubkey":"FXs1zh47QbNnhXcnB6YiAQoJ4sGB91tKF3UFHLcKT7PM","old":"FfgtauHUWKeXTzjXkua9Px4tNGBFHKZ9WaigM5VbbzFx","hardcode_for_fuzzing":1},
219-
{"name":"fix_alt_bn128_multiplication_input_length","pubkey":"bn2puAyxUx6JUabAxYdKdJ5QHbNNmKw8dCGuGCyRrFN"},
219+
{"name":"fix_alt_bn128_multiplication_input_length","pubkey":"bn2puAyxUx6JUabAxYdKdJ5QHbNNmKw8dCGuGCyRrFN","cleaned_up":[3,1,0],"hardcode_for_fuzzing":1},
220220
{"name":"lift_cpi_caller_restriction","pubkey":"HcW8ZjBezYYgvcbxNJwqv1t484Y2556qJsfNDWvJGZRH","reverted":1},
221221
{"name":"accounts_lt_hash","pubkey":"LTHasHQX6661DaDD4S6A2TFi6QBuiwXKv66fB1obfHq","old":"LtHaSHHsUge7EWTPVrmpuexKz6uVHZXZL6cgJa7W7Zn","cleaned_up":[3,0,0],"hardcode_for_fuzzing":1},
222222
{"name":"remove_accounts_delta_hash","pubkey":"LTdLt9Ycbyoipz5fLysCi1NnDnASsZfmJLJXts5ZxZz","cleaned_up":[3,0,0],"hardcode_for_fuzzing":1},
@@ -242,7 +242,7 @@
242242
{"name":"enable_vote_address_leader_schedule","pubkey":"5JsG4NWH8Jbrqdd8uL6BNwnyZK3dQSoieRXG5vmofj9y"},
243243
{"name":"enshrine_slashing_program","pubkey":"sProgVaNWkYdP2eTRAy1CPrgb3b9p8yXCASrPEqo6VJ"},
244244
{"name":"raise_account_cu_limit","pubkey":"htsptAwi2yRoZH83SKaUXykeZGtZHgxkS2QwW1pssR8"},
245-
{"name":"stricter_abi_and_runtime_constraints","pubkey":"CxeBn9PVeeXbmjbNwLv6U4C6svNxnC4JX6mfkvgeMocM"},
246-
{"name":"account_data_direct_mapping","pubkey":"9s3RKimHWS44rJcJ9P1rwCmn2TvMqtZQBmz815ZUUHqJ"},
245+
{"name":"stricter_abi_and_runtime_constraints","pubkey":"sD3uVpaavUXQRvDXrMFCQ2CqLqnbz5mK8ttWNXbtD3r"},
246+
{"name":"account_data_direct_mapping","pubkey":"DFN8MyKpQqFW31qczcahgnnxcAHQc6P94wtTEX5EP1RA"},
247247
{"name":"fix_alt_bn128_pairing_length_check","pubkey":"bnYzodLwmybj7e1HAe98yZrdJTd7we69eMMLgCXqKZm","hardcode_for_fuzzing":1}
248248
]

src/flamenco/runtime/context/fd_exec_instr_ctx.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -108,7 +108,7 @@ fd_exec_instr_ctx_try_borrow_instr_account_with_key( fd_exec_instr_ctx_t const *
108108
/* Return a NotEnoughAccountKeys error if the account is not found
109109
in the instruction context to match the error code returned by
110110
fd_exec_instr_ctx_try_borrow_instr_account. */
111-
return FD_EXECUTOR_INSTR_ERR_NOT_ENOUGH_ACC_KEYS;
111+
return FD_EXECUTOR_INSTR_ERR_MISSING_ACC;
112112
}
113113

114114
int

src/flamenco/runtime/context/fd_exec_instr_ctx.h

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ FD_PROTOTYPES_BEGIN
4141
4242
Assert that enough accounts were supplied to this instruction. Returns
4343
FD_EXECUTOR_INSTR_SUCCESS if the number of accounts is as expected and
44-
FD_EXECUTOR_INSTR_ERR_NOT_ENOUGH_ACC_KEYS otherwise.
44+
FD_EXECUTOR_INSTR_ERR_MISSING_ACC otherwise.
4545
4646
https://github.com/anza-xyz/agave/blob/v2.1.14/sdk/src/transaction_context.rs#L490 */
4747

@@ -50,7 +50,7 @@ fd_exec_instr_ctx_check_num_insn_accounts( fd_exec_instr_ctx_t const * ctx,
5050
uint expected_accounts ) {
5151

5252
if( FD_UNLIKELY( ctx->instr->acct_cnt<expected_accounts ) ) {
53-
return FD_EXECUTOR_INSTR_ERR_NOT_ENOUGH_ACC_KEYS;
53+
return FD_EXECUTOR_INSTR_ERR_MISSING_ACC;
5454
}
5555
return FD_EXECUTOR_INSTR_SUCCESS;
5656
}
@@ -82,7 +82,7 @@ fd_exec_instr_ctx_get_index_of_instr_account_in_transaction( fd_exec_instr_ctx_t
8282
/* Return a NotEnoughAccountKeys error if the idx is out of bounds.
8383
https://github.com/anza-xyz/agave/blob/v2.1.14/sdk/src/transaction_context.rs#L559 */
8484
if( FD_UNLIKELY( idx_in_instr>=ctx->instr->acct_cnt ) ) {
85-
return FD_EXECUTOR_INSTR_ERR_NOT_ENOUGH_ACC_KEYS;
85+
return FD_EXECUTOR_INSTR_ERR_MISSING_ACC;
8686
}
8787

8888
*idx_in_txn = ctx->instr->accounts[ idx_in_instr ].index_in_transaction;

src/flamenco/runtime/context/fd_exec_txn_ctx.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -137,7 +137,7 @@ fd_exec_txn_ctx_get_key_of_account_at_index( fd_exec_txn_ctx_t * ctx,
137137
/* Return a NotEnoughAccountKeys error if idx is out of bounds.
138138
https://github.com/anza-xyz/agave/blob/v2.1.14/sdk/src/transaction_context.rs#L218 */
139139
if( FD_UNLIKELY( idx>=ctx->accounts.accounts_cnt ) ) {
140-
return FD_EXECUTOR_INSTR_ERR_NOT_ENOUGH_ACC_KEYS;
140+
return FD_EXECUTOR_INSTR_ERR_MISSING_ACC;
141141
}
142142

143143
*key = &ctx->accounts.account_keys[ idx ];

src/flamenco/runtime/fd_executor.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1116,7 +1116,7 @@ fd_txn_ctx_push( fd_exec_txn_ctx_t * txn_ctx,
11161116
fd_txn_account_t * sysvar_instructions_account = NULL;
11171117
err = fd_exec_txn_ctx_get_account_at_index( txn_ctx, (ushort)idx, &sysvar_instructions_account, NULL );
11181118
if( FD_UNLIKELY( err ) ) {
1119-
return FD_EXECUTOR_INSTR_ERR_NOT_ENOUGH_ACC_KEYS;
1119+
return FD_EXECUTOR_INSTR_ERR_MISSING_ACC;
11201120
}
11211121

11221122
/* https://github.com/anza-xyz/agave/blob/v2.2.12/transaction-context/src/lib.rs#L401-L402 */

src/flamenco/runtime/program/fd_bpf_loader_program.c

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -925,7 +925,7 @@ process_loader_upgradeable_instruction( fd_exec_instr_ctx_t * instr_ctx ) {
925925
/* https://github.com/anza-xyz/agave/blob/574bae8fefc0ed256b55340b9d87b7689bcdf222/programs/bpf_loader/src/lib.rs#L476-L493 */
926926
case fd_bpf_upgradeable_loader_program_instruction_enum_initialize_buffer: {
927927
if( FD_UNLIKELY( fd_exec_instr_ctx_check_num_insn_accounts( instr_ctx, 2U ) ) ) {
928-
return FD_EXECUTOR_INSTR_ERR_NOT_ENOUGH_ACC_KEYS;
928+
return FD_EXECUTOR_INSTR_ERR_MISSING_ACC;
929929
}
930930

931931
/* https://github.com/anza-xyz/agave/blob/v2.1.4/programs/bpf_loader/src/lib.rs#L479 */
@@ -966,7 +966,7 @@ process_loader_upgradeable_instruction( fd_exec_instr_ctx_t * instr_ctx ) {
966966
/* https://github.com/anza-xyz/agave/blob/574bae8fefc0ed256b55340b9d87b7689bcdf222/programs/bpf_loader/src/lib.rs#L494-L525 */
967967
case fd_bpf_upgradeable_loader_program_instruction_enum_write: {
968968
if( FD_UNLIKELY( fd_exec_instr_ctx_check_num_insn_accounts( instr_ctx, 2U ) ) ) {
969-
return FD_EXECUTOR_INSTR_ERR_NOT_ENOUGH_ACC_KEYS;
969+
return FD_EXECUTOR_INSTR_ERR_MISSING_ACC;
970970
}
971971

972972
/* https://github.com/anza-xyz/agave/blob/v2.1.4/programs/bpf_loader/src/lib.rs#L497 */
@@ -1026,7 +1026,7 @@ process_loader_upgradeable_instruction( fd_exec_instr_ctx_t * instr_ctx ) {
10261026
case fd_bpf_upgradeable_loader_program_instruction_enum_deploy_with_max_data_len: {
10271027
/* https://github.com/anza-xyz/agave/blob/574bae8fefc0ed256b55340b9d87b7689bcdf222/programs/bpf_loader/src/lib.rs#L527-L541 */
10281028
if( FD_UNLIKELY( fd_exec_instr_ctx_check_num_insn_accounts( instr_ctx, 4U ) ) ) {
1029-
return FD_EXECUTOR_INSTR_ERR_NOT_ENOUGH_ACC_KEYS;
1029+
return FD_EXECUTOR_INSTR_ERR_MISSING_ACC;
10301030
}
10311031

10321032
/* https://github.com/anza-xyz/agave/blob/v2.1.4/programs/bpf_loader/src/lib.rs#L529-L534 */
@@ -1063,7 +1063,7 @@ process_loader_upgradeable_instruction( fd_exec_instr_ctx_t * instr_ctx ) {
10631063

10641064
/* https://github.com/anza-xyz/agave/blob/v2.1.14/programs/bpf_loader/src/lib.rs#L538 */
10651065
if( fd_exec_instr_ctx_check_num_insn_accounts( instr_ctx, 8U ) ) {
1066-
return FD_EXECUTOR_INSTR_ERR_NOT_ENOUGH_ACC_KEYS;
1066+
return FD_EXECUTOR_INSTR_ERR_MISSING_ACC;
10671067
}
10681068

10691069
/* https://github.com/anza-xyz/agave/blob/v2.1.14/programs/bpf_loader/src/lib.rs#L539-L541 */
@@ -1366,7 +1366,7 @@ process_loader_upgradeable_instruction( fd_exec_instr_ctx_t * instr_ctx ) {
13661366
case fd_bpf_upgradeable_loader_program_instruction_enum_upgrade: {
13671367
/* https://github.com/anza-xyz/agave/blob/574bae8fefc0ed256b55340b9d87b7689bcdf222/programs/bpf_loader/src/lib.rs#L704-L714 */
13681368
if( FD_UNLIKELY( fd_exec_instr_ctx_check_num_insn_accounts( instr_ctx, 3U ) ) ) {
1369-
return FD_EXECUTOR_INSTR_ERR_NOT_ENOUGH_ACC_KEYS;
1369+
return FD_EXECUTOR_INSTR_ERR_MISSING_ACC;
13701370
}
13711371

13721372
/* https://github.com/anza-xyz/agave/blob/v2.1.14/programs/bpf_loader/src/lib.rs#L706-L708 */
@@ -1389,7 +1389,7 @@ process_loader_upgradeable_instruction( fd_exec_instr_ctx_t * instr_ctx ) {
13891389
}
13901390

13911391
if( FD_UNLIKELY( fd_exec_instr_ctx_check_num_insn_accounts( instr_ctx, 7U ) ) ) {
1392-
return FD_EXECUTOR_INSTR_ERR_NOT_ENOUGH_ACC_KEYS;
1392+
return FD_EXECUTOR_INSTR_ERR_MISSING_ACC;
13931393
}
13941394

13951395
/* https://github.com/anza-xyz/agave/blob/v2.1.14/programs/bpf_loader/src/lib.rs#L713-L715 */
@@ -1650,7 +1650,7 @@ process_loader_upgradeable_instruction( fd_exec_instr_ctx_t * instr_ctx ) {
16501650
case fd_bpf_upgradeable_loader_program_instruction_enum_set_authority: {
16511651
int err;
16521652
if( FD_UNLIKELY( fd_exec_instr_ctx_check_num_insn_accounts( instr_ctx, 2U ) ) ) {
1653-
return FD_EXECUTOR_INSTR_ERR_NOT_ENOUGH_ACC_KEYS;
1653+
return FD_EXECUTOR_INSTR_ERR_MISSING_ACC;
16541654
}
16551655

16561656
/* https://github.com/anza-xyz/agave/blob/v2.1.4/programs/bpf_loader/src/lib.rs#L896-L897 */
@@ -1757,7 +1757,7 @@ process_loader_upgradeable_instruction( fd_exec_instr_ctx_t * instr_ctx ) {
17571757
}
17581758

17591759
if( FD_UNLIKELY( fd_exec_instr_ctx_check_num_insn_accounts( instr_ctx, 3U ) ) ) {
1760-
return FD_EXECUTOR_INSTR_ERR_NOT_ENOUGH_ACC_KEYS;
1760+
return FD_EXECUTOR_INSTR_ERR_MISSING_ACC;
17611761
}
17621762

17631763
/* https://github.com/anza-xyz/agave/blob/v2.1.4/programs/bpf_loader/src/lib.rs#L968-L969 */
@@ -1855,7 +1855,7 @@ process_loader_upgradeable_instruction( fd_exec_instr_ctx_t * instr_ctx ) {
18551855
int err;
18561856
/* https://github.com/anza-xyz/agave/blob/574bae8fefc0ed256b55340b9d87b7689bcdf222/programs/bpf_loader/src/lib.rs#L1032-L1046 */
18571857
if( FD_UNLIKELY( fd_exec_instr_ctx_check_num_insn_accounts( instr_ctx, 2U ) ) ) {
1858-
return FD_EXECUTOR_INSTR_ERR_NOT_ENOUGH_ACC_KEYS;
1858+
return FD_EXECUTOR_INSTR_ERR_MISSING_ACC;
18591859
}
18601860

18611861
/* It's safe to directly access the instruction accounts because we already checked for two
@@ -1909,7 +1909,7 @@ process_loader_upgradeable_instruction( fd_exec_instr_ctx_t * instr_ctx ) {
19091909
fd_borrowed_account_drop( &close_account );
19101910

19111911
if( FD_UNLIKELY( fd_exec_instr_ctx_check_num_insn_accounts( instr_ctx, 3U ) ) ) {
1912-
return FD_EXECUTOR_INSTR_ERR_NOT_ENOUGH_ACC_KEYS;
1912+
return FD_EXECUTOR_INSTR_ERR_MISSING_ACC;
19131913
}
19141914

19151915
fd_bpf_upgradeable_loader_state_buffer_t * state_buf = &close_account_state->inner.buffer;
@@ -1927,7 +1927,7 @@ process_loader_upgradeable_instruction( fd_exec_instr_ctx_t * instr_ctx ) {
19271927
} else if( fd_bpf_upgradeable_loader_state_is_program_data( close_account_state ) ) {
19281928
int err;
19291929
if( FD_UNLIKELY( fd_exec_instr_ctx_check_num_insn_accounts( instr_ctx, 4U ) ) ) {
1930-
return FD_EXECUTOR_INSTR_ERR_NOT_ENOUGH_ACC_KEYS;
1930+
return FD_EXECUTOR_INSTR_ERR_MISSING_ACC;
19311931
}
19321932

19331933
/* https://github.com/anza-xyz/agave/blob/v2.1.4/programs/bpf_loader/src/lib.rs#L1074 */
@@ -2037,7 +2037,7 @@ process_loader_upgradeable_instruction( fd_exec_instr_ctx_t * instr_ctx ) {
20372037

20382038
/* https://github.com/anza-xyz/agave/blob/v2.2.6/programs/bpf_loader/src/lib.rs#L1346 */
20392039
if( FD_UNLIKELY( fd_exec_instr_ctx_check_num_insn_accounts( instr_ctx, 3U ) ) ) {
2040-
return FD_EXECUTOR_INSTR_ERR_NOT_ENOUGH_ACC_KEYS;
2040+
return FD_EXECUTOR_INSTR_ERR_MISSING_ACC;
20412041
}
20422042

20432043
/* https://github.com/anza-xyz/agave/blob/v2.2.6/programs/bpf_loader/src/lib.rs#L1347-L1349 */

0 commit comments

Comments
 (0)