diff options
author | Javier <dev.git@javispedro.com> | 2015-12-24 19:04:04 +0100 |
---|---|---|
committer | Javier <dev.git@javispedro.com> | 2015-12-24 19:04:04 +0100 |
commit | 14d20babe395e52d220bbc27e91cec2fddd1ed0f (patch) | |
tree | 4cd71caf6b0b8a8e4be7d4d3fb1306536a726346 /sappeer.cc | |
parent | 309947a4316a94f4c5d43c9b39b733cc3bbab459 (diff) | |
download | sapd-14d20babe395e52d220bbc27e91cec2fddd1ed0f.tar.gz sapd-14d20babe395e52d220bbc27e91cec2fddd1ed0f.zip |
still testing sap control flow
Diffstat (limited to 'sappeer.cc')
-rw-r--r-- | sappeer.cc | 22 |
1 files changed, 13 insertions, 9 deletions
@@ -132,7 +132,6 @@ CapabilityPeer *SAPPeer::capabilityPeer() void SAPPeer::writeDataToSession(int session, const QByteArray &data) { - qDebug() << "frame size" << data.size(); sendFrame(SAProtocol::packFrame(session, data, SAProtocol::FrameData)); } @@ -141,14 +140,6 @@ void SAPPeer::writeControlToSession(int session, const QByteArray &data) sendFrame(SAProtocol::packFrame(session, data, SAProtocol::FrameControl)); } -void SAPPeer::writeAckToSession(int session, int seqNum) -{ - SAProtocol::ControlFrame frame; - frame.type = SAProtocol::ControlFrameBlockAck; - frame.seqNum = seqNum; - writeControlToSession(session, SAProtocol::packControlFrame(frame)); -} - void SAPPeer::acceptServiceConnection(SAPConnectionRequest *connReq, int statusCode) { SAPConnection *conn = connReq->connection(); @@ -206,6 +197,17 @@ void SAPPeer::handleSessionData(int session, const QByteArray &data) } } +void SAPPeer::handleSessionControl(int session, const QByteArray &data) +{ + // Default session ID should not receive control messages, so we don't check for it + SAPSocket *socket = _sessions.value(session, 0); + if (socket && socket->isOpen()) { + socket->acceptIncomingControl(data); + } else { + qWarning() << "Got information for a session that's not yet open!" << session; + } +} + void SAPPeer::handleConnected() { emit connected(); @@ -301,6 +303,8 @@ void SAPPeer::handleDefaultSessionMessage(const QByteArray &message) _sessions.insert(s.sessionId, socket); } + _conns.insert(req.profile, conn); + SAPConnectionRequest *connReq = new SAPConnectionRequest(conn, req.initiatorId, req.acceptorId); agent->requestConnection(connReq); |