Roger A. Light
66924cd832
Windows 64 bit build and installer.
2015-09-22 13:48:36 +01:00
Roger A. Light
9a2eb2038f
Drop Windows XP support, misc fixes on Windows.
2015-09-22 10:03:57 +01:00
Roger A. Light
720d52d86e
Bump version number.
2015-09-16 22:53:28 +01:00
Roger A. Light
17e942e9b5
[475707] Fix free related crash on openwrt.
...
Thanks to Karl Palsson.
Bug: https://bugs.eclipse.org/bugs/show_bug.cgi?id=475707
2015-09-16 21:20:40 +01:00
Roger Light
e2324ff9bb
Merge remote-tracking branch 'remotes/origin/master' into develop
...
Conflicts:
CMakeLists.txt
ChangeLog.txt
THANKS.txt
appveyor.yml
config.mk
installer/mosquitto-cygwin.nsi
installer/mosquitto.nsi
lib/messages_mosq.c
lib/messages_mosq.h
lib/mosquitto.c
lib/mosquitto.h
lib/net_mosq.c
lib/net_mosq.h
lib/send_client_mosq.c
lib/send_mosq.c
lib/socks_mosq.c
lib/will_mosq.c
src/bridge.c
src/conf.c
src/context.c
src/database.c
src/loop.c
src/mosquitto.c
src/mosquitto_broker.h
src/net.c
src/read_handle.c
src/read_handle_server.c
src/subs.c
2015-09-09 22:02:46 +01:00
Roger A. Light
d71db835eb
Bump version number.
2015-08-18 23:38:02 +01:00
Roger A. Light
3f86d316d8
Allow mosquitto__free(NULL).
...
Remove all unnecessary "if(X)" before a call to mosquitto__free.
2015-08-18 14:53:22 +01:00
Anmol Sarma
13d869b8df
Avoid calls to strlen() when checking for empty strings.
...
Change-Id: I3de322006623483cbf20218da071a9da5d7b2e2b
Signed-off-by: Anmol Sarma <me@anmolsarma.in>
2015-08-17 16:00:16 -04:00
Roger A. Light
1254fe93e0
[474935] Increment inflight message count correctly.
...
Don't duplicate the increment when queueing.
Thanks to Joe McIlvain.
Bug: https://bugs.eclipse.org/bugs/show_bug.cgi?id=474935
2015-08-17 20:50:41 +01:00
Roger A. Light
b87722556c
Remove duplicate code.
2015-07-01 11:51:32 +01:00
Roger A. Light
5c642c9cfd
[464543] Add defer support for plugins.
...
Partial fix for 464543.
2015-06-29 22:33:01 +01:00
Roger A. Light
a330c5ca17
[471334] Fix incorrect loop timeout with keepalive=0.
...
Fix incorrect loop timeout being chosen when using the threaded
interface and keepalive = 0.
Thanks to Gianfranco Costamagna.
Bug: https://bugs.eclipse.org/bugs/show_bug.cgi?id=471334
2015-06-29 15:57:16 +01:00
Roger A. Light
dc5abcac95
[470660] Handle fragmented TLS packets without a delay.
...
Thanks to Martin Rauscher.
Bug: https://bugs.eclipse.org/bugs/show_bug.cgi?id=470660
2015-06-25 10:53:24 +01:00
Roger A. Light
c1974e5402
Report error string on connection failure rather than error code.
2015-06-23 22:59:03 +01:00
Roger A. Light
cdbe62c2bb
Outgoing messages with QoS>0 are no longer retried after a timeout.
...
This change in behaviour can be justified by considering when the
timeout may have occurred.
* If a connection is unreliable and has dropped, but without one end
noticing, the messages will be retried on reconnection. Sending
additional PUBLISH or PUBREL would not have changed anything.
* If a client is overloaded/unable to respond/has a slow connection then
sending additional PUBLISH or PUBREL would not help the client catch
up. Once the backlog has cleared the client will respond. If it is not
able to catch up, sending additional duplicates would not help either.
2015-05-24 11:59:53 +01:00
Roger A. Light
290ea87828
Build fixes for OpenBSD.
2015-05-21 17:15:33 +01:00
Roger A. Light
4195fde70b
Last raft of renames for the moment.
2015-05-18 09:29:22 +01:00
Roger A. Light
21946ace6c
mosquitto__log_printf -> log__printf
2015-05-18 08:53:21 +01:00
Roger A. Light
389c971430
Remove logically dead code.
...
Coverity CID 1292477.
2015-05-17 07:05:46 +01:00
Roger A. Light
b67c90ec02
Rename internal datatypes.
2015-05-16 19:03:12 +01:00
Roger A. Light
3c703408f2
More function renaming.
2015-05-16 18:43:06 +01:00
Roger A. Light
94ef6ec7bb
Big set of function renames.
2015-05-16 15:24:24 +01:00
Roger A. Light
a67d43c8d3
Rename message functions.
2015-05-16 14:29:54 +01:00
Roger A. Light
1744477cf8
Rename/reorganise packet functions.
2015-05-16 14:16:40 +01:00
Roger A. Light
8049c4b7f8
Simplify code around SYS statistics gathering.
2015-05-16 12:25:35 +01:00
Roger A. Light
b598aec385
Sys -> user includes.
2015-04-29 21:37:47 +01:00
Roger A. Light
970ba58da6
Code reorganise.
2015-04-29 21:23:59 +01:00
Roger A. Light
d7e3fdf7f7
Don't check set size on Windows.
...
socket is an opaque object on Windows, so this check isn't valid.
2015-04-29 10:40:19 +01:00
Roger A. Light
8de6b92e3c
Fix calls to mosquitto_connect*_async() not completing.
2015-04-29 10:13:55 +01:00
Roger A. Light
11756d24c8
Change internal funcs _foo_bar() to foo__bar().
2015-04-19 22:10:59 +01:00
Roger A. Light
e5010af4df
[464632] Library: Fix possible crash due to select() call.
...
Fix possibility of select() being called with a socket that is >FD_SETSIZE.
Bug: https://bugs.eclipse.org/bugs/show_bug.cgi?id=464632
2015-04-19 21:13:54 +01:00
Roger A. Light
e6f262bbbf
Remove unnecessary includes.
2015-04-18 22:22:55 +01:00
Roger Light
322d9624a1
Fix CMake dependencies for libmosquittopp.
...
Enables parallel build mode.
Accepted without CLA after discussion with Eclipse Foundation legal
about very small patches that can only be implemented in one way.
See bug report for acceptance of Certificate of Origin.
Bug: https://bugs.eclipse.org/bugs/show_bug.cgi?id=463884
Also-by: Gianfranco Costamagna <costamagnagianfranco@yahoo.it>
2015-04-17 21:51:14 +01:00
Roger A. Light
1fb7465b83
[464437] Broker: Fix bridge prefixes operation.
...
Fix bridge prefixes only working for the first outgoing message.
Bug: https://bugs.eclipse.org/bugs/show_bug.cgi?id=464437
2015-04-11 11:43:21 +01:00
Roger A. Light
b24fd0a55c
Bump version number for upcoming service release.
2015-04-11 11:35:32 +01:00
Roger A. Light
22fee31ba4
[464436] Library: Fix outgoing QoS 2 message problem.
...
Inflight message count wasn't being decreased for outgoing messages using
QoS 2, meaning that only up to 20 QoS 2 messages could be sent. This has
been fixed.
Bug: https://bugs.eclipse.org/bugs/show_bug.cgi?id=464436
2015-04-11 11:32:33 +01:00
Roger A. Light
b8f9aeb1a8
Fix incorrect string termination.
2015-04-07 23:31:41 +01:00
Roger A. Light
133d2de144
Bump to development version.
2015-04-04 21:26:08 +01:00
Roger A. Light
46ccc2efe9
[463479] Make _mosquitto_mid_generate() thread safe.
...
Thanks to bdwalker.
Bug: https://bugs.eclipse.org/bugs/show_bug.cgi?id=463479
2015-04-03 07:48:55 +01:00
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