Commit Graph

92 Commits

Author SHA1 Message Date
Jon Cinque 9db366cfb7
token: Fix some spelling mistakes (#3777) 2022-10-28 18:03:20 -04:00
timkoopmans 4e09bd54fb typo 2022-10-04 15:59:29 -07:00
Jon Cinque f97a3dc7cf
clippy: Deny integer arithmetic, add allows where needed (#3606) 2022-09-15 13:16:53 +02:00
Jon Cinque 6e125f88a9
token[-2022]: Change `target_arch` to `target_os` (#3493) 2022-08-18 13:38:10 +02:00
Tyera Eulberg 4a56a4b840
Prep for spl-token v3.5.0 (#3426)
* check that unpack is tolerant of small sizes (#3416)

* Refactor unpack and make test more robust (#3417)

* Refactor hasty fix to match token-2022

* Make test exhaustive

* cargo fmt

Co-authored-by: Michael Vines <mvines@gmail.com>

* Readd proptests without losing unit test, #3421

Co-authored-by: anatoly yakovenko <anatoly@solana.com>
Co-authored-by: Michael Vines <mvines@gmail.com>
2022-08-04 00:25:07 -06:00
Jon Cinque 4fadd553e1
token: Reassign and reallocate accounts on close (#3415)
* token: Reassign and reallocate accounts on close

* Revert "Refactor unpack and make test more robust (#3417)"

This reverts commit c618de374e.

* Revert "check that unpack is tolerant of small sizes (#3416)"

This reverts commit 22faa05f18.

* Also revert d7f352bd78
2022-08-03 23:49:36 +02:00
Jon Cinque d7f352bd78
token[-2022]: Add proptest for unpacking (#3421) 2022-08-03 20:01:08 +02:00
Tyera Eulberg c618de374e
Refactor unpack and make test more robust (#3417)
* Refactor hasty fix to match token-2022

* Make test exhaustive

* cargo fmt

Co-authored-by: Michael Vines <mvines@gmail.com>
2022-08-03 01:44:55 -06:00
anatoly yakovenko 22faa05f18
check that unpack is tolerant of small sizes (#3416) 2022-08-02 23:11:13 -06:00
Justin Malčić d4bd86e162
Improve token error messages in token-swap (#3357)
* Move PrintProgramError impls

* Add wrapper function

* Add PrintProgramError to use declaration
2022-07-26 13:59:37 +02:00
Jon Cinque c616db83c4
token-2022: Add compatibility test for instructions (#3106) 2022-04-22 23:55:18 +02:00
Tyera Eulberg 810c79ec32
token-2022: Allow anyone to burn/close an Account owned by the system program or the incinerator (#2890)
* Allow anyone to burn and close token Accounts owned by the system program and the incinerator

* Require rent from incinerator/system-owned token accounts be burnt when accounts closed

* Add support to OG program
2022-03-09 19:31:39 -07:00
Lijun Wang 76a92cda2d
Added checks if a token account is initialized when checking validity (#2986)
* Added checks if an account is initialized when checking validity
2022-03-09 16:53:48 -08:00
Tyera Eulberg e17706c7be
Spell out destination (#2977) 2022-03-03 12:34:17 -07:00
Lijun Wang bbbf250a67
Support unpacking token accounts fields partially (#2970)
* Support unpacking token accounts fields partially

Co-authored-by: Tyera Eulberg <teulberg@gmail.com>
2022-03-02 11:34:55 -08:00
Tyera Eulberg d505f2a739
Add comment (#2954) 2022-02-24 16:46:47 -07:00
Tyera Eulberg 3d92f8f4dc
Add token Amount/UiAmount conversion Instructions (#2928)
* Add Amount/UiAmount conversion Instructions to spl-token

* Use invalid-mint error in spl_token get_account_data_size

* Add Amount/UiAmount conversion Instructions to spl-token-2022
2022-02-17 16:25:57 -07:00
Tyera Eulberg 172e24e1f2
Initialize close_authority explicitly (#2919) 2022-02-15 17:27:28 -07:00
Jon Cinque 20864c0be7
token: Support both token programs in associated-token-account (#2904)
* token: Support both token programs in associated-token-account

* Rename spl-token -> spl-token-2022, spl-token-legacy -> spl-token

* Use spl-token by default

* Check mint in get_account_data_len

* Add checks for either token program

* Rebase fix

* Update version comments in tests
2022-02-15 14:20:14 +01:00
Jon Cinque 3eccf25ece
token: Zeroize data on account close (#2763) 2022-01-21 01:03:00 +01:00
Michał Piotrowski fe7b848024
token tests p1 (#2700)
* token tests p1

* token tests - address review comments

* fix cs
2022-01-05 17:11:31 -05:00
Michael Vines 1a0155e34b Update to Rust 1.57.0 2021-12-09 23:56:47 -08:00
Victor Pontis 801b4e59f8 Update comment on state.rs regarding is_native
I was confused when reading this comment and had to read the code to realize that the comment isn't a typo. 

(Btw, let me know if this kind of small changes are helpful or not 👍.)
2021-11-28 20:39:45 -08:00
Michael Vines 5f4b735796 review feedback 2021-08-14 09:46:28 -07:00
Michael Vines 44ad2ff5b4 Add InitializeMint2/InitializeMultisig2/InitializeAccount3 instructions 2021-08-14 09:46:28 -07:00
Jon Cinque ea354ab358
token: Clear close authority for native accounts (#2115) 2021-07-20 19:51:46 +02:00
Jon Cinque aef1e239b3
token: Add SyncNative instruction (program, CLI, JS) (#2091)
* Add SyncNative to program

* Add CLI support

* Add JS bindings

* Fix syncNative test to not run for existing token program

* Combine checks
2021-07-19 21:50:42 +02:00
Jon Cinque 86f9e395ea
token: Drop delegate on ownership transfer (#2085)
* token: Drop delegate on ownership transfer

* Unconditionalize the block
2021-07-15 11:56:15 +02:00
Jon Cinque 21f8af34e7
Update all solana dependencies to 1.7.3, fix issues (#1958)
* Update all dependencies to 1.7.3, fix issues

* Remove esm from mocha

* Fix missed token test

* Also update rust version

* token-swap: update tolerance on sim test

* Run `cargo clippy --fix` for needless_borrow errors

* Rerun cargo fmt
2021-06-25 00:39:08 +02:00
Jonathan LEI 26560daae2
Fix #1739: ThawAccount incorrectly logged as FreezeAccount in token program (#1740) 2021-05-18 18:32:12 +02:00
Elliott Benisty 58221fc9ae
Fix potential vulnerabilities in programs using spl-token CPIs by adding program id checks (#1714)
* Add spl-token program id check helper function. Add program id to instruction bindings.

* Run cargo fmt

* Fixup tests

* Skip ATA tests when custom token program-id

Co-authored-by: Tyera Eulberg <tyera@solana.com>
2021-05-12 22:36:41 +00:00
Michael Vines 448be67cfa Update to Solana 1.6.2 2021-03-30 09:38:04 -07:00
Michael Vines 58807c5f8b Back out clippy::manual_map for now 2021-03-16 22:22:59 -07:00
Michael Vines af5fdb3146 Bump Rust version to 1.50.0 2021-03-16 22:22:59 -07:00
Trent Nelson 00f28eeb0c token: Add InitializeAccount2 instruction
Passes the owner as instruction data rather than on the accounts list,
improving CPI ergonomics where the owner's `AccountInfo` isn't otherwise
required
2021-02-01 14:47:29 -07:00
Trent Nelson 1c4753e9a3 token: Add a full suite of self-transfer tests 2021-01-28 18:45:38 +00:00
Trent Nelson c6f147ef07 token: Fully check self-transfers 2021-01-28 18:45:38 +00:00
Michael Vines 158fa1dea6 Upgrade to Solana v1.4.14 2020-12-03 05:39:55 +00:00
Michael Vines 341149d0e9 Back to no-entrypoint feature name 2020-11-03 10:34:43 -08:00
Michael Vines 2b5e9d1286 Drop lifetimes 2020-11-01 20:48:15 -08:00
Michael Vines 9f4e6d8beb Update to solana v1.4.4 2020-11-01 20:48:15 -08:00
Tyera Eulberg c312a0576a
Clippy suggestions (#765) 2020-10-31 19:10:33 -06:00
Jack May f21c71ed83
reformat token instruction comments (#732) 2020-10-27 01:04:39 +00:00
Jack May 18e8951c97 Refer to CreateAccount 2020-10-26 16:54:33 -07:00
Michael Vines 80e29ef6b9 Port SPL to solana-program and `cargo build-bpf` 2020-10-24 19:21:38 -07:00
Michael Vines 38c2f22734 Add additional transfer test coverage 2020-10-20 08:25:36 +00:00
Jack May e78e26597e Rename x2 instructions to xChecked 2020-09-22 02:51:27 -07:00
Tyera Eulberg 90b5ce6d65
Standardize failure case ordering (#509)
* Standardize processor failure-case ordering

* Fix token-swap test
2020-09-21 20:28:24 -06:00
Jack May 15aa02760a retain v2 error values 2020-09-21 17:08:37 -07:00
Jack May 08841b801e cargo fmt 2020-09-21 17:08:37 -07:00