Better way to detect the broadcast message.

This commit is contained in:
codestation
2013-11-05 20:10:09 -04:30
parent 2e745a75de
commit 84289bd5ac
2 changed files with 5 additions and 5 deletions

View File

@@ -37,8 +37,8 @@ const QString CmaBroadcast::broadcast_reply =
"host-wireless-protocol-version:%7\r\n" "host-wireless-protocol-version:%7\r\n"
"host-supported-device:PS Vita, PS Vita TV\r\n"; "host-supported-device:PS Vita, PS Vita TV\r\n";
const char *CmaBroadcast::broadcast_query_01 = "SRCH * HTTP/1.1\r\n"; const char *CmaBroadcast::broadcast_query_start = "SRCH";
const char *CmaBroadcast::broadcast_query_02 = "SRCH3 * HTTP/1.1\r\n"; const char *CmaBroadcast::broadcast_query_end = " * HTTP/1.1\r\n";
const char *CmaBroadcast::broadcast_ok = "HTTP/1.1 200 OK"; const char *CmaBroadcast::broadcast_ok = "HTTP/1.1 200 OK";
const char *CmaBroadcast::broadcast_unavailable = "HTTP/1.1 503 NG"; const char *CmaBroadcast::broadcast_unavailable = "HTTP/1.1 503 NG";
@@ -73,7 +73,7 @@ void CmaBroadcast::readPendingDatagrams()
socket->readDatagram(datagram.data(), datagram.size(), &sender, &senderPort); socket->readDatagram(datagram.data(), datagram.size(), &sender, &senderPort);
if(datagram.contains(broadcast_query_01) || datagram.contains(broadcast_query_02)) { if(datagram.startsWith(broadcast_query_start) && datagram.contains(broadcast_query_end)) {
QMutexLocker locker(&mutex); QMutexLocker locker(&mutex);
socket->writeDatagram(reply, sender, senderPort); socket->writeDatagram(reply, sender, senderPort);
} else { } else {

View File

@@ -42,8 +42,8 @@ private:
QUdpSocket *socket; QUdpSocket *socket;
static const QString broadcast_reply; static const QString broadcast_reply;
static const char *broadcast_query_01; static const char *broadcast_query_start;
static const char *broadcast_query_02; static const char *broadcast_query_end;
static const char *broadcast_ok; static const char *broadcast_ok;
static const char *broadcast_unavailable; static const char *broadcast_unavailable;