## CVM

# CVM SQL Framework

Query Substitution: `$VAR` and `${VAR}` are replaced with the quoted value of the environment variable named `VAR`. Use the second form when `VAR` contains anything other than alpha-numeric or underscore (`_`) characters. Do not include quotes in the query. The variables `account` and `domain` contain the account and domain names given by the CVM client. `$$` is replaced with a single dollar sign.

Query Results: The query must produce the following fields exactly in order. All required fields must not be null or empty.

1. Password, encrypted with `crypt` (required)
2. Actual account name (required)
3. User ID (integer) (required)
4. Group ID (integer) (required)
5. Directory (required)
6. Real name (optional)
7. Login shell (optional)
8. Group name (optional)
9. Domain name (optional)
10. System account name (optional)
11. System account directory (optional)
12. Mailbox path (optional)

Default Query: `SELECT password, username, userid, groupid, directory, realname, shell, groupname, domain, sys_username, sys_directory FROM accounts WHERE username=$account AND domain=$domain`