Nico Vertriest [Fri, 28 Feb 2014 11:31:13 +0000 (12:31 +0100)]
Doc: Review documentation Qt WebSockets
Task-number: QTBUG-37149
Change-Id: Ia8fe7b11140d31bc231a17bfcc16887f3af0dbce
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
Kurt Pattyn [Sun, 9 Mar 2014 11:33:26 +0000 (12:33 +0100)]
Fix documentation warnings
Change-Id: I5790460aab2377144d041c5b2a75ae0208ec5c00
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Kurt Pattyn [Sun, 16 Feb 2014 12:53:29 +0000 (13:53 +0100)]
Fix Google Chrome connection problem
Task-number: QTBUG-36757
Change-Id: I6a802e93e28b6281fe03aacf001897003310a027
Reviewed-by: Peter Hartmann <phartmann@blackberry.com>
Sergio Ahumada [Sat, 1 Mar 2014 16:10:22 +0000 (17:10 +0100)]
Make the constructor explicit
Change-Id: I6dcd225de9fee909c4cd1afa70938c2eb7ff819a
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Sergio Ahumada [Sat, 1 Mar 2014 16:16:43 +0000 (17:16 +0100)]
Use const & for your foreach variables
Change-Id: I6096111284f02f07e1e7864b8795236563d4f6c1
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Sergio Ahumada [Sat, 1 Mar 2014 16:22:51 +0000 (17:22 +0100)]
Prefer to use normalised signal/slot signatures
Change-Id: I92322fc3404795bea8442b9b849564d5cd39b367
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Sergio Ahumada [Fri, 28 Feb 2014 14:29:20 +0000 (15:29 +0100)]
Add .tag file and the git-archive export options
The .gitattributes and .gitignore files do not need to be present in
packaged sources, as they are for people using the Git repository.
Change-Id: I37f69ce0dfbc25592c149118137398f96cdeb117
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Jerome Pasion [Fri, 21 Feb 2014 09:50:13 +0000 (10:50 +0100)]
Doc: Fixed missing line separators in qdocconf file.
-needed to get the documentation to build.
Task-number: QTBUG-33360
Change-Id: Ifed61ebb39843936ac3e350f26f6accffda78318
Reviewed-by: Martin Smith <martin.smith@digia.com>
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Kurt Pattyn [Sun, 16 Feb 2014 13:03:04 +0000 (14:03 +0100)]
Remove superfluous setProtocol call
Change-Id: I14f16bbe0a68602265a28d71464727b671be5099
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Kurt Pattyn [Sun, 16 Feb 2014 13:01:28 +0000 (14:01 +0100)]
Catch SSL errors in example
Change-Id: Ib9a399789878030361d9bdddd8dbfbb1832cf756
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Kurt Pattyn [Sun, 16 Feb 2014 12:59:29 +0000 (13:59 +0100)]
Mark html page as being utf-8
FireFox complained when opening the page without proper indication of the
encoding.
Change-Id: I4f0891699c72d46bcf0cd488e2ecaf095514fabc
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Kurt Pattyn [Sun, 16 Feb 2014 11:24:41 +0000 (12:24 +0100)]
Fix non-strict warning from AutoBahn
When the reserved bits were set to 3, then the connection was aborted.
No a close message is sent before the connection is closed.
Change-Id: Iab365a4720c6588e5c6ac73813f63d26c3312265
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Sergio Ahumada [Fri, 14 Feb 2014 20:43:32 +0000 (21:43 +0100)]
Rename websockets.pro -> qtwebsockets.pro
Change-Id: Ia42316304a37d151b678a9922071bbb090ec87b5
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Kurt Pattyn [Fri, 14 Feb 2014 12:16:34 +0000 (13:16 +0100)]
Adapt copyright header
Change-Id: I9773492d3673d8aabdb4dd178be6af12eca7ba74
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Kurt Pattyn [Wed, 12 Feb 2014 14:17:58 +0000 (15:17 +0100)]
Add user configurable mask generation
Created a QMaskGenerator abstract base class to serve as a basis for
user specific mask generators. Added the possibility to override the
default mask generation in QWebSocket.
Change-Id: Iaa02b44193f854d103b5f352617789175fe61f89
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Kurt Pattyn [Thu, 13 Feb 2014 21:00:27 +0000 (22:00 +0100)]
Fix multiple emission of received signals
Task-number: QTBUG-36762
Change-Id: I239bdd06252fb90056a687ace8540bb91b0055a1
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Kurt Pattyn [Thu, 13 Feb 2014 21:38:02 +0000 (22:38 +0100)]
Use queued connection for readyRead connection
Task-number: QTBUG-36757
Change-Id: I4358563d52ecbff7b7e1575c5d34cef30b5fcd52
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Kurt Pattyn [Thu, 13 Feb 2014 21:05:26 +0000 (22:05 +0100)]
Remove checks on return value of sendXXX methods
Change-Id: If70aa381e377b832f0b44af97e19abf98f3941eb
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Jędrzej Nowacki [Tue, 11 Feb 2014 09:21:36 +0000 (10:21 +0100)]
Simplify simple chat example
Change-Id: Ia4e6973e6531017129ae39c89851fbbf3ade76c4
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Kurt Pattyn [Mon, 10 Feb 2014 20:33:25 +0000 (21:33 +0100)]
Check on newline characters in origin and urls
New line characters (\r\n) in the resource part of a url and in the origin
string can be used to forge the http header and can lead to insertion of
unwanted header entries. This can be an indication of an attack,
so QWebSocket immediately refuses a connection.
Change-Id: I9cdb309bfbe7025ad675925e6ea3e038476a1fd6
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
Jędrzej Nowacki [Tue, 11 Feb 2014 09:14:12 +0000 (10:14 +0100)]
Simplify echoclient example
Change-Id: I773665754089c1f4548712df280289c77d45eba9
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Kurt Pattyn [Fri, 7 Feb 2014 17:47:43 +0000 (18:47 +0100)]
Re-enable QML component
Change-Id: I84948cf414585af841f3e669ddaf18b7a10fb22f
Reviewed-by: Milian Wolff <milian.wolff@kdab.com>
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
Kurt Pattyn [Sun, 9 Feb 2014 09:24:18 +0000 (10:24 +0100)]
Remove superfluous argument
Change-Id: I7fa01d47d66411572f3f66f4ed5d8df04ac6b8b0
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Kurt Pattyn [Fri, 7 Feb 2014 17:06:58 +0000 (18:06 +0100)]
Sanitize open() method
Removed the mask parameter because a web socket client does not have
a choice between masking and not masking.
Change-Id: I3c33acc235bb2a99476abb6201e6dbb6f881dd70
Reviewed-by: Milian Wolff <milian.wolff@kdab.com>
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Kurt Pattyn [Thu, 6 Feb 2014 18:58:09 +0000 (19:58 +0100)]
Connect sslErrors signal when a secure connection is established
Task-number: QTBUG-36676
Change-Id: Ia93751e5a972adf6434b0d749376e2a8c0619514
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Milian Wolff [Thu, 6 Feb 2014 17:02:04 +0000 (18:02 +0100)]
Fix tst_QWebSocket::tst_invalidOpen for catch-all DNS setups.
Instead of relying on a hostname which might still be resolved in
some DNS setups (i.e. always forward to google search or intranet),
we now try to connect to localhost port 1 which should yield a
ConnectionRefusedError.
This way, the test passes for me on my setup.
Change-Id: I025824796e94e718a42c4999706f647a72b37659
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Milian Wolff [Thu, 6 Feb 2014 16:48:28 +0000 (17:48 +0100)]
Do not double-delete the TCP socket of a QWebSocket.
The socket is put into an owning QScopedPointer. But if its also
put into the QObject parent-child chain, it will get deleted when
the QWebSocket is destroyed. In the dtor of the QWebSocketPrivate
class m_pSocket will thus already be destroyed and thus be a
dangling pointer.
This crashed the QWebSocketServer test reliably for me on exit.
Change-Id: I7f06e933bfed832e66b943542c351cde639c9465
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Milian Wolff [Thu, 6 Feb 2014 16:42:05 +0000 (17:42 +0100)]
Do not try to invoke/emit signal on shutdown.
I'm actually not sure whether this is the right way to do this,
but when the object is destroyed, we cannot delay the signal emit.
In that case, we just don't emit it at all. This is the old behavior
minus the warning:
QWARN : tst_QWebSocketServer::tst_initialisation()
QMetaObject::invokeMethod: No such method QObject::closed()
Change-Id: I0513dd693ef7bfc43621e24361e72e90204fbea3
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Milian Wolff [Thu, 6 Feb 2014 16:40:24 +0000 (17:40 +0100)]
Fix assertion when encountering invalid header line.
The server test sets an empty identifier which results in a
headerLine containing "Server: ". The split then yields a list
with a single entry ("Server"). Calling [1] on it asserts then.
QFATAL : tst_QWebSocketServer::tst_connectivity()
ASSERT failure in QList<T>::operator[]: "index out of range", file
/ssd/milian/projects/compiled/qt5/include/QtCore/qlist.h, line 476
Change-Id: I3e5c4750b304b2a4a5669a39e2d65a6b3e4e99cf
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Milian Wolff [Thu, 6 Feb 2014 16:30:55 +0000 (17:30 +0100)]
Do not access QObject API before its private data is initialized.
Inside the ctor of the private data, the QObject has not yet
been associated with the data. Thus, accessing it indirectly i.e.
to setup private signal/slot connections, will trigger crashes.
Now we delay accessing this API and call an init() function manually
in the parent QObject-inheriting class.
Change-Id: I2c3ce7335c54d42af6bce87de867ee0ef197efc6
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Milian Wolff [Thu, 6 Feb 2014 13:46:30 +0000 (14:46 +0100)]
Fix compilation of websocketprotocol test.
The versionFromString method must be exported for usage in the test.
Additionally, the metatype of the version enum must be declared.
Change-Id: I8e0aef28f9902f274cab43f772667ad5a93c4062
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Kurt Pattyn [Tue, 4 Feb 2014 11:29:40 +0000 (12:29 +0100)]
Use QObjectPrivate instead of dedicated d-ptr
Change-Id: I3f69a2b0ca81e1e003200bb8e0a337b9532e64a0
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Kurt Pattyn [Mon, 3 Feb 2014 00:34:46 +0000 (01:34 +0100)]
Replace delete loop with qDeleteAll
Change-Id: If63acc08307c0a411072a2a37ac52661e7e02594
Reviewed-by: Milian Wolff <milian.wolff@kdab.com>
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
Kurt Pattyn [Mon, 3 Feb 2014 00:40:33 +0000 (01:40 +0100)]
Remove superfluous Q_REQUIRED_RESULT
Change-Id: Ie4e01a82082c45918b55e8588c7322dd359ba8c1
Reviewed-by: Milian Wolff <milian.wolff@kdab.com>
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Kurt Pattyn [Sun, 2 Feb 2014 00:08:49 +0000 (01:08 +0100)]
Comment out QML component
Commented out QWebSocket QML component because there is
still discussion regarding its API.
Change-Id: I9a0699e19186f7e9761517fd127ac8a5263c745f
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
Kurt Pattyn [Sun, 2 Feb 2014 22:38:45 +0000 (23:38 +0100)]
Add cleanup to examples
Change-Id: I28b9007a6d35575b11a608645930fa2ed71e7c7c
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Kurt Pattyn [Sun, 2 Feb 2014 22:39:25 +0000 (23:39 +0100)]
Update documentation
Change-Id: I2fb9b20fc316b8b9ed0e1c0b52c4e44882d7f9d5
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Kurt Pattyn [Sun, 2 Feb 2014 17:36:33 +0000 (18:36 +0100)]
Add unit tests for QWebSocketServer
Change-Id: I9ca38aad22a757437943a72669b7ca2bb5db6b98
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Kurt Pattyn [Sun, 26 Jan 2014 17:18:11 +0000 (18:18 +0100)]
Add unit tests for QWebSocket
Added basic unit tests for QWebSocket. Connectivity is not tested yet.
Change-Id: I38d388d289733777e6ff0253e5b201aca99b0b10
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Kurt Pattyn [Sun, 2 Feb 2014 17:34:02 +0000 (18:34 +0100)]
Remove parenting of QWebSockets in QWebSocketServer
Because QWebSocketServer took ownership of QWebSocket objects,
the objects were double deleted, leading to crashes.
Change-Id: I51192daba8e8739bc68a94c7fe2a8a972ac9d38e
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Kurt Pattyn [Sun, 2 Feb 2014 17:25:42 +0000 (18:25 +0100)]
Check return value of listen and set appropriate error and description
Change-Id: I2309a51d873812cdc590b5d846a84024b6e28857
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Kurt Pattyn [Sun, 2 Feb 2014 17:22:15 +0000 (18:22 +0100)]
Add private method to set error from QAbstractSocket::error
Change-Id: I870006bbd5c788bea89f65d5bd25082d1543caf0
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Kurt Pattyn [Sun, 2 Feb 2014 17:40:31 +0000 (18:40 +0100)]
Correct include path
Change-Id: I7929337d16485a4ec9e95d1eb6037c84634b672f
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Kurt Pattyn [Sun, 2 Feb 2014 17:39:30 +0000 (18:39 +0100)]
Remove qWarning statements
Change-Id: I7132b8c9b15f625345ef092be3bc0ea466a12f8e
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Kurt Pattyn [Sun, 2 Feb 2014 17:38:19 +0000 (18:38 +0100)]
Update documentation
Change-Id: I35829436b3be543fd133cab58118e62ddfb0e291
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Kurt Pattyn [Sun, 26 Jan 2014 17:05:42 +0000 (18:05 +0100)]
Allow writes only when socket is in connected state
Change-Id: I3e265ccba334301444611a8013568ba52cca5bcd
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Kurt Pattyn [Sat, 25 Jan 2014 18:42:36 +0000 (19:42 +0100)]
Rename ProcessMessage to ProcessTextMessage
Renamed to ProcessTextMessage to be consistent with
ProcessBinaryMessage and with the method names in
the SslEchoServer example.
Change-Id: Iaaa732221597a08fca079e8df4df941d673d16a6
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Kurt Pattyn [Sun, 26 Jan 2014 17:04:05 +0000 (18:04 +0100)]
Adapt isValid to only return true when socket is in connected state
Changed isValid() to only return true when the socket is also in connected
state. Also updated the documentation.
Change-Id: Id80dbc1f28c82bef19984c5ed7b34a7d474ee011
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Kurt Pattyn [Sun, 26 Jan 2014 16:54:51 +0000 (17:54 +0100)]
Set default error and errorstring
Set the default error and error string to match those of QAbstractSocket.
Change-Id: I96277ecda1f56da4de7509a22bcab86df8064e7c
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
Kurt Pattyn [Sun, 26 Jan 2014 16:48:07 +0000 (17:48 +0100)]
Locally cache read buffer size and pause mode
When calling setReadBufferSize() and setPauseMode(), the internal socket
is not yet created. So we cache these values and apply them when the
internal socket is created.
Change-Id: I4299232342438c7a6c52fa8ea4a95461b3f85ebf
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
Kurt Pattyn [Sat, 25 Jan 2014 19:09:24 +0000 (20:09 +0100)]
Add TODOs for improvements
Change-Id: Ifc8cef479147de9fdd9c382ff09be21056cb3e68
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
Kurt Pattyn [Sun, 26 Jan 2014 00:44:46 +0000 (01:44 +0100)]
Move versionFromString() from public to private API
This method is only necessary for processing of handshakes and hence
is not needed in the public API.
Change-Id: I6bb2327337600523a136fb394275c31b9819f631
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
Kurt Pattyn [Sat, 25 Jan 2014 19:08:17 +0000 (20:08 +0100)]
Cleanup inline comments
Change-Id: I8d96bb2b5c1cf211de50939dc2141572750a4b70
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
Kurt Pattyn [Sun, 26 Jan 2014 00:49:53 +0000 (01:49 +0100)]
Move CORS authenticator test to non-private tests
QWebSocketCorsAuthenticator is a public class and hence needs to be
tested with the public API of QtWebSockets.
Change-Id: If3af0744d8901f9c6c13d5fb9061ebf0a5a8d163
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
Kurt Pattyn [Sun, 26 Jan 2014 16:30:32 +0000 (17:30 +0100)]
Remove socketOption functionality
Removed the setSocketOption() and socketOption(0 methods as they are
not really relevant for web sockets. Also, internally for the underlying real
socket the LowDelayOption and KeepAliveOption are already set.
If ever needed, these methods can be added later.
Change-Id: Ibfa279990c5277970eaa2dbc2dd3a7d0cce7154e
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
Kurt Pattyn [Sat, 25 Jan 2014 13:48:20 +0000 (14:48 +0100)]
Update documentation
Clarified which versions are supported and that subprotocols
and extensions are not supported. Fixed some typos.
Change-Id: I99ef2fbbf74c287bea7d1b7a07881bf0542135ff
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
Kurt Pattyn [Sat, 25 Jan 2014 13:44:50 +0000 (14:44 +0100)]
Removed unsupported functionality
Removed subprotocol and extension getter functionality, as this
is currently not supported by QtWebSockets. I left the backend
implementation intact (in the _p files), for future reference.
Change-Id: Ia00739f6f225cd557ceb10b40c83fc81d98aae0b
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Milian Wolff [Fri, 31 Jan 2014 13:17:13 +0000 (14:17 +0100)]
Remove unconditional debug output.
Change-Id: Iad653d78ef2d6345474d260d2d44d013b66466ff
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Kurt Pattyn [Sat, 25 Jan 2014 21:14:42 +0000 (22:14 +0100)]
Fix wrong comparison
Fixed a wrong comparison leading to a non-functional server.
Change-Id: Icc47bfe3a1346169b8590d9a935f8d4bec5102ba
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Kurt Pattyn [Sun, 19 Jan 2014 13:04:07 +0000 (14:04 +0100)]
Rename processMessage to processTextMessage
Renamed processMessage to be more inline with
processBinaryMessage.
Change-Id: Ib0c8b9a4999756105f894d7ca5df88452495a66b
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Kurt Pattyn [Sun, 19 Jan 2014 13:11:27 +0000 (14:11 +0100)]
Small fix to error text
Change-Id: Ie46b5ad5892e55a20ba00bdf659d2395c40f95c3
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Kurt Pattyn [Sun, 19 Jan 2014 12:58:30 +0000 (13:58 +0100)]
Rename SecureMode to SslMode
Renamed SecureMode to SslMode to be more inline with
QSslSocket.
Change-Id: Id2f0c5ebc1e06fcd7b0ce5059e88520e5f0e6fe5
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Kurt Pattyn [Sun, 19 Jan 2014 12:43:52 +0000 (13:43 +0100)]
Rename write methods
Renamed the write methods to sendTextMessage
and sendBinaryMessage respectively. This makes
the code more readable.
Change-Id: Ie49abf07a37f54c84bd01c5c788d2e42b28bcfdd
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Kurt Pattyn [Sun, 19 Jan 2014 11:17:20 +0000 (12:17 +0100)]
Bump module version to 5.3.0
Change-Id: I93120dafc1457de8b24774a81a4303d71974063e
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Kurt Pattyn [Sat, 18 Jan 2014 15:21:39 +0000 (16:21 +0100)]
Remove dubious functions
Change-Id: Ida5c46e3e42685f5e78f2aee657d12af62286810
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Kurt Pattyn [Sat, 18 Jan 2014 21:02:11 +0000 (22:02 +0100)]
Use QStringLiteral where appropriate
Change-Id: I608b555428aceafd7761a882cd4bd1fdb50d19b3
Reviewed-by: Richard J. Moore <rich@kde.org>
Kurt Pattyn [Sun, 19 Jan 2014 13:09:47 +0000 (14:09 +0100)]
Cleanup documentation
Limited line length to 100 characters
Change-Id: Id51c72cb4e7091478bdb57b45514e89f3a6565dd
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Kurt Pattyn [Sat, 18 Jan 2014 20:38:06 +0000 (21:38 +0100)]
Consume return value of write function
Change-Id: Ia5d950f539f87f2f81e111f26e77960be456017e
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Kurt Pattyn [Sat, 18 Jan 2014 20:16:23 +0000 (21:16 +0100)]
Use new connect syntax
Change-Id: I0b48c6cba12902d910c4f586fa105a13d084a437
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Kurt Pattyn [Sat, 18 Jan 2014 19:50:48 +0000 (20:50 +0100)]
Limit line length to 100 chars per line
Change-Id: I2a91033c9882ca54c6fcf26d9eb5a3c91f9e0f7d
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Kurt Pattyn [Sat, 18 Jan 2014 21:14:39 +0000 (22:14 +0100)]
Move currentVersion method to private namespace
Change-Id: I49c952e8c71018fab2e48ade27f1f9c19279acb5
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Kurt Pattyn [Sat, 18 Jan 2014 18:14:08 +0000 (19:14 +0100)]
Rename enumerations to comply with Qt style
Change-Id: Id72fe27cec606e7f02b8e9ac1d0d763890e86a95
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Kurt Pattyn [Sat, 18 Jan 2014 18:15:43 +0000 (19:15 +0100)]
Add reference to related feature report
Change-Id: Iba4aa2db5a2967865ff731134e6514d6649bcafb
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Frederik Gladhorn [Sat, 18 Jan 2014 00:32:30 +0000 (01:32 +0100)]
Use QString() instead of QStringLiteral("")
And do the same for QByteArray.
Instantiating the default constructor uses QArrayData::sharedNull() for
the d-pointer which is the cheapest constructor in memory and
instructions.
Change-Id: I1ceaafbc0c0cb1ccc5690edba89ea1100f30b3cd
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Frederik Gladhorn [Sat, 18 Jan 2014 01:33:18 +0000 (02:33 +0100)]
Make single argument ctor explicit
Change-Id: Idf4933cb9caa0e33ee72948390d2b6d98c241fc5
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Frederik Gladhorn [Fri, 17 Jan 2014 18:44:13 +0000 (19:44 +0100)]
one if (m_mustMask) is enough
Change-Id: I6cb89b981b70f10510319bfb51b77874e2a4d85a
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Frederik Gladhorn [Fri, 17 Jan 2014 18:32:08 +0000 (19:32 +0100)]
No warnings means we can use CONFIG += warning_clean
This will use werror to keep the module clean.
Change-Id: I6229ff593d1263e30feee474636a35e87d38c4e6
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Frederik Gladhorn [Fri, 17 Jan 2014 17:20:40 +0000 (18:20 +0100)]
Add a few more const refs
In case of processPing we need to make a copy that potentially detaches
when masking is requested, but pings are < 125 bytes.
Before this code would copy the byte array in the same way much earlier.
Change-Id: If0592bb4b508eeb11fdbf05c4bb98b9679ed0549
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Frederik Gladhorn [Fri, 17 Jan 2014 18:28:38 +0000 (19:28 +0100)]
Fix warning
warning: ignoring return value of 'qint64
QWebSocketPrivate::writeFrame(const QByteArray&)', declared with
attribute warn_unused_result [-Wunused-result]
For pings the result is not relevant since they are one frame only.
Change-Id: Iaf958e3e1a333f8d3c0b0f9ba56f7ab58e4900f9
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Frederik Gladhorn [Fri, 17 Jan 2014 18:08:39 +0000 (19:08 +0100)]
Fix docs after adding const refs
Change-Id: I9fc1d996584c1136efca4412fe76c570cc4201ec
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Frederik Gladhorn [Thu, 9 Jan 2014 18:51:07 +0000 (19:51 +0100)]
Fix typo (passive requires past participle)
Change-Id: I3792ccb9fa40042d0a5912a3723bfbf23b867f73
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Frederik Gladhorn [Fri, 17 Jan 2014 10:23:16 +0000 (11:23 +0100)]
Use const ref in public signals
Change-Id: I2846f668848395a820aabcc0359bcda2979bde1e
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Frederik Gladhorn [Fri, 17 Jan 2014 10:04:41 +0000 (11:04 +0100)]
Make sure that the random generator is initialized in all code paths
Change-Id: Ice4826e7670cffa791250a95387ac1121ddc4089
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Frederik Gladhorn [Fri, 17 Jan 2014 11:39:05 +0000 (12:39 +0100)]
Simplify handshake reading functions
Change-Id: I000243e717b79972caa676ff10f68901904f28c9
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Laszlo Agocs [Fri, 17 Jan 2014 09:11:33 +0000 (10:11 +0100)]
Remove doc reference to non-existent function
Change-Id: I309104e808cd6749d8f9430fcbcf170c78056730
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Kurt Pattyn [Sun, 12 Jan 2014 15:09:08 +0000 (16:09 +0100)]
Remove _p suffix from cpp filenames.
Change-Id: I425aa372fe2f4114939f2691f270644e66017276
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Kurt Pattyn [Mon, 13 Jan 2014 10:23:56 +0000 (11:23 +0100)]
Move OpCode out of public API
Change-Id: Ic0b34b684d6f9ca98789304ead1cf8b993422d02
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Kurt Pattyn [Mon, 13 Jan 2014 10:28:21 +0000 (11:28 +0100)]
Update documentation
Change-Id: I98cab390cbb0f19741d6fa4ae5b0ada8d19d1f5f
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Kurt Pattyn [Mon, 13 Jan 2014 10:20:39 +0000 (11:20 +0100)]
Use new connect syntax
Change-Id: Idd002ff72d27e5b549600704ae0e857bd021f5d1
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Kurt Pattyn [Sun, 12 Jan 2014 19:28:07 +0000 (20:28 +0100)]
Limit line length to 100 characters.
Change-Id: I9da963570b174b9a5a33e65cf144402677b4bab5
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Kurt Pattyn [Sat, 11 Jan 2014 18:15:16 +0000 (19:15 +0100)]
Replace emit by Q_EMIT
Change-Id: I8543a74a9b3c8c1b45d9e0e12223072b6637199b
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Kurt Pattyn [Sat, 11 Jan 2014 18:08:28 +0000 (19:08 +0100)]
Remove waitXXX() methods from websockets
The QWebSocketServer::waitForNewConnection() was just calling
QTcpServer::waitForNewConnection(), which was not correct because
a connection is only complete when the handshake succeeds.
Waiting for the handshake to complete would need a separate thread
for the handshake handling code, which would complicate the code a lot.
It was decided to leave out all waitXXX() methods from the module,
as it is easier to add this functionality later, then to remove it.
Change-Id: I778bae45b67f81e151ad2362f772c75e9f537ff0
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Frederik Gladhorn [Thu, 9 Jan 2014 18:22:20 +0000 (19:22 +0100)]
Enable docs for QWebSocketProtocol
There is no advantage to haveing the cpp files have _p.cpp
and as the public docs are in this file, rename it.
In order to have the docs generated there needs to be a namespace page.
Change-Id: Id6ef10ba39b7ea8b18d5d8e1cde03e566e682926
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Frederik Gladhorn [Thu, 9 Jan 2014 18:06:18 +0000 (19:06 +0100)]
Link qml documentation and make it visible in creator
Change-Id: I39cd6aab1eb7dd154bc41a211984396540b6979c
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Frederik Gladhorn [Thu, 9 Jan 2014 18:05:38 +0000 (19:05 +0100)]
Fix typo
Change-Id: Ie7a6724b6075ed50f30072e637780234ee7fe48c
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Frederik Gladhorn [Thu, 9 Jan 2014 17:10:59 +0000 (18:10 +0100)]
Use new connect syntax in a few places
Change-Id: Iff0bd801a2dc4cce9b867e9a83320d0f9a716ab3
Reviewed-by: Steven Ceuppens <steven.ceuppens@icloud.com>
Kurt Pattyn [Sat, 4 Jan 2014 14:44:44 +0000 (15:44 +0100)]
Correct whitespace
Change-Id: I9cefb6139c41317ba2eb1453b66411132efbee6a
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Kurt Pattyn [Sat, 4 Jan 2014 14:43:53 +0000 (15:43 +0100)]
Check on max pending connections before accepting a connection
Change-Id: Ia94540e131ce424e6306886861598f7f24f7577f
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Kurt Pattyn [Sat, 4 Jan 2014 12:57:19 +0000 (13:57 +0100)]
Add clarification in documentation
Change-Id: Ib616c4c932cb2797036d2d821af7726fcfe2f877
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Kurt Pattyn [Sat, 4 Jan 2014 12:56:01 +0000 (13:56 +0100)]
Adapt to Qt coding style
Change-Id: I137ac180b19228e0a5683e21ca87e3fe2db9f97b
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>