Method code for $smtp.set_timeout()

[Turn on line numbering]
arg c, timeout;
var task;

task = (| timeouts[task_id()] |);
if (task)
    (| $scheduler.del_task(task) |);
if (timeout) {
    task = $scheduler.add_task(timeout, 'timeout, [c]);
    timeouts = dict_add(timeouts || #[], task_id(), task);
} else if (dict_contains(timeouts || #[], task_id())) {
    timeouts = dict_del(timeouts, task_id());
}

// Created 13-Oct-1996 as a part of ColdCore, see: @help Credit

Tlon