Distributed Name Service (DNS) Management Programming Manual
DNS Programming Example, C
46958 Tandem Computers Incorporated H–5
if (status = SSINIT((short *) &req_buf
 , ZDNS_VAL_BUFLEN
 , (short *) &dns_ssid
 , ZSPI_VAL_CMDHDR
 , ZSPI_CMD_GETVERSION
 , 0
 , 0
 , true))
 {
 /*----------------------------------------*/
 /* SSINIT error; close file and return */
 /*----------------------------------------*/
 close(*file_desc);
 *file_desc = -1;
 return dns_return(spi_err, status);
 }
/*---------------------------------------------*/
/* Send GETVERSION request to the name manager */
/*---------------------------------------------*/
send_result = dns_send(*file_desc, &req_buf, &resp_buf, false);
if (send_result.err_class != no_err)
 {
 /*-------------------------------*/
 /* DNS_SEND encountered an error */
 /*-------------------------------*/
 close(*file_desc);
 *file_desc = -1;
 return send_result;
 }
/*---------------------------------------*/
/* Retrieve RETCODE from response buffer */
/*---------------------------------------*/
if (status = SSGETTKN((short *) &resp_buf
 , ZSPI_TKN_RETCODE
 , (char *) &retcode))
 {
 /*---------------------------------------------------*/
 /* Error getting RETCODE; close manager and return */
 /*---------------------------------------------------*/
 close(*file_desc);
 *file_desc = -1;
 return dns_return(spi_err, status);
 }
/*----------------------------------------------*/
/* Retrieve SERVER VERSION from response buffer */
/*----------------------------------------------*/










