:: cache-message ( MSG -- msg ) MSG rcode>> NAME-ERROR = [ [let | NAME [ MSG message-query name>> ] TTL [ MSG message-soa ttl>> ] | NAME TTL cache-non-existent-name ] ] when MSG answer-section>> [ cache-add ] each MSG authority-section>> [ cache-add ] each MSG additional-section>> [ cache-add ] each ;