Classes

Finds the Poweradmin user a PowerDNS account value names, for zones that arrive without an owner (an autoprimary sets the account from its own configuration).

Domain lookups for the API backend mode, read through PowerDNS.

Dynamic DNS persistence for the API backend mode.

Record comment persistence for the API backend mode.

Record reads for the API backend mode, served from PowerDNS RRsets.

Record search over the PowerDNS API, enriched with the zone owner from Poweradmin's zones table and filtered, sorted and paged in memory.

Shared parts of the API-mode searches: query preprocessing that mirrors BaseSearch, and the ownership lookups against Poweradmin's own zones table.

Zone metadata behind the PowerDNS API: metadata kinds through the metadata endpoints, and the kinds PowerDNS exposes as zone-object properties through a zone update.

API-backend zone repository; reads zone state through PowerDNS and ownership from zones and zones_groups.

Zone search over the PowerDNS API, enriched with owners and comments from Poweradmin's zones table and filtered, sorted and paged in memory.

Shared query building for the record and zone searches: IDN matching and reverse IP search strings.

SQL persistence for API keys in the api_keys table and their zone scopes in api_key_zones.

SQL persistence for the oidc_user_links and saml_user_links tables.

SQL persistence for the authentication throttle counters in login_attempts.

SQL persistence for password reset tokens and their rate-limit counters in password_reset_tokens.

SQL persistence for permission templates in perm_templ and their perm_items links in perm_templ_items.

SQL persistence for record comments in the PowerDNS comments table, linked to records via record_comment_links.

SQL persistence for per-record-type default TTLs in the record_type_defaults table.

SQL persistence for records_zone_templ (numeric ids) and records_zone_templ_api (encoded ids).

SQL persistence for accepted user agreement versions in the user_agreements table.

SQL persistence for group membership rows in the user_group_members table.

SQL persistence for user groups in the user_groups table, with member and zone counts.

SQL persistence for per-user MFA settings in the user_mfa table.

SQL persistence for per-user settings in the user_preferences table.

SQL persistence for accounts in the users table, with permission lookups through perm_templ and perm_items.

SQL persistence for username recovery attempts and their rate-limit counters in username_recovery_requests.

Reads the oldest direct owner of a zone from the native zones table.

SQL persistence for zone_change_requests, a Poweradmin-native table that is never prefixed and is shared by the SQL and API backends. Until the 4.6.0 schema update creates it, reads find nothing and writes fail.

SQL persistence for zone-to-group links in zones_groups; joins domains, or the zones table under the API backend.

Zone metadata in the PowerDNS domainmetadata table.

SQL zone repository over the PowerDNS domains and records tables plus the zones and zones_groups ownership tables.

SQL persistence for zone templates in zone_templ and their records in zone_templ_records.

Tracks which zones are out of date against their template in the zone_template_sync table.

Runs the record search page query with grouping, comments, sorting and pagination.

Domain lookups on the domains table.

Dynamic DNS persistence on the records table.

Record reads on the records table.

Runs the zone search page query, counting and fetching the domains that match the search string.