Distributed Name Service (DNS) Management Programming Manual
DNS Programming Example, TAL
G–6 46958 Tandem Computers Incorporated
 !
 ! Open was unsuccessful, get the file management error number.
 !
 CALL fileinfo(-1, status);
 !
 ! Return open error.
 !
 RETURN dns^openerr(status);
 END;
!
! Initialize REQ^BUF for GETVERSION command.
!
IF (status := ssinit(req^buf
 , zdns^val^buflen
 , dns^ssid
 , zspi^val^cmdhdr
 , zspi^cmd^getversion
 , zdns^obj^dns
 ,
 ,
 , true))
THEN
 BEGIN
 !
 ! Couldn't do it; close the manager and return SPI error.
 !
 CALL close(fno);
 RETURN dns^spierr(status);
 END;
!
! Send the GETVERSION request to the name manager.
!
IF (result := dns^send(fno, req^buf, resp^buf, false)) <> 0d THEN
 BEGIN
 !
 ! Some sort of error; close the manager and return.
 !
 CALL close(fno);
 RETURN result;
 END;
!
! Get RETCODE.
!
IF (status := ssgettkn(resp^buf, zspi^tkn^retcode, retcode)) THEN
 BEGIN










