When originating a session, send anything received via the queue

This commit is contained in:
2023-11-22 21:04:58 +11:00
parent 7847728e52
commit e5de4970d1
6 changed files with 27 additions and 17 deletions

View File

@@ -976,11 +976,12 @@ final class EMSI extends BaseProtocol implements CRCInterface,ZmodemInterface
* @return int
* @throws \Exception
*/
protected function protocol_session(): int
protected function protocol_session(bool $force_queue=FALSE): int
{
// @todo introduce emsi_init() to perform the job of protocol_init. Only needs to be done when we originate a session
Log::debug(sprintf('%s:+ Starting EMSI Protocol SESSION',self::LOGKEY));
$this->force_queue = $force_queue;
$was_req = 0;
$got_req = 0;
@@ -1189,7 +1190,7 @@ final class EMSI extends BaseProtocol implements CRCInterface,ZmodemInterface
Log::debug(sprintf('%s:+ Start WAZOO Receive',self::LOGKEY));
// @todo If the node is not defined in the DB node->address is NULL. Need to figure out how to handle those nodes.
$rc = (new Zmodem)->zmodem_receive($this->client,$zap,$this->recv,$this->node->address);
$rc = (new Zmodem)->zmodem_receive($this->client,$zap,$this->recv,$this->node->address,$this->force_queue);
return ($rc === self::RCDO || $rc === self::ERROR);
}