Commit Graph

141 Commits

Author SHA1 Message Date
Karl Palsson
efb21fb09c doc: lib clarify _topic_check functions
Removed some whitespace and copy paste errors.

Signed-off-by: Karl Palsson <karlp@etactica.com>
2020-03-19 16:40:48 +00:00
Karl Palsson
1b4b6f4a2c doc: lib: properly flag code samples for formatting
Uses the NaturalDocs 1.5 compatible style. (Forward compatible with v2)
Uses > for short snippets and the tagged style for longer snippets.

Signed-off-by: Karl Palsson <karlp@etactica.com>
2020-03-19 16:40:48 +00:00
Karl Palsson
fd83d2274f doc: lib: avoid unintended code formatting
Signed-off-by: Karl Palsson <karlp@etactica.com>
2020-03-19 16:40:48 +00:00
Karl Palsson
1331399228 doc: lib: specifically document mqtt5_sub_options
This makes the documentation of the options available in
https://mosquitto.org/api/files/mosquitto-h.html#mosquitto_subscribe_v5
a lot cleaner. (and also _subscribe_multiple())

Signed-off-by: Karl Palsson <karlp@etactica.com>
2020-03-19 16:40:48 +00:00
Karl Palsson
d46707fe02 doc: lib_vesion: correctly format return values
Signed-off-by: Karl Palsson <karlp@etactica.com>
2020-03-19 16:40:48 +00:00
Karl Palsson
765f7343c2 doc: lib: _xxx_option() and opts_set() cleanup list syntax
This change improves the option list rendering by correctly triggering
naturaldocs detection of the lists.  No change other than line breaks
and whitespace.

Signed-off-by: Karl Palsson <karlp@etactica.com>
2020-03-19 16:40:48 +00:00
Karl Palsson
6c7ef15112 doc: lib: group all _option functions together.
_string_option was grouped with the callbacks instead of _int_option and
_void_option.  Grouped them all together neatly.

Signed-off-by: Karl Palsson <karlp@etactica.com>
2020-03-19 16:40:48 +00:00
Roger A. Light
d96543c0b8 Merge branch 'fixes' into develop 2020-03-03 12:54:57 +00:00
Roger A. Light
b544b46156 Update version. 2020-02-27 23:27:29 +00:00
Roger A. Light
b0a065f790 Update changelog. Release page. Bump copyright. 2020-02-27 23:26:58 +00:00
Roger A. Light
50735afb5b Fix for internal logging not printing. 2020-01-29 16:25:56 +00:00
Roger A. Light
d60e86d2a3 Add TCP_NODELAY support to lib and clients.
Closes #1526. Thanks to Felix Moessbauer.
2019-12-18 17:04:43 +00:00
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
2019-12-03 13:59:05 +00:00
Roger A. Light
b410568299 Bump version, add release post. 2019-11-28 17:08:11 +00:00
Roger A. Light
c37251c53d Document mosquitto_connect_srv().
Closes #1499. Thanks to Basavesh Shivakumar.
2019-11-22 11:16:53 +00:00
Roger A. Light
91961d93c4 Merge branch 'master' of git://github.com/basavesh/mosquitto into basavesh-master 2019-11-21 14:22:19 +00:00
Basavesh Shivakumar
7c34ed2eeb Delete duplicate 'Returns' messages in the comments.
Signed-off-by: Basavesh Shivakumar <basavesh.shivakumar@gmail.com>
2019-11-16 21:44:18 -05:00
Roger A. Light
e6e7fc961d Fix function in wrong doc section. 2019-10-31 12:04:29 +00:00
Roger A. Light
463fe8fc6c Fix document issues in mosquitto.h.
Closes #1478. Thanks to Liam Fry.
2019-10-31 11:58:54 +00:00
Roger Light
2f8573b456 Add property helper functions.
mosquitto_property_identifier()
mosquitto_property_identifier_to_string()
mosquitto_property_next()
2019-10-15 13:47:46 +01:00
Roger A. Light
54ed3c0fc9 Merge branch 'master' into develop 2019-09-25 19:09:10 +01:00
Roger A. Light
b7d8eb1122 Bump version number. Update www. 2019-09-25 11:30:01 +01:00
Roger A. Light
9883652dde Bump version, update www and changelog. 2019-09-17 16:32:00 +01:00
Roger A. Light
6e2be25881 Bump version numbers, add release info. 2019-09-12 14:56:15 +01:00
Roger A. Light
c1e488cb88 Add timeout return code (27) for sub/rr using -W.
Closes #275.
2019-09-04 14:29:26 +01:00
Roger A. Light
ce3e33e890 Bump version number, add release post. 2019-08-01 20:46:50 +01:00
Roger A. Light
3ad780839d Fix MQTT v5 sub opts being set for v3 subs.
Closes #1353. Thanks to Ben Barbour.
2019-07-24 11:25:46 +01:00
Roger A. Light
1d6aa9f69c Bump version and web pages. 2019-06-13 16:28:09 +01:00
Roger A. Light
0e58a5e94e Bump version numbers, update webpage. 2019-04-30 14:33:32 +01:00
Roger A. Light
35793ca1c4 Bump version number, update webpage. 2019-04-26 17:07:09 +01:00
Roger Light
a53a727b2b
Merge pull request #1234 from krestivo-kdinfotech/fixes
Fix comment for option values
2019-04-25 13:36:39 +01:00
Ken Restivo
c52d4994cd Fix comment 2019-04-19 13:06:39 -07:00
Roger A. Light
56757df512 Bump version and changelog details. 2019-04-17 17:44:02 +01:00
Roger A. Light
dec769ce33 Client and doc ALPN additions
Add ALPN support for all clients, update documentation, and add to ChangeLog.
2019-04-11 11:52:34 +01:00
Roger Light
77aaec686e
Merge pull request #1224 from omenlabs/ALPN
Bridge TLS Application-Layer Protocol Negotiation
2019-04-11 11:08:15 +01:00
John Hickey
c011be62a4 Bridge TLS Application-Layer Protocol Negotiation
In order to connect to brokers that support both websockets and
mqtt on the same port (such as Amazon IoT), we need to set an
application for the SSL context.  This change allows the specification
of an application by using the `bridge_alpn` configuration token.

Signed-off-by: John Hickey <jjh-github@daedalian.us>
2019-04-04 17:27:52 -07:00
Roger A. Light
2e7dcee342 Multistep auth, plus reauth, plus tests. 2019-04-04 22:08:55 +01:00
Roger A. Light
a29a7dadc6 Basic plugin support for single step extended auth. 2019-04-04 11:37:04 +01:00
Roger A. Light
1220ba4bfe Rejig OCSP code. 2019-03-26 22:13:42 +00:00
Roger A. Light
ea046c2405 Merge branch 'master' of git://github.com/LarsVoelker/mosquitto into LarsVoelker-master 2019-03-26 18:36:13 +00:00
Roger A. Light
ad2ce6c4e6 Add internal logging type, for development debugging. 2019-03-17 20:54:43 +00:00
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
2019-03-16 10:05:38 +00:00
Roger A. Light
cd07c2b802 Windows build fixes. 2019-03-05 14:01:29 +00:00
Roger A. Light
105ad17dc6 Tests and support for QoS 1 reporting of no subscribers on publish. 2019-03-04 07:36:35 +00:00
Roger A. Light
ce31269e05 Update changelog, bump version, bump copyright year. 2019-02-28 16:56:15 +00:00
Roger A. Light
5aabc171b0 Merge branch 'mqtt5' into develop 2019-02-26 18:51:31 +00:00
Roger A. Light
e862a047a8 Rework TLS engine support. 2019-02-26 17:11:29 +00:00
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>
2019-02-26 15:50:37 +00:00
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>
2019-02-26 15:48:00 +00:00
Roger A. Light
b9b8e0ff2a Add client support for outgoing maximum packet size. 2019-02-19 15:14:34 +00:00