{"id":20434393,"url":"https://github.com/centralnicgroup-opensource/net-dns-abstract","last_synced_at":"2025-06-29T04:42:13.421Z","repository":{"id":3560369,"uuid":"4621816","full_name":"centralnicgroup-opensource/Net-DNS-Abstract","owner":"centralnicgroup-opensource","description":"Net::DNS interface to several DNS backends via API","archived":false,"fork":false,"pushed_at":"2022-07-04T13:14:23.000Z","size":160,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":10,"default_branch":"master","last_synced_at":"2025-03-05T06:31:57.676Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"http://metacpan.org/release/Net-DNS-Abstract/","language":"Perl","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/centralnicgroup-opensource.png","metadata":{"files":{"readme":"README.pod","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2012-06-11T06:44:45.000Z","updated_at":"2023-10-06T14:42:36.000Z","dependencies_parsed_at":"2022-07-28T22:28:53.604Z","dependency_job_id":null,"html_url":"https://github.com/centralnicgroup-opensource/Net-DNS-Abstract","commit_stats":null,"previous_names":[],"tags_count":31,"template":false,"template_full_name":null,"purl":"pkg:github/centralnicgroup-opensource/Net-DNS-Abstract","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/centralnicgroup-opensource%2FNet-DNS-Abstract","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/centralnicgroup-opensource%2FNet-DNS-Abstract/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/centralnicgroup-opensource%2FNet-DNS-Abstract/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/centralnicgroup-opensource%2FNet-DNS-Abstract/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/centralnicgroup-opensource","download_url":"https://codeload.github.com/centralnicgroup-opensource/Net-DNS-Abstract/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/centralnicgroup-opensource%2FNet-DNS-Abstract/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":262538611,"owners_count":23325813,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-15T08:26:22.465Z","updated_at":"2025-06-29T04:42:13.370Z","avatar_url":"https://github.com/centralnicgroup-opensource.png","language":"Perl","funding_links":[],"categories":[],"sub_categories":[],"readme":"=pod\n\n=encoding UTF-8\n\n=head1 NAME\n\nNet::DNS::Abstract - Net::DNS interface to several DNS backends via API\n\n=head1 VERSION\n\nversion 3.3\n\n=head1 SYNOPSIS\n\nNet::DNS is the de-facto standard and battle tested perl DNS\nimplementation. Unfortunately we don't intercat with DNS via DNS\nprotocols but via 3rd party abstration layers that have all sorts of\nquirks. We try to provide one unified interface here.\n\n=head1 ATTRIBUTES\n\n=head2 debug\n\n=head2 domain\n\nthe domain as a punycode string of the underlaying zone (required)\n\n=head2 zone\n\nthe Net::DNS::Packet object of the underlaying zone including a subtype\nto convert between formats to Net::DNS\n\n=head2 interface\n\ndefines the interface plugin to load (required)\n\n=head1 SUBROUTINES/METHODS\n\n=head2 axfr\n\nDo a zone transfer (actually poll a zone from a 3rd party provider) and\nreturn a Net::DNS::Packet objects.\n\n    axfr(['ns1.provider.net'])\n\n=head2 update\n\nUpdate a DNS zone via the respective backend plugin. This function takes\na Net::DNS update object and pushes it through to the backend plugin to\nprocess it.\n\n=head2 create\n\nCreate a new zone in a DNS backend\n\n=head2 delete\n\nDelete a zone from a DNS backend\n\n=head2 to_string\n\nConverts a Net::DNS object into a flat zonefile without comments and\nempty lines. This is an alternative to calling $nda-\u003estring\n\nThis function returns a zonefile string\n\n=head2 string_eq\n\nOverloading endpoint for string comparison of two Net::DNS::Abstract\nobjects\n\nThis function returns a zonefile string\n\n=head2 to_hash\n\nConvert a Net::DNS object into our normalized format\n\nReturns: our normalized format as HASHREF or undef on error\n\n=head2 log\n\nprint log message to STDERR including this module's name\n\nReturns: nothing\n\n=head2 sanitise_zone\n\nSanitise a zone. This should always be called explicitly if you think\nthe zone could contain duplicate records. this is normally not necessary\nbut converting between formats of zone representations can trigger\nunwanted results like multiple NS records.\n\n=head1 AUTHOR\n\nLenz Gschwendtner \u003clenz@ideegeo.com\u003e\n\n=head1 COPYRIGHT AND LICENSE\n\nThis software is copyright (c) 2013 by ideegeo Group Limited.\n\nThis is free software; you can redistribute it and/or modify it under\nthe same terms as the Perl 5 programming language system itself.\n\n=cut\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcentralnicgroup-opensource%2Fnet-dns-abstract","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcentralnicgroup-opensource%2Fnet-dns-abstract","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcentralnicgroup-opensource%2Fnet-dns-abstract/lists"}