After some commits on the master branch compilation
for macos was not working. This PR restores macos
to a building state.
Co-authored-by: Jón Bjarni Bjarnason <jon@centroid.is>
- Re-order case statements to match order in other code
- Use derived compile-time constant to avoid duplication
(cherry picked from commit ee8083a9a2)
If parseJSONConfig() met unknown complex 1st layer item (array or object) it couldn't parse following items correctly since context->index was pointing to the internal elements of unknown item instead of next 1st layer item. So skipUnknownItem() function was added which skip all internal elements of unknown 1st layer item be it object, array of objects, array of array or anything else.
* feat(plugin): Add filestore Windows implementation
* Define UA_DT_REG and UA_DT_DIR
* Remove build flag and use __linux__ or UA_ARCHITECTURE_WIN32 in places which used to check only for __linux__
Separate mDNS related code from discovery module to enable easier integration
of different mDNS implementations. Add new API functions and make other functions
static to reflect their use in the mDNS module only.
The libmdnsd implementation uses an ip entry for the server and selects the
interface to be used for establishing the connection. This is not required for
avahi as the avahi daemon is normally configured externally. Make the server
configuration of the mDNS IP list and the interface dependent on the use of
libmdnsd.
Signed-off-by: Vasilij Strassheim <vasilij.strassheim@linutronix.de>
inotify doesn't work recursively, subdirectories need to be monitored separately. As a result adding certificate to 'trusted' directory directly didn't refresh the trustlist.
We want to have the same default for client and server. So we get less
trouble with reusing certificates. Before we had to manually adjust the
client URI to say "server". That's not good...
Private key associated with a security policy is used for multipule
purposes:
- asymmetric encryption/decryption
- asymmetric signing/verification
- certificate/CSR signing
The schemes used for each of the above operations differ in various
policies. However, for certificate/CSR signing, for all RSA-based
policies, the used scheme is always RSASSA-PKCS1-v1_5
(MBEDTLS_RSA_PKCS_V15).
Before generating a CSR, enforce using the RSASSA-PKCS1-v1_5 by setting
the corresponding private key context.
This fixes a bug that in some edge cases, the private key context left
after the previous usage of RSA module (e.g. if the last usage was to
decrypt the user password) had the scheme set to RSAES-OAEP
(MBEDTLS_RSA_PKCS_V21). This resulted in an invalid signature over the
CSR.
Co-authored-by: Julius Pfrommer <jpfr@users.noreply.github.com>
The CTT example Security User X509/001.js expects that an issuer is
selected where the authorityKeyIdentifier / subjectKeyIdentifier do not
match. No longer use X509_check_issued, but rather manually check if the
issuer name and subject name match -- with no other checks beyond that.