Commit Graph

279 Commits

Author SHA1 Message Date
Roger A. Light
fe933dee99 Don't require socks_mosq.c in cpp library. 2015-03-30 22:11:18 +01:00
Roger A. Light
dacee786be [463000] Use own type to simplify socket handling.
Means that SOCKET is used as the socket type everywhere on Windows.
2015-03-29 10:43:08 +01:00
Roger A. Light
3591f2d256 [462781] Allow longer paths on Windows.
Bug: https://bugs.eclipse.org/bugs/show_bug.cgi?id=462781
2015-03-27 21:47:27 +00:00
Roger A. Light
c9a924e95e [462780] Fix crash on multiple calls to lib init/clean.
Bug: https://bugs.eclipse.org/bugs/show_bug.cgi?id=462780
2015-03-27 21:02:49 +00:00
Roger A. Light
0434d1cd9b [461705] Return -1 on error from mosquitto_socket()
Thanks to Mikkel Kirkgaard Nielsen.

Bug: https://bugs.eclipse.org/bugs/show_bug.cgi?id=461705
2015-03-27 01:40:41 +00:00
Roger A. Light
2aceb704b5 [463000] Fix reconnect bug on Windows.
Bug: https://bugs.eclipse.org/bugs/show_bug.cgi?id=463000
2015-03-27 01:24:16 +00:00
Roger A. Light
35b729909c [463241] Fix possible crash under heavy network load.
Thanks to Alexandre Zia.

Bug: https://bugs.eclipse.org/bugs/show_bug.cgi?id=463241
2015-03-27 01:07:48 +00:00
Roger A. Light
e310092f44 [461620] Inflight limits should only apply to outgoing messages.
Bug: https://bugs.eclipse.org/bugs/show_bug.cgi?id=461620
2015-03-08 22:06:20 +00:00
Roger A. Light
db86809ee9 Add websockets logging options. 2015-02-13 22:57:49 +00:00
Roger A. Light
6fd38b8c47 Windows fixes. 2015-02-13 21:18:52 +00:00
Roger A. Light
3ed5c94038 Struct optimisations. 2015-02-13 21:17:11 +00:00
Roger A. Light
1a14f6fed5 [453293] Don't quit loop_forever() if broker not available.
This is a workaround for bug #453293, a better solution is needed for
1.5.

Bug: https://bugs.eclipse.org/bugs/show_bug.cgi?id=453293
2015-02-09 22:17:27 +00:00
Roger A. Light
c5ee5686bd Fix client CONNECT packet on MQTT v3.1.1. 2015-02-06 20:48:45 +00:00
Roger A. Light
39ffd6fa36 Handle "error" codes from SSL_connect() correctly. 2015-01-27 23:33:36 +00:00
Roger A. Light
b99dbc01d4 Must initialise protocol field. 2015-01-27 17:28:26 +00:00
Roger A. Light
8a35c3cd0d Add client support for MQTT v3.1.1. 2015-01-27 00:32:20 +00:00
Roger A. Light
5e75c9054d [458410] Add missing headers to util_mosq.h
Thanks to Michael Laing.

Bug: https://bugs.eclipse.org/bugs/show_bug.cgi?id=458410
2015-01-26 20:46:15 +00:00
Roger A. Light
9332a731bf [452915] mosquittopp now has a virtual destructor.
Bug: https://bugs.eclipse.org/bugs/show_bug.cgi?id=452915
2015-01-15 22:48:24 +00:00
Roger A. Light
c591b06574 [457225] Add support for wildcard certificates.
This introduces wildcard certificate support for both bridges and
clients.

Bug: https://bugs.eclipse.org/bugs/show_bug.cgi?id=457225
2015-01-15 21:35:59 +00:00
Roger A. Light
aca979a473 [457371] Fix building for WITH_TLS=no
Thanks to Micheal Laing.

Bug: https://bugs.eclipse.org/bugs/show_bug.cgi?id=457371
2015-01-15 20:11:14 +00:00
Roger A. Light
8a18f577a6 Remove more unnecessary uses of calloc. 2015-01-14 21:56:57 +00:00
Roger A. Light
ac5dbd428f Clear want_write flag after responding to it.
Prevents busy loop after e.g. writing a large message when using TLS.

Thanks to Dave Sellars.
2015-01-07 23:19:06 +00:00
Roger A. Light
d6bb6634d2 Disable memory tracking with uclibc.
Thanks to Ed W.
2015-01-07 22:24:57 +00:00
Roger A. Light
f8f794c531 Allow expiring clients to be cleaned up. 2015-01-06 17:35:12 +00:00
Roger A. Light
e5a251f0bb Remove javascript client. 2014-11-23 20:54:25 +00:00
Roger A. Light
5b6f6976c7 Fix use of "dup" with pubrel, subscribe, unsubscribe.
Thanks to Paolo Patierno.
2014-11-19 21:28:52 +00:00
Roger A. Light
db3c016fdd Don't use bridge hash in each client.
Store a DB wide array of bridges. There shouldn't be many of them, so
iterating/searching isn't a problem. Saves 56 bytes in the client
struct.
2014-11-18 23:34:54 +00:00
Roger A. Light
d30d711c3b Improve struct layouts for memory usage. 2014-11-18 07:42:49 +00:00
Roger A. Light
ea8537c048 Remove unused messages from store immediately.
This removes the need for *store_clean*.
2014-11-17 23:46:02 +00:00
Roger A. Light
07581446e6 Bounds checking for socks domain name inputs. 2014-11-17 20:28:38 +00:00
Roger A. Light
b80402baf0 Only track inflight messages for outgoing messages. 2014-11-17 20:20:50 +00:00
Roger A. Light
66f147749d Fix missing mutex unlock. 2014-11-16 22:36:31 +00:00
Roger A. Light
36f88d902d Fix errors from big code import. 2014-11-12 20:47:16 +00:00
Roger A. Light
fb72bf9c14 Fix incorrect function name in documentation. 2014-11-12 17:52:46 +00:00
Roger A. Light
ab49b96db1 Windows related fixes. 2014-10-26 21:17:08 +00:00
Roger A. Light
041f60c03e Make bridge connections non-blocking for TLS connections. 2014-10-24 22:39:09 +01:00
Roger A. Light
a1f18323d1 Make bridge connections non-blocking for non-TLS connections. 2014-10-24 21:28:24 +01:00
Roger A. Light
5603d6a44d Remove unused struct members. 2014-10-16 21:47:49 +01:00
Roger A. Light
d2dbe16d68 Client structs store sub information to make _subs_clean_session more efficient. 2014-10-09 23:28:16 +01:00
Roger A. Light
ac00949793 Add missing socks code! 2014-10-02 09:42:19 +01:00
Roger A. Light
fdc8c08ca3 Add socks to cpp library. 2014-09-30 01:04:10 +01:00
Roger A. Light
8f8816b092 Fix conditional compilation, add headers. 2014-09-30 01:02:12 +01:00
Roger A. Light
42420cae46 Add experimental SOCKS5 support for the clients. 2014-09-30 00:56:57 +01:00
Roger A. Light
e9c18f8347 mosquitto_loop_forever now quits after a fatal error, rather than blindly retrying. 2014-09-30 00:42:30 +01:00
Roger A. Light
dcd469c177 Use own linked list for storing disused contexts for freeing.
Seemed to be a problem with getting it to work under a hash and there
isn't really any need for a hash.
2014-09-22 23:35:09 +01:00
Roger A. Light
06bec1083d Expose mosquitto_pub_topic_check() and mosquitto_sub_topic_check(). 2014-09-10 15:57:20 +01:00
Roger A. Light
580cd722dc Remote/local bridge fixes. 2014-08-16 23:14:41 +01:00
Roger A. Light
abe72b8e4c Keep retrying to reconnect without calling loop on failure. 2014-08-15 00:00:04 +01:00
Roger A. Light
ae1477c08f Windows fixes. 2014-07-22 10:28:55 +01:00
Roger A. Light
57816cb520 Detect c-ares header in cmake. 2014-07-22 10:02:36 +01:00
Roger A. Light
c9da49b777 Pass mutex by reference, not value.
Thanks to Haseeb Abdul Qadir.
2014-07-20 21:17:29 +01:00
Roger A. Light
1c8433925d mosquitto_time() calculation to after keepalive check to avoid delays. 2014-07-09 21:40:27 +01:00
Roger A. Light
fa9fece76a Doc addition. 2014-07-09 20:42:39 +01:00
Roger A. Light
95a4ec431d Don't try to disconnect twice. 2014-07-08 23:16:34 +01:00
Roger A. Light
13f94f3511 More reconnect fixes. 2014-07-03 01:00:57 +01:00
Roger A. Light
a831281b3d Delete clients after socket close. 2014-07-02 20:49:06 +01:00
Roger A. Light
5c7512b8ba Add mosquitto_threaded_set(). 2014-07-02 20:45:26 +01:00
Roger A. Light
1257fd49eb Fixes for clients that disconnect very quickly. 2014-07-01 22:16:53 +01:00
Roger A. Light
d75903b0ae Fix reconnect support for websockets. 2014-06-30 23:30:43 +01:00
Roger A. Light
bdb3e74100 More memory fixes. 2014-06-29 23:16:10 +01:00
Roger A. Light
15efd2d072 Various memory fixes. 2014-06-28 01:38:58 +01:00
Roger A. Light
764b7e0a91 Use hash functions to store client data. 2014-06-23 17:57:35 +01:00
Roger A. Light
11631d8d92 Add local_clientid for bridges. 2014-06-10 23:30:15 +01:00
Roger A. Light
aca67a2170 Better function names. 2014-06-08 22:51:36 +01:00
Roger A. Light
4430228855 Be consistent about removing listener counts on socket close. 2014-06-03 16:21:46 +01:00
Roger A. Light
87579e0cac Remove STRICT_PROTOCOL #ifdefs. 2014-05-31 21:53:35 +01:00
Roger A. Light
25dd5d88ed Don't leak socket here. 2014-05-27 22:03:01 +01:00
Roger A. Light
9015ee962e unlock mutex on return. 2014-05-27 21:50:42 +01:00
Roger A. Light
414946ff07 Bump version number. 2014-05-26 18:03:21 +01:00
Roger A. Light
063928bbfe Merge websockets -> 1.4. 2014-05-26 17:22:52 +01:00
Roger A. Light
2db22f3abd Merge 1.3.2 branch in 1.4 branch. 2014-05-26 13:21:20 +01:00
Roger A. Light
330a7a882e Add CROSS_COMPILE to Makefiles. 2014-05-25 23:36:38 +01:00
Roger A. Light
f23f48ecce Don't use exit() on SRV failure. 2014-05-20 10:22:06 +01:00
Roger A. Light
aab7a2688c Fix SRV support when building with CMake. 2014-05-19 22:03:26 +01:00
Roger A. Light
b6f2d3e087 Fix callback deadlocks after calling mosquitto_disconnect(), when using the threaded interfaces. Closes bug #1313725.
Thanks to Michael Frommberger.
2014-05-16 10:20:45 +01:00
Roger A. Light
dc71f9157d Use $(STRIP) for stripping binaries when installing, to allow easier cross compilation.
Thanks to Frank Pagliughi.
2014-05-08 23:18:50 +01:00
Roger Light
9ff56eefd0 Fix topic matching edge case.
Thanks to Tobias Assarsson.
2014-05-08 22:56:16 +01:00
Roger Light
0364bd1be7 Initial contribution. 2014-05-07 23:27:00 +01:00
Roger A. Light
4bb7a45b71 Crude, hard coded websockets support. No TLS. 2014-05-06 10:47:00 +01:00