netbox-plugin-dns 1.4.0__tar.gz → 1.4.2__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of netbox-plugin-dns might be problematic. Click here for more details.

Files changed (202) hide show
  1. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/PKG-INFO +3 -2
  2. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/README.md +2 -1
  3. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/__init__.py +1 -1
  4. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/api/nested_serializers.py +1 -0
  5. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/api/serializers_/dnssec_policy.py +2 -0
  6. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/api/serializers_/zone.py +4 -0
  7. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/fields/address.py +17 -0
  8. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/filtersets/dnssec_policy.py +1 -0
  9. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/filtersets/zone.py +21 -1
  10. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/forms/dnssec_policy.py +19 -0
  11. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/forms/zone.py +1 -15
  12. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/graphql/filters/dnssec_policy.py +1 -0
  13. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/graphql/filters/zone.py +0 -1
  14. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/graphql/types.py +2 -1
  15. netbox_plugin_dns-1.4.2/netbox_dns/locale/fr/LC_MESSAGES/django.mo +0 -0
  16. netbox_plugin_dns-1.4.2/netbox_dns/migrations/0025_remove_zone_inline_signing_and_more.py +22 -0
  17. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/models/dnssec_policy.py +5 -0
  18. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/models/zone.py +23 -10
  19. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/tables/dnssec_policy.py +5 -1
  20. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/tables/zone.py +0 -1
  21. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/templates/netbox_dns/dnssecpolicy.html +4 -0
  22. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/templates/netbox_dns/zone.html +0 -4
  23. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/views/zone.py +0 -1
  24. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_plugin_dns.egg-info/PKG-INFO +3 -2
  25. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_plugin_dns.egg-info/SOURCES.txt +1 -0
  26. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/pyproject.toml +1 -1
  27. netbox_plugin_dns-1.4.0/netbox_dns/locale/fr/LC_MESSAGES/django.mo +0 -0
  28. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/LICENSE +0 -0
  29. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/api/field_serializers.py +0 -0
  30. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/api/serializers.py +0 -0
  31. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/api/serializers_/__init__.py +0 -0
  32. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/api/serializers_/dnssec_key_template.py +0 -0
  33. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/api/serializers_/nameserver.py +0 -0
  34. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/api/serializers_/prefix.py +0 -0
  35. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/api/serializers_/record.py +0 -0
  36. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/api/serializers_/record_template.py +0 -0
  37. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/api/serializers_/registrar.py +0 -0
  38. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/api/serializers_/registration_contact.py +0 -0
  39. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/api/serializers_/view.py +0 -0
  40. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/api/serializers_/zone_template.py +0 -0
  41. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/api/urls.py +0 -0
  42. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/api/views.py +0 -0
  43. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/apps.py +0 -0
  44. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/choices/__init__.py +0 -0
  45. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/choices/dnssec_key_template.py +0 -0
  46. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/choices/dnssec_policy.py +0 -0
  47. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/choices/record.py +0 -0
  48. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/choices/utilities.py +0 -0
  49. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/choices/zone.py +0 -0
  50. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/fields/__init__.py +0 -0
  51. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/fields/choice_array.py +0 -0
  52. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/fields/ipam.py +0 -0
  53. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/fields/network.py +0 -0
  54. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/fields/rfc2317.py +0 -0
  55. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/fields/timeperiod.py +0 -0
  56. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/filtersets/__init__.py +0 -0
  57. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/filtersets/dnssec_key_template.py +0 -0
  58. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/filtersets/nameserver.py +0 -0
  59. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/filtersets/record.py +0 -0
  60. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/filtersets/record_template.py +0 -0
  61. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/filtersets/registrar.py +0 -0
  62. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/filtersets/registration_contact.py +0 -0
  63. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/filtersets/view.py +0 -0
  64. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/filtersets/zone_template.py +0 -0
  65. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/forms/__init__.py +0 -0
  66. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/forms/dnssec_key_template.py +0 -0
  67. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/forms/nameserver.py +0 -0
  68. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/forms/record.py +0 -0
  69. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/forms/record_template.py +0 -0
  70. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/forms/registrar.py +0 -0
  71. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/forms/registration_contact.py +0 -0
  72. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/forms/view.py +0 -0
  73. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/forms/zone_template.py +0 -0
  74. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/graphql/__init__.py +0 -0
  75. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/graphql/enums.py +0 -0
  76. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/graphql/filter_lookups.py +0 -0
  77. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/graphql/filters/__init__.py +0 -0
  78. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/graphql/filters/dnssec_key_template.py +0 -0
  79. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/graphql/filters/nameserver.py +0 -0
  80. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/graphql/filters/record.py +0 -0
  81. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/graphql/filters/record_template.py +0 -0
  82. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/graphql/filters/registrar.py +0 -0
  83. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/graphql/filters/registration_contact.py +0 -0
  84. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/graphql/filters/view.py +0 -0
  85. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/graphql/filters/zone_template.py +0 -0
  86. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/graphql/schema.py +0 -0
  87. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/locale/de/LC_MESSAGES/django.mo +0 -0
  88. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/locale/en/LC_MESSAGES/django.mo +0 -0
  89. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/management/commands/cleanup_database.py +0 -0
  90. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/management/commands/cleanup_rrset_ttl.py +0 -0
  91. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/management/commands/rebuild_dnssync.py +0 -0
  92. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/management/commands/setup_dnssync.py +0 -0
  93. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/migrations/0001_squashed_netbox_dns_0_15.py +0 -0
  94. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/migrations/0001_squashed_netbox_dns_0_22.py +0 -0
  95. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/migrations/0002_contact_description_registrar_description.py +0 -0
  96. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/migrations/0003_default_view.py +0 -0
  97. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/migrations/0004_create_and_assign_default_view.py +0 -0
  98. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/migrations/0005_alter_zone_view_not_null.py +0 -0
  99. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/migrations/0006_templating.py +0 -0
  100. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/migrations/0007_alter_ordering_options.py +0 -0
  101. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/migrations/0008_view_prefixes.py +0 -0
  102. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/migrations/0009_rename_contact_registrationcontact.py +0 -0
  103. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/migrations/0010_view_ip_address_filter.py +0 -0
  104. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/migrations/0011_rename_related_fields.py +0 -0
  105. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/migrations/0012_natural_ordering.py +0 -0
  106. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/migrations/0013_zonetemplate_soa_mname_zonetemplate_soa_rname.py +0 -0
  107. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/migrations/0014_alter_unique_constraints_lowercase.py +0 -0
  108. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/migrations/0015_dnssec.py +0 -0
  109. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/migrations/0016_dnssec_policy_status.py +0 -0
  110. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/migrations/0017_dnssec_policy_zone_zone_template.py +0 -0
  111. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/migrations/0018_zone_domain_status_zone_expiration_date.py +0 -0
  112. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/migrations/0019_dnssecpolicy_parental_agents.py +0 -0
  113. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/migrations/0020_netbox_3_4.py +0 -0
  114. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/migrations/0020_remove_dnssecpolicy_parental_agents_and_more.py +0 -0
  115. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/migrations/0021_alter_record_ptr_record.py +0 -0
  116. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/migrations/0021_record_ip_address.py +0 -0
  117. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/migrations/0022_alter_record_ipam_ip_address.py +0 -0
  118. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/migrations/0022_search.py +0 -0
  119. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/migrations/0023_alter_record_value.py +0 -0
  120. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/migrations/0023_disable_ptr_false.py +0 -0
  121. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/migrations/0024_tenancy.py +0 -0
  122. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/migrations/0024_zonetemplate_parental_agents.py +0 -0
  123. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/migrations/0025_ipam_coupling_cf.py +0 -0
  124. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/migrations/0026_domain_registration.py +0 -0
  125. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/migrations/0027_alter_registrar_iana_id.py +0 -0
  126. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/migrations/0028_rfc2317_fields.py +0 -0
  127. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/migrations/0029_record_fqdn.py +0 -0
  128. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/migrations/__init__.py +0 -0
  129. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/mixins/__init__.py +0 -0
  130. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/mixins/object_modification.py +0 -0
  131. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/models/__init__.py +0 -0
  132. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/models/dnssec_key_template.py +0 -0
  133. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/models/nameserver.py +0 -0
  134. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/models/record.py +0 -0
  135. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/models/record_template.py +0 -0
  136. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/models/registrar.py +0 -0
  137. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/models/registration_contact.py +0 -0
  138. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/models/view.py +0 -0
  139. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/models/zone_template.py +0 -0
  140. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/navigation.py +0 -0
  141. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/signals/__init__.py +0 -0
  142. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/signals/dnssec.py +0 -0
  143. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/signals/ipam_dnssync.py +0 -0
  144. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/tables/__init__.py +0 -0
  145. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/tables/dnssec_key_template.py +0 -0
  146. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/tables/ipam_dnssync.py +0 -0
  147. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/tables/nameserver.py +0 -0
  148. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/tables/record.py +0 -0
  149. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/tables/record_template.py +0 -0
  150. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/tables/registrar.py +0 -0
  151. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/tables/registration_contact.py +0 -0
  152. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/tables/view.py +0 -0
  153. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/tables/zone_template.py +0 -0
  154. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/template_content.py +0 -0
  155. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/templates/netbox_dns/dnsseckeytemplate.html +0 -0
  156. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/templates/netbox_dns/nameserver.html +0 -0
  157. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/templates/netbox_dns/record/managed.html +0 -0
  158. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/templates/netbox_dns/record/related.html +0 -0
  159. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/templates/netbox_dns/record.html +0 -0
  160. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/templates/netbox_dns/recordtemplate.html +0 -0
  161. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/templates/netbox_dns/registrar.html +0 -0
  162. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/templates/netbox_dns/registrationcontact.html +0 -0
  163. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/templates/netbox_dns/view/button.html +0 -0
  164. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/templates/netbox_dns/view/prefix.html +0 -0
  165. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/templates/netbox_dns/view/related.html +0 -0
  166. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/templates/netbox_dns/view.html +0 -0
  167. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/templates/netbox_dns/zone/base.html +0 -0
  168. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/templates/netbox_dns/zone/child.html +0 -0
  169. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/templates/netbox_dns/zone/child_zone.html +0 -0
  170. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/templates/netbox_dns/zone/delegation_record.html +0 -0
  171. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/templates/netbox_dns/zone/managed_record.html +0 -0
  172. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/templates/netbox_dns/zone/record.html +0 -0
  173. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/templates/netbox_dns/zone/registration.html +0 -0
  174. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/templates/netbox_dns/zone/rfc2317_child_zone.html +0 -0
  175. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/templates/netbox_dns/zonetemplate/child.html +0 -0
  176. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/templates/netbox_dns/zonetemplate.html +0 -0
  177. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/templatetags/__init__.py +0 -0
  178. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/templatetags/netbox_dns.py +0 -0
  179. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/urls.py +0 -0
  180. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/utilities/__init__.py +0 -0
  181. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/utilities/conversions.py +0 -0
  182. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/utilities/dns.py +0 -0
  183. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/utilities/ipam_dnssync.py +0 -0
  184. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/validators/__init__.py +0 -0
  185. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/validators/dns_name.py +0 -0
  186. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/validators/dns_value.py +0 -0
  187. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/validators/dnssec.py +0 -0
  188. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/validators/rfc2317.py +0 -0
  189. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/views/__init__.py +0 -0
  190. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/views/dnssec_key_template.py +0 -0
  191. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/views/dnssec_policy.py +0 -0
  192. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/views/nameserver.py +0 -0
  193. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/views/record.py +0 -0
  194. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/views/record_template.py +0 -0
  195. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/views/registrar.py +0 -0
  196. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/views/registration_contact.py +0 -0
  197. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/views/view.py +0 -0
  198. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_dns/views/zone_template.py +0 -0
  199. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_plugin_dns.egg-info/dependency_links.txt +0 -0
  200. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_plugin_dns.egg-info/requires.txt +0 -0
  201. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/netbox_plugin_dns.egg-info/top_level.txt +0 -0
  202. {netbox_plugin_dns-1.4.0 → netbox_plugin_dns-1.4.2}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: netbox-plugin-dns
3
- Version: 1.4.0
3
+ Version: 1.4.2
4
4
  Summary: NetBox DNS is a NetBox plugin for managing DNS data.
5
5
  Author-email: Peter Eckel <pete@netbox-dns.org>
6
6
  Project-URL: Homepage, https://github.com/peteeckel/netbox-plugin-dns
@@ -81,7 +81,8 @@ NetBox Version | NetBox DNS Version | Comment
81
81
  4.0 - 4.1 | 1.0 | Supports legacy IPAM Coupling
82
82
  4.0 - 4.1 | 1.1 | Supports IPAM DNSsync
83
83
  4.2 | 1.2 |
84
- 4.3 | 1.3 |
84
+ 4.3 | 1.3 - 1.4 |
85
+ 4.4 | 1.4 |
85
86
 
86
87
  ## Installation & Configuration
87
88
 
@@ -64,7 +64,8 @@ NetBox Version | NetBox DNS Version | Comment
64
64
  4.0 - 4.1 | 1.0 | Supports legacy IPAM Coupling
65
65
  4.0 - 4.1 | 1.1 | Supports IPAM DNSsync
66
66
  4.2 | 1.2 |
67
- 4.3 | 1.3 |
67
+ 4.3 | 1.3 - 1.4 |
68
+ 4.4 | 1.4 |
68
69
 
69
70
  ## Installation & Configuration
70
71
 
@@ -4,7 +4,7 @@ from django.core.exceptions import ImproperlyConfigured
4
4
  from netbox.plugins import PluginConfig
5
5
  from netbox.plugins.utils import get_plugin_config
6
6
 
7
- __version__ = "1.4.0"
7
+ __version__ = "1.4.2"
8
8
 
9
9
 
10
10
  def _check_list(setting):
@@ -145,6 +145,7 @@ class NestedDNSSECPolicySerializer(WritableNestedSerializer):
145
145
  "name",
146
146
  "description",
147
147
  "status",
148
+ "inline_signing",
148
149
  )
149
150
 
150
151
  url = serializers.HyperlinkedIdentityField(
@@ -26,6 +26,7 @@ class DNSSECPolicySerializer(NetBoxModelSerializer):
26
26
  "description",
27
27
  "status",
28
28
  "tags",
29
+ "inline_signing",
29
30
  "key_templates",
30
31
  "zones",
31
32
  "zone_templates",
@@ -60,6 +61,7 @@ class DNSSECPolicySerializer(NetBoxModelSerializer):
60
61
  "name",
61
62
  "description",
62
63
  "status",
64
+ "inline_signing",
63
65
  )
64
66
 
65
67
  url = serializers.HyperlinkedIdentityField(
@@ -195,6 +195,7 @@ class ZoneSerializer(NetBoxModelSerializer):
195
195
  default=None,
196
196
  help_text=_("Template to apply to the zone"),
197
197
  )
198
+ inline_signing = serializers.SerializerMethodField()
198
199
  active = serializers.BooleanField(
199
200
  required=False,
200
201
  read_only=True,
@@ -212,6 +213,9 @@ class ZoneSerializer(NetBoxModelSerializer):
212
213
 
213
214
  return super().validate(data)
214
215
 
216
+ def get_inline_signing(self, instance):
217
+ return instance.inline_signing
218
+
215
219
  def create(self, validated_data):
216
220
  template = validated_data.pop("template", None)
217
221
  nameservers = validated_data.pop("nameservers", None)
@@ -1,4 +1,5 @@
1
1
  from django.db import models
2
+ from django.db.models import Lookup
2
3
  from django.core.exceptions import ValidationError
3
4
  from django.utils.translation import gettext_lazy as _
4
5
 
@@ -50,3 +51,19 @@ class AddressField(models.Field):
50
51
 
51
52
  def db_type(self, connection):
52
53
  return "inet"
54
+
55
+
56
+ class AddressContained(Lookup):
57
+ lookup_name = "contained"
58
+
59
+ def get_prep_lookup(self):
60
+ return str(self.rhs)
61
+
62
+ def as_sql(self, compiler, connection):
63
+ lhs, lhs_params = self.process_lhs(compiler, connection)
64
+ rhs, rhs_params = self.process_rhs(compiler, connection)
65
+ params = lhs_params + rhs_params
66
+ return f"CAST(HOST({lhs}) AS INET) <<= {rhs}", params
67
+
68
+
69
+ AddressField.register_lookup(AddressContained)
@@ -23,6 +23,7 @@ class DNSSECPolicyFilterSet(TenancyFilterSet, NetBoxModelFilterSet):
23
23
  "name",
24
24
  "description",
25
25
  "status",
26
+ "inline_signing",
26
27
  "dnskey_ttl",
27
28
  "purge_keys",
28
29
  "publish_safety",
@@ -41,9 +41,9 @@ class ZoneFilterSet(TenancyFilterSet, NetBoxModelFilterSet):
41
41
  "soa_minimum",
42
42
  "soa_serial_auto",
43
43
  "rfc2317_parent_managed",
44
- "inline_signing",
45
44
  "registry_domain_id",
46
45
  "domain_status",
46
+ "inline_signing",
47
47
  )
48
48
 
49
49
  status = django_filters.MultipleChoiceFilter(
@@ -172,6 +172,10 @@ class ZoneFilterSet(TenancyFilterSet, NetBoxModelFilterSet):
172
172
  active = django_filters.BooleanFilter(
173
173
  label=_("Zone is active"),
174
174
  )
175
+ inline_signing = django_filters.BooleanFilter(
176
+ label=_("Zone is using a DNSSEC policy with inline signing"),
177
+ method="filter_inline_signing",
178
+ )
175
179
 
176
180
  def filter_parental_agents(self, queryset, name, value):
177
181
  if not value:
@@ -214,6 +218,22 @@ class ZoneFilterSet(TenancyFilterSet, NetBoxModelFilterSet):
214
218
  except (netaddr.AddrFormatError, ValueError):
215
219
  return queryset.none()
216
220
 
221
+ def filter_inline_signing(self, queryset, name, value):
222
+ if value is None:
223
+ return queryset
224
+
225
+ if value:
226
+ return queryset.filter(
227
+ dnssec_policy__isnull=False, dnssec_policy__inline_signing=True
228
+ )
229
+ else:
230
+ return queryset.filter(
231
+ Q(
232
+ Q(dnssec_policy__isnull=True)
233
+ | Q(dnssec_policy__inline_signing=False)
234
+ )
235
+ )
236
+
217
237
  def search(self, queryset, name, value):
218
238
  if not value.strip():
219
239
  return queryset
@@ -41,6 +41,7 @@ class DNSSECPolicyForm(TenancyForm, NetBoxModelForm):
41
41
  "name",
42
42
  "description",
43
43
  "status",
44
+ "inline_signing",
44
45
  "key_templates",
45
46
  "dnskey_ttl",
46
47
  "purge_keys",
@@ -71,6 +72,7 @@ class DNSSECPolicyForm(TenancyForm, NetBoxModelForm):
71
72
  "description",
72
73
  "status",
73
74
  "key_templates",
75
+ "inline_signing",
74
76
  name=_("Attributes"),
75
77
  ),
76
78
  FieldSet(
@@ -194,6 +196,7 @@ class DNSSECPolicyFilterForm(TenancyFilterForm, NetBoxModelFilterSetForm):
194
196
  "description",
195
197
  "status",
196
198
  "key_template_id",
199
+ "inline_signing",
197
200
  name=_("Attributes"),
198
201
  ),
199
202
  FieldSet(
@@ -250,6 +253,11 @@ class DNSSECPolicyFilterForm(TenancyFilterForm, NetBoxModelFilterSetForm):
250
253
  required=False,
251
254
  label=_("Status"),
252
255
  )
256
+ inline_signing = forms.NullBooleanField(
257
+ required=False,
258
+ widget=forms.Select(choices=BOOLEAN_WITH_BLANK_CHOICES),
259
+ label=_("Use Inline Signing"),
260
+ )
253
261
  key_template_id = DynamicModelMultipleChoiceField(
254
262
  queryset=DNSSECKeyTemplate.objects.all(),
255
263
  required=False,
@@ -355,6 +363,7 @@ class DNSSECPolicyImportForm(NetBoxModelImportForm):
355
363
  fields = (
356
364
  "name",
357
365
  "description",
366
+ "inline_signing",
358
367
  "key_templates",
359
368
  "dnskey_ttl",
360
369
  "purge_keys",
@@ -383,6 +392,10 @@ class DNSSECPolicyImportForm(NetBoxModelImportForm):
383
392
  required=False,
384
393
  label=_("Status"),
385
394
  )
395
+ inline_signing = forms.BooleanField(
396
+ required=False,
397
+ label=_("Use Inline Signing"),
398
+ )
386
399
  dnskey_ttl = TimePeriodField(
387
400
  required=False,
388
401
  label=_("DNSKEY TTL"),
@@ -446,6 +459,7 @@ class DNSSECPolicyBulkEditForm(NetBoxModelBulkEditForm):
446
459
  FieldSet(
447
460
  "description",
448
461
  "key_templates",
462
+ "inline_signing",
449
463
  name=_("Attributes"),
450
464
  ),
451
465
  FieldSet(
@@ -516,6 +530,11 @@ class DNSSECPolicyBulkEditForm(NetBoxModelBulkEditForm):
516
530
  required=False,
517
531
  label=_("Status"),
518
532
  )
533
+ inline_signing = forms.NullBooleanField(
534
+ required=False,
535
+ widget=BulkEditNullBooleanSelect(),
536
+ label=_("Use Inline Signing"),
537
+ )
519
538
  dnskey_ttl = TimePeriodField(
520
539
  required=False,
521
540
  label=_("DNSKEY TTL"),
@@ -183,7 +183,6 @@ class ZoneForm(ZoneTemplateUpdateMixin, TenancyForm, NetBoxModelForm):
183
183
  "rfc2317_prefix",
184
184
  "rfc2317_parent_managed",
185
185
  "dnssec_policy",
186
- "inline_signing",
187
186
  "parental_agents",
188
187
  "registrar",
189
188
  "registry_domain_id",
@@ -241,7 +240,6 @@ class ZoneForm(ZoneTemplateUpdateMixin, TenancyForm, NetBoxModelForm):
241
240
  ),
242
241
  FieldSet(
243
242
  "dnssec_policy",
244
- "inline_signing",
245
243
  "parental_agents",
246
244
  name=_("DNSSEC"),
247
245
  ),
@@ -317,7 +315,6 @@ class ZoneForm(ZoneTemplateUpdateMixin, TenancyForm, NetBoxModelForm):
317
315
  )
318
316
 
319
317
  if not get_field_value(self, "dnssec_policy"):
320
- del self.fields["inline_signing"]
321
318
  del self.fields["parental_agents"]
322
319
 
323
320
  if not get_field_value(self, "registrar"):
@@ -552,7 +549,7 @@ class ZoneFilterForm(TenancyFilterForm, NetBoxModelFilterSetForm):
552
549
  inline_signing = forms.NullBooleanField(
553
550
  required=False,
554
551
  widget=forms.Select(choices=BOOLEAN_WITH_BLANK_CHOICES),
555
- label=_("Use Inline Signing"),
552
+ label=_("DNSSEC Policy uses inline signing"),
556
553
  )
557
554
  parental_agents = forms.GenericIPAddressField(
558
555
  required=False,
@@ -632,7 +629,6 @@ class ZoneImportForm(ZoneTemplateUpdateMixin, NetBoxModelImportForm):
632
629
  "soa_expire",
633
630
  "soa_minimum",
634
631
  "dnssec_policy",
635
- "inline_signing",
636
632
  "parental_agents",
637
633
  "rfc2317_prefix",
638
634
  "rfc2317_parent_managed",
@@ -741,10 +737,6 @@ class ZoneImportForm(ZoneTemplateUpdateMixin, NetBoxModelImportForm):
741
737
  },
742
738
  label=_("DNSSEC Policy"),
743
739
  )
744
- inline_signing = forms.BooleanField(
745
- required=False,
746
- label=_("Use Inline Signing"),
747
- )
748
740
  registrar = CSVModelChoiceField(
749
741
  queryset=Registrar.objects.all(),
750
742
  required=False,
@@ -860,7 +852,6 @@ class ZoneBulkEditForm(NetBoxModelBulkEditForm):
860
852
  ),
861
853
  FieldSet(
862
854
  "dnssec_policy",
863
- "inline_signing",
864
855
  "parental_agents",
865
856
  name=_("DNSSEC"),
866
857
  ),
@@ -990,11 +981,6 @@ class ZoneBulkEditForm(NetBoxModelBulkEditForm):
990
981
  required=False,
991
982
  label=_("DNSSEC Policy"),
992
983
  )
993
- inline_signing = forms.NullBooleanField(
994
- required=False,
995
- widget=BulkEditNullBooleanSelect(),
996
- label=_("Use Inline Signing"),
997
- )
998
984
  parental_agents = SimpleArrayField(
999
985
  required=False,
1000
986
  base_field=forms.GenericIPAddressField(),
@@ -34,6 +34,7 @@ class NetBoxDNSDNSSECPolicyFilter(
34
34
  ]
35
35
  | None
36
36
  ) = strawberry_django.filter_field()
37
+ inline_signing: FilterLookup[bool] | None = strawberry_django.filter_field()
37
38
  key_templates: (
38
39
  Annotated[
39
40
  "NetBoxDNSDNSSECKeyTemplateFilter",
@@ -91,7 +91,6 @@ class NetBoxDNSZoneFilter(
91
91
  ]
92
92
  | None
93
93
  )
94
- inline_signing: FilterLookup[bool] | None = strawberry_django.filter_field()
95
94
 
96
95
  registrar: (
97
96
  Annotated[
@@ -89,7 +89,7 @@ class NetBoxDNSZoneType(NetBoxObjectType):
89
89
  ]
90
90
  | None
91
91
  )
92
- inline_signing: bool
92
+ inline_signing: bool | None
93
93
  parental_agents: List[str]
94
94
  registrar: (
95
95
  Annotated["NetBoxDNSRegistrarType", strawberry.lazy("netbox_dns.graphql.types")]
@@ -194,6 +194,7 @@ class NetBoxDNSDNSSECPolicyType(NetBoxObjectType):
194
194
  description: str | None
195
195
  status: str
196
196
  tenant: Annotated["TenantType", strawberry.lazy("tenancy.graphql.types")] | None
197
+ inline_signing: bool
197
198
  key_templates: List[
198
199
  Annotated[
199
200
  "NetBoxDNSDNSSECKeyTemplateType",
@@ -0,0 +1,22 @@
1
+ # Generated by Django 5.2.6 on 2025-10-05 16:57
2
+
3
+ from django.db import migrations, models
4
+
5
+
6
+ class Migration(migrations.Migration):
7
+
8
+ dependencies = [
9
+ ("netbox_dns", "0024_zonetemplate_parental_agents"),
10
+ ]
11
+
12
+ operations = [
13
+ migrations.RemoveField(
14
+ model_name="zone",
15
+ name="inline_signing",
16
+ ),
17
+ migrations.AddField(
18
+ model_name="dnssecpolicy",
19
+ name="inline_signing",
20
+ field=models.BooleanField(default=True),
21
+ ),
22
+ ]
@@ -51,6 +51,11 @@ class DNSSECPolicy(ContactsMixin, NetBoxModel):
51
51
  null=False,
52
52
  )
53
53
 
54
+ inline_signing = models.BooleanField(
55
+ verbose_name=_("Inline Signing"),
56
+ help_text=_("Use inline signing"),
57
+ default=True,
58
+ )
54
59
  key_templates = models.ManyToManyField(
55
60
  verbose_name=_("Key Templates"),
56
61
  to="DNSSECKeyTemplate",
@@ -25,6 +25,7 @@ from netbox.search import SearchIndex, register_search
25
25
  from netbox.plugins.utils import get_plugin_config
26
26
  from utilities.querysets import RestrictedQuerySet
27
27
  from ipam.models import IPAddress
28
+ from ipam.choices import IPAddressFamilyChoices
28
29
 
29
30
  from netbox_dns.choices import (
30
31
  RecordClassChoices,
@@ -123,7 +124,6 @@ class Zone(ObjectModificationMixin, ContactsMixin, NetBoxModel):
123
124
  "description",
124
125
  "status",
125
126
  "dnssec_policy",
126
- "inline_signing",
127
127
  "parental_agents",
128
128
  "registrar",
129
129
  "registry_domain_id",
@@ -262,11 +262,6 @@ class Zone(ObjectModificationMixin, ContactsMixin, NetBoxModel):
262
262
  blank=True,
263
263
  null=True,
264
264
  )
265
- inline_signing = models.BooleanField(
266
- verbose_name=_("Inline Signing"),
267
- help_text=_("Use inline signing for DNSSEC"),
268
- default=True,
269
- )
270
265
  parental_agents = ArrayField(
271
266
  base_field=models.GenericIPAddressField(
272
267
  protocol="both",
@@ -432,6 +427,13 @@ class Zone(ObjectModificationMixin, ContactsMixin, NetBoxModel):
432
427
  def is_rfc2317_zone(self):
433
428
  return self.rfc2317_prefix is not None
434
429
 
430
+ @property
431
+ def inline_signing(self):
432
+ if self.dnssec_policy is None:
433
+ return None
434
+
435
+ return self.dnssec_policy.inline_signing
436
+
435
437
  def get_rfc2317_parent_zone(self):
436
438
  if not self.is_rfc2317_zone:
437
439
  return None
@@ -801,7 +803,6 @@ class Zone(ObjectModificationMixin, ContactsMixin, NetBoxModel):
801
803
 
802
804
  def clean(self, *args, **kwargs):
803
805
  if not self.dnssec_policy:
804
- self.inline_signing = self._meta.get_field("inline_signing").get_default()
805
806
  self.parental_agents = self._meta.get_field("parental_agents").get_default()
806
807
 
807
808
  if not self.registrar:
@@ -970,9 +971,21 @@ class Zone(ObjectModificationMixin, ContactsMixin, NetBoxModel):
970
971
  zones = self.view.zones.filter(
971
972
  arpa_network__net_contains_or_equals=self.arpa_network
972
973
  )
974
+
975
+ if self.arpa_network.version == IPAddressFamilyChoices.FAMILY_4:
976
+ record_type = RecordTypeChoices.A
977
+ else:
978
+ record_type = RecordTypeChoices.AAAA
979
+
973
980
  address_records = Record.objects.filter(
974
- Q(ptr_record__isnull=True) | Q(ptr_record__zone__in=zones),
975
- type__in=(RecordTypeChoices.A, RecordTypeChoices.AAAA),
981
+ Q(
982
+ ptr_record__isnull=True,
983
+ zone__view=self.view,
984
+ ip_address__isnull=False,
985
+ ip_address__contained=self.arpa_network,
986
+ type=record_type,
987
+ )
988
+ | Q(ptr_record__zone__in=zones),
976
989
  disable_ptr=False,
977
990
  )
978
991
 
@@ -1001,7 +1014,7 @@ class Zone(ObjectModificationMixin, ContactsMixin, NetBoxModel):
1001
1014
  arpa_network__net_contains=self.rfc2317_prefix
1002
1015
  )
1003
1016
  address_records = Record.objects.filter(
1004
- Q(ptr_record__isnull=True)
1017
+ Q(ptr_record__isnull=True, ip_address__contained=self.rfc2317_prefix)
1005
1018
  | Q(ptr_record__zone__in=zones)
1006
1019
  | Q(ptr_record__zone=self),
1007
1020
  type=RecordTypeChoices.A,
@@ -23,12 +23,16 @@ class DNSSECPolicyTable(TenancyColumnsMixin, NetBoxTable):
23
23
  class Meta(NetBoxTable.Meta):
24
24
  model = DNSSECPolicy
25
25
 
26
- fields = ("description",)
26
+ fields = (
27
+ "description",
28
+ "inline_signing",
29
+ )
27
30
 
28
31
  default_columns = (
29
32
  "name",
30
33
  "description",
31
34
  "status",
35
+ "inline_signing",
32
36
  "use_nsec3",
33
37
  "tags",
34
38
  )
@@ -26,7 +26,6 @@ class ZoneTable(TenancyColumnsMixin, NetBoxTable):
26
26
  "description",
27
27
  "soa_rname",
28
28
  "soa_serial",
29
- "inline_signing",
30
29
  "rfc2317_parent_managed",
31
30
  "registry_domain_id",
32
31
  "expiration_date",
@@ -17,6 +17,10 @@
17
17
  <th scope="row">{% trans "Status" %}</th>
18
18
  <td>{% badge object.get_status_display bg_color=object.get_status_color %}</td>
19
19
  </tr>
20
+ <tr>
21
+ <th scope="row">{% trans "Use Inline Signing" %}</th>
22
+ <td>{% checkmark object.inline_signing %}</td>
23
+ </tr>
20
24
  <tr>
21
25
  <th scope="row">{% trans "Key Templates" %}</th>
22
26
  <td>
@@ -104,10 +104,6 @@
104
104
  <th scope="row">{% trans "Policy" %}</th>
105
105
  <td>{{ object.dnssec_policy|linkify }}</td>
106
106
  </tr>
107
- <tr>
108
- <th scope="row">{% trans "Use Inline Signing" %}</th>
109
- <td>{% checkmark object.inline_signing %}</td>
110
- </tr>
111
107
  <tr>
112
108
  <th scope="row">{% trans "Parental Agents" %}</th>
113
109
  <td>
@@ -157,7 +157,6 @@ class ZoneManagedRecordListView(generic.ObjectChildrenView):
157
157
  table = ManagedRecordTable
158
158
  filterset = RecordFilterSet
159
159
  template_name = "netbox_dns/zone/managed_record.html"
160
- actions = {"changelog": {"view"}}
161
160
 
162
161
  tab = ViewTab(
163
162
  label=_("Managed Records"),
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: netbox-plugin-dns
3
- Version: 1.4.0
3
+ Version: 1.4.2
4
4
  Summary: NetBox DNS is a NetBox plugin for managing DNS data.
5
5
  Author-email: Peter Eckel <pete@netbox-dns.org>
6
6
  Project-URL: Homepage, https://github.com/peteeckel/netbox-plugin-dns
@@ -81,7 +81,8 @@ NetBox Version | NetBox DNS Version | Comment
81
81
  4.0 - 4.1 | 1.0 | Supports legacy IPAM Coupling
82
82
  4.0 - 4.1 | 1.1 | Supports IPAM DNSsync
83
83
  4.2 | 1.2 |
84
- 4.3 | 1.3 |
84
+ 4.3 | 1.3 - 1.4 |
85
+ 4.4 | 1.4 |
85
86
 
86
87
  ## Installation & Configuration
87
88
 
@@ -112,6 +112,7 @@ netbox_dns/migrations/0023_disable_ptr_false.py
112
112
  netbox_dns/migrations/0024_tenancy.py
113
113
  netbox_dns/migrations/0024_zonetemplate_parental_agents.py
114
114
  netbox_dns/migrations/0025_ipam_coupling_cf.py
115
+ netbox_dns/migrations/0025_remove_zone_inline_signing_and_more.py
115
116
  netbox_dns/migrations/0026_domain_registration.py
116
117
  netbox_dns/migrations/0027_alter_registrar_iana_id.py
117
118
  netbox_dns/migrations/0028_rfc2317_fields.py
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "netbox-plugin-dns"
3
- version = "1.4.0"
3
+ version = "1.4.2"
4
4
  description = "NetBox DNS is a NetBox plugin for managing DNS data."
5
5
  authors = [
6
6
  {name="Peter Eckel", email="pete@netbox-dns.org"},