Commit graph

62 commits

Author SHA1 Message Date
Rich Mattes
ab4ac42b90 Fix libdir location in pkgconfig files.
The pkgconfig files currently hardcode the library directory as
${prefix}/lib, but the library installation directory in config.mk is
set as lib${LIB_SUFFIX}.  This causes a mismatch between the library
installation directory and the pkgconfig file on redhat-based 64-bit
systems.

This commit remedies the issue for both the Makefile and CMake build by
modifying the pkgconfig files to use CMAKE_INSTALL_LIBDIR instead of
"lib".  In the CMake system, this directly reflects the installation
path.  The Makefiles were modified to replace CMAKE_INSTALL_LIBDIR with
lib${LIB_SUFFIX}, matching the libdir definition in config.mk and
following the pattern used in defining the prefix.

Signed-off-by: Rich Mattes <richmattes@gmail.com>
2025-12-08 20:57:17 +00:00
Roger A. Light
b4e97b3561 Start of mocking support
libmosquitto public mocks
pthread and editline minimal mocks
2025-04-16 15:42:51 +01:00
Roger A. Light
a2fe980301 Add mosquitto_ext_auth_continue() 2024-10-28 22:31:44 +00:00
Roger A. Light
b5e21d146d Move password functions to libcommon. 2024-06-12 21:26:25 +01:00
Roger A. Light
61eb363e03 Remove unused file from build 2024-06-02 23:20:03 +01:00
Roger A. Light
4498193331 Refactor file functions to common static library. 2024-03-17 23:13:11 +00:00
Roger A. Light
16d465fa49 Refactor base64 functions to common static library. 2024-03-17 21:34:27 +00:00
Roger A. Light
9fe8b95dcf Refactor property functions to common static library. 2024-03-17 20:56:14 +00:00
Roger A. Light
b5c25cf1d0 Refactor memory functions to common static library. 2024-03-17 10:30:07 +00:00
Roger A. Light
81ad44e677 Refactor topic check functions to common static library. 2024-03-17 08:15:22 +00:00
Roger A. Light
a6344f833b Refactor time functions to common static library. 2024-03-17 07:58:45 +00:00
Roger A. Light
1204a7a6f7 Refactor strings functions to common static library. 2024-03-17 07:46:42 +00:00
Roger A. Light
6eb56dc6f1 Refactor UTF-8 code to common static library. 2024-03-17 07:45:58 +00:00
Roger A. Light
9f7b23ca72 Fix oss-fuzz 67175, 67180, 67191
Embedded 0 characters in a file would prevent the loading of that file.

This could not happen apart from corruption of the file, or by
deliberate manipulation by the admin. Minimal impact.
2024-03-04 14:24:55 +00:00
Roger A. Light
eb461e02bd Fuzzing build fix 2024-02-20 17:19:23 +00:00
Roger A. Light
d17a88d916 Refactor headers for easier discovery. 2023-12-23 12:59:58 +00:00
Roger A. Light
837c272c29 Add argon2 password hash support 2023-11-20 22:58:42 +00:00
Roger A. Light
c8e313aac0 Fix build
This is for the case where command line overrides are set.
2023-09-19 22:48:24 +01:00
Roger A. Light
a31bee722f Simplify make build. 2023-05-10 16:20:06 +01:00
Roger A. Light
343a984083 Big rejig of library tests
Includes full consistency between C/C++ library tests
2023-01-02 11:45:09 +00:00
Norbert Heusser
a65176667c Fixed cleanup in lib/Makefile
Signed-off-by: Norbert Heusser <norbert.heusser@cedalo.com>
2022-12-09 18:03:39 +00:00
Roger A. Light
1382fded00 Compile picohttpparser only once 2022-11-03 22:39:39 +00:00
Roger A. Light
ffb7661d86 Move shared code to common directory
This is currently limited to "utility" type functions and does not include code common to the library and broker that are protocol related.
2022-02-09 16:26:10 +00:00
Roger A. Light
5a3b42d4a4 Use path vars in Makefiles. 2022-02-09 14:44:09 +00:00
Roger A. Light
306215db39 Split library actions.c for easier discoverability. 2022-01-30 23:45:40 +00:00
Roger A. Light
3b8a2e827e Fix compile flags. 2021-11-17 09:45:37 +00:00
Roger A. Light
799cdead15 Experimental custom websockets support. 2021-10-06 15:32:45 +01:00
Roger A. Light
de9780343b Add support for MQTT v5 broker->client topic aliases.
This is on a first-come-first-served basis for now.
Also broker to bridge topic aliases.
2021-03-22 16:56:10 +00:00
Roger A. Light
e030ca45cd Fix connack error printing. 2020-12-01 15:57:37 +00:00
Roger A. Light
a65f946e83 Move headers to own directory. 2020-10-07 22:06:01 +01:00
Roger A. Light
7f41e37f0f Fix use of sed on BSD.
Closes #1614. Thanks to Christoph Krey.
2020-03-12 11:52:58 +00:00
Roger A. Light
27b4518d7e Improve password file parsing in the broker and mosqitto_passwd.
Closes #1584. Thanks to panava.
2020-02-04 16:38:51 +00:00
Roger A. Light
344bbd087c Install mqtt_protocol.h 2019-09-12 17:19:52 +01:00
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.
2019-04-26 17:06:54 +01: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
fcf4cd0b27 Merge branch 'master' into mqtt5 2018-12-19 14:11:11 +00:00
Roger Light
f809ecbcbe Add DISCONNECT handling to library. 2018-11-22 18:13:18 +00:00
Roger A. Light
8077376a79 Add read support for AUTH packets. 2018-10-25 12:54:17 +01:00
Roger A. Light
35dea07dcd Merge branch 'master' 2018-10-23 10:39:20 +01:00
Roger A. Light
6609bbac10 Move topic matching tests to unit tests. Needs improving. 2018-10-10 17:52:41 +01:00
Roger A. Light
e5eb03b2e6 Allow building without shared library. 2018-10-07 00:56:42 +01:00
Roger A. Light
abb3fee1f8 Coverage reporting for whole broker. 2018-10-06 21:56:48 +01:00
Roger A. Light
f4b2838574 Property reading, and tests for byte properties. 2018-10-04 17:18:57 +01:00
Roger A. Light
99a1c0e43a Move simple datatype reading functions to own file.
This facilitates easier testing.
2018-10-03 10:23:58 +01:00
Roger A. Light
59bd07627d Various build improvements to help packaging. 2018-09-25 14:25:54 +01:00
Michael Heimpold
a459e93498 Install pkg-config files also for non-CMake builds
At the moment, pkg-config hint files are only installed when CMake is
used as build system. However, it is very convenient for programs using
libmosquitto to have these files always in place, so let's add it
here, too.

Signed-off-by: Michael Heimpold <michael.heimpold@i2se.com>
2018-09-18 15:25:22 +01:00
Roger A. Light
28dd14fcea Separate out functions from mosquitto.c to aid discoverability. 2018-04-11 15:04:17 +01:00
Michael Heimpold
48dec391f7 Quote ${DESTDIR} usage in various Makefiles
This prevents failures during make install when whitespace
is part of DESTDIR pathname.

Signed-off-by: Michael Heimpold <michael.heimpold@i2se.com>
2017-12-01 22:28:26 +00:00
Dr. Lars Voelker
74adb43cc1 Adding OCSP Stapling support to mosquitto
Adding OCSP Stapling support to mosquitto, so that the TLS client side
requests the certificate status and checks it.
This code uses the OpenSSL-based OCSP implementation and is somewhat
based on the libcurl code for OCSP stapling.

Signed-off-by: Dr. Lars Voelker <lars.voelker@bmw.de>
2017-07-07 13:05:17 +02:00
Roger A. Light
a8a5daf06b Check client topic inputs for valid UTF-8. 2016-06-20 22:56:01 +01:00