9525b14bcdeb5b5f6f95ab27c2f48f18bd2ec829Rao Shoaib/*
9525b14bcdeb5b5f6f95ab27c2f48f18bd2ec829Rao Shoaib * Copyright 2009 Sun Microsystems, Inc. All rights reserved.
9525b14bcdeb5b5f6f95ab27c2f48f18bd2ec829Rao Shoaib * Use is subject to license terms.
9525b14bcdeb5b5f6f95ab27c2f48f18bd2ec829Rao Shoaib */
9525b14bcdeb5b5f6f95ab27c2f48f18bd2ec829Rao Shoaib
9525b14bcdeb5b5f6f95ab27c2f48f18bd2ec829Rao Shoaib#ifndef _ARPA_PORT_NAMESER_H
9525b14bcdeb5b5f6f95ab27c2f48f18bd2ec829Rao Shoaib#define _ARPA_PORT_NAMESER_H
9525b14bcdeb5b5f6f95ab27c2f48f18bd2ec829Rao Shoaib
9525b14bcdeb5b5f6f95ab27c2f48f18bd2ec829Rao Shoaib/*
9525b14bcdeb5b5f6f95ab27c2f48f18bd2ec829Rao Shoaib * ISC changed the ns_updrec structure. However, it's a public interface
9525b14bcdeb5b5f6f95ab27c2f48f18bd2ec829Rao Shoaib * in Solaris, so we rename it here and wrap in sunw_updrec.c
9525b14bcdeb5b5f6f95ab27c2f48f18bd2ec829Rao Shoaib */
9525b14bcdeb5b5f6f95ab27c2f48f18bd2ec829Rao Shoaib#define ns_updrec __ISC_ns_updrec
9525b14bcdeb5b5f6f95ab27c2f48f18bd2ec829Rao Shoaib
9525b14bcdeb5b5f6f95ab27c2f48f18bd2ec829Rao Shoaib
9525b14bcdeb5b5f6f95ab27c2f48f18bd2ec829Rao Shoaib/*
9525b14bcdeb5b5f6f95ab27c2f48f18bd2ec829Rao Shoaib * Due to the above, the following functions need to be renamed and
9525b14bcdeb5b5f6f95ab27c2f48f18bd2ec829Rao Shoaib * wrapped in sunw_updrec.c.
9525b14bcdeb5b5f6f95ab27c2f48f18bd2ec829Rao Shoaib *
9525b14bcdeb5b5f6f95ab27c2f48f18bd2ec829Rao Shoaib * For BIND 8.2.2, ISC removed the dynamic update functions, and the
9525b14bcdeb5b5f6f95ab27c2f48f18bd2ec829Rao Shoaib * definition of the ns_updrec structure, from the public include files
9525b14bcdeb5b5f6f95ab27c2f48f18bd2ec829Rao Shoaib * (<resolv.h>, <arpa/nameser.h>. However, res_update(), res_mkupdate(),
9525b14bcdeb5b5f6f95ab27c2f48f18bd2ec829Rao Shoaib * and res_mkupdrec() are in the public libresolv interface in Solaris,
9525b14bcdeb5b5f6f95ab27c2f48f18bd2ec829Rao Shoaib * so we can't easily remove them. Thus, ISC's new versions of res_mkupdate()
9525b14bcdeb5b5f6f95ab27c2f48f18bd2ec829Rao Shoaib * etc. can't be exposed under their original names.
9525b14bcdeb5b5f6f95ab27c2f48f18bd2ec829Rao Shoaib *
9525b14bcdeb5b5f6f95ab27c2f48f18bd2ec829Rao Shoaib * res_nmkupdate() and res_nupdate are new. We could either change them
9525b14bcdeb5b5f6f95ab27c2f48f18bd2ec829Rao Shoaib * to accept the <arpa/nameser.h> ns_updrec, or leave them unchanged and
9525b14bcdeb5b5f6f95ab27c2f48f18bd2ec829Rao Shoaib * undocumented. Since ISC may change ns_updrec again, we pick the latter
9525b14bcdeb5b5f6f95ab27c2f48f18bd2ec829Rao Shoaib * solution for now.
9525b14bcdeb5b5f6f95ab27c2f48f18bd2ec829Rao Shoaib */
9525b14bcdeb5b5f6f95ab27c2f48f18bd2ec829Rao Shoaib#define res_mkupdate __ISC_res_mkupdate
9525b14bcdeb5b5f6f95ab27c2f48f18bd2ec829Rao Shoaib#define res_update __ISC_res_update
9525b14bcdeb5b5f6f95ab27c2f48f18bd2ec829Rao Shoaib#define res_mkupdrec __ISC_res_mkupdrec
9525b14bcdeb5b5f6f95ab27c2f48f18bd2ec829Rao Shoaib#define res_freeupdrec __ISC_res_freeupdrec
9525b14bcdeb5b5f6f95ab27c2f48f18bd2ec829Rao Shoaib#define res_nmkupdate __ISC_res_nmkupdate
9525b14bcdeb5b5f6f95ab27c2f48f18bd2ec829Rao Shoaib#define res_nupdate __ISC_res_nupdate
9525b14bcdeb5b5f6f95ab27c2f48f18bd2ec829Rao Shoaib
9525b14bcdeb5b5f6f95ab27c2f48f18bd2ec829Rao Shoaib
9525b14bcdeb5b5f6f95ab27c2f48f18bd2ec829Rao Shoaib#endif /* _ARPA_PORT_NAMESER_H */