summaryrefslogtreecommitdiffstats
path: root/src/providers/dp_dyndns.h
diff options
context:
space:
mode:
authorJakub Hrozek <jhrozek@redhat.com>2013-04-09 14:20:28 +0200
committerJakub Hrozek <jhrozek@redhat.com>2013-05-03 20:22:37 +0200
commit04868f1573f4b26ef34610b6d7069172f93bd8ab (patch)
tree25585171d9bfde286ffbd0add7a2fad64240e6ed /src/providers/dp_dyndns.h
parent9cb46bc62f22e0104f1b41a423b014c281ef5fc2 (diff)
downloadsssd-04868f1573f4b26ef34610b6d7069172f93bd8ab.tar.gz
sssd-04868f1573f4b26ef34610b6d7069172f93bd8ab.tar.xz
sssd-04868f1573f4b26ef34610b6d7069172f93bd8ab.zip
Convert IPA-specific options to be back-end agnostic
This patch introduces new options for dynamic DNS updates that are not specific to any back end. The current ipa dyndns options are still usable, just with a deprecation warning.
Diffstat (limited to 'src/providers/dp_dyndns.h')
-rw-r--r--src/providers/dp_dyndns.h24
1 files changed, 24 insertions, 0 deletions
diff --git a/src/providers/dp_dyndns.h b/src/providers/dp_dyndns.h
index b0020560a..95403a3ae 100644
--- a/src/providers/dp_dyndns.h
+++ b/src/providers/dp_dyndns.h
@@ -22,12 +22,34 @@
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
+
+#ifndef DP_DYNDNS_H_
+#define DP_DYNDNS_H_
+
/* dynamic dns helpers */
struct sss_iface_addr;
+struct be_nsupdate_ctx {
+ struct dp_option *opts;
+};
+
+enum dp_dyndns_opts {
+ DP_OPT_DYNDNS_UPDATE,
+ DP_OPT_DYNDNS_IFACE,
+ DP_OPT_DYNDNS_TTL,
+
+ DP_OPT_DYNDNS /* attrs counter */
+};
+
#define DYNDNS_REMOVE_A 0x1
#define DYNDNS_REMOVE_AAAA 0x2
+errno_t be_nsupdate_check(void);
+
+errno_t
+be_nsupdate_init(TALLOC_CTX *mem_ctx, struct be_ctx *be_ctx,
+ struct dp_option *defopts, struct be_nsupdate_ctx **ctx);
+
errno_t
sss_iface_addr_list_get(TALLOC_CTX *mem_ctx, const char *ifname,
struct sss_iface_addr **_addrlist);
@@ -66,3 +88,5 @@ struct tevent_req * nsupdate_get_addrs_send(TALLOC_CTX *mem_ctx,
errno_t nsupdate_get_addrs_recv(struct tevent_req *req,
TALLOC_CTX *mem_ctx,
char ***_addrlist);
+
+#endif /* DP_DYNDNS_H_ */