summaryrefslogtreecommitdiff
path: root/sappeer.cc
diff options
context:
space:
mode:
authorJavier <dev.git@javispedro.com>2015-12-24 19:04:04 +0100
committerJavier <dev.git@javispedro.com>2015-12-24 19:04:04 +0100
commit14d20babe395e52d220bbc27e91cec2fddd1ed0f (patch)
tree4cd71caf6b0b8a8e4be7d4d3fb1306536a726346 /sappeer.cc
parent309947a4316a94f4c5d43c9b39b733cc3bbab459 (diff)
downloadsapd-14d20babe395e52d220bbc27e91cec2fddd1ed0f.tar.gz
sapd-14d20babe395e52d220bbc27e91cec2fddd1ed0f.zip
still testing sap control flow
Diffstat (limited to 'sappeer.cc')
-rw-r--r--sappeer.cc22
1 files changed, 13 insertions, 9 deletions
diff --git a/sappeer.cc b/sappeer.cc
index 960e515..7f570eb 100644
--- a/sappeer.cc
+++ b/sappeer.cc
@@ -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);