Roger A. Light
b66ffb8039
Move unpwd to security_options struct.
2020-08-18 15:20:48 +01:00
Roger A. Light
581e843131
Move keepalive check to its own function.
2020-08-18 08:40:33 +01:00
Roger A. Light
cae55aa381
Make correct allow_anonymous check in pwfile security.
...
We always get passed the client even if it doesn't have a
username/password now.
2020-08-18 08:32:21 +01:00
Roger A. Light
a5f02f31fc
Json helper functions.
2020-08-17 23:03:38 +01:00
Roger A. Light
b91e78318d
Don't always iterate over entire inflight messages list
...
If we have e.g. max_inflight_messages set to 1000, and currently have 999 messages inflight, then when we send a new message to a client we have to iterate over the whole list to get to the newest message. This change means that we start of the back of the list to find the newest items, which reduces overhead.
2020-08-17 23:03:25 +01:00
Brandt Hill
16eecfcbc5
Add 'deny' as an option for topics/patterns in acl file to allow certain topics to be explicitly denied when they might otherwise be allowed through a more open read/write/readwrite option. Example: 'topic readwrite test/#' and 'topic deny test/hello/#' may be added so that a user can read/write to all test/# topics, except for test/hello/#.
...
Signed-off-by: Brandt Hill <brandtlarsonhill@gmail.com>
Change variable name for clarity. Remember to initialize bool (I'm bad at C).
Signed-off-by: Brandt Hill <brandtlarsonhill@gmail.com>
Add documentation to config man page
Signed-off-by: Brandt Hill <brandtlarsonhill@gmail.com>
Add test case for deny option
Signed-off-by: Brandt Hill <brandtlarsonhill@gmail.com>
Add deny acls to top of the list to preserve early exit
Signed-off-by: Brandt Hill <brandtlarsonhill@gmail.com>
change comments
Signed-off-by: Brandt Hill <brandtlarsonhill@gmail.com>
2020-08-17 00:13:10 -05:00
Roger A. Light
367a282c61
Don't quit on chmod error, it can be ignored.
2020-08-13 20:51:26 +01:00
Roger A. Light
a224a8f217
Don't busy loop with mosquitto_pub -l
on a slow connection.
2020-08-13 14:32:47 +01:00
Roger A. Light
6407abf717
Docker: Fix missing libressl library.
2020-08-12 22:08:05 +01:00
Roger A. Light
ac3b30ca4f
Fix docker command override.
2020-08-12 17:00:53 +01:00
Roger A. Light
124225d02b
Update docker.
2020-08-12 16:03:08 +01:00
Roger Light
58aa41c813
Optimise use of db__message_write()
...
New messages are now queued for clients when old ones are sent, rather than on every iteration of the main loop. This produces good performance improvements.
2020-08-12 15:29:08 +01:00
Roger A. Light
69f84bbca9
Simplify "expect_packet" tests.
2020-08-12 15:18:18 +01:00
Roger A. Light
ba2c00137d
Fix client test leaks.
2020-08-12 15:18:17 +01:00
Roger A. Light
2dc8d2a19a
Allow plugins to send messages to specific clients.
2020-08-12 15:18:17 +01:00
Roger A. Light
c94e111d73
expect_packet now raises an exception
...
This should allow tests to be simpler - no more nested ifs.
2020-08-12 15:18:17 +01:00
Roger A. Light
e56b953abd
Free memory after sending queued plugin message.
2020-08-12 15:18:17 +01:00
Roger A. Light
a913a05fbd
Documentation and error checking.
2020-08-12 15:18:17 +01:00
Roger A. Light
d6f4f4e0bc
Add mosquitto_broker_publish_copy()
...
Rename mosquitto_plugin_publish() to mosquitto_broker_publish().
These two functions achieve the same thing. *_publish() publishes the payload and frees it later. *_publish_copy() takes a copy of the payload, so the plugin still owns the memory it passed to the function.
2020-08-12 15:18:17 +01:00
Roger A. Light
de5a820fe2
Start of dynamic control topics.
2020-08-12 15:18:17 +01:00
Roger A. Light
9929ce0a26
All clients exit with an error exit code on CONNACK failure.
...
Closes #1778 . Thanks to jflambert.
2020-08-12 09:44:42 +01:00
Roger A. Light
32ed4809ed
Build fix for NetBSD.
...
Thanks to Greg Troxel.
2020-08-11 16:21:19 +01:00
Roger A. Light
f89cea2bc5
Update webpage.
2020-08-11 12:13:38 +01:00
Roger A. Light
94295b5d74
Merge branch 'fixes'
2020-08-11 12:07:56 +01:00
Roger A. Light
c9218fd48c
Bump version.
2020-08-11 12:05:32 +01:00
Roger A. Light
b3c2ac20dc
Fix overly broad HAVE_PTHREAD_CANCEL compile guard.
...
Closes #1547 . Thanks to Markus Gothe.
2020-08-11 11:02:38 +01:00
Roger A. Light
4b100df5b1
Fix reconnect+will delay interval issue causing missing messages.
...
Fix clients not receiving messages after a previous client with the same client ID and positive will delay interval quit.
Closes #1752 . Thanks to Jiří Zuzaňák.
2020-08-11 11:01:25 +01:00
Roger Light
60dc8f5e4c
Fix service path quoting on Windows.
...
https://bugs.eclipse.org/bugs/show_bug.cgi?id=565671
2020-08-11 09:09:31 +01:00
Roger Light
4ef48269f5
Fix mosquitto_loop_stop() not stopping on Windows
...
Closes #1748 . Closes #117 . Thanks to Sigmund Vik.
2020-08-11 08:55:05 +01:00
Roger Light
3eb60e2e6a
Fix some winsock argument types.
2020-08-11 08:43:24 +01:00
Roger A. Light
bd27935ff6
mosquitto_loop_start()
now sets a thread name.
...
This applies on Linux, FreeBSD, NetBSD, and OpenBSD.
Closes #1777 . Thanks to ABuch19.
2020-08-10 22:51:17 +01:00
Roger A. Light
e414d92eb6
Merge branch 'abiliojr-lazy_ssl' into develop
2020-08-07 17:01:53 +01:00
Roger A. Light
f180e923ef
Merge branch 'lazy_ssl' of git://github.com/abiliojr/mosquitto into abiliojr-lazy_ssl
2020-08-07 16:42:30 +01:00
Roger A. Light
ebb0f13f08
Merge branch 'dbeinder-improve-client-store' into fixes
2020-08-07 16:40:18 +01:00
Roger A. Light
43df213ecb
Merge branch 'improve-client-store' of git://github.com/dbeinder/mosquitto into dbeinder-improve-client-store
2020-08-07 09:11:43 +01:00
david-beinder
c11d20f82c
Database v6 tests
...
keep v5 client read test to test for backwards compatability
adds username="usrname" and listener_port=1883 for v6 tests
Signed-off-by: david-beinder <david.beinder@mce.li>
2020-08-07 08:56:52 +02:00
david-beinder
212fd8635f
Store username and listener of persistent clients
...
Signed-off-by: david-beinder <david.beinder@mce.li>
2020-08-07 08:32:14 +02:00
Roger A. Light
94d04136f8
Fix potential memory leaks.
...
Closes #1773 . Closes #1774 . Thanks to Yingpei Zeng.
2020-08-06 21:28:09 +01:00
Roger A. Light
7cb72cf1ba
Fix incorrect NULL check.
...
Coverity Scan 1431137.
2020-08-06 13:50:52 +01:00
Roger A. Light
94b39d12ac
Fix potential NULL dereference.
...
Coverity Scan 1431139.
2020-08-06 13:47:41 +01:00
Roger A. Light
9b5112f547
Fix unsigned compared against 0.
...
Coverity Scan 1431132.
2020-08-06 13:43:57 +01:00
Roger A. Light
872222c3c9
Remove unused values.
...
Coverity Scan 1431134, 1431136, 1431140.
2020-08-06 13:42:35 +01:00
Roger A. Light
1b060bb064
Guard against use-after-free.
...
Coverity Scan 1431131, 1431135, 1431141.
2020-08-06 13:36:24 +01:00
Roger A. Light
5f565fe4ea
Previous change to only update on difference causes errors :(
2020-08-06 12:50:18 +01:00
Roger A. Light
a38cb3bf51
Branch sync - only sync when there is a difference to avoid errors.
2020-08-04 12:25:49 +01:00
Roger A. Light
618cd7006b
Don't try to start DLT logging if DLT unavailable.
...
This is to avoid a long delay when shutting down the broker.
Closes #1735 . Thanks to Colin Law.
2020-08-04 11:17:04 +01:00
Roger A. Light
84e4ba2c1e
Send DISCONNECT with malformed-packet reason code on bad PUBLISHes.
2020-08-02 23:12:47 +01:00
Roger A. Light
b1e9377a20
Send DISCONNECT with malformed-packet reason code on bad SUBSCRIBEs.
2020-08-02 15:10:12 +01:00
Roger A. Light
8416b007ec
Send DISCONNECT with malformed-packet reason code on bad UNSUBSCRIBEs.
2020-08-02 14:22:40 +01:00
Roger A. Light
1f717873d6
Log protocol error message where appropriate from a bad UNSUBSCRIBE
...
Rather than the generic "socket error".
Related to #1765 .
2020-07-31 23:01:15 +01:00