Skip to content
This repository has been archived by the owner on Aug 21, 2024. It is now read-only.

Add AUTH_REQUIRED section #308

Merged
merged 2 commits into from
Feb 13, 2023
Merged
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 8 additions & 1 deletion docs/how-to-guides/stellar-asset-contract.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -83,7 +83,7 @@ contract).
the issuer account will mint.
- Trustline balances are stored in a 64-bit signed integer even though the
interface accepts 128-bit signed integers. Any operation that attempts to
send or recieve an amount more than the maximum amount that can be
send or receive an amount more than the maximum amount that can be
represented by a 64-bit signed integer will fail.
- Using `Address::Contract`
- The balance and authorization state will be stored in contract storage, as
Expand All @@ -92,6 +92,13 @@ contract).
balance.
- Balances are stored in a 128-bit signed integer.

### Authorization Required
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we add some reference to the classic docs about this? I'm a bit worried about the name collisions and confusion with Soroban auth. Maybe also name this something like 'Balance Authorization' or something like that.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I linked to the classic docs, but I need to open a PR against them because naming isn't consistent there. For example, the docs reference both AUTH_REQUIRED_FLAG and AUTHORIZATION_REQUIRED

In the `Address::Contract` case, if the issuer has `AUTH_REQUIRED` set, then the
specified `Address::Contract` will need to be explicitly authorized before it
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you add the respective function name here?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done

can receive a balance. This logic lines up with how trustlines interact with the
`AUTH_REQUIRED` issuer flag, allowing asset issuers to have the same control in
Soroban as they do in Stellar classic.

## Authorization semantics

See the [authorization overview](../learn/authorization.mdx) and
Expand Down