Commit Graph

52 Commits (master)

Author SHA1 Message Date
Roger A. Light a1a190b482 Pointless whitespace tidy. 4 years ago
Roger A. Light 756b3fcb08 Document TLS certificate behaviour when using `-p 8883`. 4 years ago
Roger A. Light d3dd89da82 Fix man page typos. 5 years ago
Roger Light f1f0396d86 Fix links in man pages. 5 years ago
Roger A. Light 29c771cdd4 Add lib and client support for OS CA certs
- Add `MOSQ_OPT_TLS_USE_OS_CERTS` option, to instruct the client to load and  trust OS provided CA certificates for use with TLS connections.
- All clients now load OS provided CA certificates if used with `-L
  mqtts://...`, or if port is set to 8883 and no other CA certificates are
  used. Closes #1824.
- Add the `--tls-use-os-certs` option to all clients.

Closes #1824. Thanks to Jens Reimann.
5 years ago
Roger A. Light e95327789e Note that zero length retained messages are never retained.
Closes #1871. Thanks to James Kleeh.
5 years ago
Roger A. Light c90e49af1b Merge remote-tracking branch 'origin/fixes' into develop 5 years ago
Roger A. Light 9929ce0a26 All clients exit with an error exit code on CONNACK failure.
Closes #1778. Thanks to jflambert.
5 years ago
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 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
Roger A. Light 3d92dcbbd9 Make documentation for `mosquitto_pub -l` match reality
Blank lines are sent as empty messages.

Closes #1474. Thanks to majekw.
6 years ago
Roger A. Light 499e2f2e98 Add support for unix sockets to broker, lib, and clients. 6 years ago
Roger A. Light da5ff1746c Don't use `/` in auto client ids.
Also update client documentation about automatic client ids.
6 years ago
Dan Langille c169ad6abb
$HOME/.config/mosquitto_sub or pub?
Should $HOME/.config/mosquitto_sub be $HOME/.config/mosquitto_pub? It seems to be that way based on my testing.

I think this is a copy/paste error.
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 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 925debb8a5 Add mosquitto_rr, the "request-response" client. 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 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 4a2e569171 -V now accepts `5, `311`, `31`, as well as `mqttv5` etc. 7 years ago
Roger A. Light 55b46037da Change -y to -D in clients. 7 years ago
Roger A. Light 12cba75c73 Client support for adding properties. 7 years ago
Roger A. Light 33a523eea9 Add identifiers for v5.
Clients know about v5, just need library support...
7 years ago
Roger A. Light ba3b41ef60 Make it much clearer how to enable TLS mode for clients.
Closes #776.
8 years ago
Roger A. Light 8676cc0359 Replace mentions of deprecated 'c_rehash' with 'openssl rehash'. 8 years ago
Roger A. Light ef7a7850ac Add -c to mosquitto_pub. 8 years ago
Roger A. Light e74203de2c Merge branch 'master' into develop 8 years ago
Roger A. Light fe8fef27ee Make bug urls clickable. 8 years ago
Roger A. Light 6f9842ae02 Fix man page links. 8 years ago
Roger A. Light a88acdd122 Fix issues url. 9 years ago
Roger A. Light 99ea5cab7c Default to using port 8883 when using TLS. 10 years ago
Roger A. Light bd61d18e92 Small tidy up. 10 years ago
Matteo Croce 59c80d9197 Add MQTT URL scheme support
Add option -L to specify user, password, hostname, port and topic at once.
The URL must provided with the -L or --url in the form:
mqtt(s)://[username[:password]@]host[:port]/topic

Change-Id: Ia626a28981a38807a254ae32c6ffb29b122b8a28
Signed-off-by: Matteo Croce <matteo@openwrt.org>
10 years ago
Roger A. Light 26b015908e Default to using MQTT v3.1.1. 10 years ago
Roger A. Light fca9ac84f7 Merge fixes into develop. 10 years ago
Roger A. Light 4b9b792d16 Update all mqtt 3.1 references to 3.1.1 where appropriate. 10 years ago
Roger A. Light 422a156e98 Revert man page to html rather than php. 10 years ago
Roger A. Light 8a35c3cd0d Add client support for MQTT v3.1.1. 11 years ago
Roger A. Light 525f989c6c Update html man page generation for eclipse pages. 11 years ago
Roger A. Light 5ee0ab8e34 Fix bug links. 11 years ago
Roger A. Light c12d3ebc0b [454852] Support setting keepalive on pub client.
Bug: https://bugs.eclipse.org/bugs/show_bug.cgi?id=454852
11 years ago
Roger A. Light 41ebd31ac5 Add note on defaults. 11 years ago
Roger A. Light 42420cae46 Add experimental SOCKS5 support for the clients. 11 years ago
Roger A. Light e95448f5bd Remove unnecessary openssl acknowledgement. 11 years ago
Roger A. Light 0bbdda2c4e Allow comments in config files. 12 years ago