Roger A. Light
3671a6dfdb
Add `-x` argument to all clients.
...
This allows the session-expiry-interval property to be easily set for
MQTT v5 clients.
6 years ago
Roger A. Light
4e1e0f955f
Record of which client argument letters are in use.
6 years ago
Roger A. Light
6aa9b91fff
Add `testing` target for compiling test client fixes.
6 years ago
Roger A. Light
d60e86d2a3
Add TCP_NODELAY support to lib and clients.
...
Closes #1526 . Thanks to Felix Moessbauer.
6 years ago
Roger A. Light
c0443637e8
Merge branch 'master'
...
Conflicts:
ChangeLog.txt
config.mk
src/context.c
src/loop.c
src/subs.c
test/broker/01-connect-bad-packet.py
test/broker/02-subpub-qos1-bad-pubcomp.py
test/broker/02-subpub-qos1-bad-pubrec.py
test/broker/02-subpub-qos2-bad-puback-1.py
test/broker/02-subpub-qos2-bad-puback-2.py
test/broker/02-subpub-qos2-bad-pubcomp.py
test/broker/02-subpub-qos2.py
test/broker/07-will-null-topic.py
6 years ago
Basavesh Shivakumar
9bebab46ca
In sub_client.c, call mosquitto_destroy()
...
Fixes : #1513 and frees resources when someone terminates
via SIGTERM or SIGINT.
Signed-off-by: Basavesh Shivakumar <basavesh.shivakumar@gmail.com>
6 years ago
Roger A. Light
1e04b22833
Fix `mosquitto_pub -l` not sending the final line of stdin
...
This would happen if the final line did not end with a new line.
Closes #1473 . Thanks to majekw.
6 years ago
Roger A. Light
6bde209799
Added `CLIENT_STATIC_LDADD` to makefile builds
...
This allow more libraries to be linked when compiling the clients with a
static libmosquitto, as required for e.g. openssl on some systems.
Closes #1371 . Thanks to Fabrice Fontaine.
6 years ago
Roger A. Light
22eb193309
Merge branch 'stdin-fix-1' of git://github.com/majekw/mosquitto into majekw-stdin-fix-1
6 years ago
Roger A. Light
9cdc822a19
Add changelog, change msg text for previous merge.
6 years ago
Roger Light
dc21bc513c
Merge pull request #1430 from abiliojr/exit-on-no-subscription
...
mosquitto_sub: Exit on all subscription denied
6 years ago
Roger A. Light
aabf850a62
Separate pub client loops for better readability.
6 years ago
Roger A. Light
74e1f77310
Fix for previous commit
...
Stdin mode wouldn't work with normal compiler optimisation levels.
6 years ago
Roger Light
4e7e6c641f
Merge pull request #1473 from majekw/stdin-rewrite
...
mosquitto_pub: split main loop.
6 years ago
Roger Light
1c6666b63a
Add user-property output support to sub/rr.
6 years ago
Roger A. Light
59c0bfe6e1
Add support for v5 property printing to mosquitto_sub/rr in non-JSON mode.
6 years ago
Roger A. Light
9e4226622f
Add `--pretty` option to mosquitto_sub/rr
...
If active, this produces formatted JSON output rather than the normal
minimised output.
6 years ago
Roger Light
e5237ae7e5
Add support for sub/rr v5 prop output in JSON mode
6 years ago
Roger A. Light
ad5c2e11d9
Use cJSON for producing JSON output in clients.
...
Closes #1222 . Thanks to Ben Barbour.
6 years ago
majekw
50c9a4b0b0
Fix `mosquitto_pub -l` hang when stdin stream ends. Closes #1448 .
...
Signed-off-by: Marek Wodzinski <majek@w7i.pl>
6 years ago
Roger A. Light
8a4ae28fa9
Fix duplicate cfg definition in rr_client.
...
Closes #1453 . Thanks to jveber.
6 years ago
Roger A. Light
499e2f2e98
Add support for unix sockets to broker, lib, and clients.
6 years ago
Marek Wodzinski
ede9f2a51d
mosquitto_pub: split main loop.
...
Main loop has two different logics inside: one for stdin input,
second for all other cases. Exit loop condition is also different
for both variants. This commit splits these two variants into
two separate loops.
Signed-off-by: Marek Wodzinski <majek@w7i.pl>
6 years ago
Abilio Marques
fb8d03db28
mosquitto_sub exits if no subscription is granted
...
Signed-off-by: Abilio Marques <abiliojr@gmail.com>
6 years ago
Roger A. Light
54ed3c0fc9
Merge branch 'master' into develop
6 years ago
Roger A. Light
0a8358243b
mosquitto_sub: Fix `-E` not working unless `-d` was also specified.
...
Closes #1418 . Thanks to Lichard Torman.
6 years ago
Roger A. Light
c1e488cb88
Add timeout return code (27) for sub/rr using -W.
...
Closes #275 .
6 years ago
Roger A. Light
a0e7165a9c
Fix WITH_STATIC_LIBRARIES using CMake on Windows
...
Closes #1369 . Thanks to TimmvonderMehden
6 years ago
YangHau
b2aed5cb7e
feat: Remove unecessary if statement
...
free() would take no action if the arguement is a NULL pointer.
Therefore, the if statement is totally unnecessary.
See ISO-IEC 9899
Signed-off-by: YangHau <vulxj0j8j8@gmail.com>
6 years ago
Roger A. Light
a22ccbd884
Clients: improve error msgs when connecting v3.x broker with v5 client
...
Closes #1344 . Thanks to HowJMay.
6 years ago
Roger Light
1079a1b697
Merge pull request #1342 from HowJMay/remove_redundant_reset
...
Remove redundant initialization in clients
6 years ago
Roger A. Light
b807daed28
Fix error codes not being returned when mosquitto_pub exits.
...
Closes #1354 . Thanks to Ben Barbour.
6 years ago
YangHau
9bb9b6e721
Remove redundant initialization in clients
...
the `memset(&cfg, 0, sizeof(struct mosq_config));` already exsits in
`client_config_load()`'s `init_config()` function call.
So calling it in main function is totally unnecessary.
Signed-off-by: YangHau <vulxj0j8j8@gmail.com>
6 years ago
Roger A. Light
af7760f1b6
Fix build for WITH_SOCKS=no.
6 years ago
Roger A. Light
c685b7ecf4
Fix `mosquitto_pub -l` not handling zero length input.
...
Closes #1302 . Thanks to Marcus Watkins.
6 years ago
Roger A. Light
31f448f35a
Fix MQTT v5 clients not being able to specify a password without a username.
...
Thanks to Erik Moqvist.
Closes #1274 .
6 years ago
Roger A. Light
4d54a51c62
Stop some error messages being printed even when `--quiet` was used.
...
Thanks to Rob de Jonge.
Closes #1284 .
6 years ago
Roger A. Light
7d954fa52e
Fix `mosquitto_pub -l` not handling network failures.
...
Closes #1152 . Thanks to Dustin Sallings.
6 years ago
Roger A. Light
1bafe0ee2e
Fix double free on exit in mosquitto_pub.
...
Closes #1280 . Thanks to Lucky Saini.
6 years ago
Roger A. Light
b4dfeb3767
Fix MQTT v5 clients not being able to specify a password without a username.
...
Thanks to Erik Moqvist.
Closes #1274 .
6 years ago
Roger A. Light
999c478c88
Fixes for bug #1273
...
* Fix Will message for a persistent client incorrectly being sent when the client reconnects after a clean disconnect.
* Fix Will message for a persistent client not being sent on disconnect.
* Fix mosquitto_pub not using the `-c` option.
Thanks to Yannic Schröder.
Closes #1273 .
6 years ago
Roger A. Light
29cf965b4f
Fix mosquitto_pub exiting with error code 0 when an error occurred.
...
Thanks to janniswarnat.
Closes #1285 .
6 years ago
Roger A. Light
7a33a129d6
Stop some error messages being printed even when `--quiet` was used.
...
Thanks to Rob de Jonge.
Closes #1284 .
6 years ago
Roger A. Light
a47da31679
Update changelog, improve warning message from last commit.
6 years ago
Till Zimmermann
8518d08ff3
Fixed Segmentation Fault / NULLptr dereference
...
Signed-off-by: Till Zimmermann <tzimmermann@uni-osnabrueck.de>
6 years ago
Roger A. Light
203949a512
Fix -L url parsing.
...
Closes #1248 . Thanks to Andrew J Freyer.
7 years ago
Roger A. Light
439575475c
Use CMAKE_INSTALL_* variables when installing in CMake.
...
Closes #1049 . Thanks to Greg Troxel.
7 years ago
Roger A. Light
3b4a5419c3
Build fixes around CFLAGS et al.
...
- Split CFLAGS and CPPFLAGS, and LDFLAGS and LDADD/LIBADD.
- test/unit now respects CPPFLAGS and LDFLAGS.
Closes #1232 . Thanks to Greg Troxel.
7 years ago
Roger A. Light
5c0c830229
Fix compilation on musl C systems due to missing sys/time.h header.
...
Thanks to maxice8.
7 years ago
Roger A. Light
4dcd977932
Windows build fixes.
7 years ago
Roger A. Light
6438ce861e
Minor build variant fixes.
7 years ago
Roger A. Light
810940dd5d
Fix mosquitto_rr cmake build.
7 years ago
Roger A. Light
cba3380b98
Fix mosquitto_sub encoding of special characters with %j format.
...
Thanks to Ben Barbour.
Closes #1220 .
7 years ago
Roger A. Light
cd8f12f68a
Improve some client error messages.
7 years ago
Roger A. Light
54be8d0a46
Fix rr static build.
7 years ago
Roger A. Light
4995436b5a
Add --repeat and --repeat-delay to mosquitto_pub.
7 years ago
Roger A. Light
dec769ce33
Client and doc ALPN additions
...
Add ALPN support for all clients, update documentation, and add to ChangeLog.
7 years ago
Roger A. Light
e4d0d52b01
Fix Coverity Scan 1400483-1400485.
...
Logically dead code.
7 years ago
Roger A. Light
925debb8a5
Add mosquitto_rr, the "request-response" client.
7 years ago
Roger A. Light
b95a5d87d2
Alphabetic client option order.
7 years ago
Roger A. Light
ec3fd361be
https links where possible.
7 years ago
Roger A. Light
320ddc1303
Merge branch 'master'
...
Conflicts:
CMakeLists.txt
ChangeLog.txt
client/Makefile
config.mk
installer/mosquitto.nsi
installer/mosquitto64.nsi
lib/mosquitto.h
lib/mqtt3_protocol.h
lib/util_mosq.c
set-version.sh
snap/snapcraft.yaml
src/bridge.c
src/database.c
src/handle_connack.c
src/loop.c
src/persist.c
test/broker/Makefile
7 years ago
Roger A. Light
2dd24449ad
Fix "unused parameter" warnings.
7 years ago
Roger A. Light
0941638143
Fix signed/unsigned comparion warnings.
...
Closes #1196 .
7 years ago
Roger A. Light
754ac55151
Add warning to mosquitto_pub if publish rejected.
7 years ago
Roger A. Light
1ce1bce941
Add --remove-retained to mosquitto_sub
...
This can be used to clear retained messages on a broker.
7 years ago
Roger A. Light
ce31269e05
Update changelog, bump version, bump copyright year.
7 years ago
Roger A. Light
1924afe49e
Add explicit support for TLS v1.3 and drop TLS v1.0.
7 years ago
Roger A. Light
deb2fdfc98
Use lib provided random id. Change lib generated id to alphanumeric only.
7 years ago
Roger A. Light
5aabc171b0
Merge branch 'mqtt5' into develop
7 years ago
Roger A. Light
e862a047a8
Rework TLS engine support.
7 years ago
Nicolás Pernas Maradei
20894fcbce
Add engine private key password support
...
Some OpenSSL engines (selectable via tls_engine option) may require a
password to make use of private keys created with them in the first place.
The TPM engine for example, will require a password to access the underlying
TPM's Storage Root Key (SRK), which is the root key of a hierarchy of keys
associated with a TPM; it is generated within a TPM and is a non-migratable
key. Each owned TPM contains a SRK, generated by the TPM at the request
of the Owner. [1]
By default, the engine will prompt the user to introduce the SRK password
before any private keys created with the engine can be used. This could
be inconvenient when running on an unattended system.
Here's where the new tls_engine_kpass_sha option comes in handy. The user
can specify a SHA1 hash of its engine private key password via command
line or config file and it will be passed on to the engine directly.
This commit adds support for both clients (libmosquitto) and broker.
[1] https://goo.gl/qQoXBY
Signed-off-by: Nicolás Pernas Maradei <nicopernas@gmail.com>
7 years ago
Nicolás Pernas Maradei
f88cc06435
Add TLS engine and keyform support to libmosquitto
...
- Clients can now offload crypto tasks to an external crypto device through
the OpenSSL ENGINE API.
- The keyfiles can now be treated as PEM or ENGINE keys.
- Two new functions were added to libmosquitto to set up the previously
mentioned features.
- Both mosquitto_sub and mosquitto_pub include support to turn on the mentioned
features through command line options.
Signed-off-by: Nicolás Pernas Maradei <nicopernas@gmail.com>
7 years ago
Roger A. Light
084062c85e
Merge branch 'fixes' into mqtt5
7 years ago
Roger A. Light
9999faf9da
Add rewritten build test script and remove some build warnings.
7 years ago
Roger A. Light
05458eb35d
Fix some unused variable warnings.
7 years ago
Roger A. Light
a4f68869bf
Fix cmake client build with TLS.
7 years ago
Roger A. Light
70c4097b6f
Fix comparison of boolean values in CMake build.
...
Closes #1101 . Thanks to Mojca Miklavec and Andrew L. Moore.
7 years ago
Roger A. Light
4a2e569171
-V now accepts `5, `311`, `31`, as well as `mqttv5` etc.
7 years ago
Roger A. Light
326292681a
Add maximum-qos support to broker and client.
...
This comes in the form of:
* Per listener maximum_qos option, which can be in the range 0-2.
* Changes to mosquitto_publish*() to return MOSQ_ERR_QOS_NOT_SUPPORTED
if attempting to publish with a higher QoS than supported.
* Bridges will downgrade messages to match the maximum QoS.
More tests on the broker side (specifically bridges) are required. This
needs bridge support for MQTT 5 first.
7 years ago
Roger Light
930a314caf
Add reason_code to on_publish_v5 callback.
7 years ago
Roger Light
1f9383d59a
Helper test scripts for client properties.
7 years ago
Roger Light
0546e7bebc
Add mosquitto_int_option and mosquitto_void_option
...
This deprecates mosquitto_opts_set().
7 years ago
Roger A. Light
2f54b16544
Fix mosquitto_pub not always sending everything with -l and QoS>0.
7 years ago
Roger A. Light
7c3666d593
Subscription identifier support.
7 years ago
Roger A. Light
fcf4cd0b27
Merge branch 'master' into mqtt5
7 years ago
Roger A. Light
db7901884f
Retain-as-published support.
7 years ago
Roger A. Light
a00dd29af8
Fix building where TLS-PSK is not available.
...
Closes #68 .
7 years ago
Roger A. Light
5073d83bf8
Don't generate client ids in v5 mode.
7 years ago
Roger A. Light
34293d07c1
Always print leading zeros in mosquitto_sub when output format is hex.
...
Closes #1066 .
Thanks to skiizo.
Bug: https://github.com/eclipse/mosquitto/issues/1066
7 years ago
Roger A. Light
0123ff1efe
Rename *_with_properties() -> *_v5().
7 years ago
Roger Light
a9d19d0911
Use MQTT 5 reason strings where appropriate in clients.
7 years ago
Roger Light
36e8659762
Only keep reading from stdin if we are connected.
7 years ago
Roger Light
47129e395e
Use v5 callback in pub client.
7 years ago
Roger Light
3cb8a52ef3
Add reason code to mosquitto_disconnect_with_properties()
7 years ago
Roger A. Light
85d9cfa2fa
Fix pub client stdin mode.
7 years ago
Roger A. Light
dd158ffeb3
Split common publish code into separate file.
7 years ago
Roger A. Light
098a1c8ecf
Fix subscribe_multiple datatypes.
7 years ago
Roger A. Light
beb96c6b8b
Merge branch 'master' into develop
7 years ago
Roger A. Light
ba67e1ffe5
Don't use gnu-specific strerror_r.
7 years ago