dp_dyndns.h revision 038b9ba28a618e3e553803da632116a040b94034
b53688bfed888214b485cf76439d57262d80e0a7Christian Maeder Jakub Hrozek <jhrozek@redhat.com>
b53688bfed888214b485cf76439d57262d80e0a7Christian Maeder Copyright (C) 2013 Red Hat
b53688bfed888214b485cf76439d57262d80e0a7Christian Maeder This program is free software; you can redistribute it and/or modify
f3a94a197960e548ecd6520bb768cb0d547457bbChristian Maeder it under the terms of the GNU General Public License as published by
b53688bfed888214b485cf76439d57262d80e0a7Christian Maeder the Free Software Foundation; either version 3 of the License, or
b53688bfed888214b485cf76439d57262d80e0a7Christian Maeder (at your option) any later version.
109a53dbf4c9233f869f63ba7a7f3fece49973c3Christian Maeder This program is distributed in the hope that it will be useful,
109a53dbf4c9233f869f63ba7a7f3fece49973c3Christian Maeder but WITHOUT ANY WARRANTY; without even the implied warranty of
0a26144c20fa9cdcd05011ca5019cbac8e4afae0cmaeder MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
0a26144c20fa9cdcd05011ca5019cbac8e4afae0cmaeder GNU General Public License for more details.
93603bd881e43d4ff5a57d7ca4e2b9fa619f25b4cmaeder You should have received a copy of the GNU General Public License
d1c667fd9445963d9d31e2cf5d0ead15e77082a4cmaeder along with this program. If not, see <http://www.gnu.org/licenses/>.
109a53dbf4c9233f869f63ba7a7f3fece49973c3Christian Maeder/* dynamic dns helpers */
109a53dbf4c9233f869f63ba7a7f3fece49973c3Christian Maedertypedef void (*nsupdate_timer_fn_t)(void *pvt);
3a9d784341454573b50b32fa1b494e7418df3086Christian Maederbe_nsupdate_init(TALLOC_CTX *mem_ctx, struct be_ctx *be_ctx,
9d6562465b41f17c7967d4e5678f34811d958cb2Christian Maedererrno_t be_nsupdate_init_timer(struct be_nsupdate_ctx *ctx,
7f7460e7095628f3437b116ee78d3043d11f8febChristian Maedervoid be_nsupdate_timer_schedule(struct tevent_context *ev,
b53688bfed888214b485cf76439d57262d80e0a7Christian Maedersss_iface_addr_list_get(TALLOC_CTX *mem_ctx, const char *ifname,
38c817b94e0a5b1ae94178b1075c187e07bcc5e1Christian Maedersss_iface_addr_add(TALLOC_CTX *mem_ctx, struct sss_iface_addr **list,
4eb859461f8fd904f40f57261cf23e5c73cf8ecaChristian Maedersss_iface_addr_list_as_str_list(TALLOC_CTX *mem_ctx,
b53688bfed888214b485cf76439d57262d80e0a7Christian Maederbe_nsupdate_create_fwd_msg(TALLOC_CTX *mem_ctx, const char *realm,
b53688bfed888214b485cf76439d57262d80e0a7Christian Maeder const char *hostname, const unsigned int ttl,
b53688bfed888214b485cf76439d57262d80e0a7Christian Maeder uint8_t remove_af, struct sss_iface_addr *addresses,
8c8545dd3bf34fbcbc16904b65d249658f8f9efcChristian Maederbe_nsupdate_create_ptr_msg(TALLOC_CTX *mem_ctx, const char *realm,
b53688bfed888214b485cf76439d57262d80e0a7Christian Maeder const char *servername, const char *hostname,
dff1de7ad15d1582e25d636c3724dd202874897fChristian Maeder * * ERR_OK - on success
b53688bfed888214b485cf76439d57262d80e0a7Christian Maeder * * ERR_DYNDNS_FAILED - if nsupdate fails for any reason
cb2044812811d66efe038d914966e04290be93faChristian Maeder * * ERR_DYNDNS_TIMEOUT - if the update times out. child_status
b53688bfed888214b485cf76439d57262d80e0a7Christian Maeder * is ETIMEDOUT in this case
dff1de7ad15d1582e25d636c3724dd202874897fChristian Maederstruct tevent_req *be_nsupdate_send(TALLOC_CTX *mem_ctx,
b324cda6178c49ddeead3ce62b832ccf644cbcabRazvan Pascanuerrno_t be_nsupdate_recv(struct tevent_req *req, int *child_status);
bc263f610d20a9cd3014ddfca903026127fa0d48Christian Maederstruct tevent_req * nsupdate_get_addrs_send(TALLOC_CTX *mem_ctx,
0b13f102310e03a20b38c870b5acb88712f316a4Christian Maedernsupdate_get_addrs_recv(struct tevent_req *req,
d4ebd9e5adc974cfa2bdf4bdd155e07be0e26f75Christian Maedersss_iface_addr_concatenate(struct sss_iface_addr **list,
0d79ea4ed8512a802ecb6645edac141e0fbcee3fChristian Maeder#endif /* DP_DYNDNS_H_ */