Tyera Eulberg
fbd3dd4247
Bump solana-zk-token-sdk ( #2772 )
2022-01-21 15:57:55 -07:00
Tyera Eulberg
821ad120d8
Bump zk-token-sdk and impl Default for confidential-transfer extensions ( #2771 )
2022-01-21 13:33:41 -07:00
Tyera Eulberg
498d347cdd
token-2022: bump compute limit for close test ( #2770 )
2022-01-21 11:54:02 -07:00
Jon Cinque
f5a6dc671c
token-2022: Zeroize account data on close ( #2764 )
...
* token-2022: Zeroize account data on close
* Address feedback
2022-01-21 02:47:48 +01:00
Jon Cinque
ba46fedafb
token-2022: Add init transfer fee config ( #2757 )
2022-01-20 13:29:40 +01:00
Jon Cinque
db0b2c5295
token-2022: Add mint close authority support everywhere ( #2754 )
...
* token-2022: Add mint close authority support everywhere
* Address feedback
2022-01-19 18:40:00 +01:00
Jon Cinque
480dc6870f
token-2022: Add init mint close authority ( #2744 )
2022-01-19 12:44:45 +01:00
Trent Nelson
f3704db5ff
Bump token-2022 test CUs again for tip of 1.9
2022-01-18 18:19:52 -07:00
Jon Cinque
0a61bc4ea3
token: Bump compute units in tests ( #2752 )
2022-01-18 13:15:08 +01:00
Tyera Eulberg
00b8a4b332
token-2022: Support extensions in InitializeAccount variations ( #2743 )
...
* Prep helper fn to reuse code
* Adjust error to match current _initialize_account handling
* Add new helper to initialize extension from ExtensionType
* Include required extensions in InitializeAccount processing
* Initialize native mint
* Add missing native-mint test case for get_account_data_size
* Remove superfluous mint unpack
* Limit scope of StateWithExtensionsMut method
* Update comments to be correct
* Check account length vis-a-vis required extensions in Initialize
* Noop confidential-transfer case, add comments, and make fn name more explicit
* gt -> ne
2022-01-15 13:59:03 -07:00
Jon Cinque
3e1dd73396
token-2022: Basic integration with rust client ( #2739 )
...
* token-2022: Basic integration with rust client
* Rename ExtenstionType -> Self
* Fix merge conflicts
2022-01-14 20:34:43 +01:00
Tyera Eulberg
cad24e502a
Add GetAccountDataSize implementation ( #2736 )
...
* Add helper to get required Account extensions
* Add GetAccountDataSize processor
* Add get_account_data_size instruction
* Add test harness to check return data
* Add test of basic mint/account get-len
* Move method inside impl ExtensionType
2022-01-13 18:50:01 -07:00
Michael Vines
e7737760ee
Port the remainder of the zk-token program to the ConfidentialTransfer extension
2022-01-13 10:44:42 -08:00
Jon Cinque
ac85fca43d
token: Refactor transfer fee instructions + processor ( #2733 )
2022-01-13 12:08:17 +01:00
Michael Vines
db9f89828b
Allow the confidential transfer extension to block `CloseAccount`
2022-01-12 09:54:53 -08:00
Jon Cinque
c85373aa3e
token: Check self-ownership in `validate_owner`
2022-01-12 08:20:10 -08:00
Michael Vines
583afbd35f
Drop `new_base` argument, `pack_base()` now works on `self.base`
2022-01-11 21:11:19 -08:00
Jon Cinque
f2056358b7
token: Add checks for mixed type initialization ( #2723 )
...
* token: Add checks for mixed type initialization
* Address feedback
2022-01-12 01:33:02 +01:00
Michael Vines
991eb83a67
Confidential transfer extension
2022-01-11 13:22:20 -08:00
Michael Vines
2caec406bc
Rename StateWithExtensionsMut::get_extension()
2022-01-10 13:15:02 -08:00
Michael Vines
7f0e86cc0f
Harden StateWithExtensions unpacking
2022-01-08 09:20:02 -08:00
Tyera Eulberg
d166e28836
Strip extension account-type prefixes ( #2715 )
...
* Strip account-type prefixes
* Edit comment
2022-01-07 16:46:01 -07:00
Michael Vines
3cc92d294a
How about ConfidentialTransferState and ConfidentialTransferAuditor?
2022-01-07 14:58:41 -08:00
Michael Vines
5fe1eb6a9d
Add Confidential Transfer Extension boilerplate
2022-01-07 14:58:41 -08:00
Michael Vines
7cc9bd7013
Move each extension into its own module
2022-01-06 09:41:06 -08:00
Jon Cinque
eedcbd8602
token: Extension state packing ( #2642 )
...
* token: Extension state packing
* Move to bytemuck
* Cleanup a bit
* Remove all unsafe, address feedback
* Address feedback
* Add test for multisig-length account
* Add tests for Account and multi-extension
* Remove last todo
* Add more tests
2022-01-04 17:55:51 -05:00
Jon Cinque
6ee008d256
Update SDK to 1.9.2, fix warnings ( #2674 )
...
* Update SDK to 1.9.2, fix warnings
* Upgrade honggfuzz
* Use `get_latest_blockhash` correctly
2021-12-28 23:02:47 -05:00
Dmitri Makarov
e039957fc4
Increase compute max units in program-2022 assert_instruction_count ( #2655 )
2021-12-21 10:59:44 -08:00
Jon Cinque
2cd68d3f5c
token-2022: Add transfer fee types and instructions ( #2608 )
...
* token-2022: Add transfer fee accounts and instructions
* Address feedback
* More feedback
* Move to mixins
* Separate instructions for mixin initialization
* Feedback again again again!
* Getting there...
* More more feedback again again
* Add `WithdrawWithheldTokensFromAccounts` instruction
* Add instruction serde, fix all errors
2021-12-14 23:36:02 +01:00
Michael Vines
1a0155e34b
Update to Rust 1.57.0
2021-12-09 23:56:47 -08:00
Jon Cinque
7764a9d5c7
token: Transition perf-monitor to solana-program-test ( #2586 )
...
* token: Transition perf-monitor to solana-program-test
* fmt
* Refactor for clarity
2021-11-16 23:15:45 +01:00
Michael Vines
9acb082dc3
Upgrade to Solana v1.8.1
2021-10-20 22:52:19 -07:00
Michael Vines
1c417ffa4f
Fork Token 2022 program
2021-10-12 10:43:58 -07:00