Distributed Name Service (DNS) Management Programming Manual
DNS Programming Example, C
46958 Tandem Computers Incorporated H–13
done = true;
else
if (retcode)
/*--------------------------------*/
/* Name manager returned an error */
/*--------------------------------*/
return dns_return(dns_err, retcode);
if (! done)
{
/*-------------------------------------------------*/
/* Not finished yet; get BR token into CANDIDATE */
/*-------------------------------------------------*/
if (status = SSGET((short *) &resp_buf
, (short *) &zdns_map_info_name_br
, (char *) &candidate
, 1))
return dns_return(spi_err, status);
match = false;
if ((mask << candidate.zdnstype) < 0l)
/*-----------------------------------------*/
/* This name is one that we're looking for */
/*-----------------------------------------*/
match = true;
else
if ((candidate.zdnstype == ZDNS_OBJ_ALIAS) &
((mask << candidate.zreftype) < 0l))
{
/*---------------------------------------------------*/
/* This is an alias whose referent is of a type that */
/* we're looking for */
/*---------------------------------------------------*/
result = dns_lookup_alias(file_desc
, (char *) &candidate.zdnsname
, (char *) &candidate.zdefnode
, &alias_br
, &alias_dr
, &status);
if (result.err_class)
/*---------------------------------------*/
/* DNS_LOOKUP_ALIAS encountered an error */
/*---------------------------------------*/
return result;