with gcc 13 libwebsockets fails with -Werror=enum-int-mismatch with both
SSL variants. These 2 patches work out that issue. Problem is mentioned
as a issue in openwrt/packages#20949 and instead of overriding issue
with appropriate CFLAGS, this approach was suggested for me as it's
been made as a PR (for openssl) at warmcat/libwebsockets#2824
Second patch for mbedtls, was made by me using same approach
as was used of openssl.
Eventually these propably will be merged into libwebsockets mainstream.
Signed-off-by: Oskari Rauta <oskari.rauta@gmail.com>
The commit adding uloop support failed to actually install the .so and
add the correct dependencies.
[2022/12/26 18:19:38:1835] E: lws_create_context: failed to load evlib_uloop
Fixes: 1557ac367a ("libwebsockets: enable built in uloop support")
Signed-off-by: John Crispin <john@phrozen.org>
While running `make menuconfig`, it was discovered then there is a
recursive dependency like this:
tmp/.config-package.in:59138:error: recursive dependency detected!
tmp/.config-package.in:59138: symbol PACKAGE_libwebsockets-openssl is selected by PACKAGE_libwebsockets-mbedtls
tmp/.config-package.in:59122: symbol PACKAGE_libwebsockets-mbedtls depends on PACKAGE_libwebsockets-openssl
It is not possible with the recently added conflicts that two packages
(OpenSSL and full variant, which uses OpenSSL as well), which are almost the same
provides the same named package libwebsockets as their conflict - Mbed
TLS.
Fixes: 676c5c72b5 ("libwebsockets: OpenSSL
and mbedTLS variants should conflict")
Signed-off-by: Josef Schlehofer <pepe.schlehofer@gmail.com>
They provide the same files, but they don't conflict to each other, this
means that users can install them side by side.
Signed-off-by: Josef Schlehofer <pepe.schlehofer@gmail.com>
For some time, it is not possible to install ttyd and mosquitto-ssl at the
same time, so let's solve it that libwebsockets-full provides
libwebsockets-openssl. This allows to install ttyd and mosquitto at
the same time.
Also, we need to add conflict, because we should not have installed
libwebsockets-openssl and libwebsockets-full at the same time as they
provides the same files.
Signed-off-by: Josef Schlehofer <pepe.schlehofer@gmail.com>
Changes since 4.2 are extensive, as always.
https://libwebsockets.org/git/libwebsockets/tree/changelog?h=v4.3-stable#n4
Eg, Adds CBOR, support for reduced memory CA verification, cookie jars,
mqtt client gains qos2, mbedtls v3, fault injection apis, better support
for event loops.
Signed-off-by: Karl Palsson <karlp@etactica.com>
This was removed and then re-added, but defaulted off upstream. It's
still listed as "not recommended" but still absolutely essential for
many apps for performance.
Fixes: https://github.com/eclipse/mosquitto/issues/2284
Signed-off-by: Karl Palsson <karlp@etactica.com>
With a clean build environment and at least two parallel jobs
a compilation error may occur:
...
-- Looking for uv/version.h - found
libubox include dir: ULOOP_INCLUDE_DIRS-NOTFOUND
libubox libraries: ULOOP_LIBRARIES-NOTFOUND
...
CMake Error in lib/event-libs/uloop/CMakeLists.txt:
Found relative path while evaluating include directories of
"websockets-evlib_uloop":
"ULOOP_INCLUDE_DIRS-NOTFOUND"
...
Signed-off-by: Ronny Kotzschmar <ro.ok@me.com>
uloop is always available on OpenWrt, so build in LWS's uloop support by
default. Size difference of .ipk is 683 bytes, or about 0.5%.
No known applications use this at present, but it seems better to
proactively offer it.
Signed-off-by: Karl Palsson <karlp@etactica.com>
faster to compile.
A small selection of packages was tested going from:
Executed in 696.30 secs fish external
usr time 82.98 mins 395.00 micros 82.98 mins
sys time 9.02 mins 0.00 micros 9.02 mins
to:
Executed in 592.20 secs fish external
usr time 84.84 mins 361.00 micros 84.84 mins
sys time 8.85 mins 57.00 micros 8.85 mins
Tested by running make -j 12 and wiping staging/build_dir/target_x
Signed-off-by: Rosen Penev <rosenp@gmail.com>
This is a major version bump, from 3.x to 4.x, and continues the path
towards a mail client.
New features:
* ntp client
* dns resolver
* mqtt client
* number humanizing string helpers
License change upstream.
cmake options tweaked to match current upstream defaults again.
Tested with mosquitto and ttyd.
Signed-off-by: Karl Palsson <karlp@etactica.com>
3.2.x is formally "not maintained" and people should stick with 3.1.x
until a new release of the master branch occurs. However, in reality,
3.2.1 has been released, with performance improvements and fixes.
Signed-off-by: Karl Palsson <karlp@etactica.com>
This functionality can be used by downstream applications such as
ttyd to present their HTTP service as a unix domain socket rather
than a TCP server.
Signed-off-by: Mathew McBride <matt@traverse.com.au>
This removes lines that set PKG_BUILD_DIR when the set value is no
different from the default value.
Specifically, the line is removed if the assigned value is:
* $(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/$(PKG_NAME)-$(PKG_VERSION)
The default PKG_BUILD_DIR was updated[1] to incorporate BUILD_VARIANT
if it is set, so now this is identical to the default value.
* $(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/$(PKG_SOURCE_SUBDIR)
if PKG_SOURCE_SUBDIR is set to $(PKG_NAME)-$(PKG_VERSION), making it
the same as the previous case
* $(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
This is the same as the default PKG_BUILD_DIR when there is no
BUILD_VARIANT.
* $(BUILD_DIR)/[name]-$(PKG_VERSION)
where [name] is a string that is identical to PKG_NAME
[1]: https://git.openwrt.org/?p=openwrt/openwrt.git;a=commit;h=e545fac8d968864a965edb9e50c6f90940b0a6c9
Signed-off-by: Jeffery To <jeffery.to@gmail.com>
Drops an openssl deprecation patch applied upstream.
Changes since 3.0.0, the following list of websocket related features:
* gzip+brotli compression in the webserver
* threadpools
* string tokenizers
* http reverse proxies
* managed disk cache
Full changes at https://libwebsockets.org/git/libwebsockets/tree/changelog?id=89eedcaa94e1c8a97ea3af10642fd224bcea068f#n4
Tested on ath79, and classic usage of libwebsockets to provide
websockets support to a C application.
Signed-off-by: Karl Palsson <karlp@etactica.com>
As usual, LWS upstream completely failed to maintain their changelog.
Skimming the git log by hand, probably the biggest change of note here
is fixed compatibility with openssl 1.1.0
Tested on ath79.
Signed-off-by: Karl Palsson <karlp@etactica.com>
Libwebsockets 2.4.0 now includes mbedtls as a first class citizen.
Drop the problematic and poorly supported wolf/cyassl variant and add
mbedtls variant instead.
Signed-off-by: Karl Palsson <karlp@etactica.com>
Looks like the cyassl redirect to wolfssl does not work flawlessly in libwebsockets.
Tested with libwolfssl 3.12.0 & 3.10.0 from LEDE.
Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
Changelog is
https://github.com/warmcat/libwebsockets/blob/v2.2.1/changelog
Since 2.0.3, the last version packaged, banner highlights are:
* mountains of work on lws being it's own webserver
* fixes apparently, but they don't get changelog entries.
Signed-off-by: Karl Palsson <karlp@etactica.com>
In commit f82287cf5c (treewide: use name in define and eval lines)
two typos were committed as result of replacing PKG_NAME macro with
actual package name.
Undo those typos here to make the affected variants installable.
Signed-off-by: Denis Osvald <denis.osvald@sartura.hr>
For consistency, use full name instead of $(PKG_NAME) in define and eval
lines for all packages.
I've seen reviews that asked to do this before, and I am asking the same
during reviews now. To avoid this in the future, fix this treewide so
when people use existing packages as example, we will not have to
request this change anymore.
This makes all packages consistent with both LEDE and OpenWrt base
repositories.
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
This changes the ABI and .so number, so it is only suitable for
trunk packages. A patch included upstream has been dropped.
Full changelog:
https://github.com/warmcat/libwebsockets/blob/master/changelog
Signed-off-by: Karl Palsson <karlp@remake.is>
This includes a patch for cyassl building that has been committed
upstream, but not released.
There's no SPDX license identifier for LGPL + static linking exception,
so I've used "LGPL-2.1+exception" as suggested at
http://lwn.net/Articles/378329/
See also: https://github.com/warmcat/libwebsockets/issues/170
Signed-off-by: Karl Palsson <karlp@remake.is>