arch_program/
program_stubs.rs1pub const UNIMPLEMENTED: u64 = 0;
4use crate::{
5 account::AccountInfo, clock::Clock, entrypoint::ProgramResult, instruction::Instruction,
6 pubkey::Pubkey, utxo::UtxoMeta,
7};
8
9pub(crate) fn sol_log(message: &str) {
10 println!("{message}");
11}
12pub(crate) fn _sol_log_64_(arg1: u64, arg2: u64, arg3: u64, arg4: u64, arg5: u64) {
13 sol_log(&format!("{arg1:?}, {arg2:?},{arg3:?},{arg4:?},{arg5:?}"))
14}
15pub(crate) fn sol_memset(_s: *mut u8, _c: u8, _n: usize) {
16 sol_log("UNAVAILABLE");
17}
18pub(crate) fn sol_memmove(_dst: *mut u8, _src: *const u8, _n: usize) {
19 sol_log("UNAVAILABLE");
20}
21pub(crate) fn sol_memcpy(_dst: *mut u8, _src: *const u8, _n: usize) {
22 sol_log("UNAVAILABLE");
23}
24pub(crate) fn sol_memcmp(_s1: *const u8, _s2: *const u8, _n: usize, _result: *mut i32) {
25 sol_log("UNAVAILABLE");
26}
27pub(crate) fn _sol_set_return_data(_data: *const u8, _length: u64) {
28 sol_log("UNAVAILABLE");
29}
30pub(crate) fn _sol_log_pubkey(_pubkey_addr: *const u8) {
31 sol_log("UNAVAILABLE");
32}
33pub(crate) fn _sol_log_data(_data: *const u8, _data_len: u64) {
34 sol_log("UNAVAILABLE");
35}
36pub(crate) fn _sol_get_return_data(_data: *mut u8, _length: u64, _program_id: *mut Pubkey) -> u64 {
37 sol_log("UNAVAILABLE");
38 UNIMPLEMENTED
39}
40pub(crate) fn arch_set_transaction_to_sign(_transaction_to_sign: *const u8, _length: usize) -> u64 {
41 sol_log("UNAVAILABLE");
42 UNIMPLEMENTED
43}
44pub(crate) fn arch_get_bitcoin_tx(_buf: *const u8, _buf_len: usize, _txid: &[u8; 32]) -> u64 {
45 sol_log("UNAVAILABLE");
46 UNIMPLEMENTED
47}
48pub(crate) fn arch_get_runes_from_output(
49 _buf: *const u8,
50 _buf_len: usize,
51 _txid: &[u8; 32],
52 _output_index: u32,
53) -> u64 {
54 sol_log("UNAVAILABLE");
55 UNIMPLEMENTED
56}
57pub(crate) fn arch_get_network_xonly_pubkey(_data: *mut u8) -> u64 {
58 sol_log("UNAVAILABLE");
59 UNIMPLEMENTED
60}
61pub(crate) fn arch_validate_utxo_ownership(_utxo: *const UtxoMeta, _owner: *const Pubkey) -> u64 {
62 sol_log("UNAVAILABLE");
63 UNIMPLEMENTED
64}
65pub(crate) fn arch_get_account_script_pubkey(_buf: &mut [u8; 34], _pubkey: &Pubkey) {}
66
67pub(crate) fn sol_invoke_signed(
68 _instruction_addr: &Instruction,
69 _account_infos: &[AccountInfo],
70 _signers_seeds: &[&[&[u8]]],
71) -> ProgramResult {
72 sol_log("SyscallStubs: sol_invoke_signed() not available");
73 Ok(())
74}
75
76pub(crate) fn sol_secp256k1_recover(
77 _hash_addr: *const u8,
78 _recovery_id_val: u64,
79 _signature_addr: *const u8,
80 _result_addr: *mut u8,
81) -> u64 {
82 sol_log("UNAVAILABLE");
83 UNIMPLEMENTED
84}
85
86pub(crate) fn sol_log_compute_units() {
87 sol_log("UNAVAILABLE");
88}
89
90pub(crate) fn sol_remaining_compute_units() -> u64 {
91 sol_log("UNAVAILABLE");
92 UNIMPLEMENTED
93}
94
95pub(crate) fn arch_get_bitcoin_block_height() -> u64 {
96 UNIMPLEMENTED
97}
98
99pub(crate) fn arch_get_clock(_clock: *mut Clock) -> u64 {
100 UNIMPLEMENTED
101}