Решение проблемы генерации конфигурационных файлов для IP-телефонов через TFTP-сервер

Существует код на Node.js, который генерирует XML-файл с настройками для IP-телефонов и раздает его через TFTP-сервер. Однако при попытке скачать файл возникает ошибка в логах сервера о том, что файл не найден, а телефон не видит конфигурацию.

Исходный код сервера

Используются библиотеки tftp и xmlbuilder:

const tftp = require('tftp');
const builder = require('xmlbuilder');

const server = tftp.createServer({
  host: '0.0.0.0',
  port: 69,
});

server.on('request', function (req, res){
  const root = builder.create('flat-profile');
  root.ele('Provision_Enable', 'Yes');
  root.ele('Resync_On_Reset', 'Yes');
  root.ele('Resync_Periodic', 3600);
  root.ele('Profile_Rule', 'tftp://192.168.1.100/spa$PSN.cfg');
  const xmlString = root.end({pretty: true});
  const data = Buffer.from(xmlString);
  res.setSize(data.length);
  res.write(data);
  res.end();
});

server.listen();

Проблема

При выполнении команды tftp 192.168.1.100 -c get config.xml файл генерируется и скачивается, но в логах сервера фиксируется ошибка "файл не найден". Телефон при этом не получает конфигурационный файл.

Вопрос

Как настроить сервер так, чтобы он возвращал сгенерированный в памяти файл, а не пытался найти его в файловой системе папки?